Crashes in SoC

More useful info:
Troubleshooting FAQ
Bugs In STALKER
What You Know That Ain't So
Quirks in the Game
"S.T.A.L.K.E.R. - SoC" Stuff

Crashes still in the patched game


STALKER still has a lot of issues that cause the game to exit, normally called "Crash to Desktop" or CTD. The best way of dealing with these CTDs is to save your game often, and periodically to named saves. The ZRP has quick-named-save and safe-quicksave features that can be used for this purpose.

Serious Problems

If your PC is shutting down or displaying a BSOD, that is more likely due to a hardware issue. (A lockup or freeze is NOT the same thing; see the next section.)

PC Shutdowns

If you find your PC shutting down unexpectedly, completely turning off while playing STALKER, you probably are exceeding some system specification. For example, your PC's power supply might be inadequate for supplying the required current for certain parts of the game.

BSODs

If your game "blue-screens" (BSOD - blue screen of death) and reboots: You can stop the reboot to see the specific error. In XP: Start > Control Panel > System > Advanced tab > "Start and Recovery" Settings button > uncheck "Automatically restart" under "System failure". Click OK on each dialog to exit.

BSODs are usually hardware- or driver-related, although they can also be related to other issues. The error module reported on the blue screen can be useful in determining the cause of the crash.

The game is one of the best system stress tests you can run on your PC. If you are getting frequent blue screens, check cooling fans and system temperatures, and consider reducing the video load (lower quality textures and/or resolution, use DX8) and maybe even underclock your CPU and/or video card to test for possible causes.

Lockups, Freezes

If your game locks up or freezes during the Synchronizing stage or while playing, this is usually due to an error that was logged but the BugTrap dialog is not visible. It traps most keystrokes and the game window stays on top, so the PC seems locked up.

You can kill the game via the Windows Task Manager; in XP you can press ctrl-alt-del, alt-E, E to end the current task. You may be able to avoid most hard lockups by using the -silent_error_mode command line parameter at the end of the target line in the shortcut you use to start STALKER. The crash might still occur, but the game will simply exit to the desktop most of the times when a crash occurs. This is recommended even if you don't have hard lockup crashes.

If you still get hard lockup crashes, consider the solutions in this GSC thread: "Trick to kill the game if it locks-up".

If you see a Windows error saying "XR_3DA.exe has stopped working", first try to open a text editor like Notepad and press ctrl-V right after the crash. This might have enough information to help you fix the problem, or the log file might have more information. See the next section to find out more.

BugTrap Dialog

If you see a screen talking about an error in XR_3DA.exe ("A crash has been detected by Bugtrap"), it is usually the BugTrap dialog asking you to send in an error report. Don't do it; it doesn't work in STALKER SoC. Instead, find the log file (next paragraphs).

Find your log file

If your game crashes or locks up, look for the log file that STALKER creates before running your game again. (STALKER overwrites the log each time you start the game.)

The saved games and logs are on the C: drive by default in the STALKER-SHOC subdirectory. In Vista and Windows 7 this subdirectory is under \Users\Public\Documents (Windows 8 is similar: \Users\Public\Public Documents) while in XP this is found in \Documents and Settings\All Users\Documents.

For Steam users, the game uses the directory assigned to $app_data_root$ in fsgame.ltx. At least it tries to do so; see the Troubleshooting FAQ if you have problems saving your changed settings or making saves.

The latest error log, called xray_<your_user_login>.log* is under STALKER-SHOC in the logs\ subdirectory, while the saved games are stored in the savedgames\ subdirectory.

*<your_user_login> is usually your name, the one you see at the top of the menu when you click on the "start" button on the taskbar in XP. If your user name is Robert, for example, then you would find a file named xray_Robert.log.

NOTE: Sometimes the .log extension is hidden because Windows already has assigned the file type to an application.

Open the log file with a text editor or viewer. At the end of that file is usually a section that starts with "FATAL ERROR" and has lines beginning with "[error]" or following "stack trace". These lines are useful in identifying most script and configuration errors.

