Несколько лет имею проблему как описано
в посте №536
Перерыл инет, не нашел решение. Похоже, никто даже не пытался решить. Теперь подробнее.
На двухуровневых картах максимальных размеров XL, богатых множеством объектов и ресурсов, при достижении определенного момента игры (примерно 4-5 неделя игры) при нажатии на правую кнопку мыши на почти любом объекте карты (чтобы просмотреть количество ресурсов или монстров, посещение/непосещение объекта и т.п.) рушится скриптовая система, начинают вываливаться сообщения об ошибках скрипта:
Code:
-----------------------
ERM syntax Error.
File: erm
Line: 2994
Reason:
Cannot add more objects.
Save all ERM vars to WOGERMLOG.TXT (may take time)?
-----------------------
и иногда дополнительно в одном из последующих окон-запросов
Code:
-----Context-----
H?y16;
[If object has hint text, set y17 to 0]
!!VRy17&y16<>0:S0;
-------------------------------------------
[Only continue Function 5000 if hero has Sorcery skill and object isn't in shroud].....
-----------------
Есть подозрение, что это напрямую связано с наличием у героев экспертного уровня Волшебства, которое очень помогает в дистанционной раскачке героев и сборе ресурсов с мельниц, так что используется мной широко.
Если не брать героям Волшебство, то баг этот может выскочить все равно, но много позже 4-5 недели игры, скажем после 8 недели.
Приложил лог-репорт и сейвы для проверки воспроизводимости.
Баг устойчиво воспроизводится в любой версии WOG3.58f, в том числе в выложенной в теме несколько страниц назад "чистой" версии.
Что имеем по существу проблемы.
Не являюсь знатоком внутренней гейм-механики, но очевидно, что при каждом нажатии любым героем правой кнопки мыши на каждом живом объекте карты факт сего просмотра записывается в какой-то список. Чем дальше идет игра, тем больше накапливается таких "фактов" нажатия ПКМ. В итоге происходит переполнение отведенного количества просмотров по ПКМ и выскакивает это самое "Cannot add more objects". При этом сразу же рушится скрипт Волшебство, перестает работать увеличенный сбор ресурсов, дистанционных сбор и прокачка. Чуть позже рушится скрипт Первой Помощи, перестают воскрешать Палатки, их количество кажется даже обнуляется. Игру приходится бросать из-за резко угасающего интереса.
Не знаю, зачем в игру встроен счетчик или стек просмотров по ПКМ. Зачем обязательно это запоминать? Количество ресурсов или монстров можно каждый раз заново узнавать, нажимая ПКМ. Ну или название артефакта, и т.п. По мне так можно было бы это отключить, чтобы не доводить дело до переполнения счетчика/стека. Либо увеличить предел переполнения счетчика/стека, если это не зашито глубоко в EXE, а правится скриптами.
Прошу спецов по гейм-механике прокомментировать вышеизложенное. Все еще теплится надежда исправить этот баг. Все остальное в WOG устраивает, хоть и работает с вылетами иногда, но это терпимо.
Выложил несколько сейвов с разной степенью приближенности к наступлению критического момента игры с нарушением работы скриптов, а также лог-репорт:
https://yadi.sk/d/DwZhhUCLtAVin