Analizy

 
 
 
Mr. Mo's ABS - analiza
(ravenone, 22.04.2014)

Mamy już w Gońcu zestawie przeróżnych turowych systemów walki, rzeczywistych, jak i tych modyfikujący lekko podstawowy BS. Dziś przybliżę wam ABS, na którym pracowałem przez ostatnie dwa lata.



Możliwości
Mr. Mo's ABS wywodzi się z innego skryptu na makera XP: Near Fantastica's ABS i jest rozbudowanym, a przy tym prostym w konfiguracji system walki w czasie rzeczywistym. Ilość możliwości powala i jak sam autor określa - tylko nasza wyobraźnia ogranicza ten system. Piękne założenia nie idą jednak w parze z praktyką, ale o tym nieco później.
Główne cechy tego ABSu to:
- ataki bronią białą jak i dystansową
- używanie umiejętności do przypisanych wcześniej klawiszy (0-9)
- możliwość biegania i skradania się
- walki enemy vs enemy
- ustalanie typu broni: jej szybkość, zasięg, efekty specjalne (np.: odrzucenie)
- statusy gracza, jak i wrogów
- określenie AI wroga
- wyświetlanie HUD-a oraz mini-mapy
- wyświetlanie animacji ataku/obrony itp.
- dropienie przedmiotów

Można zatem używać kilku skilli na raz, patrzeć jak jeden przeciwnik walczy z drugim czy też stworzyć wsparcie dla naszego bohatera w postaci walczącej wspólnie z nami drużyny. A całość, jak już wspomniałem, ogranicza się do prostej konfiguracji.
W evencie na mapie, który symbolizuje naszego wroga ustawiamy wszystkie parametry:

Comment: ABS
Comment: ID V
Comment: Behavior V
Comment: Sight V
Comment: Sound V
Comment: ClosestEnemy V
Comment: HateGroup [V]
Comment: Aggressiveness V
Comment: Speed V
Comment: Frequency V
Comment: Trigger V
Comment: Respawn V
Comment: Personality V

Za pomocą tych komentarzy określamy niemal wszystko, co jest nam potrzebne do walki, czyli: ID potwora z bazy danych, jego sposób zachowania, odległość w jakiej zaczyna atakować bohatera, częstotliwość ataku, szybkość poruszania się czy też przełączniki.

Kompatybilność
Mr. Mo's ABS używa SDK, a co za tym idzie - nadpisuje większość klas. Przez to spora część innych skryptów, które chcecie użyć w grze może kolidować z pozostałymi. Np.: poruszanie się w 8 kierunkach i próby ataku po skosie wywalają błędy. Nie da się również zainstalować skryptu na Title Screen oraz na Save Screen. Na szczęście większość skryptów Ayene przy SDK chodzi bez zarzutu. Plus za to dla naszej rodzimej skrypterki;)

Błędy
Jednym z największych bugów jest zły zapis stanu gry, gdy na mapie znajdują się wrogowie. Po wczytaniu gry w innym miejscu wczytuje nam faktyczne miejsce potwora (sam pasek HP), a w innym grafikę (najprawdopodobniej wraca do początkowych ustawień mapy). To sypie nam cały system walki i sprawia, że po prostu nie da się w tym momencie grać.
Drugim poważnym błędem są przełączniki. Używanie z eventu wroga:
Comment: Trigger V
skutkuje zawieszeniem grafiki po zabiciu przeciwnika, bez znaczenia czy użyjemy przełącznik własny (A,B,C,D) czy numeryczny. Jeśli chcielibyście użyć przełącznika na danym evencie bez obawy o zawieszenie grafiki, będziecie musieli stworzyć osobne zdarzenie równoległe na mapie, które reaguje na zabicie potwora, dać komendę wait, np. 20 frames i osobny przełącznik, którym wykasujemy docelowy event potwora.
Również common eventy nie zawsze reagują na wydarzenia w czasie rzeczywistym. Ponadto domyślnie nie zostały ustawione common eventy do skilli - explode range. Trzeba je ręcznie w skrypcie modyfikować.
Kolejny błąd to wywalenie gry w walkach grupowych. Np.: zmieniamy przełącznik po zabiciu bossa, a ktoś z naszej drużyny w tym czasie toczy walkę, wtedy może się zdarzyć, że gra wam scrashuje i tyle będzie z potyczki.
Oprócz wymienionych wyżej błędów pojawiają się również i pomniejsze (np.:przycinanie hotkeysów, dropienie itemów w mieście). Nie działają również statusy wrogów związane z ruchem, tj. paraliż czy ogłuszenie. Tak naprawdę, przez okres dwóch lat coraz to nowsze wynalazki odnajdywałem w tym ABSie i podejrzewam, że kolejne lata pracy na nim ukazałyby mi inne nieprawidłowości.

Ten opis nie ma na celu zniechęcenie was do korzystania z tego ABSa, lecz uświadomienie o ogromie pracy, jaki trzeba włożyć w jego przyswojenie, oraz o pójsciu na ustępstwa, żeby ominąć te najważniejsze bugi i sprawić, by system walki był w miarę grywalny.
Polskie gry wykorzystujące Mr. Mo's ABS to:
Krew Zdrajcy
Magiczni Wojownicy
Ostatnia Łza
Quantino