Jump to content

Crash to desktop - any tools available?


dafydd99

Recommended Posts

The papyrus logging lacks any features to record information when the skyrim engine throws an uncaught exception. It is known. But does anyone know of a tool that allows us to help track these things down?

 

My example is I have a relatively simple script that disables and enables a few references (rock disable, waterfall enable, static waterwheel disable, animated waterwheel enable etc) over a few seconds. Odd thing is if I play through from a save for around an hour to this point it has around an 80% chance of CTD. If however I play again from the last autosave (leaving a hut to enter the exterior world) from around five minutes before (or indeed any quicksave just before) it never crashes. This obviously makes debugging (or engine bug avoiding!) very hard, as the error can't be reliably reproduced. I'm presuming it's something like an overloaded stack which hasn't been efficiently garbage collected, or could be something about enabling an animated reference, but that doesn't help me work out a strategy to dodge this limitation much.

 

Anyone got any thoughts in this area? Did anyone ever add some modifications to the main engine to allow for better exception handling?

 

All comments appreciated!

 

Cheers - dafydd99

Link to comment
Share on other sites

Your issue has a lot of variables, to pinpoint the cause someone would need to dive in your mod.

But what I can tell you is that I've encountered a same issue and the reason for the CTD was that I was enabling/disabling an object that had LOD generated in the worldspace, and when the player/pc would enter a cell that would initiate the LODs change the game ctd.

I can't say if this relative to your issue, but I would start looking from there.

Link to comment
Share on other sites

 

Your issue has a lot of variables, to pinpoint the cause someone would need to dive in your mod.
But what I can tell you is that I've encountered a same issue and the reason for the CTD was that I was enabling/disabling an object that had LOD generated in the worldspace, and when the player/pc would enter a cell that would initiate the LODs change the game ctd.
I can't say if this relative to your issue, but I would start looking from there.

 

Thanks maxarturo. Yes, there could well be LOD on the references, so perhaps that is indeed something to do with it, and definitely gives me something to look at. What's still a little odd is the consistency with which the CTD happens a long time after a game is loaded in comparison to it never happening when it's a short time.

Link to comment
Share on other sites

  • 5 weeks later...

Okay - finally think I'm getting somewhere. Crashlogger reports a problem around "BGSWaterCollisionManager::bshkAutoWater". I was disabling a water and enabling another. Seems likely this was never intended or a bug relating to this was left in the engine and on rare occasions it would trigger. I've changed the code to translate rather than disable and so far no crash discovered.

 

Thanks for help all!

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...