30行Python代码刷王者荣耀金币

开发 后端
王者荣耀的冒险模式里有个挑战模式,第一次过关可以获得比较多的金币,后面重新挑战还是会获得少量金币,这不算是bug,你不嫌烦手动蛮力也可以刷金币。

[[214552]]

原理

王者荣耀的冒险模式里有个挑战模式,第一次过关可以获得比较多的金币,后面重新挑战还是会获得少量金币,这不算是bug,你不嫌烦手动蛮力也可以刷金币。

推荐关卡:陨落的废都 - 魔女回忆

此关卡使用纯输出英雄20秒左右可以打BOSS,50秒左右可以通关,每次重复通关可以获得奖励19金币。在开挂前建议你手动通关体验一下。此为游戏原理。

简单来说,需要执行以下步骤:

  1. 界面打开至挑战关卡:陨落的废都 - 魔女回忆 【点击下一步】

  2. 进入阵容调整界面,提前安排好阵容。【点击闯关】

  3. 进入挑战界面。【点击右上角-自动-等待挑战结束】

  4. 进入挑战完成界面。【点击屏幕继续】

  5. 进入关卡奖励界面。【点击再次挑战】

  6. 进入阵容调整界面,循环至步骤1或步骤2【貌似取决于游戏区和版本】

只要你能模拟屏幕点击就可以完成刷金币的脚本,在安卓模拟界面点击最简单的方式就是使用ADB发送命令,不需要root手机,不需要安装第三方软件,方便快捷。ADB命令点击屏幕坐标[x, y] 可以使用命令:

 

  1. adb shell input tap x y 

IOS 是否有类似工具和命令,我不清楚,如果有那么实现自动刷金币也很简单。

准备

  1. 本脚本适用于安卓游戏区,需要真实安卓手机。
  2. 手机需开启USB调试模式,允许电脑调试。
  3. 电脑需安装好安卓驱动,一般豌豆荚或者各种管家可以自动帮你装好。
  4. 电脑需要有ADB工具集,很多方式可以获取。
  5. ADB工具需要加入环境变量PATH中,方便随时调用。
  6. 电脑上需要安装Python,因为这是我选择的脚本语言。

专业的开发测试人员,也可以参考我的另外两篇博客:

  1. 在 Windows 下搭建 Appium + Android 自动化测试环境
  2. 在Mac OSX 上配置Appium+Android自动化测试环境

如果只是为了刷金币,只需要安装好驱动和ADB工具即可。

步骤

如果万事具备,那么步骤就非常简单。

环境检测

  1. 用USB连接手机,如果弹出警告,请允许电脑调试手机。
  2. 使用命令 adb devices 检验adb和手机状态已经就绪。
  1. $ adb devices 
  2.  
  3. List of devices attached 
  4.  
  5. b******4        device 

模拟点击屏幕,比如你可以打开画图软件,然后运行命令:

  1. adb shell input tap 500 500 

如果如果一切OK,那么你将看到画图软件在坐标(500,500)的位置有一个点。

代码实现

通关需要点击的屏幕位置是固定的,加上注释我们只需要不到30行代码就可以完成。

  1. def tap_screen(x, y): 
  2.  
  3.     os.system('adb shell input tap {} {}'.format(x, y)) 
  4.  
  5.  
  6.  
  7. def do_money_work(): 
  8.  
  9.     print('#0 start the game'
  10.  
  11.     tap_screen(1600, 970) 
  12.  
  13.     sleep(3) 
  14.  
  15.  
  16.  
  17.     print('#1 ready, go!!!'
  18.  
  19.     tap_screen(1450, 910) 
  20.  
  21.     sleep(15) 
  22.  
  23.  
  24.  
  25.     print('#2 auto power on!'
  26.  
  27.     tap_screen(1780, 40) 
  28.  
  29.  
  30.  
  31.     for i in range(25): 
  32.  
  33.         tap_screen(1000, 500) 
  34.  
  35.         sleep(1) 
  36.  
  37.  
  38.  
  39.     print('#3 do it again...\n'
  40.  
  41.     tap_screen(1430, 980) 
  42.  
  43.     sleep(3) 

然后我们写一个主函数来循环刷钱。

  1. if __name__ == '__main__'
  2.  
  3.     for i in range(repeat_times): 
  4.  
  5.         print('round #{}'.format(i + 1)) 
  6.  
  7.         do_money_work() 

拿来主义

如果你喜欢拿来主义,请访问本文项目地址:

然后:

  1. 下载项目中的 kog.py 到本地。
  2. 将游戏打开,进入挑战模式,魔女回忆,阵容调整界面。
  3. 根据手机性能和分辨率,调整kog.py中的参数。(手机分辨率,刷金次数等等)
  4. 运行以下命令,手机上就可以查看实时运行效果。
  1. python kog.py 

注意:

  1.     每周金币上限4200,需要接近4个小时,不建议一次刷满,手机和你都要休息。
  2.     铭文,手机性能,英雄选择都会影响通关速度,自己微调等待时间。
  3.     如果你不想被USB数据线束缚,可以考虑使用无线连接Android真机。

声明

 

本脚本纯属娱乐和探索的心得,如果你因为违反了游戏规则导致被封号,我概不负责。 

责任编辑:庞桂玉 来源: segmentfault
相关推荐

2017-08-30 12:17:02

Python王者荣耀套路

2016-09-26 17:06:29

2017-11-27 11:02:46

高并发突发池系统架构王者荣耀

2017-10-30 08:20:16

王者荣耀腾讯云游戏

2017-07-10 14:20:45

2021-09-22 09:43:47

Python 开发编程语言

2017-06-09 18:31:00

电竞手游王者荣耀

2020-09-01 10:46:55

微服务架构服务器

2020-07-10 08:27:55

王者荣耀微服务架构

2023-12-25 15:28:57

Python工具pywebio

2021-08-06 06:49:19

王者荣耀项目IDEA

2019-06-03 08:52:39

打卡考勤数据库

2020-05-02 15:10:53

AI 王者荣耀人工智能

2020-07-22 11:20:28

网络安全信息安全技术

2017-10-16 09:44:19

大数据数据分析王者荣耀

2017-09-18 08:08:33

JavaScript神经网络代码

2017-09-15 13:35:11

JavaScript神经网络

2016-12-02 08:53:18

Python一行代码

2017-10-08 10:22:00

大数据王者荣耀词汇

2017-10-10 14:52:07

后台技术架构
点赞
收藏

51CTO技术栈公众号