1644 字
8 分钟
AI翻译教程【第二版】
GalTransl 机翻教程 2025版
前言:GalTransl官方教程已经很完善了,此篇教程主要面向简单引擎的实际操作,更多详情请参考官方教程。
AI翻译原理
游戏资源(文本、脚本、图片、视频等)被各种引擎以不同方式打包。翻译的核心思路是:提取文本文件,翻译,再打包回去(即”偷梁换柱”)。因此,游戏翻译的一般流程为:解包、翻译和打包。
对于AI翻译,由于文本文件中还包含脚本代码,直接翻译显然不合适。因此我们需要引入中间格式——在GalTransl中通常是JSON格式,在Translator++中则是表格形式。
完整流程如下:
- 使用Garbro解包游戏文件
- 从文本文件里提取需要翻译的内容
- 配置API和相应参数
- 等待AI翻译完成
- 将翻译好的文本回注到原始文件
- 打包回原来的格式
一.准备阶段
1. 各个AI和API现状分析 (截至2025年3月)
AI翻译模型可分为以下几个档次:
分级 | 模型 | 备注 |
---|---|---|
一梯队 | 官转Claude,中转Claude | 不包括逆向 |
二梯队 | GPT4o,DeepSeek-R1 | 性价比较高 |
三梯队 | Qwen,Grok等 | 适合简单场景 |
本地队 | sakura(14B) | 模型太小,质量很差 |
相关资源链接:
- GalTransl: https://github.com/xd2333/GalTransl/releases
- 付费 GPT API: https://api.v3.cm/register?aff=jh2X
- 支持Azure分组: https://new.yunai.link/
提示: 有能力的话可以寻找支持Azure分组的API网站,Azure分组只需原价的十分之一,用GPT4o翻译一款游戏大约只需1元。(但目前中转网AI质量和API稳定性下降严重)
二. 实操流程(以KRKR引擎为例)
(KiriKiri(也简称KRKR)引擎)
1. 解包游戏
使用GARbro mod提取ks等文本文件。
2. 提取JSON
- 打开GalTransl文件夹(根目录)
- 找到并运行
useful_tools\GalTransl_DumpInjector\GalTransl_DumpInjector.exe
- 在工具界面中:
- 选择”日文脚本文件夹”(GARbro提取的脚本文件夹)
- 选择”日文JSON保存文件夹”(推荐使用SampleProject/gt_input)
- 点击”提取脚本到JSON”按钮开始提取
3. 设置翻译器
- 在根目录找到SampleProject文件夹
- 将
config.inc.yaml
重命名为config.yaml
- 编辑配置文件,主要关注以下内容:
GPT4: # OpenAI API接口通用,GPT4/Claude-3/Deepseek-V3/R1
tokens:
- token: sk-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
endpoint: https://api.openai.com # 使用转发或第三方API时修改
rewriteModelName: "gpt-4o" # 使用指定的模型型号替换默认模型
workersPerProject: 1 # 多线程设置,同时翻译n个文件
filePlugin: file_galtransl_json # 文件插件选择
# 其他选项:
# file_subtitle_srt_lrc_vtt(字幕)
# file_epub_epub或file_plaintext_txt(小说)
# file_i18n_json(mtool导出JSON)
注意: 配置文件中冒号后必须保留空格!
4. 开始翻译
- 在项目目录中运行
run.bat
- 将编辑好的配置文件拖入弹出的界面并按回车
- 选择翻译模型后再次回车,开始翻译
翻译时间取决于线程数和API速度,单线程可能需要10+小时,而百线程可能只需10分钟。
5. 导出译文
翻译完成后:
- 打开
GalTransl_DumpInjector.exe
- 设置以下选项:
- “日文脚本文件夹”(原始脚本位置)
- “日文JSON保存文件夹”(SampleProject/gt_input)
- “译文JSON保存文件夹”(SampleProject/gt_output)
- “译文脚本保存文件夹”(选择导出位置)
- 点击”注入翻译到脚本”完成导出
6. 打包
- 普通的KRKR引擎游戏:使用xp3_upk打包,直接将文件夹拖到工具上即可
- 需要保留目录结构的KRKR引擎游戏:使用arc_conv打包
- 其他加密的KRKR引擎:使用KrkrExtract等工具处理
三. 其他引擎的游戏(进阶)
1. 引擎分析
使用GARbro获取引擎名称,然后在GitHub和搜索引擎上查找相关资料。针对不同引擎,需考虑以下问题:
引擎分析决策树:
1. 该游戏的文本是否加密?
- 否 → 直接提取翻译
- 是 → 寻找文本解密和重加密工具
- 有工具 → 解密后翻译,翻译完重加密
- 没工具 → 考虑学习逆向或放弃
2. 该引擎是否有打包工具?
- 有 → 使用对应工具
- 没有 → 是否支持免封包读取?
- 支持 → 使用MoleBox封包
- 不支持 → 考虑学习逆向或放弃
2. 编码和启动问题
当GARbro提取的脚本是Shift-JIS编码时,需要考虑编码兼容性问题:
- 首先尝试转换为Unicode编码(UTF-16LE、UTF-8、GBK),测试游戏是否能正常显示
- 如果只有Shift-JIS编码能正常工作,有两种解决方案:
- 方案A(难):通过逆向工程修改游戏引擎支持GBK编码
- 方案B(易):使用汉字→日文替换表(hanzi2kanji_table.txt)结合特殊字体实现显示
编码替换原理:
这是示例文本(UTF-8) → 這是示例文本(Shift-JIS) → 这是示例文本(视觉呈现)
3. 打包示例
不同引擎需要不同的打包方法:
- Qlie/未加密KRKR引擎:使用arc_conv工具
arc_conv.exe --pack xp3 patch patch.xp3 arc_conv.exe --pack qlie data data8.pack
对于其他引擎,必须回到分析步骤,寻找合适的打包工具。
提示:更多引擎细节请参考GalTransl官方Wiki
四. 翻译质量问题
关于翻译质量问题、缓存管理与修正,请参考GalTransl官方文档:
重要建议:GPT字典功能对翻译质量影响显著。强烈建议在开始翻译前至少设置好角色人名和关键词汇。
五. 常见工具一览
工具名称 | 用途 | 特点和功能 |
---|---|---|
GARbro | 拆包工具 | 功能强大,能识别大多数Gal引擎,状态栏会显示引擎名称 |
EmEditor | 文本编码处理 | 可批量选择打开文件的编码,确保文件编码转化正确 |
Notepad— | 文本批量处理 | 支持批处理和单文件批量替换 |
Python | 多功能脚本工具 | 可用于脚本提取、文本处理、自动化任务、数据转换等 |
GalTransl_DumpInjector | JSON提取工具 | GalTransl自带的图形化工具,简单易用 |
六. 免责声明
- 本教程仅介绍GalTransl自带的JSON提取器(GalTransl_DumpInjector)及推荐的Python提取方法,其他提取方式不做保证。
- 本教程不对任何因使用导致的游戏或系统问题负责。
- 对于需要逆向工程的部分,请确保您了解相关法律风险和技术难度。