Tags
Creators
Details
1.1.1
Compatibility
Changes
π₯Legendary Mageπ₯ v1.1.1 β THE ELEMENTS REMEMBER
"The fire no longer forgets who lit it."
"The frost remembers the hand that cast it."
"And the holy mark... the holy mark no longer lives in the void."
"It lives in you."
π¬ THE ELEMENTS HAVE LEARNED TO REMEMBER
In the old code, elemental reactions were ghosts. They happened, then vanished into static voids, leaving no trace of who summoned them, no memory of when they might strike again.
No longer.
π₯ WHAT'S NEW
βοΈ ElementReactionManager β Completely Rewritten
The old system: Buffs applied blindly. Reactions triggered without context. The elements were deaf and dumb.
The new system: Every flame knows its master. Every frostbite carries a signature.
| Before | After |
|---|---|
| Static, stateless reactions | Stateful reactions tied to caster identity |
| Buffs applied without tracking | ElementMarkData records who cast what, and when |
| Client-side guesswork | ElementMarkSyncHandler keeps every client in perfect sync |
| Reactions fading into the void | Persistent mechanics that respect cooldowns and continuity |
π₯ "I cast a fireball. Three minutes later, my ally's fireball detonates on the same target β and the reaction triggers, because the system remembers I was there first."
π§ ElementMarkData β The Memory of Magic
A new data structure that attaches to entities like a magical scar.
| What It Tracks | Why It Matters |
|---|---|
| Caster Identity | Your fire and your friend's fire are no longer the same fire |
| Cooldown Timers | No more spamming the same reaction into infinity |
| Elemental Residue | The target carries the mark until it expires or is consumed |
π§ "The mark is not a debuff. It is a memory the target cannot shake."
π ElementMarkSyncHandler β One Truth, Many Eyes
Client-server sync for elemental states. No more desynced particles. No more phantom marks.
What the server knows, the client sees. Instantly. Reliably. Every time.
β¨ HolyMarkEffect β From Static Void to Living NBT
The Problem: Holy marks were stored in static maps. Server restart? Gone. Dimension change? Gone. They were mayflies.
The Solution: Holy marks now live in entity NBT. They persist. They travel. They survive.
| Storage | Persistence | Survival |
|---|---|---|
| Old: Static cleanup logic | Server restart = death | Dimension hop = death |
| New: Entity NBT | Survives restarts | Travels with entity |
β¨ "The holy light no longer flickers when you turn your back. It is written into the target's soul."
π΅ "When You Look At Me" β A New Disc
A music disc has been pressed. It can be crafted. It can be played. It can be tagged.
| Feature | Detail |
|---|---|
| Item | Music Disc β "When You Look At Me" |
| Acquisition | Crafting recipe implemented |
| Recognition | Added to Minecraft item tags for proper integration |
π΅ "The jukebox now knows this disc by name. The game no longer shrugs and calls it 'unknown.'"
π PATCH NOTES AT A GLANCE
+ ElementReactionManager fully rewritten (stateful reactions, caster tracking)
+ ElementMarkData introduced (caster records, cooldown management)
+ ElementMarkSyncHandler added (client-server elemental sync)
+ HolyMarkEffect migrated to entity NBT (persistent, survives restarts/dimensions)
+ New music disc: "When You Look At Me" (craftable, tagged)
+ Music disc added to Minecraft item tags
- Removed static cleanup logic for HolyMarkEffect
- Eliminated static void storage for elemental marks
β οΈ FOR MODPACK AUTHORS
If you were hooking into the old static HolyMark maps, those hooks are dead. The data now lives in entity NBT under the Legendary Mage namespace. Update your integrations.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:2nmJDjSm:fAXfdYTy"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:2nmJDjSm:fAXfdYTy"
}![[ISS LM]Legendary Mage](https://cdn.modrinth.com/data/2nmJDjSm/c491e874bf893bfd40bb358f2441842d67abef6b_96.webp)

