Where are my saved games?

Hi, this is really winding me up now. Its as if they are trying to make it as difficult as possible. I am using a GPD XD handheld which is on KitKat 4.4.4. I can write to my external SD and can delete from my external SD. I am using the nightly RetroArch 14 June 2016 (I also tried the GooglePlay version). It says it is saving to ‘data/data/com.retroarch/saves’. Where is this ? There is no such directory. Why can’t it just save everything into the ‘storage/emulated/0/RetroArch’ directory so everyone knows where all their files are (saves/states/overlays etc) by default ? Or would that make it too easy for us ? Does anybody know the answer please ?

You can change your saves directory to anything you want in retroarch directory settings you know.

Yes I know thats possible but my point is I can’t move my current saves because I don’t know where they are. The default location is rediculous and I can’t find it anywhere.

Why isn’t the default location somewhere logical like ‘storage/emulated/0/RetroArch’ ? Why do the makers of this program have to make it as awkward as possible ?

Yes I know thats possible but my point is I can’t move my current saves because I don’t know where they are. The default location is rediculous and I can’t find it anywhere.

Why isn’t the default location somewhere logical like ‘storage/emulated/0/RetroArch’ ? Why do the makers of this program have to make it as awkward as possible ?

Can somebody who knows or the person that made this commit in RetroArch tell me why this location is chosen as the default and how to find my saves please ?

I have seen some similar posts like this yet the location is still the same.

/data/data/com.retroarch/saves definitely exists. It’s inside RetroArch’s application directory. You’ll need root to see it from outside of RetroArch, though.

The reason it uses such an awkward default location is because Google keeps changing where applications are allowed to write with each new version of Android. The only thing that’s stayed consistent is the application’s own directory, which is why it falls back to that. You can still set it to other places by going into settings > directories and pointing it wherever you like, though if it doesn’t have access to write to that location, it will fail to save.

For me, my saves go into my rom folders. But like Hunterk says, android is getting really weird with where you can change files. if your android device is rooted, and you have a root capable file manager like the cyanogen file manager, you can search for the file. IE n64, if your rom is Mario64.n64, then do a search for Mario64.srm or Mario64.state if you use state saves. And it’ll eventually lead you to where ever your files are. once you have your files, i’d suggest changing the save location to somewhere easy. like storage/emulated/0/RetroArch/Saves, or something in your microSD card.

But… you’ll still need to root your phone to get to the data/data folder, once rooted, use that cyanogen thing i mentioned. http://boards.dingoonity.org/gpd-devices/rooting-the-gpd-xd/ Not sure if that helps, it was TL: DR for me.

That’s the thing though, I can write to my external SD and delete files from it but RetroArch never wrote anything to my external SD (where my roms are) and then defaulted to that ‘data/data’ directory. Why default to a directory that needs root access anyway ? All other emulators manage to save just fine. I used to have all Robert Broglia’s emulators installed and they saved to my external SD no problem but RetroArch has to find the most awkward way possible. They need to use a directory that’s accessible to all. If all other programmers can do it I don’t see why RetroArch can’t.

(Almost) all other programmers/programs use Android’s Java interface, which has different permissions from natively-running applications like RetroArch. Again: blame Google for their ass-backward approach to security.

If you have a better way of doing things, send us a PR for it.

But why choose a default directory that needs mandatory Root access to view and backup the saves etc. ? Nearly all the directories in RetroArch are saving to this Mandatory Root directory. The other directory that RetroArch creates ‘storage/emulated/0/RetroArch’ doesn’t need Root access, why not save them all there ? I don’t think the majority of people want to install RetroArch and then have to manually change every directory before they can use it, and if they don’t do this then the saves and states etc. that are created are locked with no access. Also no access to overlays etc. until changed.

Good points, why not make a request on github?

Anyway, I have tried RetroArch in a dozen devices (exactly a dozen) and the default behavior has never been write to the internal APP dir even in unrooted devices.

The default is to Write to content dir, just tried this again in my Xperia Z5 unrooted and the point stands. The only reason for it to default to the internal app dir is that it can’t create RetroArch on the internal SDcard or that it can’t stat it for any reason. Or maybe you’re using an external launcher like gamesome and it’s screwing up our initialization. The logic is as follows;

If Internal Storage is writable don’t set a default which means directories would read <content dir> and that the save data would go into the content directory, this doesn’t take into account the external SD since there is no simple method to determine it’s location on the NDK, so if your device doesn’t have external SD card write perms it would probably fail to save there

Else, if the Internal Storage APPDIR is writable set that as a default, so sdcard/Android/data/com.retroarch/files/saves

And only if all of these fail, set the save dirs to the internal app dir.

This is only done on the first run, from that onwards the settings always take precedence. So, it’s either failing to create the dir, or failing to assert it’s presence for some reason, and as such we would need a log from a clean installation to tell for sure, and logging the frontend driver seems to be failing, I just pushed a commit on the staging branch and if you’re willing to help make this behave as it should you should try tonight’s devel build (it hasn’t built yet, you can grab that here: http://bot.libretro.com/nightly/android/)

Edit: Overlays, Shaders,etc are not gonna change, those are packed with the APK, you can change the dir and update them if you really want to tweak them. Userdata like BIOS, saves and screenshots is what is being discussed here.

I do have Gamesome installed, are you saying this is the cause of the weird ‘data/data/’ directory choice ? As I said before, All my other apps write to my external SD just fine (including UAE4Arm HardDrives), which is where I store all my roms. RetroArch has never written to it (which would be the initial installed ‘content directory’) then defaults to ‘data/data’ etc. So Gamesome is the cause ?

What is the ‘devel’ build ? Is it very different from the regular one ? Whenever I re-install RetroArch I have to manually bind all my joypad buttons (and turn off auto detect) because RetroArch detects my devices buttons (GPD XD) as two devices, and the bind all option doesn’t ask for all the buttons, it misses out L3 for some reason. I just get a bit bored with having to re-do all my settings everytime.

You can just backup you retroarch config file, so you do not have to redo your settings everytime, I believe the file is located at 0/android/data/retroarch.

I’ve tried changing the directories for everything and it still won’t work. It seems to need to have root access. I’m not willing to root my phone. I add my voice to this overall complaint. I loved Retroarch but hadn’t used it for a year. I was looking forward to some of my retro collection on the go but I will NOT root my phone for it. However I appreciate and respect what you say about helping to fix the issue. I am not a programmer, so I obviously don’t mean to criticize anybody or anything. I appreciate the software and would just like to replace one core that doesn’t work, but for now I’ll enjoy the other cores that do work.

It looks like a request was made but then closed:

I’ll add my voice to having some way of at least being able to retrieve/backup saves without having to root my phone.

P.

For me the option to change the directory doesn’t work unless you have root access, which defeats the purpose. On my tablet I am rooted and can use any dir I want and even use the save from my PC to take my achievement hunting on the go. On my phone I am not rooted and no matter what dir I set it to it just ignores the setting and always looks in the default so I can’t take my gaming on the go with my phone as I refuse to root it. Save handling in this Android version deff needs work. It’s very poorly implimented and explained.

Well that is an actual answer that makes sense. Glad to see im not the only one who noticed this. I’ll try that since I have no interest in rooting my device for this. Thanks fivefeet8