Use your browser's Find command to locate your error on this page. If it is not here, you can report it on one of the forum sites mentioned at the bottom of the "S.T.A.L.K.E.R. - SoC" Stuff page.


Anatomy of a Typical Error Report

Description Examples Explanation
Expression assertion failed
e_entity
sz<(tgt_sz-1)
This debug info tells the developer the basic problem.
Function CSafeFixedRotationState::create
xrServer::Process_event_reject
CGameGraph::distance
This is the function that had the error.
File D:\xray-svn\xr_3da\xrGame\script_engine.cpp
E:\stalker\patch_1_0004\xr_3da\xrgame\file.h
E:\stalker\sources\trunk\xrCore\xrDebugNew.cpp
This is the complete pathname for the file containing the function that had the problem. The path is not to anything on your PC. It is a path on the developer's PC to tell him the source file that had the error. There are different starts to the path, depending on version:
D:\xray-svn\ => 1.0/Patch 1.0001
E:\stalker\patch_1_0004\ => Patch 1.0004
E:\stalker\sources\trunk\ => Patch 1.0005 or 1.0006
Line 81 The line number of the error in the source file.
Description dBodyStateValide(b)
entity not found
<no expression> (if Lua error)
This provides some detail as to what went wrong.
Arguments Lua error: pathfilename:line_number:error
This optional field is included when a Lua scripting error is encountered. (Lua is the scripting language used by the game for high-level tasks.) It helps explain why the script command could not be executed.

In this case, any script path listed may be to a file on your PC.


Vanilla Crashes

These are crashes still in the vanilla game patched to at least 1.0004. Some can still occur even with the ZRP even if you start a new game. Patch 1.0006 introduces a new CTD when you use or eat an item directly from an NPC body.

1Out-of-memory crashes
Symptom Any crash that references "out of memory" or similar, like "insufficient resources available", "not enough storage is available to process this command" or "no more data is available". Some "Can't open section" and "There are no more files" errors might also be related to running out of memory.
Cause STALKER is resource-intensive. You are pushing the edge with the vanilla game, and some levels are "heavier" than others (notably Cordon, Dark Valley, Army Warehouses, Red Forest, Pripyat).

NOTE: It doesn't matter how much memory you have -- there is a default limit of 2 GB of application process space for 32-bit versions of Windows. However, more memory will reduce swapping to/from the hard drive virtual-memory (page file) cache, up to 3.5 GB.

Treatment Reduce your texture quality, or perhaps even revert to DX8 mode (static lighting).

Run with the " -noprefetch" command line option. Append the quoted stuff to the end of the target line for the shortcut you use to launch STALKER, like so:

<STALKER installation path>\bin\XR_3DA.exe -noprefetch

If you are running 32-bit Vist, Windows 7 or Windows 8, you can use the command "bcdedit /set IncreaseUserVA 2700" while logged on with Administrator rights. Reboot for the change to take effect.

2Rendering crashes
Symptom stack trace:

001B:0188B3B6 xrRender_R1.dll
 or
001B:02C09EE6 xrRender_R2.dll
Cause This is often just a driver error problem, likely caused by STALKER passing in bad data to a video driver function or perhaps due to a stalled or hung thread so that the processing is not handled in a timely manner.
Treatment The good news is that it is generally a temporary failure, and reloading the last save will usually get around the problem. One common location for this error is Yantar, most often just northeast of the ecologist bunker.

The occurrence of this crash might be mitigated by reducing the objects_per_update value from the default of 10 in gamedata\config\alife.ltx. This file is available in some mods, or you can extract it from the database files with a tool like Don Reba's Extractor.

Note: If this crash happens consistently, consider changing/updating video drivers. Another possibility is a hardware problem. Check for dust bunnies in the video card fan/heatsink, and possibly underclock the video card.

3Controller animation crashes
Symptom FATAL ERROR

[error]Expression : assertion failed
[error]Function : CSafeFixedRotationState::create
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\phvalidevalues.h
[error]Line : 81
[error]Description : dBodyStateValide(b)


