Crash Detective: Log++ [READ DESC]

If you liked this item, please rate it up on Steam Workshop page.

Author: JSG

Last revision: 11 Mar, 2022 at 14:45 UTC

File size: 64.51 KB

On Steam Workshop

Description:
UPDATE: The latest version of Repentance already has proper crash report on logs, so you most likely dont even need this mod!

This mod is basically a logger that adds callback calls to the game’s log, it allows you to easily tell which callbacks were running at the moment of a crash and which mod added said callbacks. It can also log certain function calls in it’s "advanced mod" thats hidden behind a variable in the main lua but most people wont need that and its laggy as sin so Its off by default.

IMPORTANT: remember to disable this mod after you are done testing, you dont want your full drive to be filled with isaac logs, lol

When do I run this mod?

When your game consistently crashes, you can replicate the crash and you want to get clues as to what is causing it.

When NOT to run this mod?

When you want more info on the logs for casual play "just in case it eventually crashes". This mod is intended to be used when you already know the game is going to crash and you want to know why….if you run it 14/7 you’ll stockpile GBs upon GBs of text files that, depending on what software you use to open them, you wont even be able to open. so, I insist, DONT LEAVE THIS MOD ON!

How to use?

You must enable the mod, crash the game, and then, without reopening the game, go to "DocumentsMy GamesBinding of Isaac Repentance" and look for the log.txt. then just scroll all the way to the last lines and you’ll see something like this:

[ModName] Start of Callback A [ModName] End of Callback A [AnotherModName] Start of Callback B Caught exception writing minidump…

Notice how ModName Callback A ended, but AnotherModName’s callback never ended, it just crashed midway…well, that means that the code from AnotherModName was still running when the game crashed…does that mean that it crashed the game?, it’s likely, but this is not a definitive answer, what you need to do to get answers is to copy the last 10 lines of this log and send it to the creator of said mod, they’ll probably be able to either identify the problem or point you to a possible solution.

DONT USE THIS AS A ♥♥♥♥♥♥ BLAME GAME TOOL


If you find a crash and theres a mod that you think may be at fault, let the creator of the mod know and provide all the info you can (the last lines of the log will help a ton), dont be one of those guys that reports nothing and instead goes around saying how ♥♥♥♥♥♥ X mod is because it crashed your game, just because the last line of the log says that mod’s name…for the love of jesus christ DONT be an ass.

Anyway, use responsibly and please let me know if there are any features you would want from this or if you experience any issues.

Known Issues

– Indentation can go nuts if you have a lot of mods on, this is specially the case due to an oddity on how Render and Shader Callbacks are handled. They are usually interrupted by Input Action callbacks and some other "faster" callbacks, so that will indentate things which is appropiate but kind of messy in practice.

– End times for Render and Shader callbacks can be a little off due to the issues mentioned up there, it’s still accurate enough to tell if that was the callback that actually crashed or if it was something that interrupted said callback (like an input callback) so just use proper judgement knowing this. a.k.a if a input shader seems to be running inside of a render one, it may not be the case but rather it may be that the input one just shoved itself in there because….the api is just that unreliable.

Special thanks:

Sentinel & DeadInfinity – enlighted me in some lua tricks to hijack stuff

PD: Play Bertran