☰
LunaTranslator 完整上手指南:快速搞定视觉小说 Hook 游戏实时翻译
2026/11/2 6:23:14 网站建设 项目流程

LunaTranslator 完整上手指南:快速搞定视觉小说 Hook 游戏实时翻译

【免费下载链接】LunaTranslator视觉小说翻译器 / Visual Novel Translator项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator

LunaTranslator 是一款面向视觉小说(Galgame)的实时翻译工具,它用 HOOK 技术直接从游戏进程里"抽"出正在显示的对话文本,再调用翻译引擎实时给出译文。对于想零成本读日文原版、却不想装各种脚本和汉化补丁的玩家,它把"取文本 → 翻译 → 显示"这条链路整合到了一个窗口里。本文按真实使用路径走一遍:先让你第一次就把游戏跑通,再按场景讲该用哪种模式,最后给出一组常见坑位与调优参数。

它能帮你做什么,适合谁

在决定下载之前,先确认它是否覆盖你的场景:

  • HOOK 提取:主要工作模式。LunaTranslator 适配了绝大多数主流与冷门视觉小说引擎,直接从游戏内存读取对话文本,稳定且低延迟。详见 HOOK 设置。
  • 内嵌翻译:在部分引擎上可以把译文直接写回游戏画面,替换掉原来的对白,效果接近"官方汉化"。详见 内嵌翻译。
  • HOOK 模拟器:对 NS / PSP / PSV / PS2 / PS3 上的大部分游戏,直接 HOOK 模拟器进程读文本,无需给模拟器打补丁。支持列表见 模拟器游戏支持。
  • OCR 兜底:内置高精度离线 OCR 模型,同时支持百度、腾讯等在线 OCR 接口,用于读不出文本或需要识别图片文字的情况。接口配置见 OCR 接口设置。
  • 丰富的翻译后端:在线接口(Bing、Google、DeepL、阿里等)、离线模型、以及 ChatGPT 类大语言模型接口(支持 OpenAI / Gemini / DeepSeek / 阿里云百炼 / 火山引擎 / 智谱 等)。大模型接口见 大模型翻译接口。
  • 日语学习辅助:日语分词、假名注音(Furigana)、语法加亮,支持 AnkiConnect 一键做卡、Yomitan 插件联动。分词注音见 日语分词及假名注音。
  • 语音合成与识别:集成 Windows TTS、Edge TTS、VOICEVOX、VoiceRoid 等大量引擎,让游戏"读"出对白;Win10/11 下还支持语音识别把玩家说的话转成文本。TTS 引擎见 语音合成引擎。

如果你只是想"打开游戏 → 看到中文",重点看下面两节即可;其余能力按需查阅。

最短上手路径:三步第一次成功

第一步:下载并解压到非系统目录

到官方下载页拿到 64 位 Win10/11 版本(旧系统有专门的兼容版,性能更差、易被杀软误报,非必要不选)。下载后解压到一个你自己的目录,比如D:\Games\LunaTranslator。

别放到C:\Program Files这类受保护路径。即使以管理员运行,也可能写不了配置和缓存,直接报 PermissionError。

顺手确认杀软状态:LunaTranslator 需要向游戏注入 DLL 来 HOOK 文本,LunaSubprocess32.exe/LunaHost32.dll等文件经常被误报。建议把整个 Luna 目录加入杀软信任列表(Windows Defender 走"病毒和威胁防护 → 排除项 → 添加排除项 → 文件夹")。这一步不做,后面几乎所有报错都指向它。

第二步:启动程序

目录里有三个入口:

文件作用
LunaTranslator.exe普通模式启动,绝大多数情况用这个
LunaTranslator_admin.exe管理员权限启动,仅当游戏本身需要管理员权限才能被 HOOK 时才用
LunaTranslator_debug.bat显示命令行窗口,出问题时看日志用

首次启动会自检/自动更新;如果失败,重新下载新版本解压覆盖到原目录即可。你的所有设置都保存在userconfig文件夹里,重装时不要删它,否则所有配置清零。

项目是闭源分发,如果你只是想看代码,可以克隆源码:git clone https://gitcode.com/GitHub_Trending/lu/LunaTranslator,核心源码 是主要入口。

第三步:把游戏连上,选中文本行

有两种方式接入游戏,推荐第一种:

方式 A:拖拽启动(推荐)。在 LunaTranslator 主窗口里,用鼠标把游戏的 exe 快捷方式拖到软件窗口上松开——软件会先按你的游戏设置拉起游戏,然后自动完成 HOOK。

