dStattrack
Put a story on every sword. Track kills, blocks and fish, right on the item.
What is dStattrack?
dStattrack lets your players turn any sword, axe, bow, fishing rod (and more) into a personal trophy. Once an item is "stattracked", it quietly keeps count of everything it does — players killed, mobs slain, blocks broken, fish reeled in — and shows it all live on the item's lore. No commands needed to update it, no admin babysitting required. The item just keeps its own scoreboard, forever.
Players pay a small fee (via Vault) to activate a stattrack, which gives your economy a nice little sink, and gives players a reason to actually hang on to their favourite gear instead of dropping it for the next "+1 damage" upgrade.
Built on the DzusillCore framework for Paper 1.21+, so it's fast, modern, and friendly to your server's other plugins.
Features
- Live item lore — counters update instantly and are rendered straight onto the item, comma-formatted (1,234 not 1234).
- A clean GUI — open it with /dstattrack, drop an item in, click Add or Remove. No typing required.
- Vault economy integration — charge a configurable price to apply a stattrack.
- Three tracked groups, out of the box:
- Kills — swords, bows, crossbows, tridents, and the 1.21 mace. Tracks both player kills and mob kills separately.
- Blocks — axes, shovels, pickaxes, hoes and shears. Tracks blocks broken.
- Fishing — fishing rods. Tracks fish caught.
- Future-proof material matching — tracking is substring-based, so NETHERITE_SWORD, DIAMOND_PICKAXE, every variant, just works without extra config. New mobs and new blocks are automatically counted too — no update needed when Mojang adds another mob.
- Admin tools — inspect any item's raw tags, or manually set a stat value for events, giveaways, or fixing a typo'd reward.
- It won't crash your server — if Vault or NBTAPI aren't installed, dStattrack degrades gracefully with a clear in-game message instead of taking your whole server down.
The GUI
Just run
/dstattrack (or the shorter
/dstat) to open it:
- Drop the item you want to manage into the marked slot.
- Click the green head to add a stattrack.
- Double-click the red head to remove one.
- Forgot to take your item back out? Just close the menu — dStattrack hands it right back to you, even if your inventory is full (it'll drop on the ground rather than vanish).
Don't have permission to add/remove? Those buttons simply won't show up for you — no confusing "no permission" spam, the GUI just adapts to what you can do.
Commands
| Command |
What it does |
Permission |
| /dstattrack |
Opens the GUI. Aliases: /dstat, /stattrack |
none |
| /dstattrack help |
Shows the help menu |
none |
| /dstattrack info |
Lists every trackable stat category |
dstattrack.info |
| /dstattrack add |
Applies a stattrack to the item in your hand |
dstattrack.add |
| /dstattrack remove |
Removes the stattrack from the item in your hand |
dstattrack.remove |
| /dstattrack set <category> <amount> |
Force-sets a stat on the held item (e.g. for an event reward) |
dstattrack.set |
| /dstattrack check |
Shows the raw stat tags on the held item |
dstattrack.check |
Valid categories for /dstattrack set:
playerkills,
mobkills,
block,
fishing (case-insensitive — and only the categories that actually apply to that item's group will be accepted).
Permissions
| Node |
Grants |
Default |
| dstattrack.info |
List stat categories |
everyone |
| dstattrack.add |
Apply a stattrack (command + GUI button) |
op |
| dstattrack.remove |
Remove a stattrack (command + GUI button) |
op |
| dstattrack.set |
Force-set a stat value |
op |
| dstattrack.check |
Inspect the raw tags on an item |
op |
Tip: flip
dstattrack.add and
dstattrack.remove to "true" (or grant them through your permissions plugin) if you want every player to be able to self-service stattrack their own gear — that's exactly what the Vault price tag is there to balance.
Requirements
- Paper 1.21+ (or a fork of it)
- Vault — needed to charge players for applying a stattrack
- NBTAPI — needed to actually store the stats on the item
Both are soft dependencies — the plugin will still load without them, it just politely tells the player "that's not available right now" instead of doing the thing (or crashing).
Made with care on the DzusillCore framework. Happy stat-tracking!