ZDoom is a family of enhanced port of the Doom engine to modern operating systems. It runs on Windows, Linux, and OS X, and adds new features not found in the games as originally published by id Software.
ZDoom ports may be used and distributed free of charge. No profit may be made from the sale of it.
ZDoom was originally created by Randi Heit usingand various others' sources. Its successor ports GZDoom and QZDoom are now maintained by Christoph Oelckers, Braden Obrzut, Rachael Alexanderson, and Magnus Norddahl.
Why would I want to use ZDoom instead of regular Doom?
Consider all these features that ZDoom has that are not found in the standard Doom originally released by id:
- It runs well under all modern versions of Windows, from Windows XP to the new Windows 10. If you have Mac or Linux, it works with that too.
- Can play all Doom engine games, including Ultimate Doom, Doom II, Heretic, Hexen, Strife, and more.
- Supports all the editing features of Hexen. (ACS, hubs, new map format, etc.)
- Supports most of the Boom editing features.
- Many more all-new editing features such as:
- Colored lighting.
- 3D floors.
- Advanced polyobjects free from the restrictions of their original implementation in Hexen.
- Custom monsters, weapons, items, player classes, and other entities.
- High resolution textures and sprites.
- Translucency (regular and additive).
- Many, many extensions to ACS that were not present in Hexen.
- More music formats: Ogg Vorbis, MOD, XM, IT, S3M, MIDI, and MP3 as well as old-fashioned MUS all work.
- More sound formats: FLAC and WAVE can both be used for sound effects.
- More texture formats: PNG and JPEG are both useable for artwork.
- All Doom limits are gone.
- Several softsynths for MUS and MIDI playback, including an OPL softsynth for an authentic "oldschool" flavor.
- High resolutions.
- Quake-style console and key bindings.
- Free look (look up/down).
- Jumping, crouching, swimming, and flying.
- Full-featured joystick/gamepad support under Windows.
- Up to 8 player network games using UDP/IP, including team-based gameplay.
- Support for the Bloodbath announcer from the classic Monolith game Blood.
- Walk over/under monsters and other things.
With thanks to...
- id Software / John Carmack
- These are the people who developed Doom and later released the source code for the Linux port. Without them, there would be no ZDoom. Some of the functions from their Quake2 game DLL source were also used.
- Marisa "Randi" Heit
- For creating ZDoom and maintaining it for nineteen years.
- Bernd Kreimeier
- Packaged up id's Linux code for the initial source release.
- Raven Software
- Portions of Heretic and Hexen were used in ZDoom.
- Christoph Oelckers
- Most of the DECORATE support as well as numerous bug fixes. Also, for the OpenGL renderer, as well as advancing ZScript along to the point where it is today.
- Chi Hoang / Team TNT
- Responsible in one way or another for Boom, which provided a significant codebase for ZDoom. Information about Boom can be found on the Doom Wiki at DoomWiki.org.
- Lee Killough
- For all his brilliant work on both Boom and later MBF. Portions of MBF were used in ZDoom, primarily to fix Boom bugs.
- Martin Collberg
- Creator of the Cajun Bot.
- Sebastien Bacquet
- Created qmus2mid which was used to determine the structure of DOOM's MUS lumps so that the game would have music.
- Greg Lewis
- Released his DeHackEd source, without which adding DeHackEd support would have been much harder.
- James Haley
- Creator of the Eternity Engine source port, helped design the specifications for the Universal Doom Map Format and allowed the use of some parts of his advanced polyobject code to be used in ZDoom.
- Simon Howard
- Creator of the SMMU source port, allowed code from it to be used in ZDoom.
- Rachael Alexanderson
- Creator of the QZDoom source port which merged in Norddahl's True-color software renderer in with GZDoom.
- Magnus Norddahl
- Creator of QZDoom's true-color software renderer, as well as adding in post-processing and flexible window scaling support to both ZDoom and GZDoom.