Lifesteal ++

This Plugin adds a highly customizable Lifesteal Plugin with the main feature being able to swap harts with the person you kill.

80

Lifesteal ++

❤️ LifestealSwapper

A Paper plugin that adds configurable lifesteal mechanics:

- Killer gains hearts and victim loses hearts on PvP kills. - Players drop their own head on death. - Placing a player's head triggers configurable heart swapping behavior. - Optional tab-list formatting to show each player's max hearts.

Features

- Fully configurable heart bounds (`min`, `max`, `starting`). - Configurable kill transfer values (`killer-gain`, `victim-loss`). - Head swap modes: - `FULL_SWAP` - `TRANSFER_FROM_OWNER` - `TRANSFER_TO_OWNER` - Configurable messages and sounds. - `/lifesteal reload` command. - Admin heart management commands.

Commands

- `/lifesteal reload` - reload plugin config. - `/lifesteal hearts get <player>` - view a player's max hearts. - `/lifesteal hearts set <player> <amount>` - set max hearts (clamped by config min/max). - `/lifesteal hearts add <player> <amount>` - add hearts. - `/lifesteal hearts remove <player> <amount>` - remove hearts. - `/lifesteal hearts reset <player>` - reset to configured starting hearts.

Permissions

- `lifesteal.admin` - allows all `/lifesteal` admin commands.

Configuration

Edit `src/main/resources/config.yml` (or the generated `plugins/LifestealSwapper/config.yml` on your server).

Key sections:

- `hearts` - global heart limits and starting hearts - `lifesteal` - kill-based heart transfers - `heads` - death head drops and item appearance - `head-swap` - behavior when placing a player head - `tab-list` - optional tab display of hearts - `messages` / `sounds` - UX tuning - `permissions` - permission nodes

Config File:

Spoiler

```

LifestealSwapper configuration

1 heart = 2 health points in Minecraft internals.

hearts: starting: 10 min: 1 max: 20

lifesteal: enabled: true killer-gain: 1 victim-loss: 1 require-player-killer: true allow-self-kill: false

heads: drop-on-death: true display-name: "&c%player%'s Head" lore: - "&7Place this head to trigger a heart swap."

head-swap: enabled: true mode: FULL_SWAP # FULL_SWAP | TRANSFER_FROM_OWNER | TRANSFER_TO_OWNER transfer-amount: 1 remove-placed-head-block: true require-owner-online: true allow-self-use: false

join: apply-starting-hearts-to-new-players: true

tab-list: enabled: true update-ticks: 40 format: "&7%name% &c%hearts%❤"

messages: prefix: "&8[&cLifesteal&8] " reload-success: "&aConfiguration reloaded." no-permission: "&cYou do not have permission." player-only: "&cOnly players can use this." owner-offline: "&cThat head owner must be online to swap hearts." self-head-blocked: "&cYou cannot use your own head." kill-victim: "&cYou lost %victim_loss% heart(s)." kill-killer: "&aYou stole %killer_gain% heart(s) from %victim%." swap-placer: "&aYou used %owner%'s head and swapped hearts." swap-owner: "&e%placer% placed your head and swapped hearts with you."

sounds: enabled: true kill-victim: ENTITY_WITHER_HURT kill-killer: ENTITY_PLAYER_LEVELUP swap-placer: ENTITY_ENDERMAN_TELEPORT swap-owner: ENTITY_ENDERMAN_TELEPORT

permissions: admin: lifesteal.admin

```

ADS