ZDoom

ZDoom is a source port, originally based on ATB Doom and NTDOOM. It has since added full support for all commonly-used Boom additions, Heretic, Hexen, Strife and Chex Quest. It has added many additional features, including slopes, uncapped framerate, and z-clipping. The source code is maintained by Randy Heit and Graf Zahl. The large number of modding features supported by ZDoom made it the port of choice for several independent game projects, notably Foreverhood, Action Doom 2: Urban Brawl, Chex Quest 3 and Harmony. ZDoom has also served as a popular codebase to build on, with numerous other source ports derived from it or using portions of its code.

Many in the Doom community use development versions of the port before they are officially released as stable builds.

Features

 * Support for all of Heretic's editing features (including foot-clipping floor textures and liquid splashes).
 * Support for all of Hexen's editing features (including ACS, hubs, and new map format).
 * Support for most of Boom's editing features
 * Support for several of MBF's editing features, including friendly monsters and loading DeHackEd patches directly.
 * Support for UDMF.
 * Support for FraggleScript with permission of Simon Howard (Fraggle).
 * Support for ACS with many extensions and additional features.
 * Support for all Doom engine games.
 * Removal of most vanilla Doom limits (including the visplane overflow).
 * High screen resolutions (with optimizations for modern processors).
 * Translucency (regular and additive).
 * A console.
 * Additional control options including crosshairs, free look, jumping, swimming, and crouching configurable via Quake-style key bindings.
 * Choice of several MIDI devices, including OPL emulation, Gravis Ultrasound emulation, and FluidSynth among others.
 * Many supported sound and image formats, see for complete listing.
 * Greatly enhanced texture definition lump allowing to define any graphics used by the game using any other graphics as patches, and allowing several effects such as scaling, blending, rotating, and mirroring.
 * DECORATE script: a simple yet powerful actor definition language.
 * Limited UDP Internet or LAN networking inherited from Linux Doom.
 * Walking over/under monsters and other things.
 * Runs under Windows 98, NT, XP, Linux and Mac OS X.
 * Support for Doom Connector and Player Connector network games.
 * 3D floors, 3D middle textures, slopes and colored lighting.
 * Decals on walls for scorch marks and blood splatter.
 * Support for custom player skins compatible with Doom Legacy.
 * A chasecam and many camera effects, including Duke Nukem-style security camera or Unreal-style skyboxes. Cameras can even replace the player view, allowing for scripted cutscenes or alternative gameplay mimicking a sidescroller.
 * Support for using features of every supported game in all of them &mdash; for example, a Doom map can feature Strife conversations, Hexen scripting and actors that use Heretic codepointers.
 * Support for loading resources directly from ZIP (.pk3) or 7z (.pk7) files, making the use of the traditional WAD file format optional except for map lumps.
 * ENDOOM and animated start up screen support

List of supported games
In addition, ZDoom offers aliases allowing to use free IWAD projects Freedoom and Blasphemer as alternatives instead of replacements. See for further information.
 * All classic Doom-engine IWADs:
 * Doom v1.2 or later, including Ultimate Doom
 * Doom II; development versions even support the modified IWAD included as a bonus with Doom 3: BFG Edition
 * Final Doom
 * Heretic
 * Hexen
 * Strife, including both demo versions
 * Chex Quest
 * Several stand-alone mods:
 * Action Doom II: Urban Brawl
 * Chex Quest 3
 * Hacx v1.2 or v2.0
 * Harmony

Ports based on recent versions of ZDoom
These ports support most or all of the features listed above.
 * GZDoom
 * Zandronum and its predecessor, Skulltag

Ports based on older versions of ZDoom
These ports are not necessarily compatible with recent ZDoom mods.
 * bZdoom
 * csDoom
 * Odamex
 * ZDaemon
 * ZDaemonGL
 * ZDoomGL