LifeStealZ

LifeStealZ

Plugin

A lifesteal SMP plugin giving you all the features you need!

Server AdventureGame MechanicsMinigame

16.8k downloads
40 followers
Createda year ago
Updated2 days ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.

LifestealZBanner


paper purpur github modrinth

LifeStealZ is a lifesteal SMP plugin, that allows you to steal hearts from other players, when you kill them. If a player has no more hearts, he is eliminated. You can craft additional hearts or a revive crystal. With this crystal, you can bring back eliminated teammates.

LifeStealZ offers a great amount of admin tools and is highly customizable. You can change every message and change everything about the custom items.



FeaturesBanner

  • ✅ Stealing hearts
  • ✅ Withdraw hearts
  • ✅ Customizable heart items
  • ✅ Custom crafting recipes
  • ✅ Revive item
  • ✅ Maximal and starter hearts
  • ✅ Disable totems
  • ✅ Disable crystal pvp
  • ✅ Ingame recipe viewer
  • ✅ PlaceholderAPI placeholders
  • ✅ Custom WorldGuard flags
  • ✅ Admin commands
  • ✅ HEX colors and gradients support


PermissionsBanner

  • lifestealz.admin.reload - Allow to reload the plugin
  • lifestealz.admin.setlife - Allow to set the amount of hearts, a player has
  • lifestealz.admin.giveitem - Allow to give custom items to a player
  • lifestealz.admin.eliminate - Allows to eliminate players with the /eliminate command
  • lifestealz.admin.revive - Allow a player to revive another player with the /revive command
  • lifestealz.bypassrevivelimit - Allow a player to bypass the revive limit
  • lifestealz.withdraw - Allow a player to withdraw hearts (true by default)
  • lifestealz.revive - Allow a player to revive others with a revive crystal (true by default)
  • lifestealz.viewrecipes - Allow a player to view the custom recipes (true by default)
  • lifestealz.help - Allow a player to access the help menu (true by default)
  • lifestealz.viewhearts - Allow a player to view the amount of hearts (`/hearts``) he has (true by default)


ConfigBanner

Here is an example of the configuration file:

Click me!
#     _      _  __        _____ _             _   ______
#    | |    (_)/ _|      / ____| |           | | |___  /
#    | |     _| |_ ___  | (___ | |_ ___  __ _| |    / /
#    | |    | |  _/ _ \  \___ \| __/ _ \/ _` | |   / /
#    | |____| | ||  __/  ____) | ||  __/ (_| | |  / /__
#    |______|_|_| \___| |_____/ \__\___|\__,_|_| /_____|

# !!! COLOR CODES !!!
# This plugin supports old color codes like: &c, &l, &o, etc
# It also supports minimessage, which is a more advanced way to format messages:
# https://docs.advntr.dev/minimessage/format.html
# With these, you can also add HEX colors, gradients, hover and click events, etc

checkForUpdates: true

#A list of worlds, where the plugin should take effect
worlds:
  - "world"
  - "world_nether"
  - "world_the_end"

#The amount of hearts a player has, when joining for the first time
startHearts: 10
#The maximal amount of hearts, a player can have
maxHearts: 20
# This option will enforce the heart limit on admin commands like /lifestealz hearts <add, set> <player> <amount>
enforceMaxHeartsOnAdminCommands: false

#If hearts should be dropped instead of directly added to the killer
dropHearts: false
#If a heart should be dropped, when the killer already has the max amount of hearts
dropHeartsIfMax: true
#If a player should lose a heart, when dying to hostile mobs or falldamage, lava, etc
looseHeartsToNature: true
#If a player should lose a heart, when being killed by another player
looseHeartsToPlayer: true
#Whether it should be announced, when a player got eliminated (has no more hearts)
announceElimination: true

#Allows players to withdraw a heart, even if they only have one left
allowDyingFromWithdraw: true
#If the totem effect should be played, when you use a heart
playTotemEffect: false
#The time you have to wait, before you can use another heart in Milliseconds
heartCooldown: 0
#How many times a player can be revived. Set to -1 to make it infinite
maxRevives: -1

#If the use of totems of undying should be prevented
preventTotems: false
#If crystalpvp should be disabled
preventCrystalPVP: false

#Only disable this option if you want to add custom commands on elimination and don't want the player to get banned
disablePlayerBanOnElimination: false
# The amount of hp a player should have after getting eliminated
respawnHP: 10

# Execute custom commands on events:
# You can use &player& to insert the player name
# For example: tempban &player& banreason 1d
eliminationCommands:
# - "say &player& got eliminated"
# - "niceCommandtwo"

heartuseCommands:
# - "say &player& used a heart item"

reviveuseCommands:
# - "say &player& revived &target&"

heartuseSound:
  enabled: true
  sound: ENTITY_PLAYER_LEVELUP # Find all sounds here: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Sound.html
  volume: 1.0
  pitch: 1.0

antiAlt:
  # If the anti alt system should be enabled
  enabled: true
  # If possible alt kill attempts should be logged
  logAttempt: true
  # If possible alt kill attempts should be prevented
  preventKill: false
  # If a message should be sent to the player, when an alt kill attempt is detected
  sendMessage: false
  # Add custom comamnds, to be executed when a possible alt kill attempt is detected
  # You can use &player& to insert the player name (commands are executed for both players)
  commands:
    # - "say Please don't kill alts"
    # - "ban &player& 1h"

storage:
  # The type of storage to use. You have the following options:
  # "SQLite"
  type: "SQLite"

  # This section is only relevant if you use a MySQL database
  host: "localhost"
  port: 3306
  database: "lifestealz"
  username: "root"
  password: "password"

#Here you can modify everything about the custom items
items:
  # DONT DELETE THE defaultheart ITEM!!!
  defaultheart:
    name: "&cHeart"
    lore:
      - "&7Rightclick to use"
    #     - "This would be a second line"
    #     - "And this possibly a third line"
    material: "NETHER_STAR"
    enchanted: false
    customModelData: 100
    # Custom item type for the item ("heart" or "revive")
    customItemType: "heart"
    # When customItemType is "heart", this value is used to determine how many hearts the item gives
    customHeartValue: 1
    # true if this item should be craftable
    craftable: true
    recipe:
      #Every item represents one slot in the crafting table
      #The first item in a row is the left most item in the crafting table
      #If you want a slot to be blant, use 'AIR'
      rowOne:
        - "GOLD_BLOCK"
        - "GOLD_BLOCK"
        - "GOLD_BLOCK"
      rowTwo:
        - "OBSIDIAN"
        - "NETHER_STAR"
        - "OBSIDIAN"
      rowThree:
        - "DIAMOND_BLOCK"
        - "DIAMOND_BLOCK"
        - "DIAMOND_BLOCK"

  revive:
    name: "&dRevive Crystal"
    lore:
      - "&7Rightclick to use"
    material: "AMETHYST_SHARD"
    enchanted: true
    customModelData: 101
    customItemType: "revive"
    customHeartValue: 0
    craftable: true
    recipe:
      rowOne:
        - "AMETHYST_SHARD"
        - "NETHERITE_BLOCK"
        - "AMETHYST_SHARD"
      rowTwo:
        - "OBSIDIAN"
        - "BEACON"
        - "OBSIDIAN"
      rowThree:
        - "AMETHYST_SHARD"
        - "NETHERITE_BLOCK"
        - "AMETHYST_SHARD"

  # You can add as many custom items as you want

#You can modify all messages here
messages:
  prefix: "&8[&cLifeStealZ&8]"
  newVersionAvailable: "&7A new version of LifeStealZ is available!\n&c<click:OPEN_URL:https://modrinth.com/plugin/lifestealz/versions>https://modrinth.com/plugin/lifestealz/versions</click>"
  usageError: "&cUsage: %usage%"
  noPermsError: "<red>You do not have permission to execute this command!"
  playerNotFound: "&cPlayer not found!"
  worldNotWhitelisted: "&cThis world is not whitelisted for LifeStealZ!"
  specifyPlayerOrBePlayer: "&cYou need to either specify a player or be a player yourself!"
  noPermissionError: "&cYou don't have permission to use this!"
  noPlayerData: "&cThis player has not played on this server yet!"
  eliminateSuccess: "&7You successfully eliminated &c%player%&7!"
  reviveSuccess: "&7You successfully revived &c%player%!"
  reviveMaxReached: "&cThis player has already been revived %amount% times!"
  onlyReviveElimPlayers: "&cYou can only revive eliminated players!"
  eliminatedJoin: "&cYou don't have any hearts left!"
  eliminationAnnouncement: "&c%player% &7has been eliminated by &c%killer%&7!"
  eliminateionAnnouncementNature: "&c%player% &7has been eliminated!"
  setHeartsConfirm: "&7Successfully set &c%player%&7's hearts to &c%amount%"
  getHearts: "&c%player% &7currently has &c%amount% &7hearts!"
  reloadMsg: "&7Successfully reloaded the plugin!"
  versionMsg: "&7You are using version <red>%version%"
  noWithdraw: "&cYou would be eliminated, if you withdraw a heart!"
  withdrawConfirmmsg: "&8&oUse <underlined><click:SUGGEST_COMMAND:/withdrawheart %amount% confirm>/withdrawheart %amount% confirm</click></underlined> if you really want to withdraw a heart"
  maxHeartLimitReached: "&cYou already reached the limit of %limit% hearts!"
  closeBtn: "&cClose"
  reviveTitle: "&8Revive a player"
  revivePlayerDesc: "&7Click to revive this player"
  viewheartsYou: "&7You currently have &c%amount% &7hearts!"
  viewheartsOther: "&c%player% &7currently has &c%amount% &7hearts!"
  heartconsume: "&7You got &c%amount% &7hearts!"
  heartconsumeCooldown: "&cYou have to wait before using another heart!"
  recipeNotCraftable: "&cThis item is not craftable!"
  altKill: "&cPlease don't kill alts! This attempt has been logged!"
  withdrawMin: "&cYou can't withdraw less than 1 heart!"
  giveItem: "&7You received %amount%x &c%item%&7!"

If you want a slot in the crafting recipe to be blank, replace the block name with AIR.

WorldGuard Flags

To set a custom worldguard flag, you have to use /rg flags and scroll to the last page.

There you can set the following flags:

  • heartloss - Allow heart loss in this region


PlaceholderBanner

If you are using Placeholderapi on your server, you can use the following placeholders:

  • %lifestealz_hearts% - The amount of hearts a user has
  • %lifestealz_maxhearts% - The maximum amount of hearts a user can have
  • %lifestealz_revived% - The amount of times a player has been revived
  • %lifestealz_craftedhearts% - The amount of times a player has crafted a heart
  • %lifestealz_craftedrevives% - The amount of times a player has crafted a revive crystal


PlaceholderBanner

If you need help with the setup of the plugin, or found a bug, you can join my discord here or message me directly (Kartoffelchips#0445).

discord-plural

Spigot Page


Usage

External resources



Project members

KartoffelChipss

Owner


Technical information

Project ID