最近微信小程序出现了“小游戏”功能,最让人上瘾的游戏,莫过于更新有出现的“跳一跳”,跟当年(清晰记得是13年)的Flappy Bird有得一拼,不过这个更加有趣,也不会像flappy bird一样,要不眨眼一直玩,这个可以休息,然后还有各种彩蛋;
玩过之后,发现的彩蛋有:
- 下水道(就是有个“污”字的),停留到出现冲厕所的声音,+5;
- 魔方,待其转动到所有颜色相同,+10;
- 士多店,等待其店铺开门收银,+15;
- 圣诞唱片机,等待其唱圣诞歌,+30;
大概就是这些(可能我还没找到+20,和+25的),但是这些稍微注意一下,基本上破百,没有问题;当然,有一些大神,长期每周没过几天,就占据朋友圈排行榜前列,都是300,400分数的,真的不知道他们是怎么玩出来的;
于是乎有一群聪明的程序员们,开始学会用比较聪明的方法去让自己占据朋友圈分数榜,那就是用Python + OpenCV;当然,写过代码的,都知道这两个的组合的原因,Python代码简洁,适用多平台,还有很多包可以用,OpenCV,开源的框架,用来处理图片,识别图片。当然,你了解了这些还不够,还需要一些“技术活”。
例如,你需要去分析图片,找到棋子的位置,另外要判断你tap这个屏幕的时间(代码里面大多是用 Swipe
,然后输入4个x,y参数,另外加上一个Time,去模拟按压跳跃的时长)。虽然我所有的东西都具备齐全,但是在调用Swipe
的时候,却发现多出来的Time这个参数好像不能这样传输,不知道是什么问题;
当然,你如果想要试一下这个 小游戏“作弊器”,你还是要付出一定的时间和精力的(特别是电脑小白)。
首先Python,其实很多祖国大陆的同胞们,所使用的windows系统,其实都是盗版的,还有很多是什么“纯净版”,也就是删除了很多不常用的文件的系统,有一些DLL,可能在装机器的时候就根本没有这个文件,而有一些游戏,或者程序,是需要这些DLL文件的(在EXE执行的时候,需要调用到DLL里面的一些代码,当EXE无法调用,无法找到这些代码的时候,它就会报错,类似你玩游戏,直接游戏打开一瞬间就闪退,留下一个提示框告诉你缺少xxx.dll,让你风中凌乱)。
-
其次是Adb(针对于安卓用户。我这个用IOS的人嫌麻烦,找出了多年风尘的安卓手机出来测试)。它的全称其实是
Android Debug Bridge
,用来debug安卓设备的一个包。当你安装好Python(在祖国大陆用贼慢的外国服务器下载好),你需要弄好ADB,尽管你不会开发安卓程序。接着你要把这个路径加入到PATH里面(这是我们以前每次学新语言,装软件的时候必须做的一个步骤)。染成后,当你连接好手机,在CMD输入adb devices
的时候,发现你的电脑已经能识别到有设备连接,你就基本上成功一大半了;
-
现在你需要做的,就是先下载好requirement里面需要的东西,用
pip install -r requirement.txt
来让电脑自动下载好你需要的包的版本号,然后等等等等。。。
如果实在是等不及,两个方法,第一个就是开VPN,第二个就是改镜像路径,换回国内的就OK。 尝试了一段时间发现
adb shell input swipe x y x y time
一直存在问题,说我argument有误,于是乎求助谷歌,原来是我的手机系统版本太低(4.4.2),要4.4.4以上的系统,才能swipe有时长这个功能。所以看来暂时这个破手机是没办法玩跳一跳的了。
后续
拿了一台华为P10 Plus来测试,果然是系统版本的问题,基本上代码代码是OK的,但是无奈,分辨率很奇葩,所以没办法精准跳跃,就连手动跳跃,都勉强才能跳好,无奈只好放弃,但是其实主要晒是去读一下代码比较好。