Na rozdrożu

Po przerwie w pracach nad konwersją, naszło mnie sporo refleksji nad tym projektem. Najważniejszą z nich jest myśl, iż chyba nie warto realizować konwersji bazowej wersji Pyłu z 1998 roku. Uzasadniam to tak iż, praca Werty i jego z kolegów, która w efekcie dała możliwość naprawdę wygodnej gry w oryginalny tytuł na współczesnych maszynach, jest niejako już świetną konwersją. A mnie dużo kłopotu sprawia właśnie przeniesienie oryginalnej logiki gry i zachowania NPC. Kod Pyłu jest w tym obszarze dla mnie kompletnie nieczytelny po latach. Utknąłem w tym już bardzo długo.

I w pracach nad nową wersją chciałbym się skoncentrować na realizacji nowego gameplay – tak jak teraz wyobrażam sobie nasze intencje. Zrealizowane w nieco nowocześniejszy sposób. Zmieniłbym zatem gameplay lecz tak by została oczywiście oryginalna fabuła i logika poszczególnych map. W wersji uwspółcześnionej – bardziej czytelnej, z możliwością bardziej intuicyjnego wykorzystania możliwości Sope’a oraz z płynniejszą rozgrywką. Nawiązaniem do oryginalnej hardcorowości gry byłby raczej poziom trudności ustawiany przez gracza.

By to jednak zrealizować trzeba ogarnąć szereg rzeczy, których ja samodzielnie nie zrobię:

  • poprawić tekstury map – tj. dorobić szereg tekstur uzupełniających pod kątem systemu oświetlenia, np. głębia i sposób rozpraszania światła,
  • stworzyć na nowo modele postaci – te które są naprawdę trącą myszką, trzeba by je zrobić na nowo, raczej nie kombinowałbym już z modelem animacji bo to naprawdę dużo pracy ale same modele i tekstury warto by zrobić,
  • stworzyć na nowo modele broni – w końcu to się widzi na ekranie cały czas więc muszą być podrasowane tekstury.

Idealnie byłoby zrobić to czego nam już nie dano zrobić w roku 1998 (wydawca, presja czasu i budżetu) :

  • komiksowe opowiadanie fabuły pomiędzy mapami – może uda mi się namówić autora grafik koncepcyjnych do tematu, on miał taki pomysł od początku,
  • mapy pomiędzy mapami w otwartym terenie – miały być poziomy gdzie Sope przemieszcza się Walkerem pomiędzy lokacjami.

Najchętniej dodałbym również wycofaną w trakcie produkcji postać Jafo. Jafo w pierwotnej wersji był kompanem Sopa, jego nawigatorem i dowódcą w Walkerze. Sope to miał być prosty mięśniak a od myślenia miał być Jafo.To Jafo poprzez komunikator miał prowadzić Sope’a przez lokacje. To on miał się bronić w Walkerze w jednej z map w Golebie gdy to Sope też osłania Walkera (co jest w oryginale). No i to pomoc Jafo miała być tymi brakującymi mi hintami w zagadkach. Korzystanie z nich miało być regulowane poziomem baterii nadajnika Sopa gdy ten przemieszcza się w lokacjach – w końcu są głęboko w ziemi i są kupą żelastwa więc potrzebna jest moc nadajnika by się przebić.

No i przede wszystkim sama idea Areny – Sope powinien zdobywać i sprzedawać artefakty z poszczególnych map przez co mógłby się upgrade’ować siebie i Walkera pomiędzy mapami (w kontakcie z handlarzami).

No i pytanie zatem – co Wy na to?

Advertisements

Drobiazgowa robota

Ostatnio mało aktualizacji ale nie było czego – tzn. się działo i dzieje lecz nic co można było do tej pory pokazać. Pracuję obecnie nad przenoszeniem kodów poszczególnych typów obiektów w grze, systemem komunikatów poprzez który się porozumiewają – co definiuje niejako logikę gry i nad grafem poruszania się dla AI.

Rozgryzienie zachowania poszczególnych obiektów nie jest łatwe – jest to mieszanina właściwych algorytmów zachowań oraz kodu mającego na celu wyłącznie optymalizację pamięci i szybkości. Są też skróty myślowe – wtedy pisałem bardzo nieczytelnie, i często głowię się teraz czy to co widzę to błąd a jeśli tak to jak go powtórzyć by nie zmienić zachowania. Przykładowo kod przełączników wszelakich to oryginalnie 500 linii kodu a teraz 300 pod Unity. A odtwarzając samo zachowanie najpierw trzeba zrozumieć o co mi chodziło 16 lat temu a potem przepisać. Trochę męcząca i drobiazgowa robota.

Dziś uruchomiłem obiekty odpowiedzialne za efekty cząsteczkowe. Znów będzie dłubaniny sporo bo przecież kodu ręcznej generacji i życia każdej cząsteczki nie przeniosę – muszę to zmapować na zbiór parametrów opisujących zachowanie cząsteczek w wbudowanym systemie cząstek Unity. Ręczna robota by uzyskać zbliżone efekty. Na razie jest tak sobie ale to pierwsze przymiarki.

Aktualnie działają już inteligentnie lampy, drzwi, przełączniki, windy i cząsteczki. Pozostało drugie tyle a potem przeciwnicy i sam Sope. Windy rzecz jasna działają kolizyjnie – tzn. przewożą Sope’a, Chwała Unity za całą robotę jaką robi za mnie w temacie kolizji 🙂