Sadržaj:
- Pribor
- Korak 1: Naš Alter -ego - Žuti tenk
- Korak 2: Izvedite neprijatelje
- Korak 3: 42 igre
- Korak 4: Beskrajna igra i poboljšanja
Video: Remake Battle City na GameGo with Makecode Arcade: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:33
GameGo je retro prijenosna igraća konzola kompatibilna s Microsoft Makecodeom koju je razvilo TinkerGen STEM obrazovanje. Temelji se na STM32F401RET6 ARM Cortex M4 čipu i napravljen je za STEM edukatore ili samo ljude koji se vole zabavljati stvarajući retro video igre. Možete slijediti ovaj vodič i isprobati igru u Makecode Arcade simulatoru, a zatim je pokrenuti na GameGo -u.
U ovom ćemo se članku okušati u stvaranju klasične tenkovske pucačke igre Battle City, koju je Namco izvorno proizveo i objavio 1985. za Nintendo Entertainment System (NES). U izvornoj igri igrač kontrolira tenk i puca projektilima kako bi uništio neprijateljske tenkove. Neprijateljski tenkovi pokušavaju uništiti bazu igrača, kao i sam tenk igrača. Napravit ćemo neke izmjene u igri kako bismo bolje prilagodili prakse programiranja blokova s GameGo -om, ali naš će remake i dalje zadržati dosta sličnosti s izvornom igrom. Započnimo!
Pribor
GameGo
Korak 1: Naš Alter -ego - Žuti tenk
Otvorite Makecode Arcade na https://arcade.makecode.com/ i kliknite na novi projekt. Započet ćemo s izradom našeg alter-ega u žutom spremniku. Odaberite Set mySprite to sprite of block of kind of play i nacrtajte žuti spremnik okrenut prema gore kao naš početni sprite, stavite taj blok unutar početnog bloka. Dodaj premjesti mySprite s blokovima gumba. Sada imamo spremnik koji možemo pomicati pomoću gumba u simulaciji! Odlično, ali uvijek je okrenuto u istom smjeru, čak i kad se krećemo prema dolje ili bočno …
Da bismo to ispravili, dodajmo još četiri bloka, po jedan za svaki gumb smjera. Napravite novu varijablu, koja se naziva smjer - u njoj ćemo spremiti smjer kretanja našeg spremnika, 100 će odgovarati dolje, -100 će odgovarati gore, 200 za desnu i -200 za lijevu. Zašto ove brojke? Vidjet ćete kasnije, kad dodamo projektile koje će naš tenk ispaliti. Logika unutar svaka četiri bloka vrlo je jednostavna - provjeravamo je li novi smjer (pritiskom na tipku) isti kao i prije. Ako jest, u osnovi ne radimo nikakve promjene. Ako nije, mijenjamo sprite spremnika, a u slučaju smjera prema dolje i ulijevo okrećemo sliku sprite kako bismo izbjegli crtanje dodatnih sprajtova. Na kraju dodijelimo početnu vrijednost smjera na -100 (tenk prema gore), jer naš tenk tako započinje igru. Pokušajte pomaknuti žuti spremnik sada, sprajt će se sada promijeniti prema smjeru kretanja! Odlično, sada dodajmo metke.
Ispalit ćemo metke s postavljenim projektilom na projektil (izvući mali srebrni kvadrat za taj sprite) s mySpritea brzinama vx vy. Unutar gumba za uključivanje Pritisnuti blok, moramo provjeriti apsolutnu vrijednost smjera da vidimo je li žuti spremnik okrenut gore/dolje lijevo/desno. Zatim nastavljamo ispaljivati projektil s promjenjivom brzinom smjera -zato smo imali -100/100/-200/200 za vrijednosti smjera.
Sada imamo žuti tenk koji može ispaljivati projektile i kretati se. Da su žuti simulirani tenkovi mogli imati osjećaj, sigurno bi se osjećao usamljeno u ovoj praznoj praznini bez neprijatelja i stvari za obaviti. Dakle, za sljedeći korak dodajmo neprijatelje kako bi prošao vrijeme.
Korak 2: Izvedite neprijatelje
Ovaj ćemo korak započeti stvaranjem hrpe novih varijabli: dva niza (jedan za držanje neprijateljskih spritova i drugi za držanje neprijateljskih uputa), vremenska varijabla mrijesta za spremanje vremenskog razdoblja između mrijesta, broj neprijatelja za pohranu maksimalnog broja neprijatelja u isto vrijeme. Također ćemo dodati dva projektila (projektil i neprijateljski projektil) koji ispaljuju na početni blok - što će nam pomoći da kasnije izbjegnemo pogrešku.
Zatim na ažuriranju igre stvaramo svaki… ms blok, tamo umetnite varijablu spawn_time. Logika unutar bloka je jednostavna - ako je ukupan broj neprijatelja na bojnom polju manji od maksimalno dopuštenog broja neprijatelja, dodajte neprijatelja na neprijateljski sprite_list i dodajte 200 (ide desno) za tog neprijatelja.
Zatim, u stvoreni sprite vrste Enemy bloka dodamo neke grafičke efekte, postavljamo ih na slučajnu praznu pločicu i pozivamo funkciju pick_direction za ovaj sprite. U sprajtu vrste neprijatelj udara u zid, istu funkciju nazivamo pick_direction.
Što je u toj funkciji? Ovdje se stvari počinju pomalo komplicirati, pa se držite. Postoji 50 posto šanse da se neprijateljski tenk podigne, a 50 posto da se spusti - prema tome mijenjamo sprite. Jedini trik ovdje je da također moramo promijeniti vrijednost koja odgovara tom neprijateljskom tenku na listi neprijateljskih smjerova u novi smjer, kako bismo ga ispaljivali u pravom smjeru. Za to pronalazimo indeks neprijateljskog spriteta na listi neprijateljskih sprajtova i mijenjamo vrijednost te stavke na popisu neprijateljskih smjerova.
Na kraju, dodajmo i hice ispaljivanja. Dodajemo još jedno ažuriranje igre svakih 500 ms bloka i stavku for stavimo na neprijateljsku_sprite_ listu. S 30% šanse neprijateljski duh ispalit će neprijateljski projektil u smjeru kretanja.
Ako sada pokrenemo igru u simulaciji, možemo vidjeti kako se naš žuti tenk i neprijateljski tenkovi pojavljuju u istoj točki i odlaze u prazan prostor. Mi možemo pucati i oni u naš žuti tenk, ali ništa se ne bi dogodilo. I dalje se osjeća bez smisla:) Dodajmo ukrase i mehaniku igara kao posljednji korak.
Korak 3: 42 igre
Ovaj ćemo korak započeti dodavanjem života i rezultata na kartici Informacije i postavljanjem života na 10, a rezultat na nulu. Zatim dodajemo kartu postavljenih blokova u…. Nacrtajte mapu datoteke tako da izgleda kao što vidite na gornjoj snimci zaslona. Ne zaboravite dodati zidove!
Dodajmo sprite vrste projektila preklapa se otherSprite of kind Player - tada neprijateljski meci pogađaju naš žuti tenk. Moramo biti sigurni da su ti projektili neprijateljski meci, a ne naši, pa ćemo dodati da ako je stanje unutar bloka i ako se ocijeni kao True, tada oduzimamo jedan od broja života. Slično njemu, u drugom bloku na sprite vrste projektila preklapa se otherSprite of kind Enemy pazimo da je projektil projektil iz žutog tenka i ako se ovo stanje ocijeni kao True, uništavamo otherSprite (neprijateljski tenk), uklanjamo ga s popisa neprijateljske_sprite_liste i dodajte jednu za bodovanje.
Posljednja stvar su uvjeti pobjede i poraza - za pobjedu ćemo provjeriti je li rezultat veći ili jednak 10 u bloku zauvijek. Ako jest, tada prikazujemo zaslon pobjede. U nultom bloku života prikazujemo zaslon Game Over.
Sada isprobajte u simulaciji da vidite radi li igra kako se očekivalo. Zatim ga prenesite na GameGo i uživajte u razbijanju neprijateljskih tenkova!
Korak 4: Beskrajna igra i poboljšanja
U našem spremištu GitHub možete preuzeti dvije datoteke za Makecode arkadu - jedna je potpuno ista koju biste dobili ako slijedite ove upute, a druga je nadograđena verzija koja ima nasumično generiranu progresiju razine. Ima 10 razina, svaka je nasumično generirana s povećanim brojem neprijatelja u svakoj sljedećoj razini.
I naravno, postoji još više stvari koje vi ili vaši učenici možete dodati u igru povrh toga! Ima bolje glazbe, lomljivih zidova, različitih uvjeta pobjede i tako dalje!
Ako ipak napravite poboljšanu verziju igre, podijelite je u komentarima ispod! Za više informacija o GameGou i drugom hardveru za proizvođače i STEM edukatore posjetite našu web stranicu, https://tinkergen.com/ i pretplatite se na naš blog.
TinkerGen je započeo Kickstarter kampanju za MARK (Make A Robot Kit), komplet robota za učenje kodiranja, robotike, umjetne inteligencije!
Preporučeni:
(Više igrača) Borba na GameGo -u s Makecode Arcade: 6 koraka
(Više igrača) Borba na GameGo -u s Makecode Arcade: GameGo je retro prijenosna igraća konzola kompatibilna s Microsoft Makecode -om koju je razvilo TinkerGen STEM obrazovanje. Temelji se na STM32F401RET6 ARM Cortex M4 čipu i napravljen je za STEM edukatore ili samo ljude koji se vole zabaviti stvarajući retro video ga
Platformer s beskonačnim razinama na GameGo s Makecode Arcade: 5 koraka (sa slikama)
Platformer s beskonačnim razinama na GameGo -u S Makecode Arcade: GameGo je retro prijenosna igraća konzola kompatibilna s Microsoft Makecode -om koju je razvilo TinkerGen STEM obrazovanje. Temelji se na STM32F401RET6 ARM Cortex M4 čipu i napravljen je za STEM edukatore ili samo ljude koji se vole zabaviti stvarajući retro video igre
Kako istražiti koronu bez uništavanja prijenosnog računala (REMAKE): 8 koraka
Kako istražiti Coronu bez uništavanja prijenosnog računala (REMAKE): Nema više ružnih snimaka zaslona. Nema više anime djevojke od FabyRM -a. Ova stvar je sada zapravo čitljiva. Ozdravite svijet, izliječite Koronu. Prepraviti !? YEEEESS !!!!!!!!!!!!!!!!!!!!!!!!!! ?????? Postanite znanstvenik a da ne budete znanstvenik sa snagom digitalnog čarobnjaštva! Simu
Uradi sam Mario Kart Balloon Battle Roboti: 4 koraka (sa slikama)
Uradi sam Mario Kart Balloon Battle Robots: Postoje neki projekti u kojima se radi funkcionalna ili praktična stvar. Postoje neki projekti u kojima napravite lijepu stvar. A tu su i projekti poput ovog u kojima odlučujete udariti britvicom i balonom na neke robote i boriti se
LED zidna svjetiljka Night City Skyline: 6 koraka (sa slikama)
LED zidna svjetiljka Night City Skyline: Ova uputa opisuje kako sam izgradio dekorativnu zidnu svjetiljku. Ideja je o noćnom obzoru grada, s osvijetljenim prozorima u zgradama. Svjetiljka je izrađena od poluprozirne plave ploče od pleksiglasa sa građevinskim silosima obojenim u