Page 1 of 1

[Release] HacX 1.2 for DOS based on MBF 2.04

Posted: Sun Jun 16, 2024 6:35 am
by MrFlibble
This is an unofficial DOS port of HacX 1.2 (a stand-alone Doom II TC) based upon the code of Gerwin Broers' MBF Maintenance release 2.04 with additional sound code from ludicrous_peridot. You will need the HacX 1.2 IWAD (main data file), available from the official site, to play: The port takes full advantage of MBF fixes, but also introduces a few minor tweaks, mostly of cosmetic nature:
  • restored the v1.0/1.1 title screen, which now says "made for DOOM II engine" instead of "made for DOOM II"
    Image
  • restored the original invulnerability palette
    Image
  • made a custom automap colour scheme, inspired by that from Strife, but in green
    Image
  • enabled colour swaps for HUD font to make it work with MBF menus
    Image Image
    The background tiles here match those in the HacX DOS installer.
  • removed the display of par times on the level tally screen, as HacX does not have custom par times
    Image
I also had to make a few minor code changes for the port to match the behaviour of the original DOS versions. For example, even though HacX 1.0/1.1 is based on DOOM II 1.9, it allows to increase player armour beyond 200% when picking up armour bonuses ("dampeners"), just like DOOM 1.2. Thankfully, MBF 2.04 includes an optional version 1.2 compatibility mode, so I only had to change one line in the code to make it work.

Additionally, I tweaked translucency settings for item pickups, so that if translucency (an MBF feature) is enabled, it does not affect items which should appear solid, like the Force Field or Body Armor.

You can also enable helper dogs, which is another MBF feature. The game uses libre dogs created by Nash Muhandes and included by default in GZDoom.

This version uses its own self-running demos, because those from both v1.0 and v1.2 desync in MBF.

The port takes full advantage of ludicrous_peridot's modified Allegro library that restores the use of the GENMIDI lump with custom FM synth instruments for OPL music playback. A version of DMXOPL is included to provide for better quality music output in this mode.

I've also included multiplayer mode drivers IPXHACX.EXE and SERHACX.EXE, which are modified versions of IPXBOOM.EXE and SERBOOM.EXE from TeamTNT's BOOM package (BOOM was a predecessor to MBF) that recognize HACX.EXE as a valid binary executable. I was able to start up a co-op game with IPXHACX.EXE with two instances of DOSBox running on the same computer (as described here), so I guess that this should work on real hardware as well.