v1.0.0 · Geyser 连接增强核心

GeyserOptimizer

🛡️ 实时监控 · 自动重连 · 被动优化 · 跨版本兼容
为 Geyser 基岩版互通注入极致稳定性,同时深度优化 Java 版玩家连接质量。

实时监控 & 自动重连

持续检测 Geyser 连接状态,异常时自动尝试恢复,并支持被动轻量级优化,确保服务稳定在线。

基岩版玩家优化

玩家级 & 全局双重优化,自动发送保持活跃数据包,降低不稳定玩家导致的整体波动。

Java 版 Ping 监控

每 10 秒监测 Java 玩家延迟,通过方差识别剧烈波动玩家,自动执行被动优化并生成质量报告。

精准玩家识别

Floodgate API → Geyser Session → 玩家名特征三层识别,不依赖前缀,准确区分基岩版与 Java 版。

全配置化管理

检查间隔、重试次数、优化阈值、通知开关全部可调,详细日志助你快速诊断问题。

管理员即时通知

连接状态变动、大规模优化触发时自动通知在线管理员,运维透明高效。

安装与基础配置

标准 Bukkit/Spigot/Paper 插件安装方式,开箱即用;完美兼容 Geyser / Floodgate。
展开安装步骤与 config.yml 详解

📦 1. 访问 Modrinth 下载页面,获取 GeyserOptimizer.jar 文件。

📁 2. 将 GeyserOptimizer.jar 放入服务器的 plugins/ 目录。

🔄 3. 重启服务器(或执行 /reload confirm,但强烈建议重启)。

✅ 插件将自动生成配置文件 plugins/GeyserOptimizer/config.yml,可按需修改后执行 /geyseropt reload 重载。

# plugins/GeyserOptimizer/config.yml 核心参数示例
check-interval: 30                # 检查间隔(秒)
max-retry-attempts: 3             # 最大重试次数
auto-restart-enabled: true        # 自动重启 Geyser
notify-admins: true               # 通知管理员
detailed-logging: false           # 详细日志模式

bedrock-optimization:
  passive-reconnect-enabled: true
  enable-player-optimization: true
  immediate-optimization: true
  unstable-threshold: 3
  min-unstable-players: 2
  trigger-threshold: 0.3

java-player-optimization:
  enabled: true
  ping-threshold: 200
  passive-reconnect-enabled: true
  unstable-threshold: 3
  warn-player: true
  warn-interval: 30
  check-interval-ticks: 200

命令与权限节点

直观的命令体系,让管理员随时掌握连接动态并主动干预。
查看完整命令列表与权限说明
命令权限描述
/geyseropt/gogeyseroptimizer.use显示帮助信息
/geyseropt statusgeyseroptimizer.status查看 Geyser 连接状态
/geyseropt statsgeyseroptimizer.use查看连接统计信息
/geyseropt javageyseroptimizer.use查看 Java 版玩家连接状态
/geyseropt optimizegeyseroptimizer.admin查看优化状态和配置
/geyseropt restartgeyseroptimizer.admin尝试重启 Geyser 连接
/geyseropt reloadgeyseroptimizer.reload重载插件配置

💡 普通玩家默认拥有 geyseroptimizer.status 权限,可随时查看连接状态;管理员拥有所有权限。

精准玩家识别 & 被动优化机制

三层识别不遗漏,玩家级 & 全局优化自动执行,连接质量报告定期生成。
展开识别流程与优化逻辑

🎯 玩家识别流程: Floodgate API(最准确) → Geyser 内部 Session 列表(不依赖前缀) → 玩家名特征(兜底)。每 30 秒刷新一次基岩版玩家列表,避免频繁反射调用。

⚡ 被动重连优化:
- 基岩版:检测到断开次数超过阈值(默认3次),立即对该玩家执行轻量级优化;当不稳定玩家比例超过 30% 时,触发全局优化。
- Java版:每 10 秒检测 Ping 值,若高于阈值(默认 200ms)或方差波动大,自动执行被动优化并可选警告玩家。
- 插件会记录每次优化结果并生成周期性连接质量报告。

# 被动优化典型日志
[GeyserOptimizer] 检测到基岩版玩家 Alice 连接不稳定 (断开次数:3)
[GeyserOptimizer] 已执行玩家级优化 -> 发送 keepalive 重置会话
[GeyserOptimizer] Java版玩家 Bob Ping波动剧烈 (当前 245ms,方差 89)
[GeyserOptimizer] 已执行被动优化并发送温馨提示

常见问题与故障排除

快速解决配置、识别、优化相关的疑问。
展开典型问题与解决方案

❓ 插件提示 “未检测到Geyser插件”
确保 Geyser 已正确安装并启用。如果不使用基岩版互通,可以忽略此提示,Java 版优化仍正常工作。

❓ 自动重启 Geyser 无效
检查配置中 auto-restart-enabled 是否为 true,并确认服务器有权限执行重启操作。

❓ 如何查看 Java 版玩家的连接状态?
使用 /geyseropt java 查看 Ping 统计和不稳定玩家列表,/geyseropt stats 可查看详细统计数据。

❓ Floodgate 未设置前缀,还能识别基岩版玩家吗?
可以。插件会优先通过 Floodgate API 识别,若不可用则直接从 Geyser Session 列表获取 UUID,完全不依赖前缀。

❓ 生产服务器性能建议
Geyser 检查间隔建议 30-60 秒,Java Ping 检查间隔建议 100-600 tick(5-30 秒),避免开启详细日志以降低性能开销。

工作原理全景图

从定时探活到智能优化,每一步都清晰可控。
展开流程示意图

🔄 基岩版连接优化循环:

定时检查 Geyser 状态 → 健康则继续监控 → 异常则记录错误次数 → 达到阈值(3次) → 自动重启 Geyser 或执行全局优化。


📡 Java 版 Ping 监控流程:

每 200 tick (10秒) 检测所有 Java 玩家 Ping → Ping < 200ms 且波动小 → 正常监控 → Ping > 200ms 或波动大 → 标记为不稳定 → 执行被动优化 + 可选警告玩家 → 不稳定比例 > 30% 触发全局优化。


📋 连接质量报告:

每 5 分钟自动生成报告,汇总连接成功率、平均 Ping、不稳定玩家数量,并保存至日志。

✅ 所有参数(检查间隔、阈值、比例、重试次数)均在 config.yml 中可调,满足不同规模服务器的个性化需求。

更新日志 & 开源许可

MIT 许可证,自由使用与二次开发。
展开版本记录与法律信息

v1.0.0 (2025-05-22)

  • 🎉 初始稳定版发布
  • ✅ Geyser 基础连接监控 + 自动重连
  • ✅ 基岩版玩家被动重连 & 全局优化
  • ✅ Java 版玩家 Ping 监控 & 波动优化
  • ✅ Floodgate 无缝兼容 & 三层识别
  • ✅ 管理员通知系统 & 详细统计命令

📜 许可证: MIT License。你可以自由使用、修改和分发,只需保留版权声明。Geyser / Floodgate 为可选依赖,本插件不包含它们的代码。