Autor Wątek: Fabuła i misje w grze  (Przeczytany 1950 razy)

Offline Rares

  • Użytkownik
    • Moja strona

# Sierpień 15, 2010, 17:33:50
Utknąłem podczas pisania design docu do gry. Konkretnie zatrzymałem się na kwestii misji w grze. Dotyczy to wszystko gry akcji, podobnej do GTA 2. Mianowicie nie wyobrażam sobie jak mam zaprojektować misje w grze. Ma to wyglądać jak w GTA, tzn. podjeżdżam sobie do zleceniodawcy, potem gra ustawia mi różne timery, cele gry i mogę zabrać się za robotę.

Wyobrażałem sobie to tak. W projekcie istnieje klasa, która przechowuje dane na temat postępów w grze - ID ostatnio ukończonej misji (gra będzie liniowa), funkcje zapisujące postępy i wczytujące je z pliku. Gra korzysta także z pliku, w którym pod ID misji, którą będzie można teraz zacząć instrukcje, tzn. opcjonalny czas na wykonanie misji, dialogi, cele itd. Tylko, że nie mam kompletnie żadnego pomysłu jak to wszystko rozplanować i zakodować.

Jak to działa w innych grach (chodzi mi głównie o GTA)? Macie jakieś sugestie? Chętnie wysłucham każdego pomysłu.

Druga sprawa, może banalna, ale nic ta nie poradzę - nie mam pomysłu na fabułę. I w tym miejscu proszę was o pomoc. Podrzucie mi jakiś pomysł na fabułę, coś co by was wciągnęło w grę. Od fabuły zależy też jak będzie wyglądał świat gry i wiele innych rzeczy.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline MichalBe

  • Użytkownik
    • MichalBe's Github

# Sierpień 15, 2010, 17:52:56
to po  co chcesz robic gre jak nie masz pomyslu na fabule? zrob tetrisa, tam jest prostsza.

Offline ANtY

  • With fury and fire
  • Użytkownik
    • ANtY

  • Zbanowany
# Sierpień 15, 2010, 17:55:01
A w jakich czasach dzieje się gra?

Offline Rares

  • Użytkownik
    • Moja strona

# Sierpień 15, 2010, 17:56:22
Szczerze mówiąc, w tej grze fabuła to tylko dodatek, skupiam się na napisaniu gry, bo bardzo chcę taką napisać, ale, że nie mam pomysłu, zwróciłem się do was.

@UP

W czasach współczesnych. Miejsce akcji - duże miasto, ulokowane na dwóch wyspach, z jednej z nich:

a) wychodzi most, który będzie zamknięty, do zakończenia gry. Ostatnia misja zakończy się wyjazdem przez ten most, niszcząc przy okazji blokady.
b) ostatnia misja - wykonanie zadania i czas na dojazd na drugi koniec świata gry, stamtąd wyruszy statek, którym gracz będzie mógł uciec z miasta przed policją i/lub mafią i zakończyć grę.
« Ostatnia zmiana: Sierpień 15, 2010, 18:01:45 wysłana przez Rares »

Offline civis

  • Użytkownik

# Sierpień 15, 2010, 18:11:59
Obejrzyj kilka filmów sensacyjnych i zaadaptuj jakąś historię.

Offline ConayR

  • Użytkownik

# Sierpień 15, 2010, 18:14:36
@OP: Co uważasz, że będzie silną stroną Twojej gry? GTA są dobre m.in. dzięki spinającej wszystko fabule. Samo jeżdżenie po mieście i rozwałka będą miały problem utrzymać całą grę, co pokazuje przykład Crackdown 2.

Offline ANtY

  • With fury and fire
  • Użytkownik
    • ANtY

  • Zbanowany
# Sierpień 15, 2010, 18:15:33
Szczerze mówiąc, w tej grze fabuła to tylko dodatek, skupiam się na napisaniu gry, bo bardzo chcę taką napisać, ale, że nie mam pomysłu, zwróciłem się do was.

@UP

W czasach współczesnych. Miejsce akcji - duże miasto, ulokowane na dwóch wyspach, z jednej z nich:

