Error expression assertion failed

Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:

Привет всем! Игра 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
  • Дополнительный справочник «вылетов» игры

Не стесняемся — дополняем, если знаем о чём идёт речь.

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...gamedatascriptsxr_danger.script:116: attempt to index field 'ignore_types' (a nil value)
Показать скрытое содержание

Причина:

Игра не понимает значения 0 в danger_ignore. Проще говоря в логике какого-то персонажа параметр danger_ignore равен нулю, либо он отрицателен, либо его вообще нету. Также может быть причина в том, что у какого-то в логике что-то неправильно указано в секции danger.

Лечение:

Для исправления рекомендую перед 116 строкой (номер строки может отличаться) дописать следующий код:

get_console():execute(self.object:name())

То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...gamedatascripts.script:34: attempt to call method 'section' (a nil value)
Показать скрытое содержание

Причина:

Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту. Часто такое возможно, когда к серверному объекту применяют клиентские методы и наоборот.

Лечение:

Найти и исправить ошибку.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...w of chernobylgamedatascripts<имя файла>.script:<номер строки>: attempt to perform arithmetic on a nil value
Показать скрытое содержание

Причина:

Попытка выполнения арифметической операции над nil.

Лечение:

Найти и исправить ошибку. Обратите внимание на строку с указанным номером, попытка выполнения арифметической оперции над nil происходит именно в ней.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...gamedatascripts<имя файла>.script:<номер строки>: attempt to compare number with nil
Показать скрытое содержание

Причина:

Попытка сравнения числа с nil.

Лечение:

Найти и исправить ошибку. Обратите внимание на строку с указанным номером, попытка сравнения числа с nil происходит именно в ней.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...gamedatascripts<имя файла>.script:<номер строки>: attempt to perform arithmetic on field '?' (a nil value)
Показать скрытое содержание

Причина:

Попытка получить значение таблицы по ключу nil.

Лечение:

Найти и исправить ошибку. Обратите внимание на строку с указанным номером, попытка получения значения по ключу nil происходит именно в ней.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkersourcestrunkxr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: error in error handling
Показать скрытое содержание

Причина:

Причину вылета назвать достаточно трудно, вероятно это что-то глубоко движковое. Такой вылет может вызывать передача клиенсткого объекта в функцию switch_offline.

Лечение:

В случае передачи клиентского объекта — устранить ошибку. Но определить причину в большинстве случаев крайне проблематично — попробуйте загрузить последнее сохранение.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkersourcestrunkxr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: attempt to call a nil value
Показать скрытое содержание

Причина:

Происходит при попытке вызвать конструктор класса, которого не существует.

Лечение:

Найти и исправить ошибку.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : D:xray-svnxr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: C stack overflow
Показать скрытое содержание

Причина:

Ошибка также может появиться со строкой 74. Переполнение стека. Смотрим внимательно: lua_error. Ошибка возможно в скриптах.

Лечение:

Загрузка последнего сохранения.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: No such operator defined
Показать скрытое содержание

Причина:

Попытка использовать для какого-то объекта, несуществующий метод. Зачастую путаница с серверными и клиентскими метода.

Лечение:

Найти и исправить ошибку.

[hr]

Expression    : fatal error
Function    : CScriptEngine::lua_error
File        : E:stalkersourcestrunkxr_3daxrGamescript_engine.cpp
Line        : 73
Description    : 
Arguments    : LUA error: ...gamedatascripts<имя файла>.script:<номер строки>: unfinished capture
Показать скрытое содержание

Причина:

Единственной причиной данного вылета которую я нашёл, это попытка использовать для функции string.find в качестве шаблона «волшебный символ» открывающуюся круглую скобку, т.е. попытка найти скобку таким образом:

local p = string.find(str, "(")

Лечение:

Для поиска открывающейся круглой скобки используйте параметр plain для данной функции со значением true, он выключает возможность поиска по шаблону и в таком случае производится поиск подстроки как есть:

local p = string.find(str, "(", 1, true)

[hr]

[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
[error]Line          : 73
[error]Description   : 
[error]Arguments     : LUA error: ...ings.t.a.l.k.e.rgamedatascriptsinv_system.script:1674: attempt to call function 'GetCommand_TakeSlot' (a nil value)
 

stack trace:
Показать скрытое содержание

Казалось бы, причина ясна — вызов функции, которой не существует. Однако функция есть, и называется именно так, и с ней все в порядке. как и с самим файлом скрипта тоже — в нем нет синтаксических ошибок, игра не ругается на него самого, заявляя что он ‘a nil value’

Причина оказалась вот в чем. В начале скрипта, есть таблица, такого вида:

tbl = {
    string_key1 = number,
    string_key2 = number,
...

а далее есть еще одна таблица. вот такого вида:

tb_funcs = {
        [tbl.string_key1] = function(args...)
            ...
        end,
...

то есть, значения ее — функции. а ключами являются значения из первой таблицы.

Ну так вот. в первой таблице поменял имя одного из ключей. А во второй — забыл это сделать. Получилось что во второй таблице, одна из функций находится по ключу, который вообще то равен nil.
А причем же тут та функция, которую мы вызывали, и вылетели с нею в лог? да вообще ни при чем, она просто находилась в том же файле ниже по тексту.

Вывод — когда делаете в таблицах ключи вида массив/модуль.значение — убедитесь что это значение не равно nil ) а то сталкер об этом нормально не скажет.

Для поиска по страничке используйте Ctrl+F

xrAI

! AI-node [87.500, 9.188, 160.300] not connected to AI-map
 
FATAL ERROR
 
[error]Expression    : error_nodes.empty()
[error]Function      : CGameGraphBuilder::check_fill
[error]File          : X:xrayutilsxrAIgame_graph_builder.cpp
[error]Line          : 273
[error]Description   : Some ai-node is not connected to AI-map. See log for details.

Одна (или множество) нод не соединены с остальной ИИ-сеткой. Не допускайте создания отдельных островков нод, всегда соединяйте их с основной ИИ-сеткой, и удаляйте отдельно стоящие и вырожденные ноды (в ЛЕ выделяются красным) нажатием кнопки Select 0-Link на панели AI Map и клавиши Delete на клавиатуре.


[error]Expression    : F
[error]Function      : xrLoad
[error]File          : .compiler_load.cpp
[error]Line          : 272
[error]Description   : x:gamedatalevelsescapebuild.aimap

В папке с уровнем gamedatalevelescape отсутствует build.aimap
Нужно экспортировать ИИ-карту из LevelEditor: Compile->Make AI Map


[error]Expression    : assertion failed
[error]Function      : CGameGraphBuilder::save_cross_table
[error]File          : .game_graph_builder.cpp
[error]Line          : 351
[error]Description   : graph().header().vertex_count() > tCrossTableCell.tGraphIndex

На карте отсутствуют точки графа. Нужно добавить хотя бы одну: Spawn Element -> AIgraph point и экспортировать level.game: Compile -> Make Game


! Cannot build GAME path! (object esc_tutorial_wounded0826)
! CURRENT LEVEL : escape
! CURRENT game point position : [-146.011078][-20.711269][-147.502380]
 
FATAL ERROR
 
[error]Expression    : I != levels().end()
[error]Function      : GameGraph::CHeader::level
[error]File          : f:projecthomestalkerborschtsrc_enginexrayxrgamegame_graph_inline.h
[error]Line          : 153
[error]Description   : there is no specified level in the game graph : 205

Такая ошибка возникла после того, как была прервана компиляция ИИ-сетки. Видимо, испортился игровой граф, нужно перекомпилировать его (xrAI -f)


[error]Expression    : assertion failed
[error]Function      : CVertexAllocatorFixed<2097152>::CDataStorage<struct CVertexPath<1>::DataStoragePath<struct CVertexManagerFixed<unsigned int,unsigned int,8>::VertexManager<struct CDataStorageSingleLinkedList<0>::SingleLinkedList<struct CDataStorageDoubleLinkedList<0>::DoubleLinkedList<struct CDataStorageBucketList<unsigned int,unsigned int,8192,0>::BucketList<struct CDijkstra<float,struct CDataStorageBucketList<unsigned int,unsigned int,8192,0>,struct CVertexManagerFixed<unsigned int,unsigned int,8>,struct CVertexAllocatorFixed<2097152>,1,struct CVertexPath<1>,struct AStar::_Vertex<float,class CEmptyClassTemplate>::_vertex,struct CBuilderAllocatorConstructor,struct CManagerBuilderAllocatorConstructor,struct CDataStorageConstructor,unsigned int>::_Vertex>::_vertex>::_vertex>::_vertex>::_vertex>::_vertex>::create_vertex
[error]File          : x:clearskysrcengineutilsxraivertex_allocator_fixed_inline.h
[error]Line          : 51
[error]Description   : m_vertex_count < reserved_vertex_count - 1

Эту ошибку можно обойти ключом -no_separator_check

По какой причине она вообще возникает и не допустить её возникновения?


[error]Expression    : !m_border.empty()
[error]Function      : CSpaceRestrictorWrapper::build_border
[error]File          : .space_restrictor_wrapper.cpp
[error]Line          : 215
[error]Description   : space restrictor has no border
[error]Arguments     : esc_zone_mine_gravitational_weak_0009

Аномалия расположена не на ИИ-сетке.


[error]Expression    : assertion failed
[error]Function      : CGraphMerger::CGraphMerger
[error]File          : xr_graph_merge.cpp
[error]Line          : 621
[error]Description   : M != (*K).second->m_tVertexMap.end()

Одной из точек графа для перехода между уровнями задана связь с другой, несуществующей (или с несуществующим именем). При возникновении такой ошибки в первую очередь стоит проверить наличие собственно точки графа на уровне через Object List в режиме Spawn, затем наличие ИИ-сетки под ней, и уж в последнюю очередь настройки.

Красные строки в логе

! level_path().failed() during navigation

Путь непися пролегает через пространство, где неадекватно соединены ноды ИИ-сетки. Нужно правильно соединить ноды.

Редакторы

Expression    : assertion failed
Function      : IReader::advance
File          : x:clearskysrcenginexrcoreFS.h
Line          : 276
Description   : (Pos<=Size) && (Pos>=0)

Такой вылет был, когда в папке с СДК оказался левый .xdb-архив.

Игра

[error]Expression    : false
[error]Function      : CXml::Load
[error]File          : xrXMLParser.cpp
[error]Line          : 87
[error]Description   : XML file:textrusst_quests_escape.xml value: errDescr:Error reading end tag.

В указанном файле ошибка синтаксиса: где-то не закрыт тег.


Expression    : m_attack_animation.valid()
Function      : CVisualZone::net_Spawn
File          : E:priquelsourcesenginexrGameZoneVisual.cpp
Line          : 34
Description   : object[esc_burning_fluff_strong]: cannot find attack animation[] in model[dynamicsanomaliesburning_fluff_01]

На карте присутствует динамическая модель, у которой предусмотрена, но не задана анимация атаки. Нужно задать её в LevelEditor’е в свойствах спаун-объекта в поле Attack animation.


[error]Expression    : motion_ID.valid()
[error]Function      : CKinematicsAnimated::ID_Cycle
[error]File          : ..xrRenderSkeletonAnimated.cpp
[error]Line          : 208
[error]Description   : ! MODEL: can't find cycle: 
[error]Arguments     : death_init

Не найдена анимация с именем death_init. Возможно, к модели не подключен нужный .omf


[error]Expression    : BI_NONE!=f_bones.back()
[error]Function      : P_build_Shell
[error]File          : C:projectsxray15xrayxrGamePhysicsShell.cpp
[error]Line          : 136
[error]Description   : wrong fixed bone

Имя кости, используемой для фиксации модели, отличается от указанного в соответствующем поле LE. Например, в модели кость носит имя link1, а для физического объекта в редакторе уровней было указано имя link.


[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : C:projectsxray15xrayxrServerEntitiesscript_engine.cpp
[error]Line          : 192
[error]Description   : <no expression>
[error]Arguments     : LUA error: x:gamedatascriptsph_door.script:36: attempt to index field 'joint' (a nil value)

Ошибка возникла, когда в модели двери все кости имели тип rigid. Но для двери или ворот хотя бы одна кость должна иметь тип joint, чтобы дверь могла открываться.


Expression    : fs
Function      : CResourceManager::_CreateVS
File          : E:priquelsourcesengineLayersxrRenderResourceManager_Resources.cpp
Line          : 203
Description   : shader file doesnt exist
Arguments     : x:gamedatashadersr2deffer_impl_lmh_bump-hq.vs

Expression    : R
Function      : CResourceManager::_CreatePS
File          : E:priquelsourcesengineLayersxrRenderResourceManager_Resources.cpp
Line          : 309
Description   : x:gamedatashadersr2deffer_impl_lmh_bump.ps

Конкретно эти ошибки вылезают в ЧН при попытке запуска на втором рендере, если геометрия уровня скомпилирована на низких настройках.
Чтобы игра не валилась, нужно подсунуть те файлы, что она хочет. Доподлинно неизвестно, что должно было быть в этих шейдерах, так что по ссылке .ps/.vs с обычными инклюдами внутри.


[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:priquelsourcesenginexrServerEntitiesscript_engine.cpp
[error]Line          : 180
[error]Description   : <no expression>
[error]Arguments     : LUA error: x:gamedatascripts_g.script:973: bad argument #2 to 'format' (string expected, got nil)

Самый мерзкий и жопошный вылет, который указывает только на то, что игра вылетела, но не на причину креша. Возникает потому, что в релизной версии игры разрабы отрубили команды log и assert. В качестве костыля можно использовать такие решения: [1], [2]


[error]Expression    : !save_guid || (*save_guid == header().guid()) || ignore_save_incompatibility()
[error]Function      : CALifeSpawnRegistry::load
[error]File          : E:priquelsourcesenginexrGamealife_spawn_registry.cpp
[error]Line          : 110
[error]Description   : Saved game doesn't correspond to the spawn : DELETE SAVED GAME!

Файл сохранения не соответствует спавну, нужно пересобрать спавн. Можно обойти ключом -ignore_save_incompatibility, в таком случае спавн будет соответствовать учтённому в сохранении.


[error]Expression    : cross_table().header().level_guid() == level_graph().header().guid()
[error]Function      : CAI_Space::load
[error]File          : ai_space.cpp
[error]Line          : 110
[error]Description   : cross_table doesn't correspond to the AI-map

Аналогично предыдущему вылету: данные из спавна не соответствуют новой ИИ-сетке. Нужно пересобрать спавн.


Expression : fatal error
Function : out_of_memory_handler
File : .xrDebugNew.cpp
Line : 318
Description : <no expression>
Arguments : Out of memory. Memory request: 3506347 K

Движок пытается прочесть какой-то левый архив или просто файл с расширением сталкирского архива (*.db, *.xdb). Подробности тут

Симуляция

[error]Expression    : m_path
[error]Function      : CPatrolPathParams::CPatrolPathParams
[error]File          : patrol_path_params.cpp
[error]Line          : 19
[error]Description   : There is no patrol path
[error]Arguments     : esc_hit_point

На уровне отсутствует точка пути esc_hit_point.

! [LUA][ERROR] ERROR: There is no kamp path in smart[esc_pigsty_ruins_st_01]

В лагере отсутствуют точки пути с постфиксом _kamp_N. Нужно добавить как минимум одну _kamp_N и _kamp_N_task, где N — порядковый номер от 1.


! [LUA][ERROR] ERROR: Insufficient smart_terrain jobs test_smartterrain

В лагере трётся слишком много народу. Нужно либо уменьшить количество групп (faction_*.ltx), либо уменьшить количество персонажей в группе (squad_descr_*.ltx), либо (что правильнее) создать в смарте дополнительные работы, чтобы бездельники смогли их занять.


[error]Expression    : vertex || show_restrictions(m_object)
[error]Function      : CPatrolPathManager::select_point
[error]File          : patrol_path_manager.cpp
[error]Line          : 155
[error]Description   : any vertex in patrol path [esc_south_checkpoint_st_patrol_2_walk] is inaccessible for object [sim_default_military_00323]

Похоже, что точки пути patrol находятся вне рестриктора, накрывающего смарт, и неписи не могут попасть на работу. Нужно расширить рестриктор, чтобы он накрывал эти точки.


! [LUA][ERROR] ERROR: 'Attempt to read a non-existant string field 'npc' in section 'esc_flesh_generic'

Не очень вразумительный лог, который в одном из случаев указывал на то, что в faction_monster.ltx в секции [start_position] указано имя, которое не существует в squad_descr_*.ltx.


[error]Expression    : vertex || show_restrictions(m_object)
[error]Function      : CPatrolPathManager::select_point
[error]File          : patrol_path_manager.cpp
[error]Line          : 155
[error]Description   : any vertex in patrol path [esc_granary_st_kamp_1_task] is inaccessible for object [sim_default_bandit_00413]

Такая ошибка была, когда одной из аномалий в пределах смарта задали тип рестриктора OUT. При этом путь esc_granary_st_kamp_1_task состоит из одной точки, и совершенно точно не входит в шейп аномалии. Нужно объяснение.


! [LUA][ERROR] ERROR: object 'esc_wolf' configuration file [logicescwolf.ltx] NOT FOUND or section [logic] isn't assigned

В конфиге персонажа отсутствует секция [logic], или же отсутствует сам конфиг. Однако была ситуация, когда такой вылет возникал из-за того, что в настройках смарта дублировалась ссылка на этот конфиг в секции эксклюзивных работ.


[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : ..xrServerEntitiesscript_engine.cpp
[error]Line          : 192
[error]Description   : <no expression>
[error]Arguments     : LUA error: x:gamedatascriptssim_faction_brain_mutant.script:90: attempt to index field '?' (a nil value)

Такая ошибка вылезла, когда на карту был добавлен спейсрестриктор без каких-либо настроек.


[error]Expression    : level_graph->valid_vertex_id(m_level_vertex_id)
[error]Function      : CPatrolPoint::verify_vertex_id
[error]File          : C:xrayxrGamepatrol_point.cpp
[error]Line          : 46

! Patrol point wp00 in path esc_atp_st_guard_4_walk is not on the level graph vertex!

Точка пути находится не на ИИ-сетке. Необходимо либо подвинуть точку, либо проложить ноды ИИ-сетки под ней. Такую ошибку можно увидеть лишь в отладочной сборке, в релизной же выдаётся лог ниже.


[error]Expression    : !object->used_ai_locations() || ai().level_graph().valid_vertex_id(object->m_tNodeID)
[error]Function      : CALifeSwitchManager::add_online
[error]File          : X:xrayxrGamealife_switch_manager.cpp
[error]Line          : 64
[error]Description   : Invalid vertex for object
[error]Arguments     : sim_default_military_1_sniper1561

Сам по себе лог малоинформативен и указывает лишь на то, что персонаж оказался вне ИИ-сетки. Причиной этого вылета может быть то, что точка пути (вейпойнт), на которой заспавнился персонаж, находится не на ИИ-сетке. См. описание выше.

Сетевая игра

[error]Expression    : rpoints[0].size()
[error]Function      : game_sv_Deathmatch::Create
[error]File          : game_sv_deathmatch.cpp
[error]Line          : 101
[error]Description   : rpoints for players not found

На карте отсутствуют точки респавна для игроков.

Содержание

  1. Причины вылетов игры (разбираем логи)
  2. Материал из S.T.A.L.K.E.R. Inside Wiki
  3. Безлоговый вылет
  4. Справочник вылетов (Line 401 -)
  5. Questions

Причины вылетов игры (разбираем логи)

Материал из 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. Также, безлоговые вылеты происходят из-за ошибок в диалогах.

Источник

Справочник вылетов (Line 401 -)

Questions

Причина :

В _g.script есть набор колбеков, вызываемые движком. Это on_actor_psy, on_actor_radiation и т.д. Так вот вылет говорит о том, что один из таких колбеков не был найден.

Лечение :

Верните колбеки на место или верните дефолтный _g.script.

При инициализации архива игра использует функцию WinAPI CreateFileA, при этом вызов выглядит примерно так:

Если при этом функция вернула значение, равное INVALID_HANDLE_VALUE (т.е. вызов завершился неудачей), то возникает данный вылет. Наиболее вероятная причина — у вас отсутствуют права на чтение файла.

После успешного открытия файла-архива, игра пытается спроецировать его в память. Для этого используется функция CreateFileMapping, вызов которой происходит следующим образом:

Вылет происходит из-за того, что попытка проецирования файла закончилась неудачно, т.е. функция возвратила значение =INVALID_HANDLE_VALUE. Возможно, стоит увеличить размер файла подкачки.

Причина :

Это один из «старейших» вылетов в Сталкере ТЧ. В каком-то ui файле .xml динамично образуются «пустые» строки. Также не лишним будет проверить .xml файлы на наличие синтаксических ошибок или пустую строку текста или даже неправильный язык кодирования.
Также данный вылет возможен, когда в сообщение делаешь цветной текст и переносишь строку. Пример:

Если это произошло, «передвиньте» символ переноса следующим образом:

И ещё, такой вылет, как говорили давно разработчики, связан с использованием «трейнеров».

Вот так сюрприз — архив оказался пустым! То есть совсем пустым — размер файла в байтах равен нулю. Будьте в следующий раз аккуратнее с клавишей Delete и не открывайте без необходимости файлы для записи ;).
Переустановка игры должна исправить положение.

Я бы не сказал, что вылет достаточно редкий. Причина его — движок пытается скопировать исходную строку в буфер, а размер этого буфера меньше длины копируемой строки. Рано или поздно возникает у тех, кто любит писать в одну строку конфига ОЧЕНЬ много (больше 4К) символов. Например, он прекрасно знаком любителям хитроумных скриптов на подмену секций оружия, которые запихивают все их названия в mp_ranks

Причина: может быть связанно с геометрией уровня (частично это подтверждается тем, что Свалка и Агропром (которые базируются на ЧН версии) работают сполне нормально, а вот Тёмная Лощина и Кордон (которые «вытянуты» из ТЧ) не запускаются и игра вылетает с этим логом).

Решение: Сменить рендер. Я такой вылет получил на DirectX 9.0c, на 9.0 и статическом освещении у меня его не было.

Причина :

Данный вылет, в отличии от аналогичного 172, говорит более конкретно — не хватает элемента слота, в данном случае для ножа, в файле inventory_new(16).xml. Раньше вылет был наверно следствие кривых рук, уж простите, сейчас же с появлением движковых правок добавляющих новые слоты вполне естественен.

Лечение :

Добавьте недостающий элемент по аналогии с имеющимися.

Причина :

Нехватка памяти для обработки указанной текстуры. Вместо текстуры может быть практически любой файл: звук, модель, all.spawn, файл геометрии локации и т.д.

Лечение :

Попробуйте загрузить последнее сохранение. Если не помогает — снизьте графические настройки игры.

Возникает рандомно и жалуется на любые текстуры, то бишь не на какую-нибудь конкретную свежедобавленную, а вообще на любые.

Есть подозрение, что движок вылетает при построении мипмапов (mipmaps — масштабных копий) текстур. Чтобы уменьшить кол-во занимаемой видеопамяти (и нагрузку на движок в целом) крайне рекомендуется делать текстуры с мипмапами. Даже если текстура одной размерности (н-р 512*512) без них, все равно движок строит масштабные копии сам (256*256 . и вплоть до 1*1). Попытки оптимизации текстур без учета этого, приводят к существенному росту нагрузки, вплоть до вылетов.

Достаточно хитрая разновидность вылета в ЧНЗП, возникающая при попытке добавления нового апгрейда. Можно очень долго сидеть и чесать голову, почему из двух секций, расположенных рядом в одном файле, одна читается, а вторая — нет.

Лечение:
По умолчанию в ЧН/ЗП все конфиги апгрейдов необходимо инклудить в две(!) ветки. Первая берет начало в system.ltx, вторая — в item_upgrades.ltx.
Кроме того, можно заставить игру обходиться без инклудов файлов во вторую ветку. Для этого в файле inventory_upgrades.script необходимо найти строку

и заменить её на

Причина :

Попытка вставить в слот предмет который в этот слот не влезает, т.е. у предмета inv_grid_width и inv_grid_height больше чем слот.

Лечение :

Найти и исправить ошибку.

Причина :

Неправильно указано имя кости для артефакта.

Лечение :

В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в SDK и выяснением имени косточки с занесением в конфиг. Если «не дружите» с SDK, то можете воспользоваться вот этим perl-скриптом: ссылка, распаковываете архив и кидаете .ogf файл на батник, появиться текстовый файл с весьма подробным описанием модели, где среди прочего будут имена костей.

Фактически, это — 3 разновидности одного вылета. Начать надо с того, что в игре существует возможность назначения цвета тексту путем специальной служебной последовательности символов внутри этого текста. Эта последовательность имеет вид %с[color], где color может быть либо текстовым названием цвета, либо четырьмя разделенными запятыми числами, задающими цвет в формате RGBA. Если цвет задан некорректно — то мы имеем счастье наблюдать один из вышеуказанных вылетов.

Лечение:
Найти некорректно заданный цвет, и исправить

P.S.Вообще, у этого вида вылетов долгая и захватывающая история. Как оказалось, почти ВСЕ строки в игре подвержены подобному «разукрашиванию». Не стали исключением и строки сообщений, отправляемые в чат игроками в мультиплеере. Из-за этого любой игрок получил возможность введением специальным образом заданного сообщения устроить на сервере вылет у всех игроков сразу.

Причина :

В SDK в меню Motion в поле Motion reference присоединили больше массивов анимации, чем поддерживает движок. Для ТЧ это 3 массива, для ЧН/ЗП — 4 или 5( не проверено).

Лечение :

Исправить количество прописанных файлов анимации у модели посредством SDK.

Причина :

Игра не может найти указанный файл с анимациями.

Лечение :

Проверьте правильность написание имени файла и его пути. Либо найдите и удалите/исправьте модель, которая использует данный файл анимаций.

Причина :

Если в ошибке указано имя функции, то игра не может определить данную функцию в указанном файле. Причин на это три: либо её действительно нет; либо её имя написано с ошибкой; либо в некоторых случаях, функция находится ниже по коду от того места, где идёт её вызов.
Если же в ошибке указано имя файла, то либо файла не существует (возможно неправильное имя файла), либо в указанном файле синтаксическая ошибка.

Лечение :

Найти и исправить ошибку.

Причина:
В одном из скриптов Вы пытаетесь выполнять арифметические операции со строкой либо сравнивать её с числом .

Лечение:
Возможно, вы забыли вызвать tostring, либо вместо операции ‘..’ (конкатенация строк) использовали ‘+’ (сложение чисел).
Если ничего из вышеописанного вы не делали, то так как LUA — язык с динамической типизацией, вполне возможно, что что-то изменило тип вашей переменной

Возможен и такой вариант вылета при отсутствующей функции

Вылет ЗП:

Причина: как правило, ошибки в описаниях анимаций в точках look вей-поинтов.

Лечение: внимательность, внимательность и еще раз внимательность.

Возникает на этапе загрузки игры.

Возможная причина:
Что-то намудрили с анимациями объекта. Возможно, число костей в объекте не соответствует числу костей в анимации (например, прописан путь к чужому ОМФу). Также может возникать, если перемудрить с настройками костей в АЕ.
Кроме того, если нам посчастливится (например, я наблюдал это при попытке экспортить ОМФ с худовыми анимациями рук с использованием «родной» ЧНовской их модели, пропущенной через всем известным «конвертер всего и вся»), то можем увидеть такое:

Кстати, вызывать вылеты «Out of memory» может и некорректно собранный игровой db-архив. Причина может быть в файлах, подвергшихся паковке. Например, будем получать вылет по памяти при попытке упаковать файлы револьвера GP100 из Gosuke Weapon Mod для ЧН. Другой пример — когда-то давно в ТЧ мной было замечено подобное поведение при попытке подсунуть игре db-шники с «чужой» локалью.

Лечение:
Будьте внимательнее.

Возможно повреждение игрового архива (например, возникнет, если «забыть» указать entry_point в хидере)

Причина : вылет скорее всего связан с функцией формирования лога игры, и может возникать по разным причинам, но чаще всего
когда в какую то движковую функцию был передан nil или же когда в конфиге указаны пустые значения.

Пример #1: Вызвать движковую функцию установки метки на карту, и забыть этой функции передать текст с описанием (nil)
Пример #2: В конфиге предмета указать пустое имя » inv_name = » — при попытке взять предмет появиться вылет.
Лечение : найти источник вылета и устранить его.

Жук появляется сразу после проверки диска,где зелёная заставка, т.е игра даже не включается.

Причина
Накопление очень большого объёма сейвов (У меня их было 1600,или же 3200 файлов,т.е 1.6 гигабайта(!))

Решение

удалите ПОЧТИ все свои сейвы,оставьте штуки 2-3,что бы продолжить играть.

Источник

FATAL ERROR

Цитата

[error]Expression : fatal error
[error]Function : X:stalker_addonsourcestrunkeditorsLevelEditorEditELight.cpp
[error]File : X:stalker_addonsourcestrunkeditorsLevelEditorEditELight.cpp
[error]Line : 126
[error]Description : <no expression>
[error]Arguments : THROW

Причина: данный вылет происходит в основном на СДК 0.7. Причина: освещение на локациях ТЧ несколько отличается от ЗП.

Лечение: удалить файл light.part из папки с уровнем по адресу rawdata/levels/ваша_локация.

Прим: как создать освещение снова: в СДК переключаемся на вкладку light и добавляем его в любое место на карте, после откроем вкладку glow и добавте рядом с лайтом glow текстуру (когда вы ёё добавите, перед вами будет белый прямоугольник, надо назначить текстуру нашему глоу, лучший вариант это glow_04.dds).
Вылет происходит когда в gamedat-e СДК слишком много текстур или они не правельно распределенны по папкам.

Цитата

[error]Expression : assertion failed
[error]Function : X:stalker_addonsourcestrunkxrCoreFS.h
[error]File : X:stalker_addonsourcestrunkxrCoreFS.h
[error]Line : 278
[error]Description : (Pos<=Size) && (Pos>=0)

Причина: в папке текстур есть неверные тшм файлы, не соответствующие размеру текстуры.


Лечение: просто нажмите «Продолжить».

Цитата

Expression : assertion failed
Function : CGraphMerger::CGraphMerger
File : D:prog_repositorysourcestrunkutilsxrAIxr_graph_merge.cpp
Line : 597
Description : tpGraphs.size()

Причина: возникает из-за того, что локация не прописана в конфигах.


Лечение: прописать локацию в конфигах(game_graphs, game_levels, game_map_single).
 

Цитата

Expression : fatal error
Function : out_of_memory_handler
File : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp
Line : 336
Description : <no expression>
Arguments : Out of memory. Memory request: 81 K

Причина: не хватает оперативной памяти.


Лечение: попробуйте закрыть все окна, программы(кроме компилятора) и повторите операцию. Если не помогло, то надо докупать оперативы в магазине.
 

Цитата

Expression : THM
Function : CBuild::Load
File : D:prog_repositorysourcestrunkutilsxrLCBuild_Load.cpp
Line : 317
Description : f:x-ray cop sdkeditorsgamedatatexturesglowfx_volume1.thm

Причина: нет thm файла нужной текстуры.


Лечение: положить thm файл текстуры (в данном случае fx_volume1.thm) по адресу gamedata/textures/папка_вашей_где_лежит_ваша_текстура.
 

Цитата

Expression : fatal error
Function : CBuild::PreOptimize
File : D:prog_repositorysourcestrunkutilsxrLCxrPreOptimize.cpp
Line : 137
Description : <no expression>
Arguments : * FATAL: 1 invalid faces. Compilation aborted

Причина: кривой полигон на объекте.


Лечение: отредактировать объект в 3D редакторе (3Ds max) или скачать компиляторы от Андрея Непряхина в которых можно обойти инвалит фейсы.
 

Цитата

* New phase started: Verifying level graph
stack trace:

001B:0041C693 xrAI.exe

Причина: не скомпилированна АИ сетка на локации.

Лечение: скомпилировать АИ сетку. smile


 

Цитата

[error]Expression : BT.pSurface
[error]Function : xrLoad
[error]File : D:xray-svnxrLCxrDO_Lightcompiler.cpp
[error]Line : 306
[error]Description : Can’t load surface

Причина: не достаёт много thm текстур.

Лечение: аналогично, как и с Description : f:x-ray cop sdkeditorsgamedatatexturesglowfx_volume1.thm

Прим: см. лог компилятора и добавляйте нужные thm текстуры.


 

Цитата

..Export skeleton geometry (Compute bone bounding volume…)
Bone ‘root’ has invalid shape.
Bone ‘connectbone01’ has invalid shape.
Bone ‘connectbone02’ has invalid shape.
Export failed.

Причина: неправильно выбраны кости для экспорта модели.

Лечение: Когда будете выбирать кости и делать Generate Shape, выбирайте только те кости, к которым есть привязка. В данном случае, выберите все кости, кроме тех что указаны в сообщении ошибки, т.е. root, connectbone01, connectbone02.


 

Цитата

Surface [T:’beltstal2′, S:’modelsmodel’] has UV tiled more than 32 times.
Surface [T:’beltplast_z1′, S:’modelsmodel’] has UV tiled more than 32 times.
..Export skeleton geometry
..Export skeleton geometry (Make Progressive…)
..Export skeleton geometry (Compute bone bounding volume…)
Export complete.


Причина: UV map модификатор у моделей превышает допустимые пределы, либо он не был применён вовсе.

Лечение: Уменьшите UV map, либо примените UV map.

Источник: AMK team.ru


Изменено 31 июля, 2020 пользователем Холод

#1

    Проводник

  • сообщений
    80
  • Имя:Руслан
  • Пол:Мужчина
  • Город:Украина г.Полтава
  • Группировка: Одиночка

Отправлено 23 Январь 2009 — 15:52

Вылеты и их решения

Тут выложены наиболее часто повторяющиеся вылеты и их решения

Остальные обсуждаются тут.

Уважаемые пользователи! В своих постах надо указывать:
1. Версию солянки, с рангами или без, поставлены ли дополнительные примочки поверх солянки.
2. Текст лога при вылете (находится тут:
C:Documents and SettingsAll UsersДокументыstalker-shoclogs). Либо без него.
3. Обстоятельства, при которых произошел вылет.
4. Обязательно указывать конфигурацию компьютера!

И прежде чем задать вопрос, загляните в спойлер шапки темы!

Сборник вылетов и решений уважаемого Odavid с АМК форума

ШПАРГАЛКА
О том, где «находится лог», как «уменьшить switch_distance», как «сохранить через консоль» и т.д.

  • Наверх


#2

Warez

    СуперСтарожил!

  • сообщений
    777
  • Имя:Павел
  • Пол:Мужчина
  • Город:Барнаул, Сибирь
  • Группировка: Одиночка

Отправлено 27 Январь 2009 — 14:58

У меня вылет без лога при переходе на агропром. Высвечивается ошибка винды Unknown software Exection

AMD FX8350\2×8 ГБ ОЗУ\NVIDIA GeForce GTX 670

Windows 8.1 x64 — v 1.0006 SIMBION:SHOC v3.0rc12

skype:warezgibzzz

  • Наверх


#3

Order1987

    Призрак зоны

  • сообщений
    238
  • Пол:Мужчина
  • Группировка: Наемники

Отправлено 27 Январь 2009 — 15:48

Цитата

7)У меня игра часто вылетает при попытке нажатия кнопочки «Взять все» с логом ….Description : entity not found. id_parent=0 id_entity=38917 frame=74256.

Чисто по моим наблюдениям-не «часто»,а всегда,в 100% случаев,если у вас забит инвентарь.Поэтому если видите,что рюкзак под завязку,берите предметы по одному.

Вылеты 12),13)-у меня встречаются наиболее часто.

И ты забыл добавить зависание при загрузке игры на слове «синхронизация».Впрочем,Архара писал,что он так и не нашел причину.

  • Наверх


#4

Кросс

    СуперСтарожил!

  • сообщений
    339
  • Имя:Николай
  • Пол:Мужчина
  • Город:Украина, Мариуполь
  • Группировка: Призрачные волки

Отправлено 28 Январь 2009 — 22:36

У меня был такой вылет когда на Кордоне на АТП всех перебил начал обыскивать всех и один отомстил мне если он похож на выше описуемый то извените но вроде цифры в последней строчке другие я в этом не шарю поэтому отписал:
FATAL ERROR

[error]Expression : e_entity
[error]Function : xrServer::Process_event_reject
[error]File : E:stalkerpatch_1_0004xr_3daxrGamexrServer_process_event_reject.cpp
[error]Line : 12
[error]Description : entity not found. id_parent=0 id_entity=22530 frame=123350

  • Наверх


#5

waylander

    СуперСтарожил!

  • сообщений
    106
  • Имя:Андрей
  • Пол:Мужчина
  • Город:Краснодар
  • Группировка: Одиночка

Отправлено 30 Январь 2009 — 09:05

Кросс-брат,шапку прочти и пост 3 https://forum.stalke…tyle_emoticons/default/ae.gif .
Удачи!
З.Ы. Можешь отклить объём D:ИгрыS.T.A.L.K.E.Rgamedatascripts в файле amk_utils.script RestrictionStock = 1 поставить nil больше таких вылетов быть не должно.

  • Наверх


#6

Ruffians

    Призрак

  • сообщений
    45
  • Имя:Серж
  • Группировка: Наемники

Отправлено 30 Январь 2009 — 19:43

**FATAL***: Too many lmap-textures (limit: 8 textures or 32M).
Reduce pixel density (worse) or use more vertex lighting (better).
вылет в темной долине,у борова в хоромах

  • Наверх


#7

Ruffians

    Призрак

  • сообщений
    45
  • Имя:Серж
  • Группировка: Наемники

Отправлено 01 Февраль 2009 — 20:13

FATAL ERROR

[error]Expression : xml_result
[error]Function : CXML_IdToIndex<class CInfoPortion>::InitInternal
[error]File : e:stalkerpatch_1_0004xr_3daxrgamexml_str_id_loader.h
[error]Line : 162
[error]Description : error while parsing XML file
[error]Arguments : info_freeplay.xml

stack trace:
поставил все вот такой вылет

  • Наверх


#8

Ruffians

    Призрак

  • сообщений
    45
  • Имя:Серж
  • Группировка: Наемники

Отправлено 11 Февраль 2009 — 20:08

FATAL ERROR

[error]Expression : no_assert
[error]Function : CALifeStoryRegistry::add
[error]File : E:stalkerpatch_1_0004xr_3daxrGamealife_story_registry.cpp
[error]Line : 30
[error]Description : Specified story object is already in the Story registry!
С бара на росток вылет.Стоит сборка от сальвадора+допа от 5числа,перчатки и частый респавн

  • Наверх


#9

waylander

    СуперСтарожил!

  • сообщений
    106
  • Имя:Андрей
  • Пол:Мужчина
  • Город:Краснодар
  • Группировка: Одиночка

Отправлено 12 Февраль 2009 — 11:49

Цитата

[error]Description : Specified story object is already in the Story registry!

Посмотрите здесь http://amk-team.ru/forum/index.php?showtop…230&st=2240 пост 2253.
Да, если играете без рангов ,скинте сейвы я попробую,у меня игра работает нормально.
Удачи!

  • Наверх


#10

Ruffians

    Призрак

  • сообщений
    45
  • Имя:Серж
  • Группировка: Наемники

Отправлено 12 Февраль 2009 — 12:38

Поглядел на сайте солянке и сделал как там советуют,снести и заново поставить,играю вот сейчас и хорошо все)))))))

  • Наверх


