リファレンス: すべてのプレイヤーの属性を比較する - Amazon GameLift

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

リファレンス: すべてのプレイヤーの属性を比較する

この例では、プレイヤーのグループ間でプレイヤー属性を比較する方法を示します。

このルールセットの例では、次の特性を持つマッチングについて説明します。

  • チーム構造: 2 つの単一プレイヤーチーム

  • プレイヤー属性:

    • gameMode: プレイヤーによって選択されたゲームのタイプ (指定されていない場合は、デフォルトで「ターンベース」になります)。

    • gameMap: プレイヤーによって選択されたゲームワールド (指定されていない場合は、デフォルトで 1)。

    • キャラクター: プレイヤーによって選択されたキャラクター (デフォルト値がない場合、プレイヤーはキャラクターを指定する必要があります)。

  • マッチングルール: マッチングされたプレイヤーは次の要件を満たす必要があります。

    • プレイヤーは同じゲームモードを選択する必要があります。

    • プレイヤーは同じゲームマップを選択する必要があります。

    • 多くのプレイヤーは異なるキャラクターを選択します。

このルールセットの使用に関する注意事項

  • この例では、マッチングルールを実装するため、比較ルールを使用してすべてのプレイヤーの属性値を確認します。ゲームモードとマップについては、値が同じことがルールで確認されます。キャラクターについては、値が異なることがルールで確認されます。

  • この例では、両方のプレイヤーチームを作成するために数量プロパティを指定して 1 つのプレイヤー定義を使用します。チームには、"player_1" や "player_2" のような名前が割り当てられます。

{ "name": "", "ruleLanguageVersion": "1.0", "playerAttributes": [{ "name": "gameMode", "type": "string", "default": "turn-based" }, { "name": "gameMap", "type": "number", "default": 1 }, { "name": "character", "type": "number" }], "teams": [{ "name": "player", "minPlayers": 1, "maxPlayers": 1, "quantity": 2 }], "rules": [{ "name": "SameGameMode", "description": "Only match players when they choose the same game type", "type": "comparison", "operation": "=", "measurements": ["flatten(teams[*].players.attributes[gameMode])"] }, { "name": "SameGameMap", "description": "Only match players when they're in the same map", "type": "comparison", "operation": "=", "measurements": ["flatten(teams[*].players.attributes[gameMap])"] }, { "name": "DifferentCharacter", "description": "Only match players when they're using different characters", "type": "comparison", "operation": "!=", "measurements": ["flatten(teams[*].players.attributes[character])"] }] }