高级玩家

- 贡献度
- 42
- 金元
- 1698
- 积分
- 278
- 精华
- 0
- 注册时间
- 2007-12-7
|
3dm久无消息。。唉。。。无奈。。想参与其中,可是人微言轻
可以确定一点,游戏里的语言并不是受cod4的可执行文件iw3mp.exe和iw3sp.exe的控制,也就是说不管是哪种语言版本,其iw3mp.exe和iw3sp.exe都是一样的(当然,有些英文是固化在exe文件里的)。所以官方升级补丁是不会对语言文件作出改动的。这就是使命召唤系列的一个优良传统:语言文件与可执行文件是相对独立的,这有助于发行不同语种版本
既然如此,那cod4是如何决定使用哪种语言呢?有人说用注册表,有些游戏可能是这样,但cod4不是。请注意游戏根目录下的一个文件--localization.txt 其文件名的中文意思就是“本土化”。这就是关键!你打开这个文件,会发现第一行是"english" ,然后接下来的就是一些错误代码的英文对照表。这个文件有两个作用,第一个是指定使用哪种语言,也就是启动第一行所指定的zone下相应目录游戏。如果其为“german",那么zone目录下就应该有一个german目录,启动德文版cod4。第二个作用就是存储当cod4不能正常启动时,那个弹出窗口里的信息。所以我们要汉化cod4,首先必须修改这个文件,将其第一行改成chinese(当然其他的也可以),然后翻译那些英文提示。
这样,我们就可以得出cod4里的语言文件就应当存在于zone目录下的众多文件里的结论。经我初步分析,语言文件与这两个文件有关,它们分别是localized_common_mp.ff 和 localized_code_post_gfx_mp.ff。如果下过COD4 MOD TOOL的人,应该会知道zone_source里的csv文件,就是用来生成zone下ff文件用的(Fast File的缩写)。这两个文件是用来配置本土化语言相关的一些东西,比如配置字体、游戏菜单文字、单机游戏里的字幕以及游戏里的各种提示。想汉化,就要相应翻译MOD TOOL 里rawenglishlocalizedstrings下的众多STR文件。这说句实在话,是个没有技术含量的苦力活,不是难点。
汉化的真正难关在于如何配置字体。MOD TOOL给我们很多东西,但还有更多东西没有提供。这其中就包括font文件的格式说明。cod4里的font包括两大部分,一个是图片字库,也就是将所有的文字集中存储在一个图片里;另一个是映射信息文件,设置每个字在图片字库里的位置。这里有两个难点,其一是这图片字库的格式不好掌握,虽然cod4的图片都是有dds转化的iwi格式(DDS文件虽然可以编辑并于iwi文件相互转化),但MOD TOOL却没有告诉我们cod4对dds的参数要求(我只知道字体文件需要"colormap");其二,映射信息文件的格式没有公开,我们无法知道如何将字符与字库文件上的位置对应,尤其是数量庞大的汉字。如果克服了这两个难关,那cod4汉化就基本水到渠成了。
接下来,就是使用MOD TOOL重组localized_common_mp.ff 和 localized_code_post_gfx_mp.ff了。只需细细分析一下相应的CSV文件,就可以很容易的重组,然后打包发布都是很轻松的事了
这样完成的汉化效果,你可以参照COD2简体中文版的效果,应该来说是不错的。不过还是有略微瑕疵。一:如果控制命令台的字体没有汉化,那么控制命令台不能显示中文,如果汉化了,还必须修改exe文件,判定双字节,要不然就会有cod1简体中文版的控制命令台的那种汉字前推的错误;其二:游戏中切换输入法后,无法将输入法的候选词汇显示在游戏了,这样中文对话就略显鸡肋。想要像魔兽争霸3里那样输入中文,还是比较难的。
有cod2的中文版作为参照,我认为一定会有cod4中文版的。
目前cod4已支持语言有: English, French, Italian, German, Spanish, Russian, Polish, Japaniese, Korean |
|