【ショバフェス】スコア計算式と実際に計算する方法
本記事では「SHOW BY ROCK!! Fes A Live(ショバフェス)」の「スコア計算式とその方法」を紹介したいと思います。
この記事はこんな人にオススメ
・ ステータスからゲーム内に表示されるスコアを計算したい
・ スコア計算式に興味がある
・ 楽曲・難易度によって決まる譜面係数に興味がある
以前の記事でもスコア計算式を取り上げていました。しかし、どれも各テーマについての調査や考察に必要な部分だけを切り取った形でした。
今回は「最終的なスコア計算式」を紹介すると共に、「バンド編成画面のステータスからライブ中のスコアを計算するまでの流れ」を紹介します。スコア計算式を見れば計算できるとは思いますが、各項目の補足と過去の記事の紹介も兼ねて丁寧に説明していきます。
それではいきます!
ステータスからスコアを求める計算式
各ステータスから各ノーツの最終的なスコアを求める計算式は以下の通りです。なお、端数処理は一部を除いて考慮しないため算出値は概算です。
- スコア = 初期スコア
x (1 + コンボ補正 + コンボUP割合合計)
x (1 + スコアUP割合合計)
x やりこみ設定倍率
x ノーツ判定係数 - 初期スコア = バンドステータス x タイプ一致係数 x 譜面係数 x ステージ効果係数
- バンドステータス:各メンバーの「ステータス+サポート値」を集計
ステータスからスコアを計算するまでの流れ
それでは具体的にステータスからスコアを計算するまでの流れを、例を挙げながら紹介していきます。
メンバーのステータスにサポート値を加える
バンドメンバーのステータスに自身のサポーターのサポート値を加えます。サポート値は「サポーターのステータス」と「サポートスキルの付与割合」から計算します(小数点以下は切り捨て)。これを各メンバーに対して行います。
リズム | メロディ | ハーモニー | |
---|---|---|---|
メンバーA(加算前) | 7000 | 3500 | 3500 |
サポーターA | 6000 | 4000 | 4000 |
サポート値(リズム50%) | 3000 | 0 | 0 |
メンバーA(加算後) | 10000 | 3500 | 3500 |
サポート値を加算したステータスはバンド編成画面やライブ前の画面で確認できるよ。これ以降に登場するステータスは残念ながら画面で確認できないよ。
サポート値を加えたステータスにタイプ一致ボーナスを加える
サポート値を加えたステータスにタイプ一致ボーナス(元の2割)を加えます。具体的には、メンバーのタイプがプレイする楽曲のタイプと一致していれば、そのメンバーの各ステータスに対して「1.2」をかけます。これを各メンバーに対して行います。
リズム | メロディ | ハーモニー | |
---|---|---|---|
メンバーA(乗算前) | 10000 | 3500 | 3500 |
メンバーA(乗算後) | 12000 | 4200 | 4200 |
なお、タイプ一致ボーナスについては下記記事で調査内容を紹介しました。
メンバーのステータスを属性毎にまとめる
タイプ一致ボーナスを加えたステータスをバンドメンバー内でその属性毎に集計します。集計されたステータスが最終的なバンドステータスです。
リズム | メロディ | ハーモニー | |
---|---|---|---|
メンバーA | 12000 | 4200 | 4200 |
メンバーB | 11800 | 4080 | 4080 |
メンバーC | 11760 | 3960 | 3960 |
メンバーD | 11640 | 3840 | 3840 |
メンバーE | 10000 | 3500 | 3500 |
バンド | 57200 | 19580 | 19580 |
ちなみに、このバンドステータスからタイプ一致ボーナスを外し、リズム、メロディ、ハーモニーの各値を足した値がゲームにも出てくる「総合力」だよ。
バンドの各ステータスに譜面係数をかける
バンドの最終的な各ステータスに譜面係数をかけます。譜面係数は楽曲・難易度によって決定される値です。こうして計算された値が各ノーツの初期スコアを求めるための基礎スコアです。
リズム | メロディ | ハーモニー | |
---|---|---|---|
バンドステータス | 57200 | 19580 | 19580 |
バンドステータス x 譜面係数 | 28600 | 9790 | 9790 |
なお、譜面係数を求めるには調査が必要です。その概要については以下を参考にしてください。
譜面係数は当然ながら公表されていませんが、楽曲・難易度によって決まっているはずです。
概算値で良いのであれば、1曲プレイすることでスコア計算式から求めらます(場合によっては初期スコア計算式でもOK)。真の値に近づけたいのであれば、色々なバンドで同じ楽曲をプレイして値を絞り込んでいくことができます。
また、譜面係数の絞り込みを行う前の準備として、スコア計算式で行われている全ての端数処理を解明する必要があります(上の方で紹介したスコア計算式は端数処理を考慮していません)。計算式に登場するパラメータが多いので端数処理のタイミングとその方法を調べるのは骨が折れそうですが…
そのように譜面係数を絞り込んだとして、その精度をどこまで求めるのかが最後の関門です。タイプ一致ボーナスやコンボ補正、ノーツ判定係数は調査の中でキリの良い数字が出て、色々な計算に使用しても問題ないことからそれぞれの値に着地させました。しかし、譜面係数は何度か求めてみましたがキリの良い数字にはならないため、どの精度まで求めるべきかがわかりません。ただ、譜面係数の真の値を求めるのが目的ではないので、ある程度は妥協しても問題ないと思います。
また、譜面係数に関連する内容については下記記事で触れていました。
基礎スコアにステージ効果係数をかける
各ノーツの基礎スコアにステージ効果係数をかけます。ステージ効果はステージオブジェクトを購入していくとその効果がアップします。こうして計算された値が各ノーツの初期スコアとなります。
リズム | メロディ | ハーモニー | |
---|---|---|---|
バンドステータス x 譜面係数 | 28600 | 9790 | 9790 |
上記 x ステージ効果係数 | 31460 | 10769 | 10769 |
なお、初期スコアについては下記記事から登場しています。
初期スコアはライブ中に確認できるよ。やりこみ設定が100%で50コンボ未満の時のスコアが初期スコアだったね。
初期スコアにコンボ補正・スキル効果を加える
初期スコアにスキル効果分を含むコンボ補正を加味し、さらにスキルによるスコアUP割合を加味します。式にすると以下の通りです。
初期スコア x (1 + コンボ補正 + コンボUP割合合計) x (1 + スコアUP割合合計)
リズム | メロディ | ハーモニー | |
---|---|---|---|
初期スコア | 31460 | 10769 | 10769 |
コンボ補正・スキル効果 を加味したスコア | 81003 | 27728 | 27728 |
なお、コンボ補正については下記記事で調査内容を紹介しました。
「コンボ補正の初期値は0でコンボ数が50の倍数に到達する毎に0.05ほど上昇する」ということでした。
また、スキル効果については下記記事で調査内容を紹介しました。
コンボ補正・スキル効果を加味したスコアにやりこみ設定倍率をかける
コンボ補正・スキル効果を加味したスコアにやりこみ設定倍率をかけます。
リズム | メロディ | ハーモニー | |
---|---|---|---|
コンボ補正・スキル効果 を加味したスコア | 81003 | 27728 | 27728 |
やりこみ倍率を加味した スコア | 113404 | 38819 | 38819 |
やりこみ設定倍率を加味したスコアにノーツ判定係数をかける
やりこみ設定倍率を加味したスコアにノーツ判定係数をかけます。
リズム | メロディ | ハーモニー | |
---|---|---|---|
やりこみ倍率を加味したスコア | 113404 | 38819 | 38819 |
ノーツ判定を加味したスコア | 94503 | 25879 | 12939 |
なお、ノーツ判定係数については下記記事で調査内容を紹介しました。
ノーツ判定係数は「PERFECT判定を6/6とすると、GREAT判定が5/6、GOOD判定が4/6、BAD判定が2/6、MISS判定が0/6」ということでした。
お疲れ様でした!これで画面に表示されるスコアの出来上がりです!
まとめ
今回は「最終的なスコア計算式」と「ステータスからスコアを計算するまでの流れ」を説明しました。丁寧に説明したと思いますので、概算ですがこれでスコア計算ができるのではないかと思います。
普段、私はこの手の計算は表計算ソフトで行なっています。MacユーザーなのでNumbersを使用しています。Numbersはマクロは使えませんがExcelライクに使えるので、Excelを使ったことがあれば比較的簡単に使えると思います。Macを持っていなくてもiPhoneやiPadを持っていれば無料で使用できますので、興味がある方は是非色々な計算に使用してみてください。
以上、最後まで記事を読んでいただきありがとうございました。
ディスカッション
コメント一覧
まだ、コメントがありません