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

2013年11月24日(日) 18:51

luaさんに作って貰ったTAS

 MAME-rr では手軽に動画を作成できる。

MAME-rr missile -aviwrite missile.avi
のようにコマンドラインで起動すると、ミサイルコマンドを読み込んで即そのまま
AVI ファイルを出力してくれる。キーファイルではなく、普通の動画ファイルである。だから、処理落ちを気にしつつ外部ツールを使わなくてもいい。

MAME-rr missile -lua missile.lua -aviwrite missile.avi
のように更に lua スクリプトも指定できる。これにより、ミサイルコマンドを読み込むと同時に指定の
lua スクリプトを実行してくれて、更にすべて動画ファイルになる。
 lua スクリプトの実行に時間か掛かってスローになっても、記録された AVI
は問題なく通常速度で再生される。

 lua スクリプトの実行を、すべて録画しつつ行うようにした。
 スマートボムを撃ち漏らした場合、そのAVI ファイルをコマ送りして外れっぷりを確認。それに基づいて
lua スクリプトに微調整を施す。こうして改善を加え、偶然いい感じにプレイされるのを待つ。
 ゲーム中は、コイン投入とスタートボタンだけ手動操作せねばならないが、それ以外はすべてスクリプトに丸投げである。内部的に
dsync だらけであり、偶然で狙いが外れる。全自動でありながら命中の保証がないため、見守っているとまるで自分でプレイしているかのようにスリリング。

 スマートボムは、3フレーム先を狙うのがベストっぽい。
 照準の1ドットずれとかランダムに入る謎のメモリー破壊に加えて、更に恐ろしい問題がある。爆煙は最初の数フレームが0ドットで、その後まで半径2ドットに広がる。この時点で直撃していれば、スマートボムを破壊できる。だが、爆煙は5エリアに分かれていて、1エリアずつ順番に動かされている。よって、爆発時にどのエリアが処理対象になっていたかによって、半径2ドットに広がるタイミングが変わるのだ。最早と最遅の差は、4フレームに達する。
 爆煙が広がり始めるタイミングは、爆発の瞬間が基準になっているのではない。だから、等速直線運動しているスマートボムでさえ、撃ち漏らさない保証がない。もう無茶苦茶である。とてもTAS製作をうんぬんできる現状ではない。

 それでも幸いにして、何とか鑑賞可能な録画が得られた。


 当初予定通り、追記回数はゼロである。未来予知を使っていない。
 1900行の lua スクリプトによる、完全自動プレイを録画したものだ。リアルタイムで提示される情報だけを使って、動いている。 

 今回かなり苦労したが、解析結果や作成した lua スクリプトは、将来 dsync
しない MAME-rr が登場した場合にも非常に役立つと思われる。貴重な財産だ。

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

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

Comments

TrackBacks

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

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4