2026/8/24 19:20:35

4 步跑通 Unity 游戏翻译插件:XUnity.AutoTranslator 配置与排错指南

4 步跑通 Unity 游戏翻译插件:XUnity.AutoTranslator 配置与排错指南 4 步跑通 Unity 游戏翻译插件XUnity.AutoTranslator 配置与排错指南【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslatorXUnity.AutoTranslator 是一款针对 Unity 游戏的实时翻译插件它挂钩游戏渲染的 UI 文本把未命中缓存的文本发往在线翻译服务自动翻译并把结果写入本地文件避免同一句重复请求。项目内置 Google、Bing、DeepL、百度等 16 种翻译端点支持 BepInEx、MelonLoader、IPA 等插件环境。本文从安装到最小可用配置再到出问题时怎么查按顺序带你完成整套流程。先跑起来最短的 4 步配置这条路径用 ReiPatcher 独立包ReiPatcher 是在启动时修补游戏内存代码的组件随包附带不用单独装。如果你已经有插件管理器直接看下一节。从项目发布的 releases 页下载XUnity.AutoTranslator-ReiPatcher-{版本}.zip解压到游戏根目录确认SetupReiPatcherAndAutoTranslator.exe和游戏主 exe 在同一层。运行SetupReiPatcherAndAutoTranslator.exe按提示完成 ReiPatcher 配置。用它在旁边创建的{游戏名} (Patch and Run).lnk快捷方式启动游戏首次启动会自动生成配置文件和翻译目录。验证结果界面文本被替换为目标语言即成功。默认端点是GoogleTranslate免密钥源语言ja目标语言en不满意再改。注意并非所有文本框架都默认开启IMGUI 默认关闭。如果部分界面没被翻译属于正常现象按第三节调整配置即可。按你的游戏环境选一条安装路径先判断游戏编译模式看游戏目录下*_Data/里面有Managed子目录且含 dll 的是 Mono 模式没有Managed目录的一般是 IL2CPP 模式Unity 的一种编译模式C# 代码先转 C 再编成原生代码常见于较新的商业游戏和 Mono 相对。你的情况选哪条路放置位置已装 BepInExMono 游戏最常见BepInEx 包直接解压到游戏根目录dll 落到BepInEx/plugins/XUnity.AutoTranslator/已装 MelonLoaderMelonLoader 包Mods/与UserLibs/已装 IPA / UnityInjector对应包Plugins/或UnityInjector/什么都没装想最快跑通ReiPatcher 独立包见上一节两个容易踩的点独立包和插件管理器互斥不要混装否则插件加载会冲突。IL2CPP 游戏要用对应的 IL2CPP 版本包BepInEx 6 或 MelonLoader-IL2CPP 构建且功能有缺IMGUI 翻译、TextGetterCompatibilityMode都不可用部分文本需要 ALTU 手动重新挂钩。日常真正用到的 8 个配置项配置文件首次启动游戏后自动生成BepInEx 环境下位于BepInEx/config/XUnity.AutoTranslator.cfg。全部条目有 60 多个下面这段是最常用组合解释各项作用[Service] EndpointGoogleTranslate ; 翻译服务取值见下表 FallbackEndpoint ; 主端点失败时自动切换的备用服务 [General] FromLanguageja ; 游戏原文语言 Languagezh-CN ; 翻译目标语言 [TextFrameworks] EnableIMGUIFalse ; 要翻译其他插件菜单时改为 True翻译服务怎么选摘选端点需要密钥说明GoogleTranslate / BingTranslate / DeepLTranslate不需要免费网页接口不保证长期可用DeepLTranslateLegitimateDeepL API Key每月 50 万字符免费译文质量高BaiduTranslateAppId AppSecret实名认证后每月 100 万字符免费中文场景合适LingoCloudTranslateToken仅支持中/日/英再记两个MaxCharactersPerTranslation默认 200限定单条请求的最大字符数超长的文本会被跳过EnableUIResizing默认 True控制翻译后自动调整 UI 排版FallbackFontTextMeshPro用于给 TextMeshProUnity 的一种文本渲染组件补中文字体避免缺字显示成方块。翻译不生效时的 4 步排查第 1 步查日志和文件。BepInEx 环境的日志在BepInEx/LogOutput.log。如果插件完全没加载确认XUnity.AutoTranslator.Plugin.Core.dll与XUnity.AutoTranslator.Plugin.BepInEx.dll两个文件同时存在于插件目录。第 2 步查文本框架开关。IMGUI 和 TextMesh 默认关闭。菜单、系统弹窗或其他 Mod 的界面没翻译时把EnableIMGUI改为True3D 场景里漂浮的文字没翻译时试EnableTextMeshTrue这类文本通常价值低所以默认关着。第 3 步查插件是否自我保护性关闭。插件内置防滥用机制新文本出现后先等 1 秒确认不再变化才发请求同一时间只发 1 个请求不做并发单次游戏会话最多约 8000 条请求服务连续 5 次无结果会直接停用。如果你发现游戏文本突然不再更新确认网络或端点问题已解决后按 ALTQ 重启插件。第 4 步查兼容性模式。个别游戏拿屏幕上显示的文字当分支条件翻译后会出现按钮失灵、选项点不了。此时把TextGetterCompatibilityMode设为True它会让游戏逻辑继续看到原文。IL2CPP 游戏不支持该选项遇到此类问题只能换环境或包。布局类问题缺字方块填FallbackFontTextMeshPro或OverrideFont指向支持目标语言的字体文字溢出、排版被撑破确认EnableUIResizingTrue或在翻译目录放一个resizer.txt按组件路径缩小字号如CharaCustom/...ChangeFontSizeByPercentage(0.5)。缓存文件与手动修正翻译结果全部落在一个文本字典里插件会读取Translation目录下所有 .txt 文件支持 zip 打包。三个文件值得认识_AutoGeneratedTranslations.txt插件自动翻译出的句子。某句不满意直接改这个文件下次进游戏生效或按ALTR立即重载。_Substitutions.txt预替换规则。写一条リン凛游戏中所有リン会先替换成正确写法再送去翻译专治角色名被反复译错。自建文件优先级高于自动文件且支持正则例如r:^シンプルリング ([0-9])$Simple Ring $1。正则规则要克制写多了会拖慢文本匹配。几个常用热键ALT0 打开插件 UIALTT 在译文和原文间切换方便对照检查ALTU 手动挂钩漏掉的文本。进阶功能与延伸阅读资源重定向附带的 XUnity.ResourceRedirector 模块能把游戏读取的 TextAsset 重定向到磁盘文件直接手写覆盖适合做完整汉化包不必动游戏本体。图片替换[Texture]段设EnableTextureTranslationTrue即可用Translation目录下Texture/中的图片替换游戏内图片先用EnableTextureDumpingTrue把游戏图片导出再编辑导出选项有明显性能开销用完就关。自写翻译服务实现ITranslateEndpoint接口把 dll 放进Translators目录即可被识别src/Translators/下的现有实现可直接参考。与其他插件集成其他 Mod 可通过AutoTranslator.Default.TryTranslate(...)查询翻译缓存完整接口说明见项目 README 的 Integrating 部分。接下来做什么再启动一次游戏按 ALT0 确认当前端点、源语言、目标语言都符合预期。打开_AutoGeneratedTranslations.txt挑出最常出现的 5~10 句错译手动修正保存后按 ALTR。若某类界面始终不翻译按顺序开启[TextFrameworks]段对应开关先 IMGUI再 TextMesh逐一验证。需要密钥类服务时把值填进对应小节[Baidu]、[DeepLLegitimate]等密钥泄露后立即在服务端吊销。配置稳定后把整个Translation目录备份一份——你的所有手动修正和替换规则都在里面。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考