Skip to main content
Dans ce tutoriel, nous allons apprendre à utiliser des entités de groupe dans un classement. Pour comprendre ce concept, nous allons commencer par l’exemple d’un jeu « RPG » axé sur la terraformation de planètes. En tant que joueur, vous devez construire et développer des structures sur chaque planète, recueillir des ressources, créer vos propres vaisseaux et aussi mettre en place des défenses, car d’autres joueurs pourraient vous attaquer pour voler vos biens. Un aspect clé de ce jeu est que les joueurs peuvent former des alliances dans le but de créer une équipe et d’attaquer d’autres joueurs en groupe. Dans ce contexte, nous voulons créer un classement pour les alliances, afin de savoir quelle est l’alliance la plus forte de tout l’univers. Quelques aspects clés à garder en tête avant d’approfondir le fonctionnement des classements de groupe :

Création d’un classement

Selon le jeu et le type de scénarios que vous aurez, vous créerez probablement plusieurs classements. Dans ce contexte particulier, nous voulons montrer deux scénarios différents pour ce jeu et comment utiliser le service pour répondre à chacun d’eux.

Classements de joueurs

Dans cet exemple, des joueurs terraforment des planètes et gagnent des points d’expérience en effectuant certaines actions dans le jeu. Nous allons donc avoir un classement pour suivre cette expérience au niveau du joueur. Ce processus suit le même comportement que celui présenté dans d’autres tutoriels comme Créer un classement de base. L’aspect clé ici est que le paramètre EntityType doit être "title_player_account" afin que le classement soit réservé aux joueurs.

Classements de groupe

Passons maintenant à l’aspect du jeu présenté dans l’exemple : les alliances. Nous pouvons créer des alliances dans PlayFab à l’aide de l’entité "group". Cette entité de groupe nous offre une structure que les joueurs peuvent rejoindre; elle comporte aussi des rôles et d’autres fonctionnalités intéressantes qui favorisent ce type de scénarios dans les jeux. Pour la création du classement, deux éléments doivent être clairs.
  • Le paramètre EntityType doit être "group".
  • Ce classement est indépendant. L’ajout d’un score pour une alliance est donc un processus manuel distinct du classement des joueurs. Ce comportement permet de relier les scores aux joueurs de différentes façons, ou il peut s’agir d’une nouvelle mesure applicable uniquement aux groupes.

Ajout de données au classement

Après avoir créé les deux classements, nous devons voir comment y ajouter des données. Comme mentionné dans l’exemple précédent, ces classements sont indépendants l’un de l’autre, ce qui permet au développeur d’appliquer une logique personnalisée sur le fonctionnement des scores pour les alliances (groupes).
Le code pour ajouter des entrées au classement des joueurs ou au classement de groupe est le même dans ce scénario. Mais ce n’est pas toujours le cas, car nous pourrions avoir un classement à cinq colonnes pour les joueurs, puis un autre classement pour les groupes avec une seule colonne. Nous décrivons plus en détail les classements à plusieurs colonnes dans ce tutoriel : Aller plus loin avec les classements. Gardez toujours à l’esprit que vous devez fournir le bon EntityId au service. Si vous avez un classement de joueurs, les entités sont "title_player_account"; si le classement est composé de groupes, vous devez fournir des entités de type "group.

Récupérer les données du classement

Pour obtenir les données du classement, nous disposons de toutes les options décrites ici Aller plus loin avec les classements, à l’exception de l’API GetFriendLeaderboard.

Nom d’affichage pour les classements de groupe

Enfin, un autre détail que nous pouvons gérer avec les classements de groupe est de définir le nom d’affichage avec le nom de groupe de l’entité. Ainsi, si vous avez une alliance appelée « Raiders », ce nom de groupe sera associé à l’entité au moyen de la propriété DisplayName.
Dans cet exemple, nous créons un groupe en appelant la méthode CreateGroupAsync. La première étape de cette exécution consiste à retourner l’objet Group, que nous allons utiliser pour définir le nom d’affichage. Pour ce faire, nous associons le nom du groupe à l’entité à l’aide de l’objet SetDisplayNameRequest, puis nous exécutons la méthode PlayFabProfilesAPI.SetDisplayNameAsync.

Conclusions

Dans ce tutoriel, nous avons appris à effectuer les opérations suivantes :
  • Créer un classement de groupe.
  • Alimenter ce classement en données.
  • Récupérer le classement.
  • Modifier le displayName pour qu’il affiche le nom du groupe.

Voir aussi

Last modified on October 6, 2026