前一段时间看了一下真神秘岛,发现不多,暂时先把发现的东西写下来。" u$ W$ X/ v) F5 o) e' Z' b3 m8 ]
$ p: ^" \7 p9 o. ~: Q+ Q0 q- G% |游戏的包文件是*.dni,老外早就为我们开发好了解包器Riveal。* K' |) @8 V. ]3 n; R/ g8 ]: D+ ?
http://homepage.mac.com/rshayter/Riveal.html
' a5 \/ H+ @+ f+ F( ~* Z% Q' l7 j8 m
菜单的图片在某一个包中可以找到,应该可以轻松汉化。4 I. n5 P3 y! S5 c2 d
其他要汉化的东西就是为内嵌于游戏中的小窗口动画配上字幕了。
# J0 z' ^# K# v) Q经研究发现,该游戏是使用ddraw.dll的游戏。4 Z# {; \- t4 U0 I, V r8 X
所以有2个汉化思路。
& ^6 B9 O( ?% W& l) T* x
Y" R' B2 c" v# [1. 制作一个ddraw.dll的代理DLL,由于动画文件是独立存在的,用HOOK的方法在游戏读取的时候把动画文件ID写入内存共享文件,在代理DLL中读取再输出对应的文本,即可实现汉化。0 [9 K2 v$ @! n4 K" P4 T' u+ N
2. 使用内挂法,在文件读取动画文件的时候,把surface句柄和动画文件ID传给内挂DLL,在内挂DLL中往surface上写字即可实现汉化。此方法类似疯人院的汉化方法。
3 @+ ?$ H3 L2 h |