HPByLevel
Adjust player HP by level ranges from config
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
HPByLevel

HPByLevel is a lightweight, customizable Spigot plugin that dynamically adjusts a player's maximum health based on their current experience level. All level ranges and HP values are fully configurable via config.yml
Features - Dynamically adjusts max health as a player gains or loses levels - Supports configurable level ranges (e.g., 0-4, 5-9, 30, etc.) - Automatically caps current health if it exceeds the new maximum - Includes commands for: > - Reloading the config without restarting > - Displaying the active HP level configuration - Includes permission support for both players and admins - Safe validation: Config errors are caught and logged (invalid configs will not be applied)
Commands - /hpbl reload > - Reloads the config and reapplies HP hpbl.command.reload or hpbl.admin - /hpbl info > - Shows the current HP level settings hpbl.command.info
Permissions - hpbl.command.info > - Allows use of /hpbl info > - Default : true - hpbl.command.reload > - Allows use of /hpbl reload > - Default : op - hpbl.admin > - Full access to admin commands > - Default : op
Dev Notes - You must define the levels section in config.yml; if it's missing or invalid, the plugin will not apply changes and will log an error. - If /hpbl reload is used with a bad config (bad syntax, missing keys, invalid formats), the system will not overwrite the previous working state. - You can safely modify and reload config.yml in production without restarting the server. - Plugin uses Bukkit’s built-in Attribute system — compatible with all standard Minecraft entities.
Installation 1. Download HPByLevel.jar 2. Place into your server's /plugins directory 3. Start or reload the server 4. Edit config.yml to define your desired level-to-HP mappings 5. Use /hpbl reload to apply changes without restarting