ごちゃペディア

はなまるデジタル創作紀行(DTM、TAS、いろいろな技術)

TAS動画を作ろう2007 Part.1 〜TASで用いる機能の数々〜

2007年時点の情報です。現在の最新情報からは乖離している可能性があります。また、後年に執筆したTAS用エミュレータの機能紹介とオーバーラップしているので、そちらを読むと良いかもしれません。

先回は動画の記録方法をざっと眺めました。今回はTASで使われる記録補助機能について簡単に説明します。TASVideos / Using Emulator Toolsに近い内容です。

ショートカットキーの類は大抵変更可能です。使いやすいようにカスタマイズすると良いでしょう。以下の説明では一般的なものを書いていますが、一部エミュレータでは当てはまらないかもしれません。相当する機能を探してみてください。

追記(Rerecording)

基本中の基本、ステートのセーブとロードを用いて動画のやり直しをおこないます。ロード回数がいわゆる追記回数(Rerecord count)です。通常ロードはF1〜F10、セーブはShift+F1〜Shift+F10に割り当てられています。また、動画が読み取り専用の状態になっているときには、ステートのロードはおこなえません。Shift+8などで記録状態を変更してください。

作成途上の動画の記録を再開するのにも追記を用います。動画を再生し、続きを書き足したいところでスナップショットをセーブ、ムービーの状態を書き込み可能にして、先ほどセーブしたスナップショットをロードすれば、その位置から動画記録を再開できます。

エミュレータの不具合により、ステートの読み書きが原因で動画記録のタイミングがずれる(desyncする)ことがあります。設定変更で回避できるようでなければ、失敗の直前からやり直すという単純な方法で動画を記録していくことになるでしょう。こういった事態による損失を軽減するためにも、動画記録にはこまめな再生確認を伴うべきです。

スロー(Slowdown)と早送り(Fast Forward)

+キーで動作の高速化、-キーで動作の低速化をおこなえます。Tabキーで早送りをおこなえます。

一瞬の隙も許さないような動画を作る場合、スローはあまり使われません(代わりにコマ送りが用いられる)。早送りはムービーを特定位置まで急いで再生したりするのに役立ちます。

コマ送り(Frame Advance)

\キーでコマ送り、最小単位の操作がおこなえます。1フレーム分の動作の後、ポーズ状態になります。押しっぱなしにするとそれなりの速度で動作します。まじめなTAS動画を制作する際には欠かせない機能です。

入力表示(Input Display)

,キーを押すと入力表示の有無を切り替えられます。オンにすると入力されたキーが画面に表示されます。押されているキーを再確認や、他の人のプレイで使われている技の把握に有効です。

フレームカウントの表示(Viewing Frame Count)

.キーを押すとフレームカウント表示の有無を切り替えられます。オンにするとムービー上の現在位置が表示されます。確実な時間測定がおこなえるので、高速な手段の検討、他の動画との比較などに役立ちます。

Autofire(自動連射)とAutohold(自動押下)

連射を必要とする状況では、連射つきのジョイパッド側を使うのではなく、エミュレータの自動連射機能を使うべきです(確実最速な連射が可能)。自動押下機能は指定のキーを押しっぱなしにしておく機能で、あってもなくても良いように思えるかもしれません。しかし、余分なキーを押さなくていい方が操作が楽ですし、疑似多人数プレイ動画の作成など、多くのキーを同時に押す必要性が出るときには、必須の機能となります。

これらの使い方はエミュレータごとに結構異なります。特定のキーを押すことで特定のボタンの状態を変更できるもの、状態変更のためのキーを押しながら設定対象キーを押して設定をおこなうものなど、いろいろです(私がSnes9xを使う際はAuto-fire、Auto-hold、Clearのキーを割り当て、Frame Advanceを交えながらそれらを使っています)。

メモリ監視(Memory Watch)

ゲーム内のメモリ(変数)を監視することで、外部からは見えない各種情報を知ることが出来ます。これは動画の最適化作業を楽にします。

エミュレータによってはこの機能は存在しません。存在するエミュレータの場合、メモリアドレス(改造コード)の検索機能の近くにあるか、デバッグメニューの中にメモリマップビューアがあるかだと思います。用途や利用法はTASLabo / Memory Searchなどをご覧ください。

改造コード(Cheat)

TASで改造コードを用いることはルール違反です。しかし、TASのために改造を加えた特殊な条件で実験を行うことは有用です(ルート検証時に体力を無限にするなど)。

検索方法と利用の仕方は他所の有用なドキュメントで学ぶことをおすすめします。探し方に関してはTASLabo / Memory Searchで学ぶことが出来るでしょう。

TAS動画を記録する前には、改造コードが入っていないかどうかチェックするようにしましょう。

その他

エミュレータ外の機能をいくつか紹介だけしておきます。

バイナリ編集(Hex Editing)

ムービーファイルを直接ヘキサエディタなどで編集し、キー入力の切り貼りをおこなうことです。

エミュレータの同期タイミングはシビアなので、そう簡単に何でも切り貼りできるわけではありません。たとえば「DKC2のTASでサウンドをステレオに切り替えるのを忘れた、バイナリ編集で対処しようとしたが、どうしても動きがずれてしまって無理だった」という実例があります。

ボット(Bot

Wikipedia:ボット(ゲーム)のことです。ただしTASの場合、ボットを使うまでもなく通常のプレイを超越した動きが可能であるという点で、TASのボットの機能はオンラインゲームなどに使われるそれとはやや異なると思われます。主に「運良く素早く動ける入力の模索」などに使われると思われますが、実際に使ったことはないので確実なことはわかりません。

ボットを利用した動画は非常に稀です(例:BisqBotを使ったロックマンのTAS動画、参考スクリーンショット)。ボットを作成するためには、ゲーム内部でおこなわれるあらゆる動きを知り、それに基づいたプログラミングをしなければいけません(例:Rockman / Mega Man Source Code)。そのために必要な技術と労力を考えれば、ボットを使った動画が少ないことに自ずと納得できるのではないでしょうか。

あとがき

少々余談も挟んでしまいましたが、これでTASで使われる機能を使った動画が作成できるでしょう。ここまでわかれば一流のTAS動画を作成することも遠い話ではありません。あとはよりよい動画を作成するための経験を積むのみです。

以降、一般的に用いられるトリック、ゲーム固有のリソースの探し方、aviなど一般形式の動画の作成方法などに触れていく予定です。