#11

tom-m15

    СуперСтарожил!

  • сообщений
    3 201
  • Имя:Сергей (Мося)
  • Пол:Мужчина
  • Город:Питер
  • Группировка: Наемники

Отправлено 11 Март 2009 — 13:15

* [x-ray]: crt heap[388844 K], process heap[7266 K], game lua[32614 K], engine lua[183 K], render[4010 K]
* [x-ray]: economy: strings[8242 K], smem[28477 K]
* MEMORY USAGE: 364523 K
* Saving spawns…
* Saving objects…
* [x-ray]: crt heap[359655 K], process heap[7266 K]
* [x-ray]: economy: strings[22856 K], smem[28524 K]

FATAL ERROR

[error]Expression : fatal error
[error]Function : _out_of_memory
[error]File : E:stalkerpatch_1_0004xrCorexrDebugNew.cpp
[error]Line : 359
[error]Description : <no expression>
[error]Arguments : Out of memory. Memory request: 8192 K

stack trace:

Такой вот вылет, насколько я знаю он происходит когда игра не может обработать все текущии операции, но звиняйте у меня оперы 3гб и подкачки еще 4…. Странно…

Сразу видно русский человек. Не ищет легких дорогостоящих путей
Montana

  • Наверх


#12

ReapeR

    Отмычка

  • сообщений
    20
  • Имя:Александр
  • Пол:Мужчина
  • Город:г. Рязань
  • Группировка: Одиночка

