ところが、復帰してみたら使えなくなってました><
mulフォーマットがuopフォーマットに置き換わって、もうmulフォーマットでのアップデートはしないみたい。
なので、InsideUOなんかはもう動きませんね。
その後継ツールとしてのUoFiddlerは対応している模様。
UoFiddlerでart.mul/artidx.mulの内容を見ると、なるほど、過去のインデックス最大値だった0x3ffe(だったかな)の馬以降にもグラフィックが追加されています。要するにインデックス容量が足りなくなったので、(開発陣としては仕方なく?)フォーマット変更に踏み切ったというところでしょうか?
ではどうしたら?とちょこっと調べてみると
こちら
のLegacyMULConverter-v4.rarを利用しろ、ということらしいです。
幸いにも、ソース付きです^^
さすがRunUO!!!
ちょろっとソースコードを斜め読みしたところ、uoclistにも利用できそうです。
さて復習。
mulフォーマットの仕様はこちら。
artidx.mulのフォーマットを抜き出すと
3.2 ARTIDX.MUL
This file contains an index into ART.MUL. To load a specific tile number in ART.MUL, simply seek BNum * 12, read in the index tile data and use Lookup to find the tile within ART.MUL.
ARTIDX.MUL
Index Record (12 bytes)
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
Lookup | Size | Unknown |
DWORD Lookup - Is either undefined ($FFFFFFFF -1) or the file offset in ART.MUL
DWORD Size - Size of the art tile
DWORD Unknown - Unknown
DWORD Size - Size of the art tile
DWORD Unknown - Unknown
うろ覚えなんだけど、artidx.mulのファイルサイズは12*0x4000で固定値、0から順番にインデックスを割り振り、各インデックスのバイト数は12、先頭4バイトがart.mulに格納されている画像データのオフセット値(上記Lookup)、次の4バイトがデータサイズ(Size)、になる。
なので、mulフォーマットベースで単純に切り株変換したい場合には、artidx.mulのLookupを変換させたい画像のオフセット値に書き換え、Sizeを変換させたい画像のデータサイズに書き換えるだけでよい、だったよな~?
あとはどうやって変換作業を実施するかだなぁ。うらうらツールと同じようにGUIで作業できることが理想だけど、無理っす><単純に被変換/変換のIDを書いたテキストファイルを実行時に読み込む、でいいよね???
0 件のコメント:
コメントを投稿