2021-10-22デベロップメント

/dev: 満足できるマッチメイキングを

マッチメイキングとランク戦はワイルドリフトの中心ですが、その仕組みはどうなっているのでしょうか?リード ゲームデザイナーのJosh Menkeが、MMR、“敗者キュー”、ゴールドとエメラルドのプレイヤーが同じ試合でプレイすることになる理由について詳しく説明します。

作者
  • Josh Menke

ワイルドリフトにおけるスキルの計測方法

私たちはプレイヤーのスキルを計測するためにレーティングシステムを使用しています。スキルシステムが、プレイヤーが勝利する能力を最も正確に予測するための数値を生成します。この数値はプレイヤーのマッチメイキングレーティング、略してMMRと呼ばれます。プレイヤーのMMRは、そのプレイヤーが次の試合でどのようにプレイするかを“予測”するものです。

現在、ワイルドリフトでは2つのMMRシステムが実行されています。ランク戦ではオリジナルのシステムが利用されていますが、ノーマル戦では私たちが得たデータに基づいて、プレイヤーの勝率かをかなり正確に予測できるアップグレードされたバージョンが使用されます。将来的にはランク戦のMMRシステムをアップグレードすることも考えていますが、プレイヤーのランクはそのMMRとの関連性が強いことから、新システムを導入するにはさらに多くの時間がかかります。

MMRの仕組みとは?

この記事では具体的な数式について触れませんが、基本的にはアルパド・イロのシステムのような、スキルを決定するために一般的に使われているシステムの高度なバージョンだと言えるでしょう。大きく見ると、対戦終了時に勝者は対戦の難易度に応じてこの数値が増加し、敗者は減少します。競った試合では、全プレイヤーの数値が同じくらいだけ増減しますが、大差がついた試合では、その結果が事前の予想どおりだったかどうかで増減幅が決まります。

予想通りであればMMRはほぼ変化しませんが、予想を覆す結果となった場合は、勝者のMMRが少し高すぎて、敗者は少し低すぎたことになるので、変化の幅がより大きくなります。あなたのMMRは、あなたと同じくらいのスキルを持ったプレイヤーと同じ値へと収束していきます。これが理由で、私たちはおなたと同じようなスキルのプレイヤーが敵味方となるようにマッチメイクを行っています。

マッチメイキングの仕組みは?

マッチメイキングの目的は以下の点を考慮して最善の試合をプレイヤーに提供することです。

  • 自分のスキルに近い、優れたチームメイト(味方チームが同じようなMMR)
  • 両チームに勝てるチャンスがある公平な対戦(相手チームも同じようなMMR)
  • 低い遅延時間(Ping)
  • アカウントの希望するポジションを考慮(適用される場合)


「マッチメイキング」を押すと、あなたは同じゲームモードで対戦を探しているプレイヤーのプールに配置されます。次に、マッチメイカーが以下を毎秒行って全員の対戦を見つけます。

  1. 待ち時間が最も長いプレイヤーまたはグループを選択。
  2. プレイヤーやグループの平均MMRが妥当な範囲の十分な数のプレイヤーがいるかどうかをチェック。いない場合は、今回はシステムがこのプレイヤーに対戦を見つけることができなかったということで、ほぼ直後に再実行します。また、全員に可能な限り同じようなスキルのチームメイトを提供できるように、システムはここで見つかる最も近いプレイヤーを優先します。
  3. 十分なプレイヤーが見つかったら、システムはチームを作成し、希望するポジションと両チームのMMRのバランスを調整します。どちらのチームも試合に勝利する確率が同じ(ほぼ50%)になるように各チームのMMRのバランスを取ります。
  4. チームが決まったら、マッチメイカーは最終チェックを行い、可能であれば一方的な試合にならないように、両チーム間のMMRの差が指定された範囲内にあるかどうかを確認します。許容範囲内に入っていなかった場合は、対戦を破棄して、システムはステップ2に戻り、別のプレイヤー/グループのセットを見つけるか、候補者がいなくなるまで続けます。
  5. 対戦の準備が整ったら、試合前の画面に移ることがプレイヤーに通知されます。その後、マッチメイキングシステムはステップ1に戻り、最も待機時間が長いプレイヤーを選択します。

