LifeSteal Server-side
A fabric server side implementation of the LifeSteal SMP.
This mod was inspired by ModernAdventurer's LifeSteal Mod.
Config
Configuration is purely managed through gamerules, here is a list of gamerules and what they do.
| Gamerule | Type | Description | Default |
|---|---|---|---|
| lifesteal:death_criteria | DeathCriteria | What counts as a kill: player_only, any_death, or any_death_drop_heart |
player_only |
| lifesteal:altar_block | Block | The registry for the block to be the center of an altar | minecraft:netherite_block |
| lifesteal:enable_anti_heart_dupe | Boolean | Whether to prevent players from harvesting infinite hearts from weak players | true |
| lifesteal:revive_method | ReviveMethod | How to revive players: none, command, altar, or totem |
altar |
| lifesteal:death_action | DeathAction | Whether to ban, revive or spectator when they reach minimum health |
ban |
| lifesteal:gift_method | GiftMethod | How to gift hearts: manual or command |
manual |
| lifesteal:steal_amount | Integer | The number of hearts that should be stolen upon death | 1 |
| lifesteal:min_player_hearts | Integer | The minimum number of hearts a player can reach before being banned | 1 |
| lifesteal:max_player_hearts | Integer | The maximum number of hearts a player can reach | 10 |
| lifesteal:withdraw_method | WithdrawMethod | How to withdraw hearts: none, altar, or command |
altar |
| lifesteal:auto_revival_seconds | Integer | The number of seconds until a player is automatically revived. Set to 0 to disable. | 0 |
| lifesteal:revival_invulnerability_seconds | Integer | The amount of time a player is invulnerable after being revived in seconds. Set to 0 to disable. | 0 |
| lifesteal:heart_stack_size | Integer | The maximum stack size of the heart item | 1 |
| lifesteal:heart_craft_in_crafter | Boolean | If a heart item can be crafted in a crafter | false |
| lifesteal:limited_heart_crafting_type | LimitedCraftingType | How limited crafting works: until_banned, forever, heart_based, or none |
none |
| lifesteal:limited_heart_crafting_amount | Integer | The value/limit of limited crafting. It changes meaning depending on the limited crafting gamerule | 0 |
| lifesteal:altar_animations | Boolean | If animations should play when interacting with an altar | true |
| lifesteal:fallback_textures | Boolean | Whether to use Minecraft textures if the resourcepack isn't installed instead of missing texture | true |
| lifesteal:new_player_invulnerability_seconds | Integer | The number of seconds a player is invulnerable since they started playing | 0 |
Dead Player Json:
Located in config/lifesteal-deaths.json
[
{
"deadPlayerID": "uuid",
"deathTime": 100
}
]
Commands:
/gift <Player> <Health>- Gifts the specified player that amount of health if they can receive it/withdraw <Hearts>- Turns physical hearts into heart items/revive <Player>- Admin command to revive a player
Datapack Overriding:
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
Check out Tater Certified's other Lifesteal-compatible mods!
Are your players combat-logging so they don't lose hearts? Use Fair Fight to combat this problem entirely! It is available on all modding and plugin platforms!
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 10mo ago | 1 | ||||
| 10mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Fixed ores and loot tables not being properly registered on startup
- Updated to MC 26.3
- Removed old gametest code
- Updated to MC 26.2
- Added a way to revert to vanilla textures if the resourcepack isn't present on the client
- Decouple revive invulnerability with player joining
- Updated to 26.1.x
- Fixed multiple death sources not all being counted. Fixes fire aspect not counting as a player kill.
- Fix invulnerability status effect not being applied when enabled
- Apply invulnerability to new players if the gamerule is enabled
- Add admin command admin-vulnerable <player> to force invulnerable players to be vulnerable
- Fixed a bug where hearts could be duplicated when withdrawing hearts
- Added altar effects
- Altar creation animation
- Altar withdraw animation
- Altar reviving animation
- Can be disabled with the gamerule:
lifesteal:altar_animations - Readd Unruled API 2.1 as a dependency
- Updated to 1.21.11
- Switched default units to hearts for most commands and gamerules
- Temporarily removed Unruled API dependency
- Implemented limited crafting of hearts gamerule
- Limit crafting of hearts based on current max health
- Limit crafting to a set number of hearts that optionally reset when a player is "banned"
- Implemented preventing crafters from crafting hearts gamerule
- New textures for all blocks and items by @thomask3897
- Note:** All gamerules' names were updated. Some gamerules may have changed names. Please ensure that you check the wiki for the functions of all gamerules.
- Add the Totem of Rebirth
- Refactor gamerules
- Players can now drop hearts when dying to a non-player source
- Updated to 1.21.10
- Added a /revive command for reviving players when the altar feature is disabled
- Renamed the admin revive command to /admin-revive
- Migrated to the tatercertified group name
- Fix a duplication exploit with the
/withdrawcommand
- Updated to 1.21.6
- Fixed
/withdrawnot giving the correct number of hearts - Updated to 1.21.5
- Began native GeyserMC support
- Added Respawn Invulnerability
- This prevents players from killing you when respawning
- This also prevents you from killing other players after respawning
- Configurable with gamerule
lifesteal:revivalInvulnerabilitySeconds - Added customizable Heart stack sizes
- Configurable with gamerule
lifesteal:heartStackSize - Added feature tests for debugging
- This will ensure future updates do not break a specific feature
- Updated Unruled API to v1.3
This update brings some fixes and tweaks, mainly to the gamerule
antiHeartDupe:- Fixes hearts being given regardless of the killed player's health
- Disabled the gamerule for players that are revived using hearts (since a heart is consumed, it is fair that they also give a heart when killed)
- If a killer is at max health, instead of receiving no hearts, they now receive a heart item
- Fixed a bug where if using
/withdraw, the hearts received would be stacked
## Use Unruled API 0.6!
Notable features include:
- Fixed NBT issues related to player death status
- Fixed all texture issues
- Gamerule for setting the altar block
- Fixed reviving issues for offline players
- Support gifting to offline players
- Admin command for unbanning a single player
- Automatic revival after a configurable time
- Update to 1.21.4!
- Improved wiki with datapack creation instructions
- Note: Unruled-API will not be embedded in upcoming releases since a 1.21.4 version is being actively worked on**
This is a complete rewrite of the entire mod to be more compatible with modern versions of the game and to eliminate the NBT issues that the original version had. Overall this version should be substantially more stable.
- Full Changelog**: https://github.com/Tater-Certified/LifeSteal/commits/1.4.0
- Update to 1.20.2
- Fixes a bug with localhost worlds due to checking for bots
- Carpet Bots are no longer checked
- Some code cleanup
- Updated to 1.20.1
- Migrated to OfflinePlayerLib
- Fixed some inconsistencies with the respawn altar
- Data-driven ores
- Code cleanups
- Added heart trading. Just rename a heart to your name and shift click on the ritual block
- Made the ritual block configurable in the config
- Rewrote ore spawning and set the min-vein size to 5 to fix a bug