Save games and multiple devices... Where to start?

I am making a game and want to save player progress, inventory, etc.

I also want the player to be able to access this data across multiple devices and switch in between the devices.

What should I use as the players unique identity? Should I use a Facebook Login Exclusively? Should I use the standard user name and password?

Second more in depth question, where do I start my research?  For example, use Google Datastore? 

Start by thinking if this is *really* necessary. You are adding a fair bit of programming complexity and work to your game. You are also adding complexity for your users, now they need to login and stuff or at least are confronted with additional options. How many of your users do you think will actually go between devices etc etc. I only say this because I have been down this road and I’m not sure it was worth it.

Anyway! :slight_smile: Try to keep it simple using 3rd party service that has a Corona library available. Like Parse for example. I’m sure more ideas will come.

If you force Facebook usage you can get a unique user ID across devices and can skip the user/password route.  You will probably get some negative reviews bitching about having to use FB though. Just have to weigh that in.

I have decided to put his off a bit due to exactly what you mention… more complexity. On an initial release, I think I can due with out it.

Just an FYI, I would also make the login an optional feature but it’s something I think is valuable for my game. I’m making a game a’la Puzzle Troopers so I will ultimately need a solution in the long run, should it become successful and justify the effort. Also, for what it’s worth, PT choose the face book route and they are hugely successful.

I know nothing of security and such and have no idea how to go about it. How to ensure that communications are secure to Google Datastore, or Parse, what to watch out for, ect. 

Another question, If i want to sell persistent elements, aren’t there app rules requiring persistence across installs / uninstalls? How do you go about that if there is no login?  

If anyone has done the research on the various problems and solutions, is educated in the matter, and willing to let me give them a call and pick their brain for a few min, that would ideal!

In-app purchases, specially for managed/non-consumable items are tied to the user’s account they used to buy things.  For instance on iOS this would be their iTunes/iCloud/Apple ID.  When you make an app purchase, you have to login with this account, and IAP uses the same account.  For Android, this is your Google Play Username.

The store.* API provide a store.restore() call which you should make that tells the service to return any previously purchased items.  When you get this list of items, you can unlocked them as if the person had purchased them on that device.   For Android you can call this at any time, however Apple really wants to you have a “Restore Purchases” button that triggers the restore process.

Rob

Start by thinking if this is *really* necessary. You are adding a fair bit of programming complexity and work to your game. You are also adding complexity for your users, now they need to login and stuff or at least are confronted with additional options. How many of your users do you think will actually go between devices etc etc. I only say this because I have been down this road and I’m not sure it was worth it.

Anyway! :slight_smile: Try to keep it simple using 3rd party service that has a Corona library available. Like Parse for example. I’m sure more ideas will come.

If you force Facebook usage you can get a unique user ID across devices and can skip the user/password route.  You will probably get some negative reviews bitching about having to use FB though. Just have to weigh that in.

I have decided to put his off a bit due to exactly what you mention… more complexity. On an initial release, I think I can due with out it.

Just an FYI, I would also make the login an optional feature but it’s something I think is valuable for my game. I’m making a game a’la Puzzle Troopers so I will ultimately need a solution in the long run, should it become successful and justify the effort. Also, for what it’s worth, PT choose the face book route and they are hugely successful.

I know nothing of security and such and have no idea how to go about it. How to ensure that communications are secure to Google Datastore, or Parse, what to watch out for, ect. 

Another question, If i want to sell persistent elements, aren’t there app rules requiring persistence across installs / uninstalls? How do you go about that if there is no login?  

If anyone has done the research on the various problems and solutions, is educated in the matter, and willing to let me give them a call and pick their brain for a few min, that would ideal!

In-app purchases, specially for managed/non-consumable items are tied to the user’s account they used to buy things.  For instance on iOS this would be their iTunes/iCloud/Apple ID.  When you make an app purchase, you have to login with this account, and IAP uses the same account.  For Android, this is your Google Play Username.

The store.* API provide a store.restore() call which you should make that tells the service to return any previously purchased items.  When you get this list of items, you can unlocked them as if the person had purchased them on that device.   For Android you can call this at any time, however Apple really wants to you have a “Restore Purchases” button that triggers the restore process.

Rob