Darkside(リンクエラー修正しました)

<< 前のページ

2017年4月22日(土) 21:01

バグだらけ


 再びやって来た、左右の連続コーナー。何でもないように見えて、スクリプト実行に時間が掛かり過ぎるTAS的に厄介な場所である。ここで、邪魔カーの妨害を受ける。極めて厄介な位置に出現しやがった。

 スクリプトをそのまま動かすと、解が全く得られない。


 イン側には抜くことが可能な空間があるものの、走行ラインがキツくなり旋回し切れない。どう頑張ってもガードビームへ突っ込む。
 しかしスクリプトの動作を見ていると、明らかにアウト側からなら抜けるパターンがある。ところが、アウト側から抜けそうになると、スクリプトは続行を断念し次の操作パターンを試行してしまう。

 なぜ、アウト側から抜けないのか?
 その原因を追究すると、このスクリプトには想像以上に多数のバグが存在すると判明。
 大きく分けて2系統あり、1つは旋回が早過ぎるのか遅過ぎるのかの判定。これは旋回タイミングをバイナリサーチする関係上、致命的に重要である。そしてもう1つは、連続コーナーを抜け切ったかどうかの判定。
 いずれも、座標や速度変化で判定するが、これが面倒。X座標やY座標の座標軸と平行に走行する場所ではないため、座標の扱いが難しい。


 これほどのバグがあったとは!と自分でも呆れながら次々に虫退治し、ようやくクリアになるとスクリプトはすんなり地雷マシンをアウトから抜き去ってくれた。

 華麗に速い走行ラインで連続コーナーを突破すると、地雷マシンに追い付くタイミングも少し手前になり、それを回避するための走行ラインも意外にムリがない。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

2017年4月21日(金) 21:55

ハイライト


 後門の連続ヘアピン手前も、邪魔カー回避の修正が必要。

 ガードビームすれすれに寄せれば回避できるが、通常のスクリプトでは車線変更を可能な限りゆっくりと行うようになっている。言うまでもなく走行距離を短くするためである。
 しかしそのために、左に寄せ切る前に邪魔カーに追い付いてしまい、接触する。
 これも自動処理は面倒なので、初期時点での左旋回を手動でカットして向きを調整するしかない。


 ファイアーフィールドのハイライトは、後門の連続ヘアピンをフルブレーキで反射させずに旋回し、そのままガードビームの上を突っ走る右旋回へ接続する部分だと思う。

 TAS製作やると、操作の許容誤差が良く分かる。ここは許容誤差が小さく、手動実機プレイでの難易度は相当に高い。ただし究極のタイム短縮を求めるのではない場合、許容誤差を超えても遅くなるだけで致命傷ではない。
 究極を求める場合、ヘアピン旋回完了時点の僅かな座標差により、続く長々とした右旋回の状態が激変する。
 後半は曲率の問題からガードビームを外れるのは仕方ないが、中盤までは延々とガードビームをケズりつつ走行して欲しい。しかしそれを実現する条件は、かなり微妙で実現は苦労する。

 あれこれ試したところ簡易判定は無理で、実際に右旋回を開始する直前にその手前の直進走行の座標で判定するのが効果的と判明。これにより見込みの薄い初期状態を直前で排除できる。すると、見込みの薄い初期状態を早期に捨てることができて、直前のスクリプトが出力した解候補を多数試せる。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

2017年4月20日(木) 21:04

想定外への対応


 これでスクリプトは出揃った。ゴール直前用にあと1つだけ作成せねばならないが、それまでは既存スクリプトの動作試験みたいなものだ。初期条件が異なれば、スクリプトが動かないことが良くある。そういうトラブルをせっせと潰す作業が続く。

 3周目に突入してすぐ、地雷マシンを回避できなくなった。
 ホームストレートでは、邪魔カーを回避できなくなることは滅多にない。地雷列の外側に飛び出して来ることがまずないため、地雷列の外側を走れば衝突しない。それがここで衝突した理由は、地雷列の外側に移動するのが遅れたためだ。
 邪魔カーが無い場合、長大なホームストレートのどこで移動するかは自由である。そこでスクリプトではとりあえず32フレーム直進してから移動するようにしていた。それをすぐに移動するように変更すると、衝突せずに済むようになった。


 ヘアピンに向かう手前の左コーナーも、地味に難物。

 2周目はどうってことなかったが、3周目は右への切り返しが遅れて解が出て来ない。
 これは左旋回のやり過ぎで、すぐあとの右旋回が間に合わない。ここの僅かなラインの差で、左旋回が過剰になるかそうならないかが決まる。自動処理は困難であり、この3周目のように駄目な場合は、手動で左旋回フレーム数を減らして初期状態を作り直すしかないようだ。

 本番マスタークラスでの製作を楽にするため、ムービーデーターを手動で編集する必要が無いように頑張っている。だが、どうしても人間の判断と手動編集が必要になる場合は残る。


 反射ドリフトの最適解は、明らかに2周目と異なる。
 邪魔カーが無ければ、これぐらいが最速のようだ。
 ダートの抜け際もまた、2〜3フレームは手動で設定した方が良い。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

<< 前のページ

Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4