DML 2.0 is a C# launcher for Doom (But also Doom2, Heretic, Hexen, Chex Quest, Strife etc...) mod! This is the new reveamped version, made from scratch in C#, of the old VB.net Doom Mod Loader.
Doom Mod Loader is a Doom (but NOT ONLY, here's the full list of compatible games) launcher for Windows that allow you to easily load your game with your favourite mods and also:
- Works with most of modern doom sourceport (like zdoom, skulltag, gzdoom***, zandronum** etc... see below the tested ones)
- Saves groups of mod you want to play togheter in presets.
- Writes engine console parameters* for you (Or even add other ones if you know them!)
- Change mod loading order, so you can load different mods without let them replace each other stuff without control.
- Change launching options such as the starting level, the skill level, chose if play with faster monster, let them respawn (like in NIGHTMARE! difficulty) or just remove them.
- Change the video renderer mode.
- Use an alternative sourceport .ini file without the need of swapping them manually.
"DML.zip" (the downloadable file) contains 3 file:
- Doom Mod Loader.exe, it's the executable, run this.
- P36_UTILITIES.dll, it's a library that I've written which contain some generic code for read/write data, must be kept in the same folder as the executable.
- README.txt, it's the readme file, that provided some information, a few quick "HOW-TO" guide and the changelog of the current version. Please read it.
DML do not need installation, it's a semi-portable software ("semi" as all the preference, wad location ecc.. are stored in %appdata%/P36_Software/DML2/).
[10/07/2019 | 2.0b]
-Mod files that have been saved in a preset will have appended to the end of the file the path to the file itself.
This was not intended and useless.
This should NOT have damaged in any way your mods as any sourceport will just ignore any unrecognised data.
(For example Oblige, a software that randomly generates .wad, write in the header of the wad a bunch of information about the settings used to make the .wad)
If you want to clean your mod file you can open it with any text editing software (notepad is ok) and delete the path at the end.
(again the appended text does NOT damage the mods file in any way). I apologize for the inconvenience
[05/07/2019 | 2.0]
This is not just an update: It's a complete rewrite and redesign from scratch of the original VB.NET "Doom Mod Loader" in C#.
I've tried to keep the core functionality and user experience of the old one, but improving it.
Unfortunately due to the new more flexyble system I adopted to store any DML data, old .cfg are no longer compatible.
A lot of stuff has changed, I kept track of only of the most noticible difference.
- ZDoom (2.8.1)
- GZDoom (4-1-2b, -height and -width do not work, see changelog below, "known bug" section, for more info)
- Zandronum (3.0)
- QZDoom (2.1.0)
- Chocholate Doom (3.0.0, really BASIC compability, most of the DML features don't work. I'm planning to do a dedicate front end for "Vanilla" ports)
- Added video render mode selection.
- Added multiple source port selection support.
- "Skill level" now display the actual skill display name used in the Doom family of games instead of a number.
- The launch options are now kept on application closing.
- PWADs now can be added from different directories, no more need to have all your mods in a single folder.
- IWADs now can be added from different directories, no more need wo have all your original games in a single folder.
- Added Dehacked (.deh) file support (Can be added trough the "MODS" section).
- Added more PWAD and IWAD extensions supports (wad, pk3, zip, pak, pk7, 7z, grp, and rff).
- Import multiple IWAD at once
- Import multiple PWAD at once
- Import multiple sourceport at once
- No longer IWAD and PWAD capacity limitation.
- DML can now check for update on application start, if a newer version is found, a box will pop-up with some info, the changelog and a button to download it.
(Can be disabled by clicking on "Check for update" and unticking the "Always check for update on application start")
- Now you can load alternative confguration file for the sourceport.
- Fixed IWAD check, now it will check if a game is an IWAD following the standard (reading the first 4 bytes of the file). and not by name, so you can play any IWAD that follow that standard (Hower if you iwad don't follow that standard, a message will pop up to warn you, but you can still add it).
- Fixed "Skill level" selection range from 0-4 to 1-5.
- The "Start from level(map)" now will work using the displayed "+map" command parameters instead of the "-warp" that the old DML was actually using.
- Fixed a some minor bugs.
- "-width" and "-height" do not work in any recent gzdoom version.
This is a known issue thats been around since gzdoom changed the way the resolution is handled.
This afflict any DML version, since the change has been made from the gzdoom side. Initially i was going to use "+win_w" and "+win_h" instead, but I soon scrapped the idea because this command will also change the stored the resolution in the gzdoom .ini, making the change permanent, so even if you removed the values from dml it will keep starting at that resolution. You can still change that way by writing it manually in the "Custom command line parameters" text area. Example: "+ win_w 1280 +win_h 720".
(This is only the latest version changelog, you can find the full DML version history here)
NOTE: Need Microsoft .Net Framework 3.5 to work. If your system is up to date you should have it arleady. Keep the doom mod loader .exe and "P36_UTILITIES.dll" in the same folder, otherwise it will not work.
* DML is more like a "modern sourceport launcher", that writes the engine console parameters for you, that means you STILL NEED a modern doom port to load your mod. I've tested so far the ones i've wrote, but as far a port use the console parameters linked above it will work fine!
** On Zandronum the "Disable SFX" (-nosfx) seems to do disable all sounds instead of disable only the sfx. Don't know why.
*** On GZDoom, -height and -width do not work anymore, due to the changes they did to the code that handles the resolution. This afflict any DML version. See the DML 2.0 changelog above for more info, I also mention a possible workaround for this issue.