マッチメイキングは、年齢、言語、スキルレベル、その他のゲームプレイの好みなどのプレイヤーの特性に基づいて、プレイヤーをサーバーにマッチングさせるプロセスです。
マッチメイキングの仕組み
プレイヤーがゲームに参加しようとすると、マッチメイキングサービスはプレイヤーが参加できるすべての対象サーバーを見つけ、シグナルを使用してこれらのサーバーをスコアリングし、プレイヤーを最も高いスコアのサーバーにマッチさせます。
マッチメイキングのフローは次のようになります:
- プレイヤーがプレイスへの参加をリクエストします。
- マッチメイキングは、プレイヤーが参加できる対象サーバーを見つけ、満員、プライベート、予約済み、またはシャットダウン予定のサーバーを除外します。
- マッチメイキングは、プレイヤーにとって最も適合するサーバーを決定するために、すべての対象サーバーにスコアを付けます。
- マッチメイキングは、プレイヤーを最も高いスコアのサーバーにマッチさせます。
- プレイヤーは勝利したサーバーに参加します。


スコアリング
マッチメイキングのスコアリングアルゴリズムは、信号値の加重和(WS)を使用してサーバーにスコアを割り当てます。
スコアリングに関する詳細は、サーバースコアリングを参照してください。
属性
属性は、マッチメイキングのスコアリングに使用されるプロパティです。属性は、プレイヤーの年齢やスキルレベルの評価のような数値、またはプレイヤーの言語のような文字列であることができます。
属性は数値的またはカテゴリカルです:
- 数値属性は、参加するプレイヤーの属性とサーバーの集約値との違いを比較し、大きな違いがスコアを下げたり上げたりします。たとえば、プレイヤーのスキルレベルがサーバーの平均スキルレベルに近いほど、数値信号のスコアは高くなります。このスコアは、その後信号の重みで掛け算されます。
- カテゴリカル属性は、参加するプレイヤーの属性がサーバー内の他のプレイヤーと比較してどれくらい一般的であるかに基づいています。たとえば、サーバー内のプレイヤーの高い割合が参加するプレイヤーと同じ好みの言語を持っている場合、スコアは上がります。このスコアも信号の重みで掛け算されます。
すべての既存の属性のリストについては、既存の属性を参照してください。カスタム属性に関する詳細は、カスタム属性を参照してください。
シグナル
サーバースコアリングで使用されるシグナルは、Robloxが既に提供しているデフォルトのものか、ユーザー自身が作成したカスタムのものです。
Robloxのシグナルは、プレイヤーの位置、年齢層、レイテンシなど、Robloxが既にアクセスできる属性を使用します。ただし、カスタムシグナルは、データストアからデータにアクセスするためにカスタム属性を使用する必要があります。カスタムシグナルを作成するには、まずカスタム属性を作成しなければなりません。
すべての既存のRobloxシグナルのリストについては、既存のシグナルを参照してください。カスタムシグナルに関する詳細は、カスタムシグナルを参照してください。
カスタムマッチメイキング
プレイヤーがゲームに参加すると、マッチメイキングは、サーバーの信号値の加重和に基づいて各稼働中のサーバーにスコアを割り当てます。このプロセスは、各信号の重要性を調整することによってカスタマイズできます。たとえば、レイテンシ信号の重みを増やすと、マッチメイキングアルゴリズムはよりスムーズなゲームプレイのために低いpingのサーバーを優先します。
信号の重みを調整した後、モックサーバーでこれらの新しい重みがマッチメイキングサーバー選択に与える影響をプレビューできます。
マッチメイキングをカスタマイズし、その結果をシミュレートする方法の詳細については、マッチメイキング設定をカスタマイズするを参照してください。
アナリティクス
マッチメイキングアナリティクスは、マッチメイキング設定の成功を追跡し、最適化の機会を見つけるのに役立ちます。
マッチメイキングアナリティクスに関する詳細は、アナリティクスを参照してください。