Save issues

Discussion in 'Bugs' started by unknown, Jul 12, 2013.

  1. unknown

    unknown Member

    I would like to point out that SteamCloud still works terrible with Dredmor saves. The game is unable to recognize copied saves (I've made a copy of "Documents\GaslampGames\" and transferred it to another pc) - SteamCloud just removes them. Even with disabled SteamCloud game fails to find the saves. The game was the same version on both computers, same DLCs installed.

    ---EDIT---
    After two hours of removing of all steamcloud saves, all local saves with disabled SteamCloud the game restored the latest one and I have no idea how.

    This issue was in the same state about 8 months ago when I was unable to transfer my saves between two PCs and it seems I am not the only one since there are some similar topics with complex multistep solutions. Please do something about it. Thanks.
     
  2. Daynab

    Daynab Community Moderator Staff Member

    Yes, we're not sure why it's so weird.

    One thing you can do that I'm pretty sure will work is to run the game with the -nukesteamcloud launch option on the pc you want to copy saves over to. That should clear what's in memory. Then paste your save and it should work.
     
  3. unknown

    unknown Member

    Did it already but the game was unable to find saves. I think I need to do some testing to find out what happens to saves during sync with empty cloud.
     
  4. Kazeto

    Kazeto Member

    Right, this crud again...

    Get to the directory in which your saves are stored. Other than the save folder, there ought to be some other folders and files. One of these files is called "config.xml". Open it and fine this line:
    Code:
    <setting name="enableSteamCloud" value="1"/>
    And then change it to this:
    Code:
    <setting name="enableSteamCloud" value="0"/>
    PS. By "this crud" I mean "Steam Cloud" and not "this thread".
    PPS. Don't ask why it works that way. It is not known to me and I am afraid to learn of the answer (though personally I suspect voodoo platypuses).
     
  5. unknown

    unknown Member

    So here is the root of all evil. Now we know what can fix the problem but editing config files just in order to be able to transfer saves is a bad user experience. I guess no one wants to destroy their own saves and waste time looking for the solution over the web. We need the fix.
     
  6. Daynab

    Daynab Community Moderator Staff Member

    Thing is, we've looked into it and everything should be working fine, on our end. For some reason, disabling it from inside Steam does nothing either.
     
    Kazeto likes this.
  7. unknown

    unknown Member

    It's been a while. I made some tests today on two machines, Linux and Windows builds.
    First let's take a look at regular non-corrupted perfectly synced saves.
    There are 2 options which influence syncing and 2 savefile locations:
    • "enableSteamCloud" value="1" in your config.xml file (enabled by default)
    • Steam Cloud sync in Steam game settings.
    Locations:
    • local saves (usually your "Documents")
    • cloud saves (Steam folder)
    Steam Cloud sync copies to (and from) the cloud everything (not sure about that, there are some restrictions on file size as far as I know) in your "C:\Program Files (x86)\Steam\userdata\[userid]\98800\remote\" directory for Windows and "/home/[username]/.steam/.steam/userdata/[userid]/98800/remote/" for Linux, paths might be not the same for you. Files in this directory are compressed.

    "enableSteamCloud" value="1" makes the game copy everything from directories mentioned above to "C:\Users\[username]\Documents\Gaslamp Games\Dungeons of Dredmor\" for Windows and "/home/[userid]/.local/share/Dredmor/" for Linux. When you launch the game after enabling that option (not launcher, you need to get into the main menu), cloud saves are uncompressed and copied to your local save directory.

    How does sync works?
    Savedata is being read from your local saves directory. After you close the game, changed local saves are compressed and copied into Steam Cloud folder. Then the sync happens.
    As long as you have both options enabled and sync goes through - everything is fine. Disabling sync in config.xml won't update your Steam Cloud folder, so new saves won't be uploaded to the cloud - so you shouldn't set it to 0 it if everything works. Disabling sync in Steam settings disables uploading compressed files to the cloud - turn it off if you have 1 PC.

    So everything is fine as long as you have "enableSteamCloud" value="1" in your config.xml file and Steam Cloud sync enabled in settings.

    Issues
    But what happens when you have a corrupted save, failed sync or just want to replace/modify/delete saves with both sync options enabled? Nothing good - there are gorillion topics here and on Steam hub about issues with that.

    Deleting all saves is easy - "-nukesteamcloud" in game launch settings does its job (both sync options enabled), files from Steam Cloud directory are removed and these changes are reflected on server. Local saves are removed after the next game launch so you can recover them from your Documents right after nuking if you think you've made a huge mistake.

    Now let's move onto file changes - replacing/editing/moving by hand from another PC; both sync options enabled.
    You cannot just copy savename.dredmorsave folder from remote local saves folder to your local saves folder - it will be removed, because it doesn't exist in Steam Cloud directory. Copying it to the Steam Cloud directory does nothing - files are not compressed so game won't accept them; Steam won't upload it to cloud either.
    What to do?
    First, disable Steam Cloud sync, keep "enableSteamCloud" enabled. It will make the game load the save from local save folder and make a compressed copy in cloud folder after closing. After that enable Steam Cloud sync back, launch the game again and close it - everything will be uploaded to the cloud.

    Corrupted saves synced with cloud (save won't load on this PC but it just worked on another): only a copy of local saves from another PC will save you. Cloud is already corrupted - don't log in to Steam on another PC, just copy the files and replace them as described above. You'll probably want to "-nukesteamcloud" first to wipe cloud files.

    TL;DR: want to sync without issues? Don't touch anything. Want to edit saves by hand - you'll need to read.
     
  8. Alexsiev

    Alexsiev Member

    So I had a save file on my laptop I wanted to transfer to the desktop and followed these instructions, but it still doesn't seem to work. The save loads fine on the laptop, but it goes back to the menu on the desktop. Is there any other reason that could cause this? Do I need to copy some other files from my laptop for the game to be able to load the game properly?

    EDIT: I just copied over the files for the entire game from the laptop and it works. Wonder what the deal is now, lol. Had Steam revalidate and it didn't find any issues either, well whatever.
     
    Last edited: Aug 10, 2015