メインコンテンツまでスキップ

マッチメイキング入門

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

備考

AGSマッチメイキングサービスがアップグレードされました。変更内容については、2つのバージョンを比較する表を参照してください。

概要

AccelByte Gaming Services(AGS)マッチメイキングは、開発者がプレイヤーをグループに調整するために使用できる一連の機能を提供します。グループは、ゲームモードや言語などの選択された設定と、マッチメイキングレーティング(MMR)などのプレイヤーに保存された属性に基づいて、バランスの取れたゲームプレイ体験を提供します。マッチメイキングは、これらの設定に基づいてマッチチケットを生成し、そのチケットをマッチプールにキューイングして評価します。

主要な概念

AGSマッチメイキングの設計で使用される主要な概念を理解することが重要です。

マッチメイキングタイプ

AGSマッチメイキングは、デフォルトで3つの主要なマッチメイキングタイプをサポートしていますが、2つ以上のタイプが組み合わされた複雑なシナリオを処理するように設定することもできます。主要なタイプは次のとおりです:

  • チームベースマッチメイキング: プレイヤーをチームにマッチングして互いに競わせます。チームサイズと最小プレイヤー要件は、ルールセットの一部として定義できます。
  • スキルベースマッチメイキング: 定義された属性を比較してスキルレベルに基づいてプレイヤーをマッチングし、良いマッチを決定します。属性とそれらを比較する基準は、ルールセットの一部として定義できます。
  • ロールベースマッチメイキング: ゲームセッション中にプレイすることを選択したゲーム内ロール(例:タンク、ヒーラー、ダメージ)に基づいてプレイヤーをマッチングします。多くの場合、チームの一部として行われます。ゲームセッションとチームのロール要件は、ルールセットの一部として定義できます。

さらに、マッチメイキングはgRPCプラグインを使用して拡張でき、開発者はニーズに応じて実装をカスタマイズできます。

ゲームモード

ゲームモードは、チームデスマッチ、フリーフォーオール、協力プレイなど、プレイヤーに独特のゲームプレイ体験を提供します。 AGSマッチメイキングは、各モードに個別のマッチメイキングロジックを含む複数のゲームモード定義をサポートします。これにより、プレイヤーをグループ化するために、スキルランキングやチーム構成などの独自の基準を定義できます。ゲームモードの定義の詳細については、Sessionを参照してください。

ゲームセッション

ゲームセッションは、マッチングされたプレイヤーが互いに対話するために接続されるゲームモードのインスタンスです。ゲームセッションは、専用サーバーにデプロイするか、ピアツーピアプレイのためにゲームクライアントコンピューターでローカルにホストできます。

チーム構成

チームベースのゲームモードの場合、チーム構成とは、チームの一部として参加できるプレイヤーの数と、ゲームセッションのバランスを取るために必要なロール固有の要件を指します。さらに、参加に必要なチーム数(チームごとの最小プレイヤー数を含む)は、マッチルールセットの一部として設定可能です。

マッチチケット

マッチチケットは、マッチメイキング中のプレイヤーまたはパーティを表します。マッチルールセットが最適なマッチを決定するために必要な属性とパラメータが含まれています。

マッチプール

キューとも呼ばれるマッチプールは、ゲームモード、リージョン、言語などの選択された設定に基づいて、チケットとして表されるプレイヤーとパーティのセグメントを定義します。プールに入ると、チケットは評価されてペアリングされ、ゲームモードに定義されたマッチルールセットに基づいてゲームセッションに接続されます。

マッチルールセット

マッチルールセットは、マッチメイキング中にチケットを比較して、ゲームモードごとに望まれる体験に基づいて最適にグループ化されるようにするために使用されるロジックを定義します。AGSマッチメイキングは、対応するプールにキューイングされたチケットを確認して、最適なマッチを決定します。

マッチ関数

マッチ関数は、AGSマッチメイキングがキューで待機しているチケットを評価するために使用する動作を定義します。デフォルトでは、マッチルールセットで定義されたロジックを使用しますが、gRPCプラグインを使用することで、サービスの動作を拡張する新しい関数を実装できます。

バックフィル

ゲームプレイ中に、ゲームセッションが新しいプレイヤーの追加をリクエストする必要がある場合があります。バックフィルは、ゲームセッションがAGSマッチメイキングにチケットを送信して新しいプレイヤーの提案を受け取り、それを受け入れるか拒否できるプロセスです。ゲームセッションは、セッションテンプレートを通じて自動バックフィルするように設定するか、ゲームサーバーに直接管理させることができます。

マッチメイキングフロー

このセクションでは、ソロプレイヤーまたはパーティの一部としてゲームセッションにマッチングするプレイヤーが経験するフローを確認します。関連する高レベルのステップは次のとおりです:

  1. ゲームがパーティをサポートしている場合、プレイヤーはパーティを作成して友達を参加に招待できます。パーティリーダーは希望するゲームモードを選択し、利用可能な設定を設定します。招待されたパーティメンバーは、マッチメイキングを開始する前に参加する必要があります。
  2. ソロプレイヤーまたはパーティリーダーがマッチメイキングを開始し、マッチチケットを作成してマッチプールにキューイングします。パーティリーダーがマッチメイキングを開始する場合、パーティ内のすべてのプレイヤーが添付された1つのマッチチケットが送信されます。
  3. サービスは、最適なマッチを見つけるために、関連するマッチルールセットで定義されたロジックに基づいてチケットを評価します。
  4. マッチが見つかると、サービスはAGS Sessionからゲームセッションをリクエストし、チケット情報、マッチ結果情報、提案されたチームをセッションに添付します。
  5. サービスは、マッチルールセットで自動バックフィルが有効になっている場合(auto_backfilltrueに設定することにより)、そのルールセットの最大プレイヤー設定が満たされるまで追加のマッチを見つけ続けることができるように、ゲームセッションのバックフィルチケットを作成します。
  6. プレイヤーは、マッチとして選択され、接続できるようになると、ゲームセッションへの参加招待を受け取ります。

この簡略化されたフロー図は、マッチメイキングプロセス中のクライアントと関連サービス間の相互作用を示しています:

フローに関するいくつかの注意事項:

  • パーティ内の複数のプレイヤーが一緒にマッチングしている場合、パーティリーダーがパーティを代表して単一のチケットを作成し、すべてのパーティメンバーが関連する通知を受け取り、セッションへの参加やホストへの接続などのアクションを実行します。
  • OnMatchFoundとOnSessionInvitedの順序は保証されていません
  • ホストが初期化された後にプレイヤーが参加した場合、OnDSStatusChangedを受信しない可能性があります。その結果、セッションに参加した後にDSInformation.ipフィールドを確認して、既存のホストがあるかどうかを確認する必要があります。
  • このフローは、専用サーバーの使用を前提としています。ピアツーピア接続を使用している場合は、リレーサーバー経由のピアツーピアに関するドキュメントを確認してください。