DxLifeStealCore icon

DxLifeStealCore -----

A Lifesteal Plugin



<div align="center">

# ❤ DxLifeStealCore
### *Advanced LifeSteal Plugin — More Powerful Than Ever*

**By [DipuXPro](https://dxlifesteal.dev) · Minecraft 1.20–1.21.x · Paper / Bukkit**

---

![License](https://img.shields.io/badge/License-Commercial-red?style=for-the-badge)
![MC Version](https://img.shields.io/badge/Minecraft-1.20--1.21.x-brightgreen?style=for-the-badge)
![API](https://img.shields.io/badge/API-Paper / Bukkit-orange?style=for-the-badge)
![Java](https://img.shields.io/badge/Java-17-blue?style=for-the-badge)

> *"Every heart stolen. Every life lost. Every revival earned."*

</div>

---

## License

> **This plugin requires a valid license key to run.**
> Without a valid key, the plugin will refuse to enable.

```
License Key: 25Z8VM-UGXHD5
```

Enter your key in `config.yml` under `license.key` before starting your server.
To purchase additional license keys, visit **[dxlifesteal.dev](https://dxlifesteal.dev)**.

---

## ✨ What is DxLifeStealCore?

**DxLifeStealCore** is a feature-rich, SMP-ready LifeSteal plugin built for competitive Minecraft servers. It goes far beyond basic heart stealing — with tiered heart items, cinematic elimination effects, a full revive system, server events, Discord webhook integration, kill streaks, and a paginated revive GUI.

Whether you're running a public LifeSteal SMP or a private friend group server, DxLifeStealCore gives you complete control over every mechanic.

---

## Core Features

### ❤ Heart System
- Players start with a **configurable number of hearts** (default: 10)
- Killing a player **steals hearts** from the victim and gives them to the killer
- Hearts have a **configurable minimum and maximum** — players can grow up to 20 hearts!
- **Steal chance** is configurable — make it 100% or add RNG
- Optional **heart loss on mob death** or **natural death**
- **Per-world heart settings** support — different heart caps per world
- **Heart economy**: withdraw hearts to items, deposit items back, pay hearts to other players

### Tiered Heart Items

Three tiers of craftable heart consumables, each with unique designs, lore, and effects:

| Item | Tier | Hearts | Rarity | Recipe Center |
|------|------|--------|--------|---------------|
| ❤ Heart Shard | Tier I | +1 ❤ | Common | Nether Star + Golden Swords |
| Heart Crystal | Tier II | +2 ❤❤ | Rare | Diamond Blocks + End Crystal |
| ✦ Heart Gem | Tier III | +3 ❤❤❤ | Legendary | Emerald Blocks + Netherite Block |

Plus the classic **Stolen Heart** (craftable with Gold Blocks, Nether Stars & Beacon) and the **Heart Shield** (Totem of Undying + Ghast Tears + Diamond Block) that blocks **one heart loss on death**.

### ⚰ Elimination System

When a player's hearts reach zero, they are **eliminated**. Choose from four elimination modes:

- **BAN** — Temporarily bans the player for a configurable duration (e.g. `3d`, `12h`)
- **SPECTATOR** — Converts the player to spectator mode
- **KICK** — Kicks the player from the server
- **COMMAND** — Executes a custom console command on elimination

Elimination comes with **cinematic effects** — a dark particle tornado, lava drips, skull cracks, wither sounds, and a dramatic death firework. The killer gets a golden sparkle celebration with victory fireworks and sounds.

### Revive System

Eliminated players can be brought back by spending hearts:

- Configurable **cost in hearts** to revive (default: 5)
- Works for **online and offline** players
- **Revive immunity** after being revived — brief grace period
- **Revive Book** — craftable item (Emerald Blocks + Totems + Written Book)
- **Paginated Revive GUI** — browse up to 45 eliminated players per page with skull heads, status info, and one-click reviving
- Global toggle to **enable/disable revives** without restarting
- Server-wide **broadcast** on successful revive
- **Discord webhook** notification on revive

### Kill Streak Bonuses

Players on a killing streak earn **bonus hearts**:

| Kill Streak | Bonus Hearts |
|-------------|-------------|
| 3 kills | +1 ❤ |
| 5 kills | +2 ❤❤ |
| 10 kills | +3 ❤❤❤ |

Streak thresholds and rewards are fully configurable.

### Server Events

Activate limited-time events with a single command:

- **Double Hearts Event** — All heart gains are multiplied. Comes with a live **BossBar countdown** visible to all players.
- **Heart Rain Event** — All online players receive free hearts at a set interval for the event duration.

Events are started/stopped with `/dxlifesteal event` and run on a background task ticker.

### Leaderboards

Full leaderboard support with `/dxlifesteal top`:

- Sort by **hearts**, **kills**, **deaths**, or **eliminations**
- Configurable **leaderboard size**
- Auto-refresh interval for live ranking updates

### Discord Webhook Integration

Get notified in your Discord server for key events:

- Player **killed** (heart stolen)
- Player **death**
- Player **eliminated**
- Player **revived**

Enable and configure via `config.yml` — just plug in your webhook URL.

### PlaceholderAPI Support

Full PAPI integration with the `%dxls_<placeholder>%` prefix:

| Placeholder | Description |
|-------------|-------------|
| `%dxls_hearts%` | Current hearts |
| `%dxls_max_hearts%` | Max hearts |
| `%dxls_kills%` | Total kills |
| `%dxls_deaths%` | Total deaths |
| `%dxls_eliminations%` | Total eliminations |
| `%dxls_streak%` | Current kill streak |
| `%dxls_best_streak%` | Best kill streak ever |
| `%dxls_status%` | Active / Eliminated / Frozen / Bypassed |
| `%dxls_is_eliminated%` | true / false |
| `%dxls_event_double%` | Double hearts event active? |
| `%dxls_event_rain%` | Heart rain event active? |

---

## Commands

| Command | Description | Permission |
|---------|-------------|------------|
| `/dxlifesteal help` | Show help menu | — |
| `/dxlifesteal status [player]` | View heart stats | `dxlifesteal.status` |
| `/dxlifesteal top [type]` | View leaderboard | `dxlifesteal.top` |
| `/dxlifesteal withdraw <amount>` | Withdraw hearts to item | `dxlifesteal.withdraw` |
| `/dxlifesteal deposit` | Deposit heart items | `dxlifesteal.deposit` |
| `/dxlifesteal pay <player> <amount>` | Pay hearts to player | `dxlifesteal.pay` |
| `/dxlifesteal streak [player]` | View kill streak | `dxlifesteal.streak` |
| `/dxlifesteal revive <player>` | Revive eliminated player | `dxlifesteal.revive` |
| `/dxlifesteal set <player> <amount>` | Set player hearts | `dxlifesteal.set` |
| `/dxlifesteal add <player> <amount>` | Add hearts to player | `dxlifesteal.add` |
| `/dxlifesteal remove <player> <amount>` | Remove hearts | `dxlifesteal.remove` |
| `/dxlifesteal eliminate <player>` | Force eliminate player | `dxlifesteal.eliminate` |
| `/dxlifesteal freeze <player>` | Freeze/unfreeze player | `dxlifesteal.freeze` |
| `/dxlifesteal giveitem <player> <item> <amount>` | Give heart item | `dxlifesteal.giveitem` |
| `/dxlifesteal event <type> <duration>` | Start/stop events | `dxlifesteal.event` |
| `/dxlifesteal reload` | Reload plugin | `dxlifesteal.reload` |
| `/dxlifesteal backup` | Backup player data | `dxlifesteal.backup` |
| `/dxlifesteal inspect <player>` | Inspect player data | `dxlifesteal.inspect` |

**Aliases:** `/dxls`, `/lsc`, `/lifesteal`

---

## Permissions

| Permission | Default | Description |
|------------|---------|-------------|
| `dxlifesteal.admin` | OP | Full admin access (inherits all below) |
| `dxlifesteal.status` | All | Check heart status |
| `dxlifesteal.withdraw` | All | Withdraw hearts |
| `dxlifesteal.deposit` | All | Deposit heart items |
| `dxlifesteal.pay` | All | Pay hearts to others |
| `dxlifesteal.top` | All | View leaderboards |
| `dxlifesteal.streak` | All | View kill streaks |
| `dxlifesteal.recipes` | All | View recipes GUI |
| `dxlifesteal.bypass` | OP | Bypass heart steal |
| `dxlifesteal.multiplier.2x` | false | 2x heart steal (VIP) |
| `dxlifesteal.multiplier.3x` | false | 3x heart steal (VIP) |
| `dxlifesteal.maxhearts.bonus` | false | Bonus max hearts (VIP) |

---

## ⚙ Configuration Highlights

```yaml
hearts:
starting: 10 # Starting hearts for new players
minimum: 2 # Can never go below this
maximum: 20 # Cap on max hearts
steal-amount: 1 # Hearts stolen per kill
steal-chance: 100 # % chance to steal (RNG support)
pvp-only: true # Only steal in PvP kills

elimination:
mode: BAN # BAN / SPECTATOR / KICK / COMMAND
ban-duration: "3d" # Supports d, h, m

revive:
enabled: true
cost-hearts: 5
immunity-seconds: 30

streak:
enabled: true
rewards:
3: 1 # 3 kills = +1 heart
5: 2
10: 3
```

---

## Installation

1. Drop `DxLifeStealCore.jar` into your `/plugins` folder
2. Start the server once to generate `config.yml`
3. Open `config.yml` and set your license key:
```yaml
license:
key: "25Z8VM-UGXHD5"
```
4. Configure hearts, elimination mode, revive settings, and Discord webhook as desired
5. Restart the server — you're good to go!

**Soft Dependencies:** `PlaceholderAPI` (optional), `Vault` (optional)

---

## Compatibility

| Server Software | Supported |
|-----------------|-----------|
| Paper 1.20–1.21.x | ✅ |
| Spigot 1.20–1.21.x | ✅ |
| Purpur | ✅ |
| Folia | ❌ |

**Requires Java 17 or higher.**

---

## Data & Storage

- **YML-based** per-player data storage — no database setup required
- Auto-save every minute (configurable)
- Full **backup** and **export** command support
- Kill, death, steal, elimination, and revive **history logging** per player

---

<div align="center">

**Made with ❤ by [DipuXPro](https://dxlifesteal.dev)**

*DxLifeStealCore is a premium commercial plugin. Redistribution or resale is strictly prohibited.*

</div>
Resource Information
Author:
----------
Total Downloads: 14
First Release: Apr 26, 2026
Last Update: Apr 26, 2026
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings