Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Ko hoce samnom da pravi neku malu igricu?

[es] :: Visual Basic 6 :: Ko hoce samnom da pravi neku malu igricu?

Strane: 1 2 3

[ Pregleda: 8427 | Odgovora: 51 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 09:33 - pre 234 meseci
Evo popravljam AI :-)
Fuck the rest i am the best
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 10:21 - pre 234 meseci
Evo popravio sam AI tako da i kompjuter moze da gubi.Ali je dosta retardiran
Pre dve godine odprilike sam skinuo taj kod sa PSC.Onda sam dodao prvo protivnika(koji nije mogao da gubi) pa sam malo sredio da pise koliko ima sati,i danas sam mesto sata stavio 2 label-a i napravio poene.
Dal da stavim da poeni mogu da se cuvaju u kriptovanom txt fajlu?
Evo igra sa sourceom je u attachmentu.
A ovako je izgledao prvi kod(sa PSC-a):
Code:

Dim vmom As Integer 'holds the ball's vertical momentum
Dim hmom As Integer 'holds the ball's horizontal momentum


Private Sub Form_Load()
    Randomize
    'make the vertical and horizontal moment
    '     ums random
    vmom = 100 + Int(Rnd * 200)
    hmom = 100 + Int(Rnd * 200)
End Sub


Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    'move the paddle to the mouse's position
    '     
    Shape1.Left = X - (Shape1.Width / 2)
End Sub


Private Sub Timer1_Timer()
    'move the ball, based on the virtical an
    '     d horizontal momenutm
    Shape2.Top = Shape2.Top + vmom
    Shape2.Left = Shape2.Left + hmom
    'see if the ball is hitting the surface 
    '     of the paddle


    If (Shape2.Top + Shape2.Height) > Shape1.Top Then


        If Shape2.Left + Shape2.Width >= Shape1.Left And Shape2.Left <= Shape1.Left + Shape1.Width Then
            vmom = -vmom
        End If
    End If
    'see if the ball has hit the edge of the
    '     screen


    If (Shape2.Left + Shape2.Width) > Form1.Width Then
        Shape2.Left = Form1.Width - Shape2.Width
        hmom = -hmom 'this reverses it ball's direction
    ElseIf Shape2.Left < 0 Then
        Shape2.Left = 0
        hmom = -hmom 'this reverses it ball's direction
    ElseIf Shape2.Top < 0 Then
        Shape2.Top = 0
        vmom = -vmom 'this reverses it ball's direction
    ElseIf Shape2.Top > Form1.Height Then
        MsgBox "You lost!"
        Timer1.Enabled = False
    End If
End Sub

Fuck the rest i am the best
Prikačeni fajlovi
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 12:28 - pre 234 meseci
nije ti los ovaj pong (mada imam neke zamerke...) samo kad budemo radili igru (ma koja to bila) ja predlazem da ne koristimo kontrole (npr. Image, PictureBox) kao objekte (kao sto sam ja radio u Planet Catcheru!) vec da sve to crtavmo u memoriji i posle bacimo na jedan picture box....
a sto se tice nekog map editora sto si pominjao evo ovde nekog mog map editora za onaj lavirint sto sam poceo (i nikad zavrsio), nije neka perfekcija ali moze lako da se popravi i preradi... (za pokretanje vam je potreban SSubTmr6.dll sa vbAccelerator-a, koji sam ubacio u zip...)
Prikačeni fajlovi
 
Odgovor na temu

Milos Dedijer
SQA Engineer
Čačak/Beograd

Član broj: 25147
Poruke: 1159
*.dial.InfoSky.Net.



+10 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 14:55 - pre 234 meseci
Citat:
krckoorascic: vec da sve to crtavmo u memoriji i posle bacimo na jedan picture box....


Offscreen buffer... :D ili sta god...

joj ovo je mapmaker za kroki games... hehe
Make me a sandwich!
What? Make it yourself.
sudo Make me a sandwich!
Okay!




[url=http://blog.b92.net/user_stuff/uplo
ad/600/luter.1600.jpg] Martin Luter?
[/url]
 
Odgovor na temu

Dark Icarus
Goran Lalić
Beograd

Član broj: 19775
Poruke: 428
*.sbb.co.yu.



+2 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 16:27 - pre 234 meseci
Ako će ovo biti projekat za učenje, ne preporučujem ništa što ima skriptovane sekvence (dečak ugleda zamak itd.); ne preporučujem ništa što podrazumeva uništavanje neprijatelja (te stoga zahteva dinamičku kreaciju i uništavanje entiteta itd.); ne preporučujem ništa što zahteva puno rada. Na osnovu ličnog iskustva znam da ljudi najbolje reaguju na kod koji odmah daje vidljive rezultate na ekranu.

Osnovna poenta je da odradite (odradimo) neku igru koja ima "gušta", ali se lako programira, sa malim kodom. Baš zato, Arkanoid/space invaders igre su dobre, ali Pong je još bolji, iz prostog razloga što se radi o samo 10ak varijablica. Kostur Ponga može da bude gotov praktično odmah, a posle toga možemo da ga proširujemo i da tako učite osnove programiranja igara.

E pa sad ćete da čujete moju ideju za jedan "tutorial" projekat, VectorBall, koji sam ja sam zakuvao a drage volje bih ga odradio sa vama.

(Pod pretpostavkom da svi znaju kako se kreira projekat i kako se podešavaju komponente, reference, properties različitih klasa. Ako neko ne zna, prvo bismo to prešli.)

1) Počećemo sa najosnovnijim Pongom, tako što ćemo napraviti jednostavne mehanizme kretanja lopte i reketa. Input ćemo regulisati preko keydown i keyup, a grafiku preko Line procedura, dakle preko linija. U ovoj verziji neće biti zvuka. Malo ćemo da poradimo na fizici kretanja i odbijanja lopte u 2d. Ali samo malo. Gameplay će biti procesovan putem Timer eventa.

2) Sledeći korak će biti da naučimo kako ubaciti API procedure u naš kod. Za početak, sndPlaySound za zvuk, BitBlt za grafiku, i GetAsyncKeyState za input. I tako ćemo dobiti elementarnu grafiku i zvuk. Ja ću da uradim grafiku za rekete i za loptu.

3) Malo "naprednog" programiranja. U ovom koraku ćemo da naučimo kako da isfragmentišemo kod u module da bi bio čitkiji, i kako da se otarasimo tajmera i procesujemo mehaniku igre u Loop petlji. Zatim ćemo prebaciti varijable reketa i lopte u odvojene UDTe (User Defined Types) kako bismo naučili strukturu podataka.

(Ovde bismo mogli da naučimo da crtamo transparentne sprajtove.)

4) Četvrti korak će biti dodavanje specijalnih poteza i powerupova, kao što je mogućnost da se lopta lepi za reket, da se reket širi i skuplja, itd. Takođe ćemo poraditi na fizici i matematici da bismo dodali malo šmeka - npr. reketi koji imaju inerciju, pojavljivanje "crne rupe" koja privlači lopticu u nasumičnom smeru, itd. Funkcija ovog dela je da odradimo pozicioniranje petlji i "if-else-end if"-ova u kodu.

5) Ovde bi već bio red da igri dodamo početni meni, za početak sa samo 2 dugmeta ("New Game" i "Exit"), ali u ovom delu ću detaljno pokriti problematiku interfejsa. I nemojte misliti da ćete koristiti ScreenButton kontrolu!

6) Sledeći korak će biti prebacivanje igre u treću dimenziju. Ovde ne mislim na Direct3D. Nešto malo matematike i par prostih grafičkih manipulacija će učiniti da igra ima 3D izgled. Sve što je potrebno je ubacivanje blage perspektive (crtanje terena kao trapezoida umesto kao pravougaonika) i dodavanje "senke" ispod reketa.

I, pre nego što se okrenete, imaćemo simpatičnu igricu za dva igrača.

7) Od ovog trenutka nadalje ubacićemo podršku za DirectInput kako bismo naučili osnove DirectXa.

8) Ako neko posle ovoga bude zainteresovan za dalji rad, možemo da radimo DirectSound i DirectDraw podršku. Ali to će već biti Advanced Class.

Kada budemo imali završeni ovaj mali projekat, mogli bismo da pređemo na fazu II moga plana a to je da vas naučim ponešto o OO programiranju i klasama, i o ubacivanju istih u "našu" igru, nakon čega bismo "rekete" zamenili "igračima", dodali AI, i na kraju dobili neku svemirsku sportsku igru.

Svaki korak ću detaljno dokumentovati, i to baš ovde, na forumu, tako da bi ovo mogao da bude sjajan tutorial za sve buduće VB Game Programmer Wannabes. Postavljaću i screenshotove ako treba.

Od svih prisutnih će se očekivati da daju rešenja na probleme koje ja postavljam, a nikako da samo rade copy-paste koda koji će ovde biti rađen. Takođe bismo mogli da vežbamo programiranje u grupi i da delimo zadatke. Ako naiđete na nešto što ne možete sami da uradite, naravno da ću to detaljno objasniti uz primere.

Pa.... šta mislite? Je li neko za to? Ako jeste, otvoriću nov topic koji će biti rezervisan za ovaj projekat.
In a game of chess you must never let your opponent see your pieces - Zap
Brannigan
 
Odgovor na temu

Milos Dedijer
SQA Engineer
Čačak/Beograd

Član broj: 25147
Poruke: 1159
*.dial.InfoSky.Net.



+10 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 17:59 - pre 234 meseci
OK je ideja...

Ali se nadam da cete poceti od samog pocetka sa nekim prostim stvarima... Jer evo ja(a verujem da nas ima jos...) ucim VB tek 2nedelje ali poznajem tematiku pa cu vrlo verovatno moci da vas ispratim do kraja.

OK?
Make me a sandwich!
What? Make it yourself.
sudo Make me a sandwich!
Okay!




[url=http://blog.b92.net/user_stuff/uplo
ad/600/luter.1600.jpg] Martin Luter?
[/url]
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 19:00 - pre 234 meseci
OK, ja sam definitvo za ovo! :D
ali, ako nije problem ja bi se prikljucio tek od 4. koraka, jer sve do toga znam perfektno (mislim znam i neke korake posle, do DX, al nisam bas toliko jak u njima :D) a treba da kodiram jedan skin (za winamp) koji je crtao jedan slovenac...

Pozdrav!
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 21:33 - pre 234 meseci
Znaci treba vec od sad da uradimo neki manji Engine igre koji ce biti sposoban za pomeranje loptice u pravom smeru.
Igra ce za sada (ako vi to hocete) da se sastoji samo od Shape-a.
Pokusacu malo da uradim i score.
Mozemo i da koristimo za pomeranje loptice gore navedeni kod ili da prepravljamo moju(retardiranu)igru.
Evo ja cu sutra ili prekosutra (mozda i danas)da postujem bolji kod.
Ovako je najbolje za nas projekat:
Da engine pravimo kao 'Bas' fajlove ili kao 'Dll' fajlove.
Da svaki korak (npr.za zvuk,bolji ai,...) postujemo ovde i da ga drugi preuzmu kako bismo svi naucili po nesto i brze uradili.


Fuck the rest i am the best
 
Odgovor na temu

Milos Dedijer
SQA Engineer
Čačak/Beograd

Član broj: 25147
Poruke: 1159
*.dial.InfoSky.Net.



+10 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:03 - pre 234 meseci
Zbog mene bi valjalo da uvedete -1 korak...

dim korak as integer
if korak > 1 then
msgbox "ljudi ne znam nista !!!"
Make me a sandwich!
What? Make it yourself.
sudo Make me a sandwich!
Okay!




[url=http://blog.b92.net/user_stuff/uplo
ad/600/luter.1600.jpg] Martin Luter?
[/url]
 
Odgovor na temu

Dark Icarus
Goran Lalić
Beograd

Član broj: 19775
Poruke: 428
*.nat-pool.bgd.sbb.co.yu.



+2 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:07 - pre 234 meseci
Citat:
nika100: Znaci treba vec od sad da uradimo neki manji Engine igre koji ce biti sposoban za pomeranje loptice u pravom smeru.
Igra ce za sada (ako vi to hocete) da se sastoji samo od Shape-a.

Može prvi korak sa Shape-om ali sve kontrole ćemo izbaciti od koraka 3 pa nadalje.
Citat:
nika100:Mozemo i da koristimo za pomeranje loptice gore navedeni kod ili da prepravljamo moju(retardiranu)igru.
U suštini kod je sasvim OK za početak, ali napisaćemo ga ponovo pošto se dogovorimo oko konvencija kodiranja.
Citat:
nika100:Da engine pravimo kao 'Bas' fajlove ili kao 'Dll' fajlove.
Nećemo ulaziti u DLL-ove zato što komplikuju stvari a nisu neophodni. Ceo kod će biti otvoren svima, svi fajlovi će biti u bas formatu, čak nećemo ni postovati EXE kad već svako može da ga kompajlira.
Citat:
nika100:Da svaki korak (npr.za zvuk,bolji ai,...) postujemo ovde i da ga drugi preuzmu kako bismo svi naucili po nesto i brze uradili.
:p
Apsolutno, ceo proces mora biti 100% otvoren.
Citat:
krckoorascic:ali, ako nije problem ja bi se prikljucio tek od 4. koraka, jer sve do toga znam perfektno (mislim znam i neke korake posle, do DX, al nisam bas toliko jak u njima :D)
Apsolutno, svako može da "upadne" a bome i da "ispadne" kada hoće. Mada mislim da bi trebalo da posećuješ temu i pre toga.

(Naknadno dodato u editu)

Ako smo spremni, otvoriću novu temu u kojoj ćemo da pravimo samu igru. Potražite "Vectorball - Tutorial projekat za pravljenje igara u VBu." u VB&ASP. Čisto da potencijalni učesnici u tutorialu ne budu zbunjeni našim razglabanjem o Pongu na početnim stranama ove teme.

[Ovu poruku je menjao Dark Icarus dana 03.03.2005. u 23:11 GMT+1]
In a game of chess you must never let your opponent see your pieces - Zap
Brannigan
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:09 - pre 234 meseci
program jasno;
var svejasno:integer;
begin
while svejasno=0 do
write ('Sta ti nije jasno?');
end.



Fuck the rest i am the best
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:15 - pre 234 meseci
Ovako.
Za Dark Icarus-a.
Trenutno radim na tome da igru mogu da igraju 2 igraca jedan na strelice (key code:37,39) a drugi na mis.
Tu je dosao jedan mali problem:
Kada sa prvim igracem bacim lopticu gore ovaj i da je udari nekad mu se ne vazi da li znas u cemu je stvar?
Fuck the rest i am the best
 
Odgovor na temu

Dark Icarus
Goran Lalić
Beograd

Član broj: 19775
Poruke: 428
*.sbb.co.yu.



+2 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:17 - pre 234 meseci
Počećemo i od -5og koraka ako treba, hehe, pa i romero&carmack su počeli sa "hello world"-om....
In a game of chess you must never let your opponent see your pieces - Zap
Brannigan
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:17 - pre 234 meseci
E to je za danas sve od mene Laku noc!
Odo da gledam seriju!
Cucemo se ponovo sutra!
CAO!!!

Fuck the rest i am the best
 
Odgovor na temu

Milos Dedijer
SQA Engineer
Čačak/Beograd

Član broj: 25147
Poruke: 1159
*.dial.InfoSky.Net.



+10 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:25 - pre 234 meseci
Citat:
Dark Icarus: Počećemo i od -5og koraka ako treba, hehe, pa i romero&carmack su počeli sa "hello world"-om....


Evo ja cu poceti da pisem korak -1:

-1* Kako otvoriti Visual Basic 6 ?

E kad pocinje(mo)te?
Make me a sandwich!
What? Make it yourself.
sudo Make me a sandwich!
Okay!




[url=http://blog.b92.net/user_stuff/uplo
ad/600/luter.1600.jpg] Martin Luter?
[/url]
 
Odgovor na temu

Dark Icarus
Goran Lalić
Beograd

Član broj: 19775
Poruke: 428
*.sbb.co.yu.



+2 Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?03.03.2005. u 22:45 - pre 234 meseci
Citat:
nika100: Ovako.
Za Dark Icarus-a.
Trenutno radim na tome da igru mogu da igraju 2 igraca jedan na strelice (key code:37,39) a drugi na mis.
Tu je dosao jedan mali problem:
Kada sa prvim igracem bacim lopticu gore ovaj i da je udari nekad mu se ne vazi da li znas u cemu je stvar?


Hm, morao bi da postuješ kod pa da vidimo. Ako sam dobro razumeo, drugi igrač (koji je na vrhu ekrana) ponekad ne odbije lopticu iako je na pravom mestu. Ako je tako, probaj sledeće:
- "spusti" gornjeg igrača za par piksela niže (za slučaj da igra pre detektuje udarac loptice u gornji zid nego u gornjeg igrača).
- proveri collision uslov između loptice i gornjeg igrača
In a game of chess you must never let your opponent see your pieces - Zap
Brannigan
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?04.03.2005. u 09:20 - pre 234 meseci
Evo postovacu kod jer je ovde malo veci problem.Kad udari gornjeg igraca sa strane ona se odbije,al' kad udari u sredinu nije bas tako.
Igra se sada gasi na escape.

Fuck the rest i am the best
Prikačeni fajlovi
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?04.03.2005. u 09:22 - pre 234 meseci
Citat:
[Ded4]
E kad pocinje(mo)te?

Pa vec smo krenuli.

Fuck the rest i am the best
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?04.03.2005. u 09:45 - pre 234 meseci
Vec sam krenuo da pravim engine.
Svaka linija koda ima objasnjenje i verujem da ce svima ceo kod biti jasan.
Pravim samo za jednog igraca koji igra protiv zida :).
Ovaj engine koj pravim ima dva nacina igranja.
Prvi je da reket stoji horizontalno,a drugi vertikalno.
Postova cu cim zavrsim ova 2 nacina.

Fuck the rest i am the best
 
Odgovor na temu

nika100
Nikola Jovic
Kuca :)
Kragujevac

Član broj: 41885
Poruke: 134
*.nat-pool.kg.sbb.co.yu.

ICQ: 234596121
Sajt: www.nika100.dzaba.com


Profil

icon Re: Ko hoce samnom da pravi neku malu igricu?04.03.2005. u 10:30 - pre 234 meseci
Evo postovacu nesto sto sam napravio.
Forma bi trebala da se zove mf a shape lopta.
U tajmeru ukucaj start
A u form_load setb

Fuck the rest i am the best
Prikačeni fajlovi
 
Odgovor na temu

[es] :: Visual Basic 6 :: Ko hoce samnom da pravi neku malu igricu?

Strane: 1 2 3

[ Pregleda: 8427 | Odgovora: 51 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.