Jump to content
LaunchBox Community Forums
Pixelpiper

ScummVM Emulator Shim - Easy tool-less import of ScummVM games

Recommended Posts

Posted (edited)
Import all ScummVM games using LaunchBox's ROM Import function, using a "ScummVM" emulator and maintaining compatibility with pause, startup screens & scripts options.
 
This solution uses plain text files containing only the Target name/ID of the ScummVM titles, it doesn't use hundreds of different batch files to launch the games - all options/settings can therefore continue to be made inside LaunchBox just like for any other Emulator-based platform. And no command/terminal windows displayed when the games start.
 
Background:
Retroarch's ScummVM core and some other emulation front ends have introduced the concept of text files with the file extension ".scummvm" (or similar) that contain a unique ID that the core/emulator will use to start the correct game. The same unique ID is how games are started on the command-line for the standalone ScummVM (which is already included in LaunchBox's ThirdParty folder). The download attached to this post contains two scripts to start the standalone ScummVM, one for use from Windows Explorer and one to use in LaunchBox as your emulator for your ScummVM platform.
I've also made a script to produce these files, but at the moment I'm unable to distribute it - it's written in PHP and there's just too much overhead to try and run it in Windows until I can compile it into an executable.
The download contains pre-made ".scummvm” text files for almost every ScummVM game (I'm missing a few of the newly added Hoyle games). It features all these files inside a single folder which is perfect for Standalone ScummVM use using the ScummVM script included. Files already in sub-folders for RetroArch will be uploaded later - I ran out of time today to zip & document process.
 
 
Pre-requisites: 
  • You should have a FULL set of ScummVM games (like from Ghostware) - folder names for the games don't matter
    • You can trim the set down later, but to start, use and import a full set
 
Instructions:
  • Put your ScummVM collection into a folder wherever you want
  • Copy the two BAT files,  “ScummVM_EMU.bat" & “ScummVM_Start.bat" to the ScummVM folder inside LaunchBox/ThirdParty/
  • Launch the “ScummVM_Start.bat” file - always use this file when opening ScummVM from outside your front end (like from Windows Explorer) - this will open ScummVM and create/access its settings file in the same folder
  • Follow directions these directions to mass-add games to ScummVM: https://wiki.scummvm.org/index.php/User_Manual/Adding_a_game_to_ScummVM 
  • Quit ScummVM
  • In LaunchBox, create an Emulator entry for “ScummVM” or edit your existing one if you already have one
    • Details: Emulator name: ScummVM
    • Details: Emulator Application Path: (use browse) ThirdParty\ScummVM\ScummVM_EMU.bat
    • Details: Default Command-Line Parameters: -f
    • Details: All check-boxes UN-Checked
    • Associated Platforms: Associated Platform: ScummVM
    • Default Emulator: Checked
 
  • In LaunchBox, import the “.scummvm” files that I’ve provided: Tools -> Import -> ROM Files
    • Click Add Folder and then browse and select the folder where you put the files - then click Next
    • Platform for imported games: ScummVM - then click Next
    • Choose an Emulator: ScummVM - then click Next
    • Click Copy the files into my LaunchBox games folder - if that’s where you originally put them, then Click Use the files in their current location - then click Next
    • Game details and artwork are optional here, you can do that later if you’d like
    • Custom Options are optional (don’t use folder names) - you can Combine now or do it later once you’ve filtered or removed anything you don’t want
 
The result should be a ScummVM Platform with an entry for every single game. Launching any title from LaunchBox will open the title in ScummVM full screen. You can configure ScummVM with other options  by opening it using the other script from Explorer, as well as pass additional parameters via the command line in by editing the Emulator settings.
 
When you want to add any new titles in the future, you will import them first into ScummVM "Add Game" or "Mass Add" the same as you did above for the full set.  Then in LaunchBox you'll import new ".scummvm" files for those games - hopefully my script to create those files will already be out and making them is a few simple clicks.

ScummVM_EMU_Shim.zip

Edited by Pixelpiper

Share this post


Link to post
Share on other sites

Benefits of using .scummvm Target/Pointer Files:

Games open from Launchbox without an extra terminal window appearing

The file can be added to LaunchBox as an emulator - no more emulator prompts from LB when editing game settings

Works with any arguments added in LB's edit window (passes them to the ScummVM exe).

Maintains all Launchbox features that are only possible when you have an emulator platform - startup and pause screens, etc.

Parameters/settings can be changed for any game without editing a separate launcher file for each game

The game text files only need their ScummVM Target names inside their text files and they can have any file extension

Forces ScummVM to maintain its .ini file in its install folder instead of obscure appdata path

Share this post


Link to post
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
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...