Doomie id Tech 1 frontend launcher Release 1.7

Launchers like ZDL, DoomRunner, and others belong here.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Doomie id Tech 1 frontend launcher Release 1.7

Post by buja-buja »

Hi,

I've created a simple id Tech 1 frontend launcher and would like to share it with everyone. Feedback is appreciated!

Update - Visual Studio project source released in the wild
Hi everyone, I've been away from Doom world for a couple of months now (1 year?!), unfortunately my computer video card burned, was forced to move to Mac land and now back on to Linux, no longer using Windoes :) Anyways, as my previous machine died on me and as I'm not planning on working on Doomie anymore, I might as well release it on to the community in case someone wants to further expand and develop Doomie... please bear in mind the code *cough* might be considered *cough* "spaghetti" code... but hey it worked *cough* compiled *cough* (MVC code I'm looking at you)... anyways long story short: I'm not planning on further developing Doomie past version 1.7 so I'm releasing here the sources for anyone who want to mess with it... IMPORTANT: It is required for you to abide to a few things before you decide to move the buttons on the UI from the left side of the screen to the right side and claim you've developed a brand new launcher, these are:
  • 1. THOU SHALL NOT USE THE NAME DOOMIE OR SIMILAR (EXAMPLE: DOOMIE-NG) TO NAME YOUR PROJECT,
    2. THOU SHALL GIVE CREDIT WHERE CREDIT IS DUE AND INCLUDE A REFERENCE TO THE ORIGINAL DOOMIE NAME, ORIGINAL DOOMIE URL FOR DOWNLOAD (http://www.mediafire.com/file/7n4faa1l5 ... se_1.6.zip), ANY DOOMIE DLL FILES USED FOR SUPPORT, ANY DOOMIE CONTRIBUTORS & DOOMIE DEVELOPER AUTHOR ON YOUR DERIVATIVE VERSION,
    3. THOU SHALL RELEASE YOU VERSION UNDER A FREEWARE OR GPL LICENSE...
That is all folks! Sheppard out!

Sources available here: http://www.mediafire.com/file/o8ssed5gv ... rce_1.6.7z

Notes:
Current version is 1.7 and should be still a stable bug free release but in case you do find one, please let me know.
▪ You can name your IWads as you please, to do so create a file "Names.map" or use the one available for download, in the root folder where the app is. You can use HashCheck Shell Extension (Open-Source) to calculate MD5 hashes, available here: http://code.kliu.org/hashcheck/ the data format to be used is HASH=NAME.
▪ Playlists shows a custom icon if a .PNG file named after the Playlist exists where the Playlist file is located.

I'll be on holidays for the next few weeks. Enjoy!

Usage instructions:
1. Launch "Doomie.exe"
2. Create a Playlist wherever you want or select one available ("Open" or "Import" Playlists from somewhere else)
*** Do make sure one Playlist is selected ***
3. Use the "..." buttons to select the SourcePort & IWad
4. (Optional if you don't need any PWads) Using "Open" (selects one file) or "Import" (imports all *.wad, *.deh, *.pk7, ... files from the any directory) buttons add any PWads you wish to the Playlist
5. Click "Play" button

Note: Each playlist can be saved anywhere you wish and each can point to a different source port & IWad located anywhere you wish. Playlists, SourcePorts & Wads folders are part of the distribution zip file, but you don't have to use them, you can delete or ignore them, as a matter of fact the only needed files are: "Doomie.exe", "GongSolutions.Wpf.DragDrop.dll" and "Playlist.png"; "Doomie.cfg" will be created if not exists when first run. Once you specify a Sourceport, IWad or PWad the app will remember the last used folder -- this is valid for each Open and Import button on the UI.

Version log:
Version 1.7 (03/09/2018)
▪ Implemented filter functionality over Playlists and PWads lists.
▪ UI clean-up.
▪ If "Playlist.png" file exists will be used as default Playlist icon where an icon for the Playlist name does not exist.
▪ "Names.map" file is no longer part of the main downloaded archive and is now a separate download file so it can be updated separately.

Version 1.6 (02/09/2018)
▪ Icon added, thank you NightFright.
▪ "Names.map" updated as per NightFright's contributions.
▪ Playlists shows a custom icon if a .PNG file named after the Playlist exists where the Playlist file is located.
▪ Columns resize automatically according to biggest row length.
▪ Remembers window Splitter position.
▪ Remembers Window position on screen.
▪ Removed support for Playlists drag and drop.
▪ Allows reordering of Playlists.

Version 1.5 (30/08/2018) One day ahead of schedule :ugeek:
▪ File "Names.map" if exists will be looked at to map IWads names.
▪ Added support to load PK7 files.
▪ Corrected an issue where un-maximizing the window would not use the previous window width.

Version 1.4 (26/08/2018)
▪ Fixed a bug where "Save As" functionality if saving over an existing Playlist would crash.
▪ Fixed a bug where "Remove playlist(s)" was calling the save playlist functionality also for playlists other than the selected one(s).
▪ List of loaded Playlists persists through sessions.
▪ Reworked the "About" dialog a little bit.
▪ Added Playlist "Location" on to the "Save changes" dialog.
▪ Removed command line parameters functionality.
▪ Added identification for a few more stand-alone IWads.
▪ Doomie settings are now saved in "Doomie.cfg" file instead of "Settings.ini".
▪ Saves last "Import" and "Load" location used for Playlists, Sourceport, IWAD and WAD files separately in "Doomie.cfg" file.

Version 1.3.1 (24/08/2018)
▪ Fixed a bug when using directories with spaces was not passing paths with spaces to the Sourceport correctly.
▪ A "Not found" message is displayed when the IWad or Sourceport used is missing.

Version 1.3 (23/08/2018)
▪ Implemented support for arguments per Sourceport.
▪ Saves the window size in "Settings.ini" file (this file is saved where the application is located). (Changed to "Doomie.cfg" in later versions)

Version 1.2 (19/08/2018)
▪ Added Sourceport parameter parsing ability at the command line. (Removed in later versions)
▪ Importing PWAD files already in Playlist keeps existing PWAD with it's flag settings.
▪ Prompts for saving Playlist changes on "Remove" or "Clear" if any.

Version 1.1 (14/08/2018)
▪ Fixed a bug while importing PWAD files, if extension was different than lower-case would not import the files.
▪ Implemented support for Sourceport's "-merge" argument.
▪ Added support to load DEH and BEX files.
▪ Reworked the "About" dialog.

Version 1.0 (12/08/2018)
▪ Initial release.

Features:
  • Easy to use
  • Resolution independent UI
  • You can add your own names to each IWad
  • Works with any Source Port
  • No configuration options
  • Portable between machines (Windows only)
  • Free
Screenshot:
Spoiler:
Latest version: Extras: Old versions: Platform:
  • Windows
Dependencies:
Last edited by buja-buja on Fri Apr 19, 2019 5:33 pm, edited 19 times in total.
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie frontend launcher Released V1.1

Post by NightFright »

I like this minimalist approach. One feature is still missing for me, though: Forwarding of command line parameters. I use it for example to load different config files on demand in GZDoom. You can take a look at ZDoom Executor (ZDE) to see how it was done there.

Important is that all settings are saved and remain the way they were set up the last time you ran the launcher.
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie frontend launcher Released V1.1

Post by buja-buja »

NightFright wrote:I like this minimalist approach. One feature is still missing for me, though: Forwarding of command line parameters. I use it for example to load different config files on demand in GZDoom. You can take a look at ZDoom Executor (ZDE) to see how it was done there.

Important is that all settings are saved and remain the way they were set up the last time you ran the launcher.
Hi NightFright, Doomie now supports forwarding of command line parameters as per each Source Port implementation. Not sure about saving settings as the scope of Doomie and what makes it different from the others is to be a simple playlist manager without configuration options (or at least too many) and would like to keep it that way, having said that let me think about this for a few days.
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie frontend launcher Released V1.2

Post by NightFright »

What you should definitely save is:
- App window position and size (it always opens with max size for me, that's not so convenient)
- Last playlists loaded (so you don't have to re-import everything every time)
- Last playlist active (this is maybe not so important, but if the other two options are added, I wouldn't know why this one should be ignored)
- Last command line parameter entered

I could live with an additional file being created for that purpose, e.g. doomie.cfg or doomie.ini. With that it should be a quite useful tool which I would actually consider using instead of ZDE (which I am using right now).
BTW, where can you enter the command line parameters? Isn't there supposed to be a text field box where you can type the cmd?
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie frontend launcher Released V1.2

Post by buja-buja »

NightFright wrote:What you should definitely save is:
- App window position and size (it always opens with max size for me, that's not so convenient)
- Last playlists loaded (so you don't have to re-import everything every time)
- Last playlist active (this is maybe not so important, but if the other two options are added, I wouldn't know why this one should be ignored)
- Last command line parameter entered

I could live with an additional file being created for that purpose, e.g. doomie.cfg or doomie.ini. With that it should be a quite useful tool which I would actually consider using instead of ZDE (which I am using right now).
BTW, where can you enter the command line parameters? Isn't there supposed to be a text field box where you can type the cmd?
Hi NightFright, app window size is now saved (Settings.ini where the application is), you can pass parameter to the application through the command prompt and also at the UI level (these are saved)
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie frontend launcher Released V1.3.1

Post by NightFright »

It's a lot better now!

Useful features that could still be added:
- Also save launcher window position on Windows screen
- Loaded playlists (+ last one opened) should be saved when closing the launcher (basically means: automatic import of last playlists loaded on startup)
- Save any change applied to any playlist automatically without having to press "Save" (this would also make the dialog unnecessary when you close the app after playlist changes - even though there would also be reasons to keep it like that)

More ideas:
- Instead of having separate playlists for each game, how about creating just ONE file and save all playlists in there? Seems more compact/efficient to me, especially if you have many iwads to manage. May look "cleaner" and load faster.
- Option to manually rearrange/sort playlists (right now it's only sorted alphabetically by playlist name) - this should also be saved, ofc.
- I see that there is a user.config file saved in the Win user dir with a link to the most recent playlist dir. Maybe this can also be moved into settings.ini to have a fully portable release.
- Add recognition of more iwads (so that iwad name is shown), e.g.:
Spoiler:
As for an icon to use with the launcher, maybe for now you should go with one of the Doom powerups, e.g. the chainsaw or Soul Sphere. Dunno if any other launcher or app is already using these, but they seem like natural choices to me.
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie id Tech 1 frontend launcher Release 1.4

Post by buja-buja »

Hi NightFright, I've released a new version, please refer to the release notes for changes.
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie id Tech 1 frontend launcher Release 1.4

Post by NightFright »

Wow, you have addressed most of my suggestions with this release. Great work! Now it's almost perfect. A big advantage this launcher has over ZDE is that you can set up custom iwads easily - ZDE is restricted to predefined ones, and it doesn't cover all of them.

I also like that "Save Session" is a toggle which you can deactivate on demand, I didn't even think of this solution. A good idea! It's now also possible to rearrange iwads by manually sorting them differently in doomie.cfg - for me, this implementation works.

One thing I noticed when using parameters:
I am keeping Doomie in a subdir "doomie" within my GZDoom dir, like this:

Code: Select all

[doomie]
>> doomie.exe
   doomie.cfg
   ...
gzdoom.exe
gzdoom.pk3
gzdoom-user.ini
gzdoom-vanilla.ini
...
When using -config gzdoom-vanilla.ini as parameter, Doomie expects the ini in its own folder, not the GZDoom parent folder. When I launch the game without any parameter, it's using the default ini (gzdoom-user.ini) as it should. At least for (G)ZDoom, Doomie needs to look in the root dir of the sourceport folder (not its own) when using arguments. I am not sure if this can be fixed, but it's worth mentioning.

Other smaller things left now (at least as far as I am concerned):
- Add PWAD import format: .pk7 (optionally also .zip and .7z, but it's covered by pk3 and pk7) --> This is kinda important, I think
- Exit options: Exit button (not just the "X" icon) + (optional) exit after launch
- Windows position on screen should be remembered (not only size)
- Save last playlist selected/used
- HacX v1.2 and Freedoom1/2 v0.11.x still not recognized
- (Maybe) save resizing of playlist/pwad columns ("Playlist", "Files", "Location" and "Load", "Pwad", "Merge", "Status", "Location")
- Find an icon for the app

Regarding functionality, this is already pretty much complete and fully usable. Other people besides me should also give this a try and provide feedback, I am digging it!
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie id Tech 1 frontend launcher Release 1.4

Post by buja-buja »

Hi NightFright, see below:
Add PWAD import format: .pk7 - on my TODO list for next version
HacX v1.2 still not recognized - should be there, I've added support for MD5 identification of http://drnostromo.com/hacx/page.php?content=download
Save resizing of playlist/pwad columns ("Playlist", "Files", "Location" and "Load", "Pwad", "Merge", "Status", "Location") - I'm interested in this one but I'll have to look at this later
Regarding the issue with GZDoom you mentioned, try using the ini file absolute path as the argument like so:"-config D:\Games\Doom\Sourceports\GZDoom\gzdoom.ini" this should work
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie id Tech 1 frontend launcher Release 1.4

Post by NightFright »

Yeah, with full file path it works. It's a bit more complicated than before, but since you can save the parameters, you only have to do it once. Actually, if you follow the file structure suggested by your launcher and put GZD binaries into the sourceports subdir instead, it's enough to use relative paths, e.g. -config sourceports/gzdoom/gzdoom-vanilla.ini. That's already much better.

Let's see what you can come up with for the next version. As I wrote before, it's already quite good and a worthy replacement/successor for ZDE for me. Keep going, this is a really compact launcher that focusses on the essentials.
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie id Tech 1 frontend launcher Release 1.5

Post by buja-buja »

New release, just out-of-the-door!
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie id Tech 1 frontend launcher Release 1.5

Post by NightFright »

Great! Pk7 support was the biggest issue for me right now. Enjoy your free time! See ya back later, hopefully with new inspiration! :P

In the meantime, I found why my hacx.wad was not recognized by Doomie. I was using a 2.0 beta version (v2.0 r61, to be exact) and this one ofc isn't in the internal database.
Other than that, I have the md5s for the latest Freedoom wads here which apparently aren't listed at all:

Code: Select all

ea471a3d38fcee0fb3a69bcd3221e335=Freedoom: Phase 1 (v0.11.3)
984f99af08f085e38070f51095ab7c31=Freedoom: Phase 2 (v0.11.3)
I have also made a simple icon from the Doom II Megasphere (see attachment). Feel free to use it for the next version of the launcher if you want. The attachment contains the icon as separate .ico file and latest Doomie v1.5 exe with the icon integrated via Resource Hacker (no other changes).
You do not have the required permissions to view the files attached to this post.
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie id Tech 1 frontend launcher Release 1.5

Post by buja-buja »

Hi NightFright,

thank you for those, I'll include those in the next release
User avatar
buja-buja
Posts: 13
Joined: Sun Aug 12, 2018 10:01 am

Re: Doomie id Tech 1 frontend launcher Release 1.6

Post by buja-buja »

Version 1.6 is up-for-grabs!
User avatar
NightFright
Spotlight Team
Posts: 1375
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Doomie id Tech 1 frontend launcher Release 1.6

Post by NightFright »

Excellent! This is getting better with every release (as it should)!

I really like the idea with playlist icons and thought I could provide some for your convenience. (Note that "REKKR" and "Blade of Agony" are actually PWADs, but I have set them up in my playlist like IWADs, depending on doom.wad or doom2.wad, respectively). Also you would ofc have to rename the icons if your playlists are named differently.

Also, you may consider adding HacX 2.0 r61 to the list of names.map since it's the latest development build of version 2.0 and no update has been made since years, so there may be people who are using this.

Code: Select all

793f07ebadb3d7353ee5b6b6429d9afa=HacX (v2.0 r61)
Other than that, I gotta say I am REALLY happy with this launcher now and will certainly use it as my default from here on out. It's lightweight, focusses on essential functions and allows you to customize the games you want to launch sufficiently (ZDE for example wouldn't allow me to set up separate entries for "REKKR" or "Blade of Agony", you are stuck with predefined entries). Right now I wouldn't come up with more ideas how to improve this any further, but if I come up with any other idea, I'll surely let you know!
You do not have the required permissions to view the files attached to this post.
Last edited by NightFright on Mon Sep 03, 2018 4:07 am, edited 3 times in total.

Return to “Launchers”