Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemple : créer une règle qui utilise la liste de blocage d'un joueur
Cet exemple illustre un ensemble de règles qui permet aux joueurs d'éviter d'être jumelés à certains autres joueurs. Les joueurs peuvent créer une liste de blocage, que le système de matchmaking évalue lors de la sélection des joueurs pour un match. Pour plus d'informations sur l'ajout d'une liste de blocage ou sur la fonctionnalité de liste à éviter, consultez AWS le blog sur les jeux
Cet exemple présente les instructions suivantes :
-
Créez deux équipes de cinq joueurs exactement.
-
Inscrivez la liste de blocage d'un joueur, qui est une liste d'identifiants de joueurs (jusqu'à 100).
-
Comparez tous les joueurs à la liste de blocage de chaque joueur et rejetez une proposition de match si des identifiants de joueurs bloqués sont trouvés.
Remarques sur l'utilisation de cet ensemble de règles :
-
Lorsque vous évaluez un nouveau joueur à ajouter à un match proposé (ou pour remplacer une place dans un match existant), le joueur peut être rejeté pour l'une des raisons suivantes :
-
Si le nouveau joueur figure sur la liste des joueurs déjà sélectionnés pour le match.
-
Si des joueurs déjà sélectionnés pour le match figurent sur la liste de blocage du nouveau joueur.
-
-
Comme indiqué, cet ensemble de règles empêche la mise en correspondance d'un joueur avec n'importe quel joueur de sa liste de blocage. Vous pouvez transformer cette exigence en préférence (également appelée liste « à éviter ») en ajoutant une extension de règle et en augmentant la
maxCountvaleur.
{ "name": "Player Block List", "ruleLanguageVersion": "1.0", "teams": [{ "maxPlayers": 5, "minPlayers": 5, "name": "red" }, { "maxPlayers": 5, "minPlayers": 5, "name": "blue" }], "playerAttributes": [{ "name": "BlockList", "type": "string_list", "default": [] }], "rules": [{ "name": "PlayerIdNotInBlockList", "type": "collection", "operation": "reference_intersection_count", "measurements": "flatten(teams[*].players.attributes[BlockList])", "referenceValue": "flatten(teams[*].players[playerId])", "maxCount": 0 }] }