wojciech-graj/doom-ascii
FreeDooM in the terminal!
FreeFree tier
About wojciech-graj/doom-ascii
A text-based source port of DOOM that runs entirely in the terminal, rendering the game using ASCII, Unicode block, or Braille characters. It is a port of doomgeneric and supports various display settings including color, text gradients, and scaling. The game can be played via telnet at doom.w-graj.net:666. Binary releases are available for Windows and Linux, and building from source requires Make and a C compiler. Note that the game does not include sound and requires a WAD file (the shareware version is freely available).
Key Features
Text-based rendering of DOOM in the terminal
Supports ASCII, Unicode block, and Braille character sets
Customizable display: color, gradients, bold, scaling, and frame erasing
Telnet multiplayer support at doom.w-graj.net:666
Remappable keybindings via .default.cfg file
Cross-platform: Windows, Linux, macOS (build from source)
Free and open-source (GPL-2.0 license)
Pros & Cons
Pros
- Free and open-source with GPL-2.0 license
- Works in any terminal with 24-bit RGB support
- Multiple character sets for visual preference
- Adjustable scaling to fit terminal performance
- Telnet access allows easy remote play
- Cross-platform availability (Windows, Linux, macOS)
Cons
- No sound support
- Requires 24-bit RGB terminal for correct colors (not supported by all terminals)
- Performance limited by terminal throughput; may not run at full resolution at high FPS
- Requires a DOOM WAD file (shareware version free, but not included)
- No native multiplayer; only single-player via local or telnet
Best For
Playing DOOM in a terminal environmentRetro gaming without graphical overheadRunning DOOM over telnet for remote playLearning about terminal graphics and ANSI escape codesDemonstrating source port capabilities for text-based games
FAQ
How do I fix incorrect colors?
If colors display incorrectly, your terminal likely does not support 24-bit RGB. Refer to the documentation for list of supported terminals and troubleshooting steps.
How do I get a WAD file?
You need a DOOM WAD file. If you do not own the game, the shareware version is freely available and can be used.
What command-line options are available?
Options include -nocolor, -nograd, -nobold, -chars (ascii/block/braille), -erase, -fixgamma, -kpsmooth, and -scaling.
How do I build from source?
Ensure Make and a C compiler are installed. Run 'make' in the repository root. Use 'make PLATFORM=...' to target specific platforms (unix, musl, win32, win64, etc.).