question

David Coombes avatar image
David Coombes asked

Is it safe to use Custom ID in Unity cross-platform cloud sync'd game on mobile?,Unified user account for cross platform cloud saves

I'm creating a single-player cross-platform Unity title on Steam, mobile, and UWP (Windows 10 and XBox). I want game progress to be synchronised across devices so a player can play on Steam, then carry on on their mobile, then pick up on their XBox. For this, I am thinking of having a player-chosen custom ID and setting that on any device they are playing, and then use that ID to sync a cloud save file.

I'm just working through the first Unity tutorial and the example here says that account login for mobile should use the mobile specific accounts:

Important!: Please note that the above code is not for use with Mobile, this is an example only and shows how to login with a CustomID. Mobile games should use either LoginWithAndroidDeviceID, LoginWithIOSDeviceID or some form of social login like LoginWithFacebook

Is there a technical reason not to use custom IDs, or is this caution just for syncing game data to the mobile game systems? Do I need to log in as the specific user accounts for each system (Steam, Live, iOS, Android) and then associated those accounts with one PlayFab player account, or can I just have a simple custom ID?

,

I'm creating a single-player cross-platform Unity title on Steam, mobile, and UWP (Windows 10 and XBox). I want game progress to be synchronised across devices so a player can play on Steam, then carry on on their mobile, then pick up on their XBox. For this, I am thinking of having a player-chosen custom ID and setting that on any device they are playing, and then use that to manage a cloud save file.


I'm just working through the first Unity tutorial and the example here says that account login for mobile should use the mobile specific accounts.

Important!: Please note that the above code is not for use with Mobile, this is an example only and shows how to login with a CustomID. Mobile games should use either LoginWithAndroidDeviceID, LoginWithIOSDeviceID or some form of social login like LoginWithFacebook

Is there a technical reason not to use custom IDs, or is this caution just for sync'ing game data to the mobile game systems? Do I need to log in as the specific user accounts for each system (Steam, Live, iOS, Android) and then associated those accounts with one PlayFab player account, or can I just have a simple custom ID?

unity3d
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Coombes avatar image David Coombes commented ·

Sorry for the duplication. When I first submitted, the submit button was 'Login and submit'. That then cleared the form which I filled in again. Evidently it didn't clear the data though and concatenated the two posts. I appear to have no edit option.

0 Likes 0 ·
brendan avatar image
brendan answered

My first question would be, why aren't you just using a single Title ID and linking the various login types to the same player account in it? That way, there's no need to sync anything - all platforms would be using the same data. If the platforms are already allowing you to share the save data, this would be the simplest way to do that.

To answer your question though, the note was added because our earliest demos showed using Custom ID login, and we saw a lot of titles using it - even on platforms where they had better options, that would provide platform-specific information (which the developer/publisher could then use in their analytics).

One thing I'll add, however, is that you're talking about allowing the player to choose their own Custom ID. We would strongly advise against that, as many players will enter relatively weak IDs, making it simple for a hacker to find and take over those accounts. On Steam, we would recommend the Steam-specific login calls. On mobile, we would recommend using a social login, like Twitch or Facebook. On Xbox Live platforms, we'd recommend the Xbox Live login. But if you choose to use Custom ID on any platform, we would recommend either generating a GUID or using some local value that you are confident is unique, and which is suitable complex.

1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Coombes avatar image David Coombes commented ·

I've found the updated documentation that explains everything better. The link 'Documentation' at the bottom-right of the PlayFab console (My Studios and Titles) is to the old documentation. It should be updated to the new set.

0 Likes 0 ·
David Coombes avatar image
David Coombes answered

This is my intended model, although it's naive and not based on any particular understanding of the best way to do cloud stuff and I need to read up on PlayFab's exact terminologies in case I'm muddling concepts.

A new player gets my game and plays it on a platform. That creates a local save file.

They then want to play it on another platform.

They create a game account on the first platform. This is registered on PlayFab and the save data is copied to the cloud as a file.

They add that game account to the second platform which downloads the save data.

Any other device they want to access their save file with, they only need put in their game account ID.

For the user, they only want to have a front facing ID that they choose and use. This ID is sent to PlayFab to sync the save data file across machines accessing that account ID. How that's handled in the background, I don't know. I get the impression you are suggesting actually using other ID systems and just associating the game. I'll go over the documentation properly rather than trying a quick test. ;)

1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Coombes avatar image David Coombes commented ·

Sorry, that should have been a comment. I just typed into the quick reply panel as one would a normal forum. This 'forum' should probably be renamed an Answers type board, as that denotes a different conversation style like Unity Answers or StackOverflow.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.