
Lifesteal 2
Lifesteal2 is a fully configurable lifesteal plugin that adds custom heart mechanics, revives, and crafting recipes to your server. Players can gain, lose, withdraw, and trade hearts, even revive fallen players using the unique Revive Tool and GUI.
Lifesteal2: The Ultimate Lifesteal Plugin
Lifesteal2 is a modern, performance-focused, and fully configurable lifesteal system for Minecraft servers. It includes advanced heart mechanics, configurable items, custom GUI systems, PlaceholderAPI support, and complete customization through config and message files. Every system can be tuned to match any SMP, factions, or survival setup.
Features
Fully Configurable
All mechanics, recipes, limits, and options are stored in the configuration file. You can toggle natural heart loss, limit maximum hearts, adjust revive behavior, and fine-tune item crafting or GUI settings easily.
Custom Items
Heart Item – crafted using your configurable recipe, adds one heart when right-clicked. Revive Tool – opens an interactive revive GUI listing players who lost all hearts, allowing them to be brought back with a configurable amount of hearts.
Revive GUI
The revive menu lists all players banned for losing their last heart. Each appears with their player head, hover tooltip, and click-to-revive function. Supports multiple pages with configurable slot counts. The system can also be disabled or simplified through config.
Configurable Recipes
Both Heart and Revive Tool recipes are fully editable in the configuration file. Recipes are written left-to-right, top-to-bottom, corresponding to a 3x3 crafting table.
Data Storage
Every player’s heart count and ban status are saved securely and persist through restarts. Data is stored in playerdata.yml within the plugin folder.
Message Customization
All plugin messages are stored in messages.yml. This includes every chat message, help section, and even leaderboard formatting—giving complete control over how the plugin looks and feels.
PlaceholderAPI Support
The plugin includes built-in placeholders for use in scoreboards, sidebars, or GUIs:
%lifesteal2_hearts% — shows the player’s current heart count
%lifesteal2_is_banned% — shows if a player is lifebanned
%lifesteal2_rank% — shows their leaderboard position
Configurable Heart Limits and Punishments
Enable or disable maximum heart limits.
Set the maximum allowed heart count.
Define punishments when a player reaches zero hearts, including permanent or timed bans and custom commands.
Indirect Kill Detection
When a player kills another using indirect methods (such as end crystals or TNT), the kill is still correctly attributed to the attacker whenever possible.
Leaderboard and Status Commands
Check top players with /heartleaderboard or verify plugin functionality with /statuslifesteal. Leaderboard layout can be customized in messages.yml.
Update Checker
When the server starts, the console checks for new Lifesteal2 versions and notifies you if an update is available.
Tab Completion
All commands include tab completion for players and arguments.
Commands
Command Description Permission
/hearts [player] Show your or another player’s hearts lifesteal.hearts, lifesteal.hearts.others
/giveheart
max-hearts: enabled: true limit: 20
revive: hearts-after-revive: 3 gui-enabled: true gui-size: 54
punishment: type: "ban" duration: "7d" # or "permanent"
crafting: heart-recipe: - DIAMOND - NETHERITE_INGOT - DIAMOND - EMERALD_BLOCK - NETHER_STAR - EMERALD_BLOCK - DIAMOND - NETHERITE_INGOT - DIAMOND
revive-recipe: - NETHERITE_INGOT - DIAMOND - NETHERITE_INGOT - ENCHANTED_GOLDEN_APPLE - NETHER_STAR - ENCHANTED_GOLDEN_APPLE - NETHERITE_INGOT - DIAMOND - NETHERITE_INGOT
(If the generated config differs from this example, it is due to markdown formatting.)
Technical Details
Built for Minecraft 1.21 and higher
Requires Java 17 or higher
Compatible with Spigot, Paper, and Purpur
Player data stored in /plugins/Lifesteal2/playerdata.yml
Config regenerates automatically if deleted
Supports PlaceholderAPI out of the box
Permissions lifesteal.hearts lifesteal.hearts.others lifesteal.giveheart lifesteal.takehearts lifesteal.sethearts lifesteal.withdrawhearts lifesteal.withdrawhearts.others lifesteal.heartrecipe lifesteal.revivetoolrecipe lifesteal.status lifesteal.leaderboard lifesteal.helplifesteal
Credits
Developed by waffleboiii
