2014中秋节,用java为QQ游戏美女找茬写辅助
引子

1. 屏幕截图及图片剪切。(点击这里查看)
2. 图片上查找图片算法。(点击这里查看)
3. 比较两张同尺寸图片,找出不同的地方。
类似上面图片上查找图片的算法,其实就是读取两张图片为BufferedImage对象,取出每个像素点的GRB值进行比较,用一个同样大小的二维数组记录比较结果,相同的像素点位置记录为0,不相同的像素点位置记录为1。等到图片比较完成后,就得到一个标记两张图片异同点的二位数组。
4. 透明背景窗口的妙用。
当设置窗口背景完全透明后,偶然发现透明的的地方类似窗口的破洞。这个特性可以很好的利用起来,比如,可以实现任意形状的窗口。
在这里,利用这一特性,我在用点绘制两张图片不同的地方时,遍历比较结果的二位数组,只关注标记为1的点,并且忽略掉了上下左右都是1的点,这样绘制出来的效果就形成了中间镂空的区域,加上我让透明窗口始终保持最前,因此,虽然java的透明窗口始终覆盖在游戏界面上,但鼠标依然可以点击到游戏界面上的控件,非常神奇!
5. 设置全局(操作系统级)热键。(点击这里查看)
6. 鼠标拖拽。(点击这里查看)
7. 内存释放。
本以为不需要这一步,当我写完实际检验的时候,发现对比十几对图片后,再点击按钮,没反应了,到控制台输出一看,原来是内存溢出了。因为写的类的成员变量有几个比较大的二维数组,每次比较都是重新实例化类。因此,有必要主动请求java虚拟机尽快进行垃圾回收,即调用System.gc(),需要说明的是,就算你调用了System.gc(),也不能保证java虚拟机马上进行垃圾回收。另外,为了让java虚拟机有效地找到不用的对象,因此,需要将不用的成员变量赋予null值。为了简便,虽然我依然是每次比较都是重新实例化类,但在比较之前,我先请求进行垃圾处理,释放内存。
2014中秋节,用java为QQ游戏美女找茬写辅助的更多相关文章
- MFC版美女找茬
今天心情:捡了个闲暇. 前几天工作出了个漏洞,电话会议时候怎么都是忽大忽小的声音,实在没听清电话会议的内容,完了依据想象交了一个设计方案,之后便是赋闲. 进入正题,美女找茬实现不难,没有设计上的难度, ...
- opencv做的美女找茬程序~
// CMP.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <cv.h> #include <high ...
- 用Python实现QQ找茬游戏外挂工具
源地址:http://cpiz.net/blog/2012/03/a_qq_zhaocha_assistant_by_python/ (原创作品,转载请注明出处)好久没写技术相关的博文,这次写篇有意思 ...
- 玩QQ游戏,见到好几个图像是美女的QQ,就不始玩
玩QQ游戏,见到好几个图像是美女的QQ,光占坑就是不开始玩 加了一个,发现是传播不良网站的QQ 聊天还是自动的 估计是利用webqq写的程序,也就那几句话来回重复,让你去注册网站什么 可以加这个Q去体 ...
- QQ游戏百万人同时在线服务器架构实现
转载自:http://morton5555.blog.163.com/blog/static/976407162012013112545710/# QQ游戏于前几日终于突破了百万人同时在线的关口,向着 ...
- java实现QQ、微信、轰炸机,撩妹,抖图功能,轻松自如
今天交大家一个很牛的功能,让你朋友服你,他不扶你你来找我. 打游戏被骂,骂不过你来找我,我们有神器,直到他怕了为止. 废话少说,代码如下,动手,干就完了 乞丐版如下 参考连接:Java实现QQ微信轰炸 ...
- java 模拟qq源码
java 模拟qq源码: http://files.cnblogs.com/files/hujunzheng/QQ--hjzgg.zip
- 2015-2016-2 《Java程序设计》 游戏化
2015-2016-2 <Java程序设计> 游戏化 实践「<程序设计教学法--以Java程序设计为例>」中的「游戏化(Gamification)理论」,根据 2015-201 ...
- 负载均衡--大型在线系统实现的关键(上篇)(再谈QQ游戏百万人在线的技术实现)
http://blog.csdn.net/sodme/article/details/393165 —————————————————————————————————————————————— 本文作 ...
随机推荐
- 子元素设置margin-top,父元素也受影响
这个问题困惑了非常久.尽管没有大碍早就摸出来怎么搞定它.但始终不明确原因出在哪里,假设仅仅是IE有问题我也不会太在意.可问题是全部上等浏览器都表现如此,这样叫我怎能安心?今天总算下狠心查出来怎么回事, ...
- MAVEN项目模块化
maven的最大的特点之中的一个就是能够把项目模块化. 前面的一篇文章MAVEN创建并打包web项目已经创建了一个简单的webapp,注意这个webapp的打包方式是war. 假设如今又要划分出来一个 ...
- Cracking the Coding Interview 150题(一)
1.数组与字符串 1.1 实现一个算法,确定一个字符串的所有字符是否全都不同.假设不允许使用额外的数据结构,又该如何处理? 1.2 用C或C++实现void reverse(char* str)函数, ...
- WebSphere报错指南
看了下面的文章,泥坑会叫我标题党,没错我就是啊. 1.was日志路径 ${WebSphere根路径}/AppServer/profiles/AppSrv01/logs/,比如说我的路径就是/opt/I ...
- ogg 传输进程启动报错 Missing filename opening checkpoint file.
GGSCI (hosta) 48> view report dpfull ************************************************************ ...
- simple-framework(MaliSDK框架分析)
simple-framework(Mali SDK框架分析) 1.全部的定义及实现放在同一个命名空间中.文件包括#include一般在命名空间的外面. 总的命名空间为namespace MaliSDK ...
- REST技术第二步 获取URL中的參数
获取请求的參数.rest技术相对于servlet来说要方便很多. Servlet我们要获取请求的參数,非常麻烦啊.须要request.getParameter("").假设我们要的 ...
- fused multiply and add
1 要解决的问题 计算x*y + z?其中x.y.z都是浮点数. 2 普通的计算方式 e=3; s=4.734612 × e=5; s=5.417242 ----------------------- ...
- 混合使用Delphi和C ++(附下载)
您想将C ++添加到Delphi应用程序中吗?或者将Delphi代码添加到C ++应用程序中?这是如何做. 您可能不知道的一件事是如何在RAD Studio中集成C ++和Delphi语言.您可以将单 ...
- android简易双屏支持【转】
本文转载自:http://blog.csdn.net/sfrysh/article/details/7463339 抱歉,之前说xorg的exa更新的时候恐怕一直不会更新了,没有做xorg开发了.转向 ...