ずらし・速度&角度変更・重力補正メモ

「ずらし・速度&角度変更・重力補正メモ」の編集履歴(バックアップ)一覧に戻る

ずらし・速度&角度変更・重力補正メモ - (2016/11/19 (土) 01:26:02) のソース

いずれきちんとページを作る予定。
#contents(,fromhere=true)
----
**ずらし
-移動距離
--HSずらし:2
--オートずらし:0.65
--ガードストップずらし:0.66
HSずらしは、ヒットストップ中有効な入力が行われたフレームにずれる。

オートずらしはHSが終了した後=吹っ飛びの1F目に入力があればずれる。
ただし電撃攻撃のみヒットした瞬間にもずれる(オートずらしが2回行われる)。

オートずらしは''ヒットストップ中には発生しない''ので、オート"ヒットストップ"ずらしという名称は現象に忠実ではない。
私は「オートずらし」と呼ぶことにしたい。
こっちの方が短いし。

半月ずらしなど連続でHSずらしをするときには、forでもDXの↓のシステムが生きている。
[[http://dx.smashbr0s.com/sdi2/]]

ざっくり説明。図は気が向いたら作ります。


----
スティックの入力域は
「右・上・左・下・右上・左上・左下・右下」
のエリアに分かれている。
上下左右エリアの広さは基準方向を中心に約±20°で、残りが斜めエリア。
エリアの正確な角度に該当する解析値は見つかっていない。

斜め方向エリアはスティックの入力と同じ角度にずれる。
例:30°に倒せば30°方向にキャラが動く。

上下左右エリアはスティック縦横の大きい成分だけが有効になり、小さい方は切り捨てられる。
例:15°に倒すと「ずらし距離 * cos15°」だけ真横にずれる。

一度HSずらしを入力すると、上/下/左/右のどれか新しい成分が入るまでスティックの入力は無効になる。

例えば一度右上エリアに入力した場合、次に有効になるのは「左」か「下」の成分が含まれた入力に限られる。
つまり、次に右エリアに倒しても新しい成分は入っていないので何も起こらず、
右下に来た時に「下」という成分が入ってその入力がはじめて有効になるという仕組みである。

よって、右にずらしたい場合は±20°のラインをちょっと超えるように、スティックを往復させるのが一番よいということになる。なお、斜め方向を中心にしてずらそうとすると新成分を入れるためにスティックを非常に大きく動かさねばならず、効率が悪い。


----
**速度変更
-MAX:1.095倍
-min:0.92倍
実際の倍率は、多分
 増加:1 + 0.095 × sinθ
 減少:1 - 0.08 × sinθ (※θは正)
で求められる。

技の角度に関係なく、上に倒すほど増加、下に倒すほど減少する。

<調査方法>
MAX/minを2倍/0.5倍に変更、角度変更を無効。(なんとなく重力補正も無効にした)
Wiiリモコン横持ちで上下・斜めを入力して撃墜%から吹っ飛ばし力比較で倍率を調べた。

はじめはGCコンで検証していたが、斜め下45°に入れた時に想定よりもかなり大きく(角度換算で5°くらい)速度が減少する計算になってしまった。斜め上は大体式の通り。Wiiリモコンだと斜め下45°も理論通り。

手持ちのGCコン×2、クラコンPRO、HORIクラコン(スマブラ仕様ではなくもっと古いもの)で試したがいずれも速度減少が大きかった。特にGCコンの片方は角度換算で10°くらいのずれに。

一応5°くらいならコントローラーの特性ということで片付けられそうだが、全部がこうだったのでスマブラ側にも原因があるのかもしれない。


----
**角度変更
最大で9.7402°(=0.17rad)変更できる。
一番効くのが吹っ飛びに対し90°にスティックを倒した時。

変更角度は、多分
 0.17rad × sin(θ-α)
で求められる。
θ:スティックの角度、α:技の角度。

<調査方法>
最大変更角度を30°に設定、90°・45°技をGCコンの八角形で角度変更して変更後の角度を見積もった。

ところで、Wiiリモコン横持ちで斜め方向に入力して角度変更すると以下のような意味の分からない挙動を取った。不具合なのか?
-45°技を右下/左上に変更すると、0°/90°方向に飛ぶ。今回の設定では30°しかずれないはずなのだが…
-90°技を右/右上に変更したときの変わり具合がほぼ同じ。


----
**重力補正
-吹っ飛び初速 = KB * 0.03   ←ゲーム内の計算
-重力補正:5 * (g-0.075)   g:各キャラの重力値
2つの式に出てくる定数3つはすべて解析値で読み取れている。

Xでは重力補正は吹っ飛び速度の縦成分だけにかかっていたが、forでは横方向にも何かの補正を考えないと計算が合わないことが初期の頃から判明していた。

<調査方法>
重力補正を無効(定数=0)、および通常時
終点化WiiFitスタジオ中央・CPU操作でソニックの横スマを当てた時の撃墜%
|体重79族|重力値|補正なし|通常|h
|フォックス|0.19|97|92|
|オリマー|0.068|97|98|
|カービィ|0.06405|97||
|ピカチュウ|0.075|98||
重力補正なしピカチュウだけ他3体と値が違うが、体重が同じでも1%のずれがある組は他にもある。多分やられ姿勢の問題。

重力値の大きいキャラは横にも飛びやすくなるのが分かる。
重力値が0.075より小さいオリマーは、補正をかけることで吹っ飛びが小さくなる。

縦成分に限らず吹っ飛び速度そのものに補正がかかっているとしてみたがやはり合わない。

定数を色々いじって調査を続けていきたい。

ちなみに横方向の吹っ飛びかたに作用しそうなパラメータとして空中抵抗があるが、重力補正のない状態で↓のようになるのであまり関係はないように思える。
|キャラ|体重|撃墜%|空中抵抗|h
|メタナイト|80|98|0.012|
|ゼロサム|~|98|0.008|
|ワリオ|107|114|0.04|
|アイク|~|115|0.009|


----
**コメント
#comment()