Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Nasze Alter-ego - Żółty Czołg
- Krok 2: Wyprowadź wrogów
- Krok 3: 42 gry
- Krok 4: Niekończąca się gra i ulepszenia
Wideo: Remake Battle City na GameGo z Makecode Arcade: 4 kroki (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
GameGo to przenośna konsola do gier retro zgodna z Microsoft Makecode, opracowana przez TinkerGen STEM Education. Oparty jest na chipie STM32F401RET6 ARM Cortex M4 i jest przeznaczony dla nauczycieli STEM lub po prostu osób, które lubią bawić się przy tworzeniu gier wideo w stylu retro. Możesz śledzić ten samouczek i wypróbować grę w symulatorze Makecode Arcade, a następnie uruchomić ją na GameGo.
W tym artykule zamierzamy spróbować swoich sił w odtworzeniu klasycznej strzelanki Battle City, pierwotnie wyprodukowanej i opublikowanej w 1985 roku przez Namco dla Nintendo Entertainment System (NES). W oryginalnej grze gracz kontroluje czołg i strzela pociskami, aby zniszczyć wrogie czołgi. Wrogie czołgi próbują zniszczyć bazę gracza, a także sam czołg gracza. Wprowadzimy pewne modyfikacje w rozgrywce, aby lepiej dostosować się do praktyk programowania blokowego w GameGo, ale nasz remake nadal zachowa wiele podobieństw do oryginalnej gry. Zaczynajmy!
Kieszonkowe dzieci
GameGo
Krok 1: Nasze Alter-ego - Żółty Czołg
Otwórz Makecode Arcade na https://arcade.makecode.com/ i kliknij na nowy projekt. Zaczniemy robić z naszego alter ego żółty czołg. Wybierz Ustaw mySprite na duszka rodzaju klocka gracza i narysuj żółty zbiornik skierowany do góry jako nasz duszek startowy, umieść ten klocek wewnątrz klocka startowego. Dodaj przenieś mySprite z blokiem przycisków. Teraz mamy czołg, którym możemy poruszać się za pomocą przycisków w symulacji! Świetnie, ale zawsze jest zwrócone w tym samym kierunku, nawet gdy poruszamy się w dół lub na boki…
Aby to naprawić, dodajmy jeszcze cztery bloki, po jednym dla każdego przycisku kierunku. Utwórz nową zmienną o nazwie kierunek - zapiszemy w niej kierunek ruchu naszego czołgu, 100 będzie odpowiadać w dół, -100 będzie odpowiadać w górę, 200 dla prawej i -200 dla lewej. Dlaczego te liczby? Zobaczycie później, gdy dodamy pociski, które wystrzeli nasz czołg. Logika każdego z czterech bloków jest bardzo prosta - sprawdzamy, czy nowy kierunek (od naciśnięcia przycisku) jest taki sam jak poprzedni. Jeśli tak, to w zasadzie nie wprowadzamy żadnych zmian. Jeśli tak nie jest, zmieniamy duszka czołgu, a w przypadku kierunku w dół iw lewo odwracamy obraz duszka, aby uniknąć rysowania dodatkowych duszków. Na koniec przypiszmy początkową wartość kierunku na -100 (czołg w górę), ponieważ w ten sposób nasz czołg rozpoczyna grę. Spróbuj teraz poruszyć żółtym czołgiem, duszek zmieni się teraz zgodnie z kierunkiem ruchu! Świetnie, teraz dodajmy kule.
Wystrzelimy pociski z ustawionym pociskiem na pocisk (narysuj mały srebrny kwadrat dla tego duszka) z mySprite z prędkością vx vy. Wewnątrz przycisku włączania A wciśniętego bloku, musimy sprawdzić wartość bezwzględną kierunku, aby zobaczyć, czy żółty zbiornik jest skierowany w górę/dół w lewo/w prawo. Następnie przystępujemy do wystrzelenia pocisku ze zmienną prędkością kierunku - dlatego dla wartości kierunku mieliśmy -100/100/-200/200.
Teraz mamy żółty czołg, który może strzelać pociskami i poruszać się. Gdyby żółte symulowane czołgi mogły mieć wrażenie, z pewnością czułby się samotny w tej pustej pustce bez wrogów i rzeczy do zrobienia. Tak więc w następnym kroku dodajmy wrogów, aby zabić czas.
Krok 2: Wyprowadź wrogów
Zaczniemy ten krok od stworzenia kilku nowych zmiennych: dwie tablice (jedna do utrzymywania wrogich duszków i druga do utrzymywania kierunków wroga), zmienna czasu odradzania do przechowywania czasu między spawnami, liczba wrogów do przechowywania maksymalnej liczby wrogów w tym samym czasie. Dodamy również dwa pociski (pocisk i wrogi pocisk) strzelające w bloku startowym - co pomoże nam później uniknąć błędu.
Następnie tworzymy przy aktualizacji gry co … ms blok, wstawiamy tam zmienną spawn_time. Logika wewnątrz bloku jest prosta - jeśli całkowita liczba wrogów na polu bitwy jest mniejsza niż maksymalna dozwolona liczba wrogów, dodaj wroga do wroga_sprite_list i dodaj 200 (idzie w prawo) w kierunku tego wroga.
Następnie w utworzonym sprite rodzaju Enemy dodajemy kilka efektów graficznych, umieszczamy go na losowym pustym kafelku i wywołujemy funkcję pick_direction dla tego sprite'a. W sprite rodzaju Enemy uderza w ścianę, wywołujemy tę samą funkcję, pick_direction.
Co jest w tej funkcji? Tutaj sprawy zaczynają się trochę komplikować, więc trzymaj się. Istnieje 50% szans, że wrogi czołg podniesie się, a 50% spadnie – odpowiednio zmieniamy duszka. Jedyną sztuczką tutaj jest to, że musimy również zmienić wartość odpowiadającą temu konkretnemu czołgowi wroga we wrogim_directions_list na nowy kierunek, aby wystrzeliwał pociski we właściwym kierunku. W tym celu znajdujemy indeks ikonki wroga w przeciwnej_listy_sprite'a i zmieniamy wartość tego przedmiotu na liście wrogich_kierunków.
Na koniec dodajmy strzelające strzały. Dodajemy kolejną aktualizację gry co 500 ms bloku i umieszczamy przedmiot na liście przeciwników_sprite_. Z 30% szansą, że wrogi duszek wystrzeli wrogi pocisk w swoim kierunku ruchu.
Jeśli uruchomimy teraz grę w symulacji, zobaczymy, jak nasz żółty czołg i wrogie czołgi pojawiają się w tym samym punkcie i wpadają w pustą przestrzeń. Możemy strzelać, a oni mogą strzelać do naszego żółtego czołgu, ale nic by się nie stało. Wciąż wydaje się to tak pozbawione sensu:) Dodajmy dekoracje i mechanikę gry jako ostatni krok.
Krok 3: 42 gry
Zaczniemy ten krok, dodając życie i wynik z zakładki Informacje i ustawiając czas życia na 10 i wynik na zero. Następnie dodajemy mapę kafelków zestawu bloków do …. Narysuj mapę pliku, aby wyglądała tak, jak na powyższym zrzucie ekranu. Nie zapomnij dodać ścian!
Dodajmy na przykład duszka Pocisk nakłada się na innego duszka gracza - wtedy pociski wroga trafiają w nasz żółty czołg. Musimy upewnić się, że te pociski są pociskami wroga, a nie naszymi, więc dodamy, że jeśli warunek w bloku i jeśli zostanie wyliczony jako Prawda, odejmiemy jeden od licznika życia. Podobnie jak w innym bloku na sprite rodzaju Pocisk nakłada się na innyDuch rodzaju Wróg upewniamy się, że pocisk jest pociskiem z żółtego czołgu i jeśli ten warunek zostanie oceniony jako Prawda, niszczymy innegoSprite(wrogi czołg), usuwamy go z listy wroga_sprite_list i dodaj jeden do punktacji.
Ostatnią rzeczą są warunki zwycięstwa i porażki - dla zwycięstwa sprawdzimy, czy wynik jest wyższy lub równy 10 w bloku na zawsze. Jeśli tak, wyświetlamy ekran zwycięstwa. A w bloku życia zero pokazujemy ekran Game Over.
Teraz wypróbuj to w symulacji, aby sprawdzić, czy gra działa zgodnie z oczekiwaniami. Następnie prześlij go do GameGo i ciesz się rozbijaniem czołgów wroga!
Krok 4: Niekończąca się gra i ulepszenia
W naszym repozytorium GitHub możesz pobrać dwa pliki do zręcznościówki Makecode - jeden jest dokładnie taki sam, jakbyś postępował zgodnie z tą instrukcją, a drugi jest ulepszoną wersją, która ma losowo generowaną progresję poziomów. Posiada 10 poziomów, każdy z nich jest generowany losowo ze zwiększoną liczbą wrogów na każdym kolejnym poziomie.
I oczywiście jest jeszcze więcej rzeczy, które Ty lub Twoi uczniowie możecie dodać do gry! Jest lepsza muzyka, mury do zniszczenia, inne warunki zwycięstwa i tak dalej!
Jeśli stworzysz ulepszoną wersję gry, podziel się nią w komentarzach poniżej! Aby uzyskać więcej informacji o GameGo i innym sprzęcie dla producentów i nauczycieli STEM, odwiedź naszą stronę internetową https://tinkergen.com/ i zasubskrybuj nasz blog.
TinkerGen rozpoczął kampanię Kickstarter dla MARK (Make A Robot Kit), zestawu robota do nauki kodowania, robotyki, sztucznej inteligencji!
Zalecana:
(Multiplayer) Walka na GameGo z Makecode Arcade: 6 kroków
(Multiplayer) Walka na GameGo z Makecode Arcade: GameGo to przenośna konsola do gier retro zgodna z Microsoft Makecode, opracowana przez TinkerGen STEM Education. Opiera się na chipie STM32F401RET6 ARM Cortex M4 i jest przeznaczony dla nauczycieli STEM lub po prostu osób, które lubią bawić się przy tworzeniu gier wideo w stylu retro
Platformówka z nieskończonymi poziomami w GameGo z Makecode Arcade: 5 kroków (ze zdjęciami)
Platformówka z nieskończonymi poziomami w GameGo z Makecode Arcade: GameGo to zgodna z Microsoft Makecode przenośna konsola do gier w stylu retro, opracowana przez TinkerGen STEM Education. Opiera się na chipie STM32F401RET6 ARM Cortex M4 i jest przeznaczony dla nauczycieli STEM lub po prostu osób, które lubią bawić się przy tworzeniu gier wideo w stylu retro
Jak badać koronę bez niszczenia laptopa (REMAKE): 8 kroków
Jak badać Corona bez niszczenia laptopa (REMAKE): Nigdy więcej brzydkich zrzutów ekranu. Nigdy więcej dziewczyny z anime od FabyRM. Ta rzecz jest teraz czytelna. Uzdrów świat, wylecz Corona. Przerobić!? YEEEEESS!!!!!!!!!!!!!!!!!!!!!!!!!!??????Zostań naukowcem bez bycia naukowcem z mocą cyfrowej magii! Symu
DIY Mario Kart Balloon Battle Robots: 4 kroki (ze zdjęciami)
DIY Mario Kart Balloon Battle Robots: Istnieje kilka projektów, w których tworzysz coś funkcjonalnego lub praktycznego. Są projekty, w których można zrobić coś pięknego. A potem są projekty takie jak ten, w których postanawiasz uderzyć żyletką i balonem w niektóre roboty i
Kinkiet LED Night City Skyline: 6 kroków (ze zdjęciami)
Kinkiet LED Night City Skyline: Ta instrukcja opisuje, w jaki sposób zbudowałem dekoracyjny kinkiet. Chodzi o nocną panoramę miasta, z kilkoma oświetlonymi oknami w budynkach. Lampa zrealizowana jest z półprzezroczystego panelu z niebieskiej plexi z sylwetkami budynku pomalowanymi w