最近又想到一个汉化的新思路,就是显示函数的移花接木法。 + i& u3 Y, A0 a5 k4 q
0 f y; y6 M9 ` Y+ Y, X对于一些采用图片字库的游戏,目前的所有汉化方法几乎都失效,因为自己构造一个中文的图片字库目前阶段几乎是不可能的。所以就有了以下这个想法。 $ U9 Z; W; g0 {; P2 \# l8 T
7 o; X: A. a- |具体思路如下
6 @, c, z% ^% }" l' b X* j6 g& W9 q4 ]
1.自己编写一个调用ExtTextOutW来显示字符串的试验小程序。
( h2 T3 z3 V' ]2 t; j Z在窗口里输出一个中文字符串。
. w6 {$ B$ E, k( n6 _4 P. o2.用OD进行分析,找到并分析清楚调用ExtTextOutW函数的汇编代码段。
/ y V( i ~2 l3.在要汉化的游戏里用OD找到调用显示函数的地方。
- [0 G7 G) s; F4.在要汉化的游戏里找到一段空白的代码段,如果空白的代码段不够长的话,要寻找不使用的函数,把它清空。
6 Y) F' z. l5 l |. L5.在空白的代码段出插入ExtTextOutW函数的汇编代码段 8 U$ N6 U- X" q p
6.在游戏里调用显示函数的地方进行修改,使其跳转到ExtTextOutW函数的汇编代码段,并且使字幕和显示位置被正确传递。
& Z% P* b* y7 K% g) f! K7.这样的话就实现了显示函数的移花接木
7 ?+ u9 |. E1 ?+ v. y3 A4 h
3 m% |3 v( e7 N; ^用这种方法,也许以前许多被认为不可能汉化的游戏将成为汉化可能,比如疯人院。
: @; v: m* s. G, x1 n8 m从理论上来说,这种方法可以汉化一切游戏。目前只是一个思路,尚需试验验证。 |