gamevault-backend icon indicating copy to clipboard operation
gamevault-backend copied to clipboard

Enhanced Launch Configurations

Open an0t8 opened this issue 1 year ago • 9 comments

Is your feature request related to a problem? Please describe. It would be awesome instead of just finding the first .exe file in a game archive, if you could provide a config file that could specify one or more command line launch options. I have games like Doom that use gzdoom or zandronum to launch. These take command line options. I can currently override the launcher, but I would have to tell everyone how to do this, which is a troubleshooting nightmare.

Describe the solution you'd like I would like a config file that would allow me to add multiple command line launch options. If this config file is found, it would override any automatically determined EXE or BAT file.

Describe alternatives you've considered Currently I would have to tell each user how to configure the launch parameters for each game for each purpose (host sever, join server, play solo, etc)

Additional context Doing this would allow a much richer experience in archiving portable games, or even with custom installations. It would simplify launching games and allow for multiple options per game.

an0t8 avatar Jan 07 '25 22:01 an0t8

image these are the configurations you are looking for, they apply globally ans set the default launch executable, the default parameters and the default installer executable.

@Yelo420 would you please explain these settings better in our docs so people actually understand how to use them?

Alfagun74 avatar Jan 07 '25 23:01 Alfagun74

Not exactly. I would like a way to configure this per game, from the backend. Not to have to do it in the client. I know I can configure it there. My use case is specifically so that I can configure a game and have multiple people grab it and be able to launch it without having to sit on the phone with them describing how to implement it in the client. Sorry if I wasn't clear.

The second part would be to allow multiple launch options.

an0t8 avatar Jan 08 '25 17:01 an0t8

Sorry if I misunderstood you.

The setting I showed you is applied globally as the default for all users but it's true it can only be set from the client. At the moment, there’s no way to configure this directly through the backend.

However, it can be adjusted via our API if you’d like to build a custom solution. We could also consider integrating this feature into [Issue #148](https://github.com/Phalcode/gamevault-backend/issues/148).

Regarding the command-line options, you can typically append them like this:

-fullscreen -w 1920 -h 1080 -fps -skipintros

If I didn’t quite get what you meant, a few concrete examples would really help clarify.

Alfagun74 avatar Jan 09 '25 11:01 Alfagun74

I am currently getting around this by using a batch script and moving all Executables down another layer in the file structure. Here is one example:

Doom 2: I want the default launcher to execute Doom 2 using gzdoom. I like keeping my source ports and my GoG game data separate, so I have DOOM2 & gzdoom folders in the root of the archive. I would build a command line executing the gzdoom exe and loading the correct iwad and configuration for DOOM2.

But I also want to play DOOM 2 multiplayer. Having an option to launch zandronum (a different source port with good multiplayer) instead, and having an option for hosting a game or connecting to one is important. So I have a zandronum folder in the root as well.

Also, maybe as a purist I want to not use a source port but launch DOOM 2 in Dosbox, that is another option. Add a Dosbox folder to the archive.

Now I want to have a way in the GV client to choose which option I want to launch, and not to have to manually create each command line. I also want to be able to easily swap between them.

I can't do that with the client tools we currently have available.

Even with a single launch case, say multiplayer client, now I have to call my friends that I want to play with and tell them how to set up the client launcher with the right command line to make this possible.

I noticed that the client puts out a gamevault-exe file that I assume has what is put into the client. If we could just create a config file that Gamevault would parse after extracting the archive and import that as the default for that game, it would allow us to configure games on the backend and make it easier for users.

I am aware that this is really 2 feature requests rolled into one. Feel free to separate them or only plan one or the other.

Like I said, I am currently putting a single batch file in the root of my archive called start.bat and that is being picked up as the default, so I can have launch options there, so if no one else sees this as a nice feature, I understand.

an0t8 avatar Jan 09 '25 16:01 an0t8

Now i think i totally understand your issue. I think you want something like these "launch profiles" like Steam has:

image

Predefined Launch options that are available when starting the game. defining what exe and what parameters should be used, did i understand you correctly?

Alfagun74 avatar Jan 09 '25 17:01 Alfagun74

Yes, that is it exactly.

an0t8 avatar Jan 11 '25 04:01 an0t8

I'd also love to see this implemented, currently the only workable solution I've found is batch files, which does work but has the downside of needing to setup a batch file for each game that needs it. I hadn't thought of nesting the game folder deeper and putting the batch in the root folder though, I'm definitely doing that from now on for more complicated situations.

Sixdd6 avatar Feb 16 '25 15:02 Sixdd6

Hi there,

We plan to implement this feature like this:

  • A tabbed control will be introduced, allowing users to define multiple launch configurations. (Exe & Parameters)
  • A steam-like prompt at launch will enable users to select a specific launch configuration.
  • Users will have the ability to publish launch configurations to the server as default settings.
  • A local always-choose-this configuration can be selected for convenience.
  • Users will have the option to reset local configurations to the server defaults when needed.

Would this solution make you guys happy?

Alfagun74 avatar Feb 24 '25 23:02 Alfagun74

Sounds good to me.

Sixdd6 avatar Feb 25 '25 00:02 Sixdd6