Python自动玩"别再踩白块了"小游戏
开发工具
Python版本:3.6.4
相关模块:
numpy模块;
CV2模块;
pyautogui模块;
pyscreenshot模块;
以及一些Python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
先睹为快
首先,在浏览器中打开下面这个游戏链接:
打开浏览器搜索4399小游戏
游戏加载完毕后,选择该游戏的经典模式,游戏界面类似下图所示:
在cmd窗口运行autoplay.py文件即可让python自动玩这个小游戏了~

由于游戏主界面的位置随电脑和浏览器的不同而不同,因此,若运行失败,请自行调整下图所示的bbox参数:
4个数字分别代表游戏界面左上顶点x坐标,y坐标和右下顶点x坐标,y坐标。

原理简介
游戏规则:

原理介绍:
原理其实挺简单的,主循环的代码如下图所示:

首先是截取游戏界面:

游戏规则:
原理介绍:
原理其实挺简单的,主循环的代码如下图所示:

首先是截取游戏界面:

二值化游戏界面:

实现轮廓检测:

利用pyautogui模块模拟点击检测到的黑块就可以实现自动玩这个游戏了。还是挺简单的,完整源代码实现详见相关文件~
Python自动玩"别再踩白块了"小游戏的更多相关文章
- jquery之别踩白块游戏的实现
转载请注明出处http://www.cnblogs.com/Wxtrkbc/p/5687112.html 前端学习要告一段落了,也没机会写什么像样的东西,然后无意中想起某人以前给我玩了一下别踩白块的游 ...
- JS实现别踩白块小游戏
最近有朋友找我用JS帮忙仿做一个别踩白块的小游戏程序,但他给的源代码较麻烦,而且没有注释,理解起来很无力,我就以自己的想法自己做了这个小游戏,主要是应用JS对DOM和数组的操作. 程序思路:如图:将游 ...
- cocos2dx游戏开发——别踩白块学习笔记(二)——经典模式的实现
一.创建GameScene以及GameLayer 就是简单创建一个Scene而已,在此就不多说啦~,可以参照我的打飞机的学习笔记(2). 二.添加一个开始栏 很简单,就是调用Block中的create ...
- ios-高仿别踩白块游戏的实现
先看下效果图片 前几天看到一个游戏叫别踩白块,下载量还挺大几百万了都,下载下来玩了玩看了看,这个游戏还挺简单的.俗话说想一千遍,一万遍不如动手做一遍来的实在.昨晚以及今天白天闲的没事就开搞了,下午六点 ...
- Cocos2d-x 3.2 之 别踩白块(第三篇)
***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...
- 用javascript做别踩白块游戏2
这一次做一个好一点的,要求黑块自动下落,且速度逐渐加快 <!DOCTYPE html> <html> <head> <!-- 禁用缩放功能 --> &l ...
- C++用EGE简单实现别踩白块游戏
本项目已开源:https://github.com/wmpscc/AvoidBlank 关于EGE 介绍:EGE(Easy Graphics Engine),是windows下的简易绘图库,是一个类似 ...
- 用javascript做别踩白块游戏1
初学Javascript做的一个别踩白块小游戏,代码简陋,如下: <!DOCTYPE html> <html> <head> <!-- 禁用缩放功能 --&g ...
- jquery 简单的别踩白块小游戏
写写简单的东西,效果如图: 1.html代码 <div class="warp"> <div class="title"> <h3 ...
随机推荐
- Helium文档13-WebUI自动化-helium快速切换到selenium状态并调用其方法
前言 前面说过helium是对Selenium 进行了封装,那么我们如何使用selenium的方法呢,通过下面的介绍,我们能够清楚在helium中能够使用selenium的任何方法 入参介绍 def ...
- Unity-根据时间开灯与关灯
声明:本人只是学生,并且只是自学Unity,如有大神,不喜勿喷,不足之处,请指出! 本项目使用了UniStorm 3.0(天气)插件,时间也是调用它本身的API,实际并不影响,用系统的时间的是也是可以 ...
- 拿了十几个offer,怎样做选择?
本文已经收录至我的GitHub,欢迎大家踊跃star 和 issues. https://github.com/midou-tech/articles 最近收到好几个读者的咨询,关于如何选offer的 ...
- CVE-2019-15107漏洞复现
特别说明 漏洞复现参考了teeom sec的panda潘森的文章,是根据他的思路进行复现. 搭建dockers环境, 然后安装vulhub(此处省略,自行百度) 进入vulhub/webmin/CVE ...
- 续 Eureka+Hystrix+Zuul(Zuul API网关)
概述: 服务的合并,转发,验证,异构协议.将上百个请求融为一个发送到后台,返回大的JSON返回处理: 作用:这减少了客户端与应用程序间的交互次数,还简化了客户端代码. Zuul可以通过加载动态过滤机制 ...
- ## 【分布式事务】面试官问我:MySQL中的XA事务崩溃了如何恢复??
写在前面 前段时间搭建了一套MySQL分布式数据库集群,数据库节点有12个,用来测试各种分布式事务方案的性能和优缺点.测试MySQL XA事务时,正当测试脚本向数据库中批量插入数据时,强制服务器断电! ...
- flask-profiler的使用
使用 profiler测量在你的Flask 应用程序中定义的端点:并通过web界面提供细粒度的报告. 它给出了这些问题的答案: 应用程序中的瓶颈在哪里? 应用程序中最慢的终结点? 哪些是最常被调用的终 ...
- Java学习的第十六天
1. 向上转型 向下转型 静态绑定 2.无问题 3.明天学习static关键字和final关键字
- mysql处理数据库事务
数据库事务 关注公众号"轻松学编程"了解更多. 1.概念 执行批量操作时,这些操作作为一个整体,要么全部成功,要么全部失败.如银行转账,己方扣钱.对方加钱,这两个操作是一个整体 ...
- 842. Split Array into Fibonacci Sequence —— weekly contest 86
题目链接:https://leetcode.com/problems/split-array-into-fibonacci-sequence/description/ 占坑. string 的数值转换 ...