Перейти к содержимому
Mineforgian

BodyHealth - Locational Health & Damage

Simulate health per body part | highly customizable | scriptable effects | raytracing | API & Addons

Загрузки
3K
Подписчики
17
Обновлён
19 мая 2026 г.
Лицензия
Custom-License

Опубликован 12 марта 2025 г.

Image featuring a stylized, color-coded character model highlighting different body parts, an in-game health display, configuration files, scripting options, a raytracing combat scene, and a resource pack, with text emphasizing features like fine-tuned damage, PlaceholderAPI support, persistence through restarts, and full compatibility with all types of damage.Image saying About

BodyHealth - Health Management Per Body Part!

BodyHealth introduces a new way to handle player health
by managing damage and healing per body part.

Built for compatibility, it works well with plugins like
Realistic Survival, MythicMobs, ProjectKorra
and their custom damage sources

Demo Server:
showcase.breweryteam.dev

Image saying Features

Fine-Tuned Damage
Customize how different damage types
(fall, fire, drowning, etc.) affect specific body parts

In-Game Display
Integrates with PlaceholderAPI and BetterHud
for real-time body part health displays

Incorporates all factors
Fully supports armor, enchantments, potion effects,
and even attributes when calculating damage

Custom Effects
Script your own effects and specify exactly what
should happen under what circumstances

Raytracing
Uses raytracing for precision in determining which
body part is hit. For damage that isn't caused by entities,
vector calculations are used instead

Comprehensive config
You may even set different max health per body part
and have it depend on the players vanilla max health
Check it out here, the possibilities are endless!

API
Directly hook into BodyHealth with your own
plugin to further expand its functionality
(usage guide can be found here)

Addon System
Supports addons like this one that
directly integrate with BodyHealth
without 3rd party plugins

Plugin Hooks
Hooks into plugins like WorldGuard to
further enhance your experience using it

Performance
Safe to say this won't be the
plugin lagging your server

Top Code Quality
CodeFactor

Image saying Addons

Official
LocationalArmorAddon

Community
RealisticBodyHealthAddon


Have an addon to share?
Contact me to have it listed here

Image saying Commands

/bodyhealth reload
reloads the plugins configuration, including effects and language files

/bodyhealth heal [player] [body part]
heal a player (sets the health value of all affected body parts to 100%)

/bodyhealth get [player] [body part]
retrieve a player's health (in percent) for a specific body part, or all

/bodyhealth set [player] [body part]
set a player's health for a specific body part (or all if not specified)

/bodyhealth add [player] [body part]
add health to all parts or the given one for a given player or yourself

/bodyhealth data <save/dump/erase/move> [...]
control BodyHealth's DataManager, managing data in all storage types

/bodyhealth debug <dump/toggle> [...]
dump debug information, or toggle debug- or development mode in game

Image saying Permissions

bodyhealth.update-notify
notifications upon new updates

bodyhealth.reload
allows reloading the system

bodyhealth.heal
allows using the heal command

bodyhealth.get
allows using the get command

bodyhealth.set
allows using the set command

bodyhealth.add
allows using the add command

bodyhealth.data
allows using the data command

bodyhealth.debug
allows using the debug command

+ bypass permissions

Image saying Placeholders

BodyHealth works seamlessly with PlaceholderAPI
for detailed health placeholders per body part

%bodyhealth_health_%
(returns the current amount of health for a body part in percent)

%bodyhealth_health__rounded%
(same as the one above, just without decimal places)

%bodyhealth_state_%
(returns the current state of a body part)

Image saying Setup

Please have a look at our Setup Guide

Cant't update to 1.21 yet?
Check out BodyHealthLegacy

Image saying Setup

Ask questions, request new features or report bugs either
here or on our Discord server (click the icon below to join)

Discord Logo

Ченджлог

4.2.0Релиз26.1.1, 26.1.2, 26.2 · 19 мая 2026 г.

Added use-transient-modifiers, a new config option that, when enabled, uses attribute modifiers that are discarded when your server shuts down, so they can never persist.

Added ATTRIBUTE_MODIFIER, a new built-in effect for adding attribute modifiers to players.