Отправлено 11 Март 2009 — 20:01

Ruffians
Где частый респавн скачать, подскажи плиз.
я соляночку с торрента тянул, там его нету…

  • Наверх


#13

tom-m15

    СуперСтарожил!

  • сообщений
    3 201
  • Имя:Сергей (Мося)
  • Пол:Мужчина
  • Город:Питер
  • Группировка: Наемники

Отправлено 12 Март 2009 — 07:26

ReapeR 666
Странно, вообще он должен быть в солянке от 11.01.09

Сразу видно русский человек. Не ищет легких дорогостоящих путей
Montana

  • Наверх


#14

ReapeR

    Отмычка

  • сообщений
    20
  • Имя:Александр
  • Пол:Мужчина
  • Город:г. Рязань
  • Группировка: Одиночка

Отправлено 14 Март 2009 — 21:48

Вот….доигрался…
Сейв на кордоне в лагере нубов))) 5 раз загрузил нормально, на шестой вылет

FATAL ERROR

[error]Expression : data
[error]Function : CVirtualFileReader::CVirtualFileReader
[error]File : E:stalkerpatch_1_0004xrCoreFS.cpp
[error]Line : 462
[error]Description : c:gamess.t.a.l.k.e.rgamedataspawnsall.spawn
[error]Arguments : Not enough storage is available to process this command.

