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

リージョンのマッチメイキングを設定する

Last updated on February 4, 2026

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

概要

AccelByte Gaming Services(AGS)マッチメイキングは、地理的リージョンに基づいてプレイヤーをマッチングできる機能を提供します。この記事では、リージョンベースのマッチメイキングをゲームに実装する方法を説明します。

前提条件

この記事のすべての手順を完了するには、以下が必要です:

利用可能なすべてのリージョンでマッチメイキングリクエストを設定する

マッチメイキングリクエスト中、ゲームクライアントはマッチメイキング結果の優先リージョンとしてlatenciesフィールドにリージョンリストを提供できます。以下は、マッチメイキングをリクエストするためのペイロードの例です:

POST /match2/v1/namespaces/{namespace}/match-tickets

{
"attributes": {},
"latencies": {
"us-west-2":44,
"eu-west-2":187,
"ap-northeast-1":600
},
"matchPool": "matchpool_test",
"sessionID": ""
}

Quality of Service(QoS)から利用可能なリージョンのリストを取得するには、次のAPIエンドポイントを使用できます:

GET /qosm/public/qos

// Using the StartMatchmaking() method, 
// the OSS will automatically fill matchmaking tickets with all available QoS regions

// Matchmaking to all regions
TSharedRef<FOnlineSessionSearch> NewSearchHandle = MakeShared<FOnlineSessionSearch>();
NewSearchHandle->QuerySettings.Set(SETTING_SESSION_MATCHPOOL, "5v5bf", EOnlineComparisonOp::Equals);

if (!SessionInterface->StartMatchmaking(TArray<FSessionMatchmakingUser>{{LocalUserId1}}, NAME_GameSession, FOnlineSessionSettings(), NewSearchHandle, OnStartMatchmakingCompleteDelegate))
{
// Matchmaking failed to start
return false;
}

特定のリージョンのマッチメイキングリクエストを設定する

マッチメイキング結果中に特定のリージョンを取得するには、ゲームクライアントはマッチチケットを作成するときに1つのリージョン(レイテンシ)のみを送信できます。

[AccelByte Multiplayer Servers(AMS)]*../03-multiplayer/multiplayer-servers/index.mdx)を使用している場合は、使用したいリージョンを追加するか、セッションテンプレートで使用されるデプロイメント設定リージョンを選択してください。

Image shows deployment config

選択されるリージョンがリージョン設定でアクティブであることを確認してください。これを行うには、次の手順に従います:

  1. AGS Admin Portalで、AccelByte Multiplayer Servers > QoS Regionsに移動します。

  2. QoS Regionsページで、アクティブに設定したい国のActiveトグルボタンをオンに切り替えます。

以下は、ゲームクライアントが常にリージョン「us-west-2」でマッチメイキングをリクエストする例です:

POST /match2/v1/namespaces/{namespace}/match-tickets

{
"attributes": {},
"latencies": {
"us-west-2":44
},
"matchPool": "matchpool_test",
"sessionID": ""
}
// Region names can be provided by setting the SearchSetting with `SETTING_GAMESESSION_REQUESTEDREGIONS` key

TSharedRef<FOnlineSessionSearch> NewSearchHandle = MakeShared<FOnlineSessionSearch>();
NewSearchHandle->QuerySettings.Set(SETTING_SESSION_MATCHPOOL, "5v5bf", EOnlineComparisonOp::Equals);
// Insert the region you want to lock to here
NewSearchHandle->QuerySettings.Set(SETTING_GAMESESSION_REQUESTEDREGIONS, "us-west-2", EOnlineComparisonOp::Equals);

if (!SessionInterface->StartMatchmaking(TArray<FSessionMatchmakingUser>{{LocalUserId1}}, NAME_GameSession, FOnlineSessionSettings(), NewSearchHandle, OnStartMatchmakingCompleteDelegate))
{
// Matchmaking failed to start
return false;
}
注記

優先リージョンにサーバーの準備ができていない場合、次に最適なリージョンからサーバーが要求されます。