DML2 logo


Doom Mod Loader 2.X 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.

WINDOWS DOWNLOAD


Download Doom Mod Loader v2.5 (Windows) - Mod DB


LINUX/MAC OS

(NOT A NATIVE APPLICATION, FOLLOW THE INSTRUCTIONS IN THE DOWNLOAD PAGE!)

Github.com



dmlv2 5main



SUPPORTED SOURCEPORTS:

As for this version, the only tested sourceport are (Remember that as long as it follows the zdoom command line standard, any engine should work fine):

FULL COMPATIBILITY:

  • GZdoom (v4.7.1, -height and -width do not work due to gzdoom way of handling resolution)
  • LZdoom (v3.87c)
  • Zandronum (3.1)
  • Zdoom(2.8.1)
  • QZDoom (2.1.0)
  • Skulltag(98d)

PARTIAL COMPATIBILITY (Some DML features will not work):

  • Chocolate Doom (3.0.1)
  • PrBoom+ (2.6.2)

dmlv2 5modorder



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. Starting from v2.2b the P36_UTILITIES.dll code has been moved into the .exe and the dll has been removed.


* 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 four 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.


Github.com

(Software and sourcecode are released under the BSD-3 license)


If you like my work and you would like to support me, you can send monero to this address:

83XoYbCK9bZLF93kvY3RVHfWRtnLZAjLELUCP1foBMqoRi6zKF8NKXzTH2CobxvoZyREPcfgb6WwVaAu36iZDM72PYh2TCM

NOTE: Donation will NEVER be required, but are more than welcome ;) Don't worry if you can't/don't want to donate as it will not change the way I work. I would not make my software open source if I just wanted to profit from it.


If you're interested in my softwares, games, open source projects or just want to contact me, you can find me here:
link Website: P36software.net
email Support e-mail: support@p36software.net (for reporting bug/give feedback/ask for help)
email Info e-mail: info@p36software.net (for anything else)
bird Twitter: Twitter.com (@p36software, gets updated more often)
page_facing_up Github: Github.com
wrench ModDB: Moddb.com
video_game IndieDB: Indiedb.com
movie_camera Youtube: Youtube.com

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
RSS Articles

Hi everyone!

Publishing a new version at the end of April it's starting to become some kind of ritual...

Once again, special thanks to eviltechno, who helped me a lot with the testing of the Windows version and by suggesting almost all the new features, without him probably this version would end up be just a Linux port. Speaking of Linux, v2.5 is the first DML 2.X version that is NOT a Windows exclusive (more on that later).

dmlv2 5main


Without further ado, here the full changelog. Below you will find a more in-depth explanation of the main new features.

Changelog 22/04/2022 - v2.5


(This is the latest changelog. You can read all changelogs here P36software.net)

NEW FEATURES:

  • Now it works under Linux/Mac through mono (Be sure to have downloaded the mono version, the one with "mono" in the exe name, and follow the instructions otherwise it will not work!)
  • The preset name it's now fully visible while browsing the preset list, no matter how long the preset is.
  • Mods list "Order By" value it's now kept between application launches.
  • Preset order can now be changed via the software settings. Possible order are "Alphabetical - Ascending", "Alphabetical - Descending" , "Date - Ascending" and "Date - Descending".
  • Mods list can now also be ordered by "Date - Ascending" and "Date - Descending".
  • Added a workaround that mitigate the gzdoom bug where quicksave made with 'BIND [KEY] "SAVE QUICKSAVE.ZDS"' are saved in the wrong folder. Can be enabled in DML 2.X preferences. (Windows/Linux only) .
  • In the mod order window, the selected mod can now be pushed directly to the top/bottom of the list also by using pageUP/pageDOWN.
  • Now the mod that you always use can be placed in a preset and loaded automatically each time you play, just select the preset in the "autoload" combobox in the "Game" section of DML 2.X.
  • Updated the renderer selection in order to work with the newest gzdoom releases.
  • Added a monero address in the welcome/about windows and readme txt, in case anyone wants to donate.

BUGFIXES:

  • Fixed bug where the DMLv2.ini will store the whole path of the alternative sourceport configuration file instead of just the name, making DML 2.X not fully portable.
  • Fixed bug where the "please insert a preset name" error message had of a information icon instead of an error one.
  • Fixed bug where the mods list extension filter only showed matching file that had a lowercase extension. Now it shows all matches.

NEW SETTINGS:

  • RENDERER2
  • FILE_ORDER_BY
  • PRESET_ORDER
  • GZDOOM_QUICKSAVE_FIX
  • AUTOLOAD_PRESET

SUPPORTED SOURCEPORTS:

As for this version, the only tested sourceport are (Remember that as long as it follows the zdoom command line standard, any engine should work fine):

FULL COMPATIBILITY:

  • GZdoom (v4.7.1, -height and -width do not work due to gzdoom way of handling resolution)
  • LZdoom (v3.87c)
  • Zandronum (3.1)
  • Zdoom(2.8.1)
  • QZDoom (2.1.0)
  • Skulltag(98d)

PARTIAL COMPATIBILITY (Some DML features will not work):

  • Chocolate Doom (3.0.1)
  • PrBoom+ (2.6.2)

dmlv2 5modorder



Let me explain a bit the most interesting features:

  • Now it works under Linux/Mac through mono (Be sure to have downloaded the mono version, the one with "mono" in the exe name, and follow the instructions otherwise it will not work!)

There are now 2 version available for download, the "Windows" and the "mono" version.

If you're on windows you just need an up-to-date windows system (7/8.1/10) and .net framework 3.5, so the same requirements as any other DML release.

If you're on Linux/Mac OS you'll need to install "mono" on your OS, which is an open-source equivalent of .net framework and enable .net framework windows executable to run on non windows OS.

Note that while it SHOULD run on Mac OS, I've NEVER tested it under that OS as I don't own a Mac. While on Linux I've been using it on Linux Mint since I started the port. While both "Windows" and "mono" downloads are in the end a windows .exe, the "mono" version have a few difference that I had to make in order to make it run under mono. You will find the download for the mono version and more detailed instructions here (as it's NOT a native Linux/MacOS application) Github.com

Also, only on Linux (can confirm on mac os as I don't own one) as a plus I've not coded but came free by using mono... DARK THEME! It follows your system settings, if you're using a light theme it will look similar to how it looks on windows. As it's not something that I've coded, there is no way to toggle it via DML 2.X itself.

DML 2.5 main Linux Mint Dark Skin

  • Added a workaround that mitigate the gzdoom bug where quicksave made with 'BIND [KEY] "SAVE QUICKSAVE.ZDS"' are saved in the wrong folder. Can be enabled in DML 2.X preferences. (Windows/Linux only) .

This gzdoom (and also Zandronum, being it based on an older gzdoom version) bug as hunted me for quite a while, I had sometimes someone reporting it to my and I couldn't recreate it, until eviltechno explained to me this alternative quicksave method. While gzdoom have already a ready to use quicksave function, it will prompt the first time the user to select the saving slot, and from the second time (until the software is closed if I recall correctly) will ask for confirmation. To some user this is an unacceptable 2 step process, so by using the console command written above, replacing [KEY] with any keyboard key ("F6" for example), the user can make a "very-quick-quicksave™", that will create and overwrite over and over again a "quicksave.zds" without asking for slot or any kind of confirmation. The issue was that on Windows this quicksave.zds file, if the gzdoom process was started from another process, it would not be created in the "Save" folder next to the gzdoom executable but instead it would create it next to the DML 2.X exe. Until gzdoom it's running it will still save/load fine, but once it's closed, the next time you boot it up you're savegame will be missing from the list, while it's still there next to dml 2.x, but gzdoom looks only in the save folder, as it's where all save should normaly be.

This does not happen if you use the normal quicksave or don't use a frontend, and I don't know why it happens, my guess it's that inside gzdoom there should be some kind of function that generate a path to where the save file, based on the gzdoom exe location, but that somehow it get "confused" if the gzdoom process is started via another software, and that maybe it mistake the DML 2.X as the gzdoom process and so it mess up the location, but I really don't know. On linux it's also bugged, but it saves it in the user "home" folder.

So my "solution" (which is really a workaround since I can't really fix this) it's to look for any .zds file in the dml 2.x folder (or "home" folder on linux) and moving it to the correct one (which is different in windows and linux) once you've closed the sourceport. Note that has been tested only with recent version of gzdoom/zandronum and on linux as been tested with only version installed trough apt. If for any reason future gzdoom/zandronum releases change saving location this fix will stop working, so by default it's disabled. You can enabled it in the DML 2.X "preferences" window. If you don't use quicksave made trough the custom method explained above you don't need to enable it as this gzdoom bug it's not afflicting the normal saves/quicksaves. If you're on Mac OS do not enable it because it will not work. Take a look to the readme for more info.

  • Now the mod that you always use can be placed in a preset and loaded automatically each time you play, just select the preset in the "autoload" combobox in the "Game" section of DML 2.X.

This one is if you have a few "quality-of-life improvements" mod that you always play, like the doom minor sprite fixing project, or for example a sound replacement for the plasmagun etc... With this new feature you can select one preset, as an "autoload preset" in the game section. The idea is that you make one (ore more) autoload preset that contains only your quality-of-life improvements" mods (I personally have one general autoload preset and one for tnt.wad, that include also the secret level yellow key fix). The autoload preset mods will load in the order you've setted them up in the mod list, AFTER all other mods, so they always have the priority over anything you load. Take a look to the readme for more info.

  • Updated the renderer selection in order to work with the newest gzdoom releases.

Since a few updates ago, gzdoom no longer have a single renderer option, but your render it's selected by using two values, one for the API backend (the value on the left is the backend on posix system like Linux/MacOS while the second value it's on Windows) and the other one it's for the render mode itself. If unsure on what those setting means or you're using an older gzdoom version that still use the old system, leave it to the "DONT OVERRIDE" setting or select "SDL + OPENGL | OPENGL" and "HARDWARE ACCELERETED (OPENGL)" or "DOOM SOFTWARE RENDERER". From my experience and by reading some post, the vulkan backend might be a bit faster then the opengl one if you're running recent hardware, the GLES2 it's usually the best on old/low end hardware but it may have some graphical issue in complex mod. Try to play around with them, personally having a 8 years old machine running Linux Mint I use the GLES2 for the newset and complex mapset that require hardware acceleration, I use opengl with doom software renderer for old classic mod/ original IWAD and i use the standard opengl hardware acceleration for older gzdoom mod (like Psychophobia). Take a look to the zdoom wiki for more info zdoom.org.

Note that this option overwrite the relative values in the gzdoom ini, it's not just a per-session setting, so the "DONT OVERRIDE" option will not override the current settings, but if the current setting it's already been changed by a previous launch it will still use the last selected renderer and not the "original" one.

Also note that while the newer version seems to no longer support the old softpoly software rendererers, I've still leave them in the list (with an "unsupported" warning) so if you need them, and you're using an older gzdoom version you can still use that renderer.

Also if using an older gzdoom version that does not use the 2 values but just the +vid_rendermode one, select "SDL + OPENGL | OPENGL" in the +vid_preferbackend field and then select the renderer like you would have done in an older DML 2.X version


The future of the project

Since 2.2b I've been saying that this version will be the last, and here we are 3 main updates later, where I still say that this version will be the last. Well, sort of... Let me explain: The more I've worked on the project the more I've realized of bad I've made it's "foundations".

It all started in 2016 as an experiment as I was learning VB6 at school (yeah, the 90' language... you still be surprised that it's actually quite used in today business, in the last place I worked this basic (pun intended) VB6 knowldege has come handy as the main project I worked on was a revamp in C# of an old VB6 set of softwares). DML 1.X is a VB.NET software but the syntax was quite similar to VB6. At the begginning of 2019 I've started working in a software house that coded mainly in C#, so to experiment with the language I've had started working on DML 2.X, for like half a year it sitted only as a GUI (no code logic was written) in my hard drive.

Later I decided to finish it, so I started working on it on and off in my spare time and in July 2019 I've release the first version of it. It really started as a one off project, something that I will publish an probably forget about really soon. But I started to get some attention, people started giving me feedbacks and suggesting new features, so I've started adding this features, and updating my software, but as at the time I didn't really any do any reaserch about "winform", so I didn't know it has been for a long time a dead platform. Also as I didn't know how to "plan" a software, and If a knew how to do it I still wouldn't probably care to do it as tought this will be one of my many "one off" projects. If you noticed I've started calling 2.X only from later releases (the software logo/icon still says "DML 2.0" to this very day!). So it ended up being a project really hard to maintain and to work on it, there are still some feature that I would have included but are still missing as those either required some wacky hack to work on winform or require ti have to change to much stuff, as again this project has really bad foundations, that were fine for what I think at the time of the project, but not adequate for what it become.

So from this release, excluding an eventual 2.5b for bugfixing, the 2.X brench of the project have reached it's end. Does it mean this is the LAST ever DML release? No. There WILL be a next future release. I plan to start a new 3.X version from scratch, but this time having some good, strong foundations. I plan a better, more modern and resizeble GUI, full support for non zdoom like sourceport, a true standalone version for Linux (and hopefully Mac OS) plus all the missing features that I've not been able to add, and a dark theme also for windows user. So will this 3.X version come out soon? Once again, no. Given that I also want to dedicate more time to my other project, and that I've also kinda starting a bit to burn out more and more with each DML release, and given that other that the few lines above I've have absolutely zero ideas on how to do it, it will take quite some time, probably years before the first 3.X version is out. But yeah this project it's not dead :)


Before you download:

The mono version does NOT have a new version notification and require some extra step in order to work. Read carefully the download page! Also remember that it should work on Mac OS, but I couldn't test it, not even booting it up. So maybe it wont even start. Or maybe you need to do some more extra step that I don't knwo nothing about.

For the next few hours the windows version will prompt you to download the 2.4, which of course it's the old version. Once I've update the version number on my server it will stop doing that.

I usually update the server version number as the last step I do in a release because it will rollout the update notification to the over 6000 users of the 2.4, so I'm very careful and release it very slowly, before on github, then on modb, then I made a moddb news and only later the full rollout, once I'm sure there is nothing wrong with the release.

Long story short, on the mono version the update notification is missing and you'll have to check it out manually on github (or my twitter @p36software) and for the windows version ignore the new version notification, I'll update it in a day or two

If you're upgrading from an older version, you will find the instructions in the download page, be sure to backup your CONFIG folder somewhere, so if anything goes wrong while updating to the new version you don't have to reconfigure everything from scratch.

Also note that you made need to update your presets in order to work with the new settings, to do that, just save again the preset by verifying that all checkboxs of the information you want to save in a preset are checked and click "update". This will update the preset in order to be 100% compatible with the new version. You don't need to to that for all preset, just for the one that you've stored the renderer. All older preset should work out of the box (Take a look to the "how to update from an older DML 2.X version" section in the download page for more info)


DOWNLOADS:

WINDOWS

Doom Mod Loader v2.5 (Windows)


LINUX/MACOS

(NOT A NATIVE APPLICATION, READ THE INSTRUCTIONS BEFORE DOWNLOADING!)

Github.com



I've found a bug/something is not working right/I have a suggestion

If you find any bug with this version please report it trough github (if you're familiar with it), or by sending an email at support@p36software.net with subject "DML 2.5 *Here your OS* Bug - *Here describe the bug in a few words*" and in the mail itself try to explain with much accuracy and details as possible what happened, what did you expect it should have happened and a step by step guide on how to reproduce it, as if I can't reproduce it on my end, I can't fix it.


CONTACTS

If you're interested in my softwares, games, open source projects or just want to contact me, you can find me here:
link Website: P36software.net
envelope Support e-mail: support@p36software.net (for reporting bug/give feedback/ask for help)
envelope Info e-mail: info@p36software.net (for anything else)
bird Twitter: Twitter.com (@p36software, gets updated more often)
page_facing_up Github: Github.com
wrench ModDB: Moddb.com
video_game IndieDB: Indiedb.com
movie_camera Youtube: Youtube.com


Once again, thanks for your support, you're all amazing! <3
-Matteo

Doom Mod Loader v2.4 is out!

Doom Mod Loader v2.4 is out!

News 1 comment

After a year in the making, the new version of DML 2.X is out! This version packs quite a few bugfixes and new features, like unofficial games (.iwad/.ipk3...

Doom Mod Loader v2.3 is out!

Doom Mod Loader v2.3 is out!

News 5 comments

DML v2.3 it's available for download also on ModDB!

Doom Mod Loader source code release + version 2.2b update

Doom Mod Loader source code release + version 2.2b update

News 2 comments

DML 2.X source code is now available on Github! Version 2.2b is out!

Doom Mod Loader v2.2 is out!

Doom Mod Loader v2.2 is out!

News 4 comments

The new version od DML is out with a lot of new features!

RSS Files
Doom Mod Loader v2.5 (Windows)

Doom Mod Loader v2.5 (Windows)

Installer Tool 4 comments

DML 2.5 it's an open source (BSD 3 License) C# launcher & organizer for Doom's (But also Doom2, Heretic, Hexen, Chex Quest, Strife, Freedoom etc...) mods...

Doom Mod Loader v2.4 (Old)

Doom Mod Loader v2.4 (Old)

Installer Tool 24 comments

DML 2.4 it's an open source (BSD 3 License) C# launcher & organizer for Doom's (But also Doom2, Heretic, Hexen, Chex Quest, Strife etc...) mods! Works...

Doom Mod Loader v2.3 (Old)

Doom Mod Loader v2.3 (Old)

Installer Tool 8 comments

DML 2.3 it's an open source (BSD 3 License) C# launcher & organizer for Doom's (But also Doom2, Heretic, Hexen, Chex Quest, Strife etc...) mods! Works...

Doom Mod Loader v2.2b (Old)

Doom Mod Loader v2.2b (Old)

Installer Tool 11 comments

DML 2.2b is a C# launcher & organizer for Doom (But also Doom2, Heretic, Hexen, Chex Quest, Strife etc...) mod!

Doom Mod Loader 2.1 (Old)

Doom Mod Loader 2.1 (Old)

Installer Tool 11 comments

DML 2.1 is a C# launcher for Doom (But also Doom2, Heretic, Hexen, Chex Quest, Strife etc...) mod!

Doom Mod Loader 2.0b (Old)

Doom Mod Loader 2.0b (Old)

Installer Tool 15 comments

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...

Post comment Comments  (0 - 10 of 38)
Votterbin
Votterbin - - 7 comments

There's an error with DML 2.5 and DSDA Doom v0.25.6. Whenever I try to launch DSDA with this, I get the error "-iwad only takes one argument". I dunno why it's not working, but any chance this can get looked into for the next DML release?

Reply Good karma Bad karma+1 vote
Premo36 Creator
Premo36 - - 86 comments

Hi, unfortunately DSDA is not a supported sourceport. Right now DML works only with zDoom based sourceport (or sourceport that shares zdoom command ling args). The tested and fully supported sourceports are GZdoom (v4.7.1), LZdoom (v3.87c), Zandronum (3.1), Zdoom(2.8.1), QZDoom (2.1.0) and Skulltag(98d). Chocolate Doom (3.0.1) and PrBoom+ (2.6.2) works partially. A more wide sourceport supports is planned for 3.X, but it's still very, very far from release.

Reply Good karma+1 vote
OMXGAMERZ
OMXGAMERZ - - 298 comments

Hi can you create a version for ps4 if you have time?

Reply Good karma Bad karma+2 votes
Premo36 Creator
Premo36 - - 86 comments

Hi, unfortunately as far as I know (I don't own a ps4) the ps4 is not like a "normal" computer, it's a closed down system that run a custom OS, it can't run normal software that it's not specifically written to run on it, and even if it could, being a closed down system you can't run arbitrary software on it. Also the doom version sold on ps4 it's the unity port, that right now it's untested in regard of it's compatibility with DML.

Reply Good karma+1 vote
goodwarrior1235
goodwarrior1235 - - 4 comments

hi do i need the windows version of 2.5 after installing mono or does it come packaged with 2.5?????

Reply Good karma Bad karma+2 votes
Premo36 Creator
Premo36 - - 86 comments

Hi, I've tried to notify you on the 2.5 release on the 2.4 comment, moddb did not sent out any notification? Anyway, the Windows version that you find on ModDB do NOT work on mono, so I've made a separate version available on Github. A few extra (easy) steps are required in order to run it on Linux. Here it's the article about the new version Moddb.com where I explain the main new features and here it's the download for the Linux/Mac OS version with the instructions on how to install it on Linux Github.com

Reply Good karma+2 votes
goodwarrior1235
goodwarrior1235 - - 4 comments

ah is it in a fork
edit: lol sorrry im blind

Reply Good karma Bad karma+2 votes
Premo36 Creator
Premo36 - - 86 comments

Did you manage to get it working? If you need any help let me know!

Reply Good karma+2 votes
swc132994
swc132994 - - 385 comments

Thanks for the update 2.5 :)

Reply Good karma Bad karma+2 votes
Kaanha
Kaanha - - 4 comments

I absolutely love DML, the only thing I wish was in it is pseudo folders for the mods list. I play several different games, heretic, doom, etc. and I have different mods for each. I'd like to have folders in the mod list area where I could bundle all of my mods for Heretic, for instance. Click the folder and then click play and it loads just the mods on that pseudo folder (well rather asks me what order to load them in).

Any possible chance this could happen?

Reply Good karma Bad karma+3 votes
Premo36 Creator
Premo36 - - 86 comments

Thank you! Something like a customizable category system (like the one in the steam library Imgur.com ) was also suggested by another user and has been in the todo list for over a year now. The main problem is that DML 2.X it's built using the ancient Windows Form platform, which makes this kind of feature really a pain to implement. So in the near future is not planned, but I'm planning, like I did moving from v1.1 to v2.0, to start from (almost) scratch and build a revamped 3.0 version with a modern GUI and with all the missing features that I've been requested and that I couldn't add due to the current platform limitation, including the custom categories for mods. But I don't want to hype anyone about it, as it will be in a distant future, as right now I have very little free time.

Reply Good karma+2 votes
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X

Latest posts from @p36software

ghost.wad v1.0 is out on @ModDB! Moddb.com It's a short but action-packed level built around the Do… T.co

Jan 28 2023

ghost.wad (the small action-packed level I built around Doom 2 ghost 👻 monster bug) will be out soon! T.co

Jan 22 2023

So, about #TankRiderGame, I ended up releasing It shortly after my last tweet! It's available on both PlayStore and… T.co

Dec 8 2022

Long time no see! I've been a bit busy with the new job and other stuff, but I did not forget about the new update!… T.co

Nov 18 2022

I'm still testing the new #TankRiderGame version. Hopefully It will be out this week. I don't wanna rush It, given… T.co

Oct 24 2022

About #TankRiderGame, the Android notification issue has been solved! The new version should be out this weekend f… T.co

Oct 18 2022

This Is what I ended up doing, seems to have fixed everything except the notification not working T.co

Oct 13 2022