希望通过以下的归类和总结,使大家对汉化方法的大分类有一个清晰的认识。
/ a1 I" t+ C, s0 h' o+ Q, K
9 p" }0 P9 G4 `3 H, a7 \8 l+ ?7 T/ w* d5 R7 Q8 A% |- Z1 D
1.傻瓜式汉化法3 U" u5 W7 e+ M; w8 U
(1)纯翻译汉化法2 v; B7 F1 @9 u
这种汉化方法最简单,前提是游戏的字幕是用双字节或UTF-8编码保存的,也就是我们所说的U码游戏。' b/ U g2 O4 {% y7 X/ j
只要翻译西文字幕,仍然用原来的U码保存,即可实现汉化。6 d! Y% f3 J3 F' n: v( }+ e
论坛上发布的汉化补丁中有相当一部分就是属于这一种的。# V, n( @! |, X3 y) W& S
o' l; N4 ?" ?3 o: x$ a
(2)纯PS汉化法
2 @' R' q! I$ C: J+ Z1 T 这种汉化方法也是最简单的,常见于小游戏,前提是游戏的字幕都是用图片的形式来保存的。
7 k$ X8 Y7 P8 o) V5 o. }4 k 把图片PS为中文的即可实现汉化。$ U% A: C0 x2 S
4 w6 w* C( e$ [! k2.源代码级汉化法
4 J8 e h1 F t0 ~ 一般来说,只有原游戏开发公司才会使用这种方法汉化,因为只有他们有源代码。5 F8 w% O0 J2 w+ Q+ W, b: }
据我所知, 即使是代理公司做汉化,也不会得到源代码,而是得到一些资源文件,汉化以后由开发公司整合到游戏中去。民间汉化基本没有使用这种方法的。不过,下面说的基于模拟器的汉化法是一个例外。% X- @3 d3 q$ o) j1 c
! V& c8 M8 n$ E( O& x
3.基于模拟器的汉化法 e: Y# E z6 l( u" [
这是源代码级汉化法的一个特例。拿scummvm模拟器举例来说,scummvm小组向游戏的原作者取得了某些游戏的源代码以及使用和修改许可,在此基础上,我们再做一些修改,即可实现汉化。
, R: J* }8 y+ s. i! P 疾速天龙和断剑系列的汉化实现就是一个很好的例子。
0 F! H* T9 A" ]) x( k" s( f" F1 o' B' L
4.API HOOK 汉化法
- P" P& t' s8 m$ x9 i( | 通过HOOK某些关键的windows API函数,比如extTextout.Textout, MultiByteToWideChar等.修改其中的关键参数来实现改变文字编码,单字节转双字节的功能,从而实现汉化。* A: X% H4 }7 o- t, {% F: e
用这个汉化法的游戏不少,如南希系列,午夜夺命等。
# r& e& p. T% e8 R9 |7 e
. I5 m/ l" I3 v4 L0 W$ u5.内挂式汉化法8 o& |: F' F% ^! h% d7 o* m5 j
向游戏的进程内注入一个DLL,把游戏显示字幕的各种参数传递给这个DLL,从而使游戏显示出中文字的汉化方法。通常要结合汇编级的调试和修改,算是难度比较高的一种汉化方法。! g3 m. n. |) s! ^' `0 P
疯人院的汉化就是一个经典的例子。; l& R: ]# [& P3 f& A
( H! O% D" P; W4 j! @' C
6.汇编级补丁代码汉化法
* N. y% [8 |/ F: n" n1 t4 X 这个方法是汉化一些图片字库游戏的比较正统的汉化方法。
$ | ~) ]0 j8 V6 \8 t 在汇编级增加中文的码表,以及单字节到双字节的转换代码,再增加中文字库等等,即可实现汉化。4 _! G, v1 F8 j7 N x
基本上图片字库游戏都会使用这种汉化方法,包括很多图片字库的小游戏。# Z; A* I, f- ~
比如那个虚拟村民3的汉化示例里就用了这种汉化方法。# K, P/ j% p& G X' Q) w* N
! T/ f" o6 f6 |0 P5 w
7.特定游戏引擎汉化法5 j I2 w" U* |. b
这个很好理解,某个游戏引擎一旦有一个游戏研究出汉化方法以后,采用相同游戏引擎开发的游戏就都可以用这套方法来汉化。典型的例子是WME游戏引擎。
( }- a1 y4 `" U& t1 i
- U% N6 o' s& w: ~' P+ \+ {8.基于日文版,韩文版游戏的汉化法
F: [( O& ]! S- O! | 为什么游戏机游戏的汉化这么多?答案很简单,因为游戏机游戏有很多日文版。
+ B' } j+ ~+ } 日文版是双字节的,汉化起来相当容易,只要处理好字符边界检查问题即可。
! f% L+ A, T/ C8 K PC日文版 AVG不多,举个例子就是赛博利亚1吧。# [( J( [+ r) e9 @$ R- A: p; p
& H$ @: G& |* U3 D9 `9.新型汉化法; z# {( @' u: \6 E9 ?" I
(1)代理DLL汉化法7 M* P* a% ^: d
(2)纵向点阵模版汉化法
/ M4 Q) k) C. G* w v6 |(3)化木成林汉化法
: k d+ J c) U4 E. t/ Y# W; G: c. w$ i' b K& |
汉化方法正在不断地进化之中,各种新的汉化方法不断地被发明出来。
6 \! u4 c. s$ y- t5 Y4 s) b1 o( G 以上是我发明的几种新型汉化法,具体我就不详细说了。& W" ^4 t1 h; k0 x* ]
只想告诉大家几句话,法无定法,一切皆有可能。, [5 g) G* u+ [. ~
既要充分借鉴和学习前人的汉化经验,又要在前人经验的基础上不断创新。
0 ? e7 G+ e8 c/ { 并不是说前人说做不到的事就一定做不到的。7 U" O' O# ]5 M! m4 Q- }$ Z9 l* H3 G6 ^
" b& {& ]! d# o& R1 c* a* }1 ?, s
10.基于特定游戏的特定汉化法* X; ^& m6 t [9 l8 K% T- b
对于一些特定游戏,有时候我们会结合游戏的情况想出一些特别的汉化方法。/ c2 `) R. b2 H3 T- W
7 s7 F6 h8 Y- A/ M' r0 n
11.综合汉化法
. ]' v! ?* R8 C3 G: R一般来说,很多游戏的汉化都不止使用了一种汉化方法,往往是多种汉化方法的综合运用。 |