
随着微信6.6.1版本在2007年年终最后一刻的推出,微信小程序终于还是开放了小游戏这一最有想象力的品类。
关于小程序小游戏适合做什么类型的游戏等的分析之后再来做,今天微播君先从技术的角度逆向分析下您觉得200分都高不可攀的情况下,朋友圈里几千分的用户是怎么做到的!科普文,只分析技术原理,不说太多实施细节。

显然,从2000多分到300多分,这么大的差距肯定不是靠熬时间一遍一遍玩出来的,我们讲一下跳一跳的基本原理。这个小游戏一共有4个核心点:
1. **识别棋子当前位置**:其实靠棋子的颜色就可以识别位置了。
2. **识别棋盘**:靠棋盘底色和方块的色差来做。
3. **得出距离**:根据棋子到棋盘上下一个位置的距离得出。
4. **得出按压时间**:根据两点的坐标距离乘以系数来获取按压时间。
其实得出了按压时间就可以知道每一次跳跃的最核心参数了,说到这里,可能会有朋友说:“这不废话么,我不就是用肉手控制不好按压时间么?”。 是这样,微播君是通过一个控制电脑的小程序来解决按压的这个核心问题。
我们的流程是:
1. 靠棋子的颜色用程序来识别位置,通过截图发现最下面一行大概是一条直线,我们就用代码找到最下面的那一行的所有点,然后求个中点,求好之后再让Y轴坐标减棋子底盘的一半高度从而得到中心点的坐标
2. 靠底色和方块的色差来识别棋盘,从分数之下的位置开始,用代码一行行扫描,由于圆形的块最上方是一条线,方形的上面大概是一个点,所以就用类似识别棋子的做法多识别了几个点求中点,这时候得到了块中点的X轴坐标,假设现在棋子在当前块的中心,根据一个通过截图获取的固定的角度来推出中点的Y坐标
3. 根据两点的坐标算距离乘以系数来获取长按时间
4. 用程序模拟这一切
接下来我们看看实际的跳跃情况吧

本程序是微播君作为一个极客的个人兴趣爱好探索,不用做任何商业行为,各位看官如果有兴趣可以留言探讨技术,不会给大家代码鼓励大家刷分的,尊重微信官方的机制,合理利用技术一直是微播的宗旨。
微播作为国内最优秀的智慧餐饮、智慧零售小程序解决方案服务商,目前正在广泛招募全国各区域的优秀城市服务商加入微播阵营共享小程序生态大未来!微播也可定制专业化程度更高的行业小程序帮您的生意更上一层楼!
微播外卖小程序/快速生成小程序/小程序定制开发
400-180-8681
▼


