资讯动态

XUnity.AutoTranslator 完整使用教程:从零把 Unity 游戏改成中文版

发布时间:2026/8/17 21:26:52 来源:尧图企业网站定制
XUnity.AutoTranslator 完整使用教程从零把 Unity 游戏改成中文版【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator在某个深夜你终于下载了那款心心念念的日式 RPG满怀期待地点开游戏屏幕上却弹出一屏密密麻麻的片假名。你打开手机翻译软件一个字一个字地敲——敲到第 20 句热情已经凉了一半。是不是每个外语苦手都经历过这样的啃生肉时刻XUnity.AutoTranslator 正是为解决这个场景而生的开源 Unity 游戏自动翻译插件它运行在游戏进程内部自动识别并替换屏幕上的文本支持十几种翻译引擎、七套主流文本框架还能配合手工词典把专有名词校准到你满意为止。这篇文章不打算复述官方文档而是按照从第一次启动到跑通、再到调优排障的真实路径带你完整走一遍。 先弄清楚这个插件的家庭结构动手之前建议你先花一分钟搞懂它的组成后面遇到任何问题都能快速定位。一个核心 四个马甲XUnity.AutoTranslator 真正的翻译逻辑全部封装在XUnity.AutoTranslator.Plugin.Core里而它对外提供四种插件形态分别适配不同的游戏加载器插件形态适用场景备注BepInEx 版绝大多数主流 Unity 游戏社区最常用推荐首选MelonLoader 版较新的 Unity 游戏支持 IL2CPP 游戏IPA 版特定类型的游戏如部分 Honey Select 系游戏UnityInjector 版老牌传统游戏兼容旧引擎独立版ReiPatcher没有装任何加载器的游戏免依赖双击即用简单说先看你游戏的插件目录里装了哪个加载器再选对应的压缩包。实在不确定就选独立版 ReiPatcher——它不需要任何前置框架。翻译能力从哪里来翻译请求不是核心插件自己发的而是交给放在Translators子目录里的翻译端点插件。核心插件负责找到文本、查缓存、排队、防刷端点负责真正调用翻译服务。这个解耦设计意味着换翻译引擎不用动核心只改一行配置。️ 环境准备三类安装方式的完整流程场景 A游戏已经装了 BepInEx最常见如果你在游戏目录里看到BepInEx文件夹就走这条最省事的路下载XUnity.AutoTranslator-BepInEx-{版本号}.zip把压缩包整体解压到游戏根目录让里面的 dll 落进BepInEx/plugins下直接启动游戏插件会在首次运行时自动生成配置文件检查目录结构是否符合预期游戏目录/BepInEx/plugins/XUnity.AutoTranslator/ ├── XUnity.AutoTranslator.Plugin.Core.dll ├── XUnity.AutoTranslator.Plugin.BepInEx.dll ├── XUnity.AutoTranslator.Plugin.ExtProtocol.dll ├── ExIni.dll └── Translators/ └── 各翻译端点 dll小贴士BepInEx/core下的MonoMod.*和Mono.Cecil.dll是可选依赖用于补充 Harmony 钩不到的顽固方法保留即可。场景 B游戏什么加载器都没有独立安装下载XUnity.AutoTranslator-ReiPatcher-{版本号}.zip解压到游戏根目录确保SetupReiPatcherAndAutoTranslator.exe和游戏 exe 同级运行 Setup 程序它会自动完成补丁注入之后用生成的快捷方式名字形如{游戏名} (Patch and Run).lnk启动一次游戏就被打上了翻译补丁以后直接点原 exe 启动即可补丁是一次性的。场景 CIL2CPP 游戏如果游戏的GameAssembly.dll采用 IL2CPP 编译很多新游戏都是需要安装 BepInEx 6 的 IL2CPP 版本并选择XUnity.AutoTranslator-BepInEx-IL2CPP包。需要提前说明IL2CPP 支持目前是可用但不完整——文本钩取可能漏检、IMGUI 暂不支持、TextGetterCompatibilityMode 不可用。遇到翻译不动的情况多半要配合手动钩取见下文热键。✅ 最小可用演示跑通你的第一个翻译安装完成后我们要做一次最小验证确认整条翻译链路是通的启动游戏随便进入一个有对话或菜单的界面按ALT 0呼出翻译聚合窗口注意是数字 0不是字母 O这个窗口会列出当前生效的翻译端点再等几秒观察屏幕上是否出现中文。若出现了恭喜整条链路已经通了退出游戏打开游戏目录下的Translation/zh-CN/Text/文件夹你应该能看到_AutoGeneratedTranslations.txt——里面记录了本次游戏钩取并翻译过的所有文本看到这个文件就等于插件在正常工作了。这一步很关键很多人装完插件发现没反应其实是安装目录错了或者没等插件加载完。先完成上面四步再谈调优。顺手记住这几个热键热键作用ALT 0开关翻译聚合窗口ALT 1开关聚合窗口的详细视图ALT T在原文与译文之间切换对照检查神器ALT R热重载翻译文件改了词典立刻生效ALT U手动钩取文本用于默认钩子漏掉的文本ALT F切换自定义字体需先配置 OverrideFontALT Q插件因连续报错自动停机后手动重启⚔️ 三大核心能力逐个击破装好、跑通之后接下来的文章重心从能不能用转向好不好用。把 XUnity.AutoTranslator 的能力拆成三块逐一吃透。能力一自动翻译管线与防刷机制从钩到一行文本到显示译文中间经过钩取 → 四级查缓存 → 去空白规整 → 排队 → 请求端点 → 回写 UI。很多人关心一直挂机会不会把翻译服务打爆插件内置了 16 条防刷策略值得知道的几条新文本出现后至少等 1 秒再发起请求确认文本稳定才动手同一会话最多发 8000 次请求同一时间永远只发一个请求串行相同文本只请求一次其余全部命中内存/磁盘缓存连续 5 次请求无结果、或检测到游戏每帧都在排队翻译插件会自动停机保护端点。也就是说只要不乱改MaxCharactersPerTranslation挂机一整晚也不会把端点打挂。能力二手工润色与正则工程自动翻译只是及格线真正让译文像人话的是这层手工能力。插件的翻译目录是Translation/{语言}/Text/里面任何.txt文件都会被读取优先级高于自动生成文件。词典替换——专有名词用_Substitutions.txt强制校正魔王魔王 勇者勇者 聖剣圣剑 私は{{A}}我是{{A}}带{{A}}的写法表示参数化替换配合GenerateStaticSubstitutionTranslationsTrue可以生成不带变量的静态译文。标准正则——以r:开头用于规则化文本比如装备名r:^シンプルリング ([0-9])$Simple Ring $1 r:^レベル ([0-9])$等级 $1分割正则——以sr:开头解决游戏把多段文本拼在一起显示的问题。比如游戏显示01 シンプルリング、02 シンプルリング不必为每个编号写正则而是把文本拆开再各自查词sr:^([0-9]{2}) ([\S\s])$$1 $2注意正则不要放在任何以_开头的自动生成文件里它们只在手动文件里生效。正则用多了会拖慢性能够用就好。字体微调——resizer.txt文件可以按路径批量调整字号CharaCustom/CustomControl/CanvasDrawChangeFontSizeByPercentage(0.5)这句的意思是把该路径下所有文本字号缩到原来的 50%。想找到路径开启EnableTextPathLoggingTrue让插件把路径打到日志里。能力三纹理翻译与资源重定向有些游戏的文本直接画在图片里比如标题图、立绘对话框这种文本任何钩子都无能为力。插件为此提供了纹理替换能力[Texture] EnableTextureTranslationTrue EnableTextureDumpingTrue EnableTextureScanOnSceneLoadTrue TextureHashGenerationStrategyFromImageName流程是打开EnableTextureDumping把游戏里的图片导出到Translation/{语言}/Texture/文件名带[哈希]你用 PS 改完图之后原样放回再开EnableTextureTranslation加载。识别策略默认FromImageName最省性能FromImageData更准但要读取全部图片数据、开销大。更进一步插件还内嵌了一个独立的资源重定向库XUnity.ResourceRedirector能把游戏加载的任意资源如 TextAsset重定向到本地文件实现不改游戏文件也能替换资源——这通常用于整段剧情文本的替换。 翻译引擎选型实战翻译质量 80% 取决于端点选择。插件内置的端点分三类免认证、开箱即用端点特点风险GoogleTranslate免费、无字符上限接口不稳定BingTranslate免费、稳定接口不稳定DeepLTranslate免费、公认质量最高接口不稳定PapagoTranslate免费、韩日互译强接口不稳定需要 API Key 的正规服务端点额度参考配置项GoogleTranslateLegitimate新用户 $300 试用额度[GoogleLegitimate] GoogleAPIKeyBingTranslateLegitimate每月 200 万字符免费[BingLegitimate] OcpApimSubscriptionKeyDeepLLegitimate每月 50 万字符免费[DeepLLegitimate] ApiKey/FreeBaiduTranslate每月 5 万字符免费[Baidu] BaiduAppId/BaiduAppSecretYandexTranslate每天 100 万字符免费[Yandex] YandexAPIKey本地软件与自定义端点LecPowerTranslator15本机装过 LEC Power Translator 即可用ezTrans XP日韩机翻配合 Ehnd 词典使用CustomTranslate面向开发者指向任意自定义 HTTP 翻译服务请求格式为?fromjatozh-CNtext...响应直接返回译文文本。推荐的组合玩法主端点用质量高的 DeepL再配一个免费端点做兜底[Service] EndpointDeepLTranslate FallbackEndpointGoogleTranslate主端点连续失败时插件会自动切到备用端点游戏体验不会断档。 从报错到解决一次完整的排障实录下面这条排障路径来自真实经验遇到翻译没生效时建议按顺序走一遍而不是瞎试。现象装好插件、启动游戏等了半天界面还是全外文_AutoGeneratedTranslations.txt也没生成。第一步确认安装位置。打开游戏目录检查插件 dll 是否真的在BepInEx/plugins/XUnity.AutoTranslator/下。十有八九的没反应都是因为把压缩包解压到了桌面或者解压路径多套了一层文件夹。第二步查日志。打开BepInEx/LogOutput.log搜索AutoTranslator关键字。看到Initialized就说明插件加载成功看到报错则复制错误信息去搜。第三步打开调试开关。在AutoTranslatorConfig.ini里临时开启[Debug] EnableConsoleTrue EnableLogTrue [Behaviour] EnableTranslationHelperTrue重启游戏控制台会输出每条文本的钩取与翻译过程——能看到已钩取就说明检测到了看到已翻译但屏幕没变问题就出在回写阶段。第四步验证端点连通性。按ALT 0打开聚合窗口看端点是否显示可用。如果端点报错多半是网络问题或接口变更先切换端点排除。第五步处理最经典的游戏崩溃/逻辑错乱。有些游戏会用界面上的文本来驱动逻辑翻译后逻辑反而跑偏。此时开启[Behaviour] TextGetterCompatibilityModeTrue这个模式会骗游戏显示的是译文但游戏读到的仍是原文。怎么判断是否需要用按ALT T切回原文后功能恢复正常就说明需要它。第六步处理中文显示成方块。这是汉化最常见的问题——游戏自带的字体没有中文字形。在配置里指定一个中文字体[Behaviour] OverrideFont你的中文字体名 ; UGUI 用 FallbackFontTextMeshPro你的TMP字体 ; TextMeshPro 用推荐优先TextMeshPro 场景建议优先用FallbackFontTextMeshPro回退字体只对缺失字符生效比全量替换字体更稳。️ 避坑清单 Top 5把社区里踩过最多的坑提前列出来帮你省掉半天排查时间IMGUI 默认关闭。很多 mod 的菜单是 IMGUI 写的想翻译它们要去[TextFrameworks]里把EnableIMGUITrueMaxCharactersPerTranslation别乱调大。默认 200上限 2500。调得过大既浪费请求又容易触发防刷停机自动生成文件是低优先级。_AutoGeneratedTranslations.txt永远最后生效手动文件里的同条翻译会覆盖它——所以别在这个文件里手动改词改完下次运行会被覆盖别在分享包时开着调试开关。EnableTextureDumping、EnableConsole、OutputUntranslatableText这些只适合本地调试分发给别人前务必关掉IgnoreTextStartingWith的默认值别删。它默认是一个不可见的蒙古元音分隔符\u180e用于防止资源重定向产生的文本被二次翻译删掉可能导致文本被翻两遍。 给进阶用户的最后一块拼图一张图看懂完整工作流把前面所有内容收拢成一条链路以后你调任何参数都能知道它影响的是哪个环节游戏文本(UGUI/TMP/NGUI/IMGUI...) │ ① 钩子捕获Harmony / MonoMod ▼ 文本进入翻译队列 │ ② 四级查缓存原文→去首尾空白→去换行空白→正则/词典 ▼ 命中? ──是──▶ 直接回写不花任何请求 │否 ▼ 防刷网关1秒静默确认 / 串行请求 / 单会话8000次上限 │ ▼ 翻译端点(Google/DeepL/Baidu/Custom...) │ ③ 结果写入内存磁盘缓存 ▼ 文本后处理(富文本还原 / 换行强制拆分 / 变音符号处理) ▼ UI 组件回写(自动缩放 / 字体替换 / resizer.txt 微调)这七个环节分别对应配置里的[TextFrameworks]、[Behaviour]、[Service]、[Files]、[Texture]这几段。出问题时按环节对号入座就能快速锁定病灶。 现在开始你的第一次汉化之旅回到开头那个深夜屏幕上的片假名不会自己消失但你只需要做四件事就能亲手把它们变成中文——选对安装包对照游戏目录里已有的加载器下载对应版本并解压到正确位置完成最小验证启动游戏按ALT 0确认屏幕上出现译文、Translation/zh-CN/Text/下生成缓存文件配置翻译引擎在AutoTranslatorConfig.ini里把Languagezh-CN、FromLanguageja选一个顺手的主端点和兜底端点手工润色把专有名词写进_Substitutions.txt中文变方块就配置中文字体剩下交给时间去积累缓存。别忘了翻译结果会永久缓存在本地——玩得越久之后的加载越快请求越少。用不了几个晚上你的专属中文版就会成型。生肉变熟肉只差一个插件的距离。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价