Saving specific configurations for separate games
-
Hello,
I have a general question about RetroPie. I'm running a Raspberry Pi 3, and would like to know if there is a way to save configurations that are specific to each game. The main reason for this is the example below:
-
I load up the game Ape Escape, which requires a Dual Shock analog controller. I have the pad type for this emulator selected as "analog" and Ape Escape works fine.
-
I exit Ape Escape and load up Command & Conquer: Red Alert (either disc). The game does not recognize that there's a controller plugged in, and I have to go to the configuration menu to select "standard" as the pad type.
I've tried various things like "Save new config" and I cannot get it to save a configuration that's specific to the game.
Any insight on this would be helpful, thank you!
Pi Model: Pi 3 - Model B
RetroPie Version Used: 4.1
Built From: Pre-made image on official RetroPie website
USB Devices connected: None, Bluetooth PS3 controller
Controller used: PS3 Controller
Error messages received: No errors
Log found in /dev/shm/runcommand.log (if relevant): N/A
Guide used: N/A
File: /home/pi/RetroPie/roms/NAME_OF_SYSTEM/ROM_Files
Emulator: PCSX-Rearmed
Attachment of config files: N/A
How to replicate the problem: Select Playstation 1 game from menu with "analog" selected as the Pad 1 type. Change it to standard and save the config. Open a different game and check the controller settings, Pad 1 is set to "standard". -
-
You could create a game specific retroarch (assuming you are using a libretro core) config file.
https://retropie.org.uk/forum/topic/2199/specific-retroarch-emulator-settings-are-being-over-written-after-i-quit-the-game/24
https://retropie.org.uk/forum/topic/4055/idea-use-retroarch-s-built-in-per-rom-config-functionality-rather-than-runcommand-and-appendconfigIt means creating a file in the same directory as your game/rom called {romname.extension}.cfg
e.g. sonic.bin.cfgAnd then put just the config you want to apply to that game. I talk about this setting a bit here:
-
Thank you for the reply! I can't seem to get it working. So just to recap, this is what I did:
-
I changed the Pad 1 type to "standard" in RetroArch for the PSX and confirmed the config was applied to all games
-
I copied retroarch.cfg from the \retropie\configs\psx folder to the same folder as my game in the PSX roms folder, then renamed it to the game's exact filename with .cfg on the end. i.e. my game is Command and Conquer - Allies.img, so I made a copy of the desired config and copied it to the same folder as the game with a name of Command and Conquer - Allies.img.cfg.
-
Went back under a different game and changed the main RetroArch config back to analog. I confirmed that the setting is analog for other games.
-
Loaded Command and Conquer - Allies.img and saw in the bottom left hand corner the yellow text states a configuration override was loaded, however it still does not retain the setting.
Just to confirm, the setting I want to change is under > Quick Menu > Options > Pad 1 Type (or pad 2, pad 3, etc).
Any help would be much appreciated!
-
-
I would keep your (psx) system based retoarch.cfg clean, or at least without edits relating to this.
Then grab just the lines relating to the controller and put them in the new config file (nothing else) - there is an example in the video link above.Checking this file may help to see if there were issues loading the config file
/dev/shm/runcommand.log
-
Thank you! Is there any chance you know how I can find out what the exact syntax of the lines should be in the CFG file? In other words, How can I find out exactly what commands in the CFG file correspond to the options I see in the GUI?
I know I've seen a couple of other controller options in the RetroArch GUI, and I'm not sure how to figure out what is the correct way to address them in the CFG file.
Thank you again!
-
I'm trying the exact same thing as you retrogamer, and have the same model pi, controllers, well actually everything is the same :).
It would be great if we could setup a few individual PSX games to run with analog pad, instead of a the standard pad. It's very tidious, especially for the little ones, to change controller settings ingame, or by manually editing cfg files. I'll post my findings here, hopefully someone can point us in the right direction or at least explain if it can't be done.
This is what I've come up with so far:
You can change the padtype Ingame by opening the retroarch menu (select+triangle)- navigating to quick menu -> options. The menu looks like this.
The setting for the analog/standard pad is found in: /opt/retropie/configs/all/retroarch-core-options.cfg
The code is:
pcsx_rearmed_pad1type = “analog” for setting pad 1 as an analog pad
pcsx_rearmed_pad1type = “standard” for setting pad 1 as standard non analog padFor as far as I can tell, changing the retroarch-core-options.cfg changes the settings for all PSX games. I can't find settings for the analog/standard padtype anywhere else.
Now on the WIKI I read it's possible to make cfg changes for individual games ( https://github.com/RetroPie/RetroPie-Setup/wiki/RetroArch-Configuration#example-per-rom-override-retroarchcfg ). However this (I think, please correct me if I'm wrong) only applies to retroarch.cfg type config files and NOT to the retroarch-core-options.cfg.
The retroarch.cfg has controller mapping settings, but does not have a setting to change the analog/standard padtype. I can only find that in the retroarch-core-options.cfg. The video that was mentioned a few times in this thread explains how to make a game specific retroarch.cfg, but it seems there is no setting in here to actually change the padtype to analog/standard, so the video doesn't help much with this problem.
Am I completely missing something here, or is it perhaps not currently possible to setup individual PSX games to start with analog or non-analog padtype settings?
-
@goodpi31 have you tried putting the line from the retroarch core options into the individual retroarch.cfg files? With some issues the emulator has had you might have to put all 8 players in the individual config files with the analogs all on or all off in each config.
@retrogamer0897 when you copied the retroarch.cfg for psx you might want to change the input remapping directory so it isnt pointing right back to /opt/retropie/configs/psx/retroarch.cfg
-
@edmaul69 Hi Ed, thanks for your comment. I tried it earlier, but I didnt test with all 8 players. So I just tried it again, but this time with all 8 players.
My controllers are currently set to padtyp 'standard'. I confirmed this to be the case in /opt/retropie/configs/all/retroarch-core-options.cfg. I wanted to see if I could make a game load with padtyp 'analog' by changing all the retroarch files you suggested.
I edited:
/opt/retropie/configs/all/retroarch.cfg
/opt/retropie/configs/psx/retroarch.cfg
and a custom retroarch cfg for the game:/home/pi/RetroPie/roms/psx/gamename.cue.cfgand added the lines:
pcsx_rearmed_pad1type = “analog”
pcsx_rearmed_pad2type = “analog”
pcsx_rearmed_pad3type = “analog”
pcsx_rearmed_pad4type = “analog”
pcsx_rearmed_pad5type = “analog”
pcsx_rearmed_pad6type = “analog”
pcsx_rearmed_pad7type = “analog”
pcsx_rearmed_pad8type = “analog”It didn't work. I think the retroarch.cfg type configs just can't be used with those settings.. or perhaps the retroarch-core-options.cfg overrides it.
-
@goodpi31 that sucks. It actually would have been nice to be able to preset these so we didnt have to worry about switching them. I would have gladly gone through all my psx games to configure them.
-
@edmaul69 Ah shoot, and here I was hoping you'd come up with a new plan :D And yea it sucks.
Hopefully someone has an answer/idea on how to solve this... or could point out if its a feature thats currently not possible.
-
@goodpi31 @retrogamer0897 @Floob good news is i figured out how to do this. first off, in the individual cfg files add this line:
core_options_path = "/opt/retropie/configs/psx/retroarchcore.cfg"
make sure you do not have this remapping in your individual .cfg files otherwise it will override your new settings
input_remapping_directory = /opt/retropie/configs/psx/
so you dont have to retype a path in every individual config file create a new config file located and called /opt/retropie/configs/psx/retroarchcore.cfg . in that file add these lines
pcsx_rearmed_pad1type = "analog" pcsx_rearmed_pad2type = "analog" pcsx_rearmed_pad3type = "analog" pcsx_rearmed_pad4type = "analog" pcsx_rearmed_pad5type = "analog" pcsx_rearmed_pad6type = "analog" pcsx_rearmed_pad7type = "analog" pcsx_rearmed_pad8type = "analog"
then you need to give 777 permissions to that file because retroarch needs to be able to edit/add core options to that file
-
@edmaul69 Wow ed, thanks! I'm gonna try it right away. Edit: Still trying
-
@goodpi31 it is a typo. I just corrected it as you were responding
-
@edmaul69 Your idea seems like it is the solution. I havent gotten it to work yet. I'm trying really hard to figure out whats preventing it from working and double checked everything thrice by now. I believe I edited the files correctly and Im sure the permissions are correct.
After some trial and error I figured out that individual cfg files are not being loaded when running a game; the one that calls our homemade retroarchcore.cfg.
If I use the runcommand to check what custom cfg is being loaded, I see my custom cfg file. But when the emulator starts it seems to still take its cfg from somewhere else as it does not change settings that were set in the custom cfg (I tested this with various settings). I'm kind of at a loss right now.
-
you can save per-game core options. look within the retroarch GUI (select + retropadX). in the quick menu > options menu, you can change settings and 'save game options file' or something like that.
-
@dankcushions Hello, thanks for your suggestion, yes, there is a "save core overrides" and "save game overrides" button in the GUI. But it does not seem to be saving OR it doesn't seem to be loading these overrides when lauching a game.
The OP had the same problem I think, if I read his first post.
If I save an game override with say pad1type 'analog', all psx games will now have controller 1 on analog, not just that one game.
Same thing happens when saving a core override, it just happens on all games, not just that one. -
@goodpi31 that's not what i said. go to the 'options' menu.
-
@dankcushions hmm. the options menu has nothing that saves files- do you maybe mean the 'save game/core remap file' ?
( quick menu overview, options menu part 1, option menu part 2 )
-
@dankcushions Well, just in case: I just tried the save game remap file, didnt work. Then I tried the save core remap file, also didnt work unfortunately.
-
Do you have retroarch OSD enabled (this yellow text on start of emulation)? If not then enable it so You'll see what's going on.
I had some problems with core config loading on mame2010 so in fact I couldn't disable OSD. In final I found out that you have to be careful using this core/game specifig config because they have some hierarchy when loading them.
I think it's best to just remove all of that additional config retroarch core and game specific files for psx and try to configure Ape Escape one more try and then just save game specific config. Maybe when You have core specific file and additional configs it just doesn't use it because every other option is already loaded from other file.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.