您应该先行动然后再思考,反之亦然吗? 在设计游戏时了解这些小技巧可以为您节省很多钱。

我们写这篇文章是为了向来自客户的众多问题致敬。
我的游戏怎么了? 为什么本地化还不够? 我们该如何解决?
引导新游戏时偷工减料是一种广泛使用的策略。 只要您不打算逐步增长,它甚至可能是一种有效的方法。
但是,在等待已久的本地发行版发布后不久,大多数游戏开发人员就开始考虑如何吸引更多的国际游戏玩家。 迟早要在更多国家/地区推广他们的游戏后,他们提出了一些本地化的想法。
就像我们清楚地知道的那样, 对游戏进行本地化意味着通过将用户界面转换为目标语言并针对文化,宗教和政治因素进行调整,使其适应所选的语言环境(国家或地区)。
在这一点上,我们要强调的是,本地化需要解释接口,但不能更改其元素。
例如,如果一个需要翻译成德语的游戏包含一个关于英国民间角色的笑话,则本地化可以通过用其他在德国流行的笑话代替这些笑话来处理。 但是,如果用户界面中没有足够的空间来容纳较大尺寸的德语文本,则此问题有时需要付出的工作不仅仅是本地化。
说明本地化范围的另一个示例是数字的转换。 例如,在某些地区,例如en-US(美国英语),要求数字以单词而不是数字书写。 其他本地化语言环境可能需要将数字与名词的复数\单数形式匹配。 例如,在俄语中,除了“一个”和“多个”之外,还有更多选择,而在日语和中文中,根本没有复数形式。 但是,如果数字和文本在游戏中的静态图像中被硬编码,则仅翻译文本并不会削减文本。
这两个案例只是冰山一角-有无数的非本地化问题可能会在本地化阶段抬起头来。 有人称它们为伪本地化或国际化错误-大词指的是可以预见并避免的事情,但可能需要开发人员进行认真的工作才能解决。
这就是为什么我们在Alconost决定制定规则列表供开发人员在设计过程的一开始就牢记于心的原因,以使本地化尽可能轻松。 只需遵循这些基本准则,即可轻松进行本地化游戏。
1.预先选择本地化语言
在上一篇有关应用程序本地化工作流的文章中 ,我们从#1开始了我们的行动清单:“评估您的潜力。”是的,我们将在这里重复自己。
您可能会反对,不可能在游戏真正上线之前预见它的所有潜在区域。 好吧,这确实是对的:首先,您使用非本地化版本测试受众,然后使用本地化进行扩展。 但是,它并不总是以这种方式工作。
首先,您的游戏可能包含许多文化和区域禁忌,以至于即使没有最诱人的叙述,如果没有本地化,所选区域设置就绝不会出现。
那么,在开始之前预测有前途的语言环境的最佳方法是什么?
- 分析竞争对手的本地化 。 通常,如果竞争对手的游戏在某个市场中找到了肥沃的土地,那么您也很有可能获得成功。
- 通过体裁评估本地化 。 例如,如果您是正在考虑发行复古风格的roguelike的独立开发人员,则可以通过查看该流派中的成功案例来更好地了解自己的潜在语言环境-例如,已经本地化的Rogues七种语言加英语。 另一种方法是从区域角度看问题。 因此,由于视频游戏是日本文化不可分割的一部分,因此从视频游戏开发的早期开始,日本就可能成为要考虑的目标市场。
- 学习最需要的语言进行游戏本地化 。 在这一点上,您可能需要看一下我们先前发表在“ 用于游戏本地化的最佳语言 ”一文中的研究。
但是,尽管您进行了本地化计划,但我们的“规则0”将尽可能地将英语作为源语言。 我们建议从第一天开始就考虑两个语言环境。
两个“默认”语言环境可能应该是英语和您的母语(如果不是英语)。
这种方法具有许多不可否认的好处:首先,您以后可以使用英语作为源材料将您的游戏翻译成新的语言,这有助于确保一致性。 其次,从第一天开始就有两种语言会自动指导您完成准备本地化的所有陷阱。 然后,当您使用20种语言时,您几乎看不到任何区别。
2.调整界面以选择可能的语言
构建界面元素时,通常最好为其他语言计划至少30%的额外空间(如果可能,甚至更多)。 这对于短字符串(菜单项,UI等)尤其有效。
但是,我们有一个更好的主意。 如果您已经考虑了规则1并准备了很长的区域设置清单,那么还有另一个有用的选择:针对最坏情况的语言设计界面。
例如,德语版本将平均比英语版本长30%,而俄语版本将长大约10%。 阿拉伯语版本通常也是如此。 另一方面,繁体中文字符通常比英文文本少占用30%的空间。
在字节方面,一个拉丁字母等于一个字节,但是西里尔字母和阿拉伯字符是后者的两倍,在计划数据存储时也需要考虑这一点。
3.不要在代码中构建文本字符串
转换文本以进行本地化将导致这些硬编码字符串丢失。 请记住以下本地化规则:每个可本地化的字符串都应该是可编辑的,而不用碰到任何代码。
实际上,开始本地化过程所需执行的所有工程任务都归因于国际化过程或简称为i18n 。
另一个重要提示是避免使用较小的单个单词构建文本片段。 促成StackExchange的Google程序员发现了这种错误的一个很好的例子:
字符串货币=语言环境:: getCurrencyString()+ money.toString(); //创建$ 123
上面的示例展示了一个问题-其他语言可能会将货币标记放在数字之后。
而是可以使用需要本地化的格式字符串。 例如:
字符串格式=语言环境::获取(“货币格式”); //以英文返回“ $ {0}”字符串currency =字符串::格式(format,money.toString());
后一种方法允许本地化者在实际格式字符串内重新排列单词。
4.请记住,时间,日期,度量单位和数字也需要本地化
作为最后一条规则的后续,我们只想明确声明数字信息也需要从代码中提取以进行本地化,因此不得进行硬编码。
您还需要准备重新设计界面中的号码。 例如,在游戏时间轴上打勾的时钟可能应该已本地化。 这样做的潜在动机是,西方国家大多是单时的,这意味着它们习惯于将时间表示为延长的时间轴,而亚洲国家则倾向于将时间表示为一个圆圈。
更不用说日期和度量单位的格式在几乎所有语言中都不同。
因此,我们的建议是做好准备,并在本地化时考虑每个细节。
在本地化和文本编辑方面,有时使用占位符似乎是仅对文本进行硬编码的一种不错的选择。 但是,如果您不提供占位符的访问权限,那么它可能是一把双刃剑。
此问题与另一种语言中可能完全不同的单词和短语顺序有关。 因此,我们的建议是:将占位符作为短语的一部分,以便可以将它们插入上下文中。 以下是“好”和“坏”的小例子:
否 :“妈妈吃了” +%num +“苹果”。
是的 :“妈妈吃了%的苹果。”
占位符的简短描述也可能非常有帮助。 当占位符被认为与上一段文本错误相关或不相关时,这可以避免混淆。
6.避免图片中的文字
如果您在游戏中使用图像,也要准备对其进行本地化,尤其是当它们富含文本时。 这意味着从头开始重新设计整个图像。
重新设计图像和创意资产有时是个好主意,因此您可以在目标语言环境中达到颜色和字符的标准。 但是,如果您只是要插入翻译后的文本,则会浪费时间和精力。
7.使用正确的编码和字体
如果您需要某些不适合您的字符串类的“spécîål”字符,那么编码问题是不可避免的。 如果您的目标语言在本地化后存在编码不匹配的情况,则可能需要大量时间和精力才能删除这些糟糕的字符。
同样的问题也适用于字体。 特别是,某些游戏的精美字体并不包含所有语言的字形。 因此,可能有必要为不同的语言选择不同的字体。 我们建议在选择字体时牢记这一点; 否则,您可能会有一堆框(□□□)而不是带字幕的文本的结尾。
我们的建议是尽可能使用ASCII上的Unicode。 UTF-8是最常见且节省空间的编码。 因此,请确保您的输入文件编码正确。
我们暂时不会对此进行详细介绍。 关于编码的详尽教程可以在上一篇有关“ mojibakes”的文章中找到。
8.如果您准备进行本地化,请使用伪翻译
最后,一旦您准备好了上面概述的所有技术方面,请尝试进行测试。 整个网络上有许多很棒的伪本地化工具,它们可以模仿您的界面,就好像它是外语一样,包括调整文本长度以及检查编码和硬编码字符串。
这些工具基本上运行一个脚本,该脚本模仿目标语言并生成内部版本,然后必须在常规过程中将其作为非本地版本进行质量检查。
这项预测试绝对不是万能药,但可以帮上很多忙。 对于开发人员来说,使用伪装的界面制作模型也可能很有趣。
9.尽早开始构建词汇表
词汇表是游戏中术语和概念的集合,必须在整个游戏中保持一致。 它主要包含项目,角色名称,工件和状态。
在整个游戏中保持与词汇表的一致性至关重要。 试想一下,如果某个游戏内物品在一个地方被翻译为“药水”,而在另一地方被翻译为“ elixir”,那么您无意间为玩家创造了一个额外的逻辑难题。
10.准备提供背景
提供词汇表同样重要的是,确保本地化团队拥有他们所需的所有环境。 根据我们的经验,可以通过启用翻译,本地化项目经理和游戏开发人员之间的交流来建立上下文。
我们意识到,整个开发团队全天候24/7工作非常困难。 但是,在本地化阶段,我们最好的建议是指定一名代表作为您的联系人-错误或不足的上下文确实会损害本地化过程的最终结果。
此外, 本地化工作流程的平台主要是根据客户的偏好选择的,因此可以尽可能方便,高效地进行沟通。
如果工作做得好,最终会得到回报。
我们希望您能从这份简单的建议列表中找到有助于设计游戏的建议。 我们希望您有伟大的成功故事,并为您着迷!
您可能还会发现有用:
Unicode字符集
Mojibakes来自哪里? 编码智能指南
最佳游戏本地化语言
关于作者
Alconost是为70多种语言的应用程序 , 游戏 ,视频和网站提供本地化服务的全球提供商。 我们提供由母语为母语的语言学家,语言测试,基于云的工作流,连续本地化,24/7项目管理以及任何格式的字符串资源提供的翻译。 我们还为Google Play和App Store制作广告和教育视频和图像,预告片,解释器和预告片。