A mod called Heartcore Mode has been created; it is similar to Mediumcore, features many new additions and bug fixes, and works with version 1.21.1! (under review…)
Problem
The original Mediumcore in onLivingDeath uses player.getMaxHealth(), which INCLUDES modifiers from external sources (rings, armor, etc.).
Example with a +20 HP ring:
- maxHealth = 40 (20 base + 20 ring)
- clippedHealth = clip(40 - 2, 6, 20) = 20 (clamped to maxPlayerHealth!)
- healthModifiedBy = 0 + (20 - 40) = -20!
- After respawn: maxHealth = 20 + 0 + (-20) = 0 HP → the player gains 1 HP.
Solution
Introduce BASE_HEALTH_TAG to store the "pure" base health, which is independent of external modifiers.

