Darkside(https対応しました)

2017年10月の記事

<< 前のページ | 次のページ >>

2017年10月26日(木) 21:38

調整したが遅い

 反射ドリフトでは、ダートを最小限に踏んで長い走行距離で高速突破するのと、ダートを踏みまくって短い走行距離で低速突破するのと、タイムは殆ど変わらない。しかし、邪魔カーとの相対距離は大きく変化する。
 すなわち、最小限のタイムロスで邪魔カーの再配置座標を操作できる。

 今回は、走行距離最小のインベタが良い感じ。

 邪魔カーに早く追い付くことが可能となり、抜いてからアウト側に移動しても右旋回の操作が間に合う。

 ただし余裕が少ないためスクリプトは動作しない。手動でアウト一杯まで寄せてから、絨毯爆撃ではなく単一走行ライン用に修正したスクリプトを使い、解候補を得る。
 しかしイレギュラーな走行のせいか、これまでと結果が違う。
 連続ヘアピンのまずは右旋回やった時点で、速遅判定の結果が広範囲にほぼ同一となり、最適走行ラインの目安が付けられない。

 ならばと片っ端から試すが、異様に遅い。
 邪魔カーの妨害が無ければラップ2410フレームで、邪魔カーの妨害を回避するための座標調整ロスがある場合はラップ2412フレームが目安だ。しかるに、4周目はラップ2413フレームになりそうな遅いペースなのだ。

 早遅判定では、ラップ2411フレームも可能っぽいのに、どういうことだ?
 単に早遅判定が誤差ありまくりという可能性はあるが、2412フレームに収まらないのは明らかにおかしい。

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

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

2017年10月25日(水) 21:24

調整可能調整必須

 ホームストレートでアクセルを抜くことで邪魔カーの再配置座標を変化させ、無事に反射ドリフト成功。

 しかし今度は、連続ヘアピンの入り口で邪魔カーが!

 次から次に襲い掛かる邪魔カーにはもう、呆れるしか無い。これが、ファイアーフィールドだ。長いだけのコースが、邪魔カーのせいで超絶難易度に化けている。人力実機プレイでも、敵車が邪魔で邪魔で邪魔過ぎる。当たり屋のごとく、狙い済まして進路妨害して来るのだ。
 何しろ敵車は普通に走っておらず、走ってるフリしてるだけである。一番邪魔になるタイミングで座標配置されている。動くパイロンを通り越して、動くサーキットだ。しかも大抵の場合次の5周目は最悪だから、ここからゴールまでが途轍もなく遠い。

 ファイアーフィールド以外の4コースに関する限り、邪魔カーの回避は頑張れば何とかなった。しかしここばかりは、邪魔カーの座標を能動的に調整しない限り、完全に詰む。
 再び、邪魔カーの再配置タイミングを調べる。パターンはこの前と同じようだ。反射ドリフト中に追い抜いた邪魔カーを、ある程度引き離すことで再配置される。すなわち、調整可能。

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

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

2017年10月24日(火) 21:33

座標乱数調整

 4周目の反射ドリフトが妨害される件について、同じパターンに陥った3周目を確認する。嵌った左と、突破パターンを見つけた右だ。

 突破パターンは、意図的に遅い走行を選択し1.5フレームほど遅延している。ガードビームに反射するタイミングは、更に遅れて3フレーム後だ。
 そこで4周目も、通常より3フレーム遅れてガードビームに反射するような走行パターンを探してみる。だが、それだけでは邪魔カーを回避できない。

 ならば、と邪魔カーの座標をモニターする。4周目の致命的に邪魔なこの敵車が、どのタイミングで再配置されるのか?

 すると、ホームストレートの途中で再配置されていた。

 これより少し前に邪魔カーを追い抜いているが、その後に彼我の内部座標が256以上離れると、抜き去った邪魔カーが遥か前方に再配置される。そしてそれが、ちょうど反射ドリフトで邪魔になる。
 重要なのは、特定座標通過による再配置ではなく、どっちも動いているマシンの相対距離がトリガーとなっているらしいこと。

 すなわち、こっちが意図的に減速することにより、再配置が発生する座標を調整できる。
 しかも、0.5フレーム分ぐらいの減速により、再配置座標も変化することが判明した。これにより、邪魔カーを邪魔にならないタイミングに追いやることが可能になった。

 同じことが3周目でも可能かもしれないと考えて確認したが、3周目は再配置が頻発するうえにホームストレート後の右旋回の途中で複数回の再配置が生じている。どうやら邪魔カーの相互座標の絡みで、トリガー発生タイミングがラップ毎に変化するようだ。
 4周目はちょっとアクセルを抜くだけで邪魔カーをどけることが可能だが、3周目は無理。既存の突破パターンは、かなりの偶然の上に成立しているようだ。

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

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

2017年10月23日(月) 21:20

同一パターン

 最初の右コーナーを曲がったすぐの場所を、地雷マシンが走っている。これは、停止ではなく低速走行している種類だ。
 抜くこと自体は容易だが、通常の走行ラインを完全に塞いでいるため、スクリプトが動作しない。解が得られない。そのため、 地雷マシン直前までのコーナー1つを抜けるスクリプトと、地雷マシンの先にある左コーナーを抜けるスクリプト2つに分割し、 両者の間は手動操作で地雷マシンを突破するという形になる。

 そして反射ドリフトでは、1周前と完全に同じパターンで邪魔カーが出現。これまた普通に反射ドリフトやろうとすれば、完全妨害 されてどうにもならない。

 敵車はマジメに走っておらず座標決め打ちで出現するため、こういう理不尽なことが起きる。
 今や最大の敵は、計算量ではなく邪魔カーだ。邪魔カー回避の試行錯誤にも膨大な計算リソースを要するのは確かだが、人間の発想力が無ければ計算だけじゃどうにもならない。

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

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

2017年10月22日(日) 19:50

解決策発見

 ホームストレートの左端を走行し、あるところまで直進したら右旋回を開始する。
 右旋回で邪魔カーに接触せずに済む、もっとも長い直進が可能になる操作パターンとは、いかなるものか?
 スクリプトに手を加え、最大可能直進座標を出力するようにした。
 邪魔カーに接触することなく右旋回しようとすれば、現状より内部座標で60ぐらい先まで直進可能でなければならない。

 普通に考えれば邪魔カーの座標は一定なのだから、途中で遅く走って1フレーム遅くすれば、追い付くのが8フレーム遅れるはずだ。彼我の速度比が8:9だからである。
 そして8フレーム遅れれば、内部座標で72も前進する。それだけで、邪魔カーは邪魔にならないはず。
 ところが、計算通りに行かない。邪魔カーはこっちの速度に合わせる性質もあり、意図的に遅く走っても追い付くのがそれほど遅れてくれないのだ。

 それでも突発的に有利な解が発生しないか片っ端から調べていたところ、発生した!
 余り期待せず半ば諦めていただけに、びっくり。

 邪魔カーの座標を確認すると、座標自体は同じだった。違うのは、邪魔カーが地雷マシンに化けていたこと。
 地雷マシンになると、速度が極端に遅くなるかまたは速度がゼロになる。だから、初期配置座標がこれまで通りでも、その後の座標はこれまで通りではない。

 右旋回を思い切り邪魔してくれた敵車が、この地雷マシンである。
 普通はこっちがゴールラインを通過して3フレームぐらい後に、この位置に突然出現する。そしてそのまま走行を行い、こっちと右旋回で絡んで来る。
 しかし特異解の場合、出現属性が地雷マシンになっていて、その場から動かない。だから、ここでさっさと追い抜くことができて、右旋回時には存在しない。

 邪魔カーの出現座標を乱数調整することはできないが、邪魔カーの種類を乱数調整することなら可能だったのだ!
 ただし、この邪魔カーの種類を決める乱数のメモリーアドレスは、不明である。だから、乱数調整可能とはいえ調整行為の効率は極端に悪い。あれこれ試して最後に、ここに地雷マシンとして出現するかどうかを確認するしかない。乱数調整が失敗してもそのことをただちには知る事が出来ず、延々とその後の走行を行うことになる。

 発見した特異解は、二股磁石地帯であえて右側を走り、地雷マシンを磁石脇で追い抜く走行である。そのため1フレーム弱遅くなる。しかし、これまではどう頑張っても15フレームぐらいロスしていたのだから、大戦果と言えるだろう。
 3周目ラップが2412フレーム(36秒18)に遅くなるだけで済む。

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

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

<< 前のページ | 次のページ >>

Darkside(https対応しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4