Skip to main content

Dynamic Registries

The table below lists the mod's 43 datapack registries. In the field tables, "Default" is the value used when a field is omitted, and "Required" means loading fails without it.

Recipes are not in this table. The recipe pages that go through the vanilla RecipeManager sit in the Recipes group below: alchemy recipes (mxt:alchemy), spirit crafting (mxt:spirit_shaped / mxt:spirit_shapeless) and talisman drawing (mxt:talisman_drawing). Their JSON goes in data/<namespace>/recipe/, never in mxt/<recipe name>/; they are not registries either, so /reload reloads them. File location, and how to sort JSON into subdirectories by category, is on the Datapack Development Overview.

Refilling a brush is not a recipe. It is the vanilla bundle's click: with the brush on the cursor, click a stack of pigment, see mxt:talisman_drawing.

RegistryDirectoryPurpose
resourcesaturn/resourceEntity resources such as cultivation progress, spirit power and stamina, plus inline resource bars (registry id saturn:resource).
artifactmxt/artifactArtifacts: which existing items they claim, how much of each aura they store, and which abilities they offer.
auramxt/auraAn aura definition for one value: element marks, the realm chain entry, regeneration and conversion.
realm_stagemxt/realm_stageLinear realm chains and breakthrough.
elementmxt/elementElement relations and counter multipliers: overcomes, adapted_to, the claimed damage types and the display colour.
element_reactionmxt/element_reactionThe reaction fired once element accumulation meets its requirement.
spirit_rootmxt/spirit_rootA spirit root bound to one or more elements: cultivation multiplier, affinity multiplier, granted abilities and exclusivity.
physiquemxt/physiquePhysique bonuses independent of elements: vanilla attributes, granted abilities and damage multipliers.
abilitysaturn/abilityActive, passive and triggered abilities (registry id saturn:ability).
ability_affinitymxt/ability_affinityElement affinity of abilities: which elements, and how several matching roots combine; it does not live in the ability definition.
cursemxt/curseCurse definitions and duration types that several modules can reference.
forging_methodmxt/forging_methodA single forging strike method.
forging_blueprintmxt/forging_blueprintForging targets and quality settlement.
techniquemxt/techniqueCultivation technique definitions: learnable, granting abilities and cultivation modifiers by progression level.
progressionmxt/progressionOne level of a progression chain.
cultivationmxt/cultivationOne cultivation routine: which ambient aura it absorbs, what it does every tick and on a tick that settles, and what it costs and yields.
spirit_herbmxt/spirit_herbSpirit herb metadata for existing items.
medicinal_propertymxt/medicinal_propertyMedicinal identities: the identity of one medicinal effect.
alchemy_furnacemxt/alchemy_furnaceFurnace specifications: slots, per-batch capacity and cooling rate.
alchemy_wall_materialmxt/alchemy_wall_materialWall materials: the temperature limit of one casing block.
formationmxt/formationFormation lifecycle and aura overrides.
formation_shapemxt/formation_shapeThe figure a formation draws: circles and polylines, and the paint, density and growth window each stroke carries.
tribulationmxt/tribulationA tribulation: its start gate, timeline beats, and what happens on success or failure.
creature_profilemxt/creature_profileCreature attribute profiles: matching, gates, the inner core, and one action run when the profile is written.
contract_typemxt/contract_typeContract lifecycle: conditions on both sides, four actions on the beast side plus three and a grant on the owner side, the signing cost and two caps.
secret_realmmxt/secret_realmSecret realm templates: an instance dimension opened on demand for each entry.
pillmxt/pillWhat one pill does: the dose action, its toxicity gain, the overdose threshold and what an overdose leaves behind.
pill_bindingmxt/pill_bindingClaims a family of existing items as one pill, with its use cap and cooldown.
technique_bindingmxt/technique_bindingBindings from existing items to cultivation technique learning.
aura_zonemxt/aura_zoneEnvironment aura templates.
qualitymxt/qualityShared quality: colour, three modifiers, a use condition, and where the tier sits on its ladder with what one step up costs.
triggersaturn/triggerEvent rules: a signal, a condition and an action.
talismanmxt/talismanTalisman definitions: the ability one inscribed talisman carries.
item_auramxt/item_auraThe cultivation fuel an item provides: which items it claims, how much aura they hold and how fast it flows.
currencymxt/currencyAn item's currency denomination and exchanges.
default_qualitymxt/default_qualityAn item's default quality when nothing else supplies a tier (the third and last layer of quality resolution).
item_bindingmxt/item_bindingAn existing item's actions, conditions and element.
weapon_bindingmxt/weapon_bindingAn existing item's weapon attributes and three actions.
tool_bindingmxt/tool_bindingThe forging methods a tool item unlocks.
blueprint_bindingmxt/blueprint_bindingThe blueprints a blueprint item offers.
block_auramxt/block_auraAura provided by a block.
heat_sourcemxt/heat_sourceHow hot and how fast a block heats a furnace.
incompletesaturn/incompleteMarks an item as unfinished: the client draws a warning badge on its slot.

Seven of these — item_aura, currency, default_quality, item_binding, weapon_binding, tool_binding and blueprint_binding — claim items (currency through item, the other six through items), while block_aura and heat_source claim blocks through blocks; their shape is that of every other registry, and the file layout is on the Datapack Development Overview.

Built-in Type Dispatch​

Plenty of fields pick one entry out of a built-in registry on type: the top level of an ability, how a curse persists, the four action families, the five condition families, a resource bar's value source and renderer, a tribulation beat, ability state, and so on. The full list, the entry page of every family and each family's own default are on the Type Reference — type tables live on those pages only.

Action and condition arrays are shorthand for running everything in order:

"entity_action": [
{"type": "mxt:heal", "amount": 2},
{"type": "mxt:apply_curse", "curse": "example:burning", "stacks": 1}
]

A datapack cannot add a new type to a built-in registry; it can only pick from the registered ones. mxt:js is the only one of them that hands behaviour to a script; its mxt:js fields and register methods are on the Type Reference.