#1 21-02-2016 15:25

wmysterio
Registered: 04-03-2011
Posts: 215
Website

И вновь очищенный MAIN.SCM

Решил чисто для себя сделать свой очищенный от сюжетных миссий MAIN.SCM и столкнулся с некоторыми проблемами, связанных с внешними скриптами. Два из них - это "SLOT_MACHINE" и "WHEELO". Почему-то после прохождения миссий в некоторых случаях вызывает ошибку игры. Пробовал отследить через scrlog и мне выдало вот это:

********************************************

00079688&0: [4E49] COMMAND_4E49

*********************************

Никак не пойму где искать ошибку, чтобы как-то изменить код sad Насколько я понял, ошибка как-то связана с потоком "CASHWIN" в мейне, так как именно перед тем, как сообщить игроку сколько он выиграл/проиграл игра крашится.

P.S. При декомпиляции СБ бывает выдаёт ошибку:
"Неизвестный параметр 4Eh по адресу 43831"

Last edited by wmysterio (21-02-2016 17:21)

Offline

#2 21-02-2016 19:29

Seemann
Registered: 07-08-2006
Posts: 2,156

Re: И вновь очищенный MAIN.SCM

Игра крашится, потому что у тебя по адресу 79688 в майне написан невалидный опкод (4E49:). Это может произойти если файл был скомпилирован с INI в котором отличается число параметров для опкода. Где-то в районе 79688 что-то не так с кодом. Надо смотреть файл.
Еще проблема может быть если main.scm был изменен отдельно от script.img, тогда размеры и оффсеты скриптов, которые записаны в заголовке main.scm не соответствуют реальным из script.img и это может вызывать вылет.

Offline

#3 21-02-2016 21:41

wmysterio
Registered: 04-03-2011
Posts: 215
Website

Re: И вновь очищенный MAIN.SCM

Seemann wrote:

Еще проблема может быть если main.scm был изменен отдельно от script.img, тогда размеры и оффсеты скриптов, которые записаны в заголовке main.scm не соответствуют реальным из script.img и это может вызывать вылет..

Кажется, суть именно в этом. Поскольку отлаживаю код, обычно я только начинаю новую игру. Получается, что я перезаписываю только main.scm и, соответственно, метка "CASHWIN" меняет свой оффсет. Как только я начинаю скрипт "колеса фортуны" создаётся поток по старому оффсету в script.img, поскольку в момент игры этот файл не перезаписывается. Отлично, теперь ясна природа моей ошибки, спасибо. Пока ошибок нет.

Last edited by wmysterio (22-02-2016 18:44)

Offline

Board footer

Powered by FluxBB