LifeSteal Server-side

June 14, 2026 ยท View on GitHub

A fabric server side reimplementation of the LifeSteal SMP. This version has many more unique features such as an altar for doing revival rituals, adds new heart ores as an alternative source of gaining new hearts, and much, much more!

This mod was forked from ModernAdventurer's LifeSteal Mod, please make sure to check it out as, although there are quite a few changes, this mod was based off of his.

Config

Configuration is purely managed through gamerules, here is a list of gamerules and what they do.

GameruleTypeDescriptionDefault
lifesteal:death_criteriaDeathCriteriaWhat counts as a kill: player_only, any_death, or any_death_drop_heartplayer_only
lifesteal:altar_blockBlockThe registry for the block to be the center of an altarminecraft:netherite_block
lifesteal:enable_anti_heart_dupeBooleanWhether to prevent players from harvesting infinite hearts from weak playerstrue
lifesteal:revive_methodReviveMethodHow to revive players: none, command, altar, or totemaltar
lifesteal:death_actionDeathActionWhether to ban, revive or spectator when they reach minimum healthban
lifesteal:gift_methodGiftMethodHow to gift hearts: manual or commandmanual
lifesteal:steal_amountIntegerThe number of hearts that should be stolen upon death1
lifesteal:min_player_heartsIntegerThe minimum number of hearts a player can reach before being banned1
lifesteal:max_player_heartsIntegerThe maximum number of hearts a player can reach10
lifesteal:withdraw_methodWithdrawMethodHow to withdraw hearts: none, altar, or commandaltar
lifesteal:auto_revival_secondsIntegerThe number of seconds until a player is automatically revived. Set to 0 to disable.0
lifesteal:revival_invulnerability_secondsIntegerThe amount of time a player is invulnerable after being revived in seconds. Set to 0 to disable.0
lifesteal:heart_stack_sizeIntegerThe maximum stack size of the heart item1
lifesteal:heart_craft_in_crafterBooleanIf a heart item can be crafted in a crafterfalse
lifesteal:limited_heart_crafting_typeLimitedCraftingTypeHow limited crafting works: until_banned, forever, heart_based, or nonenone
lifesteal:limited_heart_crafting_amountIntegerThe value/limit of limited crafting. It changes meaning depending on the limited crafting gamerule0
lifesteal:altar_animationsBooleanIf animations should play when interacting with an altartrue
lifesteal:fallback_texturesBooleanWhether to use Minecraft textures if the resourcepack isn't installed instead of missing texturetrue
lifesteal:new_player_invulnerability_secondsIntegerThe number of seconds a player is invulnerable since they started playing0

Dead Player Json:

Located in config/lifesteal-deaths.json

[
  {
    "deadPlayerID": "uuid",
    "deathTime": 100
  }
]

Commands:

  • /gift <player> <hearts> - Gifts the specified player that amount of health if they can receive it
  • /withdraw <hearts> - Turns physical hearts into heart items
  • /revive <player> - Revives a player and consumes a held heart item
  • /admin-revive <player> - Admin command to revive a player

Datapack Overriding (WIP):

More info can be found on the wiki page.

Additional Notes:

  • In order to get the textures, run /polymer generate-pack. This will create the resourcepack in the main server's directory, which you can then put in your resourcepack folder
  • For more information, visit the Wiki