orcwarrior / Czas_Zaplaty

Skrypty modyfikacji.
7 stars 4 forks source link

Podczas zmiany runy w mieczu runicznym w siedzibie nekromanty wywala z gry #331

Open Adanos opened 9 years ago

Adanos commented 9 years ago

Podczas zmiany runy w mieczu runicznym w siedzibie nekromanty wywala z gry.

-4- 00:58 Info: 5 U: Skript: PerFrame: Pre-Init :( .... <zError.cpp,#462> -4- 00:58 Info: 5 U: Skript: PerFrame: FrameCallBack_HandleKeystorkes .... <zError.cpp,#462> -4- 00:58 Info: 5 U: Skript: FrameCallBack_HandleKeystorkes RuneSwd .... <zError.cpp,#462> -4- 00:58 Info: 2 U: PAR: Adressing an empty Instance : C_ITEM.NAME .... <zParser_Symbol.cpp,#365>

Adanos commented 9 years ago

Przy każdej zmianie zena.

Splash97 commented 9 years ago

Wszystkie npc obsługujące systemy są w siedzibie nekromanty? Może brakuje jakiegoś WP. Pamiętam, że w modzie są oginiki, które miały nazwy czarów zamiast imienia. Może to ich brakuje?

Adanos commented 9 years ago

Są ogniki. Teleportowałem się na jakiś wp INVISIBLE i byli tam NPC kula ognia itp. xD Co do zmiany zena, to chodziło mi o każdą zmianę zena, niekoniecznie do nekromanty. Wydaje mi się, że przy zmianie zena nie przechodzi informacja o włożonej runie.

Splash97 commented 9 years ago

Runa nie jest zapisywana w zmiennej globalnej?

Adanos commented 9 years ago

Szczerze mówiąc, to nie wiem gdzie. xD Ogólnie to jest jakaś zmienna globalna item, i wywala wtedy, gdy wciskasz klawisz odpowiadający za włożenie runy do miecza. Zmienna item powinna wskazywać na runę, ale na nic nie wskazuje, a na pewno nie na żaden przedmiot. Dokładnie to w tej funkcji KeyEvent_RuneSwd: https://github.com/orcwarrior/Czas_Zaplaty/blob/master/Content/AI/AI_Intern/Controls_Events.d#L13-L42

Splash97 commented 9 years ago

MEM_CallByString (concatstrings("RUNESWD_EQUIPRUNECHOICE",rune_instance)); Czyli ta funkcja wywołuje RUNESWD_EQUIP_RUNECHOICE_InstancjaRuny. Np. RuneSwd_Equip_RuneChoice_Fireball Jeśli dobrze rozumiem, npc obsługujący ten system powinien zwrócić włożoną wcześniej runę, która trafiła do jego ekwipunku. Ale w innych światach oni nie otrzymują tych run, więc nie mają jej w ekwipunku. To jest dziwne zrobione, bo dużo prościej byłoby przypisać runę do zmiennej globalnej, niż dawać ją jakiemuś npc, bo w innym świecie npc nie ma tej runy, dlatego chyba w zSpy pojawia się Adressing an empty Instance : C_ITEM.NAME, a mod się crashuje.

Adanos commented 9 years ago

No, pewnie tak, wiele jest takich dziwnych rzeczy. Mogę spróbować dać zmienną globalną, zobaczymy, czy się coś zmieni.

Adanos commented 9 years ago

Nie wiem, czy zmienna globalna pomoże, skoro problemem jest to, że przy zaznaczeniu nowej runy, którą chce się włożyć, wywala z gry. Problem się też pojawia, gdy zmienimy zena, ale tu chyba pomocne może być zapisanie, wczytanie gry. Kolejny problem możemy używać miecza runicznego, mimo że nie nauczyliśmy się nim posługiwać. Tak więc uczenie się posługiwania tym mieczem jest bezsensu.

Adanos commented 9 years ago

Sprawdziłem. Zapisanie i wczytanie po zmianie zena eliminuje wywalanie z gry. Przynajmniej będzie to jakieś rozwiązanie dla graczy...