ZPMI #010 – Praca, praca

Tak to już jest, że jak sobie człowiek troszkę odpuści to wszystko się sypie.

Dopóki jakoś pilnowałem że raz w tygodniu musi być post to szło – czasem lepiej, czasem gorzej ale coś się pojawiało.
Teraz posucha totalna. No ale nie ma co się rozczulać – trzeba się spiąć, napiąć i cisnąć.

No to cisnę…

Jak ktoś mnie śledzi na Twitterze to jest bardziej na bieżąco, bo tam się staram udzielać częściej.

Jak ktoś nie śledzi to powinien 🙂

A tymczasem opowiem, co to się u mnie działo.

Sprzęt i OS

Najpierw mnie widzieliście niestabilnego i w rozterkach przełączającego 3 systemy.

Potem w miarę stabilnego na desktopie z Linuksem.

A od zeszłego czwartku jestem przepyknięty totalnie na Thinkpada z Linuksem. Desktop powędrował do córy – jakies tam nauczanie zdalne ma – Tomb Raider (2013) to się nazywa, czy tam Hello Neighbor – nie pamiętam już dokładnie 🙂

Ostatnio Thinkpada miałem 7 lat temu – przed MacBookiem. Teraz powróciłem i jest dobrze. I tanio – więc bardzo dobrze.
Nie będę się tu rozwodził, bo będzie o tej przesiadce oddzielny post – w punkcie Organizacja napiszę co i jak.

Silniki

Się porobiło na co się zanosiło od jakiegoś czasu. Nadokuczało mi Unity w zeszłym roku:

  • wagą silnika i projektów,
  • czasem budowania (ogarniałem potem Cloud Buildem),
  • działaniem pod Linuksem,
  • tymi wszystkim ECSami, render pipelinami i całą resztą

Nie zrozumcie mnie źle – fajnie, że się silnik dynamicznie rozwija, że tyle tych ludzików po tych mostach może biegać.

Tylko ja jestem mały, nieopierzony indyk, ja potrzebuję sam (albo we trzech) ulepić prostą gierkę – a ta cała otoczka robi się przytłaczająca.

No i tak się wystraszyłem, że Unity odpalam tylko do pracy nad helikopterami.

Cały pozostały czas spędzam sobie na Godocie. Nieśmiało, bo jednak doświadczenie zerowe w porównaniu z prawie dekadą na Unity, ale dobrze mi tam. Jakoś tak czuję że mam kontrolę, że to jest ogarnialne.

Organizacja

Sobie nawymyślałem, że będę te posty dzielił. Na więcej, konkretniejszych i lepiej wycelowanych.

To jest post z serii Z Pamiętnika Młodego Indyka i tu będę się trzymał (raczej :D) raportowania przebiegu prac nad moimi gierkami.

Przynudzanie o systemach czy Emacsie będę raczej ograniczał do minimum – będę dawał znak, sygnał i link do oddzielnego posta który dane zagadnienie opisuję konkretniej – jak ktoś ma ochotę to poczyta, a jak nie to nie będzie musiał przewijać tych moich wynurzeń. Z drugiej strony jak kogoś interesuje np. Linux, a gierki jakby mniej to będzie mógł sobie poczytać tylko o Linuksie.

„Pan Anatol i mamuty”

No to deserek po tych wszystkich smętach: Mr. Anatol and the Mammoths

Właśnie mija 19 tydzień pracy – liczę od początku roku bo wtedyna poważnie usiadłem do robienia tej gry. Wcześniej były tylko jakieś luźne pomysły i zapiski.

Postać

Przerysowana, okościowana od nowa, powoli ogarniam animację.

Lokacje

Przybywa lokacji – dżunglę mamy zrobioną, Mena powoli zabiera się za rysowanie wioski.

Hint system

System pomocy. Spróbuję zastosować rozwiązanie autorskie 🙂 Wymyśliłem to sobie tak: gdy gracz się ‚zatnie’ to musi się zastanowić co zrobić dalej. A jak oddać ‚zastanawianie się’ w grze przygodowej?

Trzeba po prostu porozmawiać ze sobą – ‚przegadać problem’ 🙂 Wybieramy więc ‚Talk to Anatol’ i wtedy w opcjach dialogowych mamy aktualne problemy do rozwiązania i możemy dany temat drążyć, żeby się dowiedzieć co zrobić dalej. Możliwe, że to będzie kosmiczna robota, ale na razie działa i jest fajne. Zobaczymy.

Przełącznik języków

Nie wiem co, nie wiem kto, nie wiem jak i nie wiem za co, ale Anatol musi być w kilku językach. Polski i angielski to wiadomo. Ale z researchu mi wychodzi, że przygodówki stoją docyć mocno we Włoszech, Hiszpanii i Rosji. Ideałem byłoby mieć docelowo PL, EN, IT, DE, FR, ES, RU 🙂

Godot ładnie wspiera lokalizację, Escoria też ma przewidziane mechanizmy – wolną chwilą pospinałem to i mam działający przełącznik języków.

Z grafiki się jeszcze nie śmiejcie 🙂

Wymawianie globali

Kiedyś tam zeznawałem, że do Escorii mnie ciągnie po pierwsze dlatego, że jest tekstowa i taka bardzo SCUMMowa, a po drugie dlatego że łatwo można sobie dorabiać potrzebne funkcje.

No i oto mamy pierwszy taki przypadek.

W Escorii w plikach .esc mamy tzw. zmienne globalne. Są nazwane znaczniki w których zapisujemy sobie stan gry – na przykład że gracz gdzieś był, coś zrobił czy wie o jakimś fakcie.

Do pewniego tajnego projektu (o którym Wam i tak wszystko wypaplę lada post :D) związanego z Anatolem potrzebuję licznik jajek. Gracz zbiera jajka, daje króliczkowi, a króliczek ‚wie’ ile jajek już dostał.

Realizuję to tak, że po każdym wręczonym jajku zwiększam wartość zmiennej %given_eggs o 1. No i wszystko pięknie ale w Escorii nie było możliwości użyci wartości zmiennej w wypowiadanej treści.

No to sobie dopisałem 🙂 Przetestuję dokładniej i wrzucę do swojego forka Escorii na GitHubie.

Dosłownie pół godzinki roboty i teraz w pliku bunny.esc mam tak:

:give inv_egg_01
say bunny inv_egg_01_give_bunny:"O, dzięki."
set_global i/inv_egg_01 false
inc_global given_eggs 1
say bunny "Dałeś mi %given_eggs jajek"

czego efektem jest to:

Z tej grafiki też się proszę nie śmiać.

Do następnego!