Configuration changes not saving on x86 Retropie
Hey everyone. I've just put together an x86 build of RetroPie (4.4) on top of Lubuntu 19.04. This is installed on a Core 2 Duo 2008 iMac. I'm having issues with configuration - namely, some changes I make and save inside the RetroArch menu don't stick around after I exit the game, but some do. I placed overlays on a few titles and those stayed on, but any shaders I select vanish once I quit and restart the game. I have selected "Save Game Override" as well as having the configuration save on exit. I've also selected "Save Core Override." Even stranger, it seemed to work for the NES games I set up but not for the FBA ones.
I am assuming this has something to do with file and folder permissions in Linux. I have tried the CHOWN -R command on the directories (which are located in root, so just everything in /opt). The ownership change is reflected when I look at the permissions in the file explorer. But still no dice.
Any help is appreciated. Thanks everyone.
@eddygenotype I've now discovered that making changes to the config file through the editor found in the RetroPie menu (the one that boots back to a shell window and gives you shader and resolution options) seems to stick. I was previously making changes with the in-game RetroArch menu accessed via the hotkey.
So my assumption is that RetroArch doesn't have permission to write to a config, but ES does? I need to get comfortable manually writing my configs anyway, so at least I can do that.
Overrides are tricky, and it's likely the precedence order is what is messing you up.
My suggestion would be to remove ALL the overrides, and then rebuild whatever you were doing (overlays especially) by editing config files directly, rather than using overrides.
Here's what happens... when you save an override, it saves ALL the retroarch settings, not just the differences from your base setup. So if you save a game override and put in an overlay, it is also going to save the shader settings. Then you later save a core override and put shaders in it. Well, the game override, being more specific than the core override, will replace the core override shader setting with the game override shader setting -- which is to not have any.
It gets worse, because there are even more places where things are saved. You could have overlay config files in the /roms folder too, for example.
I would use game overrides very selectively, and when I do use them, I generally go in and delete all the lines that I don't want overridden yet again. It's actually easier to hand create them with only the lines you want, rather than delete out the lines you don't. This is why most tutorials for adding overlays here on the forum describe manually adding the files.
@rkoster That makes sense. Now is the time for me to get more comfortable making my own configs from scratch, I suppose.
Are game specific configs stored somewhere other than the ROM folder? For instance, I have "The Punisher" on FBA - I had set it up with a themed overlay, and that overlay is working fine. I have other FBA games running with a generic NeoGeo bezel, which I had saved as a "Core Override" option, and it loads on every game that isn't the Punisher. I assume that the Punisher then has it's own config file - but I can't find it. It's not in the ROMS folder containing Punisher.zip, and everything I've read tells me that's where the game specific files should be.
Thanks for your help!
@eddygenotype Oh... there are so many other places they are stored. :) Sorry to tell you...!
I wrote a GIGANTIC answer to this, and ended up posting it as its own thread. You can find it at https://retropie.org.uk/forum/topic/22816/guide-retroarch-system-emulator-core-and-rom-config-files
Hope it helps!
@rkoster Balls. (You have been AMAZINGLY helpful. Thank you so much!)
@eddygenotype You're welcome! I have been sort of obsessively documenting things in RetroPie lately, and your question was well-timed. :)