python制作QQ游戏--大家来找茬游戏辅助(一)

news/2024/11/15 2:19:57/

  "大家来找茬"是我小时候在家里家里人都喜欢玩的一款休闲游戏,因为这游戏可以考验人的眼力和反应能力才不是因为电脑垃圾玩不了其他大作游戏(╯‵□′)╯︵┻━┻

  最近了解到了一个特别牛逼的python第三方库———pywin32库,这个库是超级牛逼,打个比方,可以根据你的代码,大到鼠标操作,键盘操作,小到弹窗的声音,都能做到。不过网上关于该库的教程太少了,找不到专门的python文档来看。

  PIL库的文档也少之又少。

  本人代码还没写完,而且代码很杂,我都有点晕了。

  我说下我做这个辅助的大体思路吧。

  Sade,ikuzo(๑•̀ㅂ•́)و✧

1、屏幕抓取。

2、图片对比,找出不同之处。

3、找到不同之处的坐标值,利用win32api的mouse_event进行单击操作。

  怎么样,是不是很简单呢?简单个P(对我来说)

  我来再说点详细方法吧。

 首先就是屏幕抓取,要用PIL库里面的ImageGrab进行抓取,抓取还要对准找茬的两张图片,找这个图片位置的像素用的截图软件,截的我眼睛都快瞎了,一直对像素对了半天,图片才勉强对上。

 图片对比以及处理:之前我是准备用PIL库的image.getdata()对比RGBA值的不同,每一行就是图片每一行像素点的RGBA值,然后判断出不同位置的坐标,利用win32api点击该坐标并进行标记,在下次点击前进行判断,如果在上一个标记的多少像素之内就不能进行点击(防止鼠标的多次点击同一块不同区内发生错误)。后面发现有一个ImageChops.difference方法可以直接对两张图片进行对比,可以直接返回一张差异图片。这就要方便多了。在对比图片后就可以查看不同之处了。差异图片将会把差异高亮出来,其他的地方全部标黑。

比如:
这是游戏的界面
这是通过对比找出的不同之处
其实辅助做到这里就可以了哟(´・ω・`),既然已经找到了不同之处,就可以靠鼠标点击了。
但我想实现自动点击啊,不然pywin32没有用武之地啊

 找坐标值(暂未实现):这个游戏用了反作弊,原本两个图片就有一些色差,只是肉眼不好分辨(其实仔细看也看得出来),两个图片还分别增加了噪点,虽然我们看上面对比后的图(就是几乎全黑的那个图片)没什么毛病,但其实仔细看图还是可以看到一些轮廓(不知道上传的图片压缩了没有,反正我的是看得出来的)。如果觉得不够明显,我这里有另外一个二值化的图片(不是上面对比的二值化图片):

在这里插入图片描述
这是另外一次测试对比图二值化后的结果,密集点的地方就是不同之处,但观察可以看到其他的地方(几乎全屏)都是点,这些就是图片的噪点对比出的结果。我是打算通过像素分析周围白点大于多少就判断为点击处(看目前这个样子是实现不了的),本人正在找去除噪点的方法。(遍历像素:判断周围多少像素内的白点大于多少,大于多少就判断为此处为应该点击的地方。有这种思路,但不知道如何实现,文档不好找鸭。)

容我想想(・ω・)

(当然,方法不一定只有我这种,但我只想到这种方法。)


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

相关文章

Unity 3D游戏-见缝插针源码

Unity见缝插针功能实现 本文提供全流程,中文翻译。Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) 1 Sphere Rotation ——控制球体旋转 2 Shoot Pin ——射…

大家来找茬游戏——经典益智游戏制作方法手稿

大家来找茬游戏,这个游戏估计做起来最简单了。 制作步骤是,先弄到一张图片,可以是数码照片,然后Photoshop上。 Photoshop用在这里有两个功能最常用,一是抠图,一是替换颜色。抠图需要用到钢笔路径工具&…

使用AxureRP7.0制作经典小游戏"大家来找茬"

本案例是《网站蓝图AxureRP7.0从入门到精通视频教程》中的最后一节,适用于对Axure基础知识掌握比较熟练的同学;教程由axure原型库网站录制,转载请注明出处!相信很多刚接触Axure或者学习了一段时间但并没有深入的同学们&#xff0c…

3D游戏作业5

前言 本文为3D游戏编程与设计课程的作业5——鼠标打飞碟游戏(Hit UFO) 一、任务要求 1.游戏有n个round,每个round都包括10次trial; 2.每个trial的飞碟的色彩、大小、发射位置、速度、角度、同时出现的个数都可能不同。它们由该round的rul…

html5游戏开发实战-----大家来找茬

相信很多人都玩过大家来找茬,美女找茬之类的游戏,其实利用tangide我们也可以轻松开发出我们自己的找茬游戏. tangide轻松实现了我们开发游戏简单,快捷的梦想,但是,不管是开发哪一类游戏,我们首先需要做的就是程序设计,我们拿到一个游戏的开发,不要一拿到手就马上啪啪啪的写代码…

3D游戏作业2

前言 本篇为3D游戏课程第二次作业。 一、简答题 1. 解释游戏对象和资源的区别和联系。 游戏对象(GameObjects)是游戏程序空间中的事物,可能是Empty、2D、3D、光线、摄像机等,指的是一个能够容纳实现实际功能的组件。 游戏资源…

gtk+ 游戏 “大家来找茬“

原作地址:http://oldyu66.blog.ithome.com.tw/post/2074/27597 在我机器上编译出了几个错误提示如图: 运行结果我第一关只能找到4出不同: ***********************************************************************************************…

3D电影、游戏里的角色是怎么制作的?

给出人物设定,概念设计师给出一个大概念,然后原画根据概念设计开始制作细化出人物的三视图。在这些任务完成后,我们就要开始将原画给予3D制作人员。 3D建模制作模型 在从原画师手中拿到原画后,建模师的工作是采用这些原画并将其转…