未だ車両の格闘から逃れる術が見つかっていない。 今のところ、ソフトのスパゲッティ化が進みすぎて、作っている自分でも把握出来ていないため中身を整理している。 ループに使う領域の確保という名目もあるので、無駄な所はどんどん削っていく予定。
さて、今回またしても有力な情報をいただいた。 情報をくださったStand.kさん、髭レッドさんに感謝。
前回と同じ話になってしまうが、Stand.kさんからいただいた「ジャンプ中に各種条件判断をする」を自分なりに噛み砕いて解釈し、 「対格闘動作を1フレームでも早くとれるよう最接近戦ルーチンの直前でジャンプ中であれば、ジャンプが終了までループさせる」 という形で取り込むことにした。 しかし、領域が足りず組み込むことが出来ない。
そこで、今回髭レッドさんからいただいたWaitチップを使うという方法を搭載出来るか色々試してみた。 現在作成中の機体は変数を初期処理のスイッチ、対飛行型集中ロックと2つしか使っていない。 ロケット壁スイッチは撤廃した。 オプションの制御も、全てソフトの最初に行なっている。 つまり、ジャンプ中に判断する項目がないのだ。 とすれば下手なループにするよりは、Waitチップを使ったほうが早く行動出来る可能性がある。 実際、ループとWaitチップで目立った差違は感じられなかった。
Waitチップであれば、行動可能になったフレームに5枚のチップを処理出来る。 ループの場合最小の3チップループでも、2チップ無駄に消費する可能性がある。 Waitチップ後、5チップ以内に行動を取れば、最速で判断し行動できる。 はずである。あくまで机上の理論だ。
今後は、Waitチップを踏ませた場合と、ループで回した場合、またループで伏せなどの行動をとらせた場合、どれが早く行動可能になるか調べてみる予定。 全て同じフレーム数で次の行動が出来るなら、ガードさせれば予測射撃に対する抵抗力が少し上がるし、Waitチップなら省チップ化出来る。 明日から少しずつ試してみよう。
|