希望通过以下的归类和总结,使大家对汉化方法的大分类有一个清晰的认识。0 g* w" @4 R7 |& N; M) M
. F5 ~; e7 v% L5 }1 K$ p
% A" m* i- X" R3 g0 S2 `1.傻瓜式汉化法3 h$ i' t- U* R% ?; ^
(1)纯翻译汉化法
3 A) |3 e) c2 V; N8 j 这种汉化方法最简单,前提是游戏的字幕是用双字节或UTF-8编码保存的,也就是我们所说的U码游戏。3 x' r, T0 P7 C% J5 z9 U% ?
只要翻译西文字幕,仍然用原来的U码保存,即可实现汉化。" U# y. n9 K* z" U2 A7 J& Y& T8 e
论坛上发布的汉化补丁中有相当一部分就是属于这一种的。
6 D, Z/ @. W9 I; H& L5 [5 Q! }) @6 ?8 f( v3 ?
(2)纯PS汉化法- H% V+ G+ P) P) h5 {
这种汉化方法也是最简单的,常见于小游戏,前提是游戏的字幕都是用图片的形式来保存的。
5 e+ W. S$ M1 I6 q' R' u! S 把图片PS为中文的即可实现汉化。2 w4 m" d: Q7 L$ ~
+ `0 G$ n4 x' I# G, d p) p$ V2.源代码级汉化法! L, u/ e5 _% `( Q
一般来说,只有原游戏开发公司才会使用这种方法汉化,因为只有他们有源代码。
' Y. L- e5 A! f$ T 据我所知, 即使是代理公司做汉化,也不会得到源代码,而是得到一些资源文件,汉化以后由开发公司整合到游戏中去。民间汉化基本没有使用这种方法的。不过,下面说的基于模拟器的汉化法是一个例外。
& v/ _5 r) \# N! }( v3 H/ w
0 e2 B' b" K% `) e5 I1 X3.基于模拟器的汉化法
! i* y/ @- R1 Z0 P& G6 K. R 这是源代码级汉化法的一个特例。拿scummvm模拟器举例来说,scummvm小组向游戏的原作者取得了某些游戏的源代码以及使用和修改许可,在此基础上,我们再做一些修改,即可实现汉化。, v# s4 g+ c3 M, x7 \. z8 x
疾速天龙和断剑系列的汉化实现就是一个很好的例子。
$ O; L* m$ a( k9 j
. z: \9 Q, V$ ~3 f4.API HOOK 汉化法6 f; M; z7 [2 G" N( s
通过HOOK某些关键的windows API函数,比如extTextout.Textout, MultiByteToWideChar等.修改其中的关键参数来实现改变文字编码,单字节转双字节的功能,从而实现汉化。8 G3 O4 i" {" ]0 Y% k
用这个汉化法的游戏不少,如南希系列,午夜夺命等。0 h' q4 W" X& q6 a- M; J
, E" B8 V* U `8 C5.内挂式汉化法
3 S+ H# e6 U' @% g w2 e- w# J: `( M* o$ M8 c 向游戏的进程内注入一个DLL,把游戏显示字幕的各种参数传递给这个DLL,从而使游戏显示出中文字的汉化方法。通常要结合汇编级的调试和修改,算是难度比较高的一种汉化方法。
$ E9 Y3 R2 {1 R- T 疯人院的汉化就是一个经典的例子。
+ H( A6 S( _' h5 y
6 e0 M5 ]! | P2 z- C) {6.汇编级补丁代码汉化法
/ ^, E9 z3 M0 Z4 g0 p w 这个方法是汉化一些图片字库游戏的比较正统的汉化方法。
( Q3 J$ E1 s( q7 h" C: { 在汇编级增加中文的码表,以及单字节到双字节的转换代码,再增加中文字库等等,即可实现汉化。0 D/ m2 h t9 u. }
基本上图片字库游戏都会使用这种汉化方法,包括很多图片字库的小游戏。
2 J' @; T2 u* D8 v( a6 o 比如那个虚拟村民3的汉化示例里就用了这种汉化方法。 v6 }6 ]4 y9 V. r' z; Y
& ^* x1 H" A2 b! n
7.特定游戏引擎汉化法8 ]) d! C; k/ c3 g# {
这个很好理解,某个游戏引擎一旦有一个游戏研究出汉化方法以后,采用相同游戏引擎开发的游戏就都可以用这套方法来汉化。典型的例子是WME游戏引擎。
: t; N$ e- q I
" X% } }2 v! Y( i" {8.基于日文版,韩文版游戏的汉化法# O5 V y0 \8 k! h2 v, T& J1 H9 L
为什么游戏机游戏的汉化这么多?答案很简单,因为游戏机游戏有很多日文版。
3 O+ X4 N+ ~5 X& d/ L 日文版是双字节的,汉化起来相当容易,只要处理好字符边界检查问题即可。& x( d7 Q: \! m6 f
PC日文版 AVG不多,举个例子就是赛博利亚1吧。
) t1 G1 l3 E3 B9 |" F3 H# i4 c: F4 v' g4 f7 H8 @# ^. s) q' e! W! u
9.新型汉化法
$ r. N, J) }/ V( Y8 N' X P(1)代理DLL汉化法
8 Q2 A5 N; v* B( W(2)纵向点阵模版汉化法6 V3 \6 q0 `1 \' ^* s
(3)化木成林汉化法/ j' N& U: P( J: U7 u
7 R) M7 I" d% G" D
汉化方法正在不断地进化之中,各种新的汉化方法不断地被发明出来。$ K D8 C3 N1 [5 y9 C& T, H. }7 `
以上是我发明的几种新型汉化法,具体我就不详细说了。
9 a; L; I; c- v5 P3 c; I, a 只想告诉大家几句话,法无定法,一切皆有可能。
2 ~6 S7 {3 B$ o$ @5 Y( M; J 既要充分借鉴和学习前人的汉化经验,又要在前人经验的基础上不断创新。* s% S5 N- m# o1 y3 m* Z
并不是说前人说做不到的事就一定做不到的。
5 P7 `1 v/ j1 s2 \
$ ]9 r9 i# x$ ]* b1 N/ B10.基于特定游戏的特定汉化法
* w/ n' A0 p$ V0 T3 ~对于一些特定游戏,有时候我们会结合游戏的情况想出一些特别的汉化方法。
( o( D& ^7 s$ U& j# s3 `7 s. G" v9 e
6 I/ x! w$ t# A7 w# J$ \7 H11.综合汉化法
3 t: L% o9 i* k+ u( k: i6 ^一般来说,很多游戏的汉化都不止使用了一种汉化方法,往往是多种汉化方法的综合运用。 |