前一段时间看了一下真神秘岛,发现不多,暂时先把发现的东西写下来。
! u( d, y' q8 B, \" b5 F
) g8 [( V8 a: y5 `游戏的包文件是*.dni,老外早就为我们开发好了解包器Riveal。
" f2 K/ q' m7 D$ b7 \6 ?$ @http://homepage.mac.com/rshayter/Riveal.html1 c3 d3 P- U$ z: F- [' j
0 x( n* I2 C. a/ G$ I$ i" i) N
菜单的图片在某一个包中可以找到,应该可以轻松汉化。, m0 D) `+ O0 v1 G
其他要汉化的东西就是为内嵌于游戏中的小窗口动画配上字幕了。' F1 V5 Q8 o% j
经研究发现,该游戏是使用ddraw.dll的游戏。* h- k- `: M( j1 k Z q/ q
所以有2个汉化思路。" K! Q ^5 O `+ v) z/ v# Z
- K& ?6 U/ c" k( Y& @! X# E# ^: z
1. 制作一个ddraw.dll的代理DLL,由于动画文件是独立存在的,用HOOK的方法在游戏读取的时候把动画文件ID写入内存共享文件,在代理DLL中读取再输出对应的文本,即可实现汉化。
5 k, j7 C$ n: H# a2. 使用内挂法,在文件读取动画文件的时候,把surface句柄和动画文件ID传给内挂DLL,在内挂DLL中往surface上写字即可实现汉化。此方法类似疯人院的汉化方法。4 K0 R" K [: u
|