ZDoom now comes in multiple flavours! The primary port, GZDoom, sports advanced hardware (OpenGL) and enhanced software rendering capabilities, while its sister port QZDoom serves a test bed for new (stable) features. Although the parent ZDoom codebase has been discontinued, the latest official release is available here for posterity.

For help getting started, see the online documentation in the wiki. You need to provide your own game IWAD. If you do not have a copy of a doom-engine game, the easiest way to obtain them is to purchase them from Steam or GOG. When you download them from either of these stores, ZDoom will automatically find them.


Want a simple launcher to make using ZDoom easier? Try this.

ZDoom supports using TiMidity++ for MIDI playback. To use it, extract timidity.exe and timidity.cfg and read the instructions.

ZDoom supports using FluidSynth for MIDI playback. To use it, extract libfluidsynth.dll to the same directory as zdoom.exe and then configure it from within ZDoom.


Everything you need to start creating ZDoom mods.

A full-fledged level and resource editor for Doom; which supports most *ZDoom features. Available for Windows, Mac, and Linux.

A level editor with complete support of *ZDoom features. Windows-only.

ACS script compiler for use with ZDoom and/or Hexen. This is not the version of ACC released by Raven. It supports all off ZDoom's language extensions.

This is a standalone version of ZDoom's internal node builder. Its most important feature is that it knows about polyobjects, but it can also build GL nodes if you don't want to wait for glBSP to do it. At the time of writing, it is also the only nodebuilder with UDMF support.


These tools support a few special editing and playing scenarios.

Merges your Doom IWADs (Doom, Doom 2, Final Doom, Master Levels, etc.) into a single IWAD, allowing players to switch between games without relaunching.

A command-line utility that extracts the contents of a WAD to a (mostly) pk3-compatible folder structure. Useful for converting old mods or setting up advanced development workflows.

This is a command-line utility written by Graf Zahl to convert old-format MAPINFO lumps to new-format ones. See the original forum thread for more information.

This package contains both a Windows binary and source code.

Includes the programs zwadconv, swantbls, and listacs. Zwadconv converts old maps to the Hexen format used by ZDoom natively. Swantbls creates SWITCHES and ANIMATED lumps used by BOOM. Listacs is an ACS script disassembler (not decompiler).

Contains the source code for the editing utilities.


The following files are mostly of historic interest.

This is the latest source code for ZDoom's version of ACC. It includes both a makefile for GCC and a project file for Visual C++ 6, so you can build a Windows, DOS, or Linux version. It is also available on its GitHub repository.

This is the source code for ZDBSP 1.19. The build system uses CMake, so you can generate project files for any version of Visual C++ from 6 up or several other IDEs, or you can create Makefiles as well. It is also available on its GitHub repository.

This version of ACC is only if you're old-school and using WadAuthor or a DOS-based editor like ZETH.

Contains a wcf file for use with WadAuthor.

A DETH-based editor for ZDoom that runs in a DOS box. Comes with minimal documentation. If you don't already know how to use DETH, you should go find a good tutorial that explains it. If you plan on doing any ACS scripting, you should be sure to also download ACC below.

This is the source code for ZETH. Hopefully somebody will find it useful.

Shows off some of the features that were new as of ZDoom 1.22.

Downloadable copy of the Editing Reference for offline viewing. This has only been updated for ZDoom 1.22. For ZDoom features added since then, you should consult the wiki documentation instead.