Select Page

First, you’re going to need to turn on your Papyrus Logging.

CTDs are not always (if ever) indicated in Papyrus Logs, but sometimes we can get some clues.

 

The following is a list of potential errors that are NOT directly related to WARZONES but can be exacerbated by the increase in resource use.

 

PAPYRUS : STACK OVERFLOW

This can be indicative of larger problems in your load order and/or resource use.

WZ related STACK OVERFLOW is likely caused by an overabundance of “looping” scripts in your load-order firing too often and causing a bottleneck – NOT solely because of WARZONES.  As related to WZ, however, the more NPCs you allow to spawn, the more scripts are added to the Papyrus Queue and the more possible it becomes that you’ll bottleneck it.  So while the direct cause is not necessarily WZ, it can contribute if you’re not careful.

Unfortunately, it may not be that easy to recognize and isolate mods that are contributing to the overflow, so the best course of action may simply be to reduce the amount of spawns (assuming you’re not on 1, in which case, you either have to scour your mods and/or uninstall WZ).

Some obvious choices would be mods that do condition checks every microsecond and/or in very quick intervals (in-game clocks, for instance (although, for the record, I am not suggesting that an in-game clock is a root cause of anything, just that they have very rapid updates).  Other choices would be mods whose scripts contain Update loops, and mods whose scripts do not contain 3D-check failsafes… of course, to know this, you’d have to have the PSC files handy and know how to read them.

Another clue would be looking for repeating errors in your Papyrus Log.  If a mod is constantly throwing script errors, it is reasonable to conclude that there may be some flaws in its scripts which can contribute to problems.

Fortunately, analysis and removal of scripted mods has been made easy with tools like SAVEGAME SCRIPT SCALPEL – but you’ll have to do your own testing.

This is an example of a STACK OVERFLOW that was NOT caused by the DarkBrotherhood Quest mentioned at 11:50:03AM.  I forced a Stack Overflow by creating a rapid loop that eventually caused a ‘backlog’ and, in turn, caused the game engine to “dump” scripts in the queue in order to catch up.

 [11/26/2014 – 11:50:03AM] Dumping stack 3653860:
[11/26/2014 – 11:50:03AM] Frame count: 1 (Page count: 1)
[11/26/2014 – 11:50:03AM] State: Running (Freeze state: Frozen)
[11/26/2014 – 11:50:03AM] Type: Normal
[11/26/2014 – 11:50:03AM] Return register: None
[11/26/2014 – 11:50:03AM] Has stack callback: No
[11/26/2014 – 11:50:03AM] Stack trace:
[11/26/2014 – 11:50:03AM] [DarkBrotherhood (0001EA5C)].darkbrotherhood.OnUpdate() – “DarkBrotherhood.psc” Line 172
[11/26/2014 – 11:50:03AM] IP: 0 Instruction: 0 Line: 172
[11/26/2014 – 11:50:03AM] [::temp4]: False
[11/26/2014 – 11:50:03AM] [::NoneVar]: None
[11/26/2014 – 11:50:03AM] [::temp5]: False
[11/26/2014 – 11:50:03AM] [::temp6]: None
[11/26/2014 – 11:50:03AM] [::temp7]: None
[11/26/2014 – 11:50:03AM] [::temp8]: 0
[11/26/2014 – 11:50:03AM] [pDarkDialogueScript]: None
[11/26/2014 – 11:50:03AM] [::temp9]: False
[11/26/2014 – 11:50:03AM] [::temp10]: None
[11/26/2014 – 11:50:03AM] [::temp11]: False
[11/26/2014 – 11:50:03AM] [::temp12]: False
[11/26/2014 – 11:50:03AM] [::temp13]: None
[11/26/2014 – 11:50:03AM] [EntranceScript]: None
[11/26/2014 – 11:50:03AM] [::temp14]: False
[11/26/2014 – 11:50:03AM] [::temp15]: 0.000000

 

Should you still feel compelled to remove WARZONES, please follow these instructions.

 

For further information about stabilizing Skyrim, please visit: