最近春节,qq上出了一个叫穿越福城的小游戏.游戏的玩法类似挑一挑,也是通过一个个木桩.只不过把跳的过程变成了搭梯子.按的时间越长,梯子越长.梯子过长或者过短小企鹅都会掉下去,游戏失败.我的目的是用python来实现自动玩游戏.(主要原因是我手残..没办法,只好另辟蹊径,技术开挂).在刚开始构思的时候,我其实是觉得挺简单的一个小脚本就能搞定.但是在实际编码和测试的过程中,我越发觉得想要完成一个简陋版本,勉强能用的版本非常容易.但是想要做到稳定性好,准确率高实在是不容易.下面我就把我这两天的编码和完…
前言想自己搞游戏小程序的 在github 有人已经利用 python程序, 通过adb 获取不同型号安卓手机的系统截图,然后通过计算小人与目标位置距离之后得到准确的触摸时间,再通过 开发者模式里的 adb模拟触摸操作,实现电脑帮你玩跳一跳,基本思路就是这样,然后实际上还有加程序误差.模拟人工延时,总之反脚本检测又是另外一门学问了. 准备如下 1 安卓手机一部,我的是红米手机, MIUI9系统,附带数据线, 2 电脑一台,win7/10都可以 ,需要adb ,adb.exe一般Android开发工…
目前开发的所有代码都已经上传到了GitHub.欢迎大家来Star https://github.com/GiantLiu/AutoJump 目前程序分为“全自动版本”和“半自动版本” 全自动版本 WeChat.AutoJump.CMDApp 当手机连接好后,打开微信跳一跳 点击"开始游戏"后.运行此程序.就可以实现自动跳了 半自动版本 WeChat.AutoJump.WinApp 此版本需要鼠标左键点小黑人的底部,鼠标右键点目标位的中心 然后程序就会自动跳到相应的位置 程序原理1.将手…
1. 背景 前段时间发现一个论坛上(https://npupt.com/blackjack.php)有21点小游戏. 这个21点小游戏的规则是每个人开局都会获得随机点数,如果觉得点数小,可以继续摸牌.如果摸牌后点数大于21点,系统会自动结束摸牌,否则可以继续摸牌.系统会自动对比2个参与者的点数,点数大的人获胜.(大于21点会被视为1点). 由于整个游戏过程都是通过鼠标点击网页来完成的,那么我们可以让代码帮我们完成自动玩这个小游戏. 2. 理清游戏逻辑 如上图,点击"开始游戏"后,系统会…
微信2017年12月28日发布了新版本,在小程序里面有一个跳一跳小游戏,试着点一点玩了下.第二天刚好在一篇技术公众号中,看到有大神用Python代码计算出按压时间,向手机发送android adb命令,让电脑自动玩游戏.(Github地址:https://github.com/wangshub/wechat_jump_game).觉得这个挺有意思,就自己搜索资料,一步一步尝试着搭建起了Python运行环境,把程序运行起来了. 整个过程有点坑爹,看了很多博客,借鉴别人的经验,最后总算顺利运行起来了…
创建python项目jump_weixin,新建python程序jump.py 需要4个辅助文件[adb.exe,AdbWinApi.dll,AdbWinUsbApi.dll,fastboot.exe],放到项目根目录 辅助文件下载地址:链接:https://pan.baidu.com/s/1sljznFR 密码:gzeg 目录结构如下: 编辑jump.py: import os import numpy import matplotlib.pyplot as plt import PIL fr…
一.思路介绍 1. 通过Python自动手机截屏,并保存到电脑 2. 通过PhotoShop测量要跳的距离 3. 通过Excel计算按压时间 4. 通过CMD命令控制手机按压时间 二.实现方法详解 1. 通过Python自动手机截屏,并保存到电脑 我这里用的Pycham工具,语言Python,语句就这几行. 程序运行成功后,可以看到目录下出现了图片666.png,每过1s自动刷新手机截屏并下载覆盖本地图片,这时手机打开跳一跳的游戏,就是跳一跳的图片截图了 #!/usr/bin/env pytho…
初次接触python,便被它简洁优美的语言所吸引,正所谓人生苦短,python当歌.python之所以在最近几年越发的炽手可热,离不开它的一些特点: 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单.2.易于阅读:Python代码定义的更清晰.3.易于维护:Python的成功在于它的源代码是相当容易维护的.4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好.5.互动模式:互动…
用前文提到的基础知识,和网上流行的2048源码,用python实现该游戏. 先将用户操作和游戏逻辑绑定. WASD分别对应移动方向上.左.下.右 然后实现矩阵的转置和逆置,这样只要实现一个方向的移动,通过转置和逆置就可以得到其他方向 的移动. 基本的函数声明完成了,下面定义GameField类,主要实现游戏逻辑和状态转换. GameField类和其中包含的一些函数.先看构造函数. 构造棋盘并且刷新棋盘,作为初次游戏的布局. spawn函数为随机某个位置设置随机值. 移动函数,这个函数比较复杂,代…
import random#定义手势类型allList = ['石头','剪刀','布']#定义获胜的情况winList = [['石头','剪刀'],['剪刀','布'],['步','石头']]prompt = """可用的选择有:(0)石头(1)剪刀(2)布请选择对应的数字:"""chnum = raw_input(prompt)if chnum not in '012':    print "无效的选择,请选择 0/1/2&quo…