Platformowa gra 2D w Unity. Tworzę GDD i rozpisuję mechaniki [OZDGD #3]

W poprzednich odsłonach poradnika z serii Od Zera do Game-Developera zajęliśmy się zarówno postawieniem repozytorium zaprzęgniętego do Gita, jak i podstawami Unity. Czy to więc najwyższy czas, aby wziąć się za produkcję? Niestety nie. Tworzenie gry trzeba od czegoś zacząć i niestety zmartwię was – jeśli rzucicie się na głęboką wodę, chcąc ot tak tworzyć coś na silniku, to z całą pewnością polegniecie albo przynajmniej stracicie swój cenny czas. Zanim zaczniecie produkcję, musicie wiedzieć, co w ogóle wyprodukować chcecie i ten tylko proces odpowie wam na pytanie, czy aby na pewno odpowiednio do tego podchodzicie. 
Platformowa gra 2D w Unity. Tworzę GDD i rozpisuję mechaniki [OZDGD #3]

Gra platformowa 2D w Unity Od Zera do Game-Developera [OZDGD]

W ramach serii Od Zera do Game-Developera, w której to chcę zachęcić innych do zainteresowania się nie tylko grami, ale też sferą ich produkcji, powstały już następujące teksty:

Niniejszy tekst jest kontynuacją serii, w ramach to której tworzę pełnoprawną, ale prostą platformową grę 2D:

Najważniejszy jest pomysł. Reszta przyjdzie sama i z czasem

Gry nie sprzedaje architektura kodu i różnego rodzaju funkcje, działające sobie na jej zapleczu, a główny pomysł na gameplay, czyli rozgrywkę. Jeśli więc nie macie pomysłu na to, co wyróżni waszą grę na rynku i co sprawi, że gracze będą chcieli w nią nie tylko zagrać, ale też zainwestować pieniądze, to proces tworzenia będzie sprowadzał się tylko do kwestii czysto technicznych.  

Czytaj też: Jak stworzyć grę w Unity? Stawiam repozytorium, Gita i projekt w Unity

Nie ma w tym nic złego, jeśli np. aspirujecie na level designera lub programistę, ale jeśli chcecie stworzyć coś, w co będziecie sami chcieli grać, to zapewnicie sobie unikalną przygodę już na etapie tworzenia. W tym procesie warto zastanowić się np. nad tym, czy jakieś osobiste hobby pozwoli wam stworzyć unikalny rodzaj gry i do tego właśnie zachęcam, tworząc nawet prostą platformówkę 2D. Możecie skupić się oczywiście na samej rozgrywce i wykonaniu projektu, ale im lepiej go opakujecie, tym lepsze wrażenie będzie finalnie sprawiać i lepiej będzie się wam nad nim pracować.

W przypadku mojego projektu będzie to zręcznościowa gra platformowa, która opowie historię o zakapturzonym tajemniczym jegomościu. Ten po odszukaniu stanu zen i osiągnięciu nieśmiertelności, porzucił sztukę zabójcy ninja, znajdując nowy sens życia w muzyce, którą tworzy na prywatnym skupisku chmurek, wykradzionych niegdyś od złego czarnoksiężnika. Jego życie toczyło się własnym tempem… aż niespodziewanie natknął się na klan goblinów, które tak bardzo znienawidziły jego muzykę, że pewnego razu, kiedy akurat przelatywał nad ich terytorium, król goblinów, wsłuchując się w żądania swojego ludu, wykradł magiczne instrumenty naszego protagonisty. 

Tak też zacznie się jego walka i wielkie poszukiwania zaczarowanych instrumentów, a choć kwestie wizualne mógłbym pominąć na tę chwilę, to doskonale wiem, że będę korzystał z konkretnego assetu, którego miałem okazję już kiedyś wykorzystywać do platformówki i tym samym wiem, że w tego typu projekcie sprawdzi się idealnie. Zachęcam jednocześnie do porzucenia chęci tworzenia własnych grafik (to coś, w czym możecie utonąć, jeśli nie macie dośiadczenia nie tylko w grafice, ale też tym, jak te grafiki powinny zostać przygotowane do projektu Unity) i sięgnięcia po to, co można dostać za darmo lub kupić na np. Unity Asset Store.

Piszemy Game Design Document dla platformówki 2D i rozpisujemy podstawowe mechaniki

Zanim więc w ogóle zajmiemy się tworzeniem gry na silniku, powinniśmy, a nawet musimy rozpisać game design document (GDD), a więc dokument, który szczegółowo opisuje projekt gry wideo, aby pomysł na nią nie rozmył się w toku produkcji. Tego typu “pigułka wiedzy o planowanej grze” jest wykorzystywana przez twórców do organizowania swojej pracy i nierzadko również komunikowania swojej wizji innym interesariuszom – wydawcy lub inwestorom), dlatego musi zawierać informacje o krótkim zarysie gry, gatunku, docelowej grupie odbiorców, rozgrywce, historii, postaciach, poziomach, grafice, dźwięku, interfejsie użytkownika i aspektach technicznych. 

Jako że w moim przypadku gra nie jest zbyt rozległa, a samo GDD jest rozpisywane rozleglej lub krócej zależnie od twórców i projektu, dokument nie będzie aż tak rozległy i nawet nie doczeka się wskazania specjalnego tytułu, jako że to projekt pokazowy. W rzeczywistości sprowadzi się tylko do ledwie dwóch stron A4 i rozpiski wykonanej na niezastąpionym narzędziu Miro (jest darmowe i ma stosowne alternatywy), które pozwala efektywniej rozpisywać tego typu kwestie w formie mapy myśli złożonej z różnych połączonych ze sobą notatek.

Jako że to tylko najważniejsze założenia przed rozpoczęciem głównej części pracy, pewne jest, że niektóre kwestie mogą ulec zmianie, coś do tego projektu może zostać dodane, a coś usunięte. Jest to coś, czego po prostu nie da się uniknąć w toku tworzenia gry, ale nie powinniśmy na to narzekać, bo zamiast tego, powinniśmy się z tego cieszyć. Tak to już bowiem jest przy tworzeniu sztuki, do których gry niewątpliwie należą, że wraz z procesem jej powstawania, ta może pójść w nieoczekiwanym kierunku i nawet zaskoczyć samego twórcę. Zupełnie tak, jak historia rozwijająca się w książce jest w stanie zaskoczyć samego pisarza, o czym regularnie przypomina m.in. Stephen King czy Remigiusz Mróz. 

Just Another Platformer – GDD

Gra Just Another Platformer będzie to dynamiczna zręcznościowa gra platformowa 2D w kolorowej stylistyce pixel-artu, wymagająca od gracza wykazania się refleksem i pomysłowością w walce z hordą paskudnych grzybów i goblinów, które bronią skradzionych głównemu bohaterowi instrumentów muzycznych. Aby odzyskać każdy instrument, gracz będzie musiał przejść określoną liczbę poziomów, na których głównym celem będzie unieszkodliwienie wszystkich przeciwników na planszy i zebranie określonej liczby nutek-inspiracji.  

Gra będzie zawierać sterowaną przez gracza postać “żyjącego w chmurach zakapturzonego muzyka” o tajemniczej przeszłości, któremu mieszkańcy magicznego lasu ukradli gromadzone przez lata magiczne instrumenty. Bohater ruszy w przygodę ich odzyskania i tym samym będzie musiał stawić czoła niebezpieczeństwom nieznanego mu świata, wykorzystując pielęgnowaną przed wiekami tajemną sztukę walki ninja. 

Czytaj też: Poradnik Unity. Co musicie wiedzieć o tym silniku, żeby stworzyć własną grę?

Główną cechą tej gry będzie wysoka kontrola nad dynamicznie poruszającą postacią głównego bohatera, który będzie mógł m.in. przeprowadzać ataki, a przy tym posługiwać się sztuką ninja do pokonywania przeszkód wszelakiej maści. To sprowadza nas do następującego (uproszczonego) GDD, które w moim przypadku będzie służyć bardziej jako drogowskaz, trzymający wszystkie pomysły w ryzach i wymagający ich rozszerzenia w formie kolejnych dokumentacji (lub karteczek na Miro) wraz z postępem produkcji. 

  1. Fabuła – żyjącemu w chmurach zakapturzonemu artyście gobliny skradły magiczne instrumenty, bez których jego życie straciło sens. Tylko ich zebranie pozwoli mu przejść finalny poziom muzyczny i tym samym ukończyć grę. 
  2. Postacie
    1. Zakapturzony muzyk – główna postać sterowana przez gracza. Będzie mogła wyprowadzać ataki i pokonywać przeszkody świata gry z wykorzystaniem swojej zwinności.
    2. Grzyb – nierzucający się w oczy przeciwnik, służący klanowi goblinów nienawidzących muzyki do patrolowania terenu
    3. Goblin – patrolująca obszary postać z bronią, która może atakować gracza.
    4. Goblin Bombardier – goblin zamiłowany w niszczeniu, który regularnie rzuca własnoręcznie stworzonymi bombami.
  3. Projekt poziomu/środowiska – każdy poziom będzie przedstawiał gobliński las, w którym gobliny i muchomory są głównymi przeciwnikami. Przeszkody środowiskowe będą z kolei utrudniać graczowi podróż przez leśne ostępy.
  4. Rozgrywka – zamknięta opowieść przedstawiająca proces odzyskiwania skradzionych bohaterowie instrumentów. Będzie skupiać się na wykonaniu kilku wymagających poziomów, w których to postać sterowana przez gracza będzie mogła wykazać się umiejętnościami ninja.
  5. Grafika – pixel-art 2D w formie assetów lub (ewentualnie) własnego autorstwa.
  6. Dźwięk i muzyka – proste udźwiękowienie związane z głównym motywem gry.
  7. Interfejs użytkownika, sterowanie grą – interfejs sprowadzi się do wskaźnika liczby zdrowia, a sterowanie do strzałek i klawisza ataku, skoku i szybkiego wślizgu.

Z taką oto rozpiską można już zasiadać do kolejnego etapu tworzenia gry, która może być dla was czarną magią, o ile nie macie wiele wspólnego z programowaniem. Mowa o rozpisaniu mniej więcej tego, jak będzie wyglądać architektura po stronie programistycznej, co będzie dla nas drogowskazem co do tego, jak poprowadzić dalej projekt na etapie już jego realizacji.