很早很早以前就在研究游戏汉化了,只不过那个时候一直不想花太多精力在非工作的事情。最近(也不是最近了,应该是从2011年开始的),因为买了个PS3,又开始进行汉化工作了,而且也主要是从事PS3游戏的汉化。实际上PS3在国内不是很普及,不像PSP,PS3不及它的零头,导致了PS3几乎没有什么汉化组,也没有什么汉化作品。于是乎,我就专心研究PS3的汉化了。
也就是这段时间(近1个月),手里的事情稍微少一些了,才投入了较多精力到汉化上,目前为止,已经完成了5个游戏(实际上其中一个游戏是2011年完成的,剩下4个是最近1个月完成的)的破解(其实也不能叫破解)工作。
再然后,年底了,春节一完,工作也会忙起来,而且估计会很忙,汉化工作估计也无法继续了。但是我目前在的汉化组热情很高,我也不想让他们因为我而中断或者放弃汉化工作(目前汉化组就我一个程序,当然还有其他的程序,但是主要是分析文件,不能编写程序)。于是,我产生了一个想法,利用闲暇时间,来写一系列详细的汉化教程,让所有感兴趣但是又无从下手的朋友能参与汉化工作。
必备技能
我这里主要说的是程序的必备技能,美工,翻译和润色不在此范围内。
汉化工作实际上是比较有挑战的,但是也是比较枯燥的。首先,需要大致了解一些游戏程序的运行原理,如果是做非PC游戏的汉化,还需要了解一些Unix下的规则(Sony的游戏机是类Unix操作系统,其他的游戏机反正也差不多,总之,多了解一些操作系统的特性,会对汉化有很大帮助)。
开发语言方面,了解至少一种开发语言(后面的教程我会用C和C#,如果时间允许,我也会做相对的Java Example),然后,了解以下范围的API:
文件处理(主要用于游戏资源文件的解包封包,文本导入导出等)
常见的压缩解压算法(zlib,lzo等)(主要用于文件的解压压缩,一般很多游戏会对资源文件进行相关的压缩)
图片处理(主要用于处理游戏字库,因为大多数情况下,游戏都是采用的自制字库,另外,还需要熟悉各种图片格式,例如TIFF,DDS,BMP的各种格式(16pbb565,16bpp4444,24bpprgb等))
文本编码(处理游戏文本,导出成纯文本文档,方便翻译人员进行汉化)
OCR相关技术(主要用于根据字库生成码表,但是一般来说,PS3游戏都会采用通用编码,比如UTF8,JIS等,但是也有小部分游戏使用自制码表
具备了上面的技术以后,游戏汉化的基础就基本具备,剩下的就是热情和耐心了。
结束和开始
今天我不打算开始做任何关于汉化的教程,只是写个教程的开篇,因为汉化涉及到的知识很杂,但是汉化的基本流程不变,我需要准备一下,理一个大纲出来, 然后尽量写出通俗易懂,质量较高的汉化教程。而且我也爬了一下网,目前还真没有什么比较系统的教程,很难得找到一篇的教程也比较凌乱,当初我入门汉化的时候,非常痛苦,基本上是摸石头过河,逐渐总结了一套自己的汉化方式,具体为什么会出现这样的情况,我也不太清楚,至少我认为汉化的知识需要共享,能让更多人参与进来。
最后,我想说下,目前PS3的游戏汉化属于一大空缺,PC有3DM,PSP和NDS有ACG(当然还有其他大大小小的汉化组),iOS和Android有扑家,唯独PS3没有太多比较知名的汉化组。所以,我这里的教程主要以PS3游戏做为例子。不过汉化的原理基本通用,这里的教程也适合其他平台的游戏汉化。
另外,有兴趣一起来研究汉化的朋友可以联系我。
最后,有人问过我为啥要搞汉化这样吃力不讨好的事情,其实也没什么特别的原因,第一是爱好,喜欢研究游戏的根本。第二是当你看到一个鸟语游戏在你手上变成汉字,并且让更多人能够体验到,那是一种比较有成就感的事情。毕竟做开发,除了养家糊口外,还有个很最要的原因就是有成就感。