玩家延迟

玩家延迟

由HoneyBerries制作的原始Player-Ping插件的移植版。

管理

PlayerPing Mod

HoneyBerries 原版 PlayerPing 插件的服务端移植版,适用于模组化 Minecraft 服务器。

Fabric 服务器需要 Fabric API。

🆕 1.2.0 中的新内容

  • 支持从 1.21.x 到 26.3 的版本。
  • 更准确的 ping:服务器每秒自行测量每个连接,因此 /ping 现在还会显示抖动和丢包。
  • 标签页列表保留队伍颜色和前缀,而不是替换玩家名称。
  • 标签页列表现在每秒刷新一次,而不是每秒 20 次,对繁忙服务器更轻量。
  • 新增 /ping list:一次查看所有在线玩家的 ping,从高到低排序(管理员可用,也可从控制台执行)。
  • 新增 /pingplayer reload:无需重启即可应用配置更改。如果文件有错误,重载会被拒绝,当前设置保持不变。
  • 新增对 Placeholder API 的支持,因此全息影像和类似模组可以显示玩家的 ping。
  • /ip 现在显示为“IP(服务器所见)”以更清晰说明。

✨ 功能

  • 🔍 Ping 检查 - /ping 查询自己,/ping <player> 和 /ping list 供管理员使用。
  • 📡 实测 Ping - 真实往返时间,含抖动和丢包,而不是 Minecraft 的平滑值。
  • 🌐 IP 查询 - /ip 查询自己的 IP,/ip <player> 供管理员使用。
  • 📋 标签页 Ping 显示 - 在标签页列表中显示 ping 并带质量颜色,兼容计分板队伍。
  • 🎛️ 实时阈值管理 - 使用 /pingplayer threshold ... 在游戏内编辑 ping 等级。
  • 🧩 占位符 - %pingplayer:ping% 和 %pingplayer:quality%,供使用 Placeholder API 的模组使用。
  • 🛠️ 调试 + 转储工具 - 内置诊断功能,用于排查问题。

命令

命令 描述 权限
/ping 获取自己的 ping 所有玩家
/ping <player> 检查其他玩家的 ping 管理员
/ping list 列出所有在线玩家的 ping 管理员
/ip 获取自己的 IP 所有玩家
/ip <player> 获取其他玩家的 IP 管理员
/pingplayer help 显示管理员命令帮助 管理员
/pingplayer reload 重载配置文件 管理员
/pingplayer debug 切换完整调试模式开/关 管理员
/pingplayer dump 生成完整诊断报告 管理员
/pingplayer threshold <excellent|good|fair|poor|terrible> 显示某等级的当前阈值 管理员
/pingplayer threshold <tier> equal-or-more <value> 将等级设为 >= value 管理员
/pingplayer threshold <tier> equal-or-less <value> 将等级设为 <= value 管理员
/pingplayer threshold <tier> equal <value> 将等级设为精确值 管理员
/pingplayer threshold <tier> <min> <max> 将等级设为一个范围 管理员

管理员是原版 OP、拥有 playerping.admin 权限的玩家,或 LuckPerms 组权重至少为 minLuckPermsWeight(默认 8)的玩家。

示例

  • /pingplayer threshold terrible equal-or-more 500
  • /pingplayer threshold fair 101 250
  • /pingplayer reload

⚙️ 配置

设置保存在 config/player-ping/config.json 中。在游戏内更改等级,并在文件中编辑其他设置,然后执行 /pingplayer reload。

  • showPingOnTab(默认 true):在标签页列表中显示 ping。
  • tabRefreshTicks(默认 20):标签页列表更新频率(20 tick = 1 秒)。
  • accuratePing(默认 true):每秒为每个玩家发送一个小数据包来测量 ping。如果反作弊系统有异议,请设为 false;此时将使用 Minecraft 的常规值。
  • minLuckPermsWeight(默认 8):视为管理员的 LuckPerms 权重。

🧩 占位符

安装 Placeholder API(可选)以及一个显示占位符的模组,例如全息影像模组:

占位符 示例输出
%pingplayer:ping% 42 ms(按等级着色)
%pingplayer:quality% excellent(按等级着色)

全息影像文本示例:Welcome %player:displayname%, your ping is %pingplayer:ping% 将显示为 Welcome Steve, your ping is 10 ms。

🧪 诊断

当你运行 /pingplayer dump 时,模组会在以下位置创建完整诊断报告:

config/player-ping/crash_reports/

Fabric 文件命名格式:pingplayer_crash_MMddyyyy_fabric.txt

🎨 Ping 质量指示

  • 🟢 绿色 - 极佳(50 ms 或以下)
  • 🟡 黄色 - 良好(51 - 100 ms)
  • 🟠 金色 - 一般(101 - 200 ms)
  • 🔴 红色 - 较差(201 - 300 ms)
  • 🟥 深红色 - 极差(301 ms 或以上)

(默认范围,可在游戏内配置。)

💻 安装

  1. 下载与你的加载器和 Minecraft 版本匹配的 .jar。
  2. 将其放入服务器的 /mods 文件夹。
  3. 重启服务器。

🔖 兼容性

  • Fabric:1.21.x 使用 Java 21,26.1 - 26.3 使用 Java 25。
  • NeoForge:开发中。
  • 侧:仅服务端。
  • Fabric 上需要 Fabric API。Placeholder API 为可选。