介绍
这两天看到一个galgame的机器翻译工具MisakaTranslator,类似VNR,用C#写的,支持Hook和OCR(图像识别)两种方式提取文本。
我在MisakaTranslator的基础上做了一些改动,去掉了机器翻译的所有功能,转而支持加载本地汉化补丁的功能怎么制作游戏汉化补丁,并改名为MisakaPatcher。 有了这个工具,即使我们解包遇到困难,理论上我们仍然可以使用插件的方式(手动)将任何文字游戏汉化。
本项目Github主页的主要功能是全透明窗口,漂亮的字体,更好的游戏体验展示
(注:图中的翻译是我人工翻译的)
制作补丁
我们把游戏的原文提取出来(或者手打出来)后,改成如下格式(一般需要自己写脚本),放到一个文本文件中,保存为UTF-8怎么制作游戏汉化补丁,这是我们的中文补丁:
原句1
翻译1
原句2
翻译2
...
这实际上是一个键值对的词库。 注意两个标签的编号必须相同。 推荐使用EmEditor,写脚本时注意编码。 该补丁目前只支持单个文本文件,如果有多个文件,请先合并。 之后我可能会加一些简单的加密功能来保护补丁中的文字不被随意提取和更改(但毕竟是开源的,所以实际意义不大)。
加载补丁
打开MisakaPatcher,右下角设置->翻译相关设置->通用设置->选择本地汉化补丁作为翻译源然后翻译相关设置->本地汉化补丁->选择汉化补丁的路径然后你可以开始游戏
利用
如果使用Hook,按照向导设置即可,很简单,就不说了。
如果使用 OCR3D交通工具,首先需要在 OCR 设置中选择 OCR 方法。 可以使用百度OCR API,但是比较麻烦。 这里推荐直接使用离线的Tesseract。 程序自带Tesseract3 dll和数据集,但如果觉得效果不理想音乐音效,可以安装Tesseract5(参见Github README)。
OCR使用注意事项:智能模糊匹配原理