Jump to content
LaunchBox Community Forums

Making ScummVM portable


InfinityFox

Recommended Posts

15 hours ago, Klopjero said:

while you're doing that allow me to just blatantly recommend my own 3d box set :P 
 

 

Nice work!  I’d forgotten how may classic games there were in this era. Better start playing, although there’s far to much editing and rearranging of my setup to do to play games ??

Edited by InfinityFox
Link to comment
Share on other sites

  • 1 month later...
On 12/6/2018 at 4:40 AM, InfinityFox said:

I run my LB install from an external drive and connect it sometimes to another computer. Following the Tutorials on the Launchbox YouTube channel it seems that the ScummVM ini is created in your roaming/appdata folder on your system drive, or something like that. Any ideas how to make the ini populate in the ScummVM folder within the LB root directory.

I’ve found some sort of answer at the ScummVM forum but it a bit over my head and there is no feedback so thought I’d ask here

Thanks guys

 

I updated my launcher tool into a plugin, it uses relative paths, and a local ini.  So that seems to help with portability.   Just keep it all inside the launchbox folder and you should be good. 

Unfortunately scummvm will write absolute paths into its ini file, but that shouldn't matter unless you try to launch the game directly out of scummvm.  My launcher/*bat files will have the relative path as parameter. 

The plugin will put the BatRunner.exe into your main launchbox folder when you create the launchers, DO NOT MOVE IT.  WHY?  Well because the .bat file contains relative paths which are based on the the main launchbox directory.  Use the BatRunner.exe as your ScummVM emulator application.  Scan the *.bat files as yours ScummVM roms.   Once you create launchers don't move your games relative to the launchbox directory.  Portability will be at the entire launchbox directory for this.

Edited by epicfail
  • Thanks 1
Link to comment
Share on other sites

The timing here was perfect for me! I was actually putting off a solution for making my ScummVM games portable because it was one thing that I couldn't setup in a satisfactory way. I actually started typing up a post here to look for ideas, when I checked out your (epicfail) launcher to try something with it before making a post... and lo & behold, you had just updated it so that it's truly portable! It works perfectly, so I greatly appreciate it!

 

Just wish I had a solution for setting up the "Extra" folder within ScummVM so that it's also portable for the Roland MT-32 emulation, since the ScummVM INI settings are essentially hardwired. I plan on giving a few of my friends my setup, so I'm trying to make it preconfiged as possible, but in this case, I think I'll just give them instructions on how to set up ScummVM for the first time. Pretty easy to explain. 

Link to comment
Share on other sites

6 hours ago, PurpleTentacle said:

The timing here was perfect for me! I was actually putting off a solution for making my ScummVM games portable because it was one thing that I couldn't setup in a satisfactory way. I actually started typing up a post here to look for ideas, when I checked out your (epicfail) launcher to try something with it before making a post... and lo & behold, you had just updated it so that it's truly portable! It works perfectly, so I greatly appreciate it!

 

Just wish I had a solution for setting up the "Extra" folder within ScummVM so that it's also portable for the Roland MT-32 emulation, since the ScummVM INI settings are essentially hardwired. I plan on giving a few of my friends my setup, so I'm trying to make it preconfiged as possible, but in this case, I think I'll just give them instructions on how to set up ScummVM for the first time. Pretty easy to explain. 

Good catch, sounds like I missed some stuff.  The squeaky wheel gets the grease.  Your squeaking, I think I have the grease to fix it.  Give me a day or so to attempt to deal with that. 

Do you know where the save files are going?  I may need to address that aspect of portability as well.

Link to comment
Share on other sites

I just keep the save files on default, so I'm actually not sure where they go. I just use the default LaunchBox\ScummVM folder to store the MT-32 roms, but ScummVM remembers the actual physical path, so, as far as I know, there's no way to tell ScummVM to check the file location relative to the LaunchBox\ScummVM folder structure (maybe the ini can be edited manually to do this?).

Link to comment
Share on other sites

3 hours ago, PurpleTentacle said:

I just keep the save files on default, so I'm actually not sure where they go. I just use the default LaunchBox\ScummVM folder to store the MT-32 roms, but ScummVM remembers the actual physical path, so, as far as I know, there's no way to tell ScummVM to check the file location relative to the LaunchBox\ScummVM folder structure (maybe the ini can be edited manually to do this?).

Try my update.  Honestly I couldn't figure out the MT-32 setup with or without my launcher.  It always sounded the same for me.  Its probably something dumb.  I think my update may work for you.       

I added local save folder and local extra folder.  The drop down will let you import your existing extra and saves into the local.  The *.bat launchers will have to be recreated with the new version.

EDIT: I went back I missed the setting with the default audio device.  Once I set that to MT-32 all was good, I left my extra and save game folders unset in the .ini.  Sound is amazing, thanks for showing me this.

Edited by epicfail
Link to comment
Share on other sites

  • 2 years later...

How could I import ScummVM games using Scummvm.exe instead ScummvmLauncher.exe as an emulator, for being able to use the command line?

And no using .bat

I know that I can import games clicking on adding, choosing the name of the game and the platform (ScummVM) and choosing  the tab "ScummVM" (checking "Use ScummVM only for this game")

But this is without configuring ScummVM as an emulator so I cannot write a command line for the "portable" ScummVM.ini 

Link to comment
Share on other sites

Making ScummVM "portable" was initially daunting but surprisingly easy for me. I already had my ScummVM games integrated in my MS-DOS category in Launchbox along with my games that run in DOSBOX, but I kind of started from scratch in terms of modifying my ScummVM configuration file, to make the process slightly smoother.**

