Skip to content

Minecraft_QQBot

一款基于 Nonebot2 用多种方式与 Minecraft 交互的 Python QQ 机器人。功能丰富,使用简单且可以自行配置,仅需简单配置即可使用。我们已实现的功能有:

  • 支持丰富:不仅支持在多平台上运行,且支持多种 Minecraft 服务器,包括但不限于 MCDR、Purpur、Paper、Bukkit、Fabric 等。
  • 多服互联:支持多个 Minecraft 服务器互相连接,可共享所有服务器内消息。
  • 群服互通:可通过指令简单操作所有连接的服务器,可将服务器内消息同步到 QQ 群,也可把 QQ 群消息转发给服务器。
  • 高度自制:可通过 WebUi 简单配置机器人,提供多个选项供用户选择。
  • 指令交互:支持丰富的指令,包括查看自动绑定白名单、发送指令、查询服内玩家、查询服务器占用等等功能。
  • 娱乐功能:戳一戳机器人会发送一言卡片,可随机获取一句诗词,还有查看今日运势,也可接入免费 AI 功能。
  • 图片支持:支持指令响应图片,可将文本转换为图片。

欢迎到 Github 提交 Issues 提出你宝贵的建议。本机器人也有许多的拓展功能,更多其他功能还在探索中……

安装方式共有两个,请根据自己的情况选择:

  1. 自动安装
  2. 手动安装

自动安装

WARNING

自动安装功能仅适用于 Windows 系统!并且较旧的设备可能不支持。

若要使用自动安装,请到 Releases 下载最新版本的自动安装程序 Install.bat。下载完成后,双击运行,等待安装完成。如若出现问题,可求助管理或者尝试手动安装。

使用自动安装后可直接跳到 配置核心 这一节。

手动安装

搭建环境

由于本机器人依赖于 Python 语言,所以请先到 Python 官网 下载安装。请注意,此机器人仅支持 Python 3.8 以上版本(推荐 3.11),若版本过低,否则可能会出现不可预知的错误。

安装完毕 Python 后,你可以使用 pip3 -V 确认 Python 是否安装正确以及版本是否符合要求。确认完毕后,请在命令行输入如下指令安装此机器人所需的依赖库:

bash
pip3 install "nonebot2[fastapi]>=2.3.1"
pip3 install "nonebot-adapter-onebot>=2.4.3"
pip3 install "httpx~=0.27.0"
pip3 install "matplotlib>=3.9.0"
pip3 install "psutil>=6.0.0"

TIP

如若出现报错,你可以尝试输入以下指令全局使用清华镜像源来加快安装的速度。

bash
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

安装核心

环境搭建完毕后,请前往 Github 下载机器人核心 BotServer 项目。你可以在 Releases 下载最新的版本,下载完成后解压到任意目录。

你可以双击 Start.bat 运行机器人核心,如果你有安装 nb-cli,也可以使用 nb run 命令运行。

TIP

对于类 Unix 系统,你可以直接运行 python3 main.py 来启动机器人。

配置核心

安装完毕后,你需要配置机器人核心。如果看到控制台出现类似如下的输出,将此链接复制到浏览器内即可进入 WebUi 配置页面。

log
05-25 19:49:08 [INFO] WebUi http://host:port/webui?token=********

此外,你也可以直接手动编辑 .env 文件来配置机器人。对于新手,建议使用 WebUi 来配置。

WARNING

第一次使用 WebUi 有可能会请求失败,请尝试多刷新几次页面。

安装平台

Lagrange.OneBot(推荐)

本机器人含有自动配置和启动 Lagrange.OneBot 的功能。

要想使用 Lagrange.OneBot,请前往 这里 下载你系统对应的安装包,并将它的源文件放置在机器人根目录下的 Lagrange 文件夹中。

若安装后启动机器人时没有自动跳出二维码,请检查你放置的位置是否正确。请注意,源文件必须位于机器人根目录下的 Lagrange 文件夹中,并且请勿修改文件名,否则机器人无法识别到。

NOTE

若你完成了这些步骤,你可以跳过 配置平台 这一节。

如果控制台的二维码无法正常显示,请打开 Lagrange 文件夹内的 qr-0.png 文件扫码。

WARNING

如果遇到登录失败,且错误代码为 45 请参考 Lagrange.OneBot 文档 配置机器人根目录下的 Resources/Lagrange.json 文件!请勿直接配置 Lagrange 文件夹下的 appsettings.json 文件!!!

NapCat

为了与 QQ 交互,你需要安装 Onebot 协议的实现平台,例如 NapCat、LLOneBot、Mirai 等。在此文档中,我们以 NapCat 为例,你可以根据自己的需求安装其他平台。

请前往 NapCat 的 官方网站 根据文档安装。安装完成后,你需要对 NapCat 进行配置,此文档中仅解释与本机器人有关的参数,其他的请自行探索。

在此文档中仅展示 WebSocket 反向链接一种连接方式,更多的连接方式请自行探索。

你需要在 NapCat 的设置中开启 WebSocket 反向链接,并添加一个 Ws 连接地址。将此地址设置为 ws://{host}:{port}/onebot/v11/ws,请注意,其中的 {host}{port} 需要替换为你的机器人核心的实际地址。即机器人核心的 HOST 和 PORT 参数。

如果 NapCat 的控制台中不再出现类似 连接断开 的提示,说明配置成功,返回到 BotServer 查看日志,如若出现类似如下的日志,说明你的机器人已经成功的与 QQ 平台连接。你可以向机器人发送 help 指令来查看指令的使用方法。

log
05-25 19:49:08 [INFO] nonebot | OneBot V11 | Bot 2********6 connected

安装插件

对于插件的安装,请到 这里 查看详细的说明。安装成功后,你就可以使用机器人了。你可以使用 server 指令来查看连接的服务器。