跳一跳辅助实现思路详解

首先,这个辅助用到了opencv的库,这是一个很多人贡献的跨平台计算机视觉库,具体可以百度了解。
我们看一张跳一跳的图片
jump
这个游戏逻辑很简单,就是从一个方格跳到另一个方格上,按压时间的长短控制跳动的距离,所以辅助的逻辑也很简单,就是计算出棋子到下一个方格的距离是多少,然后通过距离来计算按压时间。
这里难度最大的是如何计算出棋子到下一个方格的距离是多少。那我是这么来做的,首先opencv库里有一个函数叫matchTemplate,它能从图中匹配出你预设的模板的图片的起始位置。这里,我的模板是这张图片,然后这个匹配度几乎是100%的。
template

logic
当我们得到棋子的起始位置的时候,通过起始位置的y坐标+棋子高度得到实际棋子的y坐标,起始位置的x坐标+棋子宽度得到实际棋子的x坐标。

之后我们要计算的是落脚点的坐标。这里我用的方法是opencv的边缘检测。因为图片的方块边缘清晰,所以用边缘检测可以得到非常清晰的方块边缘,像下面的图片,
canny
有了这张图后,你就能做很多事情了,我的做法是从红线开始往下扫,但第一次找到像素点为白色的时候往下找,但在此遇到白色像素的点时,计算两个点的中间点的位置。像下图这样
findpoint
当知道这2个点时就可以计算出距离了。然后就可以通过ADB进行模拟跳跃了。这里的逻辑大部分的方格都能跳跃了,但是个别的方格会出问题,后面会对找落脚点的逻辑进行更细的分解,实现绝大部分的方格都能跳过。
搭建跳一跳辅助环境详细步骤
github地址:https://github.com/stackisok/wechat_jumponejump_cheat

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值