sLifesteal brings the popular lifesteal SMP mechanic to your server with a robust and highly configurable system. When a player defeats another, they rip away a heart, permanently increasing their own maximum health while diminishing their victim's. Reach zero hearts, and face elimination! Will you rise to the top as an unkillable juggernaut, or will you be hunted into oblivion?
Perfect for hardcore survival, faction wars, or custom events where every life truly matters.
Features:
- Heart Stealing:
- Gain a configurable amount of hearts (max HP) when you kill another player.
- Victims lose a configurable amount of hearts (max HP).
- Elimination:
- Players whose max hearts drop to a configurable threshold (e.g., 0 hearts) are eliminated from the game.
- Configurable Elimination Actions:
- Ban: Permanently remove the player from the server.
- Kick: Kick the player from the server.
- Spectator: Force the player into spectator mode.
- Custom Command: Run any console command upon elimination (e.g., move to a "limbo" world, announce with a custom title).
- Revival System:
- Admins can revive eliminated players using a command, restoring them to the game with a configurable number of hearts.
- Eliminated players cannot rejoin until an admin revives them.
- Highly Configurable:
- config.yml: Control hearts gained/lost, min/max heart limits, elimination thresholds, elimination actions, default hearts, revive hearts, disabled worlds, and more!
- messages.yml: Customize almost every message the plugin sends, including prefix and color codes.
- Heart Limits:
- Set minimum hearts a player can be reduced to (before elimination).
- Set maximum hearts a player can naturally steal (admins can bypass).
- Permissions:
- slifesteal.admin: Access to all admin commands (/slifesteal reload, sethearts, gethearts, resethearts, revive).
- slifesteal.bypass.losehearts: Players with this permission do not lose hearts on death.
- slifesteal.bypass.stealcap: Players with this permission can steal hearts beyond the configured max-hearts limit.
- Disabled Worlds: Specify worlds where lifesteal mechanics should not apply.
- Admin Commands:
- /slifesteal reload: Reloads configuration files.
- /slifesteal sethearts <player> <hearts>: Sets a player's maximum hearts.
- /slifesteal gethearts <player>: Checks a player's current maximum hearts.
- /slifesteal resethearts <player>: Resets a player's hearts to the default configured value.
- /slifesteal revive <player>: Revives an eliminated player.
- Tab Completion: For all commands and sub-commands.
- Debug Mode: For easy troubleshooting.
- Lightweight & Efficient: Designed to be performant.
How It Works:
- Kill: Player A kills Player B.
- Steal: Player A gains (e.g.) 1 heart (2 HP added to their max health).
- Lose: Player B loses (e.g.) 1 heart (2 HP removed from their max health).
- Elimination Check: If Player B's max hearts drop to or below the elimination-threshold-hearts (e.g., 0 hearts), they are eliminated according to the elimination-action (e.g., banned).
- Revival: An admin can use /slifesteal revive PlayerB to unban them (if applicable) and allow them to rejoin with a set number of hearts.
Commands & Permissions:
- /slifesteal (or /sls, /lifesteal) - Main command.
- Permission: slifesteal.admin
- Sub-commands:
- reload: Reloads configs.
- sethearts <player> <hearts>: Sets max hearts.
- gethearts <player>: Gets max hearts.
- resethearts <player>: Resets hearts to default.
- revive <player>: Revives an eliminated player.
- Other Permissions:
- slifesteal.bypass.losehearts: Prevents heart loss on death. (Default: false)
- slifesteal.bypass.stealcap: Allows exceeding the max-hearts limit. (Default: false)
Configuration:
The plugin generates two configuration files in plugins/sLifesteal/:
- config.yml: Contains all gameplay settings. (See a snippet below or check the full default [link to your default config on GitHub Gist/Pastebin if you have one])
- messages.yml: Contains all customizable messages.
Example
Code (Text):
# General Settings
hearts-on-kill: 1.0
hearts-lost-on-death: 1.0
# Heart Limits
min-hearts: 1.0
max-hearts: 20.0
# Elimination Settings
elimination-threshold-hearts: 0.0
elimination-action: "BAN" # BAN, KICK, SPECTATOR, COMMAND
ban-message: "&cYou have been eliminated for running out of hearts!"
# Revive Settings
hearts-on-revive: 10.0
Installation:
- Download the sLifesteal.jar file.
- Place it into your server's plugins/ folder.
- Restart or reload your server.
- Configure config.yml and messages.yml in the plugins/sLifesteal/ folder to your liking.
- Use /slifesteal reload to apply configuration changes without a full server restart.