HomeJavaModsMana Attributes
Mana Attributes
ModsJava

Mana Attributes

by TheRedBrain · on Modrinth

Which Minecraft do you have?

Every version of the game needs its own build. Pick yours, then download — the wrong build installs fine and then does nothing in the game. This mod is built for Fabric only.

⬇ Download for 26.1–26.1.2⬇ Download for 1.21.11⬇ Download for 1.21.10⬇ Download for 1.21.1⬇ Download for 1.21⬇ Download for 1.20.1
I don't know my version or loader
Open the Minecraft launcher and look at the profile you play on — it names both, like fabric-loader-1.21.4. The version also shows in the bottom-right corner of the game's main menu.
No loader in the profile name? Then it's plain Minecraft, and these mods won't run — you need Fabric or NeoForge installed first.

Mana Attributes

This API adds a mana system controlled by entity attributes.

Default implementation

LivingEntities can have up to manaattributes:max_mana amounts of mana. Mana is regenerated by manaattributes:mana_regeneration every manaattributes:mana_tick_threshold ticks.

When mana is reduced, regeneration is stopped for manaattributes:mana_regeneration_delay_threshold ticks.

When mana is <= 0, regeneration is stopped for manaattributes:depleted_mana_regeneration_delay_threshold ticks.

manaattributes:reserved_mana describes the percentage amount of maximum mana that is currently not available.

Default attribute values

All default values for players can be set in the server config.

Customization

The client config allows customizing the HUD element.

Using the mana system

Java

Casting a "LivingEntity" to the "ManaUsingEntity" interface gives access to all relevant methods.

Data packs

Mana Attributes implements several data driven methods to interact with the current mana value of an entity.

Example

This enchantment reduces mana of the attacker by 2, as long as the attacker has at least 5 mana:

{
	"anvil_cost": 1,
	"description": {
		"translate": "enchantment.manaattributes.test"
	},
	"effects": {
		"minecraft:post_attack": [
			{
				"affected": "attacker",
				"effect": {
					"type": "manaattributes:add_mana",
					"amount": {
						"type": "minecraft:linear",
						"base": -2.0,
						"per_level_above_first": -2.0
					}
				},
				"enchanted": "attacker",
				"requirements": {
					"condition": "minecraft:entity_properties",
					"entity": "direct_attacker",
					"predicate": {
						"type_specific": {
							"type": "manaattributes:mana_using_entity",
							"mana_amount": {
								"min": 5.0
							}
						}
					}
				}
			}
		]
	},
	"max_cost": {
		"base": 25,
		"per_level_above_first": 8
	},
	"max_level": 1,
	"min_cost": {
		"base": 5,
		"per_level_above_first": 8
	},
	"slots": [
		"hand"
	],
	"supported_items": "#minecraft:swords",
	"weight": 5
}
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