Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:
- В текстовом редакторе нажать Ctrl+V (Вставить)
- Посмотреть лог игры включая лог вылета в файле xray_имя_пользователя.log в папке C:Documents and SettingsAll UsersДокументыSTALKER-***logs
- Посмотреть непосредственно в окне багтрекера (только в ЧН и ЗП).
Ну приступим. Начнём с простых:
Expression : wave&&wave->length() Function : CSoundRender_Source::LoadWave File : E:stalkerpatch_1_0004xrSoundSoundRender_Source_loader.cpp Line : 65 Description : Can't open wave file: Arguments : d:stalkergamedatasoundsmusicsound.ogg
Здесь игра не может открыть звуковой OGG-файл под названием sound в папке d:stalkergamedatasoundsmusic
Expression : fatal error Function : CRender::texture_load File : E:stalkerpatch_1_0004xr_3daxrRenderTexture.cpp Line : 295 Description : <no expression> Arguments : Can't find texture 'actact_corp_monolit'
Не может найти текстуру act_corp_monolit из папки texturesact
Expression : fatal error Function : CModelPool::Instance_Load File : E:stalkerpatch_1_0004xr_3daxrRenderModelPool.cpp Line : 111 Description : <no expression> Arguments : Can't find model file 'physicsmesh.ogf'.
Не найдена трёхмерная OGF-модель mesh.ogf из папки meshesphysics.
Expression : SG Function : CRender::model_CreateParticles File : E:stalkerpatch_1_0004xr_3daxrRender_R2r2.cpp Line : 330 Description : Particle effect or group doesn't exist Arguments : hit_fxhit_water_00
Не найдена система частиц (партикл) hit_water_00 в директории hit_fx файла particles.xr (подробно опишу позже).
Expression : !m_bAutoRemove Function : CParticlesObject::Init File : D:prog_repositorysourcestrunkxrGameParticlesObject.cpp Line : 50 Description : Can't set auto-remove flag for looped particle system. Arguments : snow_stepsstep
Не установлен интервал (время) проигрывания группы/эффекта партиклов. В Particle Group -> End Time(s) укажите время, через которое частицы должны исчезнуть. Заодно проверьте particle effect -> Kill Old -> Age limit.
Expression : fatal error Function : CResourceManager::_GetBlender File : E:stalkerpatch_1_0004xr_3daResourceManager.cpp Line : 49 Description : <no expression> Arguments : Shader 'modelsantigas_glass' not found in library.
Не найден шейдер modelsantigas_glass в библиотеке шейдеров.
Expression : fs Function : CResourceManager::_CreateVS File : E:stalkerpatch_1_0004xr_3daResourceManager_Resources.cpp Line : 185 Description : shader file doesnt exist Arguments : d:stalkergamedatashadersr2deffer_impl_flat.vs
Тут проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Нужно скачивать исправление шейдеров от товарища Haron.
Для ЗП (ЧН) это может ещё быть из-за отсутствия thm-ок для текстур террейна уровня!
Expression : fatal error Function : out_of_memory_handler File : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp Line : 336 Description : <no expression> Arguments : Out of memory. Memory request: 55965 K
Нехватка оперативной памяти.
[error]Expression : assertion failed [error]Function : CBuild::Load [error]File : .Build_Load.cpp [error]Line : 98 [error]Description : B.dwMaterialGame<65536
Неправильно настроены шейдеры. В настройках шейдера, во вкладке R2-A поставьте текстуру, которая вдальнейшем будет накладываться
на террейн.
Expression : fatal error Function : CInifile::r_string File :E:stalkersourcestrunkxrCoreXr_ini.cpp Line : 352 Description : <no expression> Arguments : Can't find variable ammo_mag_size in [wpn_addon_grenade_launcher]
Не найдена переменная ammo_mag_size в секции [wpn_addon_grenade_launcher].
Expression : fatal error Function : CScriptEngine::lua_error File : D:xray-svnxr_3daxrGamescript_engine.cpp Line : 74 Description : <no expression> Arguments : LUA error: C stack overflow
Переполнение стека. Смотрим внимательно: lua_error. Ошибка, возможно, в скриптах.
Expression : vertex || show_restrictions(m_object) Function : CPatrolPathManager::select_point File : E:stalkersourcestrunkxr_3daxrGamepatrol_path_manager.cpp Line : 155 Description : any vertex in patrol path [sniper_3_walk] in inaccessible for object [stalker_0002]
Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер) который якобы двигался по пути sniper_3_walk попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.
То же самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места, где НПС запрещено находиться, будь то рестриктор или аномалия в схеме обхода аномалий.
Также этот вылет наблюдается при попытке отправить НПС за пределы места работ параметр out_rest = «имя_рестриктора» в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить, допустим, к остановке — получите этот самый вылет.
Expression : e_entity Function : xrServer::Process_event_reject File : E:stalkersourcestrunkxr_3daxrGamexrServer_process_event_reject.cpp Line : 12 Description : entity not found. id_parent=7540 id_entity=44047 frame=2075050
Возникают иногда произвольно при смерти неписей. Причина — движок, отрабатывая лут, изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.
Expression : fatal error Function : CScriptEngine::lua_error File : D:xray-svnxr_3daxrGamescript_engine.cpp Line : 74 Description : <no expression> Arguments : LUA error: e:stalkergamedatascripts_g.script:20: bad argument #2 to 'format' (string expected, got no value)
Ошибка распространённая. На первый взгляд кажется, что ошибка как раз в скриптах, но всё может быть иначе. В одной из пиратских версий игры этот вылет наблюдается особенно часто из-за криво модифицированного файла «XR_3DA.exe». Если же вы уверены, что у вас лицензионная версия игры, можно попробовать сделать так: открываем файл _g.script блокнотом, закомменчиваем 20 строку (ставим перед строкой —) и идём к тому месту где поймали вылет. Так мы получим более развёрнутый ответ.
Участник: Призрак: Автор прав в том что вылет очень распространен, но так его исправлять нельзя, так как nil передается в эту функцию только при каком-то форс-мажоре. Поэтому необходимо перейти в _g.script в функцию printf и перед log1(string.format(fmr,..)) дописать: get_console():execute(«load «..fmt). После этого запустить еще раз игру и посмотреть при передачи какой строки игра вылетает. Потом найти эту строку в скриптах игры и прикинуть почему аргумент (у нас это аргумент №2 (bad argument #2)) равен nil. Возможность такового вылета из — за слишком быстрой скорости актера, слишком высокому прыжку. (Редактировать: config/creatures/actor.ltx)
Expression : assertion failed Function : _VertexStream::Lock File : E:stalkerpatch_1_0004xr_3daR_DStreams.cpp Line : 44 Description : (bytes_need<=mSize) && vl_Count
Проблема возникает при убийстве НПСмутанта. Типичный вылет по нехватке ресурсов. Встречается в основном на больших локациях. Но не на всех. На болотах из ЧН такой вылет встречается, а вот с локации aver от Кости V такого вылета нет. Однако для данного вылета есть таблетка, в виде правленого экзешника. Искать на АМК-форуме.
Expression : fatal error Function : IRender_Visual::Load File : E:stalkerpatch_1_0004xr_3daFBasicVisual.cpp Line : 58 Description : <no expression> Arguments : Invalid visual
Неправильный визуал (модель) НПС.
Expression : !phrase_dialog->m_PhraseVector.empty() Function : CPhraseDialog::SayPhrase File : E:stalkerpatch_1_0004xr_3daxrGamePhraseDialog.cpp Line : 140 Description : No available phrase to say, dialog[esc_dialog]
В диалоге esc_dialog нет доступной для отображения фразы (скажем, все заткнуты инфопоршенами).
Expression : motion_ID.valid() Function : CKinematicsAnimated::ID_Cycle File : D:prog_repositorysourcestrunkLayersxrRenderSkeletonAnimated.cpp Line : 210 Description : ! MODEL: can't find cycle: Arguments : death_init
Игра не нашла в модели трёхмерную анимацию с именем death_init.
Expression : fatal error Function : CScriptEngine::lua_error File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...hadow of chernobylgamedatascriptsxr_danger.script:116: attempt to index field 'ignore_types' (a nil value)
Причина вылета в том что игра не понимает значения 0 в danger_ignore.Проще говоря в логике какого то персонажа параметр danger_ignore = 0 либо в минусовом значении. Либо его вообще нету
P.S. Также может быть причина в том, что в логике у какого-то АИ что-то неправильно указано. Для исправления рекомендую вставить строчку перед 116: get_console():execute(self.object:name()). То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой.
Expression : fatal error Function : CInifile::r_string File : E:stalkerpatch_1_0004xrCoreXr_ini.cpp Line : 352 Description : <no expression> Arguments : Can't find variable class in [test_no_klass_npc]
Не найден класс персонажа. Возможно, НПС не прописан под своим классом в gamedatanpc_profile.xml, либо в creaturesspawn_section.ltx, либо в gameplaycharacter_desc.xml
Expression : fatal error Function : CInifile::r_section File : E:stalkerpatch_1_0004xrCoreXr_ini.cpp Line : 342 Description : <no expression> Arguments : Can't open section 'bandage_test_kick1'
Игра не может найти секцию. Это может быть предмет, НПС и многое другое. Возможно, вы написали название с ошибками. Либо когда добавляли его в: продажу, скрипт, НПС , выпадение из НПС, а в редких случаях это может быть иммунитет чего либо(определить потом трудно). Часто такое бывает связано с названием секции.
Expression : fatal error Function : CInifile::r_string File : E:stalkerpatch_1_0004xrCoreXr_ini.cpp Line : 352 Description : <no expression> Arguments : Can't find variable remove_time in [vehicle_btr]
Не найдена переменная remove_time в секции [vehicle_btr]. А в данном случае ошибка в том что если вы делали предмет как физическую модель(то бишь, которую нельзя использовать, говорить и вообще он похож на декорации типа деревьев, столов и прочего хлама) то необходимо указывать remove_time в его секции.
Expression : fatal error Function : CScriptEngine::lua_error File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...dow of chernobylgamedatascriptstest_kick.script:34: attempt to call method 'section' (a nil value)
Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту.
Expression : rpoints[0].size() Function : game_sv_Deathmatch::Create File : D:prog_repositorysourcestrunkxrGamegame_sv_deathmatch.cpp Line : 99 Description : rpoints for players not found
На мультиплеерной карте не найдены точки респавна игроков. В SDK должен быть красный пацанчик. Настроить Team = 0
Expression : fatal error Function : xrServer::Process_update File : E:stalkerpatch_1_0004xr_3daxrGamexrServer_process_update.cpp Line : 37 Description : <no expression> Arguments : Beer from the creator of 'WP_SHOTG'
Такое иногда бывает, когда ты (ГГ) или НПС заряжает дробовик или другое оружие со значением tri_state_reload = true.
Это глюк. в игре что-то сбивается, и когда у дробовика максимальное количество заряженных патронов скажем 6, он заряжается за 6 и дальше.. дальше.. дальше.. и так пока не произойдёт вылет с вышеуказанным логом. вылет не значительный и редкий, но если он случается слишком часто, можно в конфигах всех дробовиков и ружей поменять значение tri_state_reload = true на tri_state_reload = false.
Expression : fatal error Function : CInifile::r_string File : D:prog_repositorysourcestrunkxrCoreXr_ini.cpp Line : 477 Description : <no expression> Arguments : Can't find variable bound_rect in [level_map]
Такой лог бывает когда подключаешь локацию из ТЧ в ЗП. Причина проста — в ЗП уровнях файл строчка bound_rect пишется в файле gamedatalevelsимя_уровняlevel.ltx, а в ТЧ строка bound_rect для каждого уровня непосредственно в файле gamedataconfiggame_maps_single.ltx …
Исправить просто, нужно изменить файл gamedatalevelsимя_уровняlevel.ltx в подключенной локации, просто перенести строку bound_rect из game_maps_single.ltx в level.ltx перед строчкой texture.
Expression : hGame Function : CEngineAPI::Initialize File : E:stalkerpatch_1_0004xr_3daEngineAPI.cpp Line : 65 Description : Game DLL raised exception during loading or there is no game DLL at all
Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0004 xrGame от 6 патча.
Expression : assertion failed Function : CInventory::Eat File : E:stalkersourcestrunkxr_3daxrGameInventory.cpp Line : 892 Description : pIItem->m_pCurrentInventory==this
Вылет встречается только на 6 патче при попытке хаванья из трупа. Ищите, исправленную Kolmogor’om, xrGame.dll в Интернете
[error]Expression : error handler is invoked! [error]Function : invalid_parameter_handler [error]File : E:stalkersourcestrunkxrCorexrDebugNew.cpp [error]Line : 804 [error]Description :
Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (читал, сам не получал его)
Или же если данный вылет происходит при вызове класса, то проблема в том что в методе __init() класса прописано super()
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp Line : 748 Description : d:stalker copgamedatascriptsbind_stalker.script:231: attempt to index global 'ИМЯ_ФАЙЛА' (a nil value)
Вылет происходит в двух случаях — когда скрипт пытается вызвать функцию из несуществующего файла или когда в файле допущена синтаксическая ошибка.
Expression : fatal error Function : CScriptEngine::lua_error File : E:stalkersourcestrunkxr_3daxrGamescript_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: attempt to call a nil value
Происходит при попытке вызвать класс, которого не существует
Небольшой пример из практики по определению ошибки в особых случаях(для начинающих):
Игра зависла, картинка на экране не меняется, на Ctrl + Alt+ Delete не реагирует. Только «Холодная перезагрузка» reset. Но при этом обычно в логе нет записи и обычным Ctrl + V ошибку не увидеть.
Я пользуюсь программой Punto Switcher. Есть в ней опция «дневник», она ведёт запись всех нажатий клавиш и по нажатию сочетаний клавиш содержимое памяти может записывать в дневник.
теперь когда игра зависла и картинка на экране не меняется, нажимаете Ctrl + Alt+ Delete. Внешне ничего не изменится, но ОС будет реагировать
на клавиши, нажимаете сочетание клавиш «записать в дневник». Делаете перезагрузку, открываете дневник — Ваша ошибка записана.
«дядя Саша»
Expression : bone_id!=BI_NONE Function : SArtefactDetectorsSupport::SetVisible File : D:prog_repositorysourcestrunkxrGameArtefact.cpp Line : 525 Description : link
Возникает при создании или добавлении чужих артефактов. В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в sdk и выяснением имени косточки с занесением в конфиг.
Expression : error handler is invoked! Function : invalid_parameter_handler File : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp Line : 815 Description : bad argument #3 to 'format' (string expected, got no value)
Вылет заканчивающийся строкой, то что выше не указываю роли не играет, здесь роль играет только «bad argument #3». Если это появилось значит у Вас ошибка в файле с расширением .ltx (обращаю внимание, не путать с файлами .script), которая находится между [….] квадратными скобками в файле. Это может быть секция предмета, секция логики, секция пути файла way_, т.е. там где присутствуют квадратные скобки.
Expression : cross_table().header().level_guid() == level_graph().header().guid() Function : CAI_Space::load File : D:prog_repositorysourcestrunkxrGameai_space.cpp Line : 113 Description : cross_table doesn't correspond to the AI-map
Скорее всего, отсутствует файл level.ai. Возможно после правки уровня в SDK и компиляции AI, вы забыли его скопировать в папку уровня. Важно помнить, что level.ai нужно обновлять для всех уровней, а не только для тех, которые подвергались правке.
Безлоговый вылет
Вылет, при котором лог отсутствует. Причины такого вылета:
1. Безлоговые вылеты бывают в основном из-за завышенных настроек видео.
Решение:
В папке с игрой открыть папку gamedata, папку config, в ней файл alife, открыть любым текстовым редактором (блокнотом, или лучше word pad’ом) и найти строку switch distance = и изменить значение на 5, сохранить изменения. Это только одна (не сильно вероятная) причина безлогового вылета. если вы знаете ещё одну причину, пожалуйста напишите здесь.
2. Вторая причина неправильно указано название пути в логике НПС или он полностью отсутствует в файле way_ all.spawn. Вылетать будет когда дойдёт время до спавна этого НПС.
3. Также, безлоговые вылеты происходят из-за ошибок в диалогах.
- Автор статьи — Pihan13
- Дополнительный справочник «вылетов» игры
Не стесняемся — дополняем, если знаем о чём идёт речь.
Как найти лог вылета в игре СТАЛКЕР ?
2016-02-02 14:04:18
>
Сразу после вылета открыть любой текстовый редактор и выбрать в меню «правка» или в контекстном меню по правой кнопке мышки кнопку «ВСТАВИТЬ». Т.Е. сразу после вылета лог хранится в буфере обмена
Полученный текст и будет логом вылета. Или же смотрим последние строки в текстовом документе по пути:
C:Documents and SettingsAll UsersДокументыSTALKER-SHOClogs (т.е. общие документыпапка Сталкер)
Пример лога вылета:
[error]Expression : [error]Function : CInifile::r_section [error]File : Xr_ini.cpp [error]Line : 544 [error]Description : fatal error [error]Arguments : Can't open section 'string_table'. Please attach [*.ini_log] file to your bug report
> Артем Буриев, хочешь дам макс акк в Тарков погонять? У меня всё равно нет возможности в него сейчас играть
2023-01-31 04:21:50
> Артем Буриев, Таких игр чтобы и на сталкер, и на Тарков похоже — не видел. Но есть сталкерские сервера на платформе Dayz-а, в принципе довольно неплохие, возможно заинтересует.
2023-01-31 02:12:18
Всем привет, вопрос такой, не могу найти нормальную тч 10004 версии и мод(подстава) вылетает при загрузке на сейв
2023-01-31 01:43:45
> DanskJarl, я понимаю.просто я не могу себе позволить Тарков,а Сталкер уэе надоел. Есть,конечно, Road To Vostok, но он разрабатывается
2023-01-30 23:45:26
> Артем Буриев, Точнее тарков)
2023-01-30 23:38:34
> Артем Буриев, Тогда это будет уже не по типу сталкер)
2023-01-30 23:38:24
Ребят,тут есть небольшой вопрос. Кто-нибудь может мне посоветовать хорошую игру по типу Escape from Tarkov,но чтобы она походила большн на Сталкер? И да,хотелось бы,чтобы можно было найти торрент хороший и еще чтобы не было хардкорно. Заранее спасибо.
2023-01-30 22:48:10
> Zlodey, Костя по тайникам-ты его получишь
2023-01-30 21:06:25
> Denya48, диалоги точно все пролистал? Там он по моему в каком то поддиалоге этот квест, внимательно все пересмотри
2023-01-30 20:40:02
Оп 2.2,установлен последний патч
2023-01-30 20:36:51
И в пда стоит активным
2023-01-30 20:36:07
Не,небыло,я так понял именно этот квест дает открывает многие ветки
2023-01-30 20:35:42
> Denya48, этот квест легко провалить если затянуть, сообщения точно не было что компромат больше не нужен?
2023-01-30 20:27:20
> stepamordar, в статьи зайди, там и на зп, и чн и тч есть) просто тут у каждого свой вкус, и я не знаю в какие ты уже играл, если надо, пиши в лс, не хочу общий чат засорять
2023-01-30 20:15:56
> -_YarUs_-, смотря в какие моды ты уже играл, посмотри статьи на сайте, самые ламповые как по мне в зп. А если о моем личном мнении, то путь во мгле, пространственная аномалия, и как же без ветра времени)
2023-01-30 20:13:33
> Fakir, ага,не разобрался,квест,первая его часть защитана и обновился,что нужно отдать сумку ему,ан не хочет говорить об этом.Кейс с арм.складов аренес- все норм,а тут не знаю что делать
2023-01-30 20:10:07
> Denya48, не разобрался с кузнецовым?
2023-01-30 19:24:53
> Zlodey, крест дает задание на него
2023-01-30 18:47:20
Всем здарова, Сталкеры!
2023-01-30 18:44:26
День добрый Подскажите пожалуйста,квест Кузнецова на компромат,сумку взял,задание обновилось,но у Кузнецова нет диалога,не забирает сумку.Модно это исправить? Благодарю.
2023-01-30 18:08:06
Авторизация
Содержание
- Причины вылетов игры (разбираем логи)
- Материал из S.T.A.L.K.E.R. Inside Wiki
- Безлоговый вылет
- Fatal Error Expression No Expression Function в Сталкере — как исправить
- Как найти ошибку?
- Что за ошибка, когда появляется?
- Причины возникающих ошибок
- Пути решения ошибок
Причины вылетов игры (разбираем логи)
Материал из S.T.A.L.K.E.R. Inside Wiki
Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:
- В текстовом редакторе нажать Ctrl+V (Вставить)
- Посмотреть лог игры включая лог вылета в файле xray_имя_пользователя.log в папке C:Documents and SettingsAll UsersДокументыSTALKER-***logs
- Посмотреть непосредственно в окне багтрекера (только в ЧН и ЗП).
Ну приступим. Начнём с простых:
Здесь игра не может открыть звуковой OGG-файл под названием sound в папке d:stalkergamedatasoundsmusic
Не может найти текстуру act_corp_monolit из папки texturesact
Не найдена трёхмерная OGF-модель mesh.ogf из папки meshesphysics.
Не найдена система частиц (партикл) hit_water_00 в директории hit_fx файла particles.xr (подробно опишу позже).
Не установлен интервал (время) проигрывания группы/эффекта партиклов. В Particle Group -> End Time(s) укажите время, через которое частицы должны исчезнуть. Заодно проверьте particle effect -> Kill Old -> Age limit.
Не найден шейдер modelsantigas_glass в библиотеке шейдеров.
Тут проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Нужно скачивать исправление шейдеров от товарища Haron. Для ЗП (ЧН) это может ещё быть из-за отсутствия thm-ок для текстур террейна уровня!
Нехватка оперативной памяти.
Неправильно настроены шейдеры. В настройках шейдера, во вкладке R2-A поставьте текстуру, которая вдальнейшем будет накладываться на террейн.
Не найдена переменная ammo_mag_size в секции [wpn_addon_grenade_launcher].
Переполнение стека. Смотрим внимательно: lua_error. Ошибка, возможно, в скриптах.
Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер) который якобы двигался по пути sniper_3_walk попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.
То же самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места, где НПС запрещено находиться, будь то рестриктор или аномалия в схеме обхода аномалий. Также этот вылет наблюдается при попытке отправить НПС за пределы места работ параметр out_rest = «имя_рестриктора» в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить, допустим, к остановке — получите этот самый вылет.
Возникают иногда произвольно при смерти неписей. Причина — движок, отрабатывая лут, изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.
Ошибка распространённая. На первый взгляд кажется, что ошибка как раз в скриптах, но всё может быть иначе. В одной из пиратских версий игры этот вылет наблюдается особенно часто из-за криво модифицированного файла «XR_3DA.exe». Если же вы уверены, что у вас лицензионная версия игры, можно попробовать сделать так: открываем файл _g.script блокнотом, закомменчиваем 20 строку (ставим перед строкой —) и идём к тому месту где поймали вылет. Так мы получим более развёрнутый ответ.
Участник: Призрак: Автор прав в том что вылет очень распространен, но так его исправлять нельзя, так как nil передается в эту функцию только при каком-то форс-мажоре. Поэтому необходимо перейти в _g.script в функцию printf и перед log1(string.format(fmr. )) дописать: get_console():execute(«load «..fmt). После этого запустить еще раз игру и посмотреть при передачи какой строки игра вылетает. Потом найти эту строку в скриптах игры и прикинуть почему аргумент (у нас это аргумент №2 (bad argument #2)) равен nil. Возможность такового вылета из — за слишком быстрой скорости актера, слишком высокому прыжку. (Редактировать: config/creatures/actor.ltx)
Проблема возникает при убийстве НПСмутанта. Типичный вылет по нехватке ресурсов. Встречается в основном на больших локациях. Но не на всех. На болотах из ЧН такой вылет встречается, а вот с локации aver от Кости V такого вылета нет. Однако для данного вылета есть таблетка, в виде правленого экзешника. Искать на АМК-форуме.
Неправильный визуал (модель) НПС.
В диалоге esc_dialog нет доступной для отображения фразы (скажем, все заткнуты инфопоршенами).
Игра не нашла в модели трёхмерную анимацию с именем death_init.
Причина вылета в том что игра не понимает значения 0 в danger_ignore.Проще говоря в логике какого то персонажа параметр danger_ignore = 0 либо в минусовом значении. Либо его вообще нету
P.S. Также может быть причина в том, что в логике у какого-то АИ что-то неправильно указано. Для исправления рекомендую вставить строчку перед 116: get_console():execute(self.object:name()). То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой.
Не найден класс персонажа. Возможно, НПС не прописан под своим классом в gamedatanpc_profile.xml, либо в creaturesspawn_section.ltx, либо в gameplaycharacter_desc.xml
Игра не может найти секцию. Это может быть предмет, НПС и многое другое. Возможно, вы написали название с ошибками. Либо когда добавляли его в: продажу, скрипт, НПС , выпадение из НПС, а в редких случаях это может быть иммунитет чего либо(определить потом трудно). Часто такое бывает связано с названием секции.
Не найдена переменная remove_time в секции [vehicle_btr]. А в данном случае ошибка в том что если вы делали предмет как физическую модель(то бишь, которую нельзя использовать, говорить и вообще он похож на декорации типа деревьев, столов и прочего хлама) то необходимо указывать remove_time в его секции.
Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту.
На мультиплеерной карте не найдены точки респавна игроков. В SDK должен быть красный пацанчик. Настроить Team = 0
Такое иногда бывает, когда ты (ГГ) или НПС заряжает дробовик или другое оружие со значением tri_state_reload = true. Это глюк. в игре что-то сбивается, и когда у дробовика максимальное количество заряженных патронов скажем 6, он заряжается за 6 и дальше.. дальше.. дальше.. и так пока не произойдёт вылет с вышеуказанным логом. вылет не значительный и редкий, но если он случается слишком часто, можно в конфигах всех дробовиков и ружей поменять значение tri_state_reload = true на tri_state_reload = false.
Такой лог бывает когда подключаешь локацию из ТЧ в ЗП. Причина проста — в ЗП уровнях файл строчка bound_rect пишется в файле gamedatalevelsимя_уровняlevel.ltx, а в ТЧ строка bound_rect для каждого уровня непосредственно в файле gamedataconfiggame_maps_single.ltx .
Исправить просто, нужно изменить файл gamedatalevelsимя_уровняlevel.ltx в подключенной локации, просто перенести строку bound_rect из game_maps_single.ltx в level.ltx перед строчкой texture.
Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0004 xrGame от 6 патча.
Вылет встречается только на 6 патче при попытке хаванья из трупа. Ищите, исправленную Kolmogor’om, xrGame.dll в Интернете
Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (читал, сам не получал его) Или же если данный вылет происходит при вызове класса, то проблема в том что в методе __init() класса прописано super()
Вылет происходит в двух случаях — когда скрипт пытается вызвать функцию из несуществующего файла или когда в файле допущена синтаксическая ошибка.
Происходит при попытке вызвать класс, которого не существует
Небольшой пример из практики по определению ошибки в особых случаях(для начинающих): Игра зависла, картинка на экране не меняется, на Ctrl + Alt+ Delete не реагирует. Только «Холодная перезагрузка» reset. Но при этом обычно в логе нет записи и обычным Ctrl + V ошибку не увидеть. Я пользуюсь программой Punto Switcher. Есть в ней опция «дневник», она ведёт запись всех нажатий клавиш и по нажатию сочетаний клавиш содержимое памяти может записывать в дневник. теперь когда игра зависла и картинка на экране не меняется, нажимаете Ctrl + Alt+ Delete. Внешне ничего не изменится, но ОС будет реагировать на клавиши, нажимаете сочетание клавиш «записать в дневник». Делаете перезагрузку, открываете дневник — Ваша ошибка записана. «дядя Саша»
Возникает при создании или добавлении чужих артефактов. В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в sdk и выяснением имени косточки с занесением в конфиг.
Вылет заканчивающийся строкой, то что выше не указываю роли не играет, здесь роль играет только «bad argument #3». Если это появилось значит у Вас ошибка в файле с расширением .ltx (обращаю внимание, не путать с файлами .script), которая находится между [. ] квадратными скобками в файле. Это может быть секция предмета, секция логики, секция пути файла way_, т.е. там где присутствуют квадратные скобки.
Скорее всего, отсутствует файл level.ai. Возможно после правки уровня в SDK и компиляции AI, вы забыли его скопировать в папку уровня. Важно помнить, что level.ai нужно обновлять для всех уровней, а не только для тех, которые подвергались правке.
Безлоговый вылет
Вылет, при котором лог отсутствует. Причины такого вылета:
1. Безлоговые вылеты бывают в основном из-за завышенных настроек видео.
Решение: В папке с игрой открыть папку gamedata, папку config, в ней файл alife, открыть любым текстовым редактором (блокнотом, или лучше word pad’ом) и найти строку switch distance = и изменить значение на 5, сохранить изменения. Это только одна (не сильно вероятная) причина безлогового вылета. если вы знаете ещё одну причину, пожалуйста напишите здесь.
2. Вторая причина неправильно указано название пути в логике НПС или он полностью отсутствует в файле way_ all.spawn. Вылетать будет когда дойдёт время до спавна этого НПС.
3. Также, безлоговые вылеты происходят из-за ошибок в диалогах.
Источник
Fatal Error Expression No Expression Function в Сталкере — как исправить
Разработчики игры Сталкер оставили для своих пользователей много проблем, которые связаны с вылетом игры. В принципе основная проблема заключается в недоработке игрового движка X-Ray, который зачастую ведет себя очень капризно. В этой статье вы найдете информацию о самых распространенных причинах Fatal Error Expression No Expression Function в Сталкере, а также методах их исправления.
Ошибка Fatal Error Expression No Function в STALKER
Как найти ошибку?
Прежде чем фиксить проблему, требуется разобраться в том, как же ее найти и выявить . Узнать причину вылета игры легко, поскольку она оставляет в памяти компьютера специальный лог. Если ваша игра вылетает или зависает, она автоматически начинает создавать работающие файлы, которые записываются на системный диск С. Игра STALKER перезаписывает свой журнал каждый раз, когда вы запускаете игру. Этот подкаталог находится в папке «UsersPublicDocuments», а на Windows 8 и 10 это папка «UsersPublicPublic Documents».
Найти лог на системном диске С можно несколькими способами:
- В текстовом редакторе ввести Сtrl+V, чтобы скопировать туда текст «Fatal Error Expression No Function».
- Нажать кнопку «Пуск» на панели задач вашей ОС и ввести свое имя. Например, если ваше имя пользователя Сергей, вы найдете файл с именем xray_Sergey.log.
- Также можно сразу же открыть папку «Documents/STALKER» на диске C, чтобы отыскать ошибку.
- И последним вариантом поиска лога являются специальные программы для просмотра ошибок на Windows, которые требуют отдельной системной установки.
Что за ошибка, когда появляется?
Fаtal Error Expression No Function — это фатальная ошибка в Сталкере, которая говорит об отсутствующих функциях, битых файлах игры или нечитаемых библиотеках. Практически всегда ошибку сопровождает полный вылет игрока из игрового пространства. Чаще всего она преследует тех игроков, которые выбирают модифицированные версии «STALKER Тень Чернобыля», например: «Солянка», «Вектор отчуждения», «Конец света» и другие.
Ее появление связано с тем, что движок игры при любом баге в патчах начинает крошиться и вылетать. Стоит сразу же отметить — компьютерная игра STALKER в оригинальной версии имеет идентичные логи с ее модами. Когда происходит сбой «Fаtal Error Exprеssion No Expression Function», то на экране вашего ПК появится окошко «Fatal Error» с указанием файла, который дал сбой.
Причины возникающих ошибок
Как мы уже упомянули выше, основной причиной ошибки является некачественная разработка движка. Если углубиться в суть возникающих проблем, то встречаются следующие самые распространенные причины их появления:
- Не работает поиск структуры (аct corр monolit) и поиск шейдера (modelsantigas glass).
- Отсутствует свободная оперативная память.
- Невозможно отыскать переменную.
- Переполнен стек. Чаще всего ошибка данного рода заключается в скриптах.
- «Bad argument #2» — это часто встречающаяся ошибка, которая может сигнализировать о проблеме в скриптах и не только. Одной из причин может стать некачественно модифицированный файл XR3D, но это происходит в пиратских версиях. Для ее устранения понадобится открыть файл «g.script» в блокноте и на двадцатой строке прописать «—», после вернуться в точный момент вылета.
- Ошибка в неверном визуале.
- Не воспринимает значение «ignore_types», проще говоря, какой-то из параметров персонажа.
- Отсутствует информация о классе, к которому принадлежит ключевой персонаж.
- «Bandage test kick1» не находит секцию.
- «Remove time» не может быть определен в секции.
- «Beer from the creator» — эта ошибка редкая и чаще всего возникает при перезарядке такого сложного оружия, как дробовик. Лаг заключается в том, что в обойму на шесть патронов начинает помещаться больше, что в итоге приводит к вылету игры.
- Вызов несуществующего класса. Это ошибка иногда может не прописаться в логе, поскольку игра зависает на одном месте.
Пути решения ошибок
К уже оглашенным выше способам решения «Fatal Error Expression No Expression Function в Сталкере» можно отнести следующие популярные:
- Банальный рестарт вашей техники. Порой «холодная перезагрузка» является во многих ситуациях самым действенным методом.
- Возобновление игры и проход сначала.
- Запуск новой сессии игры. Попробуйте войти в игру с отключенным антивирусом.
- Загрузка последнего сохранения. Если она не удается, то следует искать ошибку в скриптах.
- Удаление и переустановка игры. Полностью отключайте антивирус на момент установки.
- Перепроверка кэша папки «Gamedata» и сверхоперативной памяти. Ее можно найти на системной диске.
- Полное удаление папки «Gamedata».
- Уменьшение качества в настройках графики, также стоит уменьшить и другие параметры, влияющие на шейдеры.
- Немного изменить настройки действующего персонажа.
- Не использовать простой предмет в качестве физического объекта или же заранее прописать для него определенное значение.
- Постоянная загрузка и сохранение сейвов только при помощи консоли.
- Через Clear Sky удаление данных из папок, которые являются пользовательскими или же начинаются с FS.
Источник
Questions
Line 106
Expression : hFile>0 Function : FileDownload File : E:stalkerpatch_1_0004xrCoreFS.cpp Line : 106 Description : ...gamedataconfig
Причина:
Возникает ТОЛЬКО при загрузке сохранений. А вылетает из-за несоответствие конфигов с версией игры. Такое точно случается, если подсунуть шестому патчу system.ltx от четвёртого, получается ли данный вылет с другими конфигами или нет я не знаю.
Правда, на просторах встечал этот же вылет, только в описании были явно указаны или .ogg или .ltx файл — в данном случае ничего сказать не могу.
Лечение:
Переустановка игры/мода.
Line 108
Expression : fatal error Function : CObjectAnimator: lay File : E:stalkersourcestrunkxr_3daObjectAnimator.cpp Line : 108 Description : <no expression> Arguments : OBJ ANIM::Cycle '(null)' not found.
Причина:
Причиной вылета служит неправильный путь для проигрывания партикла (пример: аномалия в Х-18, она двигается по зацикленному пути из .anm файла).
Лечение:
Либо удалить глючную аномалию (в частном случае партикл), либо исправить проблему.
Line 111
Expression : fatal error Function : CModelPool::Instance_Load File : E:stalkerpatch_1_0004xr_3daxrRenderModelPool.cpp Line : 111 Description : <no expression> Arguments : Can't find model file 'physicsmesh.ogf'.
Причина:
Не найдена трёхмерная OGF-модель, в данном случае mesh.ogf из папки meshesphysics.
Лечение:
Проверяйте наличие файла, правильность написания пути и имени файла.
[hr]
Expression : ini_file.section_exist(section) Function : CTradeParameters::process File : e:stalkerpatch_1_0004xr_3daxrgametrade_parameters_inline.h Line : 111 Description : cannot find section h?
Причина:
?
Лечение:
?
Line 112
Expression : no_assert Function : CXML_IdToIndex<class CCharacterInfo>::GetById File : e:stalkerpatch_1_0004xr_3daxrgamexml_str_id_loader.h Line : 112 Description : item not found, id Arguments : amk_artem_kulinar
Причина:Игра не находит id какого-то профиля… или диалога… или квеста. В общем указанный id в .xml файле.
Лечение:
Проверяйте правильность написания идентификатора, либо добавьте его, если таковой отсутсвует.
Line 121
Expression : cross_table().header().game_guid() == game_graph().header().guid() Function : CAI_Space::load File : E:stalkerpatch_1_0004xr_3daxrGameai_space.cpp Line : 121 Description : graph doesn't correspond to the cross table
Причина:
game.graph не соответствует кросс-таблице одной из локаций.
Лечение:
Скорее всего — забыли закинуть в геймдату level.gct после правки в СДК и компиляции AI. Помните, level.gct нужно обновить для всех локаций, а не только для тех, которые подвергались правке.
Line 122
Expression : assertion failed Function : CTextureDescrMngr::LoadTHM File : E:stalkerpatch_1_0004xr_3daTextureDescrManager.cpp Line : 122 Description : F->find_chunk(THM_CHUNK_TYPE)
Причина:Имеются thm в папке текстуры.Их необходимо удалить.
Line 124
Expression : !save_guid || (*save_guid == header().guid()) Function : CALifeSpawnRegistry::load File : E:stalkerpatch_1_0004xr_3daxrGamealife_spawn_registry.cpp Line : 124 Description : Saved game doesn't correspond to the spawn : DELETE SAVED GAME!
Причина:
Происходит при попытке загрузки сохранения, которое было сделано не другом «наборе» gamedata.
Лечение:
Если делали какие-то изменения собственноручно, то верните папку gamedata в первоначальный вид. В противном случае следуйте совету — удалите сохранение.
Line 127
Expression : assertion failed Function : CInventory::Take File : E:stalkersourcestrunkxr_3daxrGameInventory.cpp Line : 127 Description : CanTakeItem(pIItem)
Причина:
Странно, но данный вылет происходит только в моде Lost World Trops Of Doom с патчами ниже 3.5.2. Причиной этому якобы большой вес ноги псевдогиганта (inv_weight = 20.0).
Лечение:
Уменьшить вес ноги до 12.
[hr]
Expression : 0 Function : attachable_hud_item::set_bone_visible File : D:prog_repositorysourcestrunkxrGameplayer_hud.cpp Line : 127 Description : model [dynamicsweaponswpn_usp45wpn_usp45_hud.ogf] has no bone [wpn_scope]
Причина:
Отображение и сокрытие съемных аддонов на оружии в сталкере осуществляется при помощи отображения и сокрытия меша, привязанного к определенной кости в моделе. Существует три таких кости: wpn_scope, wpn_silencer и wpn_launcher. В данном случае мы попытались прописать оружию съемный прицел, но указанный худовый визуал не содержит кости wpn_scope.
Лечение:
Сделать аддон несъемным (либо отключить его вообще) путем редактирования конфига либо добавить в худовую модель указанную кость.
Line 129
Expression : current_level.guid() == level_graph().header().guid() Function : CAI_Space::load File : E:stalkerpatch_1_0004xr_3daxrGameai_space.cpp Line : 129 Description : graph doesn't correspond to the AI-map
Причина:
game.graph и файл level.ai одной из локаций не соответствуют друг другу.
Лечение:
Вероятно также, что и у предыдущего вылета.
Line 131
Expression : BI_NONE!=f_bones.back() Function : P_build_Shell File : E:stalkerpatch_1_0004xr_3daxrGamePhysicsShell.cpp Line : 131 Description : wrong fixed bone
Причина:Одна из моделей на локации зафиксирована (посредством параметра fixed_bones в all.spawn) за неизвестную кость.
Лечение:
Найти и исправить ошибку.
Line 132
Expression : Ran out of memory Function : TW_LoadTextureFromTexture File : E:stalkerpatch_1_0004xr_3daxrRenderTexture.cpp Line : 132 Description : D3DXCreateTexture( HW.pDevice, top_width,top_height, levels_exist,0,t_dest_fmt, D3DPOOL_MANAGED,&t_dest )
Причина:
Вылет из-за железа, а точнее — оптимизации ОС. Скорее всего проблема с драйверами.
Лечение:
Обновите драйвера на видеокарту. Снизьте графические настройки.
Line 133
Expression : it!=WeatherCycles.end() Function : CEnvironment::SetWeather File : E:stalkerpatch_1_0004xr_3daEnvironment.cpp Line : 133 Description : Invalid weather name. Arguments : boloto
Причина:
Игра не находит идентификатор указанной погоды, в данном случае boloto, в файле environment.ltx.
Лечение:
Варианта два:
1. Поменять погоду прописанную одной из локаций в файле game_maps_single.ltx;
2. Добавить идентификатор погоды в секцию weathers, файле environment.ltx.
Line 134
Expression : assertion failed Function : CUIMMShniaga::CreateList File : E:stalkerpatch_1_0004xr_3daxrGameuiUIMMShniaga.cpp Line : 134 Description : height
Причина:
Данная ошибка, как правило указывает на «криворучие» при создании меню игры. Например: ползунок который увеличивает опции меню при прокрутке задран очень высоко. И в большей степени относится к изменениям худа.
Лечение:
Смотри, где, что наковыряли и исправляйте.
Line 136
Expression : motion_ID.valid() Function : CKinematicsAnimated::ID_Cycle File : E:stalkerpatch_1_0004xr_3daSkeletonAnimated.cpp Line : 136 Description : ! MODEL: can't find cycle: Arguments : waunded_1_idle_0
Причина:Игра не нашла в какой-то модели анимацию с именем waunded_1_idle_0.
Лечение:
В первую очередь проверьте правильность написания имени анимации. Если в названием всё впорядке, тогда либо заменить/удалить модель, либо добавить/переименовать анимацию.
Line 140
Expression : !phrase_dialog->m_PhraseVector.empty() Function : CPhraseDialog::SayPhrase File : E:stalkerpatch_1_0004xr_3daxrGamePhraseDialog.cpp Line : 140 Description : No available phrase to say, dialog[esc_dialog]
Причина:
В диалоге, в данном случае это esc_dialog, нет доступной для отображения фразы (например все заткнуты инфопоршенами и не одно из условий не выполнилось).
Лечение:
Убедиться в том, чтобы хотябы одна из фраз диалога будет доступна.
Line 147
Expression : fatal error Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>::GetByIndex File : e:stalkerpatch_1_0004xr_3daxrgameini_id_loader.h Line : 147 Description : <no expression> Arguments : item by index not found in section game_relations, line communities
Причина:
В файле game_relations.ltx допущена ошибка. Вероятнее всего для параметра communities заданы неправильные значения.
Лечение:
Проверить данный файл на ошибки.
Line 152
Expression : fatal error Function : ALife::g_tfString2HitType File : e:stalkerpatch_1_0004xr_3daxrgamealife_space.h Line : 152 Description : <no expression> Arguments : Unsupported hit type!
Причина:
Для какого-то оружия не верно прописан тип нанoсимого урона.
Лечение:
Найти и исправить ошибку.
Line 155
Expression : vertex || show_restrictions(m_object) Function : CPatrolPathManager::select_point File : E:stalkersourcestrunkxr_3daxrGamepatrol_path_manager.cpp Line : 155 Description : any vertex in patrol path [sniper_3_walk] in inaccessible for object [stalker_0002]
Причина:Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер), который якобы двигался по пути sniper_3_walk, попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.
Тоже самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места? где нпс запрещено находится будь то рестриктор или аномалия в схеме обхода аномалий. Также этот вылет наблюдается при попытке отправить нпс за пределы места работ параметр out_rest = «имя_рестриктора», в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить допустим к остановке получите этот самый вылет.
Лечение:
Найти и исправить ошибку.
Line 156
Expression : fatal error Function : mem_usage_impl File : E:stalkersourcestrunkxrCorememory_usage.cpp Line : 156 Description : Arguments : bad node in heap
Причина:
Движковый вылет.
Лечение:
Говорят от него помогает установка третьего сервис пака на ХР.
[hr]
[error]Expression : m_textures.find(def_texture_name)!=m_textures.end() [error]Function : CUITextureMaster::FindItem [error]File : E:stalkerpatch_1_0004xr_3daxrGameuiUITextureMaster.cpp [error]Line : 156 [error]Description : wpn_bm16f_410 stack trace:
ТЧ, 1,0004. + Луа-расширение RvP. Такая необычная реакция на неправильно указанное имя текстуры в xml-описателе.
[hr]
См. также справку по вылетy Line 764
Line 159
Expression : Ran out of memory Function : Fvisual::Load File : E:stalkerpatch_1_0004xr_3daxrRenderFVisual.cpp Line : 159 Description : HW.pDevice->CreateIndexBuffer(iCount*2,dwUsage,D3DFMT_INDEX16,D3DPOOL_MANAGED,&p_rm_Indices,0)
Причина:
Судя по логу — проблемы с видео памятью. Причины не известны.
— Неверная установка мода.
— Проблемы с драйверами видеокарты или Direct X.
— Проблемы с операционной системой и прочее.
Лечение:
?
Line 162
Expression : xml_result Function : CXML_IdToIndex<class CSpecificCharacter>::InitInternal File : e:stalkersourcestrunkxr_3daxrgamexml_str_id_loader.h Line : 162 Description : error while parsing XML file Arguments : kolivan_trader.xml
Причина:
Игра не находит указанного файла.
Лечение:
Либо добавить файл, либо убрать регистрацию этого файла в конфигах, зачастую это либо system.ltx, либо localization.ltx.
Line 164
Expression : ai().level_graph().valid_vertex_id(vertex->data().level_vertex_id()) Function : CPatrolPathManager::select_point File : E:/stalker/patch_1_0004/xr_3da/xrGame/patrol_path_manager.cpp Line : 164 Description : patrol path[mil_mercs_walker_3_walk], point on path [name07],object [ros_killer_respawn_230016]
Причина:
В игре даже пропатченной до версии 1.0005 всё ещё есть проблемы с маршрутами.
Лечение:
Обычно достаточно просто загрузить последний сейв и не сохраняться рядом с местами, где происходят такие вылеты.
Дополнительное обсуждение и информация — в этом и этом постах.
Line 166
Expression : I Function : CInifile::Load File : E:stalkerpatch_1_0004xrCoreXr_ini.cpp Line : 166 Description : Can't find include file: Arguments : prefetchprefetch.ltx
Причина:
Игра не может найти указанный файл по указанному пути.
Лечение:
Либо находите в .ltx файлах строку #include «prefetchprefetch.ltx» и удаляйте, либо добавляйте сам файл.
Line 167
Expression : header().graph_guid() == ai().game_graph().header().guid() Function : CALifeSpawnRegistry::load File : E:stalkersourcestrunkxr_3daxrGamealife_spawn_registry.cpp Line : 167 Description : Spawn doesn't correspond to the graph : REBUILD SPAWN!
Причина:
all.spawn не соответствует game.graph. Когда компилировали AI, видно, забыли пересобрать спавн.
Лечение:
Привести all.spawn и game.graph в соответствие.
Line 171
Expression : I != levels().end() Function : GameGraph::CHeader::level File : e:stalkerpatch_1_0004xr_3daxrgamegame_graph_inline.h Line : 171 Description : there is no specified level in the game graph : 96
Причина:
Вылет говорит о том, что объект попал в вертекс (96), которого нет на данной карте.
Лечение:
Если загрузка последнего сохранения не помагает, то можете попробовать уменьшить радиус A-Life, посредством параметра switch_distance, пройти проблемный участок, а затем вернуть первоначальное значение параметра.
[hr]
[error]Expression : I != levels().end() [error]Function : GameGraph::CHeader::level [error]File : e:stalkersourcestrunkxr_3daxrgamegame_graph_inline.h [error]Line : 171 [error]Description : there is no specified level in the game graph : 153
Возникает при попытке взять имя уровня по его ID c помощью вызова alife():level_name(level_id), если число level_id не соответствует ни одному из существующих уровней.
Line 172
Expression : xml_doc.NavigateToNode(path,index) Function : CUIXmlInit::InitStatic File : E:stalkerpatch_1_0004xr_3daxrGameuiUIXmlInit.cpp Line : 172 Description : XML node not found Arguments : cs_inviz
Причина:
Игра не находит в каком-то .xml файле указанный элемент.
Лечение:
Найти и исправить ошибку.
Line 175
Expression : fatal error Function : CInifile::Load File : E:stalkersourcestrunkxrCoreXr_ini.cpp Line : 175 Description : <no expression> Arguments : Duplicate section 'wpn_noou_sig220_hud' found
Причина:
Продублирована указанная секция в .ltx файлах.
Лечение:
Найти и исправить ошибку.
Line 178
Expression : _valid( c ) Function : CPhysicsShellHolder::correct_spawn_pos File : D:prog_repositorysourcestrunkxrGamePhysicsShellHolder.cpp Line : 178 Description : object: wpn_val17095 model: dynamicsweaponswpn_valwpn_val
Причина:
Вы присвоили какому-то объекту визуал, у которого забыли сгенерировать шейпы. Как вариант — случайно были перепутаны мировая и худовая модели оружия. Имя объекта и сбойный визуал указаны в строке description
Лечение:
Есть несколько вариантов:
а) Сгенерировать у указанной модели шейпы, используя Actor Editor (AE) из состава СДКб)заменить указанную модель на «заведомо рабочую»
B) Найти, где в конфиге прописан неверный визуал, и исправить параметр на другой
[hr]
Expression : _valid( c ) Function : CPhysicsShellHolder::correct_spawn_pos File : D:prog_repositorysourcestrunkxrGamePhysicsShellHolder.cpp Line : 178 Desсription : object: wpn_ak1030024 model: dynamicsweaponswpn_ak103wpn_ak103
Добавил новую модель (ПДА заменил). Запускаю игру, ловлю вылет: Все было проставлено правильно, СДК не бунтовал при экспорте… Делал на основе кости старого ПДА АПД.
Все, спасибо, разобрался. Нужно было в СДК во вкладке Object поставить make progressive
Line 184
Expression : m_pItemDataVector->end() == t_it Function : CXML_IdToIndex<class CInfoPortion>::InitInternal File : e:stalkersourcestrunkxr_3daxrgamexml_str_id_loader.h Line : 184 Description : duplicate item id Arguments : my_info_porsh
Причина:
Игра определила повторяющиеся id в .xml файле, чего быть не должно.
Лечение:
Найти и исправить ошибку.
Line 185
Expression : fs Function : CResourceManager::_CreateVS File : E:stalkerpatch_1_0004xr_3daResourceManager_Resources.cpp Line : 185 Description : shader file doesnt exist Arguments : d:stalkergamedatashadersr2deffer_impl_flat.vs
Причина:
Либо не найден файл шейдера deffer_impl_flat.vs, либо проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Для ЗП (ЧН) это может ещё быть из-за отсутствия thm’ок для текстур терраина уровня.
Лечение:
В первом случае — проверить наличие файла. Во втором — нужно скачивать исправление шейдеров от товарища Haron.