stack trace:
Cause The most common cause is a controller animation problem, usually when it is under attack. Sometimes it is preceded by a severe FPS drop, caused by another problem (like DetailPathManager failure).
Treatment Kill the controller(s) before they enter this state. Either rush to the controller and deal with it, or use the ZRP 1.07 debug code (debug mode must be enabled; default: Esc D K [mnemonic: debug kontroller]) to kill all on-line controllers before they crash the game.
4Lost or destroyed weapon crashes
Symptom FATAL ERROR

[error]Expression : e_entity
[error]Function : xrServer::Process_event_reject
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_process_event_reject.cpp
[error]Line : 12
[error]Description : entity not found. id_parent=1350 id_entity=1312 frame=11471


stack trace:

Scheduler tried to update object lvl_community_respawn_xxxxx (e.g., esc_soldier_respawn_11350)
Cause This crash typically occurs when a newly-killed NPC's dropped weapon is destroyed by the game while being processed by another thread (e.g., being evaluated as a possible replacement by another NPC).
Treatment You can usually load the previous save prior to the crash and resume. You can use the ZRP "store-weapons-in-backpack" option to reduce the incidence.

These crashes can result in hard PC lockups. See the section on lockups above for more workarounds.
5Corrupt save crashes
Symptom stack trace:

xrGame.dll
xrGame.dll

or "Can't open section" error (See also "Corrupt installation errors", below.)
Cause Unmodded game: The saved game might be corrupt. This can be caused by the game destroying a body but not cleaning up the spot associated with the body. You will have this problem when you see "- Critical: SMapLocation binded to non-existent object id=xxxxx", although this is easily missed because it can occur much, much earlier before the error in the corrupted save is encountered after a reload.

You might also see an accompanying "- Critical: CMapLocation::UpdateSpot binded to non-existent object id=xxxxx" in the log if you catch the problem when it occurs.

NOTE: This type of destruction often occurs in mods or in arena venues, but it can also happen when an anomaly (like one of the Whirlygigs found in Pripyat's stadium) destroys a body in vanilla gameplay.

Treatment You will have to find a save game that does not have this problem. Good luck with that.

6Bad spawn location
Symptom ! Cannot build GAME path! (object m_tushkano_normal21511)
! CURRENT LEVEL : l10_radar
! CURRENT game point position : [376.978180][-51.199860][29.992897]

FATAL ERROR

[error]Expression : I != levels().end()
[error]Function : GameGraph::CHeader::level
[error]File : e:\stalker\patch_1_0004\xr_3da\xrgame\game_graph_inline.h
[error]Line : 171
[error]Description : there is no specified level in the game graph : 96


stack trace:

Scheduler tried to update object m_tushkano_normal21511

... or something like ...

FATAL ERROR

[error]Expression : false
[error]Function : CGameGraph::distance
[error]File : e:\stalker\patch_1_0004\xr_3da\xrgame\game_graph_inline.h
[error]Line : 96
[error]Description : There is no proper graph point neighbour!


stack trace:

Cause Some mutant or NPC was switched online with an assigned level value that was either completely bogus (no specified level) or valid but not for the location (no proper graph point neighbor). This might be from being spawned in a bad place. STALKER will spawn Alife in a random radius about a spawn point, which helps make the spawn different each time. Unfortunately this sometimes puts the entity in a place not connected to any graph point used by the AI.

Treatment Reload a previous save.
7Bad spawn location - part 2
Symptom ! DetailPathManager has failed : from [142.099976,-4.614447,445.899963] to [142.099976,-5.792273,443.799988]
! DetailPathManager has failed : from [142.099976,-4.614447,445.899963] to [142.099976,-5.792273,443.799988]
! DetailPathManager has failed : from [142.099976,-4.614447,445.899963] to [142.099976,-5.792273,443.799988]
stack trace:

001B:01E59454 xrGame.dll
001B:01E5E8A4 xrGame.dll
001B:01E5E584 xrGame.dll
Cause An NPC or mutant was switched online in a bad place, and there is no possible connection path to the destination. STALKER uses a grid network of squares with connections to adjoining squares, but some squares are isolated. Examples: behind rocks on the edge of a map, or on a different elevation than the destination.
Treatment Reload a previous save -- one hopefully made before the bad spawn.

Or fix it with ZRP 1.07 (or later): Reduce switch_distance (Modifier > Tweaks.cfg > Alife Tweaks - Advanced) to a small value like 5 or 10, then explore the level to locate the place where the bad entity exists. Use ZSU to identify and remove the bad entity (see example on this GSC forum page), then restore the original value for switch_distance.
8Bad argument #2 to 'format'
Symptom FATAL ERROR

[error]Expression : fatal error
[error]Function : CScriptEngine::lua_error
[error]File : D:\xray-svn\xr_3da\xrGame\script_engine.cpp
[error]Line : 74
[error]Description : <no expression>
[error]Arguments : LUA error: e:\stalker\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)


stack trace:
Cause The usual cause of this error is the vanilla abort() function, which deliberately crashes the game with an error. But the function is usually called because there was a serious error -- the wrong error is being reported. This error will not normally occur with the ZRP. If it does occur, see the text just above the "FATAL ERROR" data in the log file.
Treatment Get the ZRP. :) Or at least use a fixed _g.script that reports the true problem.
9aRare crashes 1: CTheoraSurface
Symptom stack trace:

001B:004BCFBC XR_3DA.exe, CTheoraSurface::`vftable'()
001B:0298C084 xrGame.dll
001B:02994577 xrGame.dll
Cause It can be caused by viewing a contact in your PDA when that contact is switched offline (e.g., watch Shaggy exit Dark Valley to the Garbage after saving him).
Treatment Reload a previous save. Avoid checking your PDA in Red Forest at the level changer to Pripyat.
9bRare crashes 2: CKinematicsAnimated
Symptom stack trace:
001B:00451CE8 XR_3DA.exe, CKinematicsAnimated::ID_Cycle_Safe()
Cause Unknown; physics- or animation-related
Treatment Reload a previous save.
9cRare crashes 3: ParticleManager
Symptom Any reference to the ParticleManager.
Cause Unknown; "particle bone" physics- or animation-related. Certain objects in the game have particle effects associated with them (e.g., poltergeists), and in some cases an invalid state can be generated.
Treatment Reload a previous save -- although it might need to be one made before the parent object went bad.
10Same error twice in a row
Symptom [error][ 183] : Cannot create a file when that file already exists.

Cause This might happen when there are two consecutive exceptions (errors) at the same time. The severity of the error is a function of the previous error.
Treatment Determine the first error, and treat that.

11Corrupt installation errors
Symptom CTD error: Can't load section: xxx\yyy, where xxx\yyy has an invalid character in the path or name of the object, or ProcessArchive errors (see Database Processing Error below).

Causes DVD read errors or STEAM download errors, resulting in a corrupt all.spawn file or database.db* file (and all saved games based on them).

Mod errors due to differences between save/load functions.

Using a saved game from two (or more) patches earlier in a newly-upgraded game. You should not use a 1.0001 save game in patch 1.0005 directly; you should patch to 1.0003, load the 1.0001 saved game, save, patch to 1.0004, load the 1.0003 saved game, save, and maybe patch to 1.0005/load/save if desired. This is because the patch can only properly convert the saved game of the immediately-prior patch to the current format. It is usually best to start a new game anyway, to take advantage of the fixes and improvements in the all.spawn file.

Using a save from a later patch in an earlier version of the game. Also, rolling back to a previous version can leave traces of the later version which the game can still load. Example: gamedata.dbc is not removed when uninstalling 1.0005 and reinstalling and patching only to 1.0004.

In a similar manner, you might just have a config\system.ltx file that is incompatible with the game's patch version. See "hFile>0" below.

Treatments Steam version: Verify the integrity of the STEAM download (start by right-clicking the entry in the launcher).

Retail version: Try re-installing the game. You may have to replace the DVD drive; install the game on another computer as a test. You might have a bad DVD; if you can't locate a replacement disk, consider a digital distribution from GOG or Steam.

Corrupted saves are not easily fixed. First correct the cause, then start a new game. Verify that you have the right version of config\system.ltx for your patch. If you don't have that file, you should be okay. You can remove the mod as a test, then start a new game. (See note on OS considerations.)

12Waypoint or pathing errors
Symptom Expression : ai().level_graph().valid_vertex_id(vertex->data().level_vertex_id())
Function : CPatrolPathManager::select_point
File : E:/stalker/patch_1_0004/xr_3da/xrGame/patrol_path_manager.cpp
Line : 164
Description : patrol path[mil_mercs_walker_3_walk], point on path [name07],object [ros_killer_respawn_230016]
Cause The vanilla game still has an invalid waypoint bug.
Treatment Fix: Use the ZRP or mods that address this problem. A new game required, as the fix is in the all.spawn.

Workaround (vanilla): Stay at least switch_distance (default 150 meters) away from the crash area, in this example the mercenary base in NW Army Warehouses for the above error. There might also be a problem in the Agroprom military base, with the same treatment: stay away from it. If you are running a mod with this error, contact the modder(s).

13Dest string less than needed
Symptom Initializing Engine...
Executing config-script "user.ltx"...

FATAL ERROR

[error]Expression : sz<(tgt_sz-1)
[error]Function : IReader::r_string
[error]File : E:\stalker\sources\trunk\xrCoreFS.cpp
[error]Line : 349
[error]Description : Dest string less than needed.

stack trace:
Cause Here, the user.ltx file has been corrupted. If you see "Dest string less than needed.", look at the line above "FATAL ERROR" for which file was being processed when the error occurred.
Treatment If it is user.ltx, delete or rename and restart the game. It will recreate this file for you. Your settings will be lost, so you might want to examine the original file before you delete it. See the Troubleshooting FAQ about cam_inert and r2_sun_near/r2_sun_near_border. Note for Steam users: there might be two copies of this file. The game uses the one in the directory assigned to $app_data_root$ in fsgame.ltx.
14Improperly initialized objects
Symptom FATAL ERROR

[error]Expression : fatal error
[error]Function : CScriptEngine::lua_error
[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp
[error]Line : 73
[error]Description : <no expression>
[error]Arguments : LUA error: ...dow of chernobyl\gamedata\scripts\heli_combat.script:193: attempt to perform arithmetic on field 'change_dir_time' (a nil value)
Cause A helicopter has changed combat states and is no longer properly initialized. The game crashes when trying to save because one of the math operands in a state calculation is nil (not assigned a value).
Treatment The gamedata\scripts\heli_combat.script file can be edited to avoid the error. A fixed version of this file is available in the latest ZRP.
15Mismatched game all.spawn/game graph
Symptom FATAL ERROR

[error]Expression : header().graph_guid() == ai().game_graph().header().guid()
[error]Function : CALifeSpawnRegistry::load
[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\alife_spawn_registry.cpp
[error]Line : 167
[error]Description : Spawn doesn't correspond to the graph : REBUILD SPAWN!

stack trace:
Cause Either you have made a change to your game (added a mod or reverted to an older patch) or you are attempting to use a saved game that is based on a different all.spawn and/or other game files than the version the game is currently using. The save might be corrupt.
Treatment Verify the integrity of your game files. If using a mod, you should see if the mod permits using existing saves; most don't. Synchronize your game to your mod by patching to the version required by the mod. Reverting to older patch versions may require totally uninstalling the game and removing the old installation directory first.
16GameSpy server access trouble
Symptom Loading DLL: xrGameSpy.dll
! Unable to init Server Browser!
stack trace:

... may optionally include ...

0023:02948824 xrGameSpy.dll, xrGS_GetGameID()
0023:040B12D4 xrGame.dll
0023:03FA5EA0 xrGame.dll

... or might simply show ...

Loading DLL: xrGameSpy.dll

FATAL ERROR

[error]Expression : m_hGameSpyDLL
[error]Function : CGameSpy_Full::LoadGameSpy
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\gamespy\GameSpy_Full.cpp
[error]Line : 55
[error]Description : GameSpy DLL raised exception during loading or there is no game DLL at all

stack trace:

Cause The GameSpy server was responding in an unexpected way. As of 2012/12/07 GameSpy Arcade stopped supporting STALKER SoC. A couple years later the GameSpy servers ceased operation.
Treatment Quick workaround: Disconnect your internet cable. Or configure your network settings to disable your Internet connection.

Fix: Configure your firewall to disallow internet access to STALKER's executables, bin\XR_3DA.exe and bin\dedicated\XR_3DA.exe, in your STALKER installation directory. You might need admin rights to do this. This will prevent STALKER multiplayer gaming access.

The recent versions of patch 1.0006 no longer attempt to access GameSpy servers.
17Patch 1.0006 errors: e_parent
Symptom An "assertion failed" error relating to e_parent.

FATAL ERROR

[error]Expression : assertion failed
[error]Function : xrServer::Process_event_ownership
[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_ownership.cpp
[error]Line : 23
[error]Description : e_parent

... or ...

FATAL ERROR

[error]Expression : assertion failed
[error]Function : xrServer::Process_event_reject
[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp
[error]Line : 12
[error]Description : e_parent && e_entity

stack trace:

Cause The 1.0006 game engine has code changes that cause crashes when weapons, ammo or other items are destroyed while they are still being used. For example, the death manager will delete the ammo when an NPC dies while reloading, and the reloading function will crash because it can't find the ammo it needs to reload the weapon.

This error can also happen in mods that change ammo (e.g., ammo_ctrl) and/or weapons (e.g., Rulix AI's weapon manager, rx_wmgr.script).
Treatment Use ZRP 1.09 to fix the vanilla e_parent errors.

Workaround: Reload a previous save.
18Patch 1.0006 errors: m_pCurrentInventory
Symptom An "assertion failed" error relating to m_pCurrentInventory.

FATAL ERROR

[error]Expression : assertion failed
[error]Function : CInventory::Eat
[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\Inventory.cpp
[error]Line : 892
[error]Description : pIItem->m_pCurrentInventory==this

stack trace:
Cause The CInventory::Eat error is caused by the engine when an attempt is made by the player to use or consume corpse inventory items.
Treatment Reload a previous save.

Workaround for CInventory::Eat errors: Don't eat or use items while they are in the inventories of corpses. Move those items to your inventory first.


Mod errors

An error due to a mod or mod merge is a frequent cause of CTDs. Here are a few examples:

1Vista/Windows 7/Windows 8 UAC errors
Symptom Crashes that reference a mod's resources after the mod has been updated/removed.
Cause Due to issues with UAC and rights management, it is possible to have an incomplete installation of a mod, or older "ghost" leftovers of a mod after updating it or even after removing the mod completely. Vista and Windows 7/Windows 8 know what is best for you, and control completely the Program Files directory and its subdirectories. But STALKER is old tech; mods must be in the STALKER gamedata subdirectory. Mod installations and removals can fail silently.
Treatment One fix is to take ownership of the STALKER installation directory. You will likely need administrator rights to do this. See the 26 September 2009 NatVac post on this GSC forum page for details.

An alternative is to copy the STALKER SoC directory to Documents or other directory where you have full access rights. Right-click on the bin\XR_3DA.exe file in Explorer and drag it to the desktop, drop it there and select "Create shortcut here". Configure that with your runtime options like -noprefetch and -nointro.

If you are replacing a mod that modified the game's database files or the bin\ subdirectory, you might need to uninstall, delete the STALKER-SoC installation directory, then re-install. See the Troubleshooting FAQ for details.

2Mod incompatibility errors
Symptom hFile>0
Cause A mod you are using has a config\system.ltx file that is incompatible with the game's patch version, or there is a mismatch between mod saves and mod loads.
Treatment See the "fable" in the the "Crash To Desktop (CTD): Causes and Treatment" sticky topic in the GSC forum's "Single Player bugs" section.

If you see this error with a purely vanilla game, your installation has bad data. Steam users can verify the integrity of their installation. Others will need to re-install the game after uninstalling AND removing the old installation directory.

3Dialog path errors
Symptom stack trace:

001B:007A105B xrLUA.dll
001B:01FB185A xrGame.dll
Cause Typical causes: Broken dialog script or broken dialog XML tree. Example: No existing function for dialog condition.

4Invalid parameter in engine API call
Symptoms stack trace:

001B:026339F6 xrGame.dll
001B:007C6D9D xrLUA.dll, luabind::detail::get_class_name()
001B:007CBCFD xrLUA.dll, luabind::detail::class_rep::function_dispatcher()
001B:007AA60B xrLUA.dll, lua_getinfo() [or luaopen_io()]

... or ...

stack trace:

[error][ 18] : There are no more files.

Cause Typical cause: C++ function call has invalid arguments. For examples, a vector is missing an argument, or a nested argument evaluated to nil, resulting in an invalid argument, or an object is used where an object id is needed.

Meltac at the GSC forum also notes that accessing properties or functions of invalid objects can result in this error. This might be due to attempting to access online object functions on an offline object.
5Main menu script syntax error
Symptom Starting engine...
Loading DLL: xrGameSpy.dll
stack trace:

001B:02155A45 xrGame.dll
 or
001B:04FD5A45 xrGame.dll
 (address numbers can differ)
Cause The ui_main_menu.script file has an error.
6Unranked custom weapon
Symptom FATAL ERROR

[error]Expression : res!=-1
[error]Function : get_rank
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\ui\Restrictions.cpp
[error]Line : 34
[error]Description : cannot find rank for
[error]Arguments : wpn_my_l33t_ubercool_weapon_m1


stack trace:

Scheduler tried to update object esc_factory_prisoner_guard

Cause The game can exit because the NPC cannot determine the relative value of a mod-specific weapon.

Treatment An entry for the new weapon needs to be added to the "available_items" list for one of the ranks in config\mp\mp_ranks.ltx. CAUTION: a semicolon (;) starts a comment, so anything after a semicolon on the long line will be ignored.
7UI XML Error
Symptom FATAL ERROR

[error]Expression : assertion failed
[error]Function : CUILine::GetLength_inclusiveWord_1
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\ui\UILine.cpp
[error]Line : 410
[error]Description : pos.word_1.exist()


stack trace:
Cause There is an error in a user-interface XML file.

Treatment Check the config\ui\*.xml files for syntax errors or empty text strings/blank lines within the text elements (sometimes color formatting strings surround no actual text) or even wrong language encoding. This error can also occur if the mod dynamically creates an empty string for the user interface.
8Isolated "Stack trace" Error
Symptom stack trace:
Cause A plain "stack trace" error can be caused by passing a bad parameter to a C++ engine function. Example: calling object:transfer_item(item,actor) with a string for "item" instead of an object.

Treatment Fix the bug.
9Database Processing Error
Symptom FATAL ERROR

[error]Expression : assertion failed
[error]Function : CLocatorAPI: : ProcessArchive
[error]File : E:\stalker\sources\trunk\xrCore\LocatorAPI.cpp
[error]Line : 337
[error]Description : hdr
Cause A game database file ending in .db* could not be processed. It might be corrupt.

The game considers any file ending in .db to be a database file. Check gamedata\textures\ and its subdirectories for the presence of thumbs.db files. These convenience files are created by the OS when image directories are viewed in Explorer in order to support quick directory browsing, but they will crash the game because they are not valid game files. (Credit: notanumber at GSC)

Treatment Remove all thumbs.db files from the mod's subdirectories. This is the most common cause because these files are usually automatically generated when the directories are viewed.

A bad install can also cause this issue with a gamedata.db* database file that contains errors, either from a bad DVD read or from an unverified digital download.


Harmless errors

Errors that do not cause obvious trouble:
***FATAL***: Too many lmap-textures (limit: 8 textures or 32M).

The game has some maps with too many lightmap textures. Ignore this error.


~ ERROR: can't detach independant object. entity[wpn_ak7414270:14270], parent[pri_monolith_respawn_114248:14248], section[wpn_ak74]
~ ERROR: can't detach independant object. entity[wpn_mp52539:2539], parent[agr_factory_defence_stalker6:2532], section[wpn_mp5]
~ ERROR: can't detach independant object. entity[wpn_ak742662:2662], parent[agr_factory_assault_soldier1:2656], section[wpn_ak74]

or

~ ERROR: can't detach independant object. entity[wpn_ak7414270:14270], parent[single_player:0], section[wpn_ak74]

This warning is caused by the moving of a loose item like a gun which either has no parent (owner) or has a different parent, into the inventory of the actor or that of another NPC or NPC body. Technically, one should not transfer a weapon that isn't theirs. This is the result of a hack to permit NPC stalkers to search bodies, a hack to clean up a battlefield of weapons, or a hack to prevent a dying NPC from dropping a gun -- but he already has, so he is no longer the parent.

It may be possible to "fix" the warning by assigning a parent to the weapon first. It is a warning, not a real "error".


! Version conflict in shader 'def_shaders\def_aref' and similar.

The devs did not keep their shaders and their support code in sync.


! Unknown command: r__dtex_range
! Unknown command: r__ssa_glod_end
! Unknown command: r__ssa_glod_start
! Unknown command: r__wallmark_ttl
! Unknown command: rs_detail
! Unknown command: rs_skeleton_update
! Unknown command: vid_bpp

and similar.

The devs removed references for unused options from the DLLs, but not from the configuration files. You can edit the corresponding config\rspec_*.ltx (usually rspec_maximum.ltx) to remove or comment out these lines. (Note: This might require extracting these files from the database files; see the reference to Don Reba's Extractor, above.)


[16-9] get_xml_name for[ui_mp_icon_rank.xml] returns [ui_mp_icon_rank.xml] and similar.

The devs put in a check for custom widescreen resolutions. Unfortunately it floods the console to let you know which version of the UI file it is using.


! Invalid object 'single_player' position. Outside of sector structure.

This is reportedly caused by a very large ui_icon_equipment.dds file found in some kitchen-sink mods. It can definitely happen due to spawn jitter; if your foot is intersecting with the ground, you'll see the message. If it causes trouble in your game, you might have a corrupt installation or save game.


~ cannot remove restriction with id [2734][agr_zone_radioactive_average] to the entity with id [2808][agr_flesh_normal], because it is not added

A mutant has had an encounter with an anomaly, and the cleanup code attempted to remove the anomaly protection (which keeps the mutant away from the specified anomalies) from the mutant -- but the protection was not previously assigned to the mutant. This should be fixable by adding the protection to the mutant configuration files, although only newly-spawned mutants will be freed from the warning "error".


! Missing ogg-comment, file: followed by a path to an OGG sound file.
! Invalid ogg-comment version, file: followed by a path to an OGG sound file.

This is a mod problem. The game uses the comment field of an OGG sound file to store additional info to determine in-game volume, range, drop-off, etc. Just adding an ordinary OGG-format sound file will result in the game complaining. This can contribute to overly-alert NPCs, as distant sounds will be heard across the map. The usual way to fix this is to use the game's SDK sound editor to properly assign values to the sound. An easier alternative is the SAVandT (Sound Attribute Viewer and Tweaker) program found on the Downloads page.


!!!processing_enabled ->destroy_queue.push_back physic_destroyable_object[42003] frame [2234850]

This seems to be a physics debug statement when a crate or other breakable object like a wooden board is broken.


Compiled/written by NatVac.
Last page update: October 16, 2020
Copyright (C) 2009-2020 Metacognix. All rights reserved.