您的位置:网站首页 > 热门源码 > 正文

100 行代码实现『跳一跳』辅助

类别:热门源码 日期:2018-6-14 8:52:13 人气: 来源:

  好久没写博客了,今天来一发吧。分享一下今天下午用python写的跳一跳小游戏的辅助程序。之前是准备用树莓派操控一个机械手指来代替人的触摸操作,但该方案还在酝酿中,实现了再分享。接下来要分享的是用纯软件的方法来玩跳一跳。

  可以用Android提供的adb工具来完成。首先需要搜索并下载对应操作系统下adb工具。其次需要将手机连接电脑, 并将手机的 设置 开发人员选项 USB调试打开。现在在命令行调用一下adb工具,看是否检查到手机:

  至于怎么识别出人偶的最底部,可以这样来操作。通过观察可发现,人偶底部的颜色的rgb值在(53, 57, 95)到(59, 61, 103)之间,因此我们逐行扫描各个像素点,找到rbg值在该区间的各行,最后一行即为人偶的底部了。得到了最底部的一行,自然就能算出该行的中心坐标。

  我们同样用从左往右,从上往下的顺序扫描各个像素点的方法来找出vertex1的坐标。扫描之前先获取整个背景的颜色的rgb值,取任意空白处即可(例如本人手机截图大小为1920x1080,可断定坐标为(40, 500)的点一定处于空白处。)。在扫描过程中一旦发现某处的颜色与背景色不一致,发生了突变,可断定该点即为vertex1。

  我们把vertex1点的rgb值记录下来作为台面的背景色。在接下去的扫描过程中,我们开始关心当前扫描的点的rgb值是否和该记录值相似。相似则说明该点属于台面,而通过上图可发现,顶点vertex2是所有属于台面的点中,横坐标最小的点,这样vertex2的坐标也找到了。

  以下是完整代码,在本人手机(1920 * 1080 )下测试发现大多数情况都能正中靶心,少数情况不能命中靶心,极少数情况会跳出台面以外。其他分辨率的手机可能需要适当修改 BACKGROUND_POS和 DISTANCE_TO_TIME_RATIO参数大小。

  写完后,看了看其他跳一跳辅助的相关博客,原理基本类似,然后还看到他们博客下有很多人有类似的评论:弄这个那游戏还有啥意思呢?,游戏是供人娱乐的,而不是娱乐人的!,这样刷分有意思么?……

  生活中,我确实经常会被这类问题问倒:这有什么用呢?,做这个有什么意义呢?……我也确实做了很多在别人看来毫无意义而自己却乐在其中的事。最近看了《生活大爆炸》,若再有人问我类似的问题,我会借用里面的一句台词回答:Because we can.返回,查看更多

  本文由325棋牌 (www.325games.com)整理发布 推荐阅读325游戏 (www.325qp.net)

0
0
0
0
0
0
0
0
下一篇:没有资料

相关阅读

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

CopyRight 2002-2012 技术支持 源码吧 FXT All Rights Reserved

赞助合作: