Sync Manager

The PlayFab Sync Manager is specifically designed to bind and unbind additional authentication methods with the original registration method, in order to add more login methods for an account while also collecting additional profile information and exclusive data from the authentication platform. 

There are lots of authentication methods to sync with, like Facebook and Google Plus, if not already used for initial registration of the account. These additional authentication methods provide data that can also useful for account profiling and the other PlayFab features, like the following but not limited to:

  • Account Profile

  • Player Profile

  • Leaderboards

  • Friends List

The addon is an important feature for your application to add convenience to the player and security for the account's save state.

 

Intstructions

1. The first step is to add the PlayFab API addon into the project.

2. Then, add the Authentication addon into the project.

3. Finally, add the Sync Manager addon into the project.

Features :

  • Bind and Unbind to different authentication methods, for more login methods.

  • Profile information and specific platform of an authentication method are synced.

  • Account synced and profiled.

  • Organized request and update feature.

Network Services :

  • Facebook

  • Google Plus

  • Game Center

  • Google Play

  • Facebook Instant Games

  • Steam

  • Xbox Live

  • Nintendo Switch

  • PS4

  • PlayFab

Sync Methods

Company

Android

iOS

Facebook

Google Plus

Cryptography

The Sync Manager addon manages the syncing of other authentication methods after initial registration has already been done. In this way, you can add more authentication methods into an existing account and even remove them, this is called binding and unbinding an account. 

 

Similar to authenticating through the Authentication addon, this also gives the bonus side of receiving a 3rd party services' details of a player's account, for example Facebook and Google Plus giving the account holder's name, profile picture, friends list, leaderboard scores and other profile information.

After syncing a registration method, the player can then login to that new registration method. The more syncs, the more login methods the account holder can use. A bonus side is that PlayFab records the original registration method, there are multiple ways to do this, one is through the Player Manager addon. This way, you can keep track of everything easily while automatically binding or unbinding an account.

There are 6 methods of registration, namely the Company, Android, iOS, FacebookGoogle Plus and Cryptography.

  • Company - uses an email, username, password authentication. This is a registration system where you can use the server allocation for your own company title.

  • Android - uses the Android device's UUID (Universally Unique Identifier) for authentication.

    • Mobile Info - this addon is required to obtain the mobile device's UUID.

  • iOS - uses the iOS device's UUID (Universally Unique Identifier) for authentication.

    • Mobile Info - this addon is required to obtain the mobile device's UUID.

  • Facebook - uses Facebook for authentication. This requires an access token to access the Facebook servers.

    • Mobile Facebook - this addon is required to use either the Android Facebook SDK or iOS Facebook SDK. This is where the authentication is implemented and then an Access Token is passed into the Authentication plugin.

    • Web Facebook - this addon is required to use the Web Facebook SDK. This is where the authentication is implemented and then an Access Token is manually passed into the Authentication plugin.

  • Google Plus - uses Google Plus for authentication. This requires a ServerAuthCode​ to access the Google servers.

    •  Mobile GooglePlus - this addon is required to use the Android Google Plus SDK or iOS Google Plus SDK. This is where the authentication is implemented and then a ServerAuthCode is manually passed into the Authentication plugin.

  • Cryptography - also knows as a Custom ID. This is a customized identification you can assign for each user as an authentication method. It is named cryptography because it goes without saying that if you want each account to be secure and unique, there should be a mathematical algorithm in this process, although it is optional, you can still just assign each user a number from 0, 1, 2, etc.. This gives you freedom on how you want to implement your authentication for your game.

The synced accounts of players can be seen in the players overview from the PlayFab Console. Through this you can manage players and also do testing.

For more sync methods to a platform you want to suggest, please visit the tracker

Authentication

The Authentication goes well hand in hand with the Sync Manager addon.

The Sync Manager addon allows the account to have additional login methods by syncing to other registration methods.

This is only the case when an account has already registered an account using one of the registration methods, hence already logged in, where account binding or unbinding can happen.
Therefore, to initially register an account, to login an account to be able to sync more login methods, the Authentication addon must be used.

For more information, read the tutorial.

That is the Introduction to Authentication & Sync.

Introduction

The Authentication with PlayFab is very convenient while versatile, having covered most leading platforms, namely Web,  Android, iOS, Desktop, Facebook, Instant Games, XBOX, PlayStation, Nintendo, etc. It brings enterprise-level features for your online games, specifically an account system authentication where the Authentication plugin delivers to both Construct 3 and Construct 2 professionally.

It supports both web and native implementation, with other additional tools in the collection for each platform. Hence, providing a suitable tool and ensuring the best performance.

The Authentication with PlayFab has one of the most important features you'll need in your games, especially online ones.

The Cloud Save stores the data of users in the cloud while syncing it through different authentication methods.

The Authentication with PlayFab has native support for almost all platforms. But in this particular discussion, I'll be discussing the implementation in mobile development.
But as previously mentioned, this is still applicable in almost all popular platforms as well.

