模组:翻译模组

来自Stardew Valley Wiki
ReprikaC讨论 | 贡献2024年10月24日 (四) 07:11的版本
跳到导航 跳到搜索

目录

基于 SMAPI 的模组可以被翻译为游戏支持的任何语言。使用模组时,它们将自动套用为与游戏设置相同的语言,如果缺少相应语言的翻译,游戏会使用模组的默认文本。本页主要说明了如何提供或请求翻译。

对于翻译者

翻译是如何工作的

如果某个模组支持翻译,那么在它的根目录中会有一个 i18n 文件夹,包含了翻译文件,您可以在文本编辑器中(如记事本等)打开这些文件。通常情况下,该文件夹内会有一个名为 default.json 的文件(内含默认的英文文本),有时也会包含下面的部分或全部文件:

语言 文件名
中文 zh.json
法语 fr.json
德语 de.json
匈牙利语 hu.json
意大利语 it.json
日语 ja.json
韩语 ko.json
葡萄牙语 pt.json
俄语 ru.json
西班牙语 es.json
土耳其语 tr.json

每个文件包含的文本如下所示:

{
   "translation-key": "简单的可翻译文本",
   "translation-key-2": "包含一个 {{token}} 令牌的可翻译文本"
}

第一部分 (在 : 之前的部分) 是翻译的唯一键。这是模组识别翻译的方式,因此请不要更改它。

第二部分 (在 : 之后的部分) 是翻译文本。有时会包含一些令牌,像这样:{{token}},模组在运行时将用不同的文本替换,所以不要修改单词左右两边的 {{ 以及 }}。例如:"You have {{count}} gold", 玩家实际上在游戏中会看到类似于 You have 500 gold 的文本。

如何翻译模组

  1. 正常安装模组。
  2. 打开它的 i18n 文件夹(如果你需要的语言文件尚不存在,只需复制 default.json 文件并将它重命名为你需要的语言)。
  3. 编辑所需要的翻译文本 (参阅上方的 翻译是如何工作的)。
  4. 启动游戏并选择你的语言,模组现在应该显示为你翻译后的相应语言。
  5. 将编辑后的文件发送给模组作者,以便他们可以将其添加到正式版本中。

提示:

  • 如果在游戏中看到乱码,请尝试使用 UTF-8 编码保存翻译文件。
  • 可以在不重新启动游戏的情况下测试游戏中的翻译更改。在 SMAPI 控制台中输入 reload_i18n 然后按下回车来重新加载所有翻译(如果模组内部缓存了翻译,则可能无法更新)。

如何提供模组翻译

你可以随时提供翻译。别有压力,无论做出了多少贡献,我们都会非常感谢你的工作!

这是标准流程:

  1. 在 GitHub 上创建一个账户
  2. 查看未完成的翻译请求。如果仅查看你需要的语言,点击“标签 Label”下拉菜单并为其选择 needs:相应语言 标签便可。
  3. 单击一个请求以查看详细信息(包括模组的功能,在何处下载以及需要什么翻译)。
  4. 安装模组并参阅上一章节进行翻译。
  5. 复制你翻译好的文本,然后将其粘贴到 GitHub 请求的注释中。(如果你很熟悉 GitHub 的操作,也可以在模组作者的仓库中创建拉取请求。)

就是这样!模组的作者会将你的翻译添加到模组中,并会在下个版本的模组中添加你翻译的语言。

提示:

  • 如果一个模组有很多内容需要翻译,可以只翻译其中的一小部分。以后也许会有其他人翻译剩下的内容。

对于模组开发者

使用翻译

有关使用翻译的帮助,请参阅 模组:制作指南/APIs/Translation

请求翻译

  1. 在开始前:
    1. 你的模组必须在一个公开的开源平台上,例如 GitHub
      这对其他人查看请求列表非常重要,可以让他们:(a) 检查模组翻译的当前状态,以使其保持最新进度;(b) 必要时回答译者的问题;(c) 如果你长时间未回复议题且议题被关闭,其他人可以创建拉取请求来提交翻译。
    2. 如果你有部分翻译,请将所有缺少的翻译复制到所有翻译文件中,并标记为 // TODO。(这样,翻译人员只需查看指定语言的文件,而无需将其与 default.json 比较)
    3. 确保你会及时查看请求,并且有时间回复问题!如果你在 72 小时内未处理问题,你的请求将被关闭。
    4. default.json 文件必须是英文的。如果你主要使用的语言不是英语,并且在将模组翻译为英语时需要帮助,我们可以帮你!只要选择needs: English copyediting作为标签即可。
  2. 添加以下信息来创建请求
    字段 输入的内容
    标题 需要要翻译的模组名称和版本。
    标签 选择 'needs:' 所需翻译的标签(不要添加“完成”标签,该标签仅用于已完成的请求)。
    描述 提供以下信息:
    • 模组的简要摘要,并附上模组主页的链接。
    • 开源代码的链接。
    • 如果你需要翻译尚未发布的版本,请附上下载该版本模组的链接(可以将其直接附在请求上)。
    • 如有需要,请说明显示文本的位置,或附上屏幕截图等。

    这里有一个请求示例以供参考

  3. 及时检查你的通知,这样在有人提交翻译或是提出问题时才能收到提醒!