吹っ飛ばし力
=((0.07*(攻撃力*(1-(1-OP相殺倍率)*0.3)+2)*(蓄積[敵]+(攻撃力*OP相殺倍率))/(重さ/100)+18)*R.E+R.A)*(1+(蓄積[自]-35)*0.0013
※状態によってはここに補正がかかる
(しゃがみ状態:0.85倍、スマッシュホールド状態:1.2倍?、対地メテオ:0.8倍?)
※クッパjrのダメージ補正は(蓄積[敵]+(攻撃力*OP相殺倍率))の攻撃力にかかる。
(本体1.15倍、クラウン0.88倍)
※ほかほか補正
式の(1+(蓄積[自]-35)*0.0013)
の部分がほかほか補正にあたる。
蓄積を代入するとき、35~150の範囲ではそのまま、
35より小さければ35、150より大きければ150を入れる。
吹っ飛び速度(補正なし吹っ飛び速度)
=吹っ飛ばし力*吹っ飛び率*0.9*0.72
吹っ飛び硬直(単位:F)
=INT(吹っ飛ばし力/2.5)-1
吹っ飛ばし力が80以上、つまり補正なし吹っ飛び速度が51.84(=80*0.9*0.72)を越えると倒れ吹っ飛びになる。
それより小さければ立ち吹っ飛びとなる。
立ち吹っ飛びの実際の速度は、補正なし吹っ飛び速度-1.11で求められる。0度技での吹っ飛びはこれに当てはまらない。
0度技のほか、361度技は吹っ飛ばし力が60未満のとき0度吹っ飛びになる。
倒れ吹っ飛びの実際の速度は、補正なし吹っ飛び速度に吹っ飛び補正力を合成することで求められる。吹っ飛び補正力はキャラの重力設定から求められるが、まだキャラごとの細かい数値は判明していない。
式はXと同様なら、
SQRT((吹っ飛び速度*COS(角度))^2+(吹っ飛び速度*SIN(角度)+吹っ飛び補正力)^2)
となるが、Y軸補正(重力)のみでは計算が合わない場合があるのでX軸での補正もある可能性がある。
また、スライドパッドの入力による補正は倒れ吹っ飛び時のみかかる。↑最大で1.09~1.1倍、↓最大で0.91~0.92倍程度。
倒れ吹っ飛びは200や300を超えてくる高速条件下では謎の補正がかかり計算と大きくことなることがある。通常の対戦で影響のある範囲ではあまり関係がない。
吹っ飛び硬直(単位:F)
=INT(吹っ飛ばし力/2.5)-1
※
蓄積:蓄積ダメージ [自]は自分の、[敵]は攻撃対象の攻撃前の蓄積ダメージ
R.E:リアクション影響値(%)
R.A:リアクション付加値
OP相殺倍率:ワンパターン相殺の倍率(%) 未使用ならボーナスがついて1.05 (105%)
<計算例>
ピーチ(80%)が標準体型のMii(30%)に初使用(OP相殺倍率:105%)の空N(攻撃力13、R.E0.9、R.A20)を当てた場合。(標準体型のMiiは重さ100)。
これらを代入すると、
((0.07*(13*(1-(1-1.05)*0.3)+2)*(30+(13*1.05))/(100/100)+18)*0.9+20)*(1+(80-35)*0.0013)*1*0.9*0.72
となる。
計算すると、約52.7となる。51.84よりも大きいので倒れ吹っ飛びであることがわかる。
そして実際の速度を求めるには更にここから補正をかけるのだが、まだ判明していないのでここまで。
2014年10月22日水曜日
2014年10月18日土曜日
キャラの重さ
| キャラ名 | 重さ |
| クッパ | 114 |
| ドンキーコング | 111 |
| デデデ | 109.5 |
| リザードン | 107.5 |
| ガノンドロフ | 106 |
| クッパJr. | 104 |
| サムス | 104 |
| アイク | 103.5 |
| ワリオ | 103.5 |
| ロボット | 103 |
| C.ファルコン | 102 |
| リンク | 102 |
| ヨッシー | 102 |
| Mii (太さ最大) | 101 |
| シュルク | 101 |
| ロックマン | 101 |
| Mii (標準) | 100 |
| ルカリオ | 99.5 |
| Dr.マリオ | 99 |
| マリオ | 99 |
| Mii (太さ最小) | 98.5 |
| むらびと | 98.5 |
| ルイージ | 98.5 |
| WiiFitトレーナー | 98 |
| ピット | 98 |
| ブラックピット | 98 |
| ソニック | 97.5 |
| パックマン | 97.5 |
| ルフレ | 97.5 |
| ゲッコウガ | 97 |
| ネス | 97 |
| ディディーコング | 96.5 |
| トゥーンリンク | 96.5 |
| ダックハント | 95.5 |
| パルテナ | 95.5 |
| マルス | 95 |
| ルキナ | 95 |
| ピーチ | 94.5 |
| シーク | 92.5 |
| ゼルダ | 92.5 |
| ファルコ | 91 |
| リトルマック | 91 |
| ゼロスーツサムス | 90.5 |
| メタナイト | 90 |
| ピカチュウ | 89.5 |
| ピクミン&オリマー | 89.5 |
| フォックス | 89.5 |
| ロゼッタ&チコ | 89 |
| カービィ | 88.5 |
| Mr.ゲーム&ウォッチ | 87.5 |
| プリン | 84 |
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 |
といった感じになります。
2014年9月29日月曜日
Xでの各行動のスティック入力設定
Xでの各行動のスティック入力設定
内部数値を見たものと自分で確かめたものが混ざってる
入力値は認識される最低値
入力値=スティックの角度や距離ではない(ゲーム内で補正をかけている)
X=横 Y=縦
Xでは27まではデッドゾーン(認識しない範囲)として設定されていたので、28以下の調整は不可能だった
受付時間はスティックを入れてから何F以内に入力値以上に到達すればその行動を行うかの設定
主にスマッシュ入力に設定される、先行入力での設定も
キャンセル行動の場合は異なることがある(ダッシュキャンセル横スマなど)
歩き
入力値 X18以上
振り向き
入力値 X-25以下
ダッシュ
入力値 X80以上
受付時間 2F
振り向き(ダッシュキャンセル)
入力値 X-80以下
走行
入力値 X62.5以上
走行反転
ブレーキ部分 入力値 X-37.5以下
走行部分 入力値 X62.5以上
台端落下
入力値 X76以上
しゃがみ
入力値 Y-32.5以下
しゃがみ歩き
前 入力値 X30以上
後 入力値 X-30以下
はじきジャンプ
入力値 Y66.25以上
受付時間 4F
はじきジャンプ(ダッシュ,走行時)
入力値 Y56.25以上
受付時間 4F
ジャンプ踏み切り後の大ジャンプ派生
入力値 Y30以上
急降下
入力値 Y-66.25以下
台降り
入力値 Y-68.75以下
受付時間 6F
空中浮遊台抜け
入力値 Y-56以下
その場緊急回避
入力値 Y-70以下
受付時間 4F
横緊急回避
前 入力値 X70以上
後 入力値 X-70以下
受付時間 4F
横A
入力値 X25以上
上シフト 入力値 Y28以上
下シフト 入力値 Y-28以下
上A
入力値 Y25以上
下A
入力値 Y-25以下
横S
入力値 X80以上
上シフト 入力値 Y28以上
下シフト 入力値 Y-28以下
受付時間 2F
上S
入力値 Y66.25以上
受付時間 4F
下S
入力値 Y-66.25以下
受付時間 4F
空中A
前 入力値 X25以上
後 入力値 X-25以下
上 入力値 Y25以上
下 入力値 Y-25以下
横B
入力値 X60以上
上B
入力値 Y55以上
下B
入力値 Y-55以下
振り向きつかみ
入力値 X-37.5以下
起き上がり
前 入力値 X20以上
後 入力値 X-20以下
横受け身
前 入力値 X20以上
後 入力値 X-20以下
内部数値を見たものと自分で確かめたものが混ざってる
入力値は認識される最低値
入力値=スティックの角度や距離ではない(ゲーム内で補正をかけている)
X=横 Y=縦
Xでは27まではデッドゾーン(認識しない範囲)として設定されていたので、28以下の調整は不可能だった
受付時間はスティックを入れてから何F以内に入力値以上に到達すればその行動を行うかの設定
主にスマッシュ入力に設定される、先行入力での設定も
キャンセル行動の場合は異なることがある(ダッシュキャンセル横スマなど)
歩き
入力値 X18以上
振り向き
入力値 X-25以下
ダッシュ
入力値 X80以上
受付時間 2F
振り向き(ダッシュキャンセル)
入力値 X-80以下
走行
入力値 X62.5以上
走行反転
ブレーキ部分 入力値 X-37.5以下
走行部分 入力値 X62.5以上
台端落下
入力値 X76以上
しゃがみ
入力値 Y-32.5以下
しゃがみ歩き
前 入力値 X30以上
後 入力値 X-30以下
はじきジャンプ
入力値 Y66.25以上
受付時間 4F
はじきジャンプ(ダッシュ,走行時)
入力値 Y56.25以上
受付時間 4F
ジャンプ踏み切り後の大ジャンプ派生
入力値 Y30以上
急降下
入力値 Y-66.25以下
台降り
入力値 Y-68.75以下
受付時間 6F
空中浮遊台抜け
入力値 Y-56以下
その場緊急回避
入力値 Y-70以下
受付時間 4F
横緊急回避
前 入力値 X70以上
後 入力値 X-70以下
受付時間 4F
横A
入力値 X25以上
上シフト 入力値 Y28以上
下シフト 入力値 Y-28以下
上A
入力値 Y25以上
下A
入力値 Y-25以下
横S
入力値 X80以上
上シフト 入力値 Y28以上
下シフト 入力値 Y-28以下
受付時間 2F
上S
入力値 Y66.25以上
受付時間 4F
下S
入力値 Y-66.25以下
受付時間 4F
空中A
前 入力値 X25以上
後 入力値 X-25以下
上 入力値 Y25以上
下 入力値 Y-25以下
横B
入力値 X60以上
上B
入力値 Y55以上
下B
入力値 Y-55以下
振り向きつかみ
入力値 X-37.5以下
起き上がり
前 入力値 X20以上
後 入力値 X-20以下
横受け身
前 入力値 X20以上
後 入力値 X-20以下
登録:
投稿 (Atom)