Added more safety measures to ensure that attribute modifiers never stay, even when not transient.

Added apply-potion-effects-repeatedly, a new config option that, when enabled, applies potion effects from the POTION_EFFECT effect repeatedly, like a beacon would, instead of using infinite-duration effects.

Added a system that reliably detects world changes on Folia-based server software to apply HUD visibility correctly.

Added PREVENT_HOLD, a new effect that prevents players from holding items in a given hand.

Added many new settings related to health regeneration. You can now make part health regenerate separately from vanilla health, but in the same way, even draining hunger if that is what you want. Regenerating health in your sleep is now also supported.

Added new API methods for healing players with a precise amount and for checking whether a player is able to hold an item in a given hand.

Added a new subcommand, /bodyhealth addon <info/list/reload/enable/disable/load/unload> [...] for managing addons while the server is running.

Added a new optional argument to the SOUND effect that allows you to make the sound global, so all nearby players can hear your heartbeat or whatever you do with it.

Added PARTICLE, a new effect that allows you to spawn particles, like red dust around your hand to make it look like it's bleeding.

Added a new wiki page that explains every effect in more detail: https://github.com/Mitality/BodyHealth/wiki/Effects

Added CHANCE, a new effect that allows you to trigger effects based on chance. It also features an optional key argument that allows you to group multiple CHANCE effects together, executing multiple effects based on the same chance/roll (either all effects in a group are run, or none).

Added BODYHEALTH, a new effect that allows you to modify body health values for the affected player, or even for all online players, allowing you to sync everyone's body health.

Improved AddonManager to show a stacktrace when enabling an addon fails.

Improved accuracy of damaged-by-block calculations. BodyHealth now correctly determines whether both of your feet are touching a damaging block, or just one.

Improved the primary config file's formatting to be more aesthetically pleasing and easier to comprehend.

Improved debug messaging to only log important and non-verbose messages in non-verbose mode.

Fixed instructions for ItemsAdder users showing incorrect paths in config.yml.

Fixed custom 3rd party effects not registering.

Fixed BetterHud sometimes being reloaded twice by BodyHealth.

Fixed DELAYED and REPEATING effects not working on Folia-based server software.

Fixed resource pack being shown as incompatible on recent Minecraft versions.

Fixed a few inaccuracies and code style related issues.

4.1.0Релиз1.21.9, 1.21.10, 1.21.11 · 6 января 2026 г.
  • Added a raytracing.fix-rotation config option to fix imprecise mob rotations that caused raytracing to fail sometimes

  • Added a lenient-movement-restrictions config option (disabled by default), that makes the PREVENT_WALK and PREVENT_JUMP effects allow some mobility instead of completely preventing movement

  • Added a hide-potion-effects config option that disables ambient, particles and the effect icon for effects applied by BodyHealth

  • Added defaults for poison damage to the body-damage config section

  • Added more debug information for bypassing damage and regeneration to resolve permission problems more easily

  • Added heal-on-respawn and heal-on-full-health as new config options, controlling body part regeneration

  • Added a display.betterhud.enabled-only config option that only shows BodyHealth's HUD in worlds/regions where BodyHealth is enabled

  • Fixed BodyHealth not taking BetterHud's build-folder-location and pack-type config options into account

  • Fixed disabling the display.betterhud.as-default config option having no effect

  • Fixed a small formatting issue with debug messages

4.0.0Релиз1.21.9, 1.21.10, 1.21.11 · 15 октября 2025 г.

Here we go again, 5000 lines added, 500 removed...

Official addons will be updated to work with this version right after this is released.

BodyHealth v4.0.0

Renamed 'BODY' (body part) to 'TORSO'. Your config, language files, the selected storage, and BetterHud's configuration will automatically be migrated to reflect that change, but if you are using body parts anywhere externally, you need to migrate that manually

Retextured all HUD elements of the 'DAMAGED' state to match the quality standard imposed by the four other states

