Odnośnie tych AIVAR, zwrócę tylko uwagę, że AIVAR to tablica zmiennych typu integer (liczba całkowita) o stałym rozmiarze, czyli 100, którą posiada każdy npc.
Pytanie numer 1:
Kod funkcji PrintGlobals jest częściowo zrealizowany w daedalusie.
Głównie funkcja służy do ułatwienia testowania (debugowania) nazw instancji self, other, hero, victim, item w odpowiednich sytuacjach. Funkcja ta printuje odpowiednie informacje do ZSpy odnośnie tych dynamicznie zmienianych instancji do silnika, niestety, nie można jej wykorzystać (o ile się dobrze orientuje) tak po prostu. Problem polega na tym, że silnik gry posiada następuje rzeczy w swoim systemie do printowania takich komunikatów pomocniczych:
-Włączony tryb debugowania (showDebug)
-debugChannel (musi być włączony by w ogóle dane wiadomości z danego kanału się pokazały)
-Dana instancja musi być debugowana
Pokaże jak przykładowo wygląda output takiej funkcji, po małej zabawie Reverse Engineeringiem:
https://i.imgur.com/dThT5Pf.pngw ZSpy dodatkowo możemy takie logi zapisać do pliku tekstowego, nie mniej jednak, pomimo tego że nie można tego użyć (a jeśli można, to nie jest to takie proste), o ile chcesz mieć takie printy pomocnicze w zSpy, możesz skorzystać z tych funkcji (o ile posiadasz Ikarusa):
-MEM_Debug
-MEM_Warn
-MEM_Error
-MEM_Info
Pytanie nr 2:
Z tego co się orientuje, wystarczy w spacerze ustawić waypoint/freepoint pod odpowiednim kątem.