fc2ブログ
2017/04/23

蔵解析挫折しました。

蔵の解析やってみて思いましたが断言します。私には無理です。(ついでにjtales本体の解析も)
だってプログラムの動きを見てもどこでエラーメッセージのウィンドウAPIを呼び出してるのか全然わからないんだもん! なのでd2aファイルを解析してtexファイルを3000以内、d2aファイルを19999以内で読み込める方向で行きたいと思います。

んで武器やアイテムのアイコンを設定してるd2aを解析してみました。今回はセイラ魔法師のローブのアイコン0167.dtx.2606.zipを設定 している8689.d2aを読んでみました。

まずアイコンを設定しているだいたいのd2aファイルは最初の8バイトが共通のようです。

0E 02 00 00 00 00 00 00

d2dファイルだと最初の4バイトがテーブルの数だったけどd2aファイルも一緒なのかな?だとしたら46・・・?アイコン設定する 時の値はだいたい0~18だったので19(13)だと思ってたのですが・・・まあとりあえずこれは置いておきましょう。

次9バイト目から4バイトはファイルごとに違うっぽいです。

33 00 00 00

10進数表記だと51・・・3の倍数?

次の4バイトは多分識別コード含んでるかな?

01 00 00 00

17バイト目から4バイト

33 00 00 00

んー9バイト目と同じだな。

21バイト目から8バイトが他ファイルと共通っぽいです。(15バイト目を除く)

「11」 00 00 00 00 00 03 02

29バイト目が16、その次が00、さらにその次が16

16 00 16

10進数表記だと22。22かぁ・・・なんだろうこれ。

32バイト目から15バイト目

00 01 00 00 00 02 00 00 00 00 00 00 00 A7 00

A7は167・・・ん!?0167.dtx.2606.zipの0167じゃないか!?

次の 2バイト

21 0A

10進数表記だと2593。この後のデータをみる限り下記のバイナリがひとつのデータのようです。
A7 00 21 0A 00 00 10 01 00 00 00 04 00 00 16 00 16 00 01 00 00 00 02 00 00 00 00 00 00 00

この後データを見ていくとこのようなデータががあと2回繰り返されるようです。

A7(167) 00 2E 0A(2606) 00 00 10 01(272?) 00 00 00 04 00 04 18(24) 00 18(24) 00 01 00 00 00 02 00 00 00 00 00 00 00

A7(167) 00 2E 0A(2606) 00 00 18 01(280?) 00 00 00 04 00 0E 00 00 00 03 02 18 00 18 00 01 00 00 00 02 00 00 00 00 00 00 00

んー・・・なんだろう、まあ細部まで分からずともaaa.dtx.bbb.zipのaaaとbbbは変えられそうなので、とりあえずtexファイルの3000番以降に欲しいアバター装備がある場合はDACいじくってて2999番以内に収めましょう。もし有志がエラー検出を解除してくだされば本日のお話は無かったことに。

七色の硝子羽実装してみようと思いました・・・がしかしアイコンだけはどうにもならないですね。装備時のグラフィックはファイル名変えればいいですが、アイコンは全部167.dtx.zipにまとまってるので中身を入れ替えるくらいのことができないとダメかぁ・・・はぁ。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

コメント

非公開コメント