
星界机器人
作为Discord机器人兼用的Minecraft模组,最初为Create: Astral制作
查看大图AstralBot
这是一个集 Minecraft 模组与 Discord 机器人于一体的软件包。它专为 Create: Astral 整合包的官方服务器打造,但采用了跨平台实现,因此其他用户也可使用。 其目标是易于使用,对非技术类服务器管理员友好, 同时为高级用户保留充分的复杂性。
功能
以下功能是此机器人的核心功能。请参阅 状态部分 了解已实现的功能。
- Discord 与 Minecraft 账号绑定,可选要求绑定后才能加入白名单
- Discord 与 Minecraft 聊天同步,可选通过 webhook 以提高可读性
- 使用 Markdown 文件的 FAQ 命令,无需重启服务器
依赖项
此模组有一些依赖项,其中部分因技术上是可选的,并未直接注明:
- 你所运行平台的 Kotlin 实现。(例如 Kotlin For Forge 或 Fabric Language Kotlin)
- (Neo-)Forge Config API(Neo/Forge 已包含,Fabric 需额外模组)
实现
- 使用 JDA 库与 Discord API 通信。
- 使用 Kotlin,相较于 Java 提供更佳的开发体验
- 使用 JetBrains Exposed 与数据库通信
配置
以下内容将可配置:
要求绑定后才能加入白名单(默认:
off)模仿 Discord 用户的聊天同步:
- 不模仿用户(机器人以自己的名义发送消息)
- (如可能)模仿 Minecraft 用户(消息将使用 Minecraft 用户名和头像)
- (仅在要求绑定后才能加入白名单时可用)模仿 Discord 用户(消息将以绑定的 Discord 用户名发送)
默认:模仿 Minecraft 用户(若设置了可用的 webhook,否则不模仿)
通过命令界面管理 FAQ(默认:
off)数据库连接。默认使用 SQLite 数据库
状态
- 白名单
- FAQ 命令
- 读取 Markdown 文件
- 无需重启更新建议
- 通过命令管理/创建
- 聊天同步
- Minecraft 到 Discord
- Discord 到 Minecraft
- Discord 上的用户模仿。可使用 Minecraft 头像或 Discord 头像
运行
此机器人/模组目前没有公开实例。要使用它,请在 Discord 开发者门户 创建一个新应用程序,并将其
配置为拥有三项特权网关意图:PRESENCE、SERVER MEMBERS 和 MESSAGE CONTENT。
复制机器人令牌并将其存储在安全的地方(如密码管理器),切勿向
其他人展示。为确保机器人能读取令牌,它必须位于正在运行的 Minecraft 服务器可访问的 环境变量
DISCORD_TOKEN 中,或位于配置文件的 token 键下。
例如,你可以在类 Unix 系统上修改 start.sh 脚本以 export 它,或直接设置后启动 shell 脚本:
startmc.sh:
export DISCORD_TOKEN=<place token here>
java ... # java command that starts the server
或
DISCORD_TOKEN=<place token here> startmc.sh # Start the script with the env variable set
启动服务器后,你可以进入 Discord 开发者门户的 OAuth2 URL 构建器,
生成一个带有 bot 和 applications.command 权限的 URL。
使用生成的 URL 让机器人加入你的服务器。
为了能够使用用户模仿(这会使聊天同步更易读),机器人将尝试在配置的聊天同步频道中
创建一个 webhook。这意味着它需要拥有管理 webhook 的权限。如果你
不想这样,可以手动在希望同步消息的频道中创建 webhook,并在模组配置的
webhook.url 选项中设置它。
正在加载版本记录…




正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。