用Python写王者荣耀刷金币脚本


Posted in Python onDecember 21, 2017

王者荣耀很多朋友都想买脚本和挂之类的,想更加容易的获得金币等可以在游戏里买英雄等,今天我们发挥程序员的优势教给大家用Python语言自己写一个可以刷金币的脚本,以下是全部内容。

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

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

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

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

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

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

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

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

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

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

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

adb shell input tap x y

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

准备

本脚本适用于安卓游戏区,需要真实安卓手机。

手机需开启USB调试模式,允许电脑调试。

电脑需安装好安卓驱动,一般豌豆荚或者各种管家可以自动帮你装好。

电脑需要有ADB工具集,很多方式可以获取。

ADB工具需要加入环境变量PATH中,方便随时调用。

电脑上需要安装Python,因为这是我选择的脚本语言。

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

在 Windows 下搭建 Appium + Android 自动化测试环境

在Mac OSX 上配置Appium+Android自动化测试环境

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

步骤

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

环境检测

用USB连接手机,如果弹出警告,请允许电脑调试手机。

使用命令 adb devices 检验adb和手机状态已经就绪。

$ adb devices
List of devices attached
b******4    device

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

adb shell input tap 500 500

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

代码实现

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

def tap_screen(x, y):
  os.system('adb shell input tap {} {}'.format(x, y))

def do_money_work():
  print('#0 start the game')
  tap_screen(1600, 970)
  sleep(3)

  print('#1 ready, go!!!')
  tap_screen(1450, 910)
  sleep(15)

  print('#2 auto power on!')
  tap_screen(1780, 40)

  for i in range(25):
    tap_screen(1000, 500)
    sleep(1)

  print('#3 do it again...\n')
  tap_screen(1430, 980)
  sleep(3)

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

if __name__ == '__main__':
  for i in range(repeat_times):
    print('round #{}'.format(i + 1))
    do_money_work()

然后:

下载项目中的 kog.py 到本地。

将游戏打开,进入挑战模式,魔女回忆,阵容调整界面。

根据手机性能和分辨率,调整kog.py中的参数。(手机分辨率,刷金次数等等)

运行以下命令,手机上就可以查看实时运行效果。

python kog.py

注意:

每周金币上限4200,需要接近4个小时,不建议一次刷满,手机和你都要休息。

铭文,手机性能,英雄选择都会影响通关速度,自己微调等待时间。

如果你不想被USB数据线束缚,可以考虑使用无线连接Android真机。

Python 相关文章推荐
python通过scapy获取局域网所有主机mac地址示例
May 04 Python
简介Django中内置的一些中间件
Jul 24 Python
浅谈python抛出异常、自定义异常, 传递异常
Jun 20 Python
python 将字符串转换成字典dict的各种方式总结
Mar 23 Python
基于python 处理中文路径的终极解决方法
Apr 12 Python
python 利用栈和队列模拟递归的过程
May 29 Python
python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法
Sep 13 Python
python虚拟环境迁移方法
Jan 03 Python
Python分布式进程中你会遇到的问题解析
May 28 Python
python join方法使用详解
Jul 30 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
Mar 11 Python
python爬虫框架feapde的使用简介
Apr 20 Python
python使用Apriori算法进行关联性解析
Dec 21 #Python
python实现kMeans算法
Dec 21 #Python
利用Tkinter(python3.6)实现一个简单计算器
Dec 21 #Python
python编写朴素贝叶斯用于文本分类
Dec 21 #Python
python并发2之使用asyncio处理并发
Dec 21 #Python
利用Python暴力破解zip文件口令的方法详解
Dec 21 #Python
Python人脸识别初探
Dec 21 #Python
You might like
php 使用GD库为页面增加水印示例代码
2014/03/24 PHP
ie和firefox中img对象区别的困惑
2006/12/27 Javascript
通过继承IHttpHandle实现JS插件的组织与管理
2010/07/13 Javascript
cument.execCommand()用法深入理解
2012/12/04 Javascript
jQuery制作仿腾讯web qq用户体验桌面
2013/08/20 Javascript
jquery简单实现滚动条下拉DIV固定在头部不动
2013/11/25 Javascript
zeroclipboard 单个复制按钮和多个复制按钮的实现方法
2014/06/14 Javascript
Node.js操作redis实现添加查询功能
2017/05/25 Javascript
在HTML文档中嵌入JavaScript的四种方法
2018/05/07 Javascript
微信小程序实现自动定位功能
2018/10/31 Javascript
RxJS在TypeScript中的简单使用详解
2020/04/13 Javascript
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python使用gensim计算文档相似性
2016/04/10 Python
Python实现删除列表中满足一定条件的元素示例
2017/06/12 Python
python web.py开发httpserver解决跨域问题实例解析
2018/02/12 Python
python机器学习之随机森林(七)
2018/03/26 Python
python3下使用cv2.imwrite存储带有中文路径图片的方法
2018/05/10 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
python如何删除列为空的行
2020/07/17 Python
Python实现Word文档转换Markdown的示例
2020/12/22 Python
Rag & Bone官网:瑞格布恩高级成衣
2018/04/19 全球购物
联想智利官方网站:Lenovo Chile
2020/06/03 全球购物
C#基础面试题
2016/10/17 面试题
英语系本科生个人求职信
2013/09/21 职场文书
生产管理的三大手法
2013/11/11 职场文书
初二政治教学反思
2014/01/12 职场文书
高一物理教学反思
2014/01/24 职场文书
网上快餐厅创业计划书
2014/02/01 职场文书
房产公证书范本
2014/04/10 职场文书
关于热爱祖国的演讲稿
2014/05/04 职场文书
2014年校长工作总结
2014/12/11 职场文书
2015年毕业生自荐信范文
2015/03/24 职场文书
小学生表扬稿范文
2015/05/05 职场文书
oracle覆盖导入dmp文件的2种方法
2021/05/21 Oracle
Redis Stream类型的使用详解
2021/11/11 Redis
Python Pandas读取Excel日期数据的异常处理方法
2022/02/28 Python