AoA Core
Modby WellRareSteak
Progression, team, and authority layer for the AoA modpack. NarrativeEvent bus, stage-guard recipe/loot conditions, and more in-depth pack layering not possible by kubejs or other scripting mods. All future mods made by me will use this as a library mod
Type
Mod
CurseForge Downloads
2,930
CurseForge ID
1553962
Last Updated
Jul 13, 2026
Description
AoA Core is the foundational layer of the pack's narrative control plane. It introduces a typed NarrativeEvent system on top of NeoForge.EVENT_BUS, a PlayerLedger persisted via NeoForge AttachmentType, the Soul Pact team item, the Unidentified Mineral ore-vision item, the Investiture Altar block, and stage-held conditions for recipes and loot.
The contract surface is two-phase: NarrativeEvent.Pre is cancellable for validation (witness checks, cooldowns), and NarrativeEvent.Post fires the consequences (ledger writes, downstream stage grants, ore reveal logic). Persistence survives death without copy() boilerplate. Both AStages and Curios are optional — when AStages is present, stage grants flow through AStagesBridge; when Curios is present, the Soul Pact occupies its slot. With either missing, the bus and ledger still function and the affected features degrade rather than crash.
v0.1.0 ships:
- NarrativeEvent bus — NarrativeEvent.Pre/Post, NarrativeDispatcher, NarrativeEventType builder, NarrativeEventCategory, two registered events out of the box (aoacore:test_event, aoacore:investiture) and a NarrativeDebugListener for verifying dispatch end-to-end
- Witness Ledger — PlayerLedger AttachmentType, LedgerEntry and IndexEntry records, LedgerEventType + LedgerRole, immutable LedgerAPI for read access, single-entry-point LedgerWriter
- Team layer — AoaTeam, AoaPlayerRecord, AoaTeamEvents
- Soul Pact item + SoulPactScreen management GUI (registered through AoaCoreMenuTypes)
- Unidentified Mineral item + OreVisionEvents + RestrictedOreIndex for substitution and reveal logic
- Investiture Altar block (com.aoa.core.world.InvestitureAltarBlock) registered through AoaCoreBlocks
- aoacore:stage_held recipe condition + matching loot condition (StageHeldRecipeCondition, StageHeldLootCondition)
- AoaHotfix SPI interface + HotfixRegistry for service-loader-discovered downstream mods
- AStagesBridge — active when AStages is loaded, no-op otherwise
- Commands via AoaCoreCommands — narrative event dispatch with grant_personal / grant_team, event lookup by display_name / event_name
Dependencies:
- NeoForge [21.1.228,) — required
- Minecraft [1.21.1, 1.21.2) — required
- AStages [2.0.3,) — optional (stage grant bridge; mod functions without it)
- Curios [9.5.1,) — optional (Soul Pact slot binding)
License: All Rights Reserved.
Scope: Built specifically for the Ascension of Ages modpack. Registered narrative event types and the Investiture altar are pack-canon. Not designed for general-purpose reuse.
Similar Mods
Boom!
Adds throwable bombs.
pv-addon-flashback
Compatibility add-on for Plasmo Voice and Flashback that allows you to record voice chat with Flashback.
Deeper and Slimier
A Splendid Slimes addon that adds a Deeper and Darker inpired slime
Flatter Entities
Makes entities render in 2D
Corpse Retriever
Adds a command to retrieve lost corpses.
Random Enchants 2
Enchantments ideas out of a random guy's head