Zander_driver 10 333 Опубликовано 8 Марта 2011 Еще добавлю от себя о вылетах без лога. Хотя наверно это вещь очевидная... При "как бы некритичных" синтаксических ошибках в скриптах, вызываемых из binder:update (по крайней мере из апдейта актора так) - получается вылет без лога вообще. т.е. В лог-файл ничего не сохраняется. Речь идет не о ошибках типа "лишняя скобка" или "нехватает слова end", а к примеру, точка вместо двоеточия при вызове методов или неправильные типы данных (у меня например, game_object* попал туда где ожидалась строка, и получился такой вылет) Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение
Zander_driver 10 333 Опубликовано 13 Апреля 2011 Еще бывают вылеты без лога из-за партиклов, нормально работающих и обычно не вызывающих проблем - в тех случаях, когда (предположительно - в онлайне) слишком много объектов использующих партиклы. Я недавно тестировал систему спавна артов после выброса, во время теста вся локация была завалена артефактами - они вываливались из каждой аномалии. В итоге вылет. С более мудреными, чем у артов, партиклами, для такой ситуации наверно будет достаточно и меньшего количества объектов. В логе в таком случае остается только такое: Scheduler tried to update object particle_instance stack trace: 001B:0384C36F xrParticles.dll, PAPI::ParticleManager() Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение
Zander_driver 10 333 Опубликовано 28 Ноября 2011 Ну это как бы одно и то же. Не важно, как был создан диалог - скриптом или xml-файлом. Когда из диалога происходит обращение к несуществующей функции - тогда и вылет. Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение
Zander_driver 10 333 Опубликовано 14 Февраля 2012 (изменено) Дополню то что у вас в шапке: Ошибка в вызове функции из диалога: после имени функции скобки писать НЕ НУЖНО. Вот так Код <action>file.func()</action> писать нельзя, нужно вот так: Код <action>file.func</action> (file - имя файла скрипта, func - имя функции) Кроме этого, безлоговый вылет может случиться при вызове функции, которой нет. Но - только если ее использовать в прекондишене. В экшенах вылета не будет. т.е. если в файле file нет функции func, то: <action>file.func</action> Не произойдет ничего <precondition>file.func</precondition> Будет вылет без лога. То же самое если в файле file синтаксическая ошибка. Изменено 14 Февраля 2012 пользователем ColR_iT Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение
Zander_driver 10 333 Опубликовано 16 Апреля 2012 Поймал еще один безлоговый вылет, банальный до безобразия, но все же. При использовании функции level.object_by_id(x) во время перебора объектов, забыл ограничить максимальное значение, в итоге х стало больше 65535, и - вылет без лога. Не проверял, но предполагаю, что для серверных объектов, при попытке получить объект по id более 65 с половиной тысяч, реакция будет такая же. Это все на ТЧ Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение
Zander_driver 10 333 Опубликовано 13 Ноября 2013 Напоролся на безлоговый вылет в довольно специфических условиях. Сам вылет происходит еще до главного меню. Но - class_registrator.script не менялся достаточно давно, и игра работала на нынешней его версии. Причина оказалась очень неожиданной. В xml-файлах в папке config/text/rus, в одном из файлов тег <string id="pdb8_geostory_5"> дублировался два раза с одинаковым id. Обычно это вызывает вылет с вполне вменяемым логом Expression : m_pItemDataVector->end() == t_it Function : CXML_IdToIndex<class CInfoPortion>::InitInternal File : e:\stalker\sources\trunk\xr_3da\xrgame\xml_str_id_loader.h Line : 184 Description : duplicate item id Но - не в этот раз. Проверил неоднократно и убедился - встретив повторяющийся id, движок валится без лога не добравшись до главного меню. Предполагаю что причина - измененная библиотека xrLua.dll. (за авторством RvP). Вещь сама по себе очень удобная и полезная, но вот такую странность вызывает. Кто тоже ее использует - будьте внимательны. 2 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Поделиться этим сообщением Ссылка на сообщение