支持的引擎 · Godot Engine
Godot 是那个免费、开源的引擎,支撑着快速增长的一部分独立和日本同人游戏 —— 也是译者面前的一个封闭盒子,因为一个已发布的 Godot 游戏把一切都保存在单一的 .pck 归档里(常常附在 .exe 上),脚本编译成 GDScript 字节码(.gdc),场景存为二进制(.scn)。RuneTranslate 打开它。用一份捆绑的 GDRE Tools(开源的 Godot 逆向工具包),它拆开包、把 GDScript 反编译回 .gd 源代码、把二进制场景转成文本,然后列出每一个可翻译字符串 —— 脚本里的对话和旁白,加上场景上的标签和 UI 文本。它读取 .gd / .tscn / .tres / .cfg / .godot 里的硬编码字符串;它不读取 .csv / .po / .translation 本地化表。你用任意翻译服务翻译,导出时它把你的译文拼接进恢复出的源代码并重打包游戏。检测和提取覆盖 Godot 3.x 和 4.x,但纯 TS 重打包仅限 Godot 4(pack v2–v3),且导出目前只对 .pck 嵌在 .exe 里的游戏运行 —— 独立 .pck 和 Godot 3 项目能检测、提取并翻译,但还不能重打包。加密的 .pck 文件(密钥烘焙进二进制)打不开。导出的构建依赖引擎在运行时编译松散源代码,所以在重新分发之前先验证译好的副本能运行。源语言默认日语,可按项目配置。
Godot 对话常常作为长的行数组存在单一 GDScript"数据库"文件里,所以一个反复出现的角色或地名会出现数百次。事先给你的角色阵容和关键术语建好术语表,让每一行都以同样的方式渲染它们。 术语表入门 →
把 RuneTranslate 指向游戏目录 —— 含 .exe 的文件夹(.pck 通常嵌在里面),或旁边一个独立的 .pck / data.pck。引擎检测会自动识别嵌入包签名;你的原始文件永远不会被修改。
RuneTranslate 会运行它捆绑的 GDRE Tools 附属程序来拆开 .pck、反编译编译过的 GDScript(.gdc → .gd)并转换二进制场景(.scn → .tscn)。然后它扫描恢复出的源代码,列出每一个可翻译字符串 —— 脚本对话和场景/UI 文本 —— 按文件分组,引擎标记被屏蔽在占位符之后。
Godot 游戏通常对话量大,所以一个 LLM(OpenAI GPT-4o / Anthropic Claude)或 DeepL 对故事文本读起来最好;免费的 Google Translate 或一个本地模型(Ollama / LM Studio)覆盖短 UI 字符串,而你可以把 OpenAI 兼容翻译服务指向 OpenRouter 或 NanoGPT。一次可选的 AI 润色器二次处理收紧措辞。
对于 .pck 嵌在 .exe 里的游戏,RuneTranslate 会把你的译文拼接进恢复出的 GDScript / 场景源代码、重打包一个全新的 .pck(丢弃编译过的 .gdc / 二进制 .scn,让引擎加载译好的源代码),并把它重新嵌进 .exe 的一个副本里。独立 .pck 和 Godot 3 项目能在编辑器里翻译,但还不能导出。运行导出的副本,它就用你的语言游玩。
因为导出的构建依赖 Godot 运行时编译松散的译好源代码,所以在分享之前先启动一次导出的游戏,确认对话和菜单显示你的语言。