Specific retroarch emulator settings are being over written after i quit the game.
-
@herb_fargus I am about to give up. Everything was working perfect even after i restarted the whole system. After second restart, controls went back to old settings. Retropie has its own mind. The only thing it works just fine all the time is Mame4all control settings. Other's keep changing whenever they please. I wish other emulator adapted a system like mame. Thanks anyway for the help. I am just going to remove all other roms and leave only mame roms.
-
It would be quite cool if it had a mind of its own, but it doesnt.
You can set quite a few options using the config editor.
https://github.com/retropie/retropie-setup/wiki/Configuration-EditorOr you can check this to understand why RGUI settings may not stick (and how to make them stick)
-
@hakan1708 it seems that you are using the "save config on exit" feature on RetroArch. Am I correct? This can bring a lot of confusing situations like yours...
-
@meleu Thanks for the reply.I don't want to deal with retroarch(for now). I chose the emulators without "lr", so what I did was I just edited the cfg files for those emulators. Simple. Now they work. I admit that I got lazy at reading the manual. :)
By the way, yes, save configuration on exit is on. How do you put it off though? I put it off and I save the new configuration but when i go back, it still shows "on". You think this the curse of Retroarch? Thanks again for help. (ooops. i just saw the video) I'll find my answer in there. -
Retroarch RGUI has a setting for Per Core Config and Load Override files automatically. Would be nice if a tutorial out there explained this method because it is a hell of a lot quicker and simpler to do everything in RGUI instead of mucking around with multiple config files manually.
FYI, it's under Settings > Configuration, and you need to make the changes to the global config (can do this by going through the RetroPie menu and then launching retroarch).
Unfortunately, I do not understand the difference between Per Core Config and Load Override Files Automatically. You would think they mean the same thing. I've researched it a few times and from what I understand:
Per Core Config: Will save an entire config file called "retroarch.cfg" in the emulator's respective config folder.
Load Override Files Automatically: Will append the global config file with config settings made in a standalone config file that has the same name as the emulator (e.g. FCEUMM.cfg). From what I can tell, you need to save this file manually.So, they are mutually exclusive and you should only have one enabled. To add to the confusion, there are Remap files which remap the controls on a per core basis. See, there's actually two ways to change the controls. One is under Settings > Input, and the other is under Quick Menu > Controls. Input affects both RGUI navigation AND rom controls. Controls only affects ROM controls. To save the remap, you have to select Save Remap file under Quick Menu > Controls, AND you have to make sure load remap files automatically is enabled under Settings > Configuration.
Jesus Christ Libretro team. Ok, so remap files actually works 100% of the time once I figured that out. But Core specific settings? I need it explained to me like I'm 5, unfortunately.
-
@hakan1708 said in Specific retroarch emulator settings are being over written after i quit the game.:
By the way, yes, save configuration on exit is on. How do you put it off though? I put it off and I save the new configuration but when i go back, it still shows "on". You think this the curse of Retroarch? Thanks again for help. (ooops. i just saw the video) I'll find my answer in there.
You need to turn it off in the global config, not the in game RGUI. You can do this by launching retroarch in the retropie menu. Remember to save the config before exiting...
-
@Concat @hakan1708
I agree that using RGUI is very very user friendly, but I think that RetroPie is not designed to manipulate the RetroArch via RGUI by default.I'll try to explain what causes this confusion...
If you look at the
/opt/retropie/configs/SYSTEM/emulators.cfg
(substitute SYSTEM by the obvious), you'll see that every single libretro core uses it's ownretroarch.cfg
file. And all of these inidividual files have, by default, an#include
directive calling the "global"/opt/retropie/configs/all/retroarch.cfg
.If you set "save config on exit" when playing megadrive, you'll dump the config at
/opt/retropie/configs/megadrive/retroarch.cfg
and it will overwrite the old file. After that the file will have no#include
directive anymore (update: it was made some improvements on retropie and now the#include
line is put at the end of the file. It avoid some confusions, but not solve all of them). Furthermore, be awared that the configs you made will take effect when playing megadrive only.Fortunately, you can "restore the factory settings" with the file
/opt/retropie/configs/SYSTEM/retroarch.cfg.rp-dist
. Just rename it toretroarch.cfg
. ;-) -
I've never understood the redundancy of RetroArch's configurability in RetroPie unil your post. I've had 'save on exit' set for some time now, but have not noticed any of the issues you've described. I take it that's because I only make changes by invoking the Rgui from the 'RetroArch' menu option in the 'RetroPie' ES menu listing? From there, no core is loaded and I assume the changes are made to the global file. I'm glad I read this as I'm going to want to look over the individual core config files and perhaps rethink my setup here.
-
@mediamogul said in Specific retroarch emulator settings are being over written after i quit the game.:
(...) I only make changes by invoking the Rgui from the 'RetroArch' menu option in the 'RetroPie' ES menu (...)
Yeah! I think this is the best way to use RGUI on RetroPie, but it's still dangerous. Because if you change one single config during a game, you'll overwrite the current system retroarch.cfg. The user must keep in mind that he/she have to exit the game, and launch the RGUI via RetroPie menu.
-
@meleu
Interesting. I obviously need to trace how the configs are being called to determine the problem. What you've described does shed some light on things because my/opt/retropie/configs/SYSTEM/retroarch.cfg
files do not have the#include
line.That said, I could have sworn that when I edit the global config and launch into a rom, the changes made will flow through, even though I don't have an
#include
line. And when I edit via RGUI while in game, and it saves to/opt/retropie/configs/SYSTEM/retroarch.cfg
(confirmed via yellow text at bottom left), the changes DON'T stick when I relaunch the ROM.It's as if the only config being called is the global one. It's very confusing if RetroPie is managing the configs differently than the way RetroArch intended. I've been using RetroArch for a couple years now on Android, so it's been a maddening experience not to have my old methods work properly... and to not understand why.
The wiki needs a flowchart for this config circus... it's got to be one of the most common sources of confusion in RetroPie.
-
@Concat like this: https://github.com/retropie/retropie-setup/wiki/RetroArch-Configuration
A visual flowchart would be cool though
-
@Concat said in Specific retroarch emulator settings are being over written after i quit the game.:
@meleu
Interesting. I obviously need to trace how the configs are being called to determine the problem. What you've described does shed some light on things because my/opt/retropie/configs/SYSTEM/retroarch.cfg
files do not have the#include
line.I think the file was overwritten. Try to find an
/opt/retropie/configs/SYSTEM/retroarch.cfg.rp-dist
. This file contains the default config.And when I edit via RGUI while in game, and it saves to
/opt/retropie/configs/SYSTEM/retroarch.cfg
(confirmed via yellow text at bottom left), the changes DON'T stick when I relaunch the ROM.Pay attention at the filename when the yellow text appears. Maybe it is not
retroarch.cfg
(if the "configuration per core" is on).Take a look at the
/opt/retropie/configs/SYSTEM/emulators.cfg
and search for the line that begins with "default=". And then look for the line that begins with the string after "default=". This is the command that will launch RetroArch. See that it calls a specific retroarch.cfg. This is the config file that will be used when executing the respective system.I've been using RetroArch for a couple years now on Android, so it's been a maddening experience not to have my old methods work properly... and to not understand why.
Same here. My luck is that I'm an old Linux user, and I was noticing these details as I was facing these problems.
The wiki needs a flowchart for this config circus... it's got to be one of the most common sources of confusion in RetroPie.
fully agree.
-
@herb_fargus
Honestly, I've read that page multiple times now. The missing piece, for me anyway, is how making changes via RGUI (and saving) will affect everything. Everything on that page talks about manually editing the config files.It seems I wrongly assumed Retropie plays nice when saving settings via RGUI. Hell, as soon as I got my RPi I turned on Per Core Config and went to work changing settings and saving via RGUI... just like I do with my Android tablet.
Thankfully Remapping seems to work the exact same as I've come to expect, so I didn't have much issues with controls.
-
Pay attention at the filename when the yellow text appears. Maybe it is not
retroarch.cfg
(if the "configuration per core" is on).I'm 100% positive it is. I watched it like a hawk when troubleshooting. :)
But I did not analyze the contents of emulators.cfg and follow the chain of events. I'm going to do exactly that to understand where it's going wrong for me. If I need to restore all the defaults and just manually edit the configs from now on, I will just have to do that.
Thanks for all the info!
-
@Concat Did the video above help explain what gets written and why? I tried to show how RetroArch makes saves back to the RetroPie directory structure and how to avoid creating conflicts.
As you can see by reading the emulators.cfg file in a given system directory, it is the system retroarch.cfg that is read by Retroarch, this in turn reads the global setting, but can be overridden by a game/rom specific config.
So the priority is- Game specific retroarch.cfg
- System specific (everything above the #include line will take priority over the global file)
- Global Settings
This allows a high level of control over exactly what settings each system (or game) will apply. By updating settings in RGUI it just wont/cant? re-apply those in the correct config files quite so specifically. You can of course use RGUI to do this, but its not quite as elegant as using the config files yourself as it results in one big mashed up config - but then if it does what you need I'd run with it. As shown in the video, its a pretty quick one time tweak to set your custom RetroArch settings without screwing up the way RetroPie wants to process the configs.
Plus, if you dont want to manually edit anything, the config editor will let you easily make changes that will be saved in the correct manner:
https://github.com/retropie/retropie-setup/wiki/Configuration-Editor -
Yes, and no.
In your video you are missing a RetroArch option. I actually see 2 save options while in RGUI.
Save Configuration
Save New ConfigurationThe option to Save a New Configuration file will create a "SYSTEM-1/2/3.cfg" much like your video. However, I never use this option because I've always known that RetroArch won't autoload it. I use Save Configuration File, which saves to
/opt/retropie/configs/SYSTEM/retroarch.cfg
and overwrites the existing file.It was a helpful video though. I've had a number of aha moments in this thread, and I did watch the entirety of your video, so thank you :)
-
@Concat Ah - ok, so by overwriting your existing config you are effectivly doing this bit from my post above
You can of course use RGUI to do this, but its not quite as elegant as using the config files yourself as it results in one big mashed up config - but then if it does what you need I'd run with it.
So that would work, but then you are sort of opting out from being able to fine tune your setups. I'll try to cover this in more detail in a future video.
And thanks for the comments :) -
@Floob don't forget to make a visual flowchart ;)
-
the 'proper' way of doing this is to edit these files using the retropie config editor:
https://github.com/retropie/retropie-setup/wiki/Configuration-Editorcan't go wrong with that!
-
This is the type of complexity that only a puppet show can fully illustrate. Too bad the price of felt and googly eyes has skyrocketed in recent years. I blame trade relations.
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.