最近,微信官方推出了demo小程序游戏《跳一跳》,这个游戏操作简单,容易上手,却又不容易获得高分,受到很多人的喜爱(emm...这游戏有毒)。自己也尝试了玩了几次,作为一个手残+脑残的资深玩家,对于这种游戏的分数简直低的可怕...既然自己这么菜,就找些工具辅助一下吧,于是,就有了做一个辅助外挂的尝试。

本人玩这个游戏的时候比较晚,所以先去度娘上查了一下现有的方法,果然,搜索出的结果还是很多的。常见的方法有基于python和adb,adb是谷歌为android开发者提供一个开发工具,可以在命令行下操作,python中导入adb包库即可。

开发工具

matlab,adb工具

实验原理

跳一跳是根据棋子和目标块之间距离的不同,需要在屏幕上按压相应的时间来使棋子调到目标块,同时越接近中心点,分数越高,连续调到中心点,木有越来越多的分数加成。adb工具可以通过发送指令来模拟人按压屏幕的操作,所谓我们只需要通过adb工具向手机发送一个按压某一段时间的指令。那么如何确定按压时间呢?在玩过几次之后可以发现,按压时间和棋子到目标点之间的距离是一个线性函数,所以只需算出棋子到目标点间的距离,再乘以一个系数,就是棋子的按压时间。为了计算距离,我们首先通过手机截图,将截图传至电脑上,之后可以找出棋子下方中心点和目标点的坐标,采用欧拉距离公式即可计算出两点间的距离。

手动版操作流程

1. 安装adb工具并打开手机开发者模式和usb调试

https://www.52pojie.cn/forum.php?mod=viewthread&tid=682631这里提供了一个制作的简单思路(尊重原创成果),同时里面也提供了adb工具的下载链接,窝把它贴在下面 https://www.52pojie.cn/thread-682011-1-1.html

至于手机的开发者模式,依次进入手机中的  设置-->关于手机,可以看到版本号,连续点击版本号n次,就可以打开开发者选项

2. 打开cmd,在命名行下启动jump.bat等截图成功之后,进入步骤3

3. 选取起始点和目标点

在matlab中运行jump.m,会在画图工具中打开游戏截图,此时在图片上选取起始点和目标点,选定后获取到两个点的坐标,即可计算出距离及按压时间.

4. 向手机发送按压指令

回到命令行界面,按回车键启动棋子跳跃(原理是通过adb指令将计算出的按压时间发送到手机上 具体指令   adb shell input swipe 100 100 200 200 时间),等棋子跳完后按回车,回步骤2,进行下一轮截图。

程序下载链接

点击打开链接

说明

本人对这个测试的时候,成功率很高,接近100%命中目标中心点,之后和同学一起做了个自动版的,本人比较菜,自动版最高目前1200+,窝在南大的室友用python来写的已经2700+,之后也会贴出自动版的程序,自动版程序用的是简单的图像识别方法,找出图像中固定的两个点,欢迎有新想法和想尝试的同学一起交流(很好奇用机器学习方法到底会是什么效果)。

微信小程序跳一跳辅助程序(手动版)的更多相关文章

  1. 用Kotlin破解Android版微信小游戏-跳一跳

    前言 微信又更新了,从更新日志上来看,似乎只是一次不痛不痒的小更新.不过,很快就有人发现,原来微信这次搞了个大动作——在小程序里加入了小游戏.今天也是朋友圈被刷爆的缘故. 看到网上 有人弄了一个破解版 ...

  2. .NET开发一个微信跳一跳辅助程序

    昨天微信更新了,出现了一个小游戏"跳一跳",玩了一下 赶紧还蛮有意思的 但纯粹是拼手感的,玩了好久,终于搞了个135分拿了个第一名,没想到过一会就被朋友刷下去了,最高的也就200来 ...

  3. 微信_跳一跳辅助程序_Python_(带GitHub项目地址)

    1.安装Python(推荐3.6) https://www.python.org/downloads/ 2.在github上下载脚本 [github项目地址](https://github.com/w ...

  4. java写跳一跳辅助程序

    ##起初是想使用按键精灵脚本程序控制,但还是选择熟悉的java.我这里使用了工具,造成延迟问题.也求教:java控制安卓的正确姿势, 参考了.NET玩跳一跳,思路都是一样的,只不过使用ADB控制安卓的 ...

  5. 微信小游戏“跳一跳”,Python“外挂”已上线

    微信又一次不声不响地搞了个大事情: “小游戏”上线了! 于是,在这辞旧迎新的时刻,毫无意外的又火了. 今天有多少人刷了,让我看到你们的双手! 喏,我已经尽力了…… 不过没关系,你们跳的再好,在毫无心理 ...

  6. 微信小游戏跳一跳简单手动外挂(基于adb 和 python)

    只有两个python文件,代码很简单. shell.py: #coding:utf-8 import subprocess import math import os def execute_comm ...

  7. JAVA实现跳一跳辅助程序之虎啸龙吟

    前序: 今天有幸,看到2位博主的文章,在此表示感谢.自己也动手实现了一下. 实现原理 请参考博主 https://www.cnblogs.com/dongkuo/p/8285162.html 另感谢博 ...

  8. 微信小程序 跳一跳 外挂 C# winform源码

    昨天微信更新了,出现了一个小游戏“跳一跳”,玩了一下 赶紧还蛮有意思的 但纯粹是拼手感的,玩了好久,终于搞了个135分拿了个第一名,没想到过一会就被朋友刷下去了,最高的也就200来分把,于是就想着要是 ...

  9. python--微信小程序“跳一跳‘外挂

    参考网站:http://blog.csdn.net/LittleBeautiful/article/details/78955792 0x00:准备工具: Windows 10: 一个安卓真机 pyt ...

随机推荐

  1. HDU1065 I Think I Need a Houseboat 【数学递推】

    I Think I Need a Houseboat Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Ja ...

  2. 中国十大B2C电商站点开发语言调查

    中国B2C电商站点市场占有率排名例如以下 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I ...

  3. 【quickhybrid】架构一个Hybrid框架

    前言 虽然说本系列中架构篇是第一章,但实际过程中是在慢慢演化的第二版中才有这个概念, 经过不断的迭代,演化才逐步稳定 明确目标 首先明确需要做成一个什么样的框架? 大致就是: 一套API规范(统一An ...

  4. 如何导入外部的源码到eclipse中

    用struts,spring等框架开发也有两年的时间了,一直很少去阅读其源码,每次在eclipse编码的过程中想要看某一个类的源码,ctrl点击总是出现source not found的提示,也没有去 ...

  5. Linux计划任务crontab

    Linux系统中存在两种工作调度的方式 周期性的(at),每隔一个固定的周期要来办的事项: 一次性的(crontab),做完一次以后就不会再执行: at at是个可以处理仅执行一次就结束调度的指令,不 ...

  6. Softmax多分类算法

    List<double[]> inputs_x = new List<double[]>(); inputs_x.Add(new double[] { 0.2, 0.3 }); ...

  7. OPENSHIFT V3 免费部署 Java-Web

    OpenShift是红帽的云开发平台即服务(PaaS).自由和开放源码的云计算平台使开发人员能够创建.测试和运行他们的应用程序,并且可以把它们部署到云中.Openshift广泛支持多种编程语言和框架, ...

  8. CentOS6.9下安装rabbitmq消息队列

    安装如下步骤: 首先安装erlang yum install erlang 安装rabbitmq rpm包 wget http://www.rabbitmq.com/releases/rabbitmq ...

  9. html5中将图片的绝对路径转换成文件对象

    html5中将图片的绝对路径转换成文件对象 将图片的绝对路径转换成base64编码,请看这篇文章 我们先来理解基本知识点: 1. 理解HTML5中的FileList对象与file对象. 在HTML5中 ...

  10. List集合在遍历过程中的删除

    List集合在遍历过程中的删除:[1,1,2,3,4,5] for循环正续会漏掉一个1 for(int i=0;i<list.size();i++){ if(list.get(i).equals ...