a) wychodzi most, który będzie zamknięty, do zakończenia gry. Ostatnia misja zakończy się wyjazdem przez ten most, niszcząc przy okazji blokady.
b) ostatnia misja - wykonanie zadania i czas na dojazd na drugi koniec świata gry, stamtąd wyruszy statek, którym gracz będzie mógł uciec z miasta przed policją i/lub mafią i zakończyć grę.
Olej ten design doc, zajmij się pisaniem gry ;)

Offline Rares

  • Użytkownik
    • Moja strona

# Sierpień 15, 2010, 18:19:05
Ok, pomińmy fabułę, coś jeszcze wymyślę. A jak rozwiązać pierwszy problem.

Offline lethern

  • Użytkownik

# Sierpień 15, 2010, 18:38:56
zrób triggersy, które są aktywowane (przez obiekt misji). Aktywne triggersy są sprawdzane - czy zaszła jakaś akcja (np. na polu XY jest gracz, albo samochód znikł z pola XY, albo...)

Możesz to zaimplementować też inaczej, jako eventy + dodatki do różnych klas (ludzi / samochodów)

Misję zrób jako automat stanów. Pierwszy stan inicjuje potrzebne rzeczy, do drugiego stanu żeby przejść - musi być poprawnie wykonany jakiś triggers. Kolejny stan wyświetla info na ekranie. Następny stan kończy misję i rozpoczyna nowy stan kolejnej misji..

(nie wiem, skąd mnie naszło na słówko "triggers", chyba ze starcraft-mapeditor'a)

Jak sobie to przechować w pliku? Możesz podpatrzyć jakiś język skryptowy, albo jakiś edytor (wspomniany starcraft się uśmiecha :P)
« Ostatnia zmiana: Sierpień 15, 2010, 18:40:38 wysłana przez lethern »

Offline MadBonsai

  • Użytkownik
    • Ifrit

# Sierpień 16, 2010, 14:14:31
Co do fabuły - zacznij szukać scenarzysty. I tak będziesz go potrzebował, a "pomysły z forum" do niczego ci się przydadzą. W pierwszej fazie produkcji gry treść misji i tak jest mało istotna.
Jeśli chodzi o sam storytelling, lepszy dział to http://forum.warsztat.gd/index.php/board,74.0.html

Ok, pomińmy fabułę, coś jeszcze wymyślę. A jak rozwiązać pierwszy problem.
Weź pierwszą z brzegu grę z edytorem fabuły. Zobacz, jak to tam wygląda. Potem dobrze wziąć drugą grę dla porównania.
Na szybko możesz zobaczyć podpatrzyć same tutsy do tych gier, np.
http://pl.djinni.wikia.com/wiki/Zadanie_(ang._Quest)
http://pl.djinni.wikia.com/wiki/Tworzenie_zadania
Podstawowym atomem jest faza questa. Łańcuch faz tworzy questa. Każda faza ma taki sam zestaw parametrów (is first; is last; opis fazy; drugi opis fazy - używany w grach fabularnych; punkt na mapie, do której trzeba dojść; dialogi i skrypty użyte w danej fazie - przypisują się w czasie definiowania tych dialogów i skryptów, by designer nie pogubił się). Misję przeskakuje do następnej fazy po wywołaniu skryptu.
Minimum danych, którego potrzebujesz w pliku questa - ID i nazwy zlokalizowane wszystkich faz + treść faz typu "Idź do sąsiada po cukier". Najczęściej także info o punkcie na lokacji, do którego należy dojść.
Wszystkie instrukcje zawarte są w skryptach. Dochodzisz do puntu na lokacji - przeskakuje faza. Jeśli w tym miejscu masz z kimś pogadać - odpalasz dialog skryptem. Cutscenka - odpalasz skryptem. Jeśli graczowi ma wyświetlić nazwa/treść kolejnej fazy questa - załatwia to system questowy sprawdzający, czytający treść fazy z pliku.

To tak z grubsza ;) Zobacz, jak zrobili to inni - sekret odkryty :)

Cytuj
ID ostatnio ukończonej misji (gra będzie liniowa)
To, że gra jest liniowa wcale nie oznacza, że da się robić tylko 1 rzecz na raz. Mniejsza.