As you can see at the images, there are these concepts called Switch Account and Bind Account
These can be translated to the plugins in the PlayFab Master Collection, which in order are the Authentication and Sync Manager plugins.

But before that, an explanation on the process of authentication and sync is necessary to make this easier to understand.

Initially, when an application connects to the PlayFab Module, an one-process account registration is necessary. There are many ways of doing this, and it is through the authentication methods, which previously mentioned are Company, Android, iOS, FacebookGoogle Plus and Cryptography.

You can choose any registration method for the users, but ideally, a non-user defined registration is better for games or any application in fact, where they are registered through a generated unique id or through the device id, and the users can just add more authentication methods in the future as they proceed, this is called account binding (refer to the image beside), which is implemented by the Sync Manager plugin.

Registering through generated ids are common with web applications using the custom id authentication or sync method. On mobile, the common way of registration for authentication is through the device id, which is the Android ID or iOS ID authentication.  

Although, you can still use your Company authentication using an email, username and password inputs or social logins like Facebook or GooglePlus for the initial registration, but it is without of doubt unusual.

It's of better experience for the users if the initial registration for an account is of no user intervention. Increasing the chances of users engaging in trying out an application.

Once registered, the user can add more login methods a.k.a. switch account methods by binding or syncing more authentication methods through the Sync Manager plugin.

The more authentication methods are bonded into a user account, the more the switch accounts a.k.a. authentication login alternatives are able to be made.

In conclusion, the Authentication and Sync Manager are plugins that make up the account system authentication of the PlayFab Master Collection. It works on almost all popular platforms, supports account binding sync and switching.

Ideally, a zero intervention initial registration of an account is ideal for the creation of an account user. For mobile, using the device id. And for the web, a custom id of which is ideally generated using cryptographic means. Although, it's not mandatory.

Account registration is done through the Authentication plugin. After initial registration, a user can add more authentication methods using the Sync Manager plugin. The more authentication methods added, the more account login methods a user can use to access the account using the Authentication plugin.

Actions, Conditions & Expressions

Actions

Device Bind :

  • Link Android Device - Links the Android device identifier to the user's PlayFab account.

  • UUID - The Android Device's Unique Device ID.

  • OS - The Android Device's Operating System.

  • Model - The Android Device's Model.

  • Force Link - If another user is already linked to the device, unlink the other user and re-link.

  • Link IOS Device - Links the vendor-specific iOS device identifier to the user's PlayFab account.

    • UUID - Vendor-specific iOS identifier for the user's device.

    • OS - Specific Operating System version for the user's device.

    • Model - Specific model of the user's device.

    • Force Link - If another user is already linked to the device, unlink the other user and re-link.

  • UnLink Android Device - Unlinks the related Android device identifier from the user's PlayFab account.

    • UUID - The Android Device's Unique Device ID.

  • UnLink IOS Device - Unlinks the related iOS device identifier from the user's PlayFab account.

    • UUID - Vendor-specific iOS identifier for the user's device.

  • UnLink Recent Android Device - Unlinks the related Android device identifier from the user's PlayFab account.

  • UnLink Recent IOS Device - Unlinks the related iOS device identifier from the user's PlayFab account.

Cryptographic Bind :

  • Link CustomID - Links the custom identifier, generated by the title, to the user's PlayFab account.

    • CustomID - Custom unique identifier for the user, generated by the title.

    • Force Link - If another user is already linked to the device, unlink the other user and re-link.

  • UnLink CustomID - Unlinks the related custom identifier from the user's PlayFab account.

    • CustomID - Custom unique identifier for the user, generated by the title.

  • UnLink Recent CustomID - Unlinks the related custom identifier from the user's PlayFab account.

 

 

Platform Bind :

  • Link Facebook Account - Links the Facebook account associated with the provided Facebook access token to the user's PlayFab account.

    • Access Token - Unique identifier from Facebook for the user.

    • Force Link - If another user is already linked to the device, unlink the other user and re-link.​

  • Link Google Account - Links the currently signed-in user account to their Google account, using their Google account credentials.

    • ServerAuthCode - Server authentication code obtained on the client by calling getServerAuthCode().

    • Force Link - If another user is already linked to the device, unlink the other user and re-link.

  • UnLink Facebook - Unlinks the related Facebook account from the user's PlayFab account.

  • UnLink Google - Unlinks the related Google account from the user's PlayFab account.

Conditions

Cryptographic Bind :

  • On CustomID Linked - Triggers when the Link Account to CustomID Succeeded.

  • On Identifier Already Claimed - Triggers when the Link Account to CustomID responded that the Linked Identifier is Already Claimed.

  • On CustomID Linking Error - Triggers when the Link Account to CustomID failed with an error.

Android Device Bind :

  • On Device Linked - Triggers when the Link Account to Android Device Succeeded.

  • On Device Already Linked - Triggers when the Link Account to Android Device responded that the Device is already linked.

  • On Linked Device Already Claimed - Triggers when the Link Account to Android Device responded that the Linked Device is Already Claimed.

  • On Device Linking Error - Triggers when the Link Account to Android Device failed with an error.


