Intégrer les services de jeux Play à une solution d'identité

Cette page explique comment intégrer la connexion des services de jeux Play à votre solution d'identité ou d'enregistrement dans le cloud. Bien que ces recommandations soient facultatives, elles peuvent vous aider à remplir les exigences d'enregistrement dans le cloud de Google Play Jeux sur PC. Consultez les pages qui traitent des exigences de continuité et des comportements attendus pour vérifier que votre implémentation répond à ces exigences.

Restaurer l'état du joueur

Dans le backend de votre jeu, les comptes de jeu sont probablement représentés par un identifiant qui vous permet d'extraire et de mettre à jour la progression qui y est associée. Nous désignerons cet identifiant sous le nom d'ID de compte. Lorsqu'un joueur se connecte aux services de jeux Play, vous pouvez utiliser cette authentification pour obtenir un nouvel identifiant, l'ID de joueur des services de jeux Play, qui permet de remplir l'exigence d'enregistrement dans le cloud.

Workflow multi-identifiant des services de jeux Play

Lorsqu'un joueur se connecte aux services de jeux Play, procédez comme suit :

  1. Récupérez le code OAuth du client, puis envoyez-le à votre serveur.
  2. Échangez le jeton d'authentification et obtenez un ID des services de jeux Play validé de la part du serveur Play Jeux. Cela garantit que l'ID est fiable et qu'il ne s'agit pas d'une personne qui se fait passer pour un autre joueur en utilisant un appareil compromis.
  3. Essayez de résoudre les problèmes liés aux comptes de jeu en fonction de l'état de l'appareil et des éventuels identifiants liés.

Deux nouveaux scénarios doivent être introduits dans votre jeu :

  • Stocker les ID des services de jeux Play sur votre backend et les attribuer aux ID de compte existants d'une manière ou d'une autre, par exemple :
    • Pour les nouveaux joueurs, la progression doit être automatiquement liée aux services de jeux Play à un moment donné (par exemple, au lancement du jeu, après le tutoriel, après un certain nombre de niveaux, etc.).
    • Pour les joueurs existants, la progression doit être automatiquement liée aux services de jeux Play une fois que le joueur a effectué la mise à jour vers une version de votre jeu intégrant la version 2 des services de jeux Play.
    • L'ID des services de jeux Play peut être lié à un ou plusieurs comptes, et les services de jeux Play peuvent être dissociés de ces comptes, mais ils doivent être liés à au moins un compte valide.
  • Restauration automatique de la progression sur un appareil déconnecté/nouveau en fonction de l'ID de joueur des services de jeux Play.

La manière dont vous stockez et attribuez les ID des services de jeux Play aux comptes existants est flexible, comme le montrent les exemples ci-dessous. Les principales exigences à garder à l'esprit sont que le joueur ne doit pas avoir à se connecter manuellement ni à créer un lien avec un autre système d'identité pour établir un lien entre son ID des services de jeux Play et la progression, et que la progression du joueur doit être restaurée de manière transparente d'une plate-forme à l'autre.

Lors de la conception de votre solution, commencez par examiner votre système existant et la manière dont il intègre les différents fournisseurs d'identité. Certains systèmes utilisent un seul identifiant par compte, tandis que d'autres en utilisent plusieurs.

Si vous ne pouvez associer qu'un seul identifiant à chaque ID de compte, vous devrez ajouter une assistance pour y associer les services de jeux Play. Pour ce faire, reportez-vous aux solutions suivantes.

Exemples de solutions

Les exemples incluent des solutions de liaison et de rappel.

La liaison est le processus consistant à lier de manière permanente ou semi-permanente l'ID des services de jeux Play à un état de compte. Lors d'une liaison, le compte sous-jacent restauré via les services de jeux Play ne change pas pour le joueur sans intervention de sa part, même s'il se déconnecte et se connecte avec un autre compte dans votre jeu. Ce point est ici abordé par le biais de la liaison de compte.

Flux de liaison forte

Lors d'un rappel, en tant que développeur de jeu, vous stockez une correspondance libre entre l'ID des services de jeux Play et les derniers comptes vus pour restaurer la progression du joueur lorsqu'il se connecte aux services de jeux Play sur un autre appareil. Chaque fois que le joueur se connecte à un autre compte de jeu avec le même ID des services de jeux Play, cette liaison change. Voici un exemple d'organigramme, que nous étudierons plus en détail dans l'exemple de rappel de comptes récents ci-dessous :

Flux de rappel Organigramme de rappel

Vous trouverez d'autres exemples de flux d'utilisateurs dans les solutions ci-dessous.

Liaison de compte

