Skip to main content
Supposons que vous ayez besoin de guildes, de clans, de corporations, de compagnies, de tribus, ou de tout autre nom que votre jeu leur donne : PlayFab peut répondre à votre besoin de regroupement durable de joueurs à l’aide du modèle de programmation d’entités. L’entité de groupe peut être utilisée pour stocker des collections d’autres entités, y compris des joueurs ou des personnages, qui peuvent servir à de nombreuses fins dans votre jeu.

Exemples

  • Clans/Guildes - Les groupes d’entités peuvent être utilisés pour décrire un ensemble de joueurs qui jouent régulièrement ensemble, quel que soit le lien social qui les unit sur le long terme.
  • Groupes - Les groupes d’entités peuvent être utilisés pour des groupes à court terme créés afin de permettre à des joueurs individuels d’atteindre un objectif immédiat, puis facilement dissous par la suite.
  • Canaux de conversation - Des canaux de conversation à court ou à long terme peuvent être définis en tant que groupe d’entités.
  • Abonnement à des informations dans le jeu - Votre jeu contient-il un objet légendaire unique ? Les joueurs veulent-ils des mises à jour constantes sur ce qui arrive à cet objet ? Créez un groupe d’entités centré sur cet objet, dont les membres sont toutes les entités de joueurs intéressées par l’objet.
En bref, les groupes d’entités peuvent être n’importe quelle collection d’entités (contrôlées par un PNJ ou par un joueur, réelles ou abstraites) qui nécessite un état persistant lié à ce groupe. De plus, comme les groupes d’entités sont eux-mêmes des entités, ils contiennent toutes les fonctionnalités initiales des entités :
  • Données d’objet
  • Données de fichier
  • Profils
Les groupes ont une limite par défaut de 1000 membres par groupe et ne prennent en charge que les joueurs et les personnages en tant que membres

Utilisation des groupes d’entités

Lors de la création d’un groupe, la première entité ajoutée au groupe reçoit un rôle d’administrateur (par souci de simplicité, ce guide désigne cette entité comme le propriétaire). Le propriétaire peut ensuite inviter de nouveaux membres, créer de nouveaux rôles avec une grande variété d’autorisations personnalisables, modifier les rôles des membres, exclure des membres, etc. En outre, les mêmes fonctions d’entité qui existent pour les entités fonctionnent également pour les groupes : vous pouvez donc enregistrer des objets JSON et des fichiers directement dans le groupe pour stocker des données arbitraires propres au jeu. L’exemple de code fourni ci-dessous devrait vous donner une longueur d’avance sur les interactions de base avec les guildes. Il vous permet de créer des groupes, d’ajouter et de supprimer des membres, et de supprimer le groupe. Il s’agit d’un point de départ, et il ne présente aucun des rôles ou autorisations.

Analyse de l’exemple

Cet exemple est conçu comme un contrôleur, qui enregistre un minimum de données dans un cache local (PlayFab étant la couche de données faisant autorité), et fournit un moyen d’effectuer des opérations CRUD sur les groupes. Examinons quelques-unes des fonctions de l’exemple fourni :
  • OnSharedError - Il s’agit d’un modèle typique des exemples PlayFab. Le moyen le plus simple de gérer une erreur consiste à la signaler. Votre client de jeu disposera probablement d’une logique de gestion des erreurs beaucoup plus sophistiquée.
  • ListMembership - Appelle ListMembership pour déterminer tous les groupes auxquels appartient l’entité donnée. Les joueurs veulent connaître les groupes qu’ils ont déjà rejoints.
  • CreateGroup/DeleteGroup - Ces fonctions sont pour la plupart explicites. Cet exemple montre la mise à jour du cache local d’informations de groupe lorsque ces appels sont exécutés avec succès.
  • InviteToGroup/ApplyToGroup - Rejoindre un groupe est un processus en deux étapes, qui peut être déclenché dans les deux sens :
    • Un joueur peut demander à rejoindre un groupe.
    • Un groupe peut inviter un joueur.
  • AcceptGroupInvitation/AcceptGroupApplication - La deuxième étape du processus d’adhésion. L’entité qui répond accepte l’invitation, ce qui achève le processus faisant du joueur un membre du groupe.
  • RemoveMembers - Les membres qui en ont l’autorité (définie par les autorisations de leur rôle) peuvent exclure des membres d’un groupe.

Serveur ou client

Comme pour toutes les nouvelles méthodes d’API d’entité, il n’y a aucune distinction entre l’API serveur et l’API client. L’action est effectuée par l’appelant, selon la manière dont le processus a été authentifié. Un client est identifié comme tel et appelle ces méthodes en tant qu’entité de joueur de titre ; ses rôles et autorisations au sein du groupe sont évalués à chaque appel, afin de garantir qu’il est autorisé à effectuer cette action. Un serveur est authentifié avec la même developerSecretKey, qui identifie ce processus comme une entité de titre. Un titre contourne les vérifications de rôle, et les appels d’API exécutés par un titre n’échouent que si l’action est impossible à effectuer, par exemple si une entité ne peut pas être supprimée parce qu’elle n’est pas membre.

Voir aussi

Pour stocker des données pour vos groupes, guildes ou clans :
Last modified on October 6, 2026