Lekcja 8 – Intro, NPC, questy

Gdy zrobiliśmy już drzwi i opanowaliśmy podstawy edycji zdarzeń, pora stworzyć faktycznie fragment gry, który gracz będzie mógł przeżyć. W pierwszej kolejności stwórzmy zatem proste intro wprowadzające odbiorcę naszego dzieła w wykreowany przez nas świat.

Intro

Przez „intro” rozumiemy wydzielony fragment gry umieszczony na samym początku, którego zadaniem jest (najczęściej) zawiązanie akcji lub przedstawienie bohatera i świata, w którym żyje. Niniejszy poradnik opisuje bardziej techniczne aspekty tworzenia gry i nie będę skupiał się w nim na tematach pobocznych, ale miejcie na uwadze, że nawet takie elementy jak intro można wykonać na niezliczoną liczbę sposobów i przyda wam się dodatkowa wiedza, którą można znaleźć w Internecie oraz, w przewidywalnej przyszłości, na łamach RMteki.

Nie przedłużając zatem, przechodzimy na mapę domu bohatera (tam znajduje się punkt startowy gry, pamiętacie?) i tworzymy nowy event gdzieś u góry z lewej strony i nazywamy go „Intro”. Jego dokładne umiejscowienie nie ma znaczenia, ponieważ i tak nie będzie miał grafiki. Chcemy, by nasze intro odpaliło się zaraz po wybraniu nowej gry, dlatego Trigger eventu ustawiamy na Autostart. Dzięki temu gracz nie będzie mógł zrobić żadnego ruchu do momentu, aż mu na to nie pozwolimy.

Następnie w Contents wstawiamy komendę Show Text (pierwsza pozycja na pierwszej stronie), która odpowiada za wyświetlanie tekstu w grze.

Zwróćcie uwagę na dwie szare, pionowe kreski w głównym oknie wiadomości. Pierwsza z lewej pokazuje, ile znaków tekstu może być wyświetlone przy wykorzystaniu grafiki twarzy (38), a druga – ile bez takiej grafiki (50). Z tekstem można wyczyniać różne cuda, o czym powie wam plik pomocy. Poświęcę temu odrębny artykuł w przyszłości. Póki co wpiszcie swoją pierwszą wiadomość w stylu „Pirat Barnaba miał kiepski dzień…”. Jedno okno wiadomości może wyświetlić maksymalnie 4 linijki tekstu! Pamiętajcie także, że póki co nie wykorzystujemy polskich znaków – gdy przyjdzie czas, powiem wam, jak to zmienić.

Po wciśnięciu OK dodajmy teraz drugą komendę – znane z poprzedniej lekcji Wait. Dzięki temu otrzymamy odstęp pomiędzy wiadomościami. W drugim tekście napiszmy coś o konieczności porozmawiania z sołtysem wioski. To koniec naszego intra. Żeby nie powtarzało się ono w kółko (tak działa ustawiony przez nas w evencie Trigger Autorun), na samym dole komend wstawiamy Control Switches i zmieniamy przełącznik Intro (wybierzcie sobie numer, u mnie to 2) na ON. Teraz w evencie tworzymy drugą stronę, gdzie w Conditions wybieramy właśnie ten przełącznik. Na nowej stronie nie dodajemy już żadnych komend.

W taki sposób zrobiliśmy proste intro, które będzie wyświetlało określony tekst, a następnie przełączy się na nową stronę i nigdy nie uruchomi się więcej niż jeden raz. Oczywiście możecie stworzyć bardziej dopracowany początek, np. przy pomocy znanej nam już komendy poruszającej bohaterem.

NPC

Komenda Show Text to chleb powszedni każdego szanującego się RPG-a, dlatego będziemy używać jej niemal nieustannie. Wykorzystamy ją także po to, by stworzyć NPC-a, czyli postać niezależną od bohatera! W naszym przykładzie będą to sołtys i dziecko, dlatego w pierwszej kolejności należy narysować domek sołtysa na mapce Wioska oraz stworzyć nową mapę z wnętrzem tego domku. Obie mapy należy połączyć teleportami jak w poprzednich lekcjach.

