教你用纯JavaScript实现微信跳一跳自动刷分
发布于 6 年前 作者 Ryqsky 4198 次浏览 来自 分享

话不多说,先上图。 ezgif-2-30025f3ea7.gif

声明

  1. 本项目Github地址为:https://github.com/Ryqsky/wechat-jump-game-js 欢迎Star
  2. 本项目是在三水清大大的项目https://github.com/ksky521/wechat-jump-game-hack基础下进行修改的,请给原创一个大大的Star。
  3. 其次,三水清还写了一篇关于该项目通俗易懂深入浅出的教程,欢迎阅读品尝JS写小游戏「跳一跳」外挂之Canvas图像识别

使用

git clone https://github.com/Ryqsky/wechat-jump-game-js
npm i
npm start
// open localhost:9000/test 查看识别效果
  1. 安装最新的 node.js 8 以上的版本,下载地址:https://nodejs.org/
  2. 安装adb驱动(用于拉取手机截图下载地址:https://adb.clockworkmod.com)到D:\adb\
  3. 把utils.js中ADB_PATH 设置为你电脑上adb路径,D:\adb\adb或者安卓SDK下的XXXXXX\Android\sdk\platform-tools\adb
  4. 安卓手机打开开发者选项usb调试,小米要允许模拟点击事件
  5. 数据线连上电脑,选择USB计算机连接方式为媒体设备(MTP)(确保手机能被电脑识别,并且关闭360或者应用宝手机助手等电脑程序),打开微信「跳一跳」点击开始
  6. 在CMD,git等bash命令窗口下运行 git clone https://github.com/Ryqsky/wechat-jump-game-js 先把项目克隆下来,然后运行 npm i && npm start 启动程序(该窗口可以看错误日志)
  7. Chrome浏览器打开 localhost:9000,按F12打开devtools查看跳一跳日志

其他

  1. 如果有发现每次都差一点点才跳到中心点的话,可以微调utils.js下的BOOM系数

原理

只支持安卓

  1. 首先通过adb截图拉取到本地
  2. 对本地图片通过Canvas获取当前和跳转位置
  3. 通过计算两点距离,根据720等比例缩放,然后乘以系数2.04即为时间
  4. 通过adb发送长按事件,事件为第三步计算的时间
回到顶部