DLGファイルの欲しいデータの取り出しができたと思ったら、既にSDJ氏がエクスポータを公開していたという。
Raw Data Blockは、身に覚えのない値の場合はとにかくオフセットと思って問題無い模様。大体はリストになっている型なんぞを指す。Raw Data Blockの先頭からオフセットするとそれっぽい場所に飛ぶので、それを繰り返す。
構造体の各要素にはオフセットが無いのだが、Field Arrayで出てくるIndexの値を、構造体の先頭からオフセットするとアクセス出来る。
まだデータの少ないケースと多いケースしか試していないので、連休中にまともなのを作って全DLGファイルで試してみないと。RIMの解凍が手作業なのが面倒だが、RIMまで解析するのは多分もっと面倒だからやるしか。恐らく似たような感じで解析できるんだろうけど、圧縮されていたら大変だし。
で、RIMからDLGを取り出す面倒な作業を各人にさせるというのは酷なので、DLGファイルから必要なデータだけを中間ファイルとして出力しておいて、そのファイル群とTLKをSDJ氏のツールで作成したtxtを併せて階層構造で会話をプレビューできるツールを作ろうかと思っていたのだが。
まあとりあえず、特に面倒な問題にぶつからなければ作るだけ作ってみます。気長に。