【开发日志补全计划】介绍Cerberus
原作者:CCP Shin
原文:http://community.eveonline.com/devblog.asp?a=blog&nbid=3214
你好,我们是CCP Shiny和CCP Ronin,在此谨代表EVE本地化团队,Stonehenge团队和Cerberus团队,为广大玩家介绍一下我们的本地化工作,更准确地说是介绍Cerberus——我们即将在《新纪元》资料片中加入并将在今后不断完善的EVE Online本地化技术。
我仿佛听见有人在说“本地化不就是把一种语言翻译成另一种语言吗?”坦白地讲,本地化的大部分工作内容实际上就是翻译以及从几个功能性层面保证翻译质量的管理工作。
但是,在引入了国际化/本地化的概念后——也可以大概定义为“设计这样一种软件,它可以正确地进行任何区域和语言的本地化,而不损害原有的功能性以及外观”,我们就创造了Cerberus。它的到来使得我们的工作更加有趣了,首先我们会用它更新现有的翻译内容以及加入日文翻译,将来还会加入更多种语言的本地化客户端。
我们先从起源说起
在2006年,我们开发了德语版EVE客户端,之后在2009年加入了俄语版本。这些语言版本的问世充满着曲折,从群策群力到寻找合适的语言提供商(下次你遇到一位德语玩家的时候,问问他“末日武器装置”在德语客户端中是怎么翻译的)。这些年来,我们在不断改进那些最初的翻译文字,而且也收到了越来越多的非常有用的反馈信息。
但是,无论是EVE代码还是我们手头的工具都不能很好地支持本地化工作。我们在2007年就开始尝试制作日语和法语客户端,但是都因为技术上的限制而半途而废。于是我们清醒地认识到,如果要在将来创造更多语言版本的EVE,我们需要一个更复杂精细的本地化系统。
于是Cerberus就诞生了
去年,位于CCP亚特兰大办公室的Cerberus团队开始制作一个全新的、现代的、基于CCP的Carbon架构的本地化系统。今年夏天,我们将这项新技术整合到了EVE的主要开发流程中。从那时起,Stonehenge团队和Cerberus团队就一直忙于将现在EVE中的所有文字转移到这个新系统中。要知道这并不是一个简简单单地将文本从一个系统挪到另一个系统中的工作。我们对所有的UI文字都进行了详细的检查,借助于新的本地化特性,英语以及其它语言的EVE玩家的游戏体验都将得到改善。
好吧,那它到底是什么东西?
它是EVE新的本地化系统,会在将来极大地改善我们为EVE玩家提供高质量本地化游戏的能力,不仅包括现有的德语、俄语和中文玩家,还包括新的语言种类——首先是日语,按计划之后还会有其它语言版本。甚至原始的英语文本也会从这个新系统中获益,你们不久之后就会看到效果。
新的本地化系统带来的变革更多地影响了EVE的开发后端,使得程序员和游戏设计师的工作更加轻松了,而且玩家们在游戏中看到的文字也得以改善。之前,我们对变量(主要是人名、地名以及物品名)的应用仅限于简单的字符串替换。程序员或设计师会创造一个字符串,并且可以在其中插入另一个字符串,但是第一个字符串并不清楚插入的内容,所以总是显示同样的文本,无论你是在谈及一个人物、一个军团还是一块闪闪亮的石头,都没有什么不同。而新的系统为EVE加入了两个概念:实体元数据(entity metadata)和条件语句(conditional statements),可以有效地改善上述问题。
实体元数据(这里的实体指的是人物、物品类型和地点)可以让本地化系统能够存储EVE中各种实体的特征。对于人物而言,本地化系统现在可以获得人物的性别,而对于物品类型和地点而言,本地化系统则可以获得不定冠词(对英语版本而言)、词语的性别(对德语版本而言)以及发音(对日语版本而言,用于排序)。条件语句则可以让我们根据输入来使用变量值或元数据去改变字符串。比如说,人称代词可以根据语句中人物的性别而改变。在非英语版本中,形容词也可以根据人物(或物品)的性别而改变。
Cerberus带来的改变有很多,其中一个就是数字类型的条件变化,使得复数形式的正确使用变为了现实。现在,“你拥有一股军团股票”和“你拥有五股军团股票”在后台是同一条字符串,而且会根据输入的数字来使用正确的名词形式。不同语言中复数的使用是很不一样的,比如说,俄语中有两种复数形式,我们的翻译人员会准备全部的三种名词单复数形式,这样根据输入就可以选择使用正确的形式了。英语和德语中只有一种单数和一种复数形式,而日语中完全没有复数这个概念。所以对于刚才的那个“股票数量”的例子,英语、德语、俄语和日语版本处理的方式是很不一样的。

当然,这个系统也具有足够的灵活性,可以让我们轻松地将EVE客户端转化为其它语言版本,这也是我们计划将来要做的事情。
短期的影响
好的方面:前面提到过,这个新的本地化系统是日语版本EVE以及将来其它语言版本计划的重要组成部分。作为《新纪元》资料片的一部分,EVE世界服务器上的玩家将可以看到日语版本的预览。请注意,这只是一个预览版本,既不完整,也未经过验证。EVE日语版本的相关工作将会一直持续到明年,但是我们觉得先期放出一个日语翻译的预览版本是很重要的,这也是我们一直反复申明的事情。如果你使用俄语或德语客户端,你也将看到在使用这项全新技术进行彻底修正后的翻译文字上的改进。
不好的方面:作为此次文字转移的一部分,我们不得不重新翻译了游戏中的全部界面(UI)、通知以及消息。不幸的是,由于时间紧迫,德语和俄语客户端中的一小部分由其他团队为本次资料片开发的UI和游戏内容,在上线时仍将为未翻译完成的英语文字。我们并不想放出一个没有完整本地化的客户端给玩家,我们对这种情况也很不满意。最终我们决定,与推迟整个上线计划直到所有的翻译工作完成相比,我们的德语和俄语玩家们更愿意在近期先体验《新纪元》资料片带来的美妙体验和改变。我们正全力以赴搞定那些未完成的本地化内容,目标在接下来的几周后为玩家奉上完整本地化的客户端。
比较严重的问题:因为我们重新翻译了很多内容,所以玩家们可能会遇到一些翻译文字上的变化甚至是一些与文字转移相关的问题,比如说游戏中会显示变量。我们有一支由专业的翻译人员组成的团队,正在致力于解决这些问题。但是,考虑到这种特殊情况以及文字转移和重新翻译工作可能会带来的问题,请允许我在麻烦出现之前先行说明:
许下1000个愿望
有些时候我们很犹豫,不能下定决心对德语和俄语客户端中的文字进行具体的修改,因为这些文本已经使用了很长时间,玩家们已经习惯它们了。我们纠结的另外一点就是,玩家们已经创造出了他们自己的游戏用语,这些用语是非官方的,可能也并不那么正规。另外,从上次关于本地化的玩家调查结果可以看出,玩家提出了很多在我们预想之外的问题,而那些我们认为非常重要的问题玩家却不太在意。基于上述种种情况,我们希望能借此机会与玩家群体有更深入的沟通。我们会收集一个玩家希望修改的内容的列表,专门针对具体的本地化修改内容。我们将分别开放三个帖子,德语和俄语论坛上各有一个,那里玩家可以用自己的语言发表看法。另一个则在论坛上的“问题、解决方法和本地化”这个版面中,为使用英语的玩家所准备。中文版玩家也可以经由运营商的官方论坛来提出自己对本地化的想法。
我们欢迎一切关于本地化工作的具体建议,不过有几件事情先要声明一下:我们不能保证满足玩家提出的所有要求,也不能保证回复每一个帖子,但是我们可以保证的是,我们会认真阅读并考虑每一个来自玩家的意见。有些要求我们可能马上就可以满足,但是还有一些也许我们很愿意去做,但是目前还不能做到。最后一点,我们建议玩家不要在“许下1000个愿望”这类帖子中提出一些非常细微而具体的问题(例如“某某任务文本中有一个错别字”),那些问题可以在Bug报告分区中反馈给我们,这样可以使整个反馈流程更加迅速。(既然提到了Bug报告的事情,我想说的是,我们的ISD和Bug Hunter小组非常渴望获得更多来自非英语玩家的声音。)
长期的影响
除了Cerberus技术和我们内部为本地化工作付出的努力之外,玩家也可以通过提出你自己的建议或报告Bug来为EVE本地化作出贡献。与过去这些年相比,本地化工作必将有一个更加光明的未来,我已经可以预见到这一幕。现在我们还不想谈论更多细节,不过我们有一堆大大小小的计划正在实行中,在接下来的一年里我们会逐一与玩家分享。我个人觉得,我们乐在其中。