qZDL's settings are stored in the standard INI format. There is a qZDL.ini file, which stores settings for the application, and there are .zdl files, which contain only the "zdl.save" section. As of version 3.2.2.3, q sample qZDL.ini file on Linux might look like this:
[zdl.general]
autoclose=0
zdllaunch=1
showpaths=1
rememberFilelist=1
windowsize=952,1018
windowpos=960,26
engine=ZDL
version=3.2.2.3 beta (linux/custom)
conflib=sunrise
lastDir=/home/user/doom/sunlust
alwaysadd=-nomonsters -turbo 250
[zdl.save]
port=GZDoom
iwad=DOOM 2
skill=4
warp=MAP02
file0=/usr/share/games/doom/lights.pk3
file1=/usr/share/games/doom/brightmaps.pk3
file2=/home/user/doom/sunlust/sunlust.wad
[zdl.iwads]
i0n=The Ultimate DOOM
i0f=/home/user/doom/DOOM.WAD
i1n=DOOM 2
i1f=/home/user/doom/DOOM2.WAD
[zdl.ports]
p0n=DOOM Retro
p0f=/usr/bin/doomretro
p1n=GZDoom
p1f=/usr/bin/gzdoom
While a .zdl file exported from it would look like this:
[zdl.save]
port=GZDoom
iwad=DOOM 2
skill=4
warp=MAP02
file0=/usr/share/games/doom/lights.pk3
file1=/usr/share/games/doom/brightmaps.pk3
file2=/home/user/doom/sunlust/sunlust.wad
[zdl.general]
conflib=sunrise
This is a checkbox labelled "Close on launch". Possible values are "0" and "1".
This is a checkbox labelled "Launch *.ZDL files transparently". Possible values are "0" and "1".
This is a checkbox labelled "Show files paths in lists". Possible values are "0" and "1".
This is a checkbox labelled "Save/Load PWAD list automatically". Possible values are "0" and "1".
This is the main windows's size when last closed. The value is taken from QMainWindow::size(). An example value: "986,1023".
This is the main windows's position when last closed. The value is take from QMainWindow::pos(). An example value: "1016,26".
This is hardcoded to "ZDL".
This is build/versioning metadata. Example value: "3.2.2.3 beta (linux/custom)"
This hardcoded to "sunrise".
This is the directory containing the last file added: either IWAD, PWAD, engine, or .zdl. Example value: "/home/user/doom"
This is the text box labelled "Always Add These Parameters". Example value: "-nomonsters -turbo 250"
This is the subsection that gets saved as .zdl files. It's mainly the PWADs.
The list of "External Files" to load, in order.
An index into the "Game Mode" dropdown. Possible values are:
- Single Player
- Co-Op
- Deathmatch
An index into the "Players" dropdown. Possible values are:
- Joining
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
The value of "DMFLAGS". An integer from 0 to 10.
The value of "DMFLAGS2". An integer from 0 to 10.
The value of "Frag Limit". An integer from 0 to 10.
The Source Port/Engine to use. Must have a corresponding pnn entry in zdl.ports. Example: "DOOM Retro"
The IWAD to use. Must have a corresponding inn name in zdl.iwads. Example: "DOOM 2"
Whether the advanced multiplayer options have been extended. Possible values are "closed" and "open".
The "Extra command line arguments". Example value: "-playdemo speedrun.lmp"
The value of "Hostname/IP Address". This is a freeform string.
These are the ZDL Advanced Multiplayer Settings.
The "Extratic: On/Off" checkbox. Possible values are "0" and "1".
An index into the "Net Mode" dropdown. The indexed values are:
- Not Specified
- 0 (Classic)
- 1 (Client/Server)
The value of "Port:". This is a freeform string.
The "Dup" dropdown. Possible values range from "0" ("Not Specified") to "9".
The "Enable: Yes/No" checkbox. Possible values are "0" and "1".
The list of available IWADs, in order.
The value of inn is the nth IWAD's Name, and the value of inf is nth IWAD's File path.
The list of Source Port/Engines, in order.
The value of pnn is the nth engine's Name, and the value of pnf is the nth engine's File path.