Some caveats apply to these instructions. We are going to assume the following:

  • That all your games that use ScummVM are on the same drive as your Launchbox build
  • That you have ScummVM installed inside somewhere inside your Launchbox folder

If those two things are true, the following instructions should work fine for you:

  1. Run ScummVM at least once, to create the scummvm.ini configuration file. It will be created in your %APPDATA%\ScummVM folder. Set your options for graphics, audio, etc. then quit ScummVM.**
  2. Copy the scummvm.ini file to the folder of your choice inside your Launchbox folder; I put mine in the same folder as the application: \Launchbox\Emulators\ScummVM [I copied this from the ThirdParty folder, to avoid any potential conflicts]
  3. Create a batch file to run the application using the scummvm.ini file you just copied. In my case: scummvm.exe -c .\scummvm.ini. Place this batch file inside the main ScummVM folder.
  4. Launch ScummVM using your new batch file. Now that you're in the main interface, add all your ScummVM games using the GUI. Once you do that and quit the application, your scummvm.ini file will use relative paths to refer to your games (..\..\Games\ScummVM\Beneath a Steel Sky\) instead of absolute paths (G:\Launchbox\Games\ScummVM\Beneath a Steel Sky\) This relative path structure is what will make this ScummVM installation portable.
  5. Launch ScummVM using the batch file again; go to the "Paths" tab in the options. Do not use the default values for these settings - instead, click on each option and set a folder preferably in your ScummVM folder. You can create nested folders in the main one, or just put them all in the main ScummVM directory. Now, your save, extra, and themes folders will have relative path information as well. Quit the application.
  6. Open your new scummvm.ini file in a text editor. Each game listed in this file will have a specific game ID. For Beneath a Steel Sky, it's "sky". You will need all these game IDs to create your batch files for launching the games.
  7. Create a batch file to launch one of your games by using this command: scummvm.exe -c .\scummvm.ini -f [gameID] - this will launch your game using the scummvm.ini file in your main folder, fullscreen. For Beneath a Steel Sky, it would be scummvm.exe -c .\scummvm.ini -f sky
  8. You will need to create batch files for launching each game; I simply copied the first batch file, changed the name, then changed the game ID inside the file. For example, Space Quest III became scummvm.exe -c .\scummvm.ini -f sq3
  9. In Launchbox, make sure you're not using the ScummVM emulation option for launching the game; instead, point to the batch file you just created for each game.
  10. I additionally had to change each game's Startup Screen options to include "Aggressive Startup Window Hiding" and "Hide all windows that are not in Exclusive Fullscreen Mode"; otherwise, my game window would lose focus and I'd have to Alt-Tab back to it.

It looks a little tedious, but it's pretty easy once you get started. Now all my games launch fullscreen perfectly, and I can migrate ScummVM in my Launchbox build to other computers with no issues. For the record, I tried epicfail's ScummVM launcher/configurator thing, but the instructions were all over the place, and the plugin wasn't really clear on what it was doing/creating.

** If you already have a populated scummvm.ini file, you can modify the path entries for your games manually after you copy the file to your preferred Launchbox directory. You can also edit the paths for the save, theme, and extras folder the same way; savepath=..\..\Emulators\ScummVM\ for example.

Edited by tycho1974
  • Thanks 1
Link to comment
Share on other sites

On 8/4/2021 at 1:59 PM, Son Gokuu said:

How could I import ScummVM games using Scummvm.exe instead ScummvmLauncher.exe as an emulator, for being able to use the command line?

And no using .bat

I know that I can import games clicking on adding, choosing the name of the game and the platform (ScummVM) and choosing  the tab "ScummVM" (checking "Use ScummVM only for this game")

But this is without configuring ScummVM as an emulator so I cannot write a command line for the "portable" ScummVM.ini 

I think in order to use command line functionality, bat files are needed. ScummVM doesn't look for a specific file, per se, but a folder. I did not have any success adding ScummVM as an "emulator" with command line parameters in Launchbox, simply because I could not target a folder in the Launchbox game options. Using the combination of the .ini file and batch files as outlined in my instructions above, however, works great.

  • Thanks 1
Link to comment
Share on other sites

43 minutes ago, Sbaby said:

Hi, haven't you found an easier way to make scummvm portable together with launchbox by canceling the appdata folder and without doing all this batch files work?

I'm not sure how one might "cancel" a windows system folder; ScummVM will, by default, create a folder for itself in %appdata% and place its configuration file there the first time you run it. If you delete the folder, the program will create it again unless you take the steps in my instructions.  Doing that and making the batch files forces ScummVM to use your local configuration file with the relative path information.

@epicfail's plugin effectively does exactly what I did - it makes batch files to launch each ScummVM game you have. The problem with the plugin is that it hasn't been updated in a while, the instructions are garbage, and it's not clear what the plugin is doing at any given moment.

Edited by tycho1974
Link to comment
Share on other sites

2 hours ago, Sbaby said:

obviously I don't intend to delete the appdata folder hahaha. I meant how not to use it for scummvm but use the launchbox scummvm folder also for the ini

I suppose you can use the same method outlined above using the ScummVM folder included in Launchbox's Third Party folder; the reason I made a copy in my Emulators folder was for the sake of avoiding any potential issues. A future Launchbox update may or may not change that folder, and then I'd be up a creek. That happened to me with my DOSBOX configurations when Launchbox moved the DOSBOX installation to that third party folder about a year ago. Simply moving the folder screwed up literally all my custom configs I had set up for DOSBOX, and it fixing them all took a lot of my time.

Edited by tycho1974
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...