ステップ2において、マッチメイカーはMMRとランクが一定の範囲内にいるプレイヤーだけをマッチングさせます。この許容範囲は、最初のうちは狭いですが、毎秒少しずつ拡大していきます。これは2分間に渡って続きます。この時点でランクとMMRの許容範囲の幅が最大になり、システムはその状態で18分間、合計20分間マッチングを試みます。その後、マッチングはタイムアウトとなり、最初からやり直しとなります。注意:これが理由で、この20分間は常に再検索するよりも待ち続ける方が素早く対戦が見つかることになります。再検索をかけると、許容範囲が再び拡大するまで2分間待つ必要があります。

自分にとって不公平な対戦が組まれる理由は?

不公平な対戦だと感じる理由はいくつか考えられます。

  • スノーボール:私たちはスノーボールに関してはPC版LoLと同じ考え方です。“ゲームデザインの側面から見た場合、途中で築いた小さなアドバンテージを勝利へとつなげていく「スノーボール」要素は勝因のひとつとして存在していて欲しい、と考えています。スノーボールにつながる小さなアドバンテージを積み重ね、それが結果的に勝敗を決める場合もあるでしょう。”そのため、お互いにスキルが均衡したチーム同士がマッチングしたものの、試合展開によってはそのように感じられない可能性があります。
  • チーム構成:アサシンやメイジなどの一部のチャンピオンは短時間で大量のダメージを与えることができます。相手がレンガーでアイテムを2つ完成させていて、ドラゴンレーンでダブルキルを奪われたら、自分には逆転できるパワーが足りないと感じるかもしれませんが、実際には技術的なスキルは同じようなものであるかもしれません。
  • MMRの差:マッチメイカーは対戦内のプレイヤーのMMRを望むような範囲内に抑えられない場合があります(マッチメイカーの仕組みの2番目を参照)。現在、プレイヤーが対戦を見つけられない極端なケースが発生しており、その場合は対戦を見つけるために全体的に許容範囲を拡大する必要があります。そのため、一部のプレイヤーが試合をプレイできるようにするために、全プレイヤーのMMRの差の許容範囲を広げる必要があります。これによって結果的に試合においてチーム内のMMRの差が望むよりも大きくなる可能性があります。近い将来に、全員の許容範囲の差を広げるのではなく、各プレイヤーごとにリアルタイムでカスタマイズして許容範囲の差を変化させる調整を行う予定です。これによって、ほとんどの対戦でMMRの差を可能な限り小さくすることが可能になります。
  • MMR予測:まれに、スキルシステムが対戦内のプレイヤーのスキルを誤認識する場合があります。スキルシステムが特定のプレイヤーのスキルを誤認識した場合、マッチメイカーには問題はなくても、公平な対戦が組まれない場合があります。前述したように、ノーマル戦で使用しているMMRのアップグレードは各対戦における各チームの勝率を正しく予測できているので、これをかなり少なく抑えることができています。この改善がランク戦でも導入されれば、全体的に対戦がより公平に感じられるようになるでしょう。
  • アンラッキーな試合:時には調子が悪くて普段の実力が出せない場合もあります。誰もがまったく同じ実力を毎試合発揮できるわけではありません。実際、プレイヤーの実力は試合ごとにエメラルドからゴールドまで揺れ動きます。この場合、スノーボール効果がなくても、対等だと思われた試合が一方的な結果になる場合もあります。

ランク戦とノーマル戦で別になっているのはなぜ?

ノーマル戦の試合では、マッチメイカーはランクを一切考慮しません。プレイヤーのプレイスタイルも大きく変わると思うので、ランクなしとランダムミッドではランク戦とは異なる独自MMRが利用されています。たとえば、ランクなしのゲームモードでは普段はやらないようなプレイスタイルやビルドで楽しんだり、新しいチャンピオンに挑戦したりする可能性があります。MMRを分けることで、ゲームモードに応じて異なるプレイヤーのプレイスタイルに対応できるようになります。

自分よりもランクが低いプレイヤーとチームを組まされるのははぜですか?

現在私たちが抱えている問題は、MMRとランクの両方でマッチメイキングを行っていることから、どちからが足を引っ張って、必要以上に対戦待ち時間が長くなってしまうことがある点です。たとえば、ランクはシルバーでもMMRはダイヤモンドに近いプレイヤーがいた場合、同じようなMMRのプレイヤーがシルバーにはほとんどいないので対戦を見つけることが難しくなります。誰もが対戦を見つけられるようにするためには、ランク差の許容範囲を拡大する必要があり、結果的にチームメンバー間のランク差が離れることにつながります。

しかし、MMRが正確で、MMRの数値が近い限りは、対戦は公平なものとなります。前述したように、近い将来により正確なMMRシステムがランク戦にも導入されるので、プレイヤーのランクの差が開いているように見えても、あなたと同じくらいのスキルレベルでプレイしてくれると期待できます。

私たちのMMRシステムの精度が上がれば、ランクによるマッチメイキングは完全に廃止してMMRのみを利用することで、対戦待ち時間が短くなって、より公平な対戦が組まれるようになります。対戦でランクの低いプレイヤーとマッチングされても、そのプレイヤーのMMRが他のプレイヤーと同じレベルであり、平均的に見れば問題なくプレイできる場合は、そのプレイヤーの横に特別なアイコンが表示されます。表示されていない場合は、上記の不公平な対戦のセクションをお読みください。

私が“敗者キュー”に入れられる理由は?

簡単に言うと、そんなものは存在しません。“敗者キュー”なるものは存在せず、マッチメイカーはあなたの連敗や連勝を考慮しません。どれだけ連勝/連敗しようが、どれだけ勝率が高かろうが/低かろうが、マッチメイカーはまったく同じように機能します(マッチメイカーは勝率を考慮しません)。

完全に公平な対戦が組まれるシステムであったとしても、連勝や連敗が発生するものであることを覚えておいてください。連勝や連敗が長く続くことはまれですが、それでも100試合中、ほぼ10%の確率で10連敗が発生します。

詳しく説明すると、以前のMMRシステムではプレイヤーのMMRが一時的に過大評価されて、少しだけ負けが増えてしまう可能性がありました。これはわずかな影響しかありませんでしたが、パッチ2.6でMMRシステムがアップグレードされたことで、この問題は完全に解消しました。ノーマル戦で連勝や連敗は体験するのは──ノーマルなことです。

ダイヤモンド以上では獲得するヴィクトリーポイントが少なくなるのははぜですか?

獲得するVPが少なくなる理由は2つ考えられ、その両方が合わさる可能性もあります。

  • 同じようなMMRの相手と対戦した際に、同じようなランクのプレイヤーと同じくらい勝てていない場合は、あなたのMMRはあなたのランクの平均MMRより下がります。あなたのMMRが下がったことから、対戦相手はあなたのランクの平均よりもスキルが低い相手になるので、勝利が容易になることから、勝利時に獲得するVPが減少します。

    この状況を“修正”するには、長期間にわたって50%以上の勝率を維持する必要があります。これによってあなたの現在のランク(またはそれ以上)のレベルまであなたのMMRが上がれば、より多くのVPを獲得できるようになります。こうなると、ランクを上げるために50%以上の勝率を維持する必要はなくなります。実際、あなたのMMRがあなたのランクのほとんどのプレイヤーよりも高かった場合は、勝率が50%しかなくても、素早くランクを上げることができます。

    注意:新たなランクに昇格したときは、これが自然に発生します。あなたのMMRはマスターレベルにおいては高かったとしても、グランドマスターレベルにおいては平均くらいかもしれません。MMRが自分と同じくらいのプレイヤーの平均ランクにあなたが近づけば、VPの増減幅は+/-15程度に落ち着きます。
  • また、あなたと同じランク内のプレイヤーのMMRがあなたのMMRを超えて増加した場合も、獲得するVPが低下することになります。シーズンを通してあなたのランク内で、他のプレイヤーのスキルがあなたのスキルよりも早く上昇した場合は、あなたのMMRは下がっていないにもかかわらず、あなたの周囲のプレイヤーのMMRが上がります。これによって前述したことと同じことが起こるので、獲得するVPが安定するか再びプラスになるまで50%以上の勝率を維持して自分のMMRを上げることが解決策となります。

1つの基準ではなく、ランクとMMRの両方を使う理由は?

簡単に言うと、MMRは未来に起こることを測定する最善の基準であり、ランクは過去に起こったことに対する報酬です。私たちはプレイヤーがどれくらい上手くプレイできるかを予測することは可能ですが、実際に予想どおりの活躍を見せるまで、ランクを授与したくはありません。プレイヤーがMMRの予想以上に敗北した場合は、自分の実力がもっと高いことを示すまで、ランクは低くなります。同様に、プレイヤーが予想以上の勝率をあげてMMRが間違っていることを示せた場合は、より高いランクを獲得することができます。