stack trace:

  • Наверх


#15

igor822605

    Вновь прибывший

  • сообщений
    6
  • Имя:Игорь
  • Группировка: Одиночка

Отправлено 19 Март 2009 — 22:16

помогите люди добрые и злые тоже
Expression : fatal error
Function : CScriptEngine::lua_error
File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line : 73
Description : <no expression>
Arguments : LUA error: c:s.t.a.l.k.e.rgamedatascriptssak.script:502: attempt to index field ‘actor’ (a nil value)
вот такая вот загогулина выхожу из пузыря и немогу ни переити на другую (локу знак перехода и иду иду иду ) ни сохраняться ,выбрасывает.

———————————————————————————

  • Наверх


#16

Panadol

    Вновь прибывший

  • сообщений
    5
  • Имя:Дмитрий
  • Группировка: Одиночка

Отправлено 21 Март 2009 — 07:19

Постоянный вылет в заброшенном лесу! При попытке убить какого либо монстра(слепая собака,химера)выбрасывает на стол с таким логом:

FATAL ERROR

[error]Expression : assertion failed
[error]Function : _VertexStream::Lock
[error]File : E:stalkerpatch_1_0004xr_3daR_DStreams.cpp
[error]Line : 44
[error]Description : (bytes_need<=mSize) && vl_Count

