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 : utilisez une règle composée pour créer un match avec des joueurs ayant des attributs ou des sélections similaires
Cet exemple montre comment configurer un ensemble de règles pour les matchs entre deux équipes utilisantcompound. Dans l'exemple :
-
La
SimilarLeagueDistancerègle garantit que tous les joueurs d'un match se situentleagueà moins de 2 points des autres joueurs. -
La
SimilarSkillDistancerègle garantit que tous les joueurs d'un match ont 10 pointsskilld'avance sur les autres joueurs. Si un joueur a attendu 10 secondes, la distance est étendue à 20. Si un joueur a attendu 20 secondes, la distance est étendue à 40. -
La
SameMapComparisonrègle garantit que tous les joueurs participant à un match ont fait la même demandemap. -
La
SameModeComparisonrègle garantit que tous les joueurs participant à un match ont fait la même demandemode. -
La
CompoundRuleMatchmakerrègle garantit une correspondance si au moins l'une des conditions suivantes est remplie :-
Les joueurs participant à un match ont demandé
mapla même chosemode. -
Les joueurs participant à un match ont des
leaguecaractéristiquesskillet des attributs comparables.
-
{ "ruleLanguageVersion": "1.0", "teams": [{ "name": "red", "minPlayers": 10, "maxPlayers": 20 }, { "name": "blue", "minPlayers": 10, "maxPlayers": 20 }], "algorithm": { "strategy":"balanced", "balancedAttribute": "skill", "batchingPreference":"fastestRegion" }, "playerAttributes": [{ "name": "league", "type": "number" },{ "name": "skill", "type": "number" },{ "name": "map", "type": "string" },{ "name": "mode", "type": "string" }], "rules": [{ "name": "SimilarLeagueDistance", "type": "distance", "measurements": ["max(flatten(teams[*].players.attributes[league]))"], "referenceValue": "min(flatten(teams[*].players.attributes[league]))", "maxDistance": 2 }, { "name": "SimilarSkillDistance", "type": "distance", "measurements": ["max(flatten(teams[*].players.attributes[skill]))"], "referenceValue": "min(flatten(teams[*].players.attributes[skill]))", "maxDistance": 10 }, { "name": "SameMapComparison", "type": "comparison", "operation": "=", "measurements": ["flatten(teams[*].players.attributes[map])"] }, { "name": "SameModeComparison", "type": "comparison", "operation": "=", "measurements": ["flatten(teams[*].players.attributes[mode])"] }, { "name": "CompoundRuleMatchmaker", "type": "compound", "statement": "or(and(SameMapComparison, SameModeComparison), and(SimilarSkillDistance, SimilarLeagueDistance))" }], "expansions": [{ "target": "rules[SimilarSkillDistance].maxDistance", "steps": [{ "waitTimeSeconds": 10, "value": 20 }, { "waitTimeSeconds": 20, "value": 40 }] }] }