冒险解谜游戏中文网 ChinaAVG

标题: Alawar游戏Magic Encyclopedia 3 Illusions汉化分析(作业) [打印本页]

作者: rendu2mai    时间: 2010-4-4 21:49
标题: Alawar游戏Magic Encyclopedia 3 Illusions汉化分析(作业)

7 ^, A6 ~2 j, e# X游戏地址:http://www.alawar.com/game/magic-encyclopedia-3-illusions/ 5 k" Q2 V7 P! \% ], _1 z
4 ?4 p; a3 W# j4 E
1. ' g- z; C, O! k8 J
文件列表Magic Encyclopedia 3 Illusions list.txt ; ]& S2 ]& ^% z" S6 _# \
       包文件:主目录下game.dat 9 [: Q! a% |/ \' c
       字幕文件:localization\lang.ini(带字的图片都有,囧)unicode编码
4 _$ I" V) Y* Z4 A6 M8 P7 ^. d       设置:主目录下common.ini设置优先于game.dat载入的文件(如localiztion目录下的文件),经测试,common.ini设置的文件如不存在,不会再读取game.dat中的文件 " _# H1 H6 t# Q: b6 R( p4 ?& p

4 y' s% e) x+ w4 e" F, K# x- r5 Z, b2 Q4 a# M, ]2 Q+ N6 O
2. 包文件格式分析 1 Z5 A! q: ?$ U' Z
       Winhex打开game.dat,文件头发现37 BD 37 4D——7½7mQuickbms7.7m格式解包,成功,内含fonts目录,为fnt字体和png图像
, f2 B; \; ^8 @5 q7 H7 Y5 D; u2 i3 U5 z
4 I1 u; m) a: h+ W; }1 Y( A& C
3. 免打包测试
5 g  z* d# ^) P  |+ J, v! G       将解包文件放入data目录代替,会利用data目录文件自动生成game.dat,可利用common.ini文件设置优先读取的字体,即可实现免打包
" {! A9 G5 g# _7 {; E
1 D. D) Y1 o% H$ u* Z[attach]15808[/attach][attach]15809[/attach][attach]15810[/attach] [attach]15823[/attach]
4 ^4 M/ p/ O$ g1 j* x- g8 Y$ S$ F/ P

) G, V& m1 T9 h6 W( [3 n0 r! z3 N4. 图片字库分析
7 `/ \2 c' k! A2 Q+ d* v1 m4 q       png为字符图库,Fnt为字库定义文件,明码,如COMIC18.FNT中:
4 m  H5 C; `( X. nchar id=67   x=16    y=55    width=7     height=11    xoffset=0     yoffset=4     xadvance=7     page=0  chnl=0
( Q0 y- T* v; x1 h$ D) h       idascii码,xy为字符左上角坐标,widthheight为字符宽度和高度。后面的xoffset,yoffset,xadvance应是在游戏中显示时调整位置,因部分字符如B、I、_这些都有上下左右边的问题。
4 W$ n9 K- ^# g8 i& h& D
作者: shane007    时间: 2010-4-4 22:09
继续分析,感觉快要实现汉化了。: q2 v( h* G/ q7 [
分析一下字库定义文件吧。
作者: scgame    时间: 2010-4-4 23:03
  1. chars count=238
  2. char id=32   x=0     y=0     width=1     height=0     xoffset=0     yoffset=30    xadvance=7     page=0  chnl=0
  3. char id=33   x=427   y=93    width=5     height=22    xoffset=1     yoffset=4     xadvance=7     page=0  chnl=0
  4. char id=34   x=384   y=149   width=9     height=9     xoffset=0     yoffset=4     xadvance=9     page=0  chnl=0
  5. char id=35   x=161   y=119   width=17    height=17    xoffset=-1    yoffset=6     xadvance=15    page=0  chnl=0
  6. char id=36   x=0     y=0     width=14    height=28    xoffset=0     yoffset=1     xadvance=15    page=0  chnl=0
  7. char id=37   x=338   y=25    width=22    height=22    xoffset=-1    yoffset=4     xadvance=21    page=0  chnl=0
  8. char id=38   x=361   y=25    width=22    height=22    xoffset=-1    yoffset=4     xadvance=20    page=0  chnl=0
  9. char id=39   x=401   y=149   width=4     height=9     xoffset=0     yoffset=4     xadvance=4     page=0  chnl=0
  10. char id=40   x=141   y=0     width=7     height=26    xoffset=0     yoffset=4     xadvance=6     page=0  chnl=0
  11. char id=41   x=149   y=0     width=7     height=26    xoffset=-1    yoffset=4     xadvance=6     page=0  chnl=0
  12. char id=42   x=362   y=149   width=10    height=10    xoffset=0     yoffset=4     xadvance=9     page=0  chnl=0
  13. char id=43   x=314   y=117   width=15    height=16    xoffset=0     yoffset=10    xadvance=16    page=0  chnl=0
  14. char id=44   x=394   y=149   width=6     height=9     xoffset=1     yoffset=21    xadvance=7     page=0  chnl=0
  15. char id=45   x=477   y=146   width=9     height=4     xoffset=-1    yoffset=15    xadvance=7     page=0  chnl=0
  16. char id=46   x=455   y=148   width=5     height=5     xoffset=1     yoffset=21    xadvance=7     page=0  chnl=0
  17. char id=47   x=193   y=0     width=16    height=25    xoffset=-1    yoffset=4     xadvance=13    page=0  chnl=0
  18. char id=48   x=157   y=96    width=15    height=22    xoffset=0     yoffset=4     xadvance=15    page=0  chnl=0
  19. char id=49   x=380   y=94    width=12    height=22    xoffset=1     yoffset=4     xadvance=15    page=0  chnl=0
复制代码
原来是这样明码定义的,问题是id 好像不等于ASCII码
作者: shane007    时间: 2010-4-4 23:12
id 好像不等于ASCII码 , l- U4 W; e7 H
  A+ n0 y; x; R( @8 n; V) y
你如何得出这个结论的?
作者: shane007    时间: 2010-4-4 23:14
请分析一下下面的第4个游戏,怪鸡系列9 ]$ Z  g+ K( Q
https://www.chinaavg.com/read.ph ... e&fpage=1#a
作者: scgame    时间: 2010-4-4 23:41
看ID,X,Y,在图片上找的两个字,好像并不是ASCII表中的上下关系
作者: beegame    时间: 2010-4-4 23:48
引用第5楼scgame于2010-04-04 23:41发表的  :2 ?" j( j  D/ u1 Y
看ID,X,Y,在图片上找的两个字,好像并不是ASCII表中的上下关系
" I' }2 ]- v, u. Z4 P6 A
的确是这样的
作者: rendu2mai    时间: 2010-4-5 02:54
标题: 字体图库定义
       png为字符图库,Fnt为字库定义文件,明码,如COMIC18.FNT中: ! k" V! K0 A) F6 T- [
char id=67   x=16    y=55    width=7     height=11    xoffset=0     yoffset=4     xadvance=7     page=0  chnl=0 8 l+ u6 Y4 d; S# ^+ |6 w' r
       idascii码,xy为字符左上角坐标,widthheight为字符宽度和高度
3 U" `; O% B0 B5 Z9 I9 O& [       后面的xoffsetyoffsetxadvance应是在游戏中显示时调整位置,因部分字符如BI_这些都有上下左右边的问题
) t8 w) ?2 y  d
! x% h" T9 |  l& j* [6 O  F( p8 f: Z2 D, |' D* C" S- @; L5 V6 v
[attach]15822[/attach]
作者: beegame    时间: 2010-4-5 11:36
挺复杂的,
作者: legalcrime    时间: 2010-4-25 22:06
这个游戏玩过了。汉化能实现不?




欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/) Powered by Discuz! X3.2