$ r) E2 ^8 i1 P+ q( u3 O游戏地址:http://www.alawar.com/game/magic-encyclopedia-3-illusions/ 8 E5 i9 `* [$ s T' k* B
- ~4 @) K3 q1 j( Y x1. % n* k* V* H; ^( E! q! ]
文件列表Magic Encyclopedia 3 Illusions list.txt
, k: [9 [. [* Q( p" ] 包文件:主目录下game.dat
7 A) }! y2 U" h% ]% } 字幕文件:localization\lang.ini(带字的图片都有,囧)unicode编码
; s) h0 q& |; k 设置:主目录下common.ini设置优先于game.dat载入的文件(如localiztion目录下的文件),经测试,common.ini设置的文件如不存在,不会再读取game.dat中的文件 % [, L, k- m L: {3 Q
+ L. b$ ]! K) R4 F' n" L- b7 [$ m9 d
' i z4 T1 C# ]. A! R" H
2. 包文件格式分析 , `4 R9 `8 U7 t9 \# Y$ A8 H9 d
Winhex打开game.dat,文件头发现37 BD 37 4D——7½7m,Quickbms用7.7m格式解包,成功,内含fonts目录,为fnt字体和png图像 4 }/ M8 I2 C% @% F
# {4 G$ c% s. J& p9 @) W9 H4 K
0 b) K; o1 J9 c8 s/ P5 d1 J/ V* u3. 免打包测试
6 X4 Z2 X3 m2 ~" U: B 将解包文件放入data目录代替,会利用data目录文件自动生成game.dat,可利用common.ini文件设置优先读取的字体,即可实现免打包
# b, S( q' o1 {4 p& |8 l/ B7 r" A5 L' e6 K- x
% j8 ?9 q k6 Q
" Z+ n0 Y0 @% c7 O# q, P6 e5 P
. D$ Y8 _7 J! p. X* `& K+ e4. 图片字库分析
7 Q8 n* @, X" m7 n& {0 ~ png为字符图库,Fnt为字库定义文件,明码,如COMIC18.FNT中:
/ C6 H/ ~% J, u& F" n7 }8 ?char id=67 x=16 y=55 width=7 height=11 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0
$ Y7 K; |# K1 e/ w2 l7 h4 Q id为ascii码,x,y为字符左上角坐标,width,height为字符宽度和高度。后面的xoffset,yoffset,xadvance应是在游戏中显示时调整位置,因部分字符如B、I、_这些都有上下左右边的问题。
4 L/ V3 k7 N) P* Z# k' K |