/Mayer

世界弹射物语(没凉) / 弹射世界(凉了) 自动值守脚本,基于原生无障碍服务开发,正在适配多个手机分辨率。

Primary LanguageKotlin

Mayer - 基于无障碍服务构建的世界弹射物语养老工具

本项目处于开发阶段,欢迎大家提供优秀的脚本逻辑,本项目的 QQ 群为 291874335

简介

Mayer 是目前运行在 Android 11 以上、基于 OpenCV 识图、AccessibilityService 截图和手势操作的,帮助世界弹射物语玩家解放双手的工具。

本项目脱胎于基于 Auto.js Pro 9 开发的脚本 WFAuto2。继承了所有图形素材,自行构建了 AccessibilityService,使用了全新的脚本逻辑。

说明

为什么做这个项目

作者喜欢挂铃铛做慈善而不是跟车,但是铃铛太耗费精力,所以就做了这个项目。而且这种工具应该有利于游戏用户的留存,你说是吧弹宝?

为什么叫 Mayer ?

因为作者还玩《明日方舟》,所以选了一个使用召唤机械的辅助的名字当作项目名称。而且这个项目本来是是为《明日方舟》开发的,但是因为《明日方舟》已经拥有 MaaAssistant 这样更好用的工具,所以就改成《世界弹射物语》的工具了。

为什么不用 Auto.js ?

Auto.js 是一个非常优秀的工具,但 Auto.js Pro 已经因为黑产被国内公安部门橄榄了,并且作者为了利益并不愿意开源,因此现存的 WFAuto2 不再更新。现存基于 Rhino 的 Auto.js 衍生版本不能够使用 Node.js 模块并且不符合主流的开发模式,并且对异步程序的兼容性极差。最新版本的 Rhino 引擎对 ES2015 的支持度仅为 42%,并且作为纯 Java 开发的引擎,Rhino 本身的性能也不是很好,使用 ployfill 兼容新语法的运行成本会成倍上升。不如直接基于拥有大量语法糖的 Kotlin 进行开发。

不过还是感谢 Auto.js 的作者提供了这么优秀的工具。

该死的黑产。

为什么不用 Xposed ?

谁吃多了就只为了个玩一个游戏就把手机 root 了?Auto.js 的诞生也是为了不 root 的情况下也能够使用。

功能

未勾选的功能都是计划实现的功能,如果有新功能的需求,请提出 Issue。

  • 无障碍服务
    • 基于无障碍的截图功能
    • 基于无障碍的手势功能
  • 基于 OpenCV 的识图
    • 提高识图速度
  • OCR 文字识别
  • 分辨率适配
    • 540x960+
    • 720x1280+
    • 1080x1920+
    • 1220x2240+
    • 1440x2560+
    • 其他屏幕比例和分辨率欢迎讨论
  • 兼容 官服安装包B 服安装包
  • 悬浮窗
    • 设置自动开启
  • 脚本
    • 铃铛脚本
    • 单人脚本(主要用于自动续体力)
    • 开车脚本(主要用于自动续体力)
    • 跟车脚本(主要用于自动续体力)

使用方法

安装

由于目前 Mayer 还处于开发阶段,可以到 QQ 群寻找安装包手动安装。

使用

  1. 打开 Mayer 的无障碍服务。
  2. (推荐)打开 Mayer 的悬浮窗。
  3. 脚本 页面选择脚本,右侧箭头可点击进入脚本设置。
  4. 设置 页面设置全局的设置和调整悬浮窗高度。
  5. 紧邻导航栏的按钮可用于起动和停止脚本。

需要大家的帮助

识图素材

目前 Mayer 的识图素材是从 WFAuto2 中继承过来的,但是现存的识图素材是基于 1080x1920+ 这个分辨率的,所以在其他分辨率下无法使用,使用比例缩放之后只有一小部分识图素材(不包含文字的那些)可以成功识别。因此需要大家提供各个分辨率的新的识图素材另作兼容。

脚本逻辑

目前 Mayer 的脚本逻辑是从 WFAuto2 中继承并进行重写,但是现存的脚本逻辑是基于 Auto.js Pro 9 的,还有很重的 TypeScript 的影子,所以在使用 Kotlin 重构之后,脚本逻辑需要重新设计。

已经可以使用的脚本源代码储存在 主要代码的 scripts 目录 中,如果有什么对脚本逻辑的改进建议,欢迎提出 Issue。

开源协议

Mayer 使用 GPLv3 开源协议开源。如果有开源协议冲突的问题,请提出 Issue 以便做出合规化的处理。