跳到正文

Leaderboard

作者:SrMaster

Create leaderboards for any data

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Mitra Leaderboards

A flexible and high-performance leaderboard system for Fabric servers. It computes and publishes leaderboards from placeholders (e.g. blocks mined, play time, kills, etc.), with optional MongoDB support to store and display offline players.


✨ Features

  • Multiple leaderboards: define as many holders as you want (e.g. blocks_mined, time_played, kills…).
  • Native placeholders (pb4/Patbox): exposes values for TAB, HUDs, holograms, or any plugin/mod that reads placeholders.
  • Per-holder update scheduling (configurable in seconds).
  • Online or offline mode:
  • Online-only: TOP is computed with currently connected players (no DB).
  • Offline tracking: saves and queries from MongoDB for global TOPs.
  • Asynchronous execution: safe capture on the server thread, heavy work in async workers.
  • Optimized for thousands of players: efficient TOP-K selection, minimal I/O and CPU.
  • Robust placeholder evaluation: cleans values and prevents crashes if a placeholder fails.

✅ Requirements

  • Fabric Loader + Fabric API (server).
  • pb4 Placeholders (Patbox) for placeholder resolution/registration.
  • MongoDB (requerid)

📦 Installation

  1. Download Mitra Leaderboards and its requirements.
  2. Place the .jar files in the mods/ folder of the server (and client if you want HUDs).
  3. Start the server to generate the config folders.
  4. Configure leaderboard.yml (and mongo.yml if you plan to use offline tracking).
  5. Restart.

⚙️ Configuration

leaderboard.yml

holders:
  blocks_mined:
    valueCheck: "%mitra:mined_total%"
    update: 20
    top: 10
    trackOffline: false

  time_played:
    valueCheck: "%mitra:play_time%"
    update: 30
    top: 15
    trackOffline: true

🧩 Placeholders

For a holder named blocks_mined:


📏 Size and timers

  • %mitra:leaderboard blocks_mined_size% → number of entries.
  • %mitra:leaderboard blocks_mined_update_in_s% → seconds until the next update.
  • %mitra:leaderboard blocks_mined_update_in_hms% → remaining time in HH:MM:SS.

🏆 TOP by position (N ≥ 1)

  • %mitra:leaderboard blocks_mined_value_N% → numeric value.
  • %mitra:leaderboard blocks_mined_player_N% → player name.
  • %mitra:leaderboard blocks_mined_uuid_N% → player UUID.
  • #1 %mitra:leaderboard blocks_mined_player_1% — %mitra:leaderboard blocks_mined_value_1%
  • #2 %mitra:leaderboard blocks_mined_player_2% — %mitra:leaderboard blocks_mined_value_2%
  • #3 %mitra:leaderboard blocks_mined_player_3% — %mitra:leaderboard blocks_mined_value_3%

📜 Commands

(Base command may differ depending on your setup; examples use /lb)

  • /lb reload Reloads the leaderboard.yml configuration and reschedules all tasks. Useful when you change values in the config without restarting the server.
  • /lb recompute <holder> Forces an immediate recompute of the specified holder. Example: /lb recompute blocks_mined will update the ranking for the blocks_mined leaderboard instantly.
  • /lb list Displays a list of all currently active holders. Example output:

👨‍💻 Authors & Credits

  • Developer: srmast3r_ (SrMaster)
  • Twitter/X: @_SrMaster_
  • Credits: pb4 Placeholders by Patbox

常见问题

Leaderboard 支持哪些 Minecraft 版本?

Leaderboard 支持 Minecraft Java 版 1.21.1–26.2,共 11 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。

Leaderboard 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅服务端。

评论

登录后评论和评分

SrMaster 的其他作品

查看全部 →