一个基于 Velocity 平台的白名单管理插件,通过 MySQL 数据库进行白名单数据的存储和验证。
推荐与 WhitelistWebAdmin 一起使用,它提供了一个便捷的 Web 管理界面,可以:
- 可视化管理白名单玩家
- 处理临时登录请求
Warning
由于目前插件并没有指令添加功能,如果不使用WhitelistWebAdmin,则需要自行寻找修改数据库的程序。
- Java 17 或更高版本
- Velocity 3.1.1 或更高版本
- MySQL/MariaDB 数据库
- 下载 jar 文件并放入 Velocity 服务器的
plugins
目录 - 启动服务器,插件会自动生成配置文件
- 编辑
plugins/whitelist-rms/config.yml
配置文件 - 重启服务器使配置生效
配置文件位于 plugins/whitelist-rms/config.yml
,包含以下内容:
mysql:
host: localhost # 数据库地址
port: 3306 # 数据库端口
database: minecraft # 数据库名称
username: root # 数据库用户名
password: password # 数据库密码
messages:
not-whitelisted: "§c您没有白名单权限!" # 无白名单权限提示信息
插件会自动创建以下数据表:
-
whitelist
表:存储白名单玩家- id: 自增主键
- username: 玩家名称(唯一)
-
temporarylogin
表:临时登录请求管理- id: 自增主键
- username: 玩家名称(唯一)
- request_time: 请求时间
- status: 状态(pending/approved/rejected/timeout)
- update_time: 更新时间
-
白名单验证
- 玩家首次连接时自动检查白名单
- 未在白名单中的玩家将被拒绝连接
-
临时登录请求
- 未在白名单中的玩家可以发起临时登录请求
- 请求状态包括:等待审核、已批准、已拒绝、已超时
- 系统会自动清理超过90秒的临时登录请求
-
数据库连接池
- 使用 HikariCP 管理数据库连接
- 自动重连和连接池优化
- 连接超时和验证配置
本项目使用 Gradle 进行构建。在项目根目录执行以下命令:
./gradlew build
构建完成后,你可以在 build/libs
目录下找到生成的 jar 文件。
- HikariCP 5.0.1 - 数据库连接池
- MariaDB Java Client 3.1.4 - 数据库驱动
本项目采用GPL-3.0开源协议