从前几天微信最新版本 6.6.1 的更新开端,微信小程序游戏“跳一跳”似乎在一夜之间盛行了朋友圈。 它以至比五六年前的飞机大战游戏都火爆,这种小游戏的火爆不只仅是由于有魔性、有意义,更重要的是能够中止好友 PK! “跳一跳”的小游戏推出后,很多准备奋发向上的同窗,这个假期的美好愿景被毁了。 为了多跳几步,以及朋友圈的排名, 大家在整个假期都是这样的: 就这样跳啊跳... 挤地铁跳,蹲马桶跳,乘电梯跳, 静默的每 1 秒都不能糜费 在办公室,还要时辰警惕后面... 说好的工作呢...我控制不住我自己啊! 可是很多人费尽心机跳了一下午 也没超越 100 分 但排行榜里四分之三的人都超越三位数了…… 真是扎心了…… 今天小编来通知你,如何才干获取高分,如何才干占领朋友圈榜首? 游戏攻略拿高分 普通版本的高分秘籍是这样的: 假如你每次都能挑到各自的正中间的话,能够 + 2 分,假如连着跳到中间会 + 4、+6、+8、+10……跳到污水井盖上面,停留 2 秒,等到下水道声声响起直接 + 5 分跳到魔方上面,停留 2 秒,等到魔方转正会直接 + 10 分跳到音乐盒上面,停留 2 秒,等到音乐响起会直接 + 30 分跳到方便店,停留 2 秒,等到方便店开门会直接 + 15 分 以上是针对普通用户,但对我们程序猿来说用这套太 Low 了,接下来要说的是如何从技术层面去完成高分: 技术伎俩完成高分 经过 Python 伎俩 在 Github 上面曾经有人用 Python 来玩跳一跳这个游戏了,想多少分就有多少分。 GitHub 地址:https://github.com/wangshub/wechat_jump_game 步骤: 安卓手机翻开 USB 调试,设置》开发者选项》USB 调试。电脑与手机 USB 线衔接,确保执行 adb devices 能够找到设备 id。界面转至微信跳一跳游戏,点击开端游戏。运转 python wechat_junp_auto.py,假如手机界面显现 USB 受权,请点击确认。 很有趣!简单点说就是:用电脑帮你玩微信跳一跳,全自动,不用手动。效果: 这里梳理一份稍微完好一点的操作步骤,以 Mac 的为例,Win 的思绪是一样的。 另外,这里用的是安卓手机,iOS 也差未几,不外要下载一个 5.5GB 的 Xcode。 1、下载程序,翻开下面的链接,点右侧 clone or download,再点 download zip。 2、解压 zip 文档,再把文件夹挪到桌面,翻开文件夹,你会看到很多东东: 3、翻开 mac 系统自带的“终端”,这是一个命令行应用,win 用 cmd 就能够了吧。 4、经过终端进入文件夹,命令行如下: ~/Decktop/wechat_jump_game-master 5、装置 pip,在终端输入 sudo easy_install pip 再回车,可能要输入密码。 6、装置各种依赖程序,在终端输入 pip install -r requirements.txt 再回车,系统会自动装置。 requirements.txt 就是文件夹里的一个 txt 文档,里面写着会自动装置哪些程序。 pip 就是第 5 步装置的程序,假如没装置,pip install -r requirements.txt 将无法执行。 7、装置 adb,翻开下面的链接查看,有 3 种措施,倡议用第二种,是英文,假如你不懂英文能够百度中文教程。 https://stackoverflow.com/questions/31374085/installing-adb-on-mac-os-x 8、翻开安卓手机的设置- 开发者选项 - USB 调试(假如没有开发者选项,可百度翻开开发者选项的措施),用 USB 线衔接手机和电脑,手机可能会弹出对话框,点同意。 假如呈现运转脚本后小人不跳的状况,请检查能否有翻开“USB 调试(保险方式)”,记得顺便翻开 USB 模仿点击。 9、在终端输入 adb devices,假如看到下面这种信息,阐明 adb 已正确装置,也阐明电脑胜利检测到手机。 假如你系统是 Win10 或 Win8 可能需求先设置一下“禁用强迫驱动程序签名”。 不然会呈现下面的“文件的哈希值不在指定目录中”装置不上 adb 驱动的问题,网上有教程请自行学习。 10、翻开微信跳一跳点开端,在终端输入 python wechat_jump_auto.py 点回车,游戏就会自动开端~ 请依据手机分辨率运转相应的 *.py 文件。 留意: 我跳了很多次,最后都会掉下盒子,暂时最多只能跳到 1800+ 分,不能不时跳下去。分辨率不同,配置文件也不一样,细致看 config 这个文件夹。别刷太高分,有人刷到 4000,结果分数被微信清零。 实验结果: 只需有耐烦,你就是王者 下面剖析一下代码,Main 部分有一个 While 循环,只需你不终止,它会不时重复操作。 Main部分代码里面主要调用的自定义函数有三个,还有一个 time.sleep 是为了延迟一下: pull_screenshot() #获取图像find_piece_and_board(im) #依据图像获取两个点的坐标值jump(math.sqrt((board_x - piece_x) ** 2 + (board_y - piece_y) ** 2))#依据两点距离和手机像素计算按压时间并 JUMP pull_screenshot() 这个函数主要是应用 adb 来获取图像,这里顺便说一下“adb”,adb 是衔接 Android 手机与 PC 端的桥梁,能够让用户在电脑上对手机中止全面的操作。 借助 adb 工具,我们能够管理设备,还能够中止如装置软件、系统升级、运转 Shell 命令等等操作。如“pull”就是获取设备中的文件,想更多了解 ADB 请自行学习~ find_piece_and_board() 依据图像获取当前小人位置和落点的坐标系(piece_x, piece_y, board_x, board_y),这个是这个脚本中的中心部分。 jump 依据设定的“长按的时间系数”计算需求的按压时间,这个系数是依据手机分辨率推出来的,按压时间设定不小于 200ms,中心命令是 adb 的“input swipe”。 “input swipe”模仿的是手指在屏幕上的滑动事情,假如两个点坐标不变更就成了长按了。 代码中四个变量的设置是:“swipe_x1,swipe_y1,swipe_x2,swipe_y2 = 320,410,320,410”,所以是模仿的长按,其实滑动也是能够的。 伪造 POST 央求刷分 除了能够用 Python 完成高分,还有网友爆料还能够直接伪造 POST 央求刷分,直接改分数。 昨日,V2EX 网站上一篇题为《微信跳一跳 能够直接更改分数, POST 央求没有校验… 》的文章取得大量曝光,帖中指出微信小程序存在漏洞,跳一跳小游戏能够直接改分数。 用户朱鹏飞依据帖子的指引,发现以至连微信小程序、小游戏的源代码都能够直接下载,只需求知道 appid 和版本号,就能够直接结构 URL 下载后缀为 wxapkg 的源码包,不需求任何考证。 据微信公众号“小专栏平台”音讯,截自 1 月 1 日 23:50,微信官方曾经修复了这个漏洞。不外,听说一些老版本的微信还是能够抓包获取包地址。 最后一个微信曾经修复 Bug(部分版本没有修复),但只需应用好前面两个攻略,再配合对节拍的掌握,登上朋友圈前几完整不在话下。 话未几说,赶紧去玩吧!!! 更多相关资讯能够关注西安华美校区,免费取得java零基础教程!额外附送excel教程 |