Emana202 / L4D2-Survivor-Bot-AI-Improver

A SourceMod plugin for L4D2 trying to improve survivor bots' AI as much as possible
20 stars 4 forks source link

New crash apparently caused by an incorrect gamedata #6

Open Yisus89 opened 1 year ago

Yisus89 commented 1 year ago

https://crash.limetech.org/zx2mhp4vlabn

The server crashed the moment I killed a spitter on dead center with a fire axe. It was a versus game. Accelerator is suggesting it's likely a gamedata fault, and this plugin's smx is mentioned in the raw section.

Emana202 commented 1 year ago

Does the crashing always occur or it only happened once?

Yisus89 commented 1 year ago

It only happened once. Since then I have played at least 8 matches of both versus and coop and never got another.

Yisus89 commented 1 year ago

https://crash.limetech.org/wgsxz5qwdu35

The gameserver crashed again. I wasn't present when it happened but we have the dump

server_srv.so!bool NavAreaBuildPath<ShortestPathCost>(CNavArea*, CNavArea*, Vector const*, Vector const*, ShortestPathCost&, CNavArea**, float, int, bool) + 0x490

The issue is still referencing bots though this time it says something about the navs. Accelerator is once again saying that it's likely a gamedata issue.

I am not able to reproduce this crash, though it's not a one time thing. It happens again and again, it's only a matter of when.

Yisus89 commented 1 year ago
L 12/17/2022 - 15:34:49: [SM] Call stack trace:
L 12/17/2022 - 15:34:49: [SM]   [0] GetEntProp
L 12/17/2022 - 15:34:49: [SM]   [1] Line 3102, F:\Ýðìåê\l4d2_sb_ai_improver\L4D2-Survivor-Bot-AI-Improver\scripting\l4d2_sb_ai_improver.sp::GetClientPrimaryAmmo
L 12/17/2022 - 15:34:49: [SM]   [2] Line 1229, F:\Ýðìåê\l4d2_sb_ai_improver\L4D2-Survivor-Bot-AI-Improver\scripting\l4d2_sb_ai_improver.sp::OnPlayerRunCmd
L 12/17/2022 - 15:34:49: [SM] Exception reported: Element -1 is out of bounds (Prop m_iAmmo has 32 elements).
L 12/17/2022 - 15:34:49: [SM] Blaming: l4d2_sb_ai_improver.smx
L 12/18/2022 - 13:18:40: [SM] Exception reported: Invalid edict (416 - 416)
L 12/18/2022 - 13:18:40: [SM] Blaming: l4d2_sb_ai_improver.smx
L 12/18/2022 - 13:18:40: [SM] Call stack trace:
L 12/18/2022 - 13:18:40: [SM]   [0] GetEdictClassname
L 12/18/2022 - 13:18:40: [SM]   [1] Line 4822, F:\Ýðìåê\l4d2_sb_ai_improver\L4D2-Survivor-Bot-AI-Improver\scripting\l4d2_sb_ai_improver.sp::SurvivorHasShotgun
L 12/18/2022 - 13:18:40: [SM]   [2] Line 3192, F:\Ýðìåê\l4d2_sb_ai_improver\L4D2-Survivor-Bot-AI-Improver\scripting\l4d2_sb_ai_improver.sp::L4D2_OnFindScavengeItem
L 12/18/2022 - 13:18:40: [SM]   [4] Call_Finish
L 12/18/2022 - 13:18:40: [SM]   [5] Line 3194, l4dd\l4dd_forwards.sp::DTR_SurvivorBot_FindScavengeItem_Post

These are some errors that are showing up with the latest version of this plugin. Perhaps fixing them can help with this crash.

Yisus89 commented 1 year ago

image image2 image3

This user looked at the gamedata of the plugin and it seems like ZNK12 has a mention in the gamedata but not ZN16. _ZN16ActionsPropagate14ProcessHandlerI12ActionResultIvEJP11CBaseEntityfEEEN9SourceMod10ResultTypeEiP6ActionIvEPT_DpOT0_ + 0x206

So this here is not present inside the gamedata which could be the reason for this crash. That's following accelerator's hint on gamedata.

We have 2 hints that this gamedata is the issue: accelerator reporting it's likely to be a gamedata's fault and the crash not being replicable and happening seemingly at random.