Сталкер call of chernobyl вылетает при сохранении.

Описание:
Создание модификаций - дело кропотливое, разработчик может допустить ошибку при написании кода, а может что-то забыть положить в игровые архивы. В подобных ситуациях происходят фатальные ошибки, и как следствие - игра вылетает. Сразу же после вылета движок игры отправляет в буфер обмена(После вылета необходимо в любое текстовое после вставить текст из буфера обмена), а так же в специальный файл (C:\Users\Public\Documents\stalker-shoc\logs (Пример для Теней Чернобыля)) описание ошибки, где и содержится отладочная информация. Дабы упростить разработчикам процесс отладки - была создана данная статья. Для удобство наш FAQ был разбит не несколько частей, где ошибки расписаны по мере возрастания числа в строке "Line" (Автор справочника - пользователи AMK форума).

Пример:
Expression: e_parent
File: E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_process_event_reject.cpp
Line: 11
Description: parent not found. id_parent=110 id_entity=117 frame=1791
Причина:
Возникает иногда произвольно при смерти неписей. Движок отрабатывая лут изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.
Решение:


Пример:
Expression: e_entity Function: xrServer::Process_event_reject File: E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp Line: 12 Description: entity not found. id_parent=7540 id_entity=44047 frame=2075050
Причина:
Возникает иногда произвольно при смерти неписей. Движок отрабатывая лут изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет
Решение:
Попробуйте загрузить последнее сохранение.

Пример:
Expression: e_entity Function: xrServer::Process_event_reject File: E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_process_event_reject.cpp Line: 12 Description: entity not found.
Причина:
Ошибка 1.0004 патча.
Решение:
Исправляется установкой более Новой версии патча для ТЧ.

Пример:
Function: xrServer::Process_event_reject File: E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp Line: 12 Description: e_parent && e_entity
Причина:
Непись умер во время торговли или гранатометания, а движок не успел до удаления серверного объекта непися отрегистрировать его лут. Также происходит во время попытки удаления или смены владельца уже удаленного объекта.
Решение:
В death_manager.script нужно заменить строки:
alife():release(alife():object(item:id()), true)
на
local obj = item and item:id()and alife():object(item:id()) if obj then alife():release(obj, true) end

Пример:
Expression: assertion failed Function: xrServer::Perform_destroy File: D:\prog_repository\sources\trunk\xrGame\xrServer_sls_clear.cpp Line: 12 Description: object->ID_Parent == 0xffff stack trace:
Аналогично, подобное может происходить и в ДРУГИХ скриптах. Лечить - добавив такую же проверку.
Причина: открытый инвентарный ящик пытается уйти в офлайн (например, при "телепортации" актора).
Лечение: Необходимо переводить в оффлайн-онлайн сам инвентарный ящик

Alife ():set_switch_online (sobj.parent_id, false) alife ():set_switch_offline (sobj.parent_id, true)


Пример:
Expression: ini->section_exist(imm_sect)
Function: CHitImmunity::LoadImmunities
File: E:\stalker\patch_1_0004\xr_3da\xrGame\hit_immunity.cpp
Line: 22
Description: hunter_novice_resistance
Причина:
Ошибка в секции иммунитета, скорее всего костюма.
Решение:
Поиском по файлам игры найти указанную секцию и проверить правильность её написания, а также её наличие в принципе.


Пример:
Expression: assertion failed Function: xrServer::Process_event_ownership File: E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_ownership.cpp Line: 23 Description: e_parent
Причина:
При обработке события связанного с "обладаемым" предметом - сам объект (parent) не был обнаружен.
Такое порой случается, когда или объект удаляется из игры без требуемой отрегистрации. Например, порой НПС, стреляя из ствола (отыгрываются партиклы), попав в аномалию, разрывается - сервер должен продолжить иль прекратить огонь из оружия -> ищет по владельцу стреляющий ствол и... не находит.
Решение:
Вылет вряд ли может быть стабильным, поэтому иногда достаточно просто загрузить последнее сохранение.
А бороться можно только выверяя все коды, в которых удаляются предметы/объекты на предмет необходимых отрегистраций и снижать заселяемость локаций. Чем меньше неписей/монстров - тем меньше вероятность такой коллизии.


Пример:
Expression: e_entity->ID_Parent == id_parent
Function: xrServer::Process_event_reject
File: E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp
Line: 24
Description: device_pda23827
Arguments: gar_stalker_respawn_123826
Причина:
Description и Arguments как правило разные. Вылет движковый и достаточно редкий. Случается тогда, когда движок пытается присвоить parent предмету, в данном случае device_pda23827, непесю (gar_stalker_respawn_123826), а предмет УЖЕ принадлежит ему, т.е. device_pda23827:parent() == gar_stalker_respawn_123826:id()


Пример:
Expression: !hud_snd.sounds.empty()
Function: HUD_SOUND::LoadSound
File: E:\stalker\patch_1_0004\xr_3da\xrGame\HudSound.cpp
Line: 27
Description: there is no sounds for:
Arguments: wpn_rpg7
Причина:
Количество прописанных звуков в секции указанного оружия не соответствует количеству звуков класса прописанного там же.
Решение:
Проверьте соответствие класса оружия и количества звуков на примере оригинальных файлов.


Пример:
Expression: no_assert
Function: CALifeStoryRegistry::add
File: E:\stalker\patch_1_0004\xr_3da\xrGame\alife_story_registry.cpp
Line: 30
Description: Specified story object is already in the Story registry!
Причина:
Игра определила одинаковые story_id для двух и более объектов. Возникнуть это может в нескольких случаях:
1. Более явная причина: в all.spawn либо скриптом разным объектам присвоен один и тот же story_id;
2. При изменениях в спавне, т.е. добавлении или удалении секций, происходит переиндексация и секции, которые после добавленой/убавленной - получают иные индексы. В модах, в которых происходит спавн объектов по индексам из all.spawn"a (alife():create(индекс_из_all_spawn)), а это АМК, моды на его основе и не только, происходит ошибочное удаление (не того объекта) и соответственно дублированный спавн не удаленного объекта - вот вам и дублированный сид.
Решение:
1. Найти поиском дублированные сиды и сделать их разными;
2. Добавлять секции в all.spawn исключительно с индексами превышающими максимальный в принципе в all.spawn, а не в файле. В случае удаления ситуация сложнее. Если всё же нужно избавиться от объекта в all.spawn, удаляйте его скриптом, тем самым не нарушая последовательность индексации.


Пример:
Expression: res!=-1
Function: get_rank
File: E:\stalker\patch_1_0004\xr_3da\xrGame\ui\Restrictions.cpp
Line: 34
Description: cannot find rank for
Arguments: wpn_rem870short
Причина:
Указанное оружие, в данном случае wpn_rem870short, не прописано в mp_ranks.ltx.
Решение:
Добавить оружие в секции по аналогии с имеющимися. Либо избавиться от вылета на совсем посредством правки dll.

Пример:
Expression: fatal error
Function: weapon_hud_value::load
File: E:\stalker\patch_1_0004\xr_3da\xrGame\WeaponHUD.cpp
Line: 34
Description:
Arguments: There is no "muzzle" bone for weapon "wpn_usp_hud".
Причина:
В указанной секции оружия (обычно это худ-модель), в данном случае wpn_usp_hud, для параметра fire_bone указана неверная кость (muzzle).
Решение:
Найти и исправить ошибку.


Пример:
Expression: assertion failed
Function: CLevelGraph::CLevelGraph
File: E:\stalker\patch_1_0004\xr_3da\xrGame\level_graph.cpp
Line: 35
Description: header().version() == XRAI_CURRENT_VERSION
Причина:
Файл level.gct не соответствует game.graph, скорее всего файлы из разных частей частей игры, т.к. возникает зачастую во время переноса локаций из одной части игры (билды в том числе) в другую.
Решение:
Проверьте соответствие файлов.


Пример:
Expression: fatal error
File: E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_process_update.cpp
Line: 37
Description:
Arguments: Beer from the creator of "WP_SHOTG"
Причина:
Вылет движковый и рандомный. Название класса может быть другим: O_ACTOR, S_ACTOR, AI_CROW, WP_ASHTG. Побился нет-пакет объекта при апдейте. Также, возможной причиной является использование трейнеров, ArtMoney и прочих подобных программ.

Пример:
Expression: fatal error
Function: xrServer::Process_update
File: D:\prog_repository\sources\trunk\xrGame\xrServer_process_update.cpp
Line: 39
Description:
Arguments: Beer from the creator of "S_ACTOR "; initiator: 0x00000001, r_tell() = 66, pos = 5, objectID = 0
Возникает при загрузке игры
Причина:
Неверно прописан параметр class в конфиге какого-либо объекта (необязательно указанного в строке arguments)
Решение:
Проштудировать конфиги на предмет неверно указанного класса у какого-либо из предметов

Пример:
Expression: assertion failed
Function: CItemMgr::Load
File: E:\priquel\sources\engine\xrGame\ui\UIBuyWndShared.cpp
Line: 39
Description: it!=m_items.end()
Причина:
B одном из файлов *_game.ltx (вместо * - название типа игры), находящихся по адресу configs\mp, в секции вида [*_base_cost] не прописан какой-то из доступных для покупки в мультиплеере предметов.


Пример:
Expression: assertion failed

Line: 42
Description: Name && Name
Причина:
Возможно ошибка в одной из.ogf моделей.


Пример:
Expression: assertion failed
Function: _VertexStream::Lock
File: E:\stalker\patch_1_0004\xr_3da\R_DStreams.cpp
Line: 44
Description: (bytes_need Причина:
Переполнение видеобуфера на отрисовку.
Решение:
Снизить настройки графики, либо ограничить дальность видимости на локации. Временным решением может послужить исправление всех silencer_light_range на значения заметино большие, чем silencer_light_var_range, в конфигах оружия. Также воспользуйтесь фиксом.exe файла избавляющий от данной проблемы.


Пример:
Expression: fatal error
Function: CObjectAnimator::LoadMotions
File: E:\stalker\patch_1_0004\xr_3da\ObjectAnimator.cpp
Line: 46
Description:
Arguments: Can"t find motion file "water_blow.anm".
Причина:
Игра не может найти указанный файл анимации камеры.
Решение:
Проверить наличие данного файла и проверить правильность написания пути до такового.

Пример:
Expression: assertion failed
Function: CStepManager::reload
File: E:\stalker\sources\trunk\xr_3da\xrGame\step_manager.cpp
Line: 46
Description: param.cycles >= 1
Причина:
Ошибка при чтении параметров настройки анимации ходьбы. Ссылка на эту секцию указана в параметре секции непися step_params. А далее там таблица в которой, вероятнее всего и находится ошибка.
Решение:
Найти и исправить ошибку в таблице.


Пример:
Expression: fatal error
Function: CResourceManager::_GetBlender
File: E:\stalker\patch_1_0004\xr_3da\ResourceManager.cpp
Line: 49
Description:
Arguments: Shader "models\antigas_glass" not found in library.
Причина:
Не найден шейдер models\antigas_glass в библиотеке шейдеров shaders.xr.
Решение:
Добавить недостающий шейдер, либо избавиться от модели, который данный шейдер использует.

Пример:
FATAL ERROR

Expression: 0
Function: ErrorLog
Line: 49
Description: You are trying to spawn two or more objects with the same story_id: --> try to add:
stack trace:
Причина:
Дважды или больше раз вызывается спавн объектов с одинаковыми SID
Решение:
Удалить лишние вызовы спавна

Пример:
Expression: 0
Function: ErrorLog
File: D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp
Line: 49
Description: object "pri_b36_sr_ahi_place_pda": activate_by_section: section "sr_idle@game_started" does not exist
stack trace:
Причина:
В рестрикторе (в данном случае "pri_b36_sr_ahi_place_pda") есть переключение, отсылка к несуществующей секции логики ("sr_idle@game_started").
Решение:
Проверить наличие секции в логике рестриктора, проверить соответствие названий, или же удалить отсылку к логике.


Пример:
Expression: fatal error
Function: CStringTable::Load
File: E:\stalker\sources\trunk\xr_3da\xrGame\string_table.cpp
Line: 53
Description:
Arguments: string table xml file not found ui_st_pda.xml, for language rus
Причина:
Вместо rus может быть eng, но суть проблемы остаётся неизменной - в файле localization.ltx в строке language указано название папки (rus в данном случае) в config\text из которой будет браться текст, так вот в этой папке не найден указанный файл (ui_st_pda.xml).
Решение:
Если добавляли свой файл локализации - проверьте правильно написания имени и наличие файла в нужной папке. Если устанавливали мод - переустановите его.



Expression: fatal error
Function: IRender_Visual::Load
File: E:\stalker\patch_1_0004\xr_3da\FBasicVisual.cpp
Line: 58
Description:
Arguments: Invalid visual
Причина:
Ошибка модели какого-то объекта.
Решение:
Найти объект и либо исправить модель, либо заменить, или же удалить сам объект.

Пример:
Expression: W==1
Function: CFileWriter::w
File: e:\stalker\patch_1_0004\xrcore\FS_internal.h
Line: 63
Description: Can"t write mem block to file. Disk maybe full.
Arguments: Invalid argument
Причина:
Переполнение дисковой памяти. Коварность данного вылета заключается в том, что часто вылет происходит в момент сохранения игры, и в результате сэйв будет битым.

Expression: fatal error
Function: CBlender_default::Compile
File: D:\prog_repository\sources\trunk\Layers\xrRenderPC_R1\BlenderDefault.cpp
Line: 63
Description:
Arguments: Not enought textures for shader, base tex: путь/до_текстуры
Причина:
Запуск модели/локации, на которой есть такая модель, не важно стат./динам. модель, на dx8, т.е статическом освещении. Возможно, из-за шейдера, его текстуры в настройке.
Решение:
Разберусь, скажу точнее, а пока - запускать на освещении выше статики, любом динамическом, dx9, dx10, dx11.

Пример:
Expression: fatal error
Function: CBlender_default::Compile
File: D:\prog_repository\sources\trunk\Layers\xrRenderPC_R1\BlenderDefault.cpp
Line: 63
Description:
Arguments: Not enought textures for shader, base tex: veh\veh_mi2
Причина:
проблемы с шейдерами - у меня был такой влет только на статическом освещении из за объекта локации с шейдером default.
Решение:
заменить шейдер default на другой, например, на def_shaders\def_vertex.


Пример:
Expression: !object->used_ai_locations() || ai().level_graph().valid_vertex_id(object->m_tNodeID)
Function: CALifeSwitchManager::add_online
File: E:\stalker\patch_1_0004\xr_3da\xrGame\alife_switch_manager.cpp
Line: 64
Description: Invalid vertex for object
Arguments: af_gravi22016
Причина:
Объект, в данном случае артефакт, заспавнился (перешёл в online) за пределами АИ сетки.
Решение:
Если Вам нужно просто пройти какой-то момент в игре, то можете попробовать уменьшить радиус A-Life, посредством параметра switch_distance, пройти проблемный участок, а затем вернуть первоначальное значение параметра. Если же вы хотите избавиться от вылета, перебирайте объекты перед выходом в online и ищите нужный объект.


Пример:
Expression: wave&&wave->length()
Function: CSoundRender_Source::LoadWave
File: E:\stalker\patch_1_0004\xrSound\SoundRender_Source_loader.cpp
Line: 65
Description: Can"t open wave file:
Arguments: ...\gamedata\sounds\music\sound.ogg
Причина:
Игра не может открыть звуковой OGG-файл под названием sound в папке gamedata\sounds\music\.
Решение:
Проверяйте наличие файла, правильность написания пути и имени файла.

Пример:
Expression: hGame
Function: CEngineAPI::Initialize
File: E:\stalker\patch_1_0004\xr_3da\EngineAPI.cpp
Line: 65
Description: Game DLL raised exception during loading or there is no game DLL at all
Причина:
Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0006 xrGame.dll от другого патча.
Решение:
Если нет резервных копий, то вероятнее всего потребуется переустановка игры, или переустановить патч(Воспользоваться даунгрейдом)

Проблемы с вылетом из игры S.T.A.L.K.E.R начались после первого дня релиза. Многочисленное количество все новых ошибок приходится решать пользователям. Одними из таких становятся известные геймерам проблемы «Прекращена работа программы XR_3DA.exe» или «Программа «XR_3DA.exe» не работает». Дальше мы дадим несколько советов, которые наглядно покажут что делать для исправления данного бага.

Причин появления данного сбоя может быть много. Иногда игрокам внезапно без причины отказывается доступ к игре. Другие сталкиваются с вылетами уже в процессе самого выживания в мире зараженного радиацией. Хотя самой страшной, по праву, считается потеря сохранений , когда при их загрузке экран темнеет и появляется окно с ошибкой XR_3DA.exe .

Парадоксальное то, что вылеты из «Сталкера» (Тень Чернобыля, Зов Припяти, Чистое небо) уже считаются нормой, вся суть заключается в их количестве. Вопрос стоит так: как уменьшить число вылетов из игры? Для начала разберемся, почему это происходит. Игра, как всем известно, очень плохо оптимизирована , даже несмотря на десятки выпущенных патчей. Проблемы возникают при любом удобном случае: неправильной установке, некачественной сборке софта S.T.A.L.K.E.R, самопроизвольных возникающих конфликтов. Следует лучше сосредоточиться на том, как их устранять.

Исправляем проблему переустановкой

При установке всегда существует риск того, что что-то пойдет не так. «Сталкер» в этом плане не исключение. Учитывая основную массу игроков, то они используют разные сборники для инициализации «Сталкера» к себе на компьютер. Их качество низкое. Лицензию приобретают не многие. Отсюда появляются разные конфликты, когда патчи плохо настроены .

  • Для начала обновите драйвера видеокарты NVIDIA через их официальный веб-ресурс . Если у васвидеокарта другого производителя , тогда примените обновление дров и дополнительно установите программку physx.dll . Перезагрузите ПК.
  • Для отъявленных «пиратов» рекомендуется попробовать еще раз переустановить игру . Если есть возможность, скачайте ее с другого источника. При скачивании любого софта ознакомьтесь с комментариями пользователей, так можно избежать многих проблем заранее.
  • Решением также становиться покупка лицензии .

Ознакомьтесь с нашим материалом по устранению в Сталкере.

Открываем доступ XR_3DA.exe

Данный способ очень простой. Он не устраняет проблему с выкидываниями в корне, но уменьшает их количество в разы. Для этого нужно перейти в папку с игрой. Найдите в ней папку Bin . Тут хранится игровой ярлык xr_3da.exe . Кликая правой кнопкой мышки попробуйте зайти от имени администратора . Многим пользователям этот способ помогает.

Проблема с антивирусами

Антивирусы всегда находят причины обозначить любой файл как потенциальный троян . S.T.A.L.K.E.R из-за своих патчей, которые дорабатывались не разработчиками, попадает в черный список многих антивирусов. Удаление разного рода элементов приводит всю игру в негодность. Восстановить их нет никакой возможности.

  • Для решения проблемы можно отключить антивирус или внести игру в исключения.
  • Обязательно переустановить игру заново.
  • В крайнем случае, попробуйте сменить антивирус на другой.

Что делать если ошибка XR_3DA.exe в лицензионной игре?

Лицензионная игра, как правило, всегда работает вполне сносно. Однако бывают случаи возникновения «xr_3da.exe ошибка приложения» и у них.

  • Удалите игру с компьютера. Попробуйте обновить драйвера на операционной системе.
  • Заново установите «Сталкер». Не используйте никаких сторонних патчей .
  • Иногда патчи бывают очень требовательны к системе. Удостоверьтесь, что компьютер их вытянет.

Вот несколько полезных советов от фанатов Сталкера.


Еще раз хочется напомнить - S.T.A.L.K.E.R всегда предрасположен к вылетам из игры. Полностью данную проблему избежать не получится, особенно это касается пиратских сборок. Надеюсь наши советы подскажут вам что делать, что бы исправить ошибку XR_3DA.exe в S.T.A.L.K.E.R.

Вконтакте