How to Make a Minecraft Lifesteal Server (LifeStealZ Setup, 2026)

Make a Minecraft lifesteal SMP: install LifeStealZ on Paper, set hearts in config.yml, heart and revive recipes, and how elimination and revives work.

Updated Oct 3, 2026 · 6 min read

On this page

To make a Minecraft lifesteal server, run Paper or Purpur, drop the LifeStealZ plugin jar into plugins/ and restart. Players then start with 10 hearts, gain one per player kill, lose one per death and get eliminated at zero. Set the rules in plugins/LifeStealZ/config.yml (startHearts, maxHearts, heartsPerKill, looseHeartsToNature) and the heart and revive beacon recipes in items.yml, then run /lifestealz reload. Eliminated players are blocked from joining until someone runs /revive.

What you are working with

Option Runs on Good for
LifeStealZ plugin Paper, Purpur, Spigot Most lifesteal SMPs: hearts, withdraw, revive beacons, grace period, anti alt
Other lifesteal plugins (HeartZ, SimpleLifesteal and more) Paper Simpler setups with fewer options
A lifesteal datapack Vanilla and Fabric too Small private servers that do not want plugins

This guide uses LifeStealZ, the most complete free option. Check its Modrinth page lists your Minecraft version before you install, especially right after a big release.

File What it holds
plugins/LifeStealZ/config.yml Heart rules, elimination, grace period, anti alt, webhooks
plugins/LifeStealZ/items.yml The heart item, the revive beacon and their crafting recipes
plugins/LifeStealZ/storage.yml Where hearts are saved: SQLite by default, or MySQL and MariaDB
plugins/LifeStealZ/userData.db Every player's hearts and elimination state (SQLite)

Minecraft cherry grove at sunset with pink petals falling around a dark tree trunk

Before you start

  • Use a plugin server. Choose Paper or Purpur as the server type. Vanilla and Fabric cannot load plugins.
  • Back up. If you are turning an existing SMP into lifesteal, back up the world first.
  • Write the rules down. Natural deaths, heart caps, alt accounts and what happens to eliminated players all need a decision before day one, because changing them mid season is unfair to someone.

Step 1: Install LifeStealZ

  1. Download the jar for your server version from Modrinth.
  2. Stop the server, upload the jar into plugins/ and start it.
  3. Run /plugins in game (or plugins in the console). LifeStealZ should be green.

The plugin creates its folder and config files on first start. Full plugin basics are in how to install plugins on a Minecraft server.

Step 2: Set the heart rules

Open plugins/LifeStealZ/config.yml. The settings that shape the server:

Setting Default What it does
startHearts 10 Hearts a new player starts with
maxHearts 20 The most hearts anyone can hold
heartsPerKill 1 Hearts the killer gains and the victim loses
heartsPerNaturalDeath 1 Hearts lost to mobs, falls, lava and so on
looseHeartsToNature true Whether natural deaths cost hearts at all
minHearts 0 At this many hearts the player is eliminated
dropHeartsPlayer false Drop a heart item on a PvP death instead of transferring it
reviveHearts 1 Hearts a revived player comes back with
preventTotems false Ban totems of undying
gracePeriod.enabled false Protects new players from PvP and heart loss for a while
antiAlt.enabled true Logs kills between accounts from the same IP

The setting people most often miss is looseHeartsToNature. With the default true, a creeper or a fall costs a heart just like a PvP death, and new players can be eliminated by the game before anyone has fought them. Many servers set it to false, or turn on the grace period with a duration (in seconds) of an hour or so.

After editing, run /lifestealz reload or restart.

Step 3: Check the heart and revive recipes

Hearts are a crafted item as well as a kill reward. In items.yml the default heart (defaultheart) is a Nether Star with gold blocks on top, obsidian beside it and diamond blocks underneath. The Revive Beacon uses two beacons, four diamonds, two obsidian and a heart. Placing it revives an eliminated player after 30 seconds.

Change any slot to a different material name, set craftable: false to make hearts kill only, or add more recipes under recipes. Players can also turn their own hearts into items with /withdrawheart, to trade or store them.

Step 4: Decide what elimination means

When a player hits minHearts, LifeStealZ eliminates them. With disablePlayerBanOnElimination: false (the default), the plugin stops them logging in and shows "You don't have any hearts left!".

Here is the trap: this is not a Minecraft ban. It is stored in the plugin's own data, so /pardon and the ban list do nothing. To let someone back:

  • An admin runs /revive <player>, or
  • Another player crafts and places a Revive Beacon for them.

If you would rather have eliminated players spectate, set disablePlayerBanOnElimination: true and use eliminationCommands to run something else, for example gamemode spectator &player&.

Step 5: Useful admin commands

/lifestealz reload
/lifestealz hearts set <player> 10
/lifestealz hearts add <player> 2
/revive <player>
/eliminate <player>
/hearts <player>

Operators have all admin permissions by default. With LuckPerms you can give moderators lifestealz.admin.revive without full op, see how to install LuckPerms.

Starting a new season

Hearts live in userData.db (or your MySQL database), not in the world. Resetting the world does not reset anyone's hearts, and eliminated players stay eliminated on the fresh map. For a clean season: stop the server, back up and then delete plugins/LifeStealZ/userData.db, reset or replace the world, and start again. Everyone returns with startHearts.

Common problems

  • Eliminated player still cannot join after /pardon: elimination is the plugin's, not a ban. Use /revive <player>.
  • New players losing hearts to mobs on day one: set looseHeartsToNature: false or enable the grace period.
  • Config changes did nothing: you edited while the server ran and did not reload. Run /lifestealz reload.
  • Plugin red in /plugins after a Minecraft update: your LifeStealZ version does not support the new release yet. Update it, or stay on the previous Minecraft version until it does.
  • Hearts came back after a world reset: they are stored in the plugin's database. Delete userData.db for a full reset.
  • Players farming kills with alt accounts: turn on antiAlt.preventKill, which blocks kills between accounts that look related.

Running lifesteal on GamezServers

On a Minecraft server from GamezServers you pick Paper or Purpur as the server type, upload LifeStealZ through the file manager or SFTP, and edit config.yml in the browser. A one click Backup before a new season keeps the old world and heart data safe, and the server stays online between sessions so hearts can change hands at any hour. A lifesteal server is still an SMP at heart, so how to start a Minecraft SMP with friends covers the rest.

FAQ

What is the best lifesteal plugin for Minecraft?

LifeStealZ is the most complete free choice for Paper and Purpur, with withdrawable hearts, revive beacons, a grace period and anti alt checks.

How do I revive someone on a lifesteal server?

An admin runs /revive <player>, or a player places a Revive Beacon crafted with a heart. /pardon does not work because elimination is not a ban.

How many hearts do you start with in lifesteal?

10 hearts by default in LifeStealZ, with a cap of 20. Change startHearts and maxHearts in config.yml.

Can I make a lifesteal server without plugins?

Yes, with a lifesteal datapack, which also works on Vanilla and Fabric. Datapacks usually have fewer options than a plugin.

Skip the setup. Your own Minecraft server.

$2.49USD first month

Then $4.99/mo. Just trying it? $1.25 for 3 days

Keep reading