Si les joueurs qui possèdent plusieurs comptes sont peu nombreux ou si vous souhaitez encourager les joueurs à n'avoir qu'un seul compte, la liaison est probablement la meilleure solution pour votre jeu. Dans cet exemple, vous liez le premier compte vu après la connexion aux services de jeux Play (qu'il s'agisse d'un compte invité ou d'un compte lié à une autre plate-forme d'identité) à l'ID de joueur des services de jeux Play. Après cette liaison, le compte lié sera automatiquement restauré sur les nouveaux appareils. Comme nous avons recours à une liaison forte, le joueur peut également changer de profil Services de jeux Play pour changer de compte dans le jeu. Dans ce scénario, vous pouvez demander une confirmation au joueur.

Workflow de résolution des problèmes de compte des services de jeux Play

En cas de conflits entre les comptes, nous vous recommandons d'inviter le joueur à choisir un compte. Ces conflits ne concernent généralement que les joueurs qui possèdent plusieurs comptes dans votre jeu, et qui ont donc probablement les capacités et l'envie de jouer avec un compte particulier.

Une fois le problème de compte résolu, le jeu doit se souvenir du choix du joueur, sauf en cas de modification des identifiants de connexion. Si le profil Services de jeux Play est modifié ou si le joueur se connecte à un autre identifiant dans le jeu, les étapes ci-dessus doivent être répétées, car le joueur a clairement indiqué qu'il souhaitait changer de compte.

Annuler une liaison

Si vous souhaitez offrir au joueur un contrôle total sur ses liaisons, vous pouvez lui permettre d'annuler la liaison entre son ID de joueur des services de jeux Play et un compte de jeu. Cela peut intéresser les joueurs qui possèdent plusieurs comptes et qui ont accidentellement lié leur ID de joueur des services de jeux Play à un compte qui n'est pas leur compte principal.

Autres exemples de liaison de comptes

Flux de liaison forte

Cet exemple montre qu'un ID de joueur des services de jeux Play (1) est lié au premier compte de jeu vu (A) et qu'aucune nouvelle liaison de celui-ci n'est effectuée lorsque le joueur se déconnecte de sa progression pour jouer avec un autre compte.

Vous pouvez autoriser les joueurs à lier à nouveau leur compte, mais ce n'est pas obligatoire.

Changer de compte sur l'appareil

Flux de changement de compte avec liaison forte

Ici, le joueur a changé manuellement de compte de services de jeux Play et a donc clairement indiqué au jeu qu'il souhaitait changer de compte. À travers ce changement, le joueur souhaite provoquer une réaction. La prise en compte de ce signal permet d'améliorer l'expérience du joueur.

Compte lié existant avec un autre identifiant

Flux de compte existant avec liaison forte

Cet exemple montre que même les comptes liés à des identifiants autres que des identifiants des services de jeux Play doivent être liés aux services de jeux Play, puis restaurés sur de nouveaux appareils. La plupart des détenteurs de compte de votre jeu entreront dans cette catégorie.

Rappeler les comptes récents

Lorsque l'on réfléchit à des solutions, l'expérience multicompte revient souvent. Si votre jeu incite les utilisateurs expérimentés à créer plusieurs comptes (par exemple, les jeux gacha ou les jeux de type "choisissez votre propre aventure"), la liaison de l'ID de joueur des services de jeux Play à un seul compte peut ne pas offrir la meilleure expérience aux joueurs lorsqu'ils passent d'un appareil à l'autre.

Lors d'un rappel, vous stockez une correspondance libre entre un ID de joueur des services de jeux Play et un compte de jeu, et lorsque le joueur change d'appareil ou se déconnecte, il ne voit que les derniers comptes que vous avez stockés.

Organigramme de rappel

Dans cet exemple, un joueur possède trois comptes pour un même jeu, puis passe à un nouvel appareil :

Flux de rappel 2

Lorsque vous invitez le joueur à restaurer son compte, vous pouvez également lui proposer un bouton "Annuler" ou "Créer" pour qu'il puisse créer un nouveau compte.

Par souci de simplicité, votre jeu peut choisir de ne rappeler que le dernier compte vu. Cette approche peut s'avérer plus complexe en cas de changement entre plusieurs comptes, mais elle répond néanmoins à l'exigence de continuité.

Autres exemples de rappel

La section suivante inclut d'autres exemples utilisant le rappel.

Téléphones autres qu'Android

Flux de rappel pour des appareils autres qu'Android

Vous trouverez ci-dessous un exemple de rappel de comptes existants (liés à un compte tiers) ou qui ont été créés à partir d'un autre appareil non connecté aux services de jeux Play.

Un parcours plus courant peut consister à commencer à partir d'un téléphone non Android et à passer à Google Play Jeux sur PC.

Flux de rappel pour des appareils autres qu'Android 2

Étant donné que le téléphone non Android ne dispose pas des services de jeux Play, aucun rappel n'est actif, et le joueur doit saisir manuellement ses identifiants à partir de Google Play Jeux sur PC.

Plusieurs profils Services de jeux Play pour un même compte

Il peut arriver que plusieurs profils Services de jeux Play actifs aient déjà "rappelé" un compte donné. Dans ce cas, il existe deux solutions qui fonctionnent aussi bien l'une que l'autre :

Enregistrer quand même Flux de rappel d'enregistrement de plusieurs profils Dans le modèle "Enregistrer quand même", nous ignorons les pointeurs en double vers un compte donné.

Remplacer Flux de rappel de remplacement de plusieurs profils Dans le modèle "Remplacer", le développeur doit se souvenir des mappages des services de jeux Play avec le compte, et effacer les anciens mappages de ses tables dans ce modèle. Il peut ainsi bénéficier d'une correspondance 1:1 propre entre les comptes rappelés et les comptes des services de jeux Play.

Rappel sur le même appareil Flux de rappel du même appareil Un joueur multicompte peut également utiliser votre implémentation du rappel pour passer rapidement d'un compte de jeu à un autre.