第2回新人戦も、何もお手伝い出来ず。 主催者様、審判方、そして参加者の皆さんお疲れさまでした。 しかし参加人数19名とはすごい。
今回もお手伝い出来なかったので、何か説明してみようと思う。 今回はバジリスク必須の方法となっているキャンセル機動について。 詳しくは「続きを読む」の中に。
まずは確認から。 CHPの時間単位はフレーム(f)で、1フレーム=1/30秒だ。 シミュレーション中、×ボタンメニューの「戦闘更新速度」を「コマ送り」に設定すると、その名の通りコマ送りで戦闘を見ることが出来る。 この1コマの間が1フレームだ。
CPUはよほどのことが無い限り、LP−323Hを選ぶ。 これは実行速度が最大で、150C/Sの処理能力がある。 150C/S=毎秒150チップ処理、ということだ。 フレームになおすと毎フレーム5チップ処理、ということになる。 中型CPUは最大毎フレーム3チップなので、領域が狭く処理速度も遅く、その変わり少し軽い、とメリットが少なすぎる。 何気なく戦わせるのなら中型CPUでも気になることはほとんどないが、分岐が複雑になり、行動決定までに処理するチップが増えると飛翔物への反応速度低下を実感することもあるだろう。 以降はCPUにLP−323Hを積んでいるものとして話を進める。
チップ命令の「思考停止」は1/30秒単位でプログラムをストップさせる命令で、任意のフレーム数指定出来る。 ではSTOP1/30s(=思考停止1/30秒)は実行するとどうなるのか。 例えば、通常5枚のチップを処理出来るが、3枚目でSTOP1/30sが実行されるとどうなるのか。 実際に組んでみて、画面左上に表示されるCPUの処理をコマ送りで見てみると、そのフレームだけチップが3枚しか処理されないことが分かる。 チップ「思考停止」の効果は以下のようになる。 1、そのフレームの処理を終了させる。 2、その後、指定したフレーム数-1のフレーム数処理が停止する。
ここで重要なのが1の効果だ。 これにより、処理させるチップを調整出来る。 CHPでは、空中に浮く動作や着地硬直とダメージ中を除き、行動中に他の行動チップを処理すると、動作が上書きされ、新たに処理した動作を行う。 (これをうまく利用したのがスプー機と呼ばれる高速格闘二脚だ。) (スプー機についてはDumboさんの「ALICE掲示板」2007年7月27日の投稿に詳しい解説がある。) これは同一フレームでも起こる。 例えば、前ジャンプ(通過)→前ジャンプ射撃(通過)と並べておくと、弾があれば前ジャンプがキャンセルされて前ジャンプ射撃、弾が無ければ前ジャンプ射撃が実行されないので通常の前ジャンプとなる。 ただ、これらを普通に置いておくだけでは、前ジャンプがそのフレームの5枚目のチップに当たる場合、そのまま前ジャンプが実行される。 前ジャンプ射撃の実行は次のフレームになり、空中にいるため実行出来ない、という結果になる。 STOP1/30sを用いるとこれを防ぐことが出来る。 STOP1/30s→前ジャンプ→前ジャンプ射撃、とすれば良い。 このように処理速度を考えてチップを配置することをフレーム同期と言う(多分)。 SUBルーチンへの移行とその後のMAINへの復帰もSTOP1/30s同様、そのフレームの処理を終了させるため、SUB呼び出しを使うことが多いようだ。 または、処理を完全に5チップごとに分けて、どの分岐を通っても必ず同じチップ数にする、という方法もあるが、現実的ではないだろう。
長くなってしまったが、ここからが本題。 車両やホバー、飛行型の急速移動は加速フェーズと減速フェーズで出来ている。 例えば、搭載率130%付近のバジリスクでは、加速が1f〜7f、減速が8f〜12fとなっている。 バジリスクに急速前移動を実行させ続けると、急速移動12f+静止1fで平均時速は220km/hくらいだ。 この急速前移動を、急速前移動→STOP7/30s→前進→returnとして、加速フェーズでキャンセルして再び急速前移動すると260km/h固定になる。 このようにするのは、急速前移動中に急速前移動を処理しても、現在実行中と見なされ何も起こらないからだ。 急速前移動を前進でキャンセルし、そのフレーム内でさらに急速前移動でキャンセルしている。
40km/hの差なら大したこと無いと思われるかも知れないが、この速度差で飛行型からのビームの回避率が驚くほど上がる。 nas_Bさんがおっしゃっていたことだが、射撃モードの狙撃は良く当たるが、ゲームバランスのため、数フレーム前の場所に着弾するらしい。 つまり、その数フレームの間に機体1個分移動すれば当たらないことになる。 車両だと平均240km/hあれば大抵当たらない。 機体の小さいホバーならもっと遅くても良いのだろうが、ダークコフィン以外のホバーは300km/h以上で動けるため、気にする必要は無い。 ただ、これは横方向から撃たれた場合の話で、正面や背後から撃たれれば当然当たってしまう点は注意。
ローケンの急速移動は前半が減速で後半が加速のため、キャンセル機動は出来ない。 チァーイカの急速移動は全て加速のため、キャンセルする必要がない。 だが、急速移動後に急速移動をすると静止が1フレーム入ってしまうこと、急速移動チップ実行直後に急速移動が終了すると大きな隙となりえることからキャンセルするのもありだろう。 また、特殊動作1、2を7フレーム以内にキャンセルすると斜め前に移動しつつ高度が上がる。 高度100mでもさらに高度上昇し、最大120m近くまで上昇する。 速度は急速横移動より早く、機体が傾き被弾しにくくなるため、ミサイル回避に使われている。 7フレームでキャンセルするのは、8フレーム目に射撃するので、無駄な弾消費と熱上昇を抑えるためだ。 トライポッドの急速移動は加速1f〜13f、減速14f〜15fなので13フレーム以内にキャンセルするとチキンハンターの急速前移動より早くなる。 もともと機動力が高いので通常の急速移動で十分だが、前傾姿勢のまま飛び回るトライポッドはスピード感があり、見ていて楽しい。 マリアエレナの特殊動作3を1フレームでキャンセルすると搭載率130%付近でも時速700km/hという脅威的な速度を出せる。 ミサイルで一番早い大型ミサイルが時速650km/hほどなので、ミサイルをミサイルより早く動いて回避するという驚きの回避が出来たりする。
問題点として、急速移動や特殊動作を何度も行うため、燃費が非常に悪いことが挙げられる。 特殊動作を用いるものは特に燃料を消費するため、使うタイミングを考えないと、それまで無傷で回避していたとしても、後半燃料切れで停止しているところを攻撃され逆転されてしまうだろう。 この辺は何度も戦わせて調整する必要がある。
|