基于雷电模拟器利用python制作手游脚本 (神都夜行录,古剑奇谭木语人) (一)
前言
此文仅做为自己的一个学习记录,感激雷电和zerglurker大神的文章,侵删。
雷电模拟器命令操作
雷电官方:https://www.ldmnq.com/forum/71604.html
有了该基本命令行,能对模拟器进行按键、截屏等操作,而python能够通过图片的内容识别再使用CMD控制模拟器进而实现游戏脚本。
python实现
吾爱破解:https://www.52pojie.cn/thread-837510-1-1.html
这里应该是最初版源码,百度其他的内容基本都是复制粘贴此处的,作者已经把实现函数具体化了,但缺少实例,以下为两个实例:实例一:古剑奇谭木语人:自动进入刷本(卡片游戏,界面较为静态,且内容较为简单,特别容易);神都夜行录:挖宝钓鱼。(第三人称游戏,游戏场景丰富,较有难度)
实例一:古剑奇谭木语人
主要内容
主要讲述一个点击动作的完整流程:
启动游戏->截取屏幕->目标图与截图进行匹配比对->得到目标点后动作处理
启动APP
我之前于此部分犯错,当时误以为package name就是APP名称,实际是包名。需要通过
//index:0
cmd = "ldconsole.exe -s 0 pm list package")
的输出找到游戏包(如木语人:package:com.wangyuan.yjzz.bilibili)。那么自启动APP的命令行:
a,b = 0,"package:com.wangyuan.yjzz.bilibili"
cmd = "ldconsole.exe runapp --index %d --packagename %s" %(a,b))
截屏图片截取
截取图片之后可以通过查看按钮找到模拟器和本机共享文件夹的位置,于screenshots文件下存放着。
命令条:
//路径:模拟器(手机)的存储路径
cmd = "ldconsole.exe -s 0 screencap -p /sdcard/Pictures/Screenshots/apk_scr.jpg"
图片识别
效仿zerglurker,我也采用了opencv2的模板比对。
CSDN:https://blog.csdn.net/qq_41603898/article/details/82219291
博客园:https://www.cnblogs.com/decode1234/p/9161584.html
运用matchTemplate函数可以返回出可信区域坐标和一个可信值,自行调整参数完成理想的识别效果。
效果
古剑奇谭木语人 python脚本 自动点击
结尾
此为第一部分,后续神都相关功能还待测试(号卖了…在买个小号),相关代码等后续写完一起打包;
基于模拟器的脚本会比较安全,无非就是截屏识图后利用ld.exe执行一些按键点击的功能。
相关文章
- 前端必会:CDN加速原理
- 还以为 VSCode 是程序员专属的工具?那你可太小看它了
- 【网页特效】11 个文本输入和 6 个按钮操作 特效库
- 所有的编程语言知识,都包含在这100张思维导图里了丨开源
- 5种可能在10年后消失的开发语言
- 烂大街的“中台”,终将“一地鸡毛” ?
- 图解|什么是RSA算法
- 2020年网络开发人员必读书单:让你的代码和架构更上一层楼
- 谷歌软件工程师是怎样写设计文档的?
- 线上 Go 程序偶尔出现异常怎么办?这个思路可解决你的烦恼
- 美国限制半导体设备出口:制造设备及相关软件工具、激光器、传感器...
- 初学者指南:什么是算法?11行伪代码给你讲明白
- 2020年,你应该知道 23 个非常有用的 NodeJs 库
- 选择服务网格的注意事项
- 不怕特朗普封杀!“中国版 GitHub” 出道:工信部选定,已是世界第二
- 科学家的挑战:十年前写的代码现在还能否运行
- 程序员过关斩将--解决分布式session问题
- 只加了 2 行代码,为什么你用了 2 天?
- 算法工程师福利:超实用技术路线图
- 干货ReentrantLock非公平锁源码分析