希望通过以下的归类和总结,使大家对汉化方法的大分类有一个清晰的认识。; U% C" O$ A! s0 |$ M( H
& |% R" h9 f( |0 s4 ^) O1 D' y9 E) Q
1.傻瓜式汉化法; |0 ^0 Z; D2 s
(1)纯翻译汉化法
# t5 k% X1 O s; U; f( ? 这种汉化方法最简单,前提是游戏的字幕是用双字节或UTF-8编码保存的,也就是我们所说的U码游戏。
, |, p1 @+ M F, q- Z9 g4 n2 W 只要翻译西文字幕,仍然用原来的U码保存,即可实现汉化。# S& I( w+ q' V5 C' D1 Z
论坛上发布的汉化补丁中有相当一部分就是属于这一种的。
. Y4 p* B6 |' l: x0 {
3 }8 V7 T+ g6 P% g( c2 R(2)纯PS汉化法8 j4 \* [3 W- t. r; I
这种汉化方法也是最简单的,常见于小游戏,前提是游戏的字幕都是用图片的形式来保存的。 Y- p1 {4 y. t5 ^4 c- W
把图片PS为中文的即可实现汉化。
$ F+ l- y* B1 P8 [) a" f7 z) Z6 o& _/ N. I2 F( Z0 F8 J9 U
2.源代码级汉化法+ m9 z, w0 H+ O9 h: R8 i
一般来说,只有原游戏开发公司才会使用这种方法汉化,因为只有他们有源代码。
3 v# c6 P, V% B* t% j- _8 z4 b 据我所知, 即使是代理公司做汉化,也不会得到源代码,而是得到一些资源文件,汉化以后由开发公司整合到游戏中去。民间汉化基本没有使用这种方法的。不过,下面说的基于模拟器的汉化法是一个例外。
2 T0 N& V8 I) T; B+ f; r3 B3 v) j( V! }0 n, O$ Q
3.基于模拟器的汉化法; |; N4 f- P4 a! Z# g% O8 c
这是源代码级汉化法的一个特例。拿scummvm模拟器举例来说,scummvm小组向游戏的原作者取得了某些游戏的源代码以及使用和修改许可,在此基础上,我们再做一些修改,即可实现汉化。, A% E, i1 W7 C
疾速天龙和断剑系列的汉化实现就是一个很好的例子。0 `, k! B d6 C% B! n, B
+ k, N7 y; A9 a; e
4.API HOOK 汉化法! p6 @4 P* R* ?; a2 c" F+ q
通过HOOK某些关键的windows API函数,比如extTextout.Textout, MultiByteToWideChar等.修改其中的关键参数来实现改变文字编码,单字节转双字节的功能,从而实现汉化。
5 X. V+ v+ r3 o9 l$ w1 C1 P' S 用这个汉化法的游戏不少,如南希系列,午夜夺命等。
$ N" a/ ]4 d* X- [8 I2 b: y, |; p# T7 Z5 J
5.内挂式汉化法. ^9 R, K5 K0 k! }1 W" l% @
向游戏的进程内注入一个DLL,把游戏显示字幕的各种参数传递给这个DLL,从而使游戏显示出中文字的汉化方法。通常要结合汇编级的调试和修改,算是难度比较高的一种汉化方法。8 F1 L6 X0 ^: V, _
疯人院的汉化就是一个经典的例子。
! W- ^* J z! M" E& F( y# o/ x: v! T- M. m* j0 S+ F
6.汇编级补丁代码汉化法
6 Q3 y3 P, m2 q1 d4 d 这个方法是汉化一些图片字库游戏的比较正统的汉化方法。
7 j* D, ^# j7 z1 v" J' {& O' J 在汇编级增加中文的码表,以及单字节到双字节的转换代码,再增加中文字库等等,即可实现汉化。
1 }+ m: O' t1 \/ [" m! C7 [ 基本上图片字库游戏都会使用这种汉化方法,包括很多图片字库的小游戏。: C! @+ {+ j f* ?- P5 ?( n3 R6 g
比如那个虚拟村民3的汉化示例里就用了这种汉化方法。
: h1 e, y3 l4 m1 ]7 t5 T( T7 @+ n8 C# T n+ Y6 `7 O
7.特定游戏引擎汉化法0 I, {) q0 G+ u& A; J
这个很好理解,某个游戏引擎一旦有一个游戏研究出汉化方法以后,采用相同游戏引擎开发的游戏就都可以用这套方法来汉化。典型的例子是WME游戏引擎。
! [& S2 e J, L4 \; D, V' A
. ^) U0 @+ k$ _8.基于日文版,韩文版游戏的汉化法. c4 \: @. F) i+ r% l! A9 r
为什么游戏机游戏的汉化这么多?答案很简单,因为游戏机游戏有很多日文版。
8 j: ?- I9 ~1 l+ O+ W 日文版是双字节的,汉化起来相当容易,只要处理好字符边界检查问题即可。
9 @6 D/ D" x" i4 \* [2 b* r PC日文版 AVG不多,举个例子就是赛博利亚1吧。* ]. u% F5 E$ d! p4 h3 x3 \) {: J
! j7 M7 G! |1 v) c! i: R4 h7 O% r
9.新型汉化法
% h4 E) W9 X* f( B3 R(1)代理DLL汉化法# j7 }% `2 @3 M; F
(2)纵向点阵模版汉化法
: z+ m2 l4 ?8 ](3)化木成林汉化法
0 o: |$ N4 ?& U3 Z7 R7 j, C2 c) B
汉化方法正在不断地进化之中,各种新的汉化方法不断地被发明出来。
( d8 K8 ?$ b( W4 A4 b% b2 G" S5 T 以上是我发明的几种新型汉化法,具体我就不详细说了。6 h ]% I' ^) l' a+ P; V
只想告诉大家几句话,法无定法,一切皆有可能。
. l, R5 \# j. Q; V0 Z3 T4 i( ^ 既要充分借鉴和学习前人的汉化经验,又要在前人经验的基础上不断创新。
* p6 T$ |( V- T/ o) m 并不是说前人说做不到的事就一定做不到的。/ o) P8 K2 }) G* W, S6 F; f
2 c- L# l+ N! P7 N6 U3 F0 x! Y
10.基于特定游戏的特定汉化法. j# l' t1 D, N/ }
对于一些特定游戏,有时候我们会结合游戏的情况想出一些特别的汉化方法。$ L' A1 k/ [( w) G3 Q9 K
7 j2 z: v; l& M! U. A4 @
11.综合汉化法
; l& m/ [- c7 x% w2 s" j5 s* u一般来说,很多游戏的汉化都不止使用了一种汉化方法,往往是多种汉化方法的综合运用。 |