Jump to content
LaunchBox Community Forums

Launchbox and PCSX2 - A convoluted approach


Recommended Posts

Introduction

After figuring out how to implement PS2 games into my Launchbox library properly i thought i'd share my findings.
This is a slightly different approach than the guide by Zombeaver. It has a bit more manual configuration work but
it's also more elegant in that it does not require a third party tool or individual command line options. It still features
individual configurations (and mem cards) for each game.

 

Step 1 - Setting up your PCSX2 installation:

You should be using one of the experimental 1.5.0 builds at this point. The last stable release is 4 years old now and simply outdated.

  • Provide Bios file to Bios directory and start PCSX2
  • Misc > Uncheck "Show Console"
  • Config > Memory Cards: Convert your memcards to folders and make sure the "Automatically manage saves based on running game" checkbox is tickedimage.thumb.png.105247803fb623ab61aa97a20b6b5c38.pngSet up like this PCSX2 will automatically create new memcards based on the running game.
    You don't have to manage mem cards anymore. :)
     
  • Config > Emulation settings - GS Window: Enable "Default to Fullscreen"
  • Config > Emulation settings - GS Window: Enable "Always hide mouse cursor"
  • Config > Emulation settings - Speedhacks:  Choose Preset 3
  • Config > Emulation settings - Speedhacks:  Now disable Presets
  • Config > Emulation settings - Speedhacks:  Disable MTVU Option
  • Config > Controllers > Plugin Settings: Set up your controller of choice in Lilypad plugin settings
  • Config > Video > Plugin Settings: Feel free to adjust Internal Resolution to your likingimage.png.dab42bb81471a655c3768285319b85ce.png(Thanks to Suhrvivor for pointing out OpenGl as the better default)
     
  • Config > Video > Plugin Settings > Shader Configuration (optional)image.png.2b6ed78cecf51613d5384f1849d81b1d.pngRecommended Shader options: PIXEL_VIBRANCE & TEXTURE_SHARPEN

 

Step 2 - Setting up PCSX2 in Launchbox

  • Go to Menu > Tools > Manage Emulators > Add
  • Select PCSX2 from the Emulator Name dropdown menu
  • Point the Emulator Application Path at your PCSX2 executable
  • Use the following Default Command-Line Parameters: --fullscreen --portable --cfgpath=inis\%gameid%image.thumb.png.3ad3f63ed52f11b4074f59f2a2120eb5.pngThe %gameid% variable will tell launchbox to parse the game's ID from the XML data and insert it into the command line.
    The --cfgpath=inis\ infront of this will result in a unique subdirectory in your PCSX2's ini folder where the configuration
    for each specific game will be saved.

    Unfortunately %gameid% is the only available parameter to use for this to work. It would be nice if there was a parameter
    to just use the rom's filename (twice) but launchbox doesn't have it right now.
     
  • Go to the Running Autohotkey Script tab and remove the ESC > Close script for now..image.thumb.png.8ec09430563a22878cf86fb65a4b1e35.png

 

Step 3 - Import and configure your PS2 games

  • Import your PS2 game image as rom file and choose PCSX2 as emulator. Now try to start the game once.image.thumb.png.e9f67b58fab4b1a332aadb2618eab2dd.pngYou will get an error message like this. At this point PCSX has already created a new subfolder in the inis directory
    based on the %gameid% variable. But since it is empty, you are greeted by the config wizard.
     
  • Choose cancel and navigate to your ..\PCSX2\inis directoryimage.png.cdfce48a3e3535d2017c1fbb9f5abbb7.pngHere you can see an example for the auto-created ini folder. It can be identified by being the newest folder and only containing these two files.
     
  • Now copy all .ini files from your inis folder to the subdirectory and overwrite when prompted.image.png.68ccb70d86b5a467a1ad93c798ebc837.pngWe have now supplied this game with the chosen default settings.
     
  • Start the game again from Launchbox. This time it should run with your chosen default settings.

    Now it is time to finetune your game config.
    As a source of information for game configs i used each game's entry in the PCSX2 wiki.
    Here you can find detailed information about most game's issues and their known workarounds.
    Alternatively, you can use the PCSX2 Config Spreadsheet Zombeaver provides in his guide.
     
  • Press ESC, make adjustments and hit File > Resume to test the settings.
    At this point making changes on the fly like this is very reliable in PCSX2.
     
  • Once you are pleased with the result, just close PCSX2.
    Your changes will be saved to the game's individual config.
     
  • Now repeat Step 3 for all your PS2 games (I know ... *yawn*)

 

Step 4 - Finalizing

When you have all your games imported and configured there are 2 more steps to make integration into Launchbox perfect.

  • Change the Default Command-Line Parameters of your PCSX2 Emulator in Launchbox to: --fullscreen --portable --nogui --cfgpath=inis\%gameid%
    image.thumb.png.b4b6589d566c42552a3755232d87e813.pngBy adding --nogui each game will start directly without invoking the main PCSX2 window.
     
  • Go to the Running Autohotkey Script tab and restor the ESC > Close script as follows:
    (Thanks to Retro808 for providing a cleaner close command)
    ; This section closes PCSX2 when pressing Escape
    $Esc::
    {
            WinClose, ahk_exe pcsx2.exe
    }

    This will restore the functionality of the ESC key to quit the PCSX2 process.

    This is especially important if you are using the --nogui parameter because using the (regular) ESC in PCSX2 with --nogui and disabled log window
    will leave you with no visual indication that PCSX2 is still running. And you will have to kill the process from the task manager every time.

 

Afterthoughts

You may have guessed it by now, with the gameid being cryptic as they are, the only sensible way to re-adjust your games is to undo Step 4, make the corrections ingame and then reapply it.
That is the one gripe i have with this approach at the moment. But it's really a minor inconveniance. The result is a really easy import process on the Launchbox side and still getting those
per/game configs & saves. So i am very happy.

Let me know what you think and please share ideas for improvement.

 

 

Edited by Sunnyhat
  • Like 1
Link to post
Share on other sites

Very nice!  I didn't know that %gameid% was even available to pass as a parameter.  Definitely an awesome means for pointing to the individual game configs without using a script, plugin or hand typing in per game custom command lines.  Though something like %FileNameWithoutExtensionAndPath% would be sweet. :)  

Thanks for this @Sunnyhat!

  • Like 1
Link to post
Share on other sites

I don't recommend using save folders since it's a bit buggy. For example, I got a Metal Gear Solid 3: Substance (USA) save file corrupted using folders. Some other games Like X-files Resist or Serve will always fail to find any save file from a previous session.

Also, I'd recommend using OpenGL (Hardware) as your default video renderer, it's more accurate than any Hardware DirectX renderer. The latter is missing a lot of shadows and effect in a lot of games.

Link to post
Share on other sites

I also recommend not using that AHK posted. It is a hard close command and any emulator that saves data like save states on close it will not save correctly. This may not affect pcsx2 but I still recommend no longer using that code. Recommend something like below.

$Esc::  
{  
    WinClose, ahk_exe {{{StartupEXE}}}  
} 

or by specifically calling the exe.

$Esc::
{
        WinClose, ahk_exe pcsx2.exe
}

 

Link to post
Share on other sites
1 hour ago, Retro808 said:

I also recommend not using that AHK posted. It is a hard close command and any emulator that saves data like save states on close it will not save correctly. This may not affect pcsx2 but I still recommend no longer using that code. Recommend something like below.


$Esc::  
{  
    WinClose, ahk_exe {{{StartupEXE}}}  
} 

or by specifically calling the exe.


$Esc::
{
        WinClose, ahk_exe pcsx2.exe
}

 

Thanks for this. If you don't mind i'll use it in the Post. PCSX2 doesn't care afaik (FS-UAE does ..) but it's really cleaner this way.

3 hours ago, Suhrvivor said:

I don't recommend using save folders since it's a bit buggy. For example, I got a Metal Gear Solid 3: Substance (USA) save file corrupted using folders. Some other games Like X-files Resist or Serve will always fail to find any save file from a previous session.

Also, I'd recommend using OpenGL (Hardware) as your default video renderer, it's more accurate than any Hardware DirectX renderer. The latter is missing a lot of shadows and effect in a lot of games.

I honestly didn't have problems with save folders so far. And been using them a lot. But thanks for the warning. Will keep a lookout.
As far as renderers go, i still start with D3D out of habit. But you're probably right that OpenGL is the better default. I'll adjust the post. Thanks.

Link to post
Share on other sites
23 hours ago, Sunnyhat said:

Thanks for this. If you don't mind i'll use it in the Post. PCSX2 doesn't care afaik (FS-UAE does ..) but it's really cleaner this way.

No worries. That older code we used a lot then a couple members discovered it messed with some emulators the do save states on close. So one of the members that is knowledgeable in AHK shared a better way to close emulators. So anytime I see that other code I try to recommend a better solution. Feel free to use, I do not own it in anyway and would rather see people using a cleaner exit code.

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