LunaTranslator 零基础实操:拖进一个日文游戏,30 分钟跑通实时中文翻译
【免费下载链接】LunaTranslator视觉小说翻译器 / Visual Novel Translator项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator
LunaTranslator 是一款开源的视觉小说翻译器,直接进游戏进程拦截文本流,日文台词实时出中文。读完这篇,你能独立完成"安装 → 取词 → 出第一句译文"的全部操作。全文路线:先跑通 → 看懂能力表 → 流程拆解 → 按场景调参 → 排错。
剧情高潮时对话框刷得飞快,你切出去粘好译文,游戏早翻到下一页了;更糟的是很多游戏的文本根本复制不出来,光标点不进对话框。通用翻译软件救不了这种"文本锁在进程内存里"的场景。LunaTranslator 的路子是直接注入游戏进程把文字截下来,注入不了就截图 OCR,再不行就听剪贴板——任何一条路断掉,都有退路。
先跑通
- 打开终端克隆仓库,得到一个 LunaTranslator 目录:
git clone https://gitcode.com/GitHub_Trending/lu/LunaTranslator- 在 Windows 上运行主程序(从官方文档下载 release 包,或已有 Python 环境时直接跑仓库里的
src/run.bat)。启动时先按向导选界面语言和翻译方向,比如"日语 → 简体中文"。完成后你应该看到带按钮栏的主窗口。 - 把游戏的 exe 拖进主窗口松开鼠标。软件会自动转区、启动并注入游戏,随后弹出文本选择窗口。
- 让游戏说两句对话,在候选文本里勾选正在滚动的那一行,点"显示"。几秒后,译文窗口开始实时滚动——第一句中文出现了。
别只双击某个 .py 文件来启动,那会缺界面;游戏已经开着的话不用拖,直接打开"选择游戏进程"窗口挑进程即可。
上手前先看一张表
| 能力 | 适用场景 | 约束 |
|---|---|---|
| HOOK 取词(含 HOOK 模拟器) | 主流与冷门视觉小说,NS/PSP/PSV/PS2 模拟器 | 个别老引擎注入失败 |
| 内嵌翻译 | 部分游戏,想把中文直接写回游戏画面 | 不是所有游戏都支持,需先在存档点试 |
| OCR 截图识别 | 注入失败或引擎不识别的游戏 | 受字体和分辨率影响,需框准区域 |
| 翻译引擎链 | 在线引擎 + 本地大模型任意组合 | 在线吃流量,本地吃显卡 |
| 文本后处理 | 专有词典、正则修正、换行控制 | 需按游戏维护词条 |
一句话讲清主备关系:HOOK 是主路,OCR 是备胎,本地模型是断网保险,内嵌翻译和后处理是加分项。
核心流程拆解
HOOK 模式取词的最快方式
什么时候用:现代视觉小说,要即时出译文的主场景。
- 拖 exe 进主窗口(或打开进程选择窗口手动挂钩已启动的游戏)。完成后看到文本选择窗口,列表还是空的。
- 让游戏跑一段对话,列表里开始陆续出现候选文本行。
- 勾选正在滚动的那一行并点"显示"。完成后译文区开始实时刷新,游戏每说一句你就能看到一句。
**当心:**候选行一直为空时别反复重启。先以管理员身份运行,再到游戏设置里开 Win32 通用钩子,仍不行就切 OCR 过渡,参数细节见 HOOK 设置。
激活内嵌翻译让原文变中文
什么时候用:候选文本行里出现了"内嵌"按钮。
- 在文本选择窗口找到带"内嵌"列的那一行,点它。
- 软件把译文写回游戏内存,对话框里的原文直接变成中文,像官方汉化版一样。
**别弄错:**不是所有游戏都扛得住内嵌。第一次一定在存档点附近试运行,崩了就关掉回到"显示"模式。
HOOK 失效时切 OCR 兜底
什么时候用:注入失败、或游戏引擎不在支持列表里。
- 切到 OCR 模式。完成后工具栏出现取框控件。
- 框住对话区域,让框恰好包住文字。完成后软件开始持续截图、识别、翻译,你不用动手。
**注意:**两个默认图标几乎一样的按钮,后一个只做"临时识别一次",不是持续识别,别按错。更多 OCR 参数见 OCR 引擎文档。
搭建翻译引擎链:主引擎加备胎
什么时候用:取词已经通了,需要稳定、快、掉线不断更的翻译源。
- 在翻译设置里选定一个在线引擎做主引擎,另加一个引擎放到备用位。完成后主引擎报错时会自动切过去,游戏不停顿。
- 打开翻译缓存。完成后同一句台词只请求一次,反复回看历史对话时几乎秒出。
- 有独立显卡的话,把本地大模型放到主位,在线引擎挪去备用,断网也能翻。本地推理依赖 llama.cpp 一类引擎在本机跑,具体平台与参数见大模型翻译接口。
**当心:**慢引擎别放主位,它会把整条链的延迟拖垮。
用文本后处理去掉机翻腔
什么时候用:翻译能跑,但人名乱跳、用词别扭、台词把对话框撑爆。
- 把角色名、地名加进游戏专用词典。完成后这些词在译文里固定输出你定的译名,不再忽中忽英。
- 用正则修正规则批量改误译,例如把某个代词统一成"我",规则说明见文本后处理文档。
- 限制每行字数、保留原文换行。完成后译文不再被拦腰截断。
**提示:**每个游戏存一套独立配置,切换游戏时自动加载,术语表互不串味。
按场景调参
组合一:核显机器 + 在线翻译
- 取词走 HOOK,普通"显示"模式。
- 主引擎选一个稳定的在线引擎,再挂一个不同家的引擎做备胎。
- 打开翻译缓存。
- 老游戏出现乱码时,改游戏字体或开"汉字转繁体/日式汉字"。
这一套的体验是:延迟低、不吃显卡。代价是原文要过网络,断网就停更。
组合二:独立显卡 + 本地大模型
- 取词走 HOOK,支持的游戏直接开内嵌。
- 主引擎换成本地日译中模型,本机推理。
- 在线引擎挪到备用位,只在线上模型出错或离线不足时顶上。
- 嫌等译文时游戏干等,把翻译等待时间调低,让游戏先走。
这一套的体验是:原文一句不出机器,地铁里也能翻。代价是首句延迟比在线稍高,吃显存。
组合三:模拟器用户
- 不拖游戏 exe,而是按模拟器 HOOK 文档对 NS/PSP/PSV/PS2 模拟器取词。
- 取词之后与 HOOK 流程完全相同:选文本行 → 显示或内嵌。
这一套的体验是:文本从模拟器内存直接来,连截图都省了。代价是只有部分模拟器版本支持,版本对照以官方列表为准(docs/emusupportlist/)。
排错速查
| 症状 | 最可能原因 | 处理 |
|---|---|---|
| 候选文本一直是空的 | 注入失败或引擎不识别 | 管理员运行;开 Win32 通用钩子;仍不行切 OCR |
| 每次只出一两个字,或上一行被顶掉 | HOOK 刷新延迟过低 | 提高刷新延迟,或调低游戏内文本显示速度 |
| 文本反复刷新刷屏 | 刷新延迟高 + 缓冲区过长 | 降低最大缓冲区长度,但别低于实际文本长度 |
| 译文整段乱码 | 游戏字体或编码问题 | 修改游戏字体为中文字体;老游戏再试汉字转繁体 |
| 开了内嵌后游戏崩溃 | 游戏不支持原位替换文本 | 存档点试运行;崩了就关掉内嵌回"显示"模式 |
结语
从装好软件到第一句中文跳出来,你只用了拖拽、勾选、点显示三个动作——这就是开头承诺的完整闭环。下次再打开一部日文游戏,直接把 exe 丢进主窗口,剩下交给它。官方文档里还有下载、多配置、Anki 学习等进阶内容,去把下一部游戏也翻完吧。
【免费下载链接】LunaTranslator视觉小说翻译器 / Visual Novel Translator项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考