The Most Advanced
Lifesteal Experience.
A high-performance, feature-rich Minecraft plugin designed for competition. Steal hearts, eliminate opponents, and dominate your server with xLifestealCore.
Powerful Features
Heart Stealing
Seamless PvP heart theft mechanics with configurable gain/loss ratios.
Physical & Virtual
Choose between direct health modification or physical heart items.
Elimination System
Custom ban durations and reasons for players who hit zero hearts.
Multi-DB Support
Native support for H2, MySQL, PostgreSQL, and Redis for high-scale sync.
Async Performance
Engineered for Paper and Folia. 0ms main-thread impact during saves.
PAPI Integration
Full PlaceholderAPI support for scoreboards, tabs, and holograms.
Installation Guide
Follow these simple steps to get xLifestealCore running on your server.
1. Download the latest jar from the releases page.
2. Drop the jar into your server's /plugins folder.
3. Restart your server to generate the configuration files.
4. Customize config.yml & messages.yml to your liking.
5. Use /ls admin reload to apply changes instantly.
Commands
Player Commands
| Command | Description | Permission |
|---|---|---|
| /hearts | View your current heart status | xlifesteal.player |
| /withdraw <num> | Convert health into physical heart items | xlifesteal.player |
| /ls top | View the heart leaderboard | xlifesteal.player |
| /revive <player> | Revive an eliminated player | xlifesteal.player |
| /ls recipe | View the heart crafting recipe | xlifesteal.player |
Admin Commands
| Command | Description | Permission |
|---|---|---|
| /ls admin set <p> <n> | Set a player's exact heart count | xlifesteal.admin |
| /ls admin add <p> <n> | Add hearts to a player | xlifesteal.admin |
| /ls admin remove <p> <n> | Remove hearts from a player | xlifesteal.admin |
| /ls admin give <p> <n> | Give physical heart items to a player | xlifesteal.admin |
| /ls admin reset <player> | Reset a player's hearts to default | xlifesteal.admin |
| /ls admin ban <player> | Manually eliminate/ban a player | xlifesteal.admin |
| /ls admin unban <player> | Unban and revive a player | xlifesteal.admin |
| /ls admin setmax <p> <n> | Set a player's individual max hearts | xlifesteal.admin |
| /ls admin setcap <amount> | Set the global heart cap | xlifesteal.admin |
| /ls admin recipe <on|off> | Toggle the crafting recipe | xlifesteal.admin |
| /ls admin hearttype <t> | Change heart type (physical/virtual) | xlifesteal.admin |
| /ls admin checkhearts <p> | Check a player's heart status | xlifesteal.admin |
| /ls admin reload | Reload all configuration files | xlifesteal.admin |
| /ls admin wipe | Reset ALL player data (requires confirm) | xlifesteal.admin |
| /ls admin reviveall | Revive all banned players | xlifesteal.admin |
| /ls admin giveall <n> | Give hearts to all players | xlifesteal.admin |
| /ls admin setdropchance <%> | Set the heart drop chance percentage | xlifesteal.admin |
| /ls admin revivecost <n> | Set the revive cost | xlifesteal.admin |
| /ls admin heartitem <mat> | Set the physical heart material | xlifesteal.admin |
Permissions
| Permission | Description | Default |
|---|---|---|
xlifesteal.player |
Access to all standard player commands | True |
xlifesteal.admin |
Full access to admin controls and bypasses | OP |
xlifesteal.deathtime.<sec> |
Custom ban duration in seconds for specific players | None |
Configuration
Example config.yml showcasing the Lifesteal engine settings.
# ---- Heart Settings ----
default-hearts: 10
max-heart-cap: 30
min-hearts: 0
# ---- Heart Type ----
# "virtual" = modify health directly, "physical" = item drop
heart-type: "physical"
# ---- Physical Heart Item ----
heart-item-material: "PLAYER_HEAD"
heart-item-name: "FFAAAALifesteal Heart"
heart-item-custom-model-data: 1001
# ---- Elimination System ----
ban-duration-hours: -1 # -1 for permanent
ban-reason: "FF4444You have been eliminated!"
# ---- Revive System ----
revive-cost: 5
Placeholders
Integrate Lifesteal data into your server UI using PlaceholderAPI.
| Placeholder | Description |
|---|---|
%xlifesteal_hearts% |
Current player heart count |
%xlifesteal_heartscap% |
Player's maximum potential hearts |
%xlifesteal_top_1_name% |
Name of the 1st place player |
%xlifesteal_top_1_value% |
Hearts of the 1st place player |
Database Support
xLifestealCore supports various database backends for reliable data storage and cross-server syncing.
H2 (Local)
Default fast file-based database for single server setups.
MySQL / MariaDB
Standard SQL support for robust data handling and network expansion.
PostgreSQL
Enterprise-grade database support for maximum reliability.
Redis
High-speed caching and pub/sub for instant sync across large proxy networks.
Discord Webhooks
Keep your community updated with real-time kill and elimination feeds.
discord-webhook:
enabled: true
url: "YOUR_WEBHOOK_URL"
events:
kill: true
death: true
elimination: true
revive: true
Frequently Asked Questions
Yes, xLifestealCore is built with async-first data handling and is fully compatible with Folia servers.
Absolutely. You can define the shape and multi-material ingredients in the
config.yml. Use /ls recipe in-game to see changes.
When a player hits the minimum heart limit (usually 0), they are immediately banned. You can set a timed duration (e.g., 24 hours) or make it permanent until revived.