❤ Lifesteal Hearts
Every kill counts. Lifesteal Hearts brings the Lifesteal SMP experience to your Paper server. Players fight for hearts: win a duel and your max health goes up, lose one and it goes down. Lose your last heart and you’re out for a day.
✨ Features
Steal hearts in PvP. The killer gains +1 heart (2 HP) and the victim loses 1.
Configurable limits. Players start with 10 hearts, can’t drop below 1, and can’t go above 20 (40 HP).
Last-heart ban. A player who dies on their last heart is banned for 24 hours. The duration is configurable.
Withdraw hearts. Use /withdrawheart to turn one of your hearts into a tradeable item.
Heart item. A glowing Nether Star named Heart. Right-click it to consume it and gain +1 heart. It’s tagged internally, so it can’t be faked by renaming an item in an anvil.
Admin tools. Admins can give hearts to online or previously seen offline players with /heart add.
ADMIN prefix. OPs and players with lifesteal.admin get a red, bold ADMIN prefix in chat and in the tab list but it is getting removed.
Persistent data. Hearts are saved in data.yml with debounced async saves, so there are no lag spikes.
Lightweight. One class, no dependencies, and no database to set up.
📜 Commands
Command Description Permission
/withdrawheart Withdraw 1 heart into a Heart item (you can’t withdraw your last heart) None
/heart add <Player> <Amount> Give hearts to a player, capped at the max lifesteal.admin
🔑 Permissions
Permission Description Default
lifesteal.admin Use /heart and show the red ADMIN prefix OP
⚙ Configuration
yaml
start-hearts: 10 # hearts on first join
max-hearts: 20 # 20 hearts = 40 HP
min-hearts: 1 # 1 heart = 2 HP
ban-time-hours: 24 # ban length after dying on the last heart
📋 Requirements
Paper 1.21.11
Java 21
📥 Installation
Download macw1uslifestealhearts.jar.
Drop it into your server’s plugins/ folder.
Restart the server.
Edit plugins/LifestealHearts/config.yml if you want different values.
ℹ Good to know
Hearts are only lost or gained on player kills.
The ban triggers on any death at your last heart, including lava, mobs and falls.
If you’re already at max hearts, a kill gains you nothing, but the victim still loses a heart.
After a ban expires, the player returns with 1 heart.