マッチチケットのライフサイクルについて理解する
注釈:本資料はAI技術を用いて翻訳されています。
概要
この記事では、マッチメイキングの開始リクエストが送信された後のプレイヤーまたはパーティのデフォルトのエンドツーエンドフローを追跡するマッチチケットのライフサイクルの概要を提供します。ただし、フローのいくつかの段階を拡張して、ゲームのマッチメイキングの動作をカスタマイズすることが可能です。詳細については、Extendを参照してください。
マッチメイキング中に使用されるいくつかのコンポーネントについて知っておく必要があります:
-
Session Template: セッションが作成される際の特性を定義します。これには、参加可能性、使用するゲームサーバーデプロイメント、プレイヤー要件、チーム構成が含まれます。
-
Match Ticket: ソロプレイヤーまたはパーティによるマッチメイキングのリクエストを定義し、評価用にプレイヤー情報が添付されます。
-
Backfill Ticket: マッチチケットと似ていますが、マッチルールセットで自動バックフィルが有効になっている場合にのみ作成されます。この場合、2人以上のプレイヤーがマッチングされると(ルールセットからマッチングに必要な最小プレイヤー数に依存)、彼らはセッションに参加し、最大プレイヤー数がセッションに接続するまでマッチを見つけ続けるためにバックフィルチケットがAGSマッチメイキングに送信されます。
マッチチケットがバックフィルプロセス中またはアクティブなセッションに提案されている場合、ユーザーはマッチチケットを削除/キャンセルできません。
-
Match Pool: 有効なマッチのためにサービスによって評価できるマッチチケットのコレクションを定義します。チケットは、選択されたゲームモードと設定(該当する場合)に基づいて同じプールに入ります。
-
Match Ruleset: チケットが有効なマッチを構成するかどうかを判断するためにデフォルトのマッチ関数によって使用される属性と比較基準を定義します。マッチ関数がオーバーライドされている場合でも、評価に必要なAGS Statisticsに保存されている属性でルールセットを設定する必要があります。
-
Match Function: サービスがマッチチケットを評価するために使用するロジックを定義します。デフォルトでは、サービスは関連するマッチルールセットで定義された基準を使用します。
マッチチケットのライフサイクル
マッチチケットは、プレイヤーに代わってマッチを見つけるためのAGSマッチメイキングへのリクエストの表現です。送信されると、チケットはマッチが見つかるか、割り当てられたマッチプールで定義されたタイムアウト期間に達するまで、以下に定義されたフローに従います。
-
プレイヤーまたはパーティが希望するゲームモードを選択し、マッチメイキングをリクエストします。
プレイヤーは、ソロでプレイするか友達とパーティでプレイするかを決定し、希望するマルチプレイヤーゲームモードを選択します。プレイヤーは、ゲームマップ、話す言語、難易度などの設定を選択できます。これらは、マッチメイキングを開始するリクエストのパラメータとして含めることができます。
-
プレイヤー情報と設定を含む新しいマッチチケットが作成されます。
マッチメイキングのリクエストが受信されると、サービスは新しいマッチチケットを作成し、プレイヤー情報と選択された設定をチケットに添付します。パーティの場合、サービスはパーティ情報、パーティID、個々のプレイヤー情報を添付してパーティを表す1つのチケットを作成します。
-
マッチチケットが検証され、マッチプールに割り当てられます。
マッチメイキングを開始するリクエストが発生すると、チケットを割り当てるべきマッチプールをリクエストの一部として渡す必要があり、これによりサービスはチケットをそのプールに追加します。ただし、マッチングのこのステップは、プール割り当てへのプログラマティックなアプローチをサポートするカスタムロジックで拡張できます。詳細については、Extendを参照してください。
-
マッチチケットは、関連するマッチルールセットで定義されたプレイヤー属性でハイドレートされます。
各マッチプールには、プール内から適切なマッチを見つけるためにマッチ関数が使用すべきプレイヤー属性と基準を定義する関連するマッチルールセットがあります。チケットがパーティを表す場合、サービスはパーティのメンバーの属性平均を添付します。ハイドレーションは、チケットに添付される前に属性値を調整するなどのカスタムロジックをサポートするように拡張することもできます。例えば、チームまたはパーティ構成に基づいて属性に重みを追加する必要がある場合などです。詳細については、Extendを参照してください。
-
マッチチケットは、有効なマッチを見つけるためにマッチプール内の他のチケットと評価されます。
マッチチケットがプレイヤー属性でハイドレートされた後、サービスは関連するマッチ関数を呼び出して、有効なマッチを見つけるためにマッチプール内のチケットを評価します。デフォルトでは、AGSマッチメイキングは、マッチを見つけるロジックとして関連するルールセットで指定された基準を使用します。ただし、必要に応じてより複雑なロジックで拡張できます。詳細については、Extendを参照してください。
処理中にマッチが見つからない場合、チケットは再度評価されるためにプールに戻されます。マッチルールセットでルールフレキシングが定義されている場合、次の評価ではフレックスされた基準が使用されます。
-
有効なマッチが見つかった場合、プレイヤーはマッチ結果とゲームセッションへの参加リクエストを受け取ります。
有効なマッチが識別されると、プレイヤーはゲームセッションへの参加招待を受け取ります。バックフィルが有効になっている場合、サービスは最初のマッチが識別された後にゲームセッションを作成し、それらのプレイヤーはゲームセッションへの参加招待を受け取ります。同時に、サービスはゲームセッションが開始に必要なプレイヤー数に達するまで追加のチケットを招待するために、バックフィルチケットをマッチプールに追加します。