Feature Design: Save Import & Export
A key feature of The Salt Keep that allows players to continue their saved games even after switching platforms (from the demo to the full version, most likely) is the save export and import. First I'll give some practical instructions on how it works, then I'll talk about the design behind it.
How to Use It
NOTE: This feature works for saves started after the January 16th demo update. Too much has changed since earlier versions to reliably import.
At any time while playing The Salt Keep, you can move your save to a different copy of the game. For example, let's say you've played through the demo in the browser on your laptop and want to pick up where you left off in the full version on your phone. It's a simple process:
- In the demo, select the settings button (the "cog" icon)
- Select the button that reads "Export Save"
- Copy the jumbled text that appears in the popover to your clipboard:
- NOTE: Make sure you get ALL of it. If you're missing anything, the game will reject your import.
- Send it to your phone in whatever way is convenient for you (in a text file on Google Drive, for example)
- Open the app on your phone and start a new game
- Select the settings button (the "cog" icon) again
- Select the button that reads "Import Save"
- Paste the jumbled text you copied before into the empty box in the popover:
- Press "Import"
- The game will reload with the entirety of your progress from the previous version, including achievements and all three game saves.
That's it! Now you can pick up where you left off.
How it was Designed
Shortly after I launched the demo for The Salt Keep, I ran into a dilemma. It seemed important that the demo be substantial enough that players could get invested in the story and have a real feel for the gameplay, but the more time one puts into the demo, the more of the game they have to repeat in the full version. I had considered doing a free download followed by pay-to-unlock model, but that was really only practical for mobile versions, and would introduce a whole new set of problems for each app store. Ideally, I needed something that would work the same way between every platform.
Most of my prior game dev experience has come from browser-based games, most notably the idle game The Idle Class. For browser-based idle games (including my own), it's pretty standard practice to include a method for exporting and importing saves, because the games tend to be extremely long-running and at risk for being inadvertently wiped along with browser history at some point down the line. My first plan was to do something similar to what I had done in The Idle Class and include an export option that automatically downloaded your save as a text file, and an import that allowed you to load in that text file.
In the browser-based demo, that plan worked out fine, but once I started preparing the mobile versions in earnest, I realized it was going to be a problem. Downloading a text file would require additional platform-specific code for each version of the game and more extensive permissions for the apps, not to mention an assumption that players are at least somewhat comfortable with finding their mobile downloads, which I'm not sure is necessarily the case. To get around that, I decided to take a step back in complexity and just give players the save data.
It's a fairly tried-and-true strategy in idle games, and it removes any need for platform-specific code. To make the save output more manageable and obscure the actual save data, it's base64 encoded, but it's not really meant to be a security measure. It's trivial to decode if somebody really wants to, and if they wanted to edit their save data, they could that, too. Who cares? I'm not in charge of them!
So, we've got a way to move saves between platforms without requiring any real filesystem trickery, no need for the added cost and complexity of external servers, and the added benefit of providing a fairly straightforward way to troubleshoot should somebody run into story logic problems. It's a pretty effective system overall, I think.
In theory, at least, you know? The game hasn't launched yet.
Get The Salt Keep
Leave a comment
Log in with itch.io to leave a comment.