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

Post your example zscripts/ACS scripts/etc here.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
Post Reply
User avatar
m8f
 
 
Posts: 1461
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Location: Siberia (UTC+7)
Contact:

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

Post 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 all

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 all

    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.
Last edited by m8f on Wed Aug 10, 2022 9:53 am, edited 3 times in total.
User avatar
m8f
 
 
Posts: 1461
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Location: Siberia (UTC+7)
Contact:

Re: ^Zabor^ - VM abort handler

Post 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.
Post Reply

Return to “Script Library”