方式 B:对已启动的游戏 HOOK。如果游戏已经在跑,打开工具栏的"选择游戏进程",在弹出的进程列表里选中游戏主程序即可。

接入后会弹出选择文本窗口,里面会出现若干候选文本行(游戏运行起来、显示对白之后才会刷新)。让游戏先说一句台词,然后在候选里挑那条真正对应游戏对话的文本行,点它旁边的显示按钮——翻译就开始了。若这一行还有个内嵌按钮,说明该游戏支持把译文写回画面(见下节)。

到这里你就跑通了核心链路:HOOK 拿到文本 → 引擎翻 → 窗口显示。

分场景使用:什么游戏走哪条路

场景一:Windows 视觉小说(HOOK 模式)

这是 LunaTranslator 的主场。绝大多数 Ren'Py、KiriKiri、TyranoScript、RPG Maker 等引擎出品的游戏都直接支持。操作即上面"第三步":拖入或选进程 → 选文本行 → 翻译。

判断候选行哪条是对的:让游戏多打几段不同的台词,看哪一行的内容跟着剧情同步变化,那一条就是对白;通常还伴随一个稳定不变的 ID 列。选完后如果文本反复闪烁,多半要调刷新延迟(见调优一节)。

场景二:NS / PSP / PSV / PS2 / PS3 模拟器游戏

打开对应平台的模拟器,加载游戏后走 HOOK 流程,只不过"游戏进程"换成了模拟器本身。常见模拟器支持列表见 模拟器支持(或 docs/emusupportlist/all.md)。

  • 32 位模拟器(PPSSPP 旧版、Vita3K 老分支等)走LunaSubprocess32.exe,64 位模拟器走LunaSubprocess64.exe,软件会自动选择,你不用管。
  • 部分 JIT 类模拟器(Unity / Yuzu / PPSSPP / Vita3K / RPCS3)依赖"JIT HOOK",如果选不出文本,可以在 HOOK 设置 里为这款游戏单独加"专用 HOOK 设置",不必改全局默认。
  • 模拟器本身如果是 64 位,游戏里跑的还是 32 位代码,这是正常的,不影响 HOOK。

场景三:HOOK 拿不到、或者要读的不是对话(OCR 模式)

以下情况切到 OCR 更合适:

  • 游戏是位图文字(比如把整段对话画到一张背景图上),HOOK 只能读到空指针;
  • 你想翻译游戏界面里的说明文字、图鉴、菜单,而不是对白;
  • 你在看静态图片(截图、漫画页、攻略图)。

用法:切到 OCR 模式 → 在屏幕上框选要识别的区域 → 松开后自动识别并翻译,之后再改框也会跟着刷。离线 OCR 默认内置模型即可用;精度不够时可以在 OCR 接口设置 里挂一个百度 / 腾讯 / 阿里等在线接口。

OCR 和 HOOK 是两条独立的取文本通道,理论上可以并存,但同一时刻只有一条在真正驱动翻译。切模式前先想清楚"我这次到底要读什么"。

场景四:让译文"住进"游戏画面(内嵌翻译)

如果选中文本那一行有内嵌按钮(不是每个游戏都支持,没有就不支持),点它,译文会直接替换掉游戏里的原文,观感接近官方汉化。"显示"和"内嵌"可以同时打开:前者在 Luna 窗口里给完整的原文 + 译文,后者只改游戏画面。

乱码是内嵌模式的头号敌人,两类原因对应两套解法(详见 内嵌翻译):

  • 字体问题(多见于英文游戏显示中文):激活"修改游戏字体",选一个带中文字形的字体;
  • 字符集问题(多见于古早日文 Galgame 使用 Shift-JIS):激活"将汉字转换成繁体/日式汉字",让写回画面的字符落在游戏能识别的字符集里。

内嵌本质是往游戏字符串里写数据,理论上有一定崩溃风险,重要进度先存档再试。

进阶与调优:把体验拧到最顺

HOOK 能跑不代表跑得舒服。真正影响日常体验的只有下面这几项,其余默认即可。完整说明见 HOOK 设置 和 文本处理。

调文本刷新节奏

  • 刷新延迟:出现"每次只蹦出一两个字"或"一行一行顶掉上一行、最后只剩最后一行",是延迟太低,把文本刷新得比游戏打得还快——调高;反之文本正确但更新慢,适当调低。
  • 最大缓冲区长度:文本反复不停刷新、缓冲区被撑爆时,适当调小,别低于实际文本长度。
  • 最大缓存文本长度:默认 100 万,看着大,但绝大部分是无用文本,调到1000通常就够,还能显著减少"看历史文本"时的卡顿。
  • 最大允许输出文本长度:跳过剧情 / 回看历史时游戏会一口气喷大量文本,把这个值调成合理上限,能过滤掉突发洪流。

