Skip to main content
Ce didacticiel vous guide à travers les étapes nécessaires pour créer une tâche qui effectue une ou plusieurs actions sur chaque joueur d’un segment. Les tâches sont un élément essentiel des opérations en direct de tout jeu. Elles vous offrent un ensemble d’outils puissants pour interagir avec vos joueurs. Voici quelques exemples :
  • Offrir un cadeau spécial du Nouvel An à tous les joueurs qui se sont connectés au cours des 2 dernières semaines.
  • Récompenser les joueurs qui ont dépensé de l’argent au cours de la dernière semaine (en fonction de paliers de dépenses), le cadeau étant d’autant plus précieux qu’ils ont dépensé davantage.
  • Corriger l’état corrompu des joueurs pour tous les joueurs affectés par un bogue récent du jeu.
Dans ce didacticiel, basé sur notre exemple d’application Unicorn Battle, nous allons accorder un cadeau spécial à tous les joueurs ayant plus de 2 725 XP.

Prérequis

Vous devez installer l’exemple d’application Unicorn Battle pour suivre ce didacticiel. Vous pouvez en savoir plus sur notre blog ou accéder directement au dépôt GitHub et suivre les instructions qui s’y trouvent. Unicorn Battle - Écran de lancement Vous devrez jouer plusieurs combats afin de faire monter votre personnage au moins au niveau 2, que vous atteignez à 2 725 points d’XP. Unicorn Battle - Niveau 2

Étape 1 - Créer le segment

La première étape consiste à créer le segment qui définit le groupe de joueurs concernés par cette action. Dans ce cas, nous devons créer le segment High XP, défini comme tous les joueurs ayant plus de 2 725 XP :
  • Sélectionnez PlayStream dans le menu de gauche.
  • Choisissez l’onglet Segments.
  • Sélectionnez ensuite le bouton New Segment.
  • Définissez le Segment Name sur High XP Players.
  • Définissez-le comme Player, où la Statistic Value nommée Total_XP Gained est supérieure à 2725.
REMARQUE : le système actuel de tâches planifiées peut traiter 10 à 15 tâches par seconde et par segment. Lorsque vous concevez vos segments, anticipez leur taille et la durée d’exécution de la tâche. Il n’existe aucune limite de durée d’exécution d’une tâche, mais si la tâche doit être exécutée dans un délai précis, le segment doit être correctement dimensionné.
Game Manager - PlayStream - Segments - High XP Players

Étape 2 - Créer une tâche pour ce segment

  • Sélectionnez l’onglet Segments.
  • Sélectionnez ensuite RUN TASK …
Game Manager - PlayStream - Segments - Run Task Vous accédez alors à la vue Create Task de l’onglet Servers->Tasks, et divers champs sont pré-remplis en fonction du segment sélectionné. Game Manager - Servers - Task - Create Task

Étape 3 - Ajouter des actions à la tâche

Vous pouvez ensuite terminer la configuration de la tâche.
  • Remplacez le nom par Reward High XP Players
  • Ajoutez cette description : Give a gift to Players who are level 2 or higher.
  • Sélectionnez ADD ACTION
    • Tapez Grant virtual currency dans le champ prévu à cet effet.
    • Code de Virtual Currency : GM (abréviation de Gems).
    • Montant : 20
  • Laissez la planification sur Manually pour l’instant.
  • Sélectionnez le bouton SAVE AND RUN pour exécuter la tâche.
Game Manager - Servers - Task - Add Action - Save and Run

Étape 4 - Surveiller votre tâche

La vue Tasks affiche votre tâche en cours d’exécution. Au départ, l’état de la tâche est InProgress, mais il passe rapidement à Succeeded, car le segment est petit. Game Manager - Servers - Tasks - Task Succeeded Examinons maintenant le détail de l’exécution de la tâche. Sélectionnez la tâche terminée dans la liste des Tasks précédemment exécutées. Vous verrez des informations importantes, telles que :
  • Le nombre de joueurs traités.
  • L’heure de démarrage de la tâche.
  • La durée nécessaire à son exécution.
  • Les paramètres dont elle disposait lors de son lancement.
  • La personne qui l’a exécutée.
  • Si elle a été planifiée manuellement, etc.
Si la tâche est toujours en cours, vous pouvez consulter la vue Task Instance Detail pour connaître sa progression et voir le temps restant estimé. Game Manager - Servers - Tasks - Task Instance Details Pour vérifier que la tâche s’est exécutée correctement :
  • Accédez à l’onglet Players.
  • Sélectionnez votre Player.
  • Choisissez ensuite l’onglet Event History.
  • L’événement le plus récent de la liste doit être un player_virtual_currency_balance_changed, qui doit montrer une augmentation de 20 gemmes pour votre Player.
Vous pouvez développer cet événement pour en voir les détails.
Game Manager - Event History - Event Detail

Étapes suivantes

Ce didacticiel vous a présenté les étapes nécessaires pour effectuer une action pour chaque joueur d’un segment, mais vous pouvez faire bien plus avec les tâches. Voici quelques idées d’autres choses à essayer…

Planifier vos tâches

Vous n’avez pas besoin d’exécuter les tâches manuellement : vous pouvez planifier une tâche pour qu’elle s’exécute automatiquement de manière récurrente. Par exemple, vous pouvez créer un segment de tous les joueurs ayant joué au jeu au cours des dernières 24 heures, puis exécuter une tâche planifiée chaque jour pour accorder à ces joueurs un bonus d’XP. Game Manager - PlayStream - Segments - Players in 24 hours Game Manager - Servers - Tasks - Scheduled Task

Exécuter CloudScript pour chaque joueur

L’utilisation la plus puissante des actions en bloc consiste à exécuter une fonction CloudScript arbitraire pour chaque joueur. Ce CloudScript peut faire tout ce que l’API serveur PlayFab permet : accorder des objets et de la monnaie, inspecter et modifier les données des joueurs, etc. Par exemple, imaginez que vous disposiez d’un classement d’événement qui se réinitialise chaque semaine, et que vous souhaitiez parcourir tous les joueurs et leur accorder une récompense basée sur la valeur du dernier événement avant la réinitialisation. L’exemple ci-dessous utilise Unicorn Battle.
  1. Créez une nouvelle statistique Event_QuestsCompleted, qui se réinitialise chaque semaine et utilise la méthode d’agrégation Last. Players - Leaderboards - Edit Leaderboard
  2. Créez une nouvelle action PlayStream qui incrémente cette statistique Event_QuestsCompleted chaque fois que Total_QuestsCompleted est modifiée. PlayStream - Event Actions - Edit Event Action
  3. Écrivez une fonction CloudScript destinée à être appelée par une tâche d’action en bloc, qui parcourra les joueurs et accordera des récompenses en fonction de la dernière valeur.
  1. Définissez la nouvelle version de CloudScript sur Live, puis créez une nouvelle tâche qui appelle la fonction GiveTieredReward pour tous les joueurs. N’oubliez pas d’enregistrer (Save) et d’exécuter (Run) la tâche. Servers - Tasks - New Scheduled Task
  2. Vous devriez voir apparaître les événements de cette tâche dans le débogueur d’événements PlayStream. PlayStream - Dashboard - Event Debugger
  3. Vous pouvez sélectionner n’importe quel événement « player triggered action executed CloudScript » (en sélectionnant l’horodatage) et voir le résultat détaillé de l’exécution de CloudScript pour chaque joueur. Cela inclut des informations de diagnostic utiles, comme l’instantané du profil du joueur au moment de l’exécution de CloudScript. PlayStream - Dashboard - Raw Event JSON
Last modified on October 6, 2026