Added Folia support! BetterHud should already work on Folia as-is, for PlaceholderAPI, you will need to use a fork that supports Folia, until the main version does: https://github.com/Folia-Inquisitors/PlaceholderAPI-Folia/releases/tag/Tango
NOTE: On Folia, it is not possible to reliably remove all effects from a player on shutdown, because the global thread is no longer available. Instead, we store all currently active effects per player and remove them the next time the player joins. On PaperMC and its forks, you can toggle this behavior with a new remove-effects-on-shutdown setting in config.yml

Added an optional 'enabled' property to permission overrides that allows you to disable them and disabled the default overrides

Added a data command ('/bh data save/dump/erase/move') that allows for asynchronous data management and easy storage type changes

Added HUD scaling! You can now scale BodyHealth's HUD with a new config option at display.betterhud.position.scale (default is 1.5)

Added a debug command that allows toggling both debug modes, as well as dumping debug information that could be useful for diagnosing issues

Added a translated variant of the state placeholder ('%bodyhealth_state__translated%') outputs new translations that may contain other placeholders and formatting

Improved the default body-damage configuration to not apply the damage you take when dying to all of your body parts

Improved BodyHealth's UpdateChecker to show name and current version in "You are running the latest version" messages

Improved the default effect configuration further, aiming to showcase all effects while still making sense in a survival environment

Improved tips at the end of config.yml to include instructions on how to merge BetterHud's pack with ItemsAdder for those who need that

Improved Debug logging in AddonManager so you better understand what went wrong with an addon, if problems with one arise

Fixed default prefix missing a formatting-reset at the end

Fixed the UpdateChecker's first empty line not being shown in some consoles

Fixed BodyHealth's calculations not considering the change in head height caused by sneaking

Fixed some parts of the plugin still not using the by now no longer new, but still robust error logging logic

