Compatibility
Minecraft: Java Edition
Platforms
Creators
Details
StrengthShards
Bounty-hunter progression for Paper 26.2 (Minecraft 26.2). Every player kill grants permanent +1 Strength (bonus attack damage); every death to another player takes one away. Veterans hit harder, victims hit softer — and the whole strength economy is player-driven through craftable, tradeable, edible Strength Shards.
- Requires a Paper 26.2 server (or newer 26.x) and Java 25
- No client mods required — the optional resource pack just improves the shard's texture
- Everything is configurable and survives restarts
The core loop
| Event | Effect |
|---|---|
| You kill a player | +1 Strength (permanent bonus attack damage) |
| You die to a player | −1 Strength |
| You eat a Strength Shard | +1 Strength |
| You withdraw strength | Strength becomes physical shards you can trade, gift or gamble away |
Strength is stored per-player UUID in plugins/StrengthShards/data.yml and persists across deaths, logins and server restarts. Being at ±0 strength is the neutral default.
The bounty-hunter twist
- You can't farm empty players. Killing someone who is already at minimum strength grants nothing — they have no strength left to give. The killer is told so, which doubles as intel: that target is worthless until they eat shards.
- Capped killers still get paid. A player already at max strength who kills someone can't absorb more strength, so the victim drops a Strength Shard instead — straight into the killer's inventory. If the killer's inventory is full, the shard drops on the ground at the death spot where anyone can steal it.
- Weakness is felt, not crippling. Negative strength reduces your total melee damage by a percentage, so drained players can still fight back — they just hit softer. (See below for why it isn't a flat reduction.)
How the damage works
The bonus is applied to the attack_damage attribute — the same mechanic Strength potions use — so it stacks with swords, axes and enchantments.
- Positive strength: flat +1 attack damage per point (
+3Strength = +3 damage on every melee hit). - Negative strength: −15% total melee damage per point below zero (default; at −3 that's −45%, capped at −90% overall).
Why isn't negative strength flat? Since Minecraft 1.21.2, the
attack_damageattribute is hard-clamped to a minimum of 0, and the game silently skips your entire attack (no damage, no knockback, no sound — even in creative mode) whenever the value isn't strictly above 0. A flat −3 on a bare fist (base 1.0) would make the player completely unable to hit anything. A percentage penalty keeps the value above zero, so weakened players always stay in the fight.
The plugin uses transient attribute modifiers that are re-applied on join/respawn and stripped on disable — no base values or item stats are ever touched, and nothing is left behind in your playerdata if you remove the plugin.
The Strength Shard
A custom item (blaze powder base) that grants +1 Strength when eaten — hold right-click like food, works even on a full hunger bar. Shards at the max cap refuse to be consumed (they aren't wasted) and are fully stackable, making them a natural currency: buy, sell, gift, gamble or hoard them.
Get shards by:
-
Crafting — 4 blaze powder around 1 diamond (toggleable in the config):
. blaze powder . blaze powder diamond blaze powder . blaze powder . -
Withdrawing your own strength —
/strength withdraw 2turns 2 of your strength into 2 shards -
Killing capped players or being capped yourself — see the bounty rules above
-
Admin commands —
/strength give, or vanilla/give(see below)
Shards carry an identifying data tag, so items created by the plugin, by admins, or via vanilla /give are all recognized and interchangeable.
Commands
Main command: /strength — aliases /str, /shards
| Command | Description | Permission |
|---|---|---|
/strength or /strength check |
Check your own strength and current bonus | strength.use |
/strength check <player> |
Check another player's strength (online or offline) | strength.admin |
/strength withdraw <amount|all> |
Convert your strength into Strength Shards (only positive strength can be withdrawn) | strength.use |
/strength givecmd [amount] |
Prints the exact vanilla /give command for shards as a click-to-copy message |
strength.use |
/strength pack |
Re-send the resource pack prompt | strength.use |
/strength set <player> <amount> |
Set a player's strength (clamped to your configured caps; works offline) | strength.admin |
/strength give <player> <amount> |
Give Strength Shards directly | strength.admin |
/strength reload |
Reload the configuration (caps, item, recipe, messages) | strength.admin |
Tab completion is provided for subcommands, player names and common amounts.
Permissions
| Permission | Purpose | Default |
|---|---|---|
strength.use |
Check your own strength, withdraw shards, print the give command, re-send the resource pack | everyone |
strength.admin |
Set/give strength, check other players, reload the config | server operators |
Configuration
plugins/StrengthShards/config.yml — change anything and run /strength reload (or restart):
| Setting | Default | Description |
|---|---|---|
caps.max-strength |
3 |
Highest reachable strength |
caps.min-strength |
-3 |
Lowest sinkable strength |
pvp.kill-gain |
1 |
Strength gained per player kill (gated by the victim's actual loss) |
pvp.death-loss |
1 |
Strength lost when killed by a player |
pvp.negative-strength-penalty-per-point |
0.15 |
Damage fraction lost per negative strength point (max total −90%) |
pvp.shard-drop.enabled |
true |
Max-strength killers receive a shard from the victim instead |
pvp.shard-drop.amount |
1 |
Shards dropped per max-strength kill |
item.name / item.lore / item.glint |
— | Shard display name, lore and enchant glint |
item.custom-model-data |
2301 |
Model-data value the resource pack matches against |
crafting.enabled |
true |
Toggle the crafting recipe |
resource-pack.auto-send |
true |
Prompt players to install the pack on join |
resource-pack.url / sha1 / required / prompt |
— | Resource pack delivery settings |
messages.* |
— | Every message, including the prefix, in MiniMessage format |
Resource pack (optional)
Without a resource pack, shards look like an enchanted blaze powder with a custom name — fully functional. Install the included resource pack and they render as a proper crystal shard.
- Take the included
strength-shards-resourcepack.zipand host it anywhere players can download it (your web server, a file host, a CDN) - Put the URL (and optionally its SHA-1 hash) into
config.ymlunderresource-pack.url/resource-pack.sha1 - Restart or
/strength reload— players are prompted on join, and/strength packre-sends the prompt
The pack uses the 1.21.4+ items/ model system (range_dispatch on custom_model_data), built for resource pack format 88 / Minecraft 26.2. If a future client warns the pack was made for an older version, it still applies once accepted — just bump pack.mcmeta if the warning bothers you.
Obtaining shards without the plugin economy (admins)
Server plugins cannot register custom item IDs and the vanilla creative menu is hardcoded client-side, so shards can't appear in either. Instead, run /strength givecmd in-game — it prints a ready-to-paste vanilla command built from your current config, e.g.:
give <player> minecraft:blaze_powder[minecraft:custom_name={text:"Strength Shard",color:"gold",italic:false},minecraft:lore=[{text:"Consume to permanently gain +1 Strength",color:"gray",italic:false},{text:"Hold right-click to eat. Tradeable!",color:"gray",italic:false}],minecraft:custom_data={PublicBukkitValues:{"strengthshards:strength_shard":1b}},minecraft:custom_model_data={floats:[2301f]},minecraft:food={nutrition:0,saturation:0.0f,can_always_eat:true},minecraft:consumable={consume_seconds:1.6f,animation:"eat",sound:"minecraft:entity.generic.eat",has_consume_particles:true},minecraft:enchantment_glint_override=true]
Items created this way are identical to crafted/withdrawn shards — the plugin recognizes and accepts them.
Installation
- Drop
StrengthShards-x.x.x.jarinto your server'splugins/folder - Restart the server (Paper 26.2, Java 25)
- Optionally configure the resource pack URL (see above) and run
/strength reload
Data is plain YAML in plugins/StrengthShards/data.yml — human-readable, editable, and trivial to back up. Removing the plugin cleanly reverts every player to vanilla stats.
FAQ
Does it work with Spigot? No — it targets Paper 26.2 (it uses Paper's data-component and Adventure APIs).
Can two players trade strength? Yes — one withdraws shards and hands them over; the other eats them. That's the whole point!
Can I change the crafting recipe ingredients? The recipe itself is fixed (4 blaze powder + 1 diamond) but can be disabled entirely (crafting.enabled: false); use /strength give or the vanilla give command to distribute shards another way.
What if a killer is at max and their victim is at min? The victim has nothing to give, so no strength moves — but the max-strength killer still receives the shard drop bounty.

