& R$ r+ c6 l' t. ?4 B; C' I游戏地址:http://www.alawar.com/game/magic-encyclopedia-3-illusions/ / T, m+ `) r8 K0 |1 }
. \" s2 X! C2 ]& T% H- c: f& G1. & w- _, R; _2 r$ |: t
文件列表Magic Encyclopedia 3 Illusions list.txt
' {8 d8 U- Y0 M 包文件:主目录下game.dat
# R& U3 B+ C2 }5 i# ~' R" r# p 字幕文件:localization\lang.ini(带字的图片都有,囧)unicode编码 9 O7 l7 o( m2 y. g1 d6 s
设置:主目录下common.ini设置优先于game.dat载入的文件(如localiztion目录下的文件),经测试,common.ini设置的文件如不存在,不会再读取game.dat中的文件
4 ~9 F" A* J' }' a: f+ r* i" P/ |3 G9 q7 E, t% m
O. X' V2 Q; f: _$ D3 A3 e/ \2. 包文件格式分析
: B* V) n, } e8 ?: ^' I4 w8 G Winhex打开game.dat,文件头发现37 BD 37 4D——7½7m,Quickbms用7.7m格式解包,成功,内含fonts目录,为fnt字体和png图像
" x7 l! e7 ?( o: ?9 C% R& T. b0 R! Z# }. m; \4 d3 x" s% Z
; `. Y- T! D( E. X" e3. 免打包测试
+ l# s( H+ w- m, p+ D' ] 将解包文件放入data目录代替,会利用data目录文件自动生成game.dat,可利用common.ini文件设置优先读取的字体,即可实现免打包 , B; D8 N; D- t* ^
; `5 R+ q4 t- @( K
$ n' h/ J% o. @1 W5 I& O) @" j+ B F' P# z
c) k6 N& g/ z/ S( c
4. 图片字库分析$ s3 V( t. ?' C7 T8 m4 L! a* O; j
png为字符图库,Fnt为字库定义文件,明码,如COMIC18.FNT中:
$ q1 V- ~% U, f2 ?; {5 p( [$ J( Fchar id=67 x=16 y=55 width=7 height=11 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=07 N% ~ g5 m, H$ B# W/ g# b$ |
id为ascii码,x,y为字符左上角坐标,width,height为字符宽度和高度。后面的xoffset,yoffset,xadvance应是在游戏中显示时调整位置,因部分字符如B、I、_这些都有上下左右边的问题。9 h9 Z8 {4 I6 e* g9 o
|