引擎指南FAQPatreonDiscord下载
登录
RuneTranslate · 端到端翻译日语等 30+ 种语言的游戏
引擎指南对比图片文字存档编辑器作弊模式FAQ下载更新日志TrustpilotPatreonDiscordYouTube隐私政策服务条款联系我们
全部引擎

支持的引擎 · GameMaker

完整支持 — 已重打包并实机运行

GameMaker 翻译工具 - 端到端翻译 GameMaker 和 GameMaker Studio 游戏

GameMaker 游戏(较早的版本以 GameMaker Studio 之名发售)把编译后的数据放在一个文件里:Windows 上是 data.win,Linux 上是 game.unx,macOS 上是 game.ios。RuneTranslate 自己读写这个文件,不依赖任何第三方工具或 sidecar。它会沿着游戏的字节码追踪每个字符串,判断它是否会到达绘制或消息函数,因此玩家看到的文本会被提取出来供翻译,而查找键、文件名和游戏用来做比较的字符串则原样不动。游戏随附的语言文件(JSON、CSV、INI / 键=值、Yarn 和 Chatterbox 对话)以及 gettext 的 .po / .mo 语言包也会一并读取,标记和控制码会被遮蔽在占位符后面,翻译服务商无法把它们弄坏。你可以使用任何服务商翻译:DeepL、LLM(OpenAI / Anthropic)、免费的 Google 翻译,或本地模型。导出时,如果译文需要游戏字体里没有的字符(西里尔文、越南语、中文、日语、韩语、泰语、带重音的拉丁字母),RuneTranslate 会以匹配的风格把这些字形补进游戏自己的字体;对日语、中文和泰语,只会在能从游戏中确认文本框宽度的位置换行。每次导出在替换任何东西之前,都会被重新读取并逐字节验证。GameMaker 是新加入的引擎,已在用 GameMaker Studio 1.4、GameMaker Studio 2.3 以及 GameMaker 2022 LTS、2023 和 2024 版本制作的真实游戏上完成端到端验证。用 YYC(原生代码)编译的游戏是例外:它们的语言文件和字体可以翻译,但代码里的文本无法触及。源语言默认为日语,可按项目单独设置。

该引擎的术语表提示

GameMaker 游戏会在数据文件及其语言文件里重复出现角色名、道具名和菜单术语。请先把它们加入术语表,让每一行都用同样的方式翻译。 术语表入门 →

下载 Windows 版 RuneTranslate

如何翻译 GameMaker

  1. 步骤 1

    打开 GameMaker 游戏文件夹

    把 RuneTranslate 指向游戏目录:Windows 上是包含 data.win 的文件夹,Linux 上是包含 game.unx 的文件夹,macOS 版本则是包含 game.ios 的文件夹。检测会自动识别数据文件,打开游戏不会改动任何内容。如果游戏是以安装程序形式提供的,请先安装。打包成单个可执行文件的 GameMaker Studio 1.4 游戏,会在导出时被解包成普通的游戏文件夹。

  2. 步骤 2

    提取游戏绘制的文本

    RuneTranslate 自己读取数据文件,不依赖第三方工具或 sidecar,并沿着游戏的字节码追踪每个字符串,判断它是否会到达绘制或消息函数。玩家看到的文本会成为翻译单元;查找键、文件名和游戏用来做比较的字符串原样不动。游戏随附的语言文件(JSON、CSV、INI / 键=值、Yarn 和 Chatterbox 对话)以及 gettext 的 .po / .mo 语言包也会列出来。

  3. 步骤 3

    通过你偏好的服务商翻译

    使用 DeepL、LLM(OpenAI / Anthropic)、免费的 Google 翻译或本地模型翻译。标记和控制码会被遮蔽在占位符后面,翻译服务商无法重排、丢弃或翻译它们,翻译记忆会复用重复的行。

  4. 步骤 4

    导出翻译后的版本

    把翻译后的副本导出到另一个文件夹,或者原地导出(部分 Steam 游戏需要这样)。如果译文用到游戏字体里没有的字符,导出会以匹配的风格把这些字形补进游戏自己的字体。对日语、中文和泰语,只会在能从游戏中确认文本框宽度的位置换行,并遵守禁则规则。对于 macOS 或 Linux 版本,只写出被改动的文件,由你复制覆盖到安装目录上。

  5. 步骤 5

    验证翻译后的副本能运行

    每次导出在替换任何东西之前,都会被重新读取并逐字节验证。启动翻译后的游戏,在分享之前先在游戏里检查对话、菜单和字体。

支持内容

  • data.win(Windows)、game.unx(Linux)和 game.ios(macOS),由 RuneTranslate 自己读写,不依赖第三方工具
  • 已在真实游戏上端到端验证:GameMaker Studio 1.4、GameMaker Studio 2.3、GameMaker 2022 LTS、2023 和 2024
  • 游戏绘制的文本:每个字符串都沿字节码追踪到绘制或消息函数,所以查找键、文件名和被比较的字符串原样不动
  • 游戏旁边的语言文件(JSON、CSV、INI / 键=值、Yarn 和 Chatterbox 对话)以及 gettext 的 .po / .mo 语言包
  • 标记和控制码被遮蔽在占位符后面,翻译服务商无法把它们弄坏
  • 缺失的字形(西里尔文、越南语、中文、日语、韩语、泰语、带重音的拉丁字母)以匹配的风格补进游戏自己的字体,小号像素字体使用内置的像素字体;精灵条带字体也会被扩展
  • 泰语不依赖排版引擎,通过预组合字形绘制;日语、中文和泰语的行只在能从游戏中确认文本框宽度的位置换行,并遵守禁则规则
  • 打包成单个可执行文件的 GameMaker Studio 1.4 游戏会在导出时解包成普通的游戏文件夹
  • 每次导出在替换任何东西之前,都会被重新读取并逐字节验证

局限

  • 用 YYC(原生代码)编译的游戏:只能翻译它们的语言文件和字体,游戏代码里的文本无法触及
  • 其他版本,例如 GameMaker Studio 2.2 或字节码为 13 / 14 的 GameMaker Studio 1.4,打开时会出现“尚未验证”的警告:请在游戏里检查翻译后的版本
  • 不支持:GameMaker 8.x、GameMaker Studio 1.0 到 1.1、新的 GMRT 运行时,以及 HTML5 或移动端打包
  • 不支持阿拉伯语等从右向左书写的目标语言
  • macOS 和 Linux 版本:导出只写出被改动的文件,需要你自己复制覆盖到安装目录上
  • 安装程序不会被直接打开:请先安装游戏

延伸阅读

翻译后游戏打不开?找出那一行
阅读指南 →

延伸阅读

RuneTranslate vs Translumo
阅读指南 →

其他支持的引擎

GettextRPG MakerRPG Maker XP/VX/AceRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisYU-RISAliceSoftUnrealLiveMaker