游戏脚本技术:按键精灵辨识字体.docx

上传人:cn****1 文档编号:551634742 上传时间:2023-04-04 格式:DOCX 页数:9 大小:5.30MB
返回 下载 相关 举报
游戏脚本技术:按键精灵辨识字体.docx_第1页
第1页 / 共9页
游戏脚本技术:按键精灵辨识字体.docx_第2页
第2页 / 共9页
游戏脚本技术:按键精灵辨识字体.docx_第3页
第3页 / 共9页
游戏脚本技术:按键精灵辨识字体.docx_第4页
第4页 / 共9页
游戏脚本技术:按键精灵辨识字体.docx_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《游戏脚本技术:按键精灵辨识字体.docx》由会员分享,可在线阅读,更多相关《游戏脚本技术:按键精灵辨识字体.docx(9页珍藏版)》请在金锄头文库上搜索。

1、游戏脚本技术:按键精灵辨识字体来源:按键学院 【按键精灵】当游戏里需要识别的文字量很大,而又不知道是什么字体,无法制作字库的时候,我们该怎么办呢?难道就甘心逐个提取文字点阵制作字库吗?想想那工作量就吓尿例子假如我们要做神武游戏的自动任务脚本,我们需要识别下图中红框部分的文字,识别到之后点击文字即可自动寻路到任务处。我们先用大漠综合工具提取一个字的点阵, 这里我们提取“门派指引人”中的门字 这里要注意,我们截图的时候,门字下面的下划线不能截取 第一步:截图之后,我们取文字颜色 第二步:点击提取单个点阵 第三步:在定义文字输入框里 输入“门”字 第四步:点击回车添加到当前字库 第五步:右击我们新添

2、加的门字选择查询系统字库看啊!它说可能的字体有那么多。 这。如果只有几个可能的字体,我们还可以一个个测下来 这么多的话。 测还是要测,但是怎么测才能节省成本呢? PS:如果弹出的结果是,在系统库里没有发现这个字 也可以用下面的处理方法,千万不能放弃治疗 有的情况下,大漠工具会有识别不出的情况肉眼点阵比较法我们知道有很多游戏,它的字体使用的就是我们的系统字体而我们又知道大多数游戏里的字体是9号字好,小编的系统是微软雅黑字体的打开记事本,输入门字,然后把记事本的字体设置为微软雅黑9号字,接着截取记事本里的门字的点阵和游戏的对比记事本:游戏中:点阵差那么多,一看就知道不是了。那么我们就试试宋体9号字

3、为什么是宋体?因为普遍的游戏用的是宋体字记事本:游戏中:哈哈点阵对上了,就是宋体9号字指定生成字库法如果是要用大漠综合工具生成系统字库之后,再加载到脚本里去找字这样太麻烦了,而且每次生成字库花费的时间还多所以,我们使用 GetDictInfo 函数 然后创建指定的文字小编利用GetDictInfo函数,做了一个简单的测字体脚本,方便大家测字在该脚本界面上,输入字体,字号,文字的颜色已经要测试的文字,启动脚本即可效果:代码:Call 注册大漠()Set dm = CreateObject(dm.dmsoft)Call dm.SetPath(c:test)/ 读取选项字体 = Form1.字体.t

4、ext字号=Form1.字号.text字 = Form1.字.text字体颜色 = Form1.字体颜色.textCall CreateFont(字 ,字体, 字号, 0, 字库.txt)/找字dm_ret = dm.FindStr(0, 0, 2000, 2000, 字, 字体颜色, 1.0, intX, intY)TracePrint dm_retIf intX = 0 and intY = 0 Then MessageBox 字Else MessageBox 没找到End IfSub CreateFont(Words, Font, Size, Index, Path) Dim TempS

5、tr TempStr = dm.GetDictInfo(Words, Font, Size, 0) TempArray = Split(TempStr,|) For i = 0 to UBound(TempArray) dm.AddDict Index,TempArray(i) Next Erase TempArray If Len(Path) 0 Then Call dm.SaveDict(0, Path) End IfEnd SubFunction 注册大漠() Dim i /释放附件内容 PutAttachment C:test_game, *.* Set ws = createobje

6、ct(Wscript.Shell) For i = 0 To 20 /注册atl跟dm插件 ws.run(regsvr32 atl.dll -s) ws.run (regsvr32 C:test_gamedm.dll -s) Delay 200 Set ws = nothing Set dm = createobject(dm.dmsoft) ver = dm.ver() /输出版本号 If ver Then /TracePrint 注册成功 Exit For End If Next If i = 20 Then TracePrint 大漠插件注册失败! EndScript End If Set dm = nothing Delay 10End Function游戏支持字体设置这一点很简单也很重要切莫粗心,遇到字体不能确定的情况下,先要看看游戏支不支持字体设置例如,大唐无双2 这款游戏就支持宋体和微软雅黑 两种字体的设置最后如果,测了多种字体之后,还是没有找到匹配的字体有如下几种原因:1、游戏中的字体并非系统字体,而是经过游戏官方自己改造过的字体2、游戏字体偏色太太太大了(这个还不算死绝的,尽可能找偏色规律,实在不行再放弃治疗)那么,这个时候可以放弃治疗了我们已经尽力了最后的方法就是一个个的提取文字点阵做字库

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号