202

GitHub - wangshub/wechat_jump_game: python 微信《跳一跳》辅助

 6 years ago
source link: https://github.com/wangshub/wechat_jump_game?f=tt
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

教你用 Python 来玩微信跳一跳

2017 年 12 月 28 日下午,微信发布了 6.6.1 版本,加入了「小游戏」功能,并提供了官方 DEMO「跳一跳」。这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。分数越高,那么在好友排行榜更加靠前。通过 Python 脚本自动运行,让你轻松霸榜。

可能刚开始上手的时候,因为时间距离之间的关系把握不恰当,只能跳出几个就掉到了台子下面。如果能利用图像识别精确测量出起始和目标点之间测距离,就可以估计按压的时间来精确跳跃。

由于微信检测非常严厉,这里的防禁代码可能已经不起作用,主要供学习用途
  1. 将手机点击到《跳一跳》小程序界面

  2. 用 ADB 工具获取当前手机截图,并用 ADB 将截图 pull 上来

adb shell screencap -p /sdcard/autojump.png
adb pull /sdcard/autojump.png .
  1. 计算按压时间
  • 手动版:用 Matplotlib 显示截图,用鼠标先点击起始点位置,然后点击目标位置,计算像素距离;
  • 自动版:靠棋子的颜色来识别棋子,靠底色和方块的色差来识别棋盘;
  1. 用 ADB 工具点击屏幕蓄力一跳
adb shell input swipe x y x y time(ms)

相关软件工具安装和使用步骤请参考 Android 和 iOS 操作步骤

- git clone https://github.com/wangshub/wechat_jump_game.git

非常推荐使用Python3,避免编码及import问题
请选择 merge 进 master 分支,并且标题写上简短描述,例子

[优化] 使用PEP8优化代码

  • master 分支:稳定版本,已通过测试
  • dev 分支:开发版本,包含一些较稳定的新功能,累计多个功能并测试通过后合并至 prod 分支
  • 其他分支:功能开发 (feature) 或问题修复 (bugfix),属于最新尝鲜版本,可能处于开发中的状态,基本完成后合并至 dev 分支

开发者列表

  • 314659953 (1000 人)

  • 176740763 (500 人)

  • 或者关注我的微信公众号后台留言


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK