Skip to content

RegadPoleCN/MiraiMC

 
 

Repository files navigation

MiraiMC

GitHub release CodeFactor GitHub Actions CI GitHub all releases


MiraiMC 是适用于 Minecraft 服务器的 Mirai 机器人

介绍

MiraiMC 是一个基于 Mirai 的 Minecraft 服务端插件,能够让你在 Minecraft 服务器上使用 Mirai QQ 机器人程序,同时提供一些 API 帮助开发者简单的调用机器人接口为自己的插件实现多样的功能。

一切开发旨在学习,请勿用于非法用途

  • 本项目保证永久开源,欢迎提交 PR,但是请不要提交用于非法用途的功能。
  • 如果某功能被大量运用于非法用途或严重侵害插件使用者权益,那么该功能将会被移除。
  • 本模块完全免费开源,没有任何收费,请勿二次贩卖。
  • 鉴于项目的特殊性,作者可能在任何时间停止更新删除项目

下载

开始使用

服主

如果你是服主,正在被接入 QQ 机器人所困扰(尤其是 Linux 和面板服),那么只需要下载本插件即可方便快捷的接入并使用QQ机器人且无需使用额外的软件。

请按下面的步骤开始使用 MiraiMC:

  1. 下载插件,并将插件文件放入 plugins 文件夹
  2. 下载基于 MiraiMC 开发的其他插件(如果有的话),并将这些插件放入 plugins 文件夹
  3. 启动服务端(如果尚未启动)
  4. 使用指令“/mirai login <账号> <密码>”登录你的机器人账号
  5. 如果你同时使用了基于 MiraiMC 开发的插件,请在这些插件的配置文件中调整有关 MiraiMC 的配置
  6. 享受优雅的 QQ 机器人服务!

可以在这里找到更为详细的使用教程:https://docs.miraimc.dreamvoid.me/

开发者

如果你是插件开发者,正在考虑让自己的插件能够对接 QQ 机器人,那么只需要使用本插件提供的 API 即可方便快捷的实现需求而无需让服主进行额外的配置。

你可以简单的使用 MiraiMC 开发模板来开始开发一个全新的插件:

你也可以为现有插件引入 MiraiMC,只需按照以下步骤即可接入 MiraiMC:

  1. 引入项目作为依赖库
    • Maven
    <dependency>
        <groupId>io.github.dreamvoid</groupId>
        <artifactId>MiraiMC-Integration</artifactId>
        <version>1.8</version>
        <scope>provided</scope>
    </dependency>
    
    • Gradle
    implementation 'io.github.dreamvoid:MiraiMC-Integration:1.8'
    
  2. 参照 JavadocMiraiMC 开发模板编写相关的代码
  3. 发布你的插件

可以在这里找到更为详细的开发教程:https://docs.miraimc.dreamvoid.me/

指令和权限

指令

命令 描述 权限
/mirai MiraiMC 机器人主命令 miraimc.command.mirai
/mirai login <账号> <密码> [协议] 登录一个机器人(可多次执行此命令以登录多个机器人) miraimc.command.mirai.login
/mirai logout <账号> 退出并关闭一个机器人 miraimc.command.mirai.logout
/mirai list 列出当前在线的机器人 miraimc.command.mirai.list
/mirai sendfriendmessage <账号> <好友> <消息> 向指定好友发送消息 miraimc.command.mirai.sendfriendmessage
/mirai sendfriendnudge <账号> <好友> 向指定好友发送戳一戳 miraimc.command.mirai.sendfriendnudge
/mirai sendgroupmessage <账号> <群号> <消息> 向指定群发送消息 miraimc.command.mirai.sendgroupmessage
/mirai checkonline <账号> 检查指定机器人是否在线 miraimc.command.mirai.checkonline
/mirai autologin add <账号> <密码> [协议] 添加一个自动登录机器人账号 miraimc.command.mirai.autologin
/mirai autologin remove <账号> 移除一个自动登录机器人账号 miraimc.command.mirai.autologin
/mirai autologin list 查看自动登录机器人账号列表 miraimc.command.mirai.autologin
/miraimc MiraiMC 插件主命令 miraimc.command.miraimc
/miraimc bind add <玩家名> <QQ号> 为玩家和QQ号添加绑定 miraimc.command.miraimc.bind
/miraimc bind getplayer <玩家名> 获取指定玩家名绑定的QQ号 miraimc.command.miraimc.bind
/miraimc bind getqq <QQ号> 获取指定QQ号绑定的玩家名 miraimc.command.miraimc.bind
/miraimc bind removeplayer <玩家名> 删除一个玩家的绑定 miraimc.command.miraimc.bind
/miraimc bind removeqq <QQ号> 删除一个QQ号的绑定 miraimc.command.miraimc.bind
/miraimc reload 重新加载配置文件 miraimc.command.miraimc.reload

权限

权限节点 描述 默认
miraimc.command.mirai 允许使用 /mirai OP
miraimc.command.mirai.* 允许使用 /mirai 的所有子命令 OP
miraimc.command.mirai.login 允许使用 /mirai login OP
miraimc.command.mirai.logout 允许使用 /mirai logout OP
miraimc.command.mirai.list 允许使用 /mirai list OP
miraimc.command.mirai.sendfriendmessage 允许使用 /mirai sendfriendmessage OP
miraimc.command.mirai.sendfriendnudge 允许使用 /mirai sendfriendnudge OP
miraimc.command.mirai.sendgroupmessage 允许使用 /mirai sendgroupmessage OP
miraimc.command.mirai.checkonline 允许使用 /mirai checkonline OP
miraimc.command.mirai.autologin 允许使用 /mirai autologin OP
miraimc.command.miraimc 允许使用 /miraimc OP
miraimc.command.miraimc.* 允许使用 /miraimc 的所有子命令 OP
miraimc.command.miraimc.bind 允许使用 /miraimc bind 及下属子命令 OP
miraimc.command.miraimc.reload 允许使用 /miraimc reload OP

许可证

GNU Affero General Public License v3.0

致谢

感谢以下人员/团队/项目为 MiraiMC 做出的贡献!

  • mamoe/mirai:强大的QQ机器人支持库,MiraiMC 的核心和基础。
  • lucko/helper:为 MiraiMC 提供动态加载 mirai 核心的解决方案。
  • brettwooldridge/HikariCP:高效的 SQL 连接池,为 MiraiMC 提供数据库连接方案。
  • Anon8281/UniversalScheduler:为 MiraiMC 提供在 Folia 使用异步线程的解决方案。
  • LT_Name:为 MiraiMC 优化了大量 Nukkit 代码,也为 MiraiMC 和我本人提供了很多帮助。
  • 你。

下一步的目标

  • 初步实现 CoreAPI 的基础功能
  • 初步完善指令和权限系统
  • 初步完善 API 接口供其他插件开发者调用
  • 加入自动登录机器人的功能
  • 添加剩余未添加的 Mirai 事件
  • 重写登录流程以适应 Bukkit(和未来支持的 Bungee,甚至 Sponge)
  • 支持 BungeeCord
  • 完全兼容 mirai console 的结构供已在使用 mirai 的服主使用
  • 支持 Sponge
  • 支持 NukkitX
  • 支持 PlaceholderAPI
  • 引入 Mirai-Http-API 模式来连接到 mirai-console
  • 支持 Folia
  • 像 mirai console 一样加载 mirai console 插件(遥遥无期,欢迎 PR)

DreamVoidMiraiMC,用 ❤ 制作。

About

适用于Minecraft服务器的Mirai机器人

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 98.4%
  • Kotlin 1.6%