FC2ブログ
2018/06/08

d2aファイルを解析中その3

d2aについてスレの情報をまとめると下記のような感じでいいのかな?

実データ部分

1,2バイト目 dtxの番号
3,4バイト目 dtx内の番号
5バイト目 開始フレーム
6バイト目 不明?
7バイト目 左右反転
8バイト目 フレーム使用判定
9~11バイト目 不明?

8バイト目が00ならここで区切る。

12バイト目 不明
13バイト目 モーションが行われるフレーム数

14バイト目
背面:00、正面:04、右斜め後ろ:06、右:08、左斜め前:0A、左:0C、左斜め後ろ:0E、右斜め前:0F この辺りに状態(座り、待機、歩行etc)の指定もあるかも。

15~17バイト目 不明

ここまで調べるの結構大変だったかと思います・・・ひとまずお疲れ様です。さて出た情報を基に0167.d2aを覗いてみたいと思います。

ヘッダ部分はおよその検討はつけられそうですがそれ以降の実データ部分までのバイナリはだいぶ推測が困難です。 なので実部分だけを見ていきますが最初のモーション設定はdtx内部番号から推測するとおそらくセーフティエリア内の待機モーション(上向き)っぽいです。あれはアニメーションしないタイプなので下記のように一塊で設定されてる感じですね。

B6 00 00 00 00 00 10 01 00 00 00 0E 00 00 53 00 53

上記の3バイト目を試しに別の値に変えてセーフティ内で上を向くと確かに変えた値の画像に変わっています。

おそらくまとめた通りにバイナリを変更すればそのとおりになると思われると思うので、不明な箇所をいじって解析を進めたいと思います。データ部分を塊で見ていくとモーションの最後に「54 00 54」とか「53 00 53」みたいな感じで終わっています。(15~17バイト目)とりあえずここをいじってみたいと思います。

一番最初の待機モーションの「53 00 53」を適当に「FF 00 FF」にしてみますが・・・・・特に変化なし。いや変化はあるのかもしれませんがアニメーションしないから分からないですね。

次にいじる箇所は詠唱モーション(dtx内部番号でいうと99、16進数だと63)

「B6 00 63」でgrep検索かけたら6箇所見つかりました。

1.
B6 00 63 00 00 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 03 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 65 00 05 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 66 00 08 00 10 01 00 00 00 03 00 00 00 00 00
B6 00 67 00 0C 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 68 00 0E 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 67 00 11 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 66 00 13 00 10 01 00 00 00 03 00 00 00 00 00
B6 00 65 00 17 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 1A 00 10 01 00 00 00 01 00 00 53 00 53

2.
B6 00 63 00 00 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 03 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 65 00 05 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 66 00 08 00 10 01 00 00 00 03 00 00 00 00 00
B6 00 67 00 0C 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 68 00 0E 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 67 00 11 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 66 00 13 00 10 01 00 00 00 03 00 00 00 00 00
B6 00 65 00 17 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 1A 00 10 01 00 00 00 01 00 0E 54 00 54

3.
B6 00 63 00 00 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 03 00 18 01 00 00 00 01 00 00 00 00 00
B6 00 65 00 05 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 66 00 08 00 18 01 00 00 00 03 00 00 00 00 00
B6 00 67 00 0C 00 18 01 00 00 00 01 00 00 00 00 00
B6 00 68 00 0E 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 67 00 11 00 18 01 00 00 00 01 00 00 00 00 00
B6 00 66 00 13 00 18 01 00 00 00 03 00 00 00 00 00
B6 00 65 00 17 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 64 00 1A 00 18 01 00 00 00 01 00 06 54 00 54

上記の3つは魔法詠唱のみのモーション。下記のモーションはおそらく魔法詠唱→魔法発動のデータかと思われる。

4.
B6 00 63 00 00 00 10 01 00 00 00 0E 00 00 00 00 00
B6 00 69 00 0F 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 6A 00 11 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 6B 00 14 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 6C 00 17 00 10 01 00 00 00 09 00 00 00 00 00
B6 00 6C 00 21 00 10 01 00 00 00 09 00 01 00 00 00
0D 00 00 00 11 00 01 00 00 00 07 00 00 00 14 00 00
00 01 01 00 00 00 00 00 11 00 00 50 00 53
00 03 00 00 00 0C 00 00 00 00 00 00

5.
B6 00 63 00 00 00 10 01 00 00 00 0E 00 00 00 00 00
B6 00 69 00 0F 00 10 01 00 00 00 01 00 00 00 00 00
B6 00 6A 00 11 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 6B 00 14 00 10 01 00 00 00 02 00 00 00 00 00
B6 00 6C 00 17 00 10 01 00 00 00 09 00 00 00 00 00
B6 00 6C 00 21 00 10 01 00 00 00 09 00 01 00 00 00
0D 00 00 00 11 00 01 00 00 00 07 00 00 00 14 00 00
00 01 01 00 00 00 00 00 11 00 0E 52 00 54
00 03 00 00 00 0C 00 00 00 00 00 00 00

6.
B6 00 63 00 00 00 18 01 00 00 00 0E 00 00 00 00 00
B6 00 69 00 0F 00 18 01 00 00 00 01 00 00 00 00 00
B6 00 6A 00 11 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 6B 00 14 00 18 01 00 00 00 02 00 00 00 00 00
B6 00 6C 00 17 00 18 01 00 00 00 09 00 00 00 00 00
B6 00 6C 00 21 00 18 01 00 00 00 09 00 01 00 00 00
0D 00 00 00 11 00 01 00 00 00 07 00 00 00 14 00 00
00 01 01 00 00 00 00 00 11 00 06 52 00 54
00 03 00 00 00 0C 00 00 00 00 00 00 00

1.の「53 00 53」を「FF 00 FF」に変えてみる・・・が変化なし。では1.の6バイト目を全てFFに変えると・・・あ!上向いた状態で詠唱するとナヤが 消えましたね。もしかして・・・開始フレーム2バイト分だったり?とんでも ないフレーム数からモーションを開始させようとするけどスキップされている くさいですね。

本日はここまで



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

コメント

非公開コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: モーションについて 1

解析お疲れ様です!

ヘッダ部分がちょっと分かりづらいんですが下記のような感じであってますか?
1バイト目:モーションの塊の番号
2バイト目:上記の2バイト目?
3~4バイト目:不明
5バイト目:モーション塊形成数
6バイト目:上記の2バイト目?
7~22バイト目:不明

ここ2日間くらい仕事で解析する元気がありませんでしたが、また明日から頑張りたいと思います!

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます