VC编程——水晶连连看外挂

之前写了一篇关于QQ游戏的连连看的外挂,从读取内存方式实现。

读取内存方式有个缺点:如果游戏内存分配不是全局分配,而是临时分配,则每次读取的内存就和上次不相同,读内存就没意义了。

下面介绍一个基于读图的方式制作的“水晶连连看”外挂。

 

一:效果图

VC编程——水晶连连看外挂_第1张图片 

上面显示的线条就是即将要消掉的棋子。

 

二、需要具备的技能

1、VC编程及技巧

2、熟悉图像识别

 

三、实现方法

(由于这个外挂是同事编写的,因此代码略)

1、按照之前的方法注册热键(HotKey)

2、在OnHotKey中实现代码(和QQ的连连看类似)

3、代码中通过抓图抓取连连看的界面窗口

4、对抓取的窗口保存在内存,根据棋子的大小把图像划分成小图片,并对每个小图片进行编码以区别不同的棋子

VC编程——水晶连连看外挂_第2张图片5、根据编码后的棋盘的每个位置对应的写在数组中

6、然后根据不同的算法进行模拟点击

 

四:分析

1、最难的地方就在于图片的编码,通过图像识别的方式(可以采用模板法)编码以区别不同的棋子

2、还有一个难点在于将大图片划分成小图片的时候的起始分割位置,这个需要反复测试

3、虽然有难度,但是也有优点。就是对于读图法,游戏编写者是没多少办法限制的,因此这种外挂将很适用,只要窗口大小、棋子大小不被改变就能一直使用。你能限制我读取内存无效,难道你还能限制我“看图”无效?

你可能感兴趣的:(游戏,编程,算法,qq,测试)