Axıs
技能目录

23 · 本地化与文化适配

23 · 本地化与文化适配

本地化不是翻译,是系统层的约束。它必须从设计阶段就进入规格,而不是出货前贴上去。 后期补本地化的代价是前期就做的 3–5 倍,且必然出现破版与逻辑错误。

1. 本地化对系统的六种硬影响

# 影响 具体表现 设计阶段对策
1 文本膨胀 德/俄/西语比英语长 30–40%;中/日较短但字宽不同 UI 预留 30–40% 余量;禁止固定宽度的文本框
2 字体覆盖 中日韩需独立字体(数千字形);字体文件体积 提前确认字体授权与体积预算;备好 CJK 字体方案
3 布局方向 阿拉伯语/希伯来语为 RTL(从右到左) 布局用镜像友好结构,不要硬编码左右
4 字符串拼接 "你有 " + n + " 个金币" 在语序不同的语言里全错 禁止拼接,用完整句 + 占位符:{count} 个金币
5 复数规则 英语 2 种,俄语 3 种,阿拉伯语 6 种 用标准复数规则(ICU MessageFormat),不用 if-else
6 语法性别 罗曼语系的名词/形容词有性别 字符串表支持性别变体;避免"他/她"硬编码

系统侧的底线要求(写进规格单):

  • 所有面向玩家的字符串走字符串表,禁止硬编码
  • 字符串用完整句 + 命名占位符,不拼接
  • 复数用标准规则库
  • UI 布局无固定宽度文本容器
  • 所有文本有上下文注释(给译者)

2. 数字、日期、货币、单位

项 陷阱 做法
小数分隔符 英语用 .,欧洲多用 , 用本地化 API,不手写格式
千位分隔 印度用 1,00,000 同上
日期格式 美 MM/DD,欧 DD/MM 用本地化 API,或统一写 2026-03-14
数字膨胀 中文习惯"万/亿",英文"K/M/B" 提供两种记数法,按语言切换
货币 符号位置、小数位 若涉及真实货币需合规检查
单位 公制/英制 提供切换或统一公制
大数字显示 中文 1 万 vs 英文 10K 数值显示层必须可配置

数值显示设计:伤害从 100 涨到 10⁹ 时,中文玩家期待"10 亿",英文玩家期待"1B"。 数值显示格式必须作为常数表的一项,而不是硬编码。

3. 文化敏感清单(出货前必查)

类别 需检查
颜色 红(中国=喜庆 / 西方=危险)、白(东方=丧事)、绿(某些文化=宗教色)
符号 手势(竖大拇指、OK 手势在多国有冒犯含义)、宗教符号、政治符号
数字 4(东亚)、13(西方)、666
动物 猪/牛/狗/猫在不同文化的含义
身体 骷髅、血迹、暴露程度(分级制度差异)
历史/政治 地图边界、旗帜、历史事件、宗教内容
文字 避免使用随机汉字做装饰(可能构成无意义或冒犯词)
语音 音效中的语言、语调

流程:每个地区发行前过一遍该清单;地图类内容必须走合规审查。

4. 玩法的文化差异

维度 差异 设计影响
难度预期 部分市场偏好高难度,部分偏好轻松 提供可调难度/辅助选项(见 systems/10)
教程需求 部分市场玩家更接受长引导 教学分层 L0–L4,可跳过
付费习惯 对 IAP/抽卡的接受度差异极大 买断制是最安全的全球化模式
社交需求 多人/排行榜偏好差异 若做社交需考虑区域基础设施
文本量容忍 部分市场更接受大量文本 文本可跳过/可回看
节奏偏好 单次会话时长差异 短局结构更全球化

独立游戏建议:默认做买断制 + 可调难度 + 可跳过文本,这是跨文化最稳的组合。

5. 音频与配音本地化

项 做法
字幕优先于配音 配音成本极高,字幕成本低且覆盖全语言
字幕规范 说话人标签、半透明底衬、≥24px、可调大小
文本与语音不同步 允许语音长度差异,字幕可独立计时
拟声词/语气词 需要本地化(不能直接用英文 "Hmph")
音频中的语言 环境音/广播若含语言需检查
配音优先级 只对高价值市场 + 大量台词做配音,否则全字幕

6. 技术实现规范

字符串表结构

key:            ui.shop.buy_button
source:         Buy
context:        商店界面的购买按钮,可能被截断,尽量短
placeholders:   {count}, {item_name}
max_length:     12
plural_rules:   yes
gender_variants: no

必须有 context 和 max_length —— 这是译者唯一能保证质量的依据。

占位符规范

规则 说明
命名占位符 {player_name} 而非 %s(译者可重排语序)
禁止拼接 完整句 + 占位符
占位符不可翻译 用工具校验
复数用标准库 ICU MessageFormat / 引擎自带

文本膨胀测试

出货前必须用**最长语言(通常是德语或俄语)**做一次 UI 检查:

  • 无文本溢出
  • 无按钮被撑破
  • 无文本被截断导致语义丢失
  • 无行高错乱
  • 字体缺字(豆腐块)

7. 语言优先级与成本

优先级 语言 理由
P0 英语、简体中文 覆盖最大市场
P1 日语、韩语、俄语、德语、法语、西班牙语(拉美)、葡萄牙语(巴西) 高价值 PC 市场
P2 意大利语、波兰语、土耳其语、繁体中文 视体裁而定
P3 其他 视销量决定

成本参考:

  • 翻译:按字数计费(英文字数为基准)
  • 总文本量 2–8 万字 × 语言数 = 主要成本
  • 每增加一种语言 ≈ 文本量 × 单价 + 一次 UI 检查

降低成本的三个手段:

  1. 减少文本总量(用机制替代文本,见 integration/12)
  2. 优先做 P0/P1,其余按销量补
  3. 用标准格式 + 完整上下文,降低译者返工

本地化对文本预算的反向约束:如果打算做 10 种语言,单局强制文本 300 字的上限就要再降。

8. 反模式

症状 修法
出货前才做本地化 从设计阶段就进规格
字符串硬编码在代码里 走字符串表
拼接字符串 完整句 + 命名占位符
复数用 if-else 用标准复数规则库
固定宽度文本框 留 30–40% 余量
布局硬编码左右 镜像友好结构(RTL)
字符串表无 context 每个 key 必须有 context + max_length
用随机汉字做装饰 可能构成冒犯词,改用图形
默认做配音 字幕优先
只按英文长度做 UI 用最长语言做膨胀测试
忽略文化敏感 出货前过敏感清单;地图内容走合规审查
中文数字格式写死"万/亿" 数值显示格式可配置

9. 交付物

  1. 字符串表规范(key 命名、context、max_length、占位符规则)
  2. 文本膨胀测试报告(用最长语言)
  3. 文化敏感检查表(按地区)
  4. 语言优先级与成本估算
  5. 数值/日期/货币显示配置表

10. 参考

  • integration/14-ux-and-onboarding.md(字幕与 UI 可访问性规范)
  • integration/12-narrative-integration.md(用机制替代文本以降成本)
  • ICU MessageFormat 规范(复数与性别)
  • 地图类内容需遵守所在地区的合规要求