使用MisakaPatcher制作Galgame外挂汉化补丁

news/2025/1/12 22:50:22/

简介

这两天我看见一个galgame机翻工具 MisakaTranslator,它类似VNR,使用C#编写并且支持Hook和OCR(图像识别)两种方法提取文本。

我在MisakaTranslator的基础上进行了一些改动,去除了所有的机翻的功能,转而支持了加载本地汉化补丁的功能,并把它重命名为MisakaPatcher。通过这个工具,即使我们在解包封包上遇到困难,理论上我们还是可以用外挂的方法(手工)汉化任意一款文字游戏。

本项目Github主页

主要功能

  • Hook + OCR提取文本
  • 智能模糊匹配。匹配最有可能的原句,并显示对应翻译。
    • 这个算法在提取到的文本与补丁里的原文相差很大的情况下依然可以正确匹配。
  • 全透明的窗口,美观的字体,更好的游戏体验

效果展示

OCR向导界面
游戏界面
(注:图里的翻译是我手工翻译的)

制作补丁

我们把游戏原文本提取出来(或者用手打出来)后,改成如下格式(通常需要自己写一个脚本),放到一个文本文档里面,编码按UTF-8保存,就是我们的汉化补丁了:

<j>
原句1
<c>
翻译1
<j>
原句2
<c>
翻译2
...

这其实就是一个键值对的词库,注意两种标签数量必须一致。建议使用EmEditor,写脚本的时候注意encoding。补丁目前只支持单个文本文件,如果有多个文件,请先合并。之后我可能会加一些简单的加密功能来保护补丁里的文本不被随意提取改动(但是毕竟是开源的,实际意义不大)。

加载补丁

打开MisakaPatcher,右下角设置 -> 翻译相关设置 -> 通用设置 -> 选择本地汉化补丁为翻译源 然后再 翻译相关设置 ->本地汉化补丁 -> 选择汉化补丁的路径 然后就可以开始游戏了

使用

如果使用Hook,就根据向导设置就好了,挺简单的我不讲了。
如果使用OCR,首先需要在OCR设置里选择OCR方法,可以用百度OCR API,但是比较麻烦,这里建议直接用离线的Tesseract。程序自带了Tesseract3的dll和dataset,但是如果觉得效果不够理想,可以安装Tesseract5(见Github README)。

使用OCR时的注意点:

  • 窗口截取目前在屏幕显示放大率不为100%的时候有bug,建议使用全屏截取
  • 对话框不透明度建议调到最高
  • 使用Tesseract必须使用预处理,建议使用提取纯白色文本处理,并且选择正确的参数,把截图转换为白纸黑字的样子,最有利于OCR识别。
  • 文字速度尽量调到最高,不然可能会截不全
  • 翻译的文本框不要和截屏区域放在一起,不然会把中文翻译一起截进去,导致无法正确识别原文本

智能模糊匹配原理

  • 根据编辑距离,算出两句句子粗略的相似度
  • 用一个sigmoid函数把粗略相似度转换为两句句子匹配的概率(0-1之间)
  • 建立HMM模型,提取到的文本就是我们每一个时间点的观察(样本)
  • 使用Viterbi算法,根据前一句所处位置的概率分布,从前一句转到当前句的概率,以及当前句的匹配程度,综合判断当前句匹配的概率
  • 保存当前最有可能匹配的8个结果,并且返回其中最有可能匹配的那句话的翻译
  • 因为我们知道大多数的句子都是不匹配的(整个模型是稀疏的),整个计算过程可以被简化,时间效率可以提升到每一步O(N)(N是整个补丁的句子总数)
  • 详见代码里的注释

http://www.ppmy.cn/news/122150.html

相关文章

PinkLotar 外挂汉化版+Mod 工具

PinkLotar 外挂汉化 【游戏名称】&#xff1a;ピンクローター 【发售时间】&#xff1a;2010年05月01日 vista/win7 需要管理员权限 由于使用NT 外挂技术 如果NT运行出错请重新注销操作系统&#xff0c;然后重试 https://www.rapidshare.com/files/433774827/PinkLotarcn.r…

OmniGraffle 中文 - 汉化 6.1版本汉化

官方版本已经支持中文化了&#xff0c;大家直接用官方版本就可以了。 想把OmniGraffle 6.1版汉化一下&#xff0c;目前已经完成了大部分&#xff0c;下载地址 http://download.csdn.net/detail/bokix/8177953 在github上建了个项目&#xff0c;希望有兴趣的和我一起来汉化&…

WooCommerce Memberships 中文汉化版会员系统插件版下载

WooCommerce Memberships 正版中文汉化版会员插件语言包免费下载: https://www.jiustore.com/woocommerce-memberships-in-chinese-and-english/ 全套零基础创建会员网站 (免费和付费内容)视频教程下载: https://www.jiustore.com/wordpress-membership-video-tutorial/ 你可…

GG and MM(every sg 游戏)

GG and MM 结论 题意&#xff1a; 每组给n个游戏&#xff0c;每个游戏有两堆石头&#xff0c;GG和MM轮流操作&#xff0c;操作规则&#xff1a; 从两堆里面选出一堆&#xff0c;假设这堆石头有x个&#xff0c;然后在另一堆里取k*x个石头(k是正整数) 谁不能取石头谁输&…

codeblocks20.03汉化版 附汉化补丁|codeblocks汉化版

codeblocks是一款非常优秀的跨平台集成开发环境&#xff0c;由纯粹的C语言开发完成&#xff0c;可以通过配置各种编译器而设置为各种不同编程语言的集成开发环境。该软件不仅支持语法彩色醒目显示&#xff0c;支持代码完成&#xff0c;支持工程管理、项目构建、调试&#xff0c…

imindmap11汉化版下载附带激活码

序列号:475WYH-XEDM5J-GNOKCV-88776 iMindMap 11的强大功能激发了创造性思维&#xff0c;并从你的想法中获得了更多。使用您的工具包使用自定义设计选项为您的创作添加样式&#xff0c;添加附加信息&#xff0c;将项目导出为其他格式&#xff0c;以及更多的…。图像能够传递比文…

Grasshopper 0.9汉化版下载 【Rhino5.0参数化插件】

是深度汉化&#xff0c;电池内部说明也汉化了&#xff0c;而且很是专业&#xff0c;后续会持续免费更新。不支持rhino6&#xff0c;支持的版本看下文&#xff0c;会有详细解释。下载地址http://www.nsoss.com/thread-559-1-1.html

GLUT的下载与安装

GLUT的下载与安装 1、下载地址https://www.opengl.org/resources/libraries/glut/glut_downloads.php#3.6 2、下载完成后解压&#xff0c;得到以下5个文件&#xff1a; 3、将glut.h文件复制到vs2019安装目录&#xff08;我是安装在C盘中的&#xff09; 找到vs2019安装的目录&a…