ElementEndow – Elemental System Library for Minecraft Mods
ElementEndow is a lightweight, data-driven library mod that introduces a flexible elemental attribute and reaction system to Minecraft. It allows other mods to easily add custom elements, define elemental reactions, create combinations, and apply temporary elemental mounts — all via data packs and a clean Java API.
https://github.com/Neferge466/Element-Endow/wiki/en_us
🔧 Key Features:
- Register custom elements via
config/element_endow_elements.properties
- Define elemental reactions (e.g., Fire + Water → Steam) with conditions, damage modifiers, status effects, and mounts
- Create persistent combinations that grant buffs when specific elements coexist
- Apply temporary elemental mounts with stacking behaviors (add, refresh, max, etc.)
- Full data pack support – no code required for basic integration
- Developer-friendly API for querying, modifying, and triggering elemental logic
📦 Simple Example Data Pack (reactions/fire_water.json):
{
"id": "fire_water_steam",
"elementA": "element_endow:fire",
"elementB": "element_endow:water",
"attackEntry": {
"extraDamage": 3.0,
"targetEffects": [{"effect": "minecraft:slowness", "duration": 100}]
},
"mountData": {
"elementId": "element_endow:steam",
"amount": 10.0,
"duration": 200
}
}
💻 API Highlights:
IElementSystem system = ElementSystemAPI.getElementSystem();
system.setElementValue(player, "mymod:lightning", 25.0);
reactionSystem.processAttackReaction(attacker, target, damage);
combinationSystem.checkAndApplyCombinations(entity);
Requires Minecraft 1.20.1 | Forge