piątek, 10 lutego 2012

Pisanie gier w Ren'py, część 3

Mając wiedzę z dwóch poprzednich części poradnika można już napisać grę kinetic novel, czyli taką liniową, bez pytań. Ale to pewnie mało komu się spodoba. W tej części zajmę się pytaniami, czyli jak sprawić, żeby gra miała różne ścieżki przejścia i zakończenia.

Najważniejszy jest tutaj porządek, bo w grze podzielonej pytaniami wszystko musi być we właściwym miejscu. Jeżeli na początku pisaliśmy wszystko zaraz przy granicy skryptu, to teraz się to zacznie zmieniać. Każdy fragment z pytaniami zaczyna się od komendy menu, która oznacza pojawienie się ramek z pytaniami. Teraz trzeba wpisać treść pytań, które pojawią się na ekranie i skróty, które pomogą nam wpisaniu skryptu. Powiedzmy, że nasza postać stoi przed domem i ma do wyboru wejść albo iść dalej. Wybór zostawiamy graczowi, a komenda w skrypcie będzie wyglądała tak:


Jak widać słowa hut i next są komendami, które mówią skryptowi, którą odpowiedź wybrał gracz. Komenda label zaczyna fragment, który powinien zacząć się wyświetlać, kiedy zostanie wybrana przyporządkowana mu komenda. To wydaje się proste. Jednak tutaj pojawia się trudność. Wszystko musi być na odpowiedniej linii i w odpowiedniej odległości od granicy strony. Zwróćcie uwagę, że wszystko jest pod sobą w określonej odległości. Na skrypcie gry wyświetlane są linie to symbolizujące. Jeśli więc chcemy, żeby po kolejnym wyborze następowały kolejne, robimy to tak:
Trzeba pamiętać, że każde pytanie otwiera dwa wybory dla gracza i dwie ścieżki, które jakoś trzeba potem zamknąć. Żeby gra w określonym miejscu się skończyła, wpisujemy po prostu "return", który przywraca gracza do menu końcowego.

Drugą możliwością dzielenia i rozwidlania są opcje "true" i "false". Pozwalają one przyporządkować daną odpowiedź słowu - kluczowi i w odpowiednim momencie gry ją uaktywnić. Ich zastosowanie najlepiej chyba pokaże przykład, pochodzący z gry "One Afternoon". Naszym słowem - kluczem jest tutaj "clothes whore":
  
Podczas pisania scenariusza z pytaniami, polecam często i na bieżąco sprawdzać, czy wszystko działa, bo tutaj czasem jedna spacja może dużo nakrzaczyć. Lint przed uruchomieniem gry wylicza wszystkie zrobione przez nas błędy i wskazuje numery linijek, w których zostały popełnione.

Teraz już wiecie, jak stworzyć normalną visual novel. W następnej  części opiszę elementy, które można wykorzystać do dopracowania gry.

3 komentarze:

  1. Na to właśnie czekałem. Dziękuję za wyjaśnienie!

    OdpowiedzUsuń
  2. Kiedy 4rta cześć? ;) Czy będzie ukazane jak zrobić exe'ka?

    OdpowiedzUsuń
    Odpowiedzi
    1. A to mi się wydawało oczywiste. Ale dobra, opiszę na dniach.

      Usuń