Les données de groupe partagées ont été conçues à l’origine pour être pilotées par le serveur faisant autorité dans la plupart des cas, et le conseil précédent était de ne pas ajouter les joueurs directement aux données de groupe partagées, car cela leur donnait des autorisations de lecture et d’écriture (ce qui permettait la tricherie). Cependant, notre nouvelle stratégie d’accès aux API permet une bien plus grande variété de fonctionnalités et de sécurité par rapport à la conception d’origine. Plus de détails sont disponibles dans la section avancée de ce document.
Exemple : jeux multijoueurs asynchrones au tour par tour
Le cas d’utilisation original, et toujours le meilleur, des données de groupe partagées consiste à stocker l’état d’un jeu de société en ligne. Les joueurs modifient les données à tour de rôle au moyen de CloudScript, selon un ordre de tour clair. Les joueurs peuvent se déconnecter et reprendre la partie plus tard, leur état de jeu étant stocké dans le nuage. L’exemple CloudScript suivant illustre la structure au tour par tour de n’importe quel jeu de société courant. Le jeu de société lui-même est représenté par du pseudo-code.Hypothèses
Les données de groupe partagées qui représentent la partie ont déjà été démarrées, et leurs membres sont déjà définis.Restrictions principales
- Données de groupe partagées :
- Elles contiennent uniquement des données simples de paires clé/valeur (chaînes). Pour toute utilisation comme un autre type de données (comme des objets d’inventaire, des statistiques, de la monnaie virtuelle, etc.), le titre doit fournir les conversions nécessaires.
- Elles ne sont ni partitionnées ni mises en cache, elles ne seront donc pas réactives lorsqu’elles sont consultées simultanément par plusieurs joueurs. Les fonctionnalités qui les utilisent doivent être conçues pour de petits groupes de joueurs et ne pas permettre d’écritures simultanées.
