2014年10月16日木曜日

OP相殺の倍率


スマブラには連続して同じ技をつかうとダメージの減少が発生するOP相殺というシステムがあります。
スマブラXからは過去9回に一度もヒットさせていない技に5%のボーナスがつくようになりました。


普通に遊ぶ分には上のことだけを知っていれば十分なのですが、詳しく知りたい物好き向けにOP相殺について調べました。
細かい部分を調べるのには時間が非常にかかるため大まかな調査の結果となります。

現時点で、0.05のズレが起こる場合があることがわかっていますが、とりあえず調査結果として上げました。恐らくは回復配列の方も組み合わせることで、完全なものとなるとは思うのですがイマイチうまくいかず・・・。
間違っている部分があれば指摘していただけると助かります。


OP相殺について説明するためにまず減少配列と回復配列を調べる必要があります。

減少配列とは、攻撃力が最大(OP相殺倍率 105%)の技を、連続使用によって減少させる場合の場合のOP相殺倍率の推移です。
回復配列とは、攻撃力が最低(OP相殺倍率 52.9%)になった技を、他の技を連続使用する事によって回復させる場合のOP相殺倍率の推移です。

今作ではそれぞれ、
・減少配列
 [100](実質105)→[92]→[84.4]→[77.6]→[71.55]→[66.3]→[61.85]→[58.05]→[55.1]→[52.9]

・回復配列
 [52.9]→[60.9]→[68.5]→[75.3]→[81.3]→[86.6]→[91.05]→[94.8]→[97.8]→[100](実質105)

となっています。


ここから計算に用いる基本減少配列を導きます。
(100 - 92で8、92 - 84.4で7.6と言った風に計算したもの)

・基本減少配列
d1[8]→d2[7.6]→d3[6.8]→d4[6.05]→d5[5.25]→d6[4.45]→d7[3.8]→d8[2.95]→d9[2.2]

となります。
これら用いることで簡易なOP相殺倍率の計算が行えます。
(現状誤差あり)



<計算方法>
スマブラではヒットさせた技の履歴を9回分記憶し、OP相殺の計算に用いています。
技を当てた時に、過去9回分の技から倍率を計算した後、当てた技を履歴に追加します。
9回分の履歴がたまっていた場合、最も古い履歴を削除し当てた技を履歴に追加します。

弱を技A、その他の技をBとします。
例えば技を[AABAAAABA]という順で行った場合、履歴には古い技から格納されるので、[ABAAAABAA]と保存されます。
履歴にAはそれぞれ1,3,4,5,6,8,9番目にあることになります。
ここから次のAにかかるOP相殺の倍率を導くことができます。

Aがある番目をnとしたとき、100から基本減少配列のdnの数値の和を引いたものがOP相殺倍率となります。
上の例では、1,3,4,5,6,8,9番目にAがあるので、
d1[8]、d3[6.8]、d4[6.05]、d5[5.25]、d6[4.45]、d8[2.95]、d9[2.2]の和を100から引くことになります。
和は35.7なので100 - 35.7 = 64.3%が次の弱のOP相殺倍率となります。

図表で示すと、

履歴 h1 h2 h3 h4 h5 h6 h7 h8 h9
A B A A A A B A A
基本減少配列 d1[8] d2[7.6] d3[6.8] d4[6.05] d5[5.25] d6[4.45] d7[3.8] d8[2.95] d9[2.2] 合計
計算 8
6.8 6.05 5.25 4.45
2.95 2.2 35.7

といった感じになります。

0 件のコメント:

コメントを投稿