前一段时间看了一下真神秘岛,发现不多,暂时先把发现的东西写下来。
# C1 \ ^4 s/ F: X c5 ~$ k- L5 i% }& P7 p! t# v. I
游戏的包文件是*.dni,老外早就为我们开发好了解包器Riveal。
" h2 P5 {% N @0 N. X6 h1 jhttp://homepage.mac.com/rshayter/Riveal.html
6 l5 S; y" K3 A1 F3 b' k4 M/ X$ l; d3 j% f
菜单的图片在某一个包中可以找到,应该可以轻松汉化。
% R5 d) p: Z% ~6 C$ L3 B其他要汉化的东西就是为内嵌于游戏中的小窗口动画配上字幕了。 t- |, {" N& J" P
经研究发现,该游戏是使用ddraw.dll的游戏。& l! a# n5 T3 l% f( c- ~
所以有2个汉化思路。4 }: m3 I# t* d& N
1 [! I) }$ y9 E& ~) m! S0 _1. 制作一个ddraw.dll的代理DLL,由于动画文件是独立存在的,用HOOK的方法在游戏读取的时候把动画文件ID写入内存共享文件,在代理DLL中读取再输出对应的文本,即可实现汉化。
# i9 U" U" Q. v: j& l2. 使用内挂法,在文件读取动画文件的时候,把surface句柄和动画文件ID传给内挂DLL,在内挂DLL中往surface上写字即可实现汉化。此方法类似疯人院的汉化方法。% @7 O1 w6 n& `4 _
|