❤️ AnziLifesteal Documentation

Welcome to the AnziLifesteal documentation! AnziLifesteal is a comprehensive, highly configurable Spigot plugin designed for Lifesteal SMPs. It features cross-server synchronization, customizable recipes, an in-game recipe editor, rebirth mechanics, spawn-kill/alt protections, and more.

Overview

AnziLifesteal provides everything you need to run a professional Lifesteal SMP. Players steal hearts from each other on kill, can be eliminated when reaching 0 hearts, and can be revived using craftable Revive Beacons. The plugin includes a rebirth prestige system, full MySQL synchronization for proxy networks, and extensive anti-exploit protections.

Features

  • Lifesteal Mechanics: Steal hearts from players you kill. Lose hearts upon death (configurable for PvE).
  • Eliminations & Reviving: Players reaching 0 hearts are eliminated. They can be brought back using a Revive Beacon.
  • Withdraw System: Convert health into physical Heart items.
  • Rebirth System: Prestige system allowing players to reset progress for a permanently increased max heart cap.
  • MySQL Synchronization: Sync player hearts, rebirths, and toggle states across a proxy network.
  • Protections: Built-in Anti-Spawn-Kill and Anti-Alt-Farming.
  • Toggle System: Admins can temporarily or permanently exempt players from lifesteal.
  • PlaceholderAPI Integration: Exposes placeholders for leaderboards and scoreboards.

Commands & Permissions

Player Commands

CommandDescriptionPermission
/withdraw <amount>Withdraws specified amount of hearts into physical items.None
/rebirthOpens the rebirth GUI to prestige.None

Admin Commands

Permission required: als.admin (except /lstoggle which requires als.toggle)

CommandDescription
/als set_hearts <player> <amount>Sets a player's current hearts.
/als give <player> <heart|revive_beacon> <amount>Gives the specified custom item.
/als max_hearts <amount>Temporarily sets global max hearts.
/als recipesOpens the interactive in-game Recipe Editor GUI.
/als ban_on_zero <true|false>Toggles whether players are banned at 0 hearts.
/als lose_on_non_player_death <true|false>Toggles losing hearts to PvE deaths.
/als min_withdraw <amount>Sets minimum hearts required to withdraw.
/als anti_spawn_kill <true|false>Toggles spawn kill protection.
/als anti_alt <true|false>Toggles alt-farming prevention.
/als link_alt <player1> <player2>Manually links two players as alts.
/als unlink_alt <player1> <player2>Unlinks two players.
/als reloadReloads config.yml and all settings.
/lstoggle <player> <on|off> [time]Toggles lifesteal for a player (e.g., off 1h).

Configuration Guide

Core Settings

  • starting-hearts: Hearts a new player starts with.
  • max-hearts: The absolute maximum hearts a player can reach.
  • min-withdraw-hearts: Prevents withdrawing if it would drop the player below this threshold.
  • lose-hearts-on-non-player-death: If true, dying to mobs, fall damage, or the void costs a heart.

Elimination Settings

  • ban-on-zero: If true, hitting 0 hearts eliminates (bans) the player. If false, they stay at 1 heart.
  • ban-durations: A progressive list of ban lengths (e.g., 1h, 24h, 7d). Use -1 for permanent.
  • hearts-when-revived: Hearts given when revived via beacon.
  • enable-revive-beacon: Enables/disables the revive beacon item and recipe.

Full config.yml

# ══════════════════════════════════════════════
#         Anzi Lifesteal - Configuration
# ══════════════════════════════════════════════

starting-hearts: 10
max-hearts: 20
min-withdraw-hearts: 1
ban-on-zero: true

ban-durations:
  - "1h"
  - "24h"
  - "7d"

hearts-when-revived: 1
enable-revive-beacon: true
lose-hearts-on-non-player-death: true

# ─── ANTI SPAWN KILL ────────────────────────────
anti-spawn-kill:
  enabled: true
  max-kills: 3
  time-window: 180
  spawn-radius: 10

# ─── ALT DETECTION ──────────────────────────────
anti-alt:
  enabled: false

# ─── REBIRTH ────────────────────────────────────
rebirth:
  hearts-after-rebirth: 10
  extra-max-hearts-per-rebirth: 1
  required-hearts-percentage: 50

# ─── MYSQL (Velocity Sync) ──────────────────────
mysql:
  enabled: true
  host: "localhost"
  port: 3306
  database: "lifesteal"
  username: "root"
  password: ""
  pool-size: 10
  server-id: "server-1"

# ─── TOGGLE SYSTEM ──────────────────────────────
toggle:
  sync-interval-seconds: 30

# ─── RECIPES ────────────────────────────────────
recipes:
  heart:
    enabled: true
    shape:
      - "DND"
      - "NGN"
      - "DND"
    ingredients:
      D: DIAMOND
      N: NETHER_STAR
      G: GOLD_INGOT

  revive_beacon:
    enabled: true
    shape:
      - "ENE"
      - "OBO"
      - "OOO"
    ingredients:
      E: ENDER_EYE
      N: NETHER_STAR
      O: OBSIDIAN
      B: BEACON

Protections

Anti-Spawn-Kill

  • enabled: Toggles protection.
  • max-kills: Max times a player can steal from the same victim within the time window.
  • time-window: Time in seconds to track repeat kills.
  • spawn-radius: If the victim is within this radius of their respawn, it triggers spawn protection.

Anti-Alt

Prevents players on the same IP or manually linked accounts from stealing hearts from each other. Toggle with /als anti_alt.

Rebirth System

The rebirth system acts as a prestige mechanic. Players who accumulate enough hearts can "rebirth" to reset their hearts but permanently increase their maximum heart cap.

  • hearts-after-rebirth: Hearts the player gets reset to.
  • extra-max-hearts-per-rebirth: Increases their personal heart cap permanently.
  • required-hearts-percentage: Formula determining hearts required based on the difference between starting and max hearts.

Formula: starting-hearts + (max-hearts - starting-hearts) × percentage

Example: starting=10, max=20, 50% → 10 + (20-10)×0.5 = 15 hearts needed

MySQL & Syncing

Set mysql.enabled: true and configure database credentials to sync hearts across multiple servers. Each server should have a unique server-id.

The toggle system syncs states from MySQL at the interval defined by toggle.sync-interval-seconds.

Recipe System

Recipes are fully customizable via config.yml (using a shape matrix) OR via the in-game GUI (/als recipes). Available crafting targets:

  • Heart — Default: Diamond + Nether Star + Gold Ingot
  • Revive Beacon — Default: Ender Eye + Nether Star + Obsidian + Beacon

PlaceholderAPI Integration

If PlaceholderAPI is installed, the following placeholders are available:

PlaceholderDescription
%lifesteal_hearts%Player's current hearts
%lifesteal_max_hearts%Player's personal max hearts (including rebirths)
%lifesteal_rebirths%Total number of rebirths

Messages & GUI Text

Every GUI title, lore line, and chat message is 100% customizable with standard Minecraft color codes (&) inside the gui-text and messages sections of config.yml.

Note: Make sure to run /als reload after making direct changes to config.yml.