Les joueurs jouent sur plusieurs appareils et installent un jeu plusieurs fois sur le même appareil. Par conséquent, ils doivent toujours reprendre leur partie là où ils l'avaient laissée. Pour ce faire, vous devez implémenter une solution d'enregistrement dans le cloud dans votre jeu.
Enregistrement dans le cloud
Enregistrez l'état du jeu de votre joueur dans le cloud. Récupérez-le lorsqu'il démarre le jeu. Les services Play Games Jeux enregistrés fournissent un service à cet effet, mais vous pouvez utiliser la solution d'enregistrement dans le cloud de votre choix.
Résolution des conflits pour plusieurs états de jeu
Si un utilisateur possède plusieurs comptes ou s'il existe un conflit entre les données de jeu enregistrées sur son appareil et dans le cloud, vous avez besoin d'une stratégie de résolution des conflits. En règle générale, l'utilisateur décide comment résoudre ces conflits. Votre stratégie de résolution des conflits doit aborder les scénarios clés suivants :
- Plusieurs comptes par utilisateur : gérez les cas où un seul utilisateur interagit avec l'application à l'aide de différents comptes.
- Conflits d'état : résolvez les différences entre l'état du jeu local et l'état du jeu enregistré dans le cloud.
Compte invité
Lorsqu'un joueur disposant d'un compte invité se connecte et associe un ID de joueur à une progression existante enregistrée dans le cloud, votre jeu peut écraser accidentellement des données historiques importantes. Si un joueur dispose d'un compte invité local avec une progression importante et d'une sauvegarde dans le cloud du dernier compte de jeu utilisé associé aux services Play Games, votre jeu ne doit pas écraser automatiquement les données locales. Au lieu de cela, invitez le joueur à choisir entre les deux états.
Compte tenu de cela, deux options s'offrent à vous :
- Option 1 : conservez le flux actuel dans lequel la progression dans le cloud est restaurée. Un message d'avertissement s'affiche pour indiquer qu'un compte existant a été détecté et que sa progression sera utilisée.
- Option 2 (recommandée) : affichez un message informant le joueur qu'un compte existant avec une progression a été détecté. L'association du compte invité remplace la progression dans le cloud par la progression actuelle de l'invité. Le message s'affiche pour la progression locale et celle enregistrée dans le cloud afin que le joueur puisse prendre une décision éclairée.
Jeux enregistrés
Le service Jeux enregistrés offre un moyen pratique d'enregistrer la progression des joueurs dans les jeux de Google. Votre jeu peut récupérer les données de jeu enregistrées pour permettre aux joueurs de reprendre une partie au dernier point d'enregistrement depuis n'importe quel appareil.
Ce service offre plusieurs avantages clés pour les joueurs et les développeurs :
- Synchronisation des données de jeu sur plusieurs appareils Par exemple, un joueur peut commencer une partie sur un téléphone Android et continuer à jouer sur une tablette sans perdre sa progression.
- Garantie de la persistance des données Les joueurs peuvent reprendre leur partie même si leur appareil est perdu, détruit ou échangé contre un modèle plus récent.
Pour découvrir comment implémenter ce service dans votre plate-forme, consultez la page Implémentations client.
Principes de base des jeux enregistrés
Un jeu enregistré se compose de deux parties :
- Blob binaire non structuré : ces données peuvent représenter les informations de votre choix et votre jeu effectue l'analyse et de l'écriture de données.
- Métadonnées structurées : propriétés supplémentaires associées aux données binaires qui permettent aux services Google Play Games de présenter visuellement des Jeux enregistrés dans la liste par défaut de l'interface utilisateur (UI), ainsi que de présenter des informations utiles dans l' application Google Play Jeux (par exemple, le dernier code temporel actualisé).
Chaque jeu peut enregistrer un nombre variable de jeux pour chaque joueur, sous réserve de respecter les restrictions de taille de fichier . Il n'est donc pas nécessaire de limiter les joueurs à un seul fichier de sauvegarde.
Résolution de conflit
Lorsque vous utilisez le service Jeux enregistrés, votre jeu peut rencontrer des conflits au moment d'enregistrer des données. Cela peut arriver quand un utilisateur exécute plusieurs instances de votre application sur différents appareils ou ordinateurs. Votre application doit être en mesure de résoudre ces conflits de manière à offrir la meilleure expérience utilisateur possible.
La plupart des conflits de données ont lieu lorsqu'une instance de votre application ne parvient pas à accéder au service de jeux enregistrés lors de la tentative de chargement ou d'enregistrement des données. En général, le meilleur moyen d'éviter les conflits de données consiste à charger les dernières données du service au démarrage ou à la reprise de votre application. Il est également conseillé d'enregistrer les données dans le service à une fréquence raisonnable. Cependant, il n'est pas toujours possible d'éviter les conflits de données. Votre application doit s'efforcer de les gérer de manière à préserver les données de vos utilisateurs et à assurer la qualité de leur expérience.
Images de couverture
Le service Jeux enregistrés offre une expérience utilisateur visuelle en plus de ces fonctionnalités de persistance. Nous vous conseillons vivement d'associer des images représentatives aux différents fichiers d'enregistrement. Si vous utilisez l'interface utilisateur de la liste de jeux enregistrés par défaut fournie par le SDK Play Jeux dans votre jeu, cette interface affichera ces images de couverture. Les images de couverture peuvent également s'afficher dans l'application Google Play Jeux.
Descriptions
Vous pouvez fournir une brève description du contenu d'un jeu enregistré spécifique. Cette description s'affiche directement pour les joueurs et doit résumer l'état que représente le jeu enregistré, par exemple "Combattre les gobelins dans les bois sombres".
Taille maximale
Les données de jeu enregistrées dans Google Cloud ne vous sont pas facturées, mais chaque fichier de jeu enregistré a une taille maximale de 3 Mo.
Fonctionnement hors connexion
Votre jeu peut toujours lire et écrire dans un jeu enregistré lorsque l'appareil du joueur est hors connexion, mais ne pourra pas se synchroniser avec les services Google Play Games tant que la connectivité réseau ne sera pas établie. Une fois reconnectés, les services Google Play Games mettent à jour de manière asynchrone les données de jeu enregistrées sur les serveurs de Google.
Limites
Les services Google Play Games appliquent des limites de taille sur les données binaires (3 Mo) et l'image de couverture (800 Ko).
Métadonnées des jeux enregistrés
Les métadonnées structurées d'un jeu enregistré contiennent les propriétés suivantes :
| Propriété | Description |
|---|---|
| Identifiant | Chaîne unique générée par les services de jeux Google Play pour ce jeu enregistré. Utilisez cet identifiant pour faire référence au jeu enregistré dans vos clients dédiés. |
| Nom | Nom court fourni par le développeur pour le jeu enregistré, par exemple "Sauvegarde 1" ou "Nomdujoueur_sauvegarde1". Les joueurs ne le verront pas. |
| Description | Description du jeu enregistré fournie par le développeur. |
| Dernière modification | Code temporel en millisecondes généré par les services de jeux Google Play pour indiquer la date de la dernière actualisation du jeu enregistré. |
| Temps de jeu | Durée (en millisecondes) fournie par le développeur pour s'afficher avec le jeu enregistré. Cette valeur doit représenter le temps passé sur le jeu jusqu'à l'instant où l'enregistrement a été créé. Par exemple, une durée de jeu d'une valeur de 3 600 000 sera affichée par les services Google Play Games sous la forme "1 h". |
| Image de couverture | Il s'agit d'une propriété facultative à fournir par le développeur contenant des informations sur l'image de couverture. |
Implémentations client
Pour découvrir comment implémenter ce service dans votre plate-forme, consultez les ressources suivantes :