ODAMEX - Online Multiplayer Doom ™ Odamex is a free, cross-platform (Mac, Windows, Linux) modification of the Doom engine that allows players to easily join servers dedicated to playing Doom online. A copy of Doom, Doom II, Freedoom or Chex Quest is recommended to play it. If you do not own Doom, it can be purchased on Steam. Step 1: With the package manager of choice download Chocolate Doom to your Linux computer. Step 2: On your Windows machine find where your steam games are installed by clicking on Steam - Settings - Download - Steam Library Folders. Note about the Linux versions — you'll need SDL, SDL mixer, SDL image and libpng installed, and smpeg if you want to use the HQ versions. On some linux distro's mp3 support is not enabled in SDL mixer — a workaround has been posted on the forum. Low quality downloads (deprecated) Additionally a low quality version is supplied. Download either the RPM or the tarball here. It's possible that the version numbers on this page may not be up to date. You can figure it out:-). Getting a Doom IWAD. The IWAD is the main data file containing the graphics and levels for Doom. You need one to use PrBoom.
This page guides you through the steps for getting PrBoom running on UNIX and Linux systems.
Steps
Install the PrBoom program and required libraries - Please see the most appropriate instructions depending on your system distribution:
- Linux/x86 RPM based distros (Redhat, Mandrake, ..)
- Debian, Ubuntu (and derivatives)
- FreeBSD (may be appropriate for other BSDs)
- Generic UNIX (anything else)
- Getting music (optional).
Linux/x86 RPM based distributions
Several of the main desktop Linux distributions ship with and install all the required libraries by default. So you can just grab the RPM of PrBoom, prboom-2.4.5-1.i386.rpm
, and install it with the following command (as root):
rpm -ivh prboom-2.4.5-1.i386.rpm
You can then run PrBoom as /usr/games/prboom
(or just prboom
if the games are in your PATH
).
Notes:
- There may be newer versions of some of these libraries available from their websites; anything in the 1.2 series should work fine, let us know if not.
- If you are using a partiularly stripped down setup, you might need to install a few more RPMs required by these ones. They should be on your distribution CDs.
- No source RPM (SRPM) is provided for PrBoom. The RPM is built from the source tarball unmodified: see the
INSTALL
file in the source tarball for details. - If you have information on installing PrBoom on other distributions, if there were any special steps required (or if there weren't!), let us know, and I'll update the instructions here.
Debian
Build the latest PrBoom from source — this is easy to do on Debian. Install the libsdl1.2-dev, libsdl-mixer1.2-dev and libsdl-net1.2-dev packages — these are all available in Debian woody and above. Get the prboom source code prboom-2.4.5.tar.gz
from our download page, extract, and then follow the included INSTALL
instructions.
If you have an Athlon 64 (aka amd64 or x86_64) system, the version of SDL_mixer shipped with Debian and Ubuntu has some bugs that affect music playback. You may want to get the source to the libsdl-mixer1.2 package and recompile it with the patch, or just install a patched .deb, or get SDL_mixer 1.2.7 or later and install that instead.
FreeBSD
I have tested on various FreeBSD versions. Best hard drive for laptop 2018. The ports tree contains packages of the stuff you need. Make the following ports:
- devel/sdl12
- audio/sdl_mixer (requires audio/smpeg)
- net/sdl_net
Finally, get prboom-2.4.5.tar.gz
the PrBoom source, extract, and follow the included INSTALL
instructions.
Generic UNIX
You need to get and install the following libraries:
- SDL 1.2.x, from the SDL 1.2 download page.
- SDL_mixer, from its home page. You might need to compile and install SMPEG first to compile this, but I think that recent versions do not require SMPEG (it provides mp3 music support I think, which is not needed for PrBoom).
- SDL_net, from its home page.
Then get prboom-2.4.5.tar.gz
the PrBoom source, extract, and follow the included INSTALL
instructions.
Download page
Download either the RPM or the tarball here. It's possible that the version numbers on this page may not be up to date. You can figure it out :-).
Getting a Doom IWAD
The IWAD is the main data file containing the graphics and levels for Doom. You need one to use PrBoom. If you have a copy of one of the original Doom games, copy your Doom, Doom 2, Ultimate Doom or Final Doom IWAD (doom.wad, doom2.wad, tnt.wad or plutonia.wad) to /usr/local/share/games/doom/. Or, if you don't have any of those, use the shareware IWAD, which you can get from http://www.doomworld.com/ or http://www.idsoftware.com/.
Music
The SDL_mixer library used by PrBoom supports software MIDI music synthesis. If you want to hear the Doom music, you need a set of Timidity instrument patches. Get the timidity.tar.gz
from the bottom of the SDL_mixer page, and extract in /usr/local/lib
. You may need to symlink /usr/local/lib/timidity/timidity.cfg
to /etc/timidity
— see the console output from PrBoom to see where it is looking for this file.
ZDoom now comes in multiple flavours! The primary port, GZDoom, sports advanced hardware (OpenGL) and enhanced software rendering capabilities, while the port LZDoom serves as an alternative with a different feature set, detailed below. Although the parent ZDoom codebase has been discontinued, the latest official release is available here for posterity.
GZDoom is the latest version targeting current systems with modern graphics hardware. (Vulkan/OpenGL 4.5 capability recommended, but the minimum requirement for the hardware renderer is OpenGL 3.3, the minimum for the software renderer is Direct3D 9)
LZDoom is based on an older version of GZDoom. It does not provide all features currently supported by GZDoom but in turn is capable of running the hardware renderer on older hardware which does not support modern OpenGL features.
Want more features? Get more out of GZDoom! The release builds are not all that GZDoom has to offer. If you want to stay ahead of development, try out some Dev Builds and be the first to try out the newest features in development, before everyone else does! In doing so you can help to ensure releases are smoother, by reporting any bugs that you may find! LZDoom Builds also available! Download rar 64 bit full version.
GZDoom v4.5.0For 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.
Support
ZDL
Want a simple launcher to make using ZDoom easier? Try this.
Editing
Everything you need to start creating ZDoom mods.
SLADE 3
A full-fledged level and resource editor for Doom; which supports most *ZDoom features. Available for Windows, Mac, and Linux.
Ultimate Doom Builder
A level editor with complete support of *ZDoom features. Windows-only.
ACC 1.58 Windows Version
ACS script compiler for use with ZDoom and/or Hexen. This is not the version of ACC released by Raven. It supports all of ZDoom's language extensions.
ACC 1.58 Mac OS X Version
Mac OS X version of the ACC script compiler. Command-line utility only; requires terminal to run, no .app package included.
ACC 1.58 Linux Version(32-bit)
Linux version of the ACC script compiler. Command-line utility only; requires terminal to run.
ZDBSP 1.19
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.
Doom Linux Download
Utilities
These tools support a few special editing and playing scenarios.
WadSmoosh
Merges your Doom IWADs (Doom, Doom 2, Final Doom, Master Levels, etc.) into a single IWAD, allowing players to switch between games without relaunching.
WadExt
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.
MAPINFO Converter
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.
Misc Editing Utilities
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).
Utility Source Code
Contains the source code for the editing utilities.
Miscellaneous
The following files are mostly of historic interest.
ACC 1.58 Source Code
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.
Debian
Build the latest PrBoom from source — this is easy to do on Debian. Install the libsdl1.2-dev, libsdl-mixer1.2-dev and libsdl-net1.2-dev packages — these are all available in Debian woody and above. Get the prboom source code prboom-2.4.5.tar.gz
from our download page, extract, and then follow the included INSTALL
instructions.
If you have an Athlon 64 (aka amd64 or x86_64) system, the version of SDL_mixer shipped with Debian and Ubuntu has some bugs that affect music playback. You may want to get the source to the libsdl-mixer1.2 package and recompile it with the patch, or just install a patched .deb, or get SDL_mixer 1.2.7 or later and install that instead.
FreeBSD
I have tested on various FreeBSD versions. Best hard drive for laptop 2018. The ports tree contains packages of the stuff you need. Make the following ports:
- devel/sdl12
- audio/sdl_mixer (requires audio/smpeg)
- net/sdl_net
Finally, get prboom-2.4.5.tar.gz
the PrBoom source, extract, and follow the included INSTALL
instructions.
Generic UNIX
You need to get and install the following libraries:
- SDL 1.2.x, from the SDL 1.2 download page.
- SDL_mixer, from its home page. You might need to compile and install SMPEG first to compile this, but I think that recent versions do not require SMPEG (it provides mp3 music support I think, which is not needed for PrBoom).
- SDL_net, from its home page.
Then get prboom-2.4.5.tar.gz
the PrBoom source, extract, and follow the included INSTALL
instructions.
Download page
Download either the RPM or the tarball here. It's possible that the version numbers on this page may not be up to date. You can figure it out :-).
Getting a Doom IWAD
The IWAD is the main data file containing the graphics and levels for Doom. You need one to use PrBoom. If you have a copy of one of the original Doom games, copy your Doom, Doom 2, Ultimate Doom or Final Doom IWAD (doom.wad, doom2.wad, tnt.wad or plutonia.wad) to /usr/local/share/games/doom/. Or, if you don't have any of those, use the shareware IWAD, which you can get from http://www.doomworld.com/ or http://www.idsoftware.com/.
Music
The SDL_mixer library used by PrBoom supports software MIDI music synthesis. If you want to hear the Doom music, you need a set of Timidity instrument patches. Get the timidity.tar.gz
from the bottom of the SDL_mixer page, and extract in /usr/local/lib
. You may need to symlink /usr/local/lib/timidity/timidity.cfg
to /etc/timidity
— see the console output from PrBoom to see where it is looking for this file.
ZDoom now comes in multiple flavours! The primary port, GZDoom, sports advanced hardware (OpenGL) and enhanced software rendering capabilities, while the port LZDoom serves as an alternative with a different feature set, detailed below. Although the parent ZDoom codebase has been discontinued, the latest official release is available here for posterity.
GZDoom is the latest version targeting current systems with modern graphics hardware. (Vulkan/OpenGL 4.5 capability recommended, but the minimum requirement for the hardware renderer is OpenGL 3.3, the minimum for the software renderer is Direct3D 9)
LZDoom is based on an older version of GZDoom. It does not provide all features currently supported by GZDoom but in turn is capable of running the hardware renderer on older hardware which does not support modern OpenGL features.
Want more features? Get more out of GZDoom! The release builds are not all that GZDoom has to offer. If you want to stay ahead of development, try out some Dev Builds and be the first to try out the newest features in development, before everyone else does! In doing so you can help to ensure releases are smoother, by reporting any bugs that you may find! LZDoom Builds also available! Download rar 64 bit full version.
GZDoom v4.5.0For 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.
Support
ZDL
Want a simple launcher to make using ZDoom easier? Try this.
Editing
Everything you need to start creating ZDoom mods.
SLADE 3
A full-fledged level and resource editor for Doom; which supports most *ZDoom features. Available for Windows, Mac, and Linux.
Ultimate Doom Builder
A level editor with complete support of *ZDoom features. Windows-only.
ACC 1.58 Windows Version
ACS script compiler for use with ZDoom and/or Hexen. This is not the version of ACC released by Raven. It supports all of ZDoom's language extensions.
ACC 1.58 Mac OS X Version
Mac OS X version of the ACC script compiler. Command-line utility only; requires terminal to run, no .app package included.
ACC 1.58 Linux Version(32-bit)
Linux version of the ACC script compiler. Command-line utility only; requires terminal to run.
ZDBSP 1.19
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.
Doom Linux Download
Utilities
These tools support a few special editing and playing scenarios.
WadSmoosh
Merges your Doom IWADs (Doom, Doom 2, Final Doom, Master Levels, etc.) into a single IWAD, allowing players to switch between games without relaunching.
WadExt
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.
MAPINFO Converter
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.
Misc Editing Utilities
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).
Utility Source Code
Contains the source code for the editing utilities.
Miscellaneous
The following files are mostly of historic interest.
ACC 1.58 Source Code
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.
ACC 1.58 WadAuthor/DOS Version
This version of ACC is only if you're old-school and using WadAuthor or a DOS-based editor like ZETH.
FluidSynth DLL (version 1.1.6)
(64-bit version)
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. FluidSynth is bundled with GZDoom since v3.1.0, so this separate download is only useful for older versions.
TiMidity++
Doom 3 Linux
ZDoom supports using TiMidity++ for MIDI playback. To use it, extract timidity.exe and timidity.cfg and read the instructions. TiMidity++ has become an internal player integrated within GZDoom since v3.3.0, so this separate download is only useful for older versions.
TiMidity++ Source Code
This is the source code for ZDoom's custom version of TiMidity++. Alternatively, a patch with the custom changes can be downloaded and applied on the original TiMidity++ source code.
WadAuthor Configuration Files
Contains a wcf file for use with WadAuthor.
ZDBSP 1.19 Source Code
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.
ZETH 4.17 Level Editor
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.
Doom For Linux Download
ZETH 4.17 Source Code
This is the source code for ZETH. Hopefully somebody will find it useful.
Old (1999) Demonstration WAD
Shows off some of the features that were new as of ZDoom 1.22.
Old (1999) Editing Reference
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.