最近又想到一个汉化的新思路,就是显示函数的移花接木法。
$ \& n5 v; U$ V2 P
% W- _2 I o0 p. W; V+ x# L9 j对于一些采用图片字库的游戏,目前的所有汉化方法几乎都失效,因为自己构造一个中文的图片字库目前阶段几乎是不可能的。所以就有了以下这个想法。
- ?" P$ @, U# b. g" Z0 s3 x7 E8 u% e9 y# G s* C
具体思路如下
( g7 k3 Y* f3 ]8 `) p# {. G4 y
. r2 S* q5 _+ i5 ?1.自己编写一个调用ExtTextOutW来显示字符串的试验小程序。
5 [& ]. J( E6 i7 Q3 D在窗口里输出一个中文字符串。 6 f* V% }! s4 S9 a4 d
2.用OD进行分析,找到并分析清楚调用ExtTextOutW函数的汇编代码段。
3 l5 ~: u4 d, ? q( W( A3.在要汉化的游戏里用OD找到调用显示函数的地方。 # @. ]1 {- d4 F5 l( E
4.在要汉化的游戏里找到一段空白的代码段,如果空白的代码段不够长的话,要寻找不使用的函数,把它清空。
! Q8 a3 l) q% y( H. v5.在空白的代码段出插入ExtTextOutW函数的汇编代码段
6 n* K8 U8 V) [4 ^: s6.在游戏里调用显示函数的地方进行修改,使其跳转到ExtTextOutW函数的汇编代码段,并且使字幕和显示位置被正确传递。
6 x& |5 q% V( b( p% ~" u) E7.这样的话就实现了显示函数的移花接木
$ W2 X. ^! o0 T& A6 \, b; A* _$ b- k7 [
用这种方法,也许以前许多被认为不可能汉化的游戏将成为汉化可能,比如疯人院。 8 w8 h: D9 Y& B6 z0 s, e
从理论上来说,这种方法可以汉化一切游戏。目前只是一个思路,尚需试验验证。 |