DDWolf aims at bringing modern improvements to the Wolf4SDL engine while still preserving the game as pure and close to the original as possible.
DDWolf is based on KS-Presto's Wolf4SDL.
KS-Presto's Wolf4SDL is available at: https://github.com/KS-Presto/Wolf4SDL
Wolf4SDL is an open-source port of id Software's classic first-person shooter Wolfenstein 3D to the cross-platform multimedia library "Simple DirectMedia Layer (SDL)" (http://www.libsdl.org).
The overall work to get to where we are would not be possible without the following people, more credits at the end of the readme.
#USE_MODERN_CONTROLS
#VIEASM AlumiuN's Advanced Sound Manager
#SEAMLESSLEVELS Disables the Episode selection screen on Wolf3D
#USE_READTHIS Enables help text in the main menu
#USE_RAND Enables the C++ random number generator
#WSJ_MESSAGE WSJ's message feature, shows on-screen messages
for pickups, secrets and locked doors
#SAVE_GAME_SCREENSHOT Shows a screenshot in the Save and Load screens
The following versions of Wolfenstein 3D data files are currently supported by the source code (choose the version by commenting/uncommenting lines in version.h as described in that file):
- Wolfenstein 3D v1.1 full Apogee
- Wolfenstein 3D v1.4 full Apogee
- Wolfenstein 3D v1.4 full GT/ID/Activision
- Wolfenstein 3D v1.4 full Imagineer (Japanese)
- Wolfenstein 3D v1.0 shareware Apogee
- Wolfenstein 3D v1.1 shareware Apogee
- Wolfenstein 3D v1.2 shareware Apogee
- Wolfenstein 3D v1.4 shareware
- Spear of Destiny full
- Spear of Destiny demo
- Spear of Destiny - Mission 2: Return to Danger
- Spear of Destiny - Mission 3: Ultimate Challenge
Currently supported operating systems :
- Windows 98
- Windows ME
- Windows 2000
- Windows XP
- Windows Vista (32 and 64 bits)
- Windows 7 (32 and 64 bits)
- Windows 10 (32 and 64 bits)
- Windows 11 (32 and 64 bits)
- Linux*
*Build system untested.
To play Wolfenstein 3D with Wolf4SDL, you just have to copy the original data files (e.g. *.WL6) into the same directory as the Wolf4SDL executable.
Please make sure, that you use the correct version of the executable with the according data files version as the differences are hardcoded into the binary!
You also need to have SDL2.dll (2.0.18) and SDL_Mixer.dll (2.0.4) in the same directory as the EXE.
If you play in windowed mode (--windowed parameter), press SCROLLLOCK or F12 to grab the mouse. Press it again to release the mouse.
DDWolf supports the following command line options :
--help This help page
--tedlevel <level> Starts the game in the given level
--baby Sets the difficulty to baby for tedlevel
--easy Sets the difficulty to easy for tedlevel
--normal Sets the difficulty to normal for tedlevel
--hard Sets the difficulty to hard for tedlevel
--nowait Skips intro screens
--windowed[-mouse] Starts the game in a window [and grabs mouse]
--disablehdres Disables resolution detection, only works in fullscreen
--disableratiofix Disables the 4:3 aspect ratio correction
--res <width> <height> Sets the screen resolution (must be multiple of 320x200 or 320x240)
--resf <w> <h> Sets any screen resolution >= 320x200 (which may result in graphic errors)
--bits <b> Sets the screen color depth (Use this when you have palette/fading problem or perhaps to optimize speed on old systems.)
Allowed: 8, 16, 24, 32, default: "best" depth.
--nodblbuf Don't use SDL's double buffering
--extravbls <vbls> Sets a delay after each frame, which may help to reduce flickering (SDL does not support vsync...)
(unit is currently 8 ms, default: 0)
--joystick <index> Use the index-th joystick if available
--joystickhat <index> Enables movement with the given coolie hat
--samplerate <rate> Sets the sound sample rate (given in Hz)
--audiobuffer <size> Sets the size of the audio buffer (-> sound latency, given in bytes)
--ignorenumchunks Ignores the number of chunks in VGAHEAD.* (may be useful for some broken mods)
--configdir <dir> Directory where config file and save games are stored (Windows default: current directory, others: $HOME/.wolf4sdl)
= Additional launch parameters =
AlumiuN's Advanced Sound Manager
--nosound Turns off sound
--8bitsound Sets the sound to 8 bits (default 16 bits)
Spear of Destiny
--mission <mission> Mission number to play (1-3)
--goodtimes Disable copy protection quiz
The current version of the source code is available on GitHub at: https://github.com/brosseaualex/DDWolf
What you need:
Preferred methods for compiling the source code:
Batch files that automatically download and setup the correct SDL2 and SDL2_Mixer libraries for you are included in the repository.
You only need to run the script and open the project you want to use.
This script does not work with admin privileges (Run as administrator), make sure to clone the repository somewhere where elevation is NOT required.
Tested in a directory under 'C:\Users\Username'.
- _get-libs-mingw.bat (Code::Blocks libraries)
- _get-libs-vc.bat (Visual Studio libraries)
The SDL and SDL_Mixer versions used in this project are the following :
Do not forget to take care of version.h!
By default it compiles for "Wolfenstein 3D 1.4 full GT/ID/Activision"!
If CONFIG.WL6 exists while you switch between the 'USE_MODERN_CONTROLS' flag, you have to delete the file so the game can re-create it.
There will be issues with controls if this step is not done.