前一段时间看了一下真神秘岛,发现不多,暂时先把发现的东西写下来。
( F7 D$ n# l Z* b' i
* f+ p1 \! B6 j- b2 B2 ~& y游戏的包文件是*.dni,老外早就为我们开发好了解包器Riveal。* d3 L. z$ X6 P5 o- ~
http://homepage.mac.com/rshayter/Riveal.html% s4 Y& z- X) Z- }6 {+ g+ r" c3 e5 l
- ^ S' M; A7 I+ d4 S/ @* ~ m) X菜单的图片在某一个包中可以找到,应该可以轻松汉化。: H: E' p( N6 Y- O2 d$ }" p5 H
其他要汉化的东西就是为内嵌于游戏中的小窗口动画配上字幕了。
) P7 O0 B' k9 i3 I经研究发现,该游戏是使用ddraw.dll的游戏。( o. z5 u% N" v
所以有2个汉化思路。' Z' Y$ D6 g/ A. o+ F- \" V
, P; i4 E5 R, T# W8 b1. 制作一个ddraw.dll的代理DLL,由于动画文件是独立存在的,用HOOK的方法在游戏读取的时候把动画文件ID写入内存共享文件,在代理DLL中读取再输出对应的文本,即可实现汉化。
& T5 J5 F2 Z# _" |9 _4 b0 ~2. 使用内挂法,在文件读取动画文件的时候,把surface句柄和动画文件ID传给内挂DLL,在内挂DLL中往surface上写字即可实现汉化。此方法类似疯人院的汉化方法。: `! V! H' w- U! w( m
|