使用adb-shell连接模拟器/手机,通过adb标准规范与安卓设备通信,实现截图、虚拟点击等核心功能。
使用opencv的模板匹配模块检测截图中的目标图像位置,在找到目标后进行更多操作。
感谢@anywhere2go的工作,本项目基于这个思路开发。
QQ交流群:157307963
阴阳师已经来到第八个年头,进入了游戏的生命周期末期,大部分玩家可能已经失去了当初的激情,懒得再每天挖土、爬塔,这也是这个项目诞生的原因。使用本脚本可以避免绝大部分游戏中的重复劳动,解放你的业余时间。但是,作为脚本用户,请不要因此跳脸普通玩家,也不要在墙内公共社交平台大肆宣扬这个项目,更不要用这个脚本去做代肝。
此外,由于精力有限,这个项目并不会很快的发展到一个完全完善、稳定的版本,但是在退坑前会一直保持维护,只要你还能看到句话,欢迎issue或pr,不过请保护好自己的游戏id。
最后,一句老生常谈的话送给大家——用别怕,怕别用。
- 从release下载最新的版本。
- 运行程序,根据流程选择需要执行的脚本并连接到您的设备,然后,do anything you want~
- 因为使用纯视觉方案,脚本所需资源需要动态下载,请确保和
raw.githubusercontent.com
的连接。在当前版本(v1.2.1)中,在版本检查过程中出错后会自动进入离线模式。离线模式不会更新最新的资源,在某些情况下可能会导致脚本失效,例如每个月的伴生爬塔活动。 - 关于连接到设备,本脚本使用
abc-shell
库提供的tcp连接方法连接到您的设备,所以设备的ip
和端口
是必须的。如果你不理解这是什么,那么推荐你使用mumu模拟器。在成功运行模拟器后,在mumu多开器(注意不是模拟器)右上角点击带有adb
字样的图标即可获得正在运行的模拟器的端口号
,而在本机运行的模拟器ip
均为127.0.0.1。 - 目前只提供了mumu模拟器选项,但是在当前版本并未区分不同模拟器的特性(
其实是我懒),固对于不同模拟器甚至是手机,都是可以通过mumu选项进行正常连接的。 - 因为种种原因,目前仅支持1920*1080分辨率的设备,请将你的设备调整到这个分辨率,不然将会导致脚本无法使用。
- 由于精力有限,无法每次面面俱到地测试程序,所以在遇到问题后请尝试更新到最新版本、使用mumu模拟器(因为开发时用它测试的)、使用默认的游戏设置等。如果问题还不能解决,欢迎大家将发现的问题提到issue中,我会尽量帮助解决,但是请不要做不会思考的伸手党。
- 基本流程框架
- 业原火
- 御魂组队副本
- 活动爬塔
- 御灵
- 源赖光经验副本
如果你有更多的需求或者idea,也欢迎提到issue中。
如果你想加入开发,请继续看下面的部分
无论你是大佬还是萌新,甚至是0基础想学习代码,这里都欢迎你。如果你有这个意向,请通过QQ或者GitHub联系我。
- 更易用的前端界面:目前使用Node.js风格的inquirer命令行,对于当前已经够用,但是对于复杂功能的开发就显得捉襟见肘了,所以希望擅长pyqt的大佬可以协助重构这个前端。
- 更多的识别方式:目前的视觉方案中主要使用了opencv中
matchTemplate
这个api,在低性能的机器上存在低效的问题,所以希望在未来能够探索更轻量的模板匹配模型或是OCR模型,例如paddleOCR。 - 更优秀的脚本流程:目前的流程使用简单粗暴的循环,可以稳定运行,但是效率显然不是最佳的,希望可以通过优化脚本流程、增加状态控制等方法加速脚本执行的速度。
- 更合理的架构:本项目时从过去我一直使用的脚本重构而来,架构均为一拍脑袋想的,在未来开发中可能发现越来越多的不足,所以在开发过程中会不断优化架构。