stack trace:

РS:Заходил уже несколько раз результат тот же!!!

Сообщение изменено: Panadol (21 Март 2009 — 07:21)

  • Наверх


#17

Например

    Вновь прибывший

  • сообщений
    1
  • Имя:Артём
  • Группировка: Одиночка

Отправлено 23 Март 2009 — 22:39

Уважаемые форумчане, игроки!
Такая проблема — сижу за хорошей, качественной машиной, все идёт как по маслу — хоть тебе полное динамическое освещение, хоть вертикальная синхронизация. Но проходит какое-то время — и игра виснет. Намертво. Task manager не запускается просто (слабо его уронить? (: ) — пишет, не может. Ну альт+таб в окно ошибки запуска тасков в половине случаев отвисания сталкера работает, в других случаях — только жесткая перезагрузка. Что интересно, даже во втором случае система в норме — numlock не висит, но ни на одну, известную мне комбинацию клавиш, не откликается никак. Даже не жужжит приветственно ):

Конфигурация:
Софт:
XP Home — англ. SP3, ломана, проверка пройдена.
Дрова последние на всём
Сталкер — 1.00004, стоит лицензия, запускающаяся через пиратский изошник, зависания были и с чистой версией, продолжаются и сейчас, с последней версией солянки. Зависания были и при игре с установленным сталкером с пиратской изоки и с 1.00004 и с 1.00006, и с кряком и без (старфорс хавал пиратский диск как и без кряка).

Хард:
Ноут — ASUS X59SR (16:10)
Камень — Intel 2166 x2
Видео — ATI Mobility Radeon HD 3470
Память — 3 гб ддр2

Очень напрягает. Спасите? (:

  • Наверх


#18

Lisaa

    СуперСтарожил!

  • сообщений
    6 933
  • Имя:Вася Даниленко
  • Пол:Мужчина
  • Город:Урал, Трёхгорный
  • Группировка: Чебураторы

Отправлено 26 Март 2009 — 10:01

Ну наконецто и у меня первый вылет. При загрузке сэйва исчез с экрана худ шкалы здоровья, выносливрсти и через минуту
Current[0]->sun_dir (0.808504,0.500000,0.310356)
Current́->sun_dir (0.808504,0.500000,0.310356)
! Missing ogg-comment, file: d:gamess.t.a.l.k.e.rgamedatasoundsweaponsgen_empty.ogg
! Missing ogg-comment, file: d:gamess.t.a.l.k.e.rgamedatasoundsweaponsfire02.ogg
* MEMORY USAGE: 314318 K

FATAL ERROR

[error]Expression : fatal error
[error]Function : CInifile::r_string
[error]File : E:stalkerpatch_1_0004xrCoreXr_ini.cpp
[error]Line : 352
[error]Description : <no expression>
[error]Arguments : Can’t find variable ammo_mag_size in [wpn_addon_grenade_launcher]

stack trace:

Если у вас параноя, то это не значит что за вами не следят.
Размещенное изображение

  • Наверх


#19

Lisaa

    СуперСтарожил!

  • сообщений
    6 933
  • Имя:Вася Даниленко
  • Пол:Мужчина
  • Город:Урал, Трёхгорный
  • Группировка: Чебураторы

Отправлено 26 Март 2009 — 15:53

Наверно этот вылет всетаки из-за отсутсвия половины худа. Почему он «слетел» не пойму. Просто после очередной загрузки сохранок получил вот это:

Играть стало невозможно. Даже на предыдущих (задолго) сохранках таже беда…. ХЭЛП !!

(иль начинать сначало?? )

Если у вас параноя, то это не значит что за вами не следят.
Размещенное изображение

  • Наверх


#20

Sektant

    Сталкер

  • сообщений
    61
  • Имя:Серый
  • Группировка: Порождения Зоны

Отправлено 26 Март 2009 — 17:26

Lisaa, у тебя разрешение какое?(в солянке есть папка -адаптация карты под разные моники- попробуй!)
А по вылету..
1.У какого-то НПС есть оружие с заряженым подствольником.
2.У ГГ есть оружие с заряженым подствольником.
Лечение: Найти, разрядить и снять подствол. Обычно помогает.
Ещё как вариант найти секцию этого подствола(wpn_addon_grenade_launcher) и прописать ему
ammo_mag_size = 1.

  • Наверх


Fatal Error Expression No Expression Function в Сталкере – как исправить

Разработчики игры Сталкер оставили для своих пользователей много проблем, которые связаны с вылетом игры. В принципе основная проблема заключается в недоработке игрового движка X-Ray, который зачастую ведет себя очень капризно. В этой статье вы найдете информацию о самых распространенных причинах Fatal Error Expression No Expression Function в Сталкере, а также методах их исправления.

Как исправить ошибку fatal error в сталкер возвращение шрама

Ошибка Fatal Error Expression No Function в STALKER

Как найти ошибку?

Найти лог на системном диске С можно несколькими способами:

Что за ошибка, когда появляется?

Fаtal Error Expression No Function – это фатальная ошибка в Сталкере, которая говорит об отсутствующих функциях, битых файлах игры или нечитаемых библиотеках. Практически всегда ошибку сопровождает полный вылет игрока из игрового пространства. Чаще всего она преследует тех игроков, которые выбирают модифицированные версии «STALKER Тень Чернобыля», например: «Солянка», «Вектор отчуждения», «Конец света» и другие.

Ее появление связано с тем, что движок игры при любом баге в патчах начинает крошиться и вылетать. Стоит сразу же отметить – компьютерная игра STALKER в оригинальной версии имеет идентичные логи с ее модами. Когда происходит сбой «Fаtal Error Exprеssion No Expression Function», то на экране вашего ПК появится окошко «Fatal Error» с указанием файла, который дал сбой.

Причины возникающих ошибок

Как мы уже упомянули выше, основной причиной ошибки является некачественная разработка движка. Если углубиться в суть возникающих проблем, то встречаются следующие самые распространенные причины их появления:

Пути решения ошибок

К уже оглашенным выше способам решения «Fatal Error Expression No Expression Function в Сталкере» можно отнести следующие популярные:

Источник

Как исправить ошибку fatal error в сталкер возвращение шрамаКак исправить ошибку fatal error в сталкер возвращение шрама Как исправить ошибку fatal error в сталкер возвращение шрама

Собрал в кучу наиболее частые вылеты встречающиеся в ВШ+кумпатч 3.

Чтобы как-то облегчить жизнь игрокам, выкладываю сборник вылетов и решения :

Description : c:program filess.t.a.l.k.e.r. Aica?auaiea O?aiagamedatatexturesuiars_ui_npc.dds

Arguments : Not enough storage is available to process this command.

Expression : error handler is invoked!

Description : std: out of memory

Ставь все настройки графики на минимум. Не хватает видеопамяти.

[error]Description : there is no specified level in the game graph : 205

[error]Expression : Ran out of memory

[error]Description : D3DXCreateTextureFromFileInMemoryEx ( HW.pDevice,S->pointer(),S->length(), D3DX_DEFAULT,D3DX_DEFAULT, IMG.MipLevels,0, IMG.Format, D3DPOOL_SYSTEMMEM, D3DX_DEFAULT, D3DX_DEFAULT, 0,&IMG,0, &T_sysmem )

Нехватка памяти. Настройки графики на минимум.

При переходе на другую локацию:

Expression : assertion failed

При попытке съесть (консерву, батон и т.д.) из рюкзака убиенного:

Expression : assertion failed

[error]Expression : fatal error

Уменьши switch_distance до 10.

Что-то попало за пределы АИ сетки. Попробуй переиграть с предыдущего сейва. Если не поможет то в файле alife.ltx путь gamedata/config меняй параметр switch_distance на 10. Также если вылетает по рендеру xrRender_R1.dll то попробуй перейти на динамическое освещение.

! error in stalker with visual newsold_verm_obergefr

001B:00466222 XR_3DA.exe, CKinematicsAnimated::Pl

Вылет по кривой модели наемника в нацисткой форме. Попробуй перезайти на локацию (или загрузить автосейв перехода на ДТ) или снижай switch_distance до 10.

Function : CXML_IdToIndex ::GetById

Description : item not found, id

Вот ответ автора мода :

[error]Expression : fatal error

[error]Arguments : LUA error: attempt to index a nil value

Подземка на Припять. И еще когда пользуешся огнеметом виснет игра, так же в подземке.

Понизь граф.настройки на минимум, переключись на статическое освещение и переиграй от захода в подземку.

[error]Expression : error handler is invoked!

Причина: подобный вылет говорит о том, что в игре инициализируется некий объект у которого в параметрах присутствует некорректное значение (например нулевое).

Лечение: искать в конфигах некорректно прописанную строку. Ошибка очень редка и без рабочего сейва, на котором эта ошибка воспроизводится, устранить ее не представляется возможным.

Похоже лучше всего переустановить всё начиная со Сталкер ТЧ.

Источник

Как исправить ошибку fatal error в сталкер возвращение шрама

Как исправить ошибку fatal error в сталкер возвращение шрамаКак исправить ошибку fatal error в сталкер возвращение шрама Как исправить ошибку fatal error в сталкер возвращение шрама

Собрал в кучу наиболее частые вылеты встречающиеся в ВШ+кумпатч 3.

Чтобы как-то облегчить жизнь игрокам, выкладываю сборник вылетов и решения :

Description : c:program filess.t.a.l.k.e.r. Aica?auaiea O?aiagamedatatexturesuiars_ui_npc.dds

Arguments : Not enough storage is available to process this command.

Expression : error handler is invoked!

Description : std: out of memory

Ставь все настройки графики на минимум. Не хватает видеопамяти.

[error]Description : there is no specified level in the game graph : 205

[error]Expression : Ran out of memory

[error]Description : D3DXCreateTextureFromFileInMemoryEx ( HW.pDevice,S->pointer(),S->length(), D3DX_DEFAULT,D3DX_DEFAULT, IMG.MipLevels,0, IMG.Format, D3DPOOL_SYSTEMMEM, D3DX_DEFAULT, D3DX_DEFAULT, 0,&IMG,0, &T_sysmem )

Нехватка памяти. Настройки графики на минимум.

При переходе на другую локацию:

Expression : assertion failed

При попытке съесть (консерву, батон и т.д.) из рюкзака убиенного:

Expression : assertion failed

[error]Expression : fatal error

Уменьши switch_distance до 10.

Что-то попало за пределы АИ сетки. Попробуй переиграть с предыдущего сейва. Если не поможет то в файле alife.ltx путь gamedata/config меняй параметр switch_distance на 10. Также если вылетает по рендеру xrRender_R1.dll то попробуй перейти на динамическое освещение.

! error in stalker with visual newsold_verm_obergefr

001B:00466222 XR_3DA.exe, CKinematicsAnimated::Pl

Вылет по кривой модели наемника в нацисткой форме. Попробуй перезайти на локацию (или загрузить автосейв перехода на ДТ) или снижай switch_distance до 10.

Function : CXML_IdToIndex ::GetById

Description : item not found, id

Вот ответ автора мода :

[error]Expression : fatal error

[error]Arguments : LUA error: attempt to index a nil value

Подземка на Припять. И еще когда пользуешся огнеметом виснет игра, так же в подземке.

Понизь граф.настройки на минимум, переключись на статическое освещение и переиграй от захода в подземку.

[error]Expression : error handler is invoked!

Причина: подобный вылет говорит о том, что в игре инициализируется некий объект у которого в параметрах присутствует некорректное значение (например нулевое).

Лечение: искать в конфигах некорректно прописанную строку. Ошибка очень редка и без рабочего сейва, на котором эта ошибка воспроизводится, устранить ее не представляется возможным.

Похоже лучше всего переустановить всё начиная со Сталкер ТЧ.

Источник

Как исправить ошибку fatal error в сталкер возвращение шрама

Как исправить ошибку fatal error в сталкер возвращение шрама

Возвращение Шрама 2

(распакованная версия, без установщика)

(запакованная версия, установщик)

(репак с торрент установщиком)

Для распаковки архива используем 7zip архиватор.
Как исправить ошибку fatal error в сталкер возвращение шрама
Если xrЕngine.exe выдает что отсутствует файл VCRUNTIME140_1.dll. Установите пакет софта по ссылке выше, перезагрузите ПК. Файл (vcruntime140.dll) является компонентом Visual C++ Redistributable for Visual Studio 2015.

Как вариант скачать и установить пакет библиотек c 2015 по 2019 год включая установку и 64-bit и 84-bit.

Если запуск невозможен при аналогичных проблемах нехватки dll, вот дополнительный список, где какие находятся и какой Microsoft Visual C++ качать и устанавливать

Как исправить ошибку fatal error в сталкер возвращение шрама

Как исправить ошибку fatal error в сталкер возвращение шрама
Как исправить ошибку fatal error в сталкер возвращение шрама
Если возникает ошибка после того, как переустановили игру с модом или установили фикс (смотреть скриншот). Удаляем файл user.ltx, запускаем игру и перенастраиваем графику (файл находится в папке _appdata_ в репаке игры с модом). Так-же делаем эту процедуру при возникновении данной ошибки.

Как исправить ошибку fatal error в сталкер возвращение шрама
Как исправить ошибку fatal error в сталкер возвращение шрама
Ошибка Windows (Cannot init API from dbghelp.dll), попробуйте перезагрузить ПК (иногда такие вылеты случаются из-за проблем на Windows). Для более конкретного изучения, потребуется рассмотреть дамп ошибки специализированным софтом (например Blue Screen View). Как правило данная ошибка может означать, что пора переустановить Windows, либо изучив дамп ошибки удалить конфликтующий софт с ПК, либо проблема может решиться установкой более новых драйверов на комплектующие, в первую очередь обратить внимание на драйвера видеокарты, проблема может быть так-же из-за звука, установить OpenAL.

Как исправить ошибку fatal error в сталкер возвращение шрама
Как исправить ошибку fatal error в сталкер возвращение шрама
Данная ошибка (смотреть скриншот) возникает по причине не установленного OpenAL. Установите OpenAL, из пакета софта по ссылке выше, перезагрузите ПК.

Как исправить ошибку fatal error в сталкер возвращение шрама
Как исправить ошибку fatal error в сталкер возвращение шрама
Решение проблем в самой игре
Как исправить ошибку fatal error в сталкер возвращение шрама
Если меню кривое, а на миникарте никто не отображается.

Попробовать сбросить настройки по умолчанию.
Как исправить ошибку fatal error в сталкер возвращение шрама
Если произошел вылет при игре

2. Установить максимальное освещение в игре (вылета может и не быть, но текстура будет косячной)

3. Скачать правку на восстановление первоначального файла shaders.xr (после установки может потребоваться удаление файла user, для перенастройки графики)

Как исправить ошибку fatal error в сталкер возвращение шрама
Как исправить ошибку fatal error в сталкер возвращение шрама
Данный вылет (смотреть скриншот) как правило происходит если NPC теряет путь движения (в частности замечено когда бабка идет дефузить мины у военсталкеров, доходит до второго дерева от дома и вылет).

Решение: переигрывать с более раннего сейва.

Источник

Понравилась статья? Поделить с друзьями:
  • Error exportarchive no signing certificate ios distribution found
  • Error failed building wheel for python ldap
  • Error failed building wheel for pytelegrambotapi
  • Error failed building wheel for pygraphviz
  • Error failed building wheel for pycuda