用文本处理方法清理脏数据

HOOK 偶尔会读到重复字符、控制符、标点噪声。文本处理方法 里有一整套过滤器:过滤非 Shift-JIS 字符、过滤控制符、过滤英文标点、只保留「」内文本等,可以按顺序叠多个。注意:内嵌模式下大多数过滤器会被关闭(怕破坏游戏字符串),只保留"过滤换行符、字符串替换、自定义 Python 处理、过滤尖括号、去除花括号"这几个安全的。

换翻译引擎,而不是换软件

  • 追求速度和稳定:Bing / Google 这类主流接口默认就够用;
  • 追求语气和上下文贴合(尤其长段落、双关):走 大模型通用接口,把 API 地址、Key、model 填好,可以开启"流式输出"让译文逐段显示,再配上"附带上下文个数"给模型喂前文;
  • 有多个 Key 想轮询:用|分隔写在同一栏即可;想同时用多个不同平台对比效果,就点"+"复制一份接口配置,起个名字单独打开;
  • 完全不想联网:接本地离线翻译模型(llama.cpp 部署后走"大模型通用接口",或专门的离线翻译模型接口)。

让译文"读"出来

打开 语音合成引擎 里你已有的那一个:Windows 自带 TTS(Win10/11 下自然语音质量最好)、Edge TTS(免费、语感自然)、VOICEVOX / VoiceRoid(日语角色音)、GPT-SoVITS(本地克隆音)。选好后开启"自动朗读",对白显示的同时就播出来。

避坑指南:高频问题与直接解法

以下四件占了绝大多数求助量,按"问题—原因—方案"给你。

问题 1:报错 "Missing embedded Python3" 或找不到重要组件

原因:内置 Python 运行时被杀软隔离了。方案:把 Luna 目录加入杀软信任/排除项,然后重新下载解压(不是简单恢复文件),避免其他组件也缺。

问题 2:一直停在"正在等待 DLL 注入到游戏中……"

原因还是杀软,只是它拦在了注入 DLL 这一步。方案同上,加入排除项。确认游戏进程本身也允许被注入(少数游戏带反注入,切 64 位/32 位版本试试)。

问题 3:PermissionError

原因:软件装在C:\Program Files等受保护目录,写不了配置/缓存。方案:把整个 Luna 目录迁到D:\之类的普通用户目录,重装前记得搬走userconfig。

问题 4:HOOK 后选不到正确文本行

按顺序排查:

  1. 是否用了LunaTranslator_admin.exe?如果游戏本身以管理员运行,普通进程是注入不进去的;
  2. 候选行里是不是根本没出现目标对白?那多半引擎没适配,去官方提 issue,别在"代码页"设置上反复改(对绝大多数游戏没用);
  3. 出现了但内容乱?看 HOOK 设置 里的"游戏专用设置",为这款游戏单独加一份 HOOK 配置,激活"Win32 通用钩子"(GDI / D3DX / 字符串函数),或让作者补一条"特殊码";
  4. 文本对但节奏错(一个字一个字蹦):调刷新延迟,见上节。

问题 5:更新失败 / 想手动更新

默认会自动更新。失败时直接下载新版本解压覆盖到原目录即可,userconfig不要动。想要"干净重装",也只删 exe 和库,别删userconfig,否则设置全丢。

一句话总结与延伸方向

一句话:LunaTranslator = HOOK 抽文本 + 你选的翻译引擎 + (可选)内嵌回画面,第一次跑通的关键就三件事——解压到非系统目录、加杀软信任、选对那条文本行。

跑通之后,按你的目标延伸:

  • 想让观感更像官方汉化 → 读 内嵌翻译
  • 想学日语、边玩边背词 → 配 假名注音 + Anki 集成
  • 想让游戏说话 → 语音合成引擎
  • 想接入自己调过的模型 → 大模型翻译接口 和 OCR 接口
  • 想让翻译更干净 → 文本处理
  • 想深入了解实现 → 核心源码、Native 注入实现

更多细节都集中在 官方文档,遇到不适配的游戏直接去提 issue,比在本地参数里死磕更快。

【免费下载链接】LunaTranslator视觉小说翻译器 / Visual Novel Translator项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询