HomeJavaModsLifeEconomy
LifeEconomy
ModsJava

LifeEconomy

by JollyJoe · on Modrinth

Reward your PvP gods with an economy plugin that uses player health as a status of wealth! Lifesteal inspired!

⬇ Download on Modrinth

❤️ LifeEconomy — Hearts as Currency. Real SMP Stakes.

Ever wanted to use hearts as a currency? Ever wanted players to bleed power, fight for hearts, and flex HP like an economy stat?

Welcome to LifeEconomy — a lifesteal-inspired heart economy system for SMPs where:

Turn your server into a true high-stakes SMP economy where players literally grind blood for wealth.


✅ Features


LifeEconomy is a Core-plugin, it's features are limited if installed by itself. To enhance your LifeEconomy experience, consider adding these add-ons to your server.

🗳️ Available add-ons


📊 PlaceholderAPI Placeholders (click to expand)
Placeholder Description Example Output
%life_health% Shows the player's raw health value (internal HP, not hearts) 36.0
%life_hearts% Shows the player's hearts count 18
%life_hearts_formatted% Displays hearts with a symbol & multiplier ❤ x18
%life_percentage% Player health as a percentage of default (20 HP) 180%
%life_min_health% Minimum health configured in the plugin 2.0
%life_can_lose% How many hearts the player can lose before reaching minimum 16
%life_is_min_health% Returns true if the player is at minimum health false
%life_bar% Heart bar UI across multiple lines (10 hearts per row, MiniMessage → Legacy converted)** ❤❤❤❤❤❤❤❤❤❤
❤❤❤❤❤❤❤❤❤❤
%life_rank% Placeholder for upcoming leaderboard support Coming soon
%life_top_1% Placeholder for upcoming top player name support Coming soon
%life_top_1_hearts% Placeholder for upcoming top player hearts support Coming soon

Note: %life_bar% supports multiline hearts, so looks great in scoreboards & GUIs that support newlines.


⚙️ Config Preview (click to expand)
database: #use mysql to sync hearts across different servers on a proxy network
  type: sqlite # or "mysql" use sqlite if you haven't set up a mysql server
  # SQLite options
  file: hearts.db
  # MySQL options (used only if type = mysql)
  host: localhost
  port: 3306
  database: life_economy
  username: root
  password: ""
  useSSL: false
  pool-size: 10

cost: #1 heart = 2.0
  minimum-health: 2.0 #Minimum player health, no death will cause health to go below this (I suggest not changing this, 2.0 is 1 heart)
  random-death: 2.0 #Just deletes 1 heart when a player dies from any other causes that's not a player.
  death-to-player: 2.0 #1 heart cost if they die to a player (gets transferred to killer)

settings: #hearts-display appear on damage
  heal-on-kill: true
  hearts-display: ACTION_BAR #type none if you don't want a hearts display. ACTION_BAR is the only supported display for now
  display-timeout: 4 #Seconds before display disappears

messages:
  no-hearts-lost: "<red>You didn't lose any hearts.</red>"
  no-hearts-gained: "<red>You didn't gain any hearts.</red>"
  pay: "<gray>You gave <gold>{target}</gold><green> {amount} <red>health"
  player-not-found: "<red>That player does not exist or is not online!"
  pay-more-than-minimum: "<red>Cannot send if it results in you having less than {minimum} health!"
  pay-more-than-health: "<red>You're trying to pay more than what you have!"~~~~

👑 Commands

⚠️ 1 heart = 2 health points.


🧠 Developer API

Create heart-based gameplay systems:

Maven

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.github.jollyjoee</groupId>
    <artifactId>LifeEconomy</artifactId>
    <version>[1.0,)</version> <!-- always use newest >= 1.0 -->
    <scope>provided</scope>
</dependency>

Gradle

repositories {
    maven { url 'https://jitpack.io' }
}

dependencies {
    compileOnly 'com.github.jollyjoee:LifeEconomy:[1.0,)'
}

API Usage Example

import com.jolly.lifeEconomy.LifeEconomyAPI;
import com.jolly.lifeEconomy.LifeEconomy;
import org.bukkit.entity.Player;

public class Example {
  public static LifeEconomyAPI api;
  @Override
    public void onEnable() {
      if (!Bukkit.getPluginManager().isPluginEnabled("LifeEconomy")) {
            getLogger().severe("❌ LifeEconomy not found! Disabling plugin.");
            Bukkit.getPluginManager().disablePlugin(this);
            return;
        }
        LifeEconomy lifeEconomyPlugin = (LifeEconomy) getServer().getPluginManager().getPlugin("LifeEconomy");
        if (lifeEconomyPlugin == null) {
            getLogger().severe("LifeEconomy is not installed!");
            getServer().getPluginManager().disablePlugin(this);
            return;
        }
        api = lifeEconomyPlugin.getAPI();
        if (api == null) {
            getLogger().severe("Failed to get LifeEconomy API instance!");
            getServer().getPluginManager().disablePlugin(this);
            return;
        }
        getLogger().info("✅ Successfully hooked into LifeEconomy API!");
    }
}

Api Methods

// +1 heart and heal
api.giveHealth(player, 2.0, true);

// remove half a heart
api.takeHealth(player, 1.0);

// set exact health
api.setHealth(player, 40.0);

// get health
double health = api.getHealth(player)

🕹️ Perfect For


🔥 Why LifeEconomy?

Unlike typical lifesteal plugins, this is a true health-based economy system designed to expand — not imitate.

Competitive. Scarce. Grindable. Tradable. Heart wealth = power.

Let the blood economy rise. 🩸👑


⚙️ Installation Steps

  1. Download LifeEconomy
  2. Download PlaceholderAPI for Folia
  3. Install LifeEconomy.jar and PlaceholderAPI.jar into your plugins folder
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more