Цитата Сообщение от Mirnyi Посмотреть сообщение
Нужен прямой доступ ко всем объектам, с возможностью в любое время узнать его состояние или уничтожить.
В идеале - просто добавить объект и подключиться к событиям произвольных объектов.
Через подгрузку миссии вариант не нравится тем, что подгружается и скрипт, и из старой миссии объекты новой недоступны, и из новой объекты старой.
Нужен глобальный класс битвы, с доступом к любым объектам и с доступом из него в любой скрипт загруженной миссии и с обратным доступом.
И не только к объектам, но и к игрокам (онлайн).
Возможно, это решится когда удастся задействовать GameServerDef.
В любом случае, скрипты, не поддающиеся отладке - это не тот инструмент, которым можно сделать серьёзный проект (можно, но геморройно)
Имхо, вся основная логика все равно уйдет в собственную реализацию ABattle, а в скриптах заложены будут базовые действия, необходимые для самой миссии, не более. Насчет недоступности объектов - присвой IsMissionListener значение меньше нуля - будет слушать все миссии. Событие вызовется и передаст короткое имя и номер миссии, инициировавшей событие. Правильно получать полные имена акторов для поиска через GamePlay можно, посмотрев на стат. класс ActorName.

При невозможности запуска под отладкой вот таких вот дополнений, в схожей задаче делал свою консольку, которая эмулировала "жизнь" на сервере, и спокойно отлаживался.