導入:ストリートファイター6の「対戦ダイアグラム」はどのように計算に計算されているのか?
はじめに
こんにちは、家系です。今回はストリートファイター6における「対戦ダイアグラム(対ダイ)」の仕組みに関する分析を行います。
対戦ダイアグラムとは、キャラクター同士の相性を数値で示したもので、「このキャラはこのキャラにどれくらい有利・不利か」を表す指標をまとめた表データです。
しかし、これらの数値がどのように計算されているのかは公式からは公開されておらず、計算方法についてしばしば議論されています。計算方法は不明であるものの、対戦ダイアグラムの数値は以下のような理由から単純な勝率を示す数値ではないことが分かっています。
- 0~10の値で構成される
- キャラ間の対応する数値の和が必ずしも10にならない(例:ケン→リュウは5.590に対してリュウ→ケンは3.966)
今回は、ストリートファイター6における対戦ダイアグラムがどのように集計・計算されているのか、そのプロセスをできるだけ客観的に、データの側面から考察したいと思います。すでに発表されているデータを手がかりに、対戦バランスをどう読み解くべきかを探っていきます。
対象としたデータ
今回の考察では、ストリートファイター6公式サイト「Buckler’s Boot Camp」に掲載されている対戦ダイアグラムの数値データを対象としました。2025年5月時点で2024年4月までの情報が公開されており、2024年4月のデータから考察を行います。先述した時点ではキャラごとに全25体分の対戦スコアが手に入る状態となっています。なお今回の分析ではクラシック、モダンは分けず「操作タイプ合算」のデータを参照しています。
考察:対戦ダイアグラムの数値の補正方法を考える
そもそもなぜ数値を補正しているのか
具体的な考察を行う前に対戦ダイアグラムで公開されている数値がなぜ単純な勝率でないかを考えます。以下に私が考えた「単純な勝率ではない理由」を記載します。
- ユーザ目線で直感的にわかりやすい数値に変換している
- 対戦数が少ない組み合わせによる勝率の不安定さを補正している
一つ目の理由は「ユーザ目線で直感的にわかりやすい数値に変換している」ためです。単純な勝率を表示すると、一の位の差がどの程度相性の際に影響しているかわかりづらいという問題が起こる可能性があります。多くのユーザにとって重要なのは「実際に対戦した時に感じる相性の良さ/悪さにどれほど近いか」であるため単純な勝率を表示するだけではその要求を満足しないことが、補正した数値を公開している背景として考えられます。
二つ目の理由「対戦数が少ない組み合わせによる勝率の不安定さを補正している」ためです。ストリートファイター6では対戦ダイアグラムのほかに各ランク帯におけるキャラクターの使用率も公開されており、全体における使用率1位(豪鬼:12.279%)と最下位(ダルシム:0.836%)の間では15倍程度差があります。この場合、対豪鬼の勝率に対して、対ダルシムの勝率のばらつきは大きくなることが考えられ月によって値が大きく上下する可能性があります。ばらつきによる誤解を防ぐことを目的として、対戦数が少ない組み合わせの勝率を補正していることが背景として考えられます。
補正された数値が満たすべき条件
ここからは先述した背景から考えられる補正方法について考察を行います。ここまでの内容から補正された値は以下の条件を満たす必要があります。
- 0~10の値で構成される
- キャラ間の対応する数値の和が必ずしも10にならない(例:ケン→リュウは5.590に対してリュウ→ケンは3.966)
- 実際にプレイした時の感覚に近く、直感的にわかりやすい
- 対戦数が少なくてもなるべく真の値に近い(5に近い値である)
三つ目の条件を満たすためには表示する値をシンプルにする必要があります。0~100%を少数まで表示するような煩雑な数値はあまり好ましくありません。また相性イーブンな状態は指標の範囲の中心(0~10であれば5)であるほうがより直感的です。四つ目の条件を満たすためには誰も分かり得ない真の値を仮定する必要があります。キャラの強弱によってキャラ間ごとの真の値は異なりますが基本的に勝率は50%になることが理想です。また先述した範囲の中心も考慮して今回は対戦数が少ない場合は5に近づくような補正を考えます。
信頼度に応じて勝率を5.0方向に補正する処理を行っている
ここまでの考察を踏まえて具体的にどのように補正しているか考えます。いくつか補正方法が考えられますが今回はなるべくシンプルにかつ先述した条件を満たす方法を考えます。それが「対戦数に応じた信頼度による重みづけを行った補正方法」です。以下に具体的な手順を紹介します。
試合数 n と試合数に応じた調整係数α を決定
例(ロジスティック型の重み関数):w = n / (n + k)
ここで k はスムージングパラメータ(例えば100)kの値は各キャラの使用率やレート分布に基づく信頼度に応じて設定される。
例:k = 平均試合数 × α
STEP1の値を代入し計算
k = 平均試合数 × α
w = n / (n + k)
補正スコア = w × 実スコア + (1 – w) × 5.000
信頼度が低いほど5に近づく
このwの決定方法やハイパーパラメータであるαの値によって計算結果は変わります(今回は一番シンプルな方法を紹介)が上述した方法であれば条件を満たしながら現在対戦ダイアグラムで表示されているようなデータが計算されます。以下に例を挙げます。
各パラメータの値は以下とする。
項目 | ケン | リュウ |
---|---|---|
実スコア(勝率) | 60% (=6.0) | 40% (=4.0) |
試合数n | 40 | 40 |
調整係数α | 1.5 | 2.5 |
ケン:
k=1.5×40=60
w=n/(n+k)=40/(40+60)=40/100=0.4
リュウ:
k=2.5×40=100
w=n/(n+k)=40/(40+60)=40/140≒0.2857
ケン → リュウ:補正スコア=0.4×6.0+0.6×5.0=2.4+3.0=5.4
リュウ → ケン:補正スコア=0.2857×4.0+0.7143×5.0≒1.14+3.57=4.71
例題の場合、この方法によって計算される補正スコアの和は5.4+4.71=10.11となります。実際公開されている対戦ダイアグラムと同じような結果になりました。
今回紹介した補正方法ではαの値を任意に決定する必要があります。またwの計算方法はあくまで一例で公式がどのような方法を採用しているかは不明です。補正方法を含めこの補正方法は私が個人的に考える一つのアイデアとしてとらえていただけると幸いです。
結論:対戦ダイアグラムにはユーザ考慮の数値が反映されている
この記事のまとめ
最後に今回の分析のまとめは以下のようになります。
- ユーザ目線で直感的にわかりやすい数値に変換している
- 対戦数が少ない組み合わせによる勝率の不安定さを補正している
- 具体的な補正方法を細かく特定することは不可能だが大枠をとらえることは可能
さいごに
今回は対戦ダイアグラムの数値がどのように計算されているかについて考察を行いました。この記事が対戦ダイアグラムを眺めて疑問に感じているプレイヤーの皆さんにとって少しでも役に立っていればうれしいです。この記事のほかにも今後ストリートファイター6の分析を行った記事を書く予定なのでこの良ければまた読みに来てください。またXでもこの記事についてのことやそのほかの分析を行っているので良ければ是非フォローをお願いします。最後まで読んでいただきありがとうございました。
コメント