Seaside Laboratory

Posts

KFX の飛び道具ヒット分岐とヒットストップ

拡張エンジンでは飛び道具でもヒット分岐が可能なので、「物を投げて相手に当たったらその場に落下する」といった演出をすることができる。ただ、飛び道具は KFX の仕様を引きずっているので扱いには気をつけなければならない。

ヒット分岐は名前が示すようにヒット時に分岐することなので、必ずヒットストップが発生する。飛び道具はヒットストップ中でもアニメーションが進行するという特性があるので、分岐先のモーションがヒットストップのフレーム数だけスキップされてしまう。行頭のフレーム数が小さいと 1 行まるごとスキップされるといったことも起きる。

対策のひとつとして考えられるのは、スキップされても問題ないモーションを書くという方法。通常の飛び道具は、

  • 移動が一定方向
  • アニメーションが繰り返される

という単純な構造なので、多少のスキップが発生したところでさしたる影響はない。つまり、スキップの影響を受けない単純な動作にすればよいということ。

もうひとつはヒットストップの間だけ待機するという方法。ヒット分岐先にヒットストップと同フレーム数の間、何もしないモーションを用意する。その行以降なら影響を受けないので好きなように動作させることができる。ただ、設置型攻撃のヒットなど、思わぬタイミングでヒットストップが発生してしまった場合、意図せぬスキップが起きてしまうので、完全な回避ができるわけではない。

説明を簡素にするために「モーションがスキップされる」と書いたが、厳密にはパラメータ毎に挙動が違い、絵の指定のように反映されるものもあれば、振り向きのように処理されないものもある。ベクトルはさらに複雑で、KFM と KFA はヒットストップに関わらずベクトルの速度設定が行われるが、XPlus は反映されない (バグ?) といった、エンジン間の違いもあったりする。

KFA や XPlus ユーザーだと N2 あたりを使って回避するのが当たり前だったりするのだろうか。