Possible problems and optimization
Possible problems and optimization
Departures from unresponsive sites (examples):
Code
Expression: vertex | | show_restrictions (m_object)
Function: CPatrolPathManager:: select_point
File: E: \ stalker \ patch_1_0004 \ xr_3da \ xrGame \ patrol_path_manager.cpp
Line: 155
Description: any vertex in patrol path [ros_sniper2_walk] in inaccessible for object [ros_sniper2]
In most cases, helps the replay. Or just get around the place with the flight. But if the flight is stable, hovering object must be removed. In this case, the deleted object is - ros_sniper2
How to remove - is described below.
-------------------------------------------------- -------------------------------------------------- -
Code
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_rusty_sea-urchin23058
Here we have hung the artifact. Most often, these crashes occur in the Old Village location. Although these departures are rare. Treated removal problem object. In this case the object is - af_rusty_sea-urchin23058
And now the most important - remove the problem object. How to do this is explained here -
Code:
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_rusty_sea-urchin23058
Here we have hung the artifact. Most often, these crashes occur in the Old Village location. Although these departures are rare. Treated removal problem object. In this case the object is - af_rusty_sea-urchin23058
And now the most important - remove the problem object.
Removing buggy objects (barrels, skeletons, a restrictor)
Important! Make copies of original files.
With departures from invalid vertex, missing paths in the absence of abuse restrictor object, in other game situations it becomes necessary to remove the "nuisance" object. Propose to use an existing block of code in the script bind_stalker.script.
"Removing buggy objects"
0. Note. Remove objects, being in full confidence that they are no longer needed.
1. In the file gamedata \ scripts \ bind_stalker.script find the commented block of code
Code:
- [[Local bad_object_names = {"wpn_lr30053522", "wpn_lr30058409"} - "wpn_lr30025601", "wpn_lr30028817", "wpn_lr30033589"
local i, se_name, se_obj
for i, se_name in ipairs (bad_object_names) do
se_obj = alife (): object (se_name)
if se_obj then
news_manager.send_tip (db.actor, "was removed buggy trunk:" .. se_name, nil, nil, 1000)
alife (): release (se_obj, true)
end
end]]
2. Remove comments - [[at the beginning before the local and]] at the end after end
3. In bad_object_names instead of these names for example trunks enter the names of objects that there is a need to remove. Each name is "", name, if more than one, should be sent by a comma.
Example 1. Removing the restrictor removal Gray (ATP, mobile merchant)
Code:
local bad_object_names = {"atp_sedoy_delete_restrictor"}
local i, se_name, se_obj
for i, se_name in ipairs (bad_object_names) do
se_obj = alife (): object (se_name)
if se_obj then
news_manager.send_tip (db.actor, "was removed buggy trunk:" .. se_name, nil, nil, 1000)
alife (): release (se_obj, true)
end
end
Example 2. Removing buggy forever zombikov (sarcophagus, for example of 2)
Code:
local bad_object_names = {"sarc_arhara_zombied_respawn_154797", "sarc_arhara_zombied_respawn_149048"}
local i, se_name, se_obj
for i, se_name in ipairs (bad_object_names) do
se_obj = alife (): object (se_name)
if se_obj then
news_manager.send_tip (db.actor, "was removed buggy trunk:" .. se_name, nil, nil, 1000)
alife (): release (se_obj, true)
end
end
3. Save the script and load the desired save. Removal will be done at boot time, the PC receives the message
"Removed buggy trunk: <title>" for each object listed in bad_object_names and existing in the game. A remote object once more time do not delete.
After the successful removal of a better (not critical) to restore the comments in the code - [[at the beginning before the local and]] at the end after end, as required by the game to repeat the operation with claim 1 for the other object (s).
Aesthetes can afford instead of "was removed buggy barrel" in the text of the script to write "was removed buggy object"
Using the method of deleting objects in the function actor_binder: update in light of the availability of the described method is, imho, deprecated.
-------------------------------------------------- -------------------------------------------------- -
The users with slower machines may get crashes from memory, type the following (examples):
Code
Expression: fatal error
Function: _out_of_memory
File: E: \ stalker \ patch_1_0004 \ xrCore \ xrDebugNew.cpp
Line: 359
Description: <no expression>
Arguments: Out of memory. Memory request: 8219 K
The game is not enough memory. Usually treated with restarting. If this does not work, turn down the game settings.
-------------------------------------------------- -------------------------------------------------- -
Code
Expression: Ran out of memory
Function: CRender:: texture_load
File: E: \ stalker \ sources \ trunk \ xr_3da \ xrRender \ Texture.cpp
Line: 356
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)
Arguments: e: \ stalker-sch \ gamedata \ textures \ death_mod \ difmap.dds
Not enough memory to handle textures. Try to put "XR_3DA.exe"-nointro-noprefetch-noshadows ", and experiment with the swap file. Someone help increase the paging file to someone falling off. It depends on the iron.
Or crash due to broken texture. Check it by opening the editor. If you will - the whole, it means it in the gland.
-------------------------------------------------- -------------------------------------------------- -
Code
* Phase time: 21 ms
* Phase cmem: 450 141 K
* [Win32]: free [1717536 K], reserved [221768 K], committed [2254936 K]
* [D3D]: textures [1012772 K]
* [X-ray]: crt heap [450080 K], process heap [8546 K], game lua [45853 K], engine lua [236 K], render [7837 K]
* [X-ray]: economy: strings [29556 K], smem [25,936 K]
A characteristic feature - the last lines in the log starting with * [x-ray]:
Departure is associated with an incorrect address to the engine forum, how to combat it does not. As a rule, not flight critical, helps saves a replay of the early, sometimes - you need to replay saves, taken from a previous location (before the call to the location at which there was a boom. Helped some stalkers replay "difficult" moment in a different sequence, for example - to go and perform another task at first, and then get back to doing the one where there were departures.
-------------------------------------------------- -------------------------------------------------- -
Actually optimization
1. To improve performance, the game can not install new shaders. They are very heavy in the game. When you install do not copy the folder gamedata / shaders from DMX.
2. If you experience crashes when autosave the memory, turn off Autosave Mod. How do I disable, it is written in the FAQ.
3. Also in this issue you can find other ways to increase productivity.