Tags

Custom datapack tags

You can define your own datapack tags from YAML and have MythicEnchants generate the JSON into the installed datapack. Put files at:

<MythicMobs pack>/datapack/<namespace>/tags/<registry>/<file>.yml
  • <namespace> — the tag's namespace (e.g. mythicenchants, minecraft).
  • <registry> — the vanilla tag registry. item is supported today; the system is registry-keyed, so other registries can be added later by dropping files in their folder.

Each file declares one tag. Two shapes:

farming_tools:                 # full form
  replace: false
  values:
    - "#minecraft:hoes"        # tag reference (passed through)
    - minecraft:shears         # material (bare DIAMOND_HOE or namespaced both work)
    - mythic:Fire_Axe          # MythicMobs/Crucible item → resolved to its BASE MATERIAL

mining_special:                # shorthand: a bare value list (replace = false)
  - DIAMOND_PICKAXE
  - mythic:Crucible_Drill

Generated to data/<namespace>/tags/item/<key>.json. Reference the tag anywhere a tag is accepted, e.g. SupportedItems: '#mythicenchants:farming_tools' or in PrimaryItems. Tags with the same id across multiple packs are merged. Unknown materials / unresolvable mythic: items are skipped with a warning (the rest of the tag still generates).

mythic: resolves to a material, not the exact item. Datapack tags match by item type, so mythic:Fire_Axe contributes its base material (e.g. netherite_axe) — the tag then matches all netherite axes. To restrict an enchant to the specific Mythic/Crucible item, see StrictMythicItems below.

Restricting an enchant to a specific Mythic/Crucible item

Add mythic:<id> entries to PrimaryItems and set StrictMythicItems: true:

my_crucible_enchant:
  SupportedItems: '#minecraft:enchantable/sharp_weapon'
  PrimaryItems: ['mythic:Fire_Axe']
  Options:
    StrictMythicItems: true     # (top-level StrictMythicItems: true also works)

With the flag on, the enchant can only be applied to the exact Mythic item(s) listed — enforced at runtime on the enchanting table, anvil, the enchant{} mechanic, and the applyEnchantment API. Without mythic: entries the flag is a no-op. (The datapack still only knows the material, so this runtime check is what makes the restriction exact.)

Updated Aug 19, 2026