# ShamboQ - 高级队列系统

## 概述
ShamboQ 是一个为 Minecraft 网络设计的专业队列管理系统,允许服务器管理员在将玩家转移到主服务器之前,为他们提供优雅的等待体验。 该插件会在指定的等待区域冻结玩家,显示倒计时消息,并播放身临其境的音效,然后在自动将他们转移到目标服务器。 **_插件将进一步开发_**.
## 项目历史
ShamboQ 由 **Shambonoor Enterpraises** 赞助
## 安装
### 前置条件
- 运行 Bukkit/Spigot/Paper 1.19+ 的 Minecraft 服务器(可能适用于 1.16-1.18)
- 一个代理服务器:BungeeCord、Waterfall 或 Velocity
- Java 8 或更高版本
### 安装步骤
1. 下载 ShamboQ-xxx.jar 文件
2. 将 JAR 文件放在您的大厅服务器的 `/plugins/` 目录中
3. 重新启动您的服务器(或使用插件管理器加载它)
4. 编辑在 `/plugins/ShamboQ/config.yml` 中生成的配置文件,以匹配您的网络设置
5. 使用 `/shamboq reload` 应用您的配置更改
### 重要提示:代理配置
1. 确保您的 BungeeCord/Velocity 配置中定义了与 ShamboQ 配置中指定的名称相同的目标服务器
2. 在您的队列服务器的配置文件中启用代理支持
## 工作原理
### 队列流程
1. 当玩家加入您的大厅服务器时,ShamboQ 自动:
- 冻结玩家的位置
- 隐藏玩家(反之亦然)
- 将他们传送到末地维度中指定的生成点(插件默认搜索末地世界)
- 显示带有倒计时信息的欢迎消息
- 播放身临其境的音效
- 在操作栏中显示倒计时
2. 当倒计时达到零时,玩家将被自动转移到您的主服务器
### 队列管理
- 管理员无需重启即可切换队列的开启/关闭状态
- 禁用时,玩家仍然冻结,但看不到倒计时
- 重新启用时,所有等待中的玩家都会自动添加到活动队列流程中
- 具有 `shamboq.bypass` 权限的玩家可以完全跳过队列
## 配置
`config.yml` 文件允许您自定义:
```yaml
# ShamboQ Configuration
# developed by Shambonoor Ent.
# https://szam.boo/
# https://discord.gg/wUmVUBc7rv
# 队列设置
queue:
# 启用或禁用队列系统
enabled: true
# 等待发送到 SMP 的时间(秒)
time: 10
# 连接到哪个 SMP 服务器的名称
smp-server: "smp"
# 当队列禁用时显示的消息
disabled-message: "Queue is currently disabled"
# 是否显示已禁用消息
show-disabled-message: true
# 多久显示一次通知 (秒)
notification-interval: 5
# 连接设置
connection:
# 连接失败时重试的最大次数
max-retries: 3
# 重试之间的等待时间(秒)
retry-delay: 5
# 用于各种插件功能的的消息
messages:
queue_enabled: "&aQueue has been enabled!"
queue_disabled: "&cQueue has been disabled!"
no_permission: "&cYou don't have permission to use this command!"
queue_time_set: "&aQueue time set to &e%d &aseconds!"
invalid_number: "&cInvalid number: &e%s"
message_set: "&aQueue disabled message set to: &e%s"
notifications_enabled: "&aQueue disabled notifications have been enabled!"
notifications_disabled: "&cQueue disabled notifications have been disabled!"
player_not_found: "&cPlayer not found: &e%s"
sending_player: "&aSending &e%s &ato &e%s&a!"
config_reloaded: "&aShamboQ configuration reloaded!"
welcome_title: "&6Welcome to the Server!"
welcome_subtitle: "&eYou will be transferred to the SMP server in &6%d &eseconds"
countdown: "&eTransfer in &6%d &eseconds..."
queue_disabled_title: "&cQueue Disabled"
usage_settime: "&cUsage: /shamboq settime "
usage_message: "&cUsage: /shamboq message "
usage_send: "&cUsage: /shamboq send "
queue_disabled_player: "&cQueue system has been disabled. You are no longer in queue."
frozen_player: "&cYou are currently frozen in the lobby."
# 新的连接错误信息
connection_failed: "&cConnection to SMP server failed. Retrying..."
connection_error: "&cCould not connect to SMP server. &eError: %s"
connection_timeout: "&cConnection timed out. Retrying in %d seconds..."
max_retries_reached: "&cCould not connect after %d attempts. Please try again later."
back_in_queue: "&eYou've been placed back in the queue due to connection issues."
# 末地中的生成位置
spawn:
x: -1.5
y: 64
z: 0.5
# 将随机播放的音效示例
sounds:
- "ENTITY_ENDERMAN_DEATH"
- "ENTITY_ENDER_DRAGON_AMBIENT"
- "ENTITY_ENDER_DRAGON_DEATH"
- "BLOCK_END_PORTAL_FRAME_FILL"
- "BLOCK_END_PORTAL_SPAWN"
- "BLOCK_END_GATEWAY_SPAWN"
- "ENTITY_LIGHTNING_BOLT_THUNDER"
- "ENTITY_LIGHTNING_BOLT_IMPACT"
- "ENTITY_GENERIC_EXPLODE"
# 用于减少服务器资源使用的优化设置
optimization:
# 基本优化
chunk-management: true
disable-mobs: true
reduce-view-distance: true
queue-view-distance: 3
no-tick-zone: true
# 高级
disable-terrain-generation: true
disable-player-ticks: true
spectator-mode: false
dedicated-thread-pool: true
thread-pool-size: 1
aggressive-chunk-management: true
max-loaded-chunks: 5
# 调试模式 (启用详细日志记录)
debug: false
```
## 命令
- `/shamboq toggle` - 启用或禁用队列
- `/shamboq settime ` - 设置队列等待时间
- `/shamboq message ` - 设置队列禁用消息
- `/shamboq notify` - 切换队列禁用通知
- `/shamboq send ` - 将特定玩家发送到 SMP 服务器
- `/shamboq reload` - 重新加载配置
- `/shamboq status` - 显示当前队列状态
## 权限
- `shamboq.admin` - 访问所有 ShamboQ 命令
- `shamboq.bypass` - 完全跳过队列
## 技术特性
- 多版本支持,并具有自动 API 检测
- 高级操作栏系统,与 Paper 的 Adventure API 兼容
- 内存高效的队列管理
- 线程安全的玩家处理
- 自动回退系统以确保兼容性
- 队列服务器优化
## 支持和反馈
要获取支持、功能请求或报告错误,请访问 [discord.gg/wUmVUBc7rv](https://discord.gg/wUmVUBc7rv)
_由 Shambonoor Ent. 开发_