- 版权类型
- 原创
- 插件中文名称
- 玩家在线时长统计(桥接)
- 插件英文名称
- Spigot-online-stats-bridge
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- 前置组件
- BCOnlineStats 在线时长统计 https://www.minebbs.com/resources/bconlinestats.16057/
- 适配版本(Java)
- 1.21
- 1.20
- 1.19
- 1.18
- 1.17
- 1.16
- 1.15
- 1.14
- 1.13
- 1.12
- 1.8
一、概述
SpigotOnlineStatsBridge 是一款运行于 Spigot / Paper 服务器的桥接插件,用于接收 BungeeCord 端的在线统计数据,并通过 PlaceholderAPI 提供变量输出接口。
该插件不参与任何统计计算,仅作为数据展示与接口层,专为多服务器网络设计。
(这也就是说我们不支持单服务器,不过单服务器统计在线时长的方法有N种,我想也不需要我们?)
二、引言
在跨服在线统计系统中,存在一个关键问题:
因此,需要一个中间层来解决:
- Spigot 无法直接获取 BC 数据
- 无法在菜单/计分板中展示跨服数据
- 无法与现有插件生态(PAPI)对接
SpigotOnlineStatsBridge 的设计目标是:
三、功能实现
、跨服数据接收
- 自动连接 BC 端(TCP 13000)
- 实时接收:
- 玩家在线数据
- 规则变量数据
- 支持自动重连机制
、本地变量缓存
- 按玩家 UUID 缓存数据
- 支持在线/离线查询
- 避免频繁网络请求
、PlaceholderAPI 集成
- 自动注册变量
- 无需手动配置
- 与所有支持 PAPI 的插件兼容
、动态变量注册(核心特性)
根据 BC 配置自动生成变量:
例如 BC 中:
papi: "bc_onlinetime_daily"
Spigot 自动支持:
%bc_onlinetime_daily%
、通用变量支持
统一变量入口:
%networkstats_<变量名>%
例如:
%networkstats_bc_onlinetime_daily%
、高性能设计
- 不参与计算
- 不进行复杂逻辑处理
- 仅缓存 + 输出
对服务器性能影响极低
四、config.yml 讲解
路径:
plugins/SpigotOnlineStatsBridge/config.yml
、基础配置
bridge:
host: 127.0.0.1
port: 13000
auth-token: "change_this_token"
server-name: "irontown"
字段说明
host
- BC 服务器地址
- 同机器可用 127.0.0.1
port
- 通信端口(必须与 BC 一致)
auth-token
- 鉴权密钥
- 必须与 BC 配置一致
server-name
- 当前 Spigot 服务器名称
- 必须与 BungeeCord 子服名称一致
五、权限节点配置
该插件为桥接插件,不涉及权限控制:
无需配置权限节点
所有功能自动运行。
六、配置优势
1. 零侵入设计
- 不影响现有插件
- 不修改原有逻辑
2. 自动化变量注册
- 无需手动添加变量
- 与 BC 配置完全同步
3. 高兼容性
支持所有 PAPI 插件,例如:
- 菜单插件(DeluxeMenus)
- 计分板插件
- UI 显示插件
- RPG 系统
4. 轻量级运行
- 无复杂计算
- 无高频 IO
- 极低性能消耗
5. 即插即用
- 启动自动连接 BC
- 自动同步数据
- 自动注册变量
七、适用场景
小游戏服务器
- 在菜单中显示玩家在线时间
- 展示任务进度
大型服务器
- 玩家活跃度展示
- 在线时间排行榜
奖励系统
- 配合菜单发放奖励
- 实现每日任务 UI
数据展示系统
- 面板UI
- 玩家信息展示
- 统计系统
八、变量使用示例
在游戏中测试
/papi parse me %bc_onlinetime_daily%
在菜单插件中
lore:
- "今日在线: %bc_onlinetime_daily% 分钟"
在计分板中
每日在线: %bc_onlinetime_daily%
九、常见问题
无法连接 BC
检查:
- 端口是否一致
- 防火墙是否放行
- auth-token 是否匹配
变量不显示
%bc_onlinetime_daily%
原因:
- 未安装 PlaceholderAPI
- 未成功连接 BC
- 未收到数据同步
数据为 0
原因:
- 未满 1 分钟
- BC 未正确统计
- 玩家刚上线
变量不存在
原因:
- BC 未配置该规则
- 动态变量未注册
十、总结
SpigotOnlineStatsBridge 的核心作用是: