游客发表

按键精灵冷血课堂2:如何通过读取颜色来“认识”汉字?

发帖时间:2024-04-28 14:09:56

按键精灵冷血课堂2:如何通过读取颜色来“认识”汉字?

  上一课,认识我介绍了如何通过脚本来“认识”数字。按键还记得数字是精灵什么格式的吗?是5×8点阵的。今天,冷血我们继续讲脚本如何“认识”汉字――同样的课堂方法,通过“点阵”来识别。何通“点阵”是过读所有颜色挂的核心。

  另外需要说明的取颜是,写这个帖子是色汉给那些正在使用猎手的脚本,对脚本好奇,认识又不明白其原理的按键朋友看的。如果你能从对游戏的精灵痴迷转换到对脚本感兴趣,那是冷血我最高兴的事情了。关于外挂,课堂其实有很多的何通写法:有写封包拦截外挂的(早期网络游戏传奇使用封包拦截的最常见,在赌场里,先拦截游戏客户端发出的“封包”,把它改成一定中奖的信息,然后再发送给服务器,那么你在赌场里就一直中奖了,这就是早期的一种刷钱外挂);有修改游戏客户端的(热血江湖内置了“跳舞”的动作,不过现在没有开放给大家使用,通过修改我们电脑上的客户端Client.exe部分字节,可以达到开放跳舞功能的目的);有读取内存数据的(按键精灵就支持内存数据的读取);还有“写内存”的(比如,我们在游戏画面上看到有3个怪物,那么某个内存地址处,就有这3个怪物的“名单”,也记录了这几个怪物的“坐标”。现在,假如出现一个新怪物,那么刚才的“名单”里就多出一个地址来了。外挂马上把那个地址“写”入鼠标“点击”的地址――这就使服务器认为:你的鼠标已经“点击中了”刚刷出来的怪物了。这种外挂,手动抢怪都抢不过它的)。这些话我以前就讲过,可惜兄弟论坛改版之后,以前的技术帖子,都不知从何找起了。好象每个人的名字里面,也仅仅显示最近一个月来的帖子,再往前一点的帖子,就自动屏蔽掉了,让新人找帖子好累。

  好啦,那些都是题外话,都跟我今天讲的内容无关,我讲的是如何通过屏幕颜色达到“识字”的目的。

  还是以小地图为例。小地图上方,显示有当前地图的名字,见下图(放大8倍的),显示的是“泫勃派”。


 

 

 





  作为我们中国人,当然是认识这几个字的,脚本又怎么认识它呢?看过我前一个帖子“冷血课堂1--如何通过读取颜色来认识数字?”的朋友,应该对“点阵”的概念有了初步的认识吧?坐标数字显示的是5×8点阵,而这几个汉字显示的是11×11点阵(这个要你自己去数一数了。在热血江湖游戏里面,还有13×13点阵的汉字)。当然,颜色也变化了,不再是红色,而变成了“蓝色”,采取同样的操作方式进行各种测试,我们可以发现,这几个汉字,它的Y坐标是固定的,170版本之前,是“5”,180版本之后,显示的字往上移动了一个点,Y值变成了“4”,整个字体的位置偏上了1个像素点。个人觉得,往上移动1个点之后,界面有点不协调,还是以前170版本的字体显示的位置比较好看些,是居中的。

  好啦,话不扯远了。现在难点1是:这些汉字有多有少,有3个字的“泫勃派”,也有5个字的“柳善提督府”,第一个字的坐标不一致(Y轴是一致的,就是在同一个横排面上面,但是左右的宽度不一样)。难点2是:“柳善提督府”与“柳正关”的第一个字都是“柳”,如果只通过第一个字来识别的话,你不知道“柳”代表的到底是哪里。

  猎手是如何解决这两个难题的呢?

  那么脚本该如何解决上面这2个问题呢?首先,猎手增加一段程序,在上图那个白色的小框里,“从左向右”寻找“蓝色”的点,找到之后,那个点所在的“汉字”,就是第一个字。

  其次,猎手通过读第二个字的办法,达到“避开”这个“柳”字的目的。在游戏的早期,只有5个地图,这5个地图的第二个字是不一样的,当然,现在有点麻烦了,即有“神武门”又有“百武关”,第二个字都是“武”,采取只读第二个字的方法,就有问题了。读者朋友们可以考虑一下,用什么办法可以明确区别所有的地图名字呢?是不是要读全部的字?如果要读全部的字,当然是可以区别各个小地图的名字,可是速度就会慢一点了,5个汉字,需要读取121×5=605个点的颜色。

  打开FindMon.vbs文件:

  '

    热门排行

    友情链接