DEHSUPP
From DoomWiki.org
DEHSUPP is a lump introduced by ZDoom that is used to add things to the list of actors and weapons that can be modified by DeHackEd. By compiling a DEHSUPP lump using the associated utility and inserting it into a WAD file, DeHackEd patches can reference things from Heretic, Hexen, and even Strife. It should be noted that DEHSUPP does not do anything by itself, and must be used in conjunction with either an internal or external DeHackEd patch that takes advantage of the new references.
DEHSUPP is now considered deprecated amongst the ZDoom community, as DECORATE now covers the creation of new actors and weapons. The lump itself in ZDoom is now in a text format, but only the one in zdoom.pk3 will be loaded, and if a DEHSUPP lump is present in a WAD loaded, it entirely deactivates DeHackEd support for the session.
ZDaemon implementation[edit]
DEHSUPP modding has been embraced by the ZDaemon community, since this port is based on a version of ZDoom that predates DECORATE.
The DEHSUPP table as used by ZDaemon is as follows:
// // C O D E B L O C K S U S E D B Y Z D A E M O N // // Defines sprites and their corresponding ID's // There is no benefit altering these and can break compatibility. Kindly leave as-is in official file. // Sprites names CAN be renamed in DeHackEd (Text 4 4 <new name> feature) OrgSprNames{}; // Map of all frames available for modding within the engine. // If you're using only DOOM, you can use the rest such as heretic or hexen for your own purposes. StateMap{}; // Sound map that can be called by actors or by ACS // I believe you cannot re-define the default 108 sounds order (They are hardcoded). // You CAN add new custom ones after the 108 one though. SoundMap{}; // Names of different actor types, in original Doom 2 order // Those are the actual "Things". Only those known to the engine can be defined. InfoNames{}; // RenderStyles, should match those in actor.h // These ARE used and ZDaemon requires them. // If absent, RenderStyles won't work. // (some are actually defined in zdaemon.wad/dehsupp) RenderStyles{}; // // C O D E B L O C K S U N U S E D B Y Z D A E M O N // // This is a list of all the action functions used by each of Doom's states. // Also note from ZDaemon changelog 1.09b28 release (2012-08-31) // // 66. Fixed dehacked frame pointer definitions. Dehsupp ActionLists are now // ignored, and an internal list is used instead. Adjusted the code so // that the internal order of the codepointers no longer matters. This // fixes the issue with dehacked codepointers using the action list. // // I recently (5.3.2018) verified that this list is completly ignored by ZDaemon 1.10 // and thus can be fully removed and should not be used.. (unless you target other engine) // Used by very old DeHackEd patches. // This feature is surpassed by the [CODEPTR] feature, it is very old and should not be used. ActionList{}; // List of codepointers available to the engine. This is ignored by ZDaemon. Actions{}; // These are the original height values of DOOM2 actors. They are used if a patch // specifies that a thing should be hanging from the ceiling but doesn't specify // a height for the actor since these are the heights it probably wants. // You can completely ignore this as you can define custom height in DeHackEd. OrgHeights{}; // DeHackEd made the erroneous assumption that if a state didn't appear in // Doom with an action function, then it was incorrect to assign it one. // This is a list of the states that had action functions, so we can figure // out where in the original list of states a DeHackEd codepointer is. // (DeHackEd might also have done this for compatibility between Doom // versions, because states could move around, but actions would never // disappear, but that doesn't explain why frame patches specify an exact // state rather than a code pointer.) // // To shorten your thinking this was some sort of conversion for original doom2.exe // And is certainly ignored by ZD... ancient thing and does not have to be used - Aeyesi/Medis CodePConv{}; // Defines actor flags available to the engine // Most likely unused. ThingBits{};
External links[edit]
- DEHSUPP at the ZDoom wiki
- DEHSUPP description at the ZDaemon forums
- DEHSUPP Documentation Generator (DDG) at the ZDaemon forums
- DeHackEd Extension page containing DEHSUPP links, at ZDaemon.org