Page 1 of 1

[v1.1.0] ^Zabor^ - VM abort handler

PostPosted: Tue Feb 23, 2021 5:26 am
by m8f
Zabor is VM abort handler for GZDoom. It is both a script library and a standalone add-on.



Download
Source code
This mod is a part of m8f's doctor's bag.

Features

When VM abort happens, Zabor prints:
  • basic game information: map name, total time, multiplayer status, player class, skill;
  • game configuration: compat flags, dm flags, autoaim;
  • event handler list;
  • system time;
  • a request for the user to report the VM abort.
  • zr_enabled cvar to disable Zabor.

If there are several Zabor-based handlers loaded, only the first one will print stuff. For this to work, all handlers must have "VmAbortHandler" somewhere in their class name.

Also there is zabor console command for gathering a report by manual request.

How to use

As a standalone add-on
Simply load zabor-v*.pk3 with other mods. Wait for an abort. You can test that it works with the following command:
Code: Select allExpand view
error welp


As a script library
  1. Copy zr_VmAbortHandler class from zscript.zs to your mod.
  2. Change zr_ to something unique. Please make sure that VmAbortHandler part of the name remains intact.
  3. Add this event handler to gameinfo section in mapinfo lump like this:
    Code: Select allExpand view
    gameinfo
    {
      AddEventHandlers = "my_VmAbortHandler"
    }
  4. Copy zabor alias from keyconf.txt if you want zabor console command to be available.
  5. Copy zr_zabor cvar from cvarinfo.txt and change its prefix.

Acknowledgments

  • Thanks to KeksDose for the concept of VM abort handler.
  • Thanks to Colerx for bug reports.
  • Thanks to Accensus for feature suggestions.

Re: ^Zabor^ - VM abort handler

PostPosted: Fri Mar 12, 2021 9:32 am
by m8f
Important update: fixed VM abort ( :D ) in multiplayer. Please download version 1.0.1.

Edit: Update v1.1.0. Changelog from 1.0.1:
- fixed formatting with colored player names;
- added zr_enabled CVar to control if Zabor is enabled.