|Codebase||HERETIC.EXE, Doom2-plus 1.92.6|
|Developer(s)||Andrey Budko (entryway)|
|Initial release||1.32.1 (2007-04-02, 13 years ago)|
|Latest release||Heretic-goodies 1.0 (2010-01-16, 10 years ago)|
|Written in||C, Assembly|
Heretic-plus, also known as Heretic+ or HereticP, is a executable hack created by Andrey Budko (entryway). It is derived from the Heretic: Shadow of the Serpent Riders version of HERETIC.EXE v1.3 and provides significantly increased static limits to reduce the risk of crashes, premature program exits and certain visual problems, while maintaining full compatibility with the original executable. It allows several WADs to be playable in the vanilla engine that previously required a limit-removing source port to be run.
Its exact file name is HERETICP.EXE.
Entryway released Heretic-plus 1.32.1 on April 2 2007, in the same thread as where Doom2-plus was announced, in this Doomworld forums . In the first release, all of the raised limits featured in Doom2-plus 1.92.6 were included, with the only difference being the SAVEGAMESIZE being even larger than Doom2-plus due to Heretic's save buffer being larger by default. However, this first release was made without RANGECHECK definition and hence does not check for some overflows that Doom does. Hence, some overflows will not be aborted with messages like in Doom ("no more visplanes"), but will overwrite the memory. If an overflow is small it may not crash immediately, but can lead to a desynch.
For the next two and half years, this was the only release build of Heretic-plus.
A new release followed in 2010  as Heretic-goodies when it was released on January 16. It added in a bindable inventory, to associate keys with artifacts. The included inventory.crk file would allow the user to rebind the items of an inventory to any key.
Heretic-plus saw limited usage in several WADs, but is primarly known by Kristian Käll (Kristus)'s mapset, Curse of D'Sparil. Heretic-plus is listed as the only option to play in vanilla Heretic without using a limit-removing source port.
- Heretic-plus inherits the raised static limits of Doom2-plus 1.92.6, with the SAVEGAMESIZE taking into account the difference in size that is present in the stock executable.
limit : old * k = new ------------------------------------------------------- visplanes[MAXVISPLANES] : 128 * 8 = 1024 drawsegs[MAXDRAWSEGS] : 256 * 8 = 2048 SAVEGAMESIZE : 196608 * 16 = 3145728 activeplats[MAXPLATS] : 30 * 256 = 7680 vissprites[MAXVISSPRITE] : 128 * 8 = 1024 linespeciallist[MAXLINEANIMS] : 64 * 256 = 16384 openings[MAXOPENINGS] : 16384 * 4 = 65536
Additional raised limits
- Includes a bindable inventory with the following parameters:
Default binds: G - ring of invincibility (God mode) I - shadowsphere (Invisibility) H - Health U - mystic Urn P - tome of Power L - torch (Lighting) B - time Bomb of the ancients C - morph ovum (Chicken) 0 - chaos device (teleport) You can rebind any via editing of inventory.crk 00087BA0: 00 67 ; Ring of Invincibility 00087BA1: 00 69 ; Shadowsphere 00087BA2: 00 68 ; Health 00087BA3: 00 75 ; Mystic Urn 00087BA4: 00 70 ; Tome of Power 00087BA5: 00 6C ; Torch 00087BA6: 00 62 ; Time Bomb of the Ancients 00087BA7: 00 63 ; Morph Ovum 00087BA8: 00 FF ; Wings of Wrath 00087BA9: 00 30 ; Chaos Device 'a'-'z' -> 0x61-0x7A, '0'-'9' -> 0x30-0x39, etc FF means "no bind"
- Heretic-goodies 1.0 binary and source code, hosted by SourceForge
- Heretic-plus 1.32.1 binary and source code, hosted by SourceForge
|Source code genealogy|
|Based on||Name||Base for|