🔐 AdventureAuth

一、简介

AdventureAuth —— Paper + Velocity 双端登录验证系统

为离线模式服务器提供安全的登录注册系统。支持 Paper 端和 Velocity 端双模式部署,Bedrock (基岩版) 玩家免验证,EasyBot 脚本联动,跨服数据同步。

支持 Paper 1.21.4+ / Velocity 3.x+ 服务器(Java 21)。

核心特性

  • 双端部署 — Paper 端独立使用或 Velocity 端群组统一管理
  • 登录注册/register 注册、/login 登录、/changepassword 改密码
  • Bedrock 免验证 — 检测 Geyser/Floodgate 基岩版玩家自动跳过验证
  • EasyBot 联动 — 支持 EasyBot 脚本 QQ 绑定验证
  • 行为限制 — 未登录玩家禁止移动/交互/聊天/执行命令
  • 密码加密 — BCrypt 安全存储
  • 跨服同步 — MySQL 存储,群组服共享账号
  • IP 限制 — 同 IP 注册账号数限制

二、插件前置说明

  • Velocity — 可选(群组服模式需要)
  • Geyser/Floodgate — 可选(基岩版免验证)

📥 安装与配置

环境要求

项目要求
服务端Paper 1.21.4+ 或 Velocity 3.x+
Java21+
可选依赖Geyser/Floodgate(基岩版)

部署模式

A. 单服模式(Paper)

  1. 放入 Paper 端 plugins/
  2. 编辑 config.yml,设置数据库
  3. 重启服务器

B. 群组服模式(Velocity + Paper)

  1. Velocity 端放入 plugins/
  2. 所有 Paper 子服也放入 plugins/
  3. 配置 MySQL 统一数据源
  4. 重启所有服务器

🔑 登录流程

新玩家

  1. 进入服务器 → 行为限制生效(不能移动/交互)
  2. 系统提示 /register <密码> <确认密码>
  3. 注册成功 → 自动登录 → 限制解除

已注册玩家

  1. 进入服务器 → 行为限制生效
  2. 系统提示 /login <密码>
  3. 登录成功 → 限制解除

超时踢出

超过配置时间未登录的玩家将被自动踢出服务器。

📱 基岩版兼容

当服务器安装了 Geyser + Floodgate 时,基岩版玩家(前缀带 .)自动跳过验证,无需注册和登录。

bedrock:
  auto-login: true           # 基岩版自动登录
  prefix: "."                # Floodgate 前缀

🤖 EasyBot 联动

支持 EasyBot 脚本机器人,实现 QQ 群绑定验证。玩家在 QQ 群发送绑定命令后,游戏内自动完成验证。

EasyBot 脚本位于 easybot-plugin/ 目录。

⌨️ 命令列表

命令说明
/register <密码> <确认>注册账号
/login <密码>登录
/changepassword <旧> <新>修改密码
/aauth reload重载配置(管理员)
/aauth unregister <玩家>强制注销(管理员)

⚙️ 配置文件

database:
  type: sqlite          # sqlite 或 mysql
  mysql:
    host: localhost
    port: 3306
    database: auth

settings:
  login-timeout: 60     # 登录超时(秒)
  max-accounts-per-ip: 3
  password-min-length: 6

bedrock:
  auto-login: true
  prefix: "."

🔑 权限节点

权限说明默认
aauth.admin管理命令OP
aauth.bypass跳过验证

📝 更新日志

v1.1.0 最新

  • NEW EasyBot 联动 — QQ 群绑定验证脚本
  • NEW Bedrock 免验证 — Geyser/Floodgate 自动跳过

v1.0.0

  • NEW 初始发布 — Paper+Velocity 双端验证、BCrypt 加密、行为限制、IP 限制