Wewnątrz domu sołtysa będzie znajdować się dziecko, którego zadaniem jest biegać po planszy i denerwować gracza. Na mapie Dom Sołtysa tworzymy nowe zdarzenie o nazwie Dzieciak i wybieramy char małego chłopca z pliku People1. Movement Type ustawiamy na Random (żeby biegał w losowym kierunku), Frequeny na 8, Animation Type na Walking Animation, a Movement Speed na x2 Faster. W Contents natomiast wstawiamy wiadomość tekstową, którą ma wypowiedzieć chłopak po naciśnięciu przycisku. Pamiętajcie, że zawsze będzie wypowiadał tę samą kwestię, dopóki nie wprowadzicie nowych stron w evencie.

Gratulacje, właśnie stworzyliśmy swojego pierwszego NPC-a!

Quest

Zanim stworzymy pierwsze zadanie dla gracza, czyli quest, musicie uświadomić sobie jedną rzecz. RPG Maker nie ma zdefiniowanej zakładki lub komendy na questy. To, co my rozumiemy pod pojęciem questa, to jedynie wypadkowa użytych przełączników, wyświetlonych wiadomości i umieszczonych w grze zdarzeń. Quest rodzi się i kończy w umyśle gracza. Teraz takie stwierdzenie może się wydać wam niepotrzebne lub płytkie, ale gdy zaczniecie już robić gry na poważnie, może okazać się bardzo pomocne. Nie zapomnijcie o nim!

Zadanie naszemu bohaterowi ma zlecić sołtys, dlatego tworzymy na mapce Dom Sołtysa nowe zdarzenie o nazwie Soltys i jako grafikę ustawiamy mu char dziadka z laską (plik People1). Jako pierwszą komendę wybieramy Change Faceset (druga w kolejności za Show Text). Dzięki tej opcji będziemy mogli wyświetlać grafikę twarzy w wiadomościach z tekstem.

Przyciskiem Set wybieramy konkretną grafikę, Display Position wskazuje, po której stronie okna wiadomości wyświetla się twarz, a Flip Horizontally prezentuje lustrzane odbicie twarzy względem oryginalnego pliku. Wybieramy grafikę dziadka z pliku People1 i zatwierdzamy OK.

Teraz używamy komend Show Text i Change Faceset, by stworzyć dialog pomiędzy sołtysem i Barnabą. Pierwszą linijkę każdej wiadomości proponuję zawsze przeznaczać na imię postaci i dwukropek, dzięki czemu gracz będzie dokładnie wiedział, kto wypowiada daną kwestię. W naszym dialogu sołtys informuje Barnabę, że chochlik ukradł kryształ chroniący wioskę przed potworami i uciekł do pobliskiej jaskini. Nasz pirat, jako osoba bardzo pomocna, postanawia odzyskać zgubę.

Na koniec naszej rozmowy sołtys wręcza Barnabie 100 złotych monet, żeby wyekwipował się na podróż. Dlatego po dialogu wstawiamy nową komendę Change Gold (także znajdującą się na pierwszej stronie) zostawiamy zaznaczoną opcję Increase, a w polu Constant wpisujemy 100. Dzięki temu gracz otrzyma walutę gry (domyślnie jest to złoto) w liczbie 100.

Musimy jeszcze poinformować gracza, ile pieniędzy otrzymał. Po komendzie dodającej złoto wybieramy Change Faceset, ale tym razem wciskamy Remove. Dzięki temu następna wiadomość zostanie wyświetlona bez żadnej twarzy (dopóki nie użyjecie opcji Remove, w wiadomościach będzie pojawiać się ostatnia wybrana grafika twarzy). W nowej wiadomości informujemy gracza o zdobytej gotówce.

Na sam koniec zmieniamy kolejny przełącznik na ON (u mnie jest to 0003 – Soltys).

W zdarzeniu z sołtysem tworzymy nową stronę, w Conditions wybieramy przełącznik 0003, a w komendach krótką informację o tym, że sołtys czeka na ukończenie zadania. Dzięki temu nie będziemy wciąż i wciąż odbywali tej samej rozmowy. Na końcu wiadomości ponownie usuwamy faceset, żeby twarz sołtysa nie pojawiła się nam np. podczas rozmowy z biegającym dzieciakiem.

Wiem, jest to dosyć uciążliwe i są sposoby radzenia sobie z problemem facesetów, ale o tym w następnej lekcji.

ŚCIĄGNIJ PROJEKT Z LEKCJI

Michał „Michu” Wysocki

Dodaj komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.