> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# マッチメイキングの概要

> XBOX SmartMatch マッチメイキングの概要。マッチ チケット、MPSD セッション、および互換性のあるプレイヤーの発見を支援する Multiplayer Manager API について説明します。

このトピックでは、SmartMatch マッチメイキング サービスがマルチプレイヤー ゲームにおいて互換性のあるプレイヤーをどのように選定するかを説明します。

## SmartMatch の紹介

XBOX services は、*SmartMatch* と呼ばれるマッチメイキング サービスを提供します。
このサービスは、一緒にプレイしたいプレイヤーの情報とマッチメイキング要求に基づいて、プレイヤーをグループ化します。
マッチメイキングはサーバー ベースです。つまり、プレイヤーはサービスに要求を送信し、マッチが見つかると通知を受け取ります。

SmartMatch マッチメイキングでは、以下の API アプローチを使用できます。

* SmartMatch は [Multiplayer Manager](/services/xbox-services/multiplayer/mpm/live-multiplayer-manager-nav) によってラップされています。

* 高度な API 使用については、`XblMatchmaking*` メソッドを呼び出すことができます。

Multiplayer Manager (MPM) でサポートされていないマッチメイキング シナリオがある場合は、Microsoft の担当者を通じてフィードバックをお寄せください。
どの API を使用するかにかかわらず、このトピックの概念的な情報は有効です。

タイトルをビルドする際、このトピックで説明されているように SmartMatch を使用できます。
または、[Using Your Own Matchmaking Service](https://developer.microsoft.com/games/xbox/docs/xboxlive/xbox-live-partners/multiplayer-and-networking/using-your-own-matchmaking-service) で説明されているように、独自のマッチメイキング サービスを使用することもできます。

### SmartMatch について

マッチメイキングをシンプルにするため、SmartMatch マッチメイキング サービスは Multiplayer Session Directory (MPSD) と密接に連携して動作します。
SmartMatch を使用すると、タイトルはバックグラウンドで簡単にマッチメイキングを実行できます。たとえば、プレイヤーがタイトル内でシングルプレイをしている間に実行できます。

マッチメイキングに参加したい個人またはグループはマッチ チケット セッションを作成し、マッチを構成する他のプレイヤーを見つけるようにマッチメイキング サービスに要求します。
その結果、一定期間マッチメイキング サービス内に存在する一時的なマッチ チケットが作成されます。

マッチメイキング サービスは、構成、各プレイヤーに保存された統計情報、およびマッチ要求時に提供される追加情報に基づいて、一緒にプレイするセッションを選定します。
その後、サービスはマッチしたすべてのプレイヤーを含むマッチ ターゲット セッションを作成し、プレイヤーのタイトルにマッチを通知します。

ターゲット セッションの準備が整うと、タイトルはグループが一緒にプレイできることを確認するために Quality of Service (QoS) チェックを実行します。チェックが確認されると、グループはプレイを開始できます。
QoS プロセスおよびマッチメイキングによるゲーム プレイの間、タイトルは MPSD 内でセッション状態を最新に保ちます。タイトルはセッションの変更に関する通知を MPSD から受け取ります。
このような変更には、ユーザーの入退室やセッション アービターの変更などが含まれます。

### マッチ チケット セッション

*マッチ チケット セッション*は、マッチを作成したいプレイヤーのクライアントを表します。
セッションは、ゲーム、一緒にロビーにいる見知らぬプレイヤーのグループ、またはその他のタイトル固有のプレイヤー グループに基づいて作成されます。
場合によっては、チケット セッションが、より多くのプレイヤーを探している既に進行中のゲーム セッションであることもあります。

### マッチ チケット

チケット セッションをマッチメイキングに送信すると、*マッチ チケット*が作成されます。これはマッチメイキングの試行を追跡します。
チケット内の属性 (たとえば、ゲーム マップやプレイヤー レベル)、およびチケット セッション内のプレイヤーの属性が、マッチの決定に使用されます。

## ホッパー

*ホッパー*は、マッチ チケットが収集される論理的な場所です。
同じホッパー内のチケットのみがマッチングされます。

タイトルは複数のホッパーを持つことができます。
たとえば、あるタイトルは、プレイヤーのスキルがマッチングにおいて最も重要な項目となるホッパーを 1 つ作成する場合があります。
また、同じダウンロード コンテンツを購入している場合にのみプレイヤーがマッチングされる別のホッパーを使用する場合もあります。

### ホッパー ルール

*ホッパー ルール*は、マッチメイキング サービスが一緒にグループ化するプレイヤーを決定するために使用する基準の定義を提供します。

ホッパー ルールには 2 つのタイプがあります。

* **MUST ルール**: マッチ チケットが互換性があると見なされるために満たされる必要があります。

* **SHOULD ルール**: ルールに一致するマッチ チケットは、一致しないチケットより優先されます。

これらの各カテゴリ内には、いくつかの具体的なルールの種類があります。
詳細については、「[Partner Center でのマッチメイキングの構成](/services/xbox-services/multiplayer/matchmaking/config/live-matchmaking-config)」を参照してください。

### ホッパー構成

詳細については、Partner Center でのマッチメイキングの構成トピック内の「[マッチメイキングの基本的なホッパー構成](/services/xbox-services/multiplayer/matchmaking/config/live-matchmaking-config#hop)」セクションを参照してください。

### マッチ ターゲット セッション

マッチしたグループが見つかると、サービスは*マッチ ターゲット セッション*を作成します。サービスは、一緒にマッチングされたチケット セッションからのすべてのプレイヤーの場所を予約します。
詳細については、「[ターゲット セッションの初期化と QoS](/services/xbox-services/multiplayer/matchmaking/concepts/live-matchmaking-target-session)」を参照してください。

## 関連項目

[マルチプレイヤー セッション テンプレート](/services/xbox-services/multiplayer/mpsd/concepts/live-session-templates)

[Multiplayer Session Directory の概要](/services/xbox-services/multiplayer/mpsd/live-mpsd-overview)


## Related topics

- [SmartMatch マッチメイキングの使用](/ja-jp/services/xbox-services/multiplayer/matchmaking/concepts/live-matchmaking-how-tos.md)
- [SmartMatch マッチメイキング](/ja-jp/services/xbox-services/multiplayer/matchmaking/live-matchmaking-nav.md)
- [XBOX services マルチプレイヤーの概要](/ja-jp/services/xbox-services/multiplayer/overviews/live-multiplayer-intro.md)
- [概要](/ja-jp/services/xbox-services/multiplayer/overviews/index.md)
- [XblMultiplayerManagerAutoFillMembersDuringMatchmaking](/ja-jp/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerautofillmembersduringmatchmaking.md)
