Paths on the command line
This article explains how Doomsday handles paths in command line arguments.
As a general rule of thumb, all relative paths on the command line are interpreted relative to the current working directory where the engine is started from.
Base folder and runtime folder
These are the folders that the engine is working with:
- Doomsday base (root) directory (for example C:\Doomsday\, or /usr/share/doomsday). Most of the read-only data (and binaries, on Windows) of the engine are stored under this directory.
- Runtime folder: This is the directory where the engine spends its time when a game is running: log output, savegames, screenshots, and other such files are stored here.
The -basedir option tells the engine where the base directory is located.
When the engine is looking for resource files, it interprets relative paths in relation to the base directory.
The -iwad option can be used to define a directory where IWAD files can be found. Doomsday will locate all the IWAD files inside the provided directory.
Note: The following behavior regarding > and } prefixes is deprecated and should no longer be relied upon. This functionality is becoming obsolete due to the improvements in the internal file system.
If Doomsday finds a path that begins with a greater-than character (>) or a closing brace character (}, the > or } character is replaced with the path specified by -basedir. For example, -file >Data\Doom.wad would make the engine load a WAD named C:\Doomsday\Data\Doom.wad (assuming the default Doomsday root C:\Doomsday\). Note that if you're executing Doomsday.exe from the command line or from a DOS batch file, you must enclose the file names that contain a > character in quotes or otherwise DOS will think you're trying to redirect output. In response files it doesn't matter if there are quotes or not. (If you really are trying to redirect output, you should use the -out option.)