File Details
Iron's Botany 1.6.0 (Forge 1.20.1)
- R
- Apr 25, 2026
- 541.66 KB
- 449
- 1.20.1
- Forge
File Name
ironsbotany-1.6.0.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
[1.6.0] - In Development
Endgame content layer. Adds the four major Botany progression items, three new curios, and revives the datagen pipeline so future asset additions don't accumulate hand-written JSON debt.
Added — Phase 6.1: Datagen revival
IBDatagen+ provider stack (IBItemModelProvider,IBBlockStateProvider,IBLanguageProvider,IBLootTableProvider,IBRecipeProvider) — wired toGatherDataEvent. The datagen run config inbuild.gradleis uncommented;./gradlew runDataregenerates JSON undersrc/generated/resources/.- Botania custom-recipe JSONs (
petal_apothecary,runic_altar,terra_plate,elven_trade) and Patchouli book entries stay hand-written by design.
Added — Phase 6.2: Manasteel Staff
ManasteelStaffItem— extends ISSStaffItemwith a customMANASTEEL_TIER(damage 2.0, speed -3.0) plus fourAttributeContainers: +20 Max Mana, +5% Cast Time Reduction, +10% Botany Spell Power, +0.05 Mana Efficiency.- Mana network: 50,000-unit
MANA_ITEMcapability viaIBCapabilityHandler. - Crafting: shaped recipe (Manasteel + Mana Pearl + Sticks).
Added — Phase 6.3: Spellbooks
TerrasteelSpellbookItem— 12-slot Rare-tierSimpleAttributeSpellBook. Stats: +200 Max Mana, +15% Botany Spell Power, +10% Nature Spell Power, +0.10 Mana Efficiency. Mana network: 200,000-unit capacity.ArcaneCodexItem— 14-slot Epic-tier endgame spellbook. Stats: +300 Max Mana, +20% Cooldown Reduction, +15% Botany Spell Power, +10% Spell Power (all schools), +0.15 Mana Efficiency. Mana network: 500,000-unit capacity. Fire-resistant.- Crafting: Terrasteel Spellbook is a vanilla shaped recipe (
#botania:terrasteel_ingotssurrounding any spellbook). Arcane Codex is a Terra Plate recipe (500,000 mana- Terrasteel + Terrasteel Spellbook + Mana Pearl + Mana Diamond + Gaia Ingot).
Added — Phase 6.4: Elementium Scroll
ElementiumScrollItem— extends ISSScroll, overridesremoveScrollAfterCastto skip consumption whenManaBridgeManagerpaid the cost from Botania mana that tick. Falls back to vanilla single-use behavior if no Botania mana is available.ManaBridgeManager.resolveCost— adds an Elementium-scroll branch that checks for the item in either hand onCastSource.SCROLL, chargesissCost × MANA_CONVERSION_RATIOBotania mana, marks the routed tag, and returnsbotaniaOnlyso the scroll's override sees the marker.- Crafting: Alfheim elven trade (any ISS scroll + Elementium + Pixie Dust).
Added — Phase 6.5: Three new curios
ManaReservoirRingItem— ring slot. +100 Max Mana attribute. Every 20 ticks, while ISS mana is below 50%, drains 20 Botania mana from any source in the wearer's inventory and adds 1 ISS mana. Doubles as a 200,000-unit Botania mana store viaIBCapabilityHandler.DaybloomAmuletItem— necklace slot. Daytime-conditional bonuses: +15% Nature Spell Power and +5% Cast Time Reduction while in direct sunlight. Implemented as transient UUID-keyed attribute modifiers added/ removed incurioTickbased onisDay() && canSeeSky(pos).GaiasBlessingItem— necklace slot, Epic. While worn, Botany-school spells gain +1 effective level viaModifySpellLevelEvent. Each cast drains 100,000 mana from aManaPoolwithin 16 blocks; if no pool can pay, the bonus fizzles silently.CurioEffectsHandler— Forge-bus subscriber that wires Gaia's Blessing into the spell-level event.- Crafting: Mana Reservoir Ring is Petal Apothecary; Daybloom Amulet is Petal Apothecary; Gaia's Blessing is Terra Plate (200,000 mana + Gaia Spirit + Daybloom Amulet + Pixie Dust + Dragonstone).
- Curios slot tags updated:
ring.jsonadds Mana Reservoir Ring; newnecklace.jsonregisters Daybloom Amulet and Gaia's Blessing.
Added — Phase 6.6: Patchouli + release prep
- 5 new Patchouli entries under
equipment/(manasteel_staff, terrasteel_spellbook, arcane_codex, elementium_scroll, new_curios). - Version bump to 1.6.0 in
build.gradle.
[1.5.0] - Released
Foundation release implementing Phases 1–3 of the v2.0 enhancement roadmap. Adds the centralized mana bridge, custom Botany school, recipe content, and the first mana-network blocks.
Phase 1: Foundation Hardening
- Added
ManaBridgeManager(com.ironsbotany.common.bridge) — single entry point for spell cost routing. Handles all fiveManaUnificationModevalues with a singleresolveCost(player, spell, level, source)call, returningManaResolutionResult(issCharged, botaniaCharged, ok). - Added
CostRoutedTag— tick-scoped idempotency tag stored on the player's persistent data, preventing double-billing when bothSpellPreCastEventandChangeManaEventfire for the same cast. Reads ANS's mirror tag to defer cleanly. - Added
SpellEventHandlers— explicitEventPriority.LOWsubscribers for ISS spell events. Yields to Ars 'n Spells (which runs atNORMAL) and to KubeJS scripts (HIGH/HIGHEST). - Added
ManaPriorityChain+ManaSourceenum — config-driven cross-bridge resource ordering (default["botania", "ars", "iss"]). Configured via the newMANA_PRIORITY_CHAINTOML key. - Added
ArsNSpellsCompat.shouldDeferRouting()— IB cleanly defers routing when ANS is inARS_PRIMARYorHYBRIDmode. - Added public API package at
com.ironsbotany.api.*:IronsBotanyApi— stable entry point for downstream addonsIManaSource— SPI for cross-bridge mana source contractBotanySchoolFlowerRegistry— registration surface for school-themed flowers
- Added
BotanySpellConfig— per-spellSpellConfigParameters (botania_mana_cost,dual_cost_enabled) viaRegisterConfigParametersEvent. Datapack-overridable per spell atdata/<namespace>/spell_configs/<spell_id>.json. - Added
/irons_botany reload— server command (perm 2) that flushes runtime caches. - Added mixin JSON skeleton (
ironsbotany.mixins.json) for future client-side HUD work.
Phase 2: Content & School
- Added Botany SchoolType (
IBSchools.BOTANY) — replaces the earlier shortcut of piggybacking on Nature. Wires:- Focus tag
#ironsbotany:focus/botany(Mana Pearl, Pixie Dust, Dragonstone) - Attributes
BOTANY_SPELL_POWER,BOTANY_MAGIC_RESIST - Damage type
ironsbotany:botany(data-driven JSON atdata/ironsbotany/damage_type/botany.json)
- Focus tag
- Changed all 9 existing Botanical spells now return
IBSchools.BOTANY.get()fromgetSchoolType(). - Added Mana Inks (
MINOR_MANA_INK,GREATER_MANA_INK,PRIME_MANA_INK) — petal apothecary recipes that craft tiered scroll inks. - Added 8 School Power Orbs (Fire, Frost, Lightning, Holy, Ender, Blood, Nature, Eldritch), crafted at the Runic Altar with the matching Botania rune.
- Added 3 Alfheim Portal trades — Manasteel→Elementium spellblade, Livingwood→Dreamwood scepter, Greater→Prime ink discount.
- Added Gaia Guardian II loot modifier — Forge GLM (
AddItemLootModifier+IBLootModifiers) that adds Legendary Ink to the hardmode loot table without overwriting Botania's JSON. - Added Lexica Botania Patchouli entry at
assets/botania/patchouli_books/lexicon/en_us/entries/ironsbotany/index.json— five-page guide covering Iron's Botany content from inside Botania's own book.
Phase 3: Mana Network Citizenship
- Added
ItemManaStorage+ItemManaCapabilityProvider— per-stackManaItemcapability provider, attached viaIBCapabilityHandler.onAttachItemCapabilities. Iron's Botany weapons and curios now appear in the Botania mana HUD, accept Spark deposits, and are drained byManaItemHandler.requestManaalongside Mana Tablets. - Added Arcane Mana Altar (
ArcaneManaAltarBlock+ArcaneManaAltarBlockEntity) — block entity implementingManaPool,ManaReceiver, andSparkAttachablesimultaneously. Default capacity 1,000,000 mana. Drainable by nearby players during cast resolution viaManaBridgeManager.tryDrainFromNearbyAltar. - Added
ManaBridgeManager.tryDrainFromNearbyAltar(player, amount, radius)— bridge helper that scans for an Arcane Mana Altar within range and drains from it before falling through to the player's tablets.
Changed
AbstractBotanicalSpell.onCast— removed inline mana routing (the bridge handles it before this method runs). Cost handling is now centralized inManaBridgeManager.AbstractBotanicalSpell.getBotaniaManaCost(level)— now consults thebotania_mana_costSpellConfigParameter viaBotanySpellConfig.resolveBotaniaCostand falls back to the constructor-supplied ladder.
Deferred to v1.6 / v2.0
The following enhancement-doc items are scoped for follow-up releases:
- v1.6: Manasteel Staff, Terrasteel Spellbook, Elementium Scroll (ISS spellbook
subclasses); 3 new curios (Mana Reservoir Ring, Daybloom Amulet, Gaia's Blessing);
ArcaneCodexItem+ Terra Plate recipe; datagen revival. - v2.0: Six ISS-school generating flowers (Emberlily, Frostbud, Stormbloom,
Sanctuary Lily, Voidpetal, Bloodweed); Verdant Caster functional flower;
Spreader-fired spell bursts; Corporea Scroll Rack + spell request matcher;
performance hygiene with
FakePlayerpool; KubeJS surface (irons_botany_js).