DoomToolbox is a collection of add-ons for Doom-based game engines which support ZScript, like GZDoom.
DoomToolbox is free and open source software. Add-ons are mostly licensed under
GPLv3. Modules are mostly licensed under BSD-3-Clause. See SPDX-License-Identifier
tag in each .org file for details. For third-party resources, such as image and sound
files, see REUSE.toml files in their directories for licenses.
Add-ons:
- 10.5x - enemy number multiplier (ZDoom forum topic)
- DoomDoctor - mod development and debugging utilities
- Final Custom Doom - gameplay customization options (ZDoom forum topic)
- Nomina - enemy names helper (ZDoom forum topic)
- Typist.pk3 - turns FPS games into typing exercises (ZDoom forum topic)
ZScript modules:
- Hint - hints for menu items
- LazyPoints - points scoring
- PlainTranslator - enables translation for plain text menu items
- StringUtils - string manipulation library
- libeye - level and screen projections
Experiments:
- LispOnZscript - toy Lisp-like language on top of ZScript (ZDoom forum topic)
Documentation:
HTML pages for Doom Toolbox should be available here.
Warning: build is not tested on MS Windows. Build process may have platform-dependent steps at the moment. Help with Windows is appreciated!
Requirements: these must be installed and available in PATH environment variable:
- Python, version >= 3.13
- Emacs, version >= 30.1
- GZDoom, version >= 4.14.2
- Development tools (probably from a venv):
pip install -r tools/requirements-dev.txt
Optional: Org mode extension for your preferred text editor, if it’s not Emacs. Org mode files can be edited as plain text, but an extension should add convenience features such as syntax highlighting.
See what can be built with command:
scons --helpExample:
scons FinalCustomDoom.pk3
All commands require that PATH environment variable has Emacs, tests also require
GZDoom in PATH. All commands put their results in directory build, and may remove
files and directories there.
Tests use internally: