StatsWebUI

StatsWebUI

为你的Minecraft服务器提供实时竞技排名网页界面

⛏️ mc-stats-webui

为你的 Minecraft 生存服务器提供实时竞技排名。

一个 Fabric 服务端模组,内嵌了一个小型 Web UI 和 API。玩家用浏览器打开即可 —— 无需客户端模组。

排名首页截图

更多截图

✨ 功能

  • 🏆 首页领奖台,设有 冠军、最勤奋 和 最高效 三项桂冠
  • 📋 玩家资料页,包含皮肤、评级和完整的原版统计数据
  • 🆚 玩家并排对比
  • 📊 覆盖整个原版统计目录的排行榜(自定义、挖掘、击杀……)
  • 🧮 透明计分(“我们如何排名”)—— 农场会刻意抬高部分榜单
  • 🌐 界面支持 English / Español / Français · 浅色 / 深色 / 跟随系统主题
  • 🏷️ 通过 config/mc-stats-webui.json 进行品牌定制(标题、口号、标语、窗口标题、绑定地址、端口)
  • ⚡ 内存统计数据缓存(见下文)

🧠 统计数据缓存

世界启动时,模组会将每个玩家的统计数据文件加载到内存中。API 提供该快照 —— 不会在每个请求时重新扫描磁盘。

当在线玩家获得统计数据时,其 UUID 会被标记为脏数据。每约 15 秒(以及每次 API 快照之前),脏玩家会通过原版 save() 刷写,然后将该条目重新加载进缓存。离线玩家会移出脏数据集,如有需要则从磁盘重新加载。

URL 内容
http://localhost:25580/ Web UI
http://localhost:25580/api/players JSON API

更多详情:端点 · 统计数据与冠军

🛠️ 开发

所需环境: Java 25 · Node 24+ · 通过 Corepack 使用 Yarn · Fabric 26.2

cd web
corepack yarn install
corepack yarn dev

UI:http://localhost:5173(代理 /api → 25580)

./gradlew build

SvelteKit UI 构建为静态文件,并 打包在 JAR 内部。