Fixed some effects not being listed as ongoing, despite them being active (didn't matter before v4)

Fixed the Japanese language translation (submitted by jekyllh, thank you!)

Fixed many other small inaccuracies and updated many dependencies

For Developers

Renamed BodyPart.BODY to BodyPart.TORSO

Renamed BodyHealthAddon#onAddonPreEnable to BodyHealthAddon#onAddonLoad (it is now called onLoad)

Renamed BodyHealthAddon#onBodyHealthReload to BodyHealthAddon#onAddonReload

Fixed missing @NotNull annotations in BodyPartHealthChangeEvent

3.0.0Релиз1.21.8, 1.21.9, 1.21.10 · 8 августа 2025 г.

Alright, buckle up...

BodyHealth v3.0.0

New official addon: LocationalArmorAddon (BodyHealth v3.0.0+, Minecraft v1.21.3+)

Added a %BodyPart% placeholder to the COMMAND and COMMAND_UNDO effects that translates into the BodyPart that caused the effect, so you can copy/paste the effect onto different parts

Added a new update checker that checks for updates on Modrinth, works with dev versions and prereleases, and formats update notifications a bit nicer

Added a new config option that allows you to chose whether to check for development versions and prereleases, or full releases only

Added permission overrides to the body-health and body-damage configuration sections (examples are added to your config)

Added a %bodyhealth_enabled% PAPI placeholder that returns true when BodyHealth is enabled for a player

Added more robust error logging for throwables and error logging for failing math expressions

Added new meta effects (DELAYED & REPEATING) to execute effects delayed and/or repeating

Improved the default effect config to still use all effects there are, but while actually making sense in a survival environment, so it can now be used without changes (check it out here)

Improved MySQL and SQLite storage types to use HikariCP for extra performance and stability

Improved various methods to be thread safe when used by multiple plugins/addons at the same time

Improved debug logging to not only include the calling class, but now also the line of code

Improved various comments within the plugin's source code and its configuration file

Improved parsing of the body-damage section to warn users in case of invalid entries

Improved meta effects to allow you to chain them together

Fixed missing javadoc params in the BodyHealth and EffectHandler classes

Fixed en-us being set as the default language, despite the file being named en.yml

Fixed attribute modifiers being expected in one specific format, causing errors with other formats present

Updated the following wiki entries: Setup Guide, API Usage, Addons

For Developers

Events

Added causing/underlying event to BodyPartHealthChangeEvent (retrieve with BodyPartHealthChangeEvent#getCause, can optionally be set via API)

Fixed health value in BodyPartHealthChangeEvent#setNewHealth being set as an int instead of double

Effects

Added methods that let you register your own BodyHealthEffects via the API or directly within an addon's main class (docs)

API

Added way more methods to the BodyHealthAPI class to ensure you don't have to touch anything else in most cases (check it out here)

Changed BodyHealthAPI#getInstance to BodyHealthAPI#getBodyHealthPlugin and BodyHealthAPI#reloadSystem to BodyHealthAPI#reloadBodyHealthPlugin

Changed BodyHealthAPI to be object based, retrievable with BodyHealthAPI#getInstance

Addons

Overhauled the AddonFileManager class, simplifying its use, adding javadoc comments and adding a new method that lets you update yaml configurations with BodyHealth's config updater

Overhauled the AddonManager class, also simplifying it, adding javadoc comments and adding logging that's up to standard with the rest of the plugin

Added AddonDebug#logRaw for you to log something regardless of debug or dev mode being enabled

Improved addon debug methods to also include logging for throwables and the calling line of code

Fixed debug messages in the AddonManager class not logging enough information to tell what addon caused something

tl;dr:

This update includes a lot (and I mean A LOT) of things.
If you're a developer using the API and/or addon system, prepare for breaking changes and read at least the "For Developers" section.
Casual users should be fine, as the plugin's config is updated automatically.

Enjoy!

2.3.6Релиз1.21.6, 1.21.7, 1.21.8 · 30 июня 2025 г.

HotFix for BetterHud 1.13.0+

Needed fix for users on 1.21.6+

2.3.5Релиз1.21.3, 1.21.4, 1.21.5 · 29 июня 2025 г.
  • Added a new config option that allows using the /kill command to kill players with the KILL_PLAYER effect as that's more consistent across different server software than using the API

  • Added meta effects WHEN_DAMAGED & WHEN_HEALED. These allow triggering effects only when conditions are met due to the player taking damage or regenerating. For example, when_damaged/sound/minecraft:entity.bogged.hurt at effects.BODY.INTERMEDIATE would trigger the sound when the state of your body changes from NEARLYFULL to INTERMEDIATE (damage), but NOT when it changes from DAMAGED to INTERMEDIATE (regeneration).

  • Categorized effects into persistent, one-time and meta effects

  • Improved effect keyword matching to allow case-insensitive identifiers

  • Updated validation methods to reflect the above

  • Corrected config comments

2.3.4Релиз1.21.3, 1.21.4, 1.21.5 · 9 июня 2025 г.

Advanced HUD positioning and more!

Added a new positioning option that allows you to specify an anchor point for BodyHealth's HUD (e.g. BOTTOM_LEFT). The HUD's position will always be relative to that anchor point, no matter the screen ratio and resolution, and the correct offsets are automatically calculated and applied for you. The anchor point therefore effectively changes the HUD's default position to one of nine possible places from where you can still move it in all directions with the offset values from the last update.

Added a new option in the display section that automatically reloads BetterHud together with BodyHealth when enabled to instantly apply any changes there.

Improved the PREVENT_JUMP and PREVENT_WALK effects to handle their attribute modifiers more consistently and hopefully never leave them applied under any circumstances ever again due to other plugins interfering with them.

Sidenote: When repositioning the HUD, always adjust the anchor point first and then use the offsets from last update if needed.

2.3.3Релиз1.21.3, 1.21.4, 1.21.5 · 8 июня 2025 г.

A few things...

  • Added SOUND effect to play sounds to only the target player
  • Added an option to disable BetterHud's entity popup feature
  • Added customizable offsets to BodyHealth's HUD (can be found in a new "position" category at display.betterhud)
  • Added yet another safety feature for attribute modifiers to ensure they are removed correctly in any case
  • Updated the effect config's default values to include the new SOUND effect and to match the newest version's syntax
  • Improved the three display.betterhud.disable options to re-enable the respective features when set to false
  • Improved the display.betterhud.as-default option to be reversible too
  • Fixed a few typos here and there (mostly internal + debug messages)
  • Removed fix-height option in favor of the new offsets

Комментарии

Загружаем…