IOS Device Bind :

  • On Device Linked - Triggers when the Link Account to IOS Device Succeeded.

  • On Device Already Linked - Triggers when the Link Account to IOS Device responded that the Device is already linked.

  • On Linked Device Already Claimed - Triggers when the Link Account to IOS Device responded that the Linked Device is Already Claimed.

  • On Device Linking Error - Triggers when the Link Account to IOS Device failed with an error.


Facebook Bind :

  • On Facebook Linked - Triggers when the Link Account to Facebook Succeeded.

  • On Account Already Linked - Triggers when the Link Account to Facebook responded that the Account is already Linked.

  • On Linked Account Already Claimed - Triggers when the Link Account to Facebook responded that the Linked Account is Already Claimed.

  • On Facebook Linking Error - Triggers when the Link Account to Facebook failed with an error.


Google Bind :

  • On Google Linked - Triggers when the Link Account to Google Succeeded.

  • On Account Already Linked - Triggers when the Link Account to Google responded that the Account is already Linked.

  • On Linked Account Already Claimed - Triggers when the Link Account to Google responded that the Linked Account is Already Claimed.

  • On Google Linking Error - Triggers when the Link Account to Google failed with an error.


Android Device UnBind :

  • On Device UnLinked - Triggers when the UnLink Account from Android Device Succeeded.

  • On Account Not Linked - Triggers when the UnLink Account from Android Device responded that the Account is not linked.

  • On Device Not Linked - Triggers when the UnLink Account from Android Device responded that the Device is not linked.

  • On Device UnLinking Error - Triggers when the UnLink Account from Android Device failed with an error.


IOS Device UnBind :

  • On Device UnLinked - Triggers when the UnLink Account from IOS Device Succeeded.

  • On Account Not Linked - Triggers when the UnLink Account from IOS Device responded that the Account is not linked.

  • On Device Not Linked - Triggers when the UnLink Account from IOS Device responded that the Device is not linked.

  • On Device UnLinking Error - Triggers when the UnLink Account from IOS Device failed with an error.


Cryptographic UnBind :
On CustomID UnLinked - Triggers when the UnLink Account from CustomID Succeeded.
On Account Not Linked - Triggers when the UnLink Account from CustomID responded that the Account is not linked.
On CustomID Not Linked - Triggers when the UnLink Account from CustomID responded that the CustomID is not linked.
On CustomID UnLinking Error - Triggers when the UnLink Account from CustomID failed with an error.


Facebook UnBind :
On Facebook UnLinked - Triggers when the UnLink Account from the Facebook Account Succeeded.
On Facebook Account Not Linked - Triggers when the UnLink Account from the Facebook Account responded that the Account is not linked.
On Facebook UnLinking Error - Triggers when the UnLink Account from the Facebook Account failed with an error.


Google UnBind :
On Google UnLinked - Triggers when the UnLink Account from the Google Account Succeeded.
On Google Account Not Linked - Triggers when the UnLink Account from the Google Account responded that the Account is not linked.
On Google UnLinking Error - Triggers when the UnLink Account from the Google Account failed with an error.

Expressions

Server Response :

  • ServerResponse - Return the "Server Response" from every request from the PlayFab Server. The server response can also be shown in the "Chrome Developer Tools : Console", if in "debug mode".

Company  Authentication Sync

Sample Game Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Mobile Device Authentication Sync

Sample Game Project

Dependencies​:

  • Mobile Info - requirement for mobile.

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Custom ID Authentication Sync

Sample Game Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Facebook Authentication Sync

Sample Game Project

Dependencies​:

  • Mobile Facebook - requirement for mobile.

  • Web Facebook - requirement for web.

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Mobile  Implementation

Web Implementation

Google Plus Authentication Sync

Sample Game Project

Dependencies​:

  • Mobile GooglePlus - requirement for mobile.

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Game Project

Sample Setup Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Supporters

Only

Supporters

Only

Supporters

Only

The PlayFab Master Collection provides different ways from quick authentication to strict authentication. Although, in an ideal game design, it's important for players not be forced into authentication, even if it's through Facebook or Google Plus, and most especially must not be forced into authenticating via email address or username and password, also called your Company authentication.

It is crucial that from the moment your game is launched, everything is running smooth and nothing preventing the user from access like authentication. You want to give a great first impression, which will determine whether the player keeps playing or uninstalls your game. 
That's why it's recommended that you register an account initially through a quick authentication, that is Login with Custom ID for web and Login with Android Device or Login with iOS for mobile.

Platform Feature Tips

 
 
 
 
 
 

Get the tools

for your pro games!

Constuct Master Collection - Itch.io
Constuct Master Collection - Discord
Constuct Master Collection - Construct 3

© Construct Master Collection 2020 • All rights reserved

Contact Information: