|Initial release||Version 1 (2020-09-28, 11 months ago)|
|Written in||C, Assembly|
The ACE Engine (formerly Doom_ACE) is a currently unclassifiable project created by kgsws, the creator of KGZDoom. The ACE Engine fits somewhere between an enhancement mod, an executable hack and a source port, sharing characteristics of all three.
The core principle is to exploit known vulnerabilities in the original DOOM2.EXE (specifically version 1.9 of Doom II, not the similarly-numbered versions of Ultimate Doom or Final Doom) to execute arbitrary code using a custom loader loading a specially crafted (and technically invalid) map. In this case, the arbitrary code being loaded is the ACE Engine, which allows to graft some modern features to the game, such as bug fixes, raising some of the static limits, or a limited subset of DECORATE.
In essence, it can be thought of as a source port that has to be launched from vanilla Doom in DOS.
Being able to execute arbitrary code using a modified loader or savegame means that the ACE Engine is capable of supporting features far beyond what is present in source ports at the expense of time to implement it. So far demonstrated are:
- A minigame of Snake where the player has to eat the skull keys, played at the menu as an overlay
- Minimalist/custom HUD
- Mouselook support
- Per-sector toggable and switchable colored lighting/shading
- Colored Fog support
- Raised static limits: [MAXDRAWSEGS],[MAXVISPLANES],[MAXVISSPRITE]
- DECORATE support (WIP)
- Support for Hexen format maps
- Lethal forcefields
- On-the-fly recolorization of things like monsters or barrels, being able to cycle through colours
- Primitive jumping support through jumppads
|Source code genealogy|
|Based on||Name||Base for|
|ACE exploit/Custom code|