-
-
Notifications
You must be signed in to change notification settings - Fork 456
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Constant crashing after reaching the half of Limanks level. #828
Comments
Unfortunately, this is the number one serious bug that we didn't figure out how to fix yet. But since Limansk is a corridor location and it is impossible to avoid that house, the only thing can help is to load the game saves before reaching that house (I'd recommend to load a save before even entering Limansk) and hope that stalkers will refuse to go to that invalid kamp. (kamp is just incorrect spelling of camp) |
Тоже встретил этот баг. Также иногда вылет происходит не в доме, а уже после телепортов. Причем если сохранится между домом и вылетом, а потом загрузить сейв будет 1-2 fps. Ждал долго, лагать не перестало OS: Linux |
how can I help solve this? playing along gdb maybe and returning the stack would help you? |
mate, I don't remember exactly. I should give it a second try since it is labeled as closed, am sitting at home anyway now. |
are my assumptions right thou?
|
It is not closed. I've only closed the duplicate issue, but not this issue.
Gimme few minutes... |
Unpack this into the game folder: There's just one script with the workaround borrowed from #936 (comment) |
No, it's related to the generic camp logic, which The original script works fine with the original Clear Sky's X-Ray 1.5 engine, but mainline OpenXRay is an Call of Pripyat engine (based on X-Ray 1.6) and, probably, something was changed under the hood... I didn't find the root of the problem yet :( |
We have figured that this bug happens due to different luabind behaviour. |
This may be also helpful
bool CBaseMonster::useful(const CItemManager* manager, const CGameObject* object) const
{
const Fvector& object_pos = object->Position();
if (!movement().restrictions().accessible(object_pos))
{
return false;
}
// Lain: added (temp?) guard due to bug http://tiger/bugz/view.php?id=15983
// sometimes accessible(object->Position())) returns true
// but accessible(ai_location().level_vertex_id()) crashes
// because level_vertex_id is not valid, so this code syncs vertex_id with position
if (!ai().level_graph().valid_vertex_id(object->ai_location().level_vertex_id()))
{
u32 vertex_id = ai().level_graph().vertex_id(object_pos);
if (!ai().level_graph().valid_vertex_id(vertex_id))
{
return false;
}
object->ai_location().level_vertex(vertex_id);
}
if (!movement().restrictions().accessible(object->ai_location().level_vertex_id()))
{
return false;
}
const CEntityAlive* pCorpse = smart_cast<const CEntityAlive*>(object);
if (!pCorpse)
{
return false;
}
if (!pCorpse->g_Alive())
{
return true;
}
return false;
} |
I suggest giving the xr_kamp destination vertex assignment logic in Decane/SRP@1377f51 a try. The vanilla logic is buggy; it tries to assign NPCs to the nearest accessible vertex to BTW, I'm guessing |
Interesting detail: Look at the changelog of the official patch 1.5.05:
This is the smart terrain from #977. Just as memo, the problematic kamps are: |
Much thanks, @Decane! Finally the bug is fixed!
|
Describe the bug
The game simply starts to crash with the black screen in 1-5 mins or immediately. The repeatable crashing starts after we help the group of clear sky to fight for the house, a moment before the bus surrounded with space anomaly at Limansk. Before this moment the game worked perfectly.
The console says this:
! [LUA][ERROR] ERROR: Invalid AI map at kamp point [lim_smart_terrain_9_kamp_1]
stack traceback:
...es\s.t.a.l.k.e.r. Чистое Небо\gamedata\scripts_g.script:974: in function 'abort'
...t.a.l.k.e.r. Чистое Небо\gamedata\scripts\xr_kamp.script:309: in function 'getDestVertex'
...t.a.l.k.e.r. Чистое Небо\gamedata\scripts\xr_kamp.script:58: in function <...t.a.l.k.e.r. Чистое Небо\gamedata\scripts\xr_kamp.script:54>
FATAL ERROR
[error] Expression : 0
[error] Function : ErrorLog
[error] File : C:\projects\xray-16\src\xrScriptEngine\ScriptEngineScript.cpp
[error] Line : 40
[error] Description : ERROR: Invalid AI map at kamp point [lim_smart_terrain_9_kamp_1]
To Reproduce
Steps to reproduce the behavior:
Reach the point of the level described before.
Expected behavior
A clear and concise description of what you expected to happen.
I expected that I would be able to completely pass Clear Sky with the current build of openXray. I am not able to pass Limansk level since the game crashes each few mins or after the save loading at the explained point of the level. The crash appears absolutely randomly, but for now, I can't stay at the level for longer than 2-5 mins.
Screenshots
If applicable, add screenshots to help explain your problem.
BugTrap error report
Please, add a crashreport if you have it. It should be located in
_appdata_/reports
folderOpenXRay_error_report_210621-231657.zip
OpenXRay_error_report_210621-231645.zip
OpenXRay_error_report_210621-231422.zip
OpenXRay_error_report_210617-145211.zip
OpenXRay_error_report_210616-221438.zip
Desktop (please complete the following information):
Additional context
I have tried to run it with R4, original DX10 renderers, static one, but nothing helps.
The compartibility with Win 7 also does nothing.
This is very pity, because in the general it runs very well and I expected 0 crashes before reaching of this point of the game.
The text was updated successfully, but these errors were encountered: