MythicCrucible
The item add-on for Mythic: custom items, armor sets, augments, crafting recipes, placeable furniture, custom blocks, and a built-in resource-pack generator. Everything it creates can carry Mythic skills, stats and conditions.
Crucible is a premium Paper/Spigot plugin and requires MythicMobs. It extends Mythic's existing item system rather than replacing it, so base item fields (Material, Display, Lore, Enchantments, …) are documented on the MythicMobs side. Syntax here targets the 5.13.x line.
Crucible's wiki states that it is mid-rewrite — "currently undergoing a complete rewrite to tidy, update, and expand". Some upstream pages are therefore thin or stale. Where this page is silent on a feature, check the wiki directly rather than assuming the feature doesn't exist.
Versioning
- Crucible's version number deliberately tracks MythicMobs. Crucible 5.13.0 targets MythicMobs 5.13.x. Older builds used an independent line (
1.4.x,1.5.x,1.6.x,2.x.x) — which is why aMythicCrucible-2.4.0jar and aMythicCrucible-5.13.0jar can both exist and the "newer" one is not 2.4.0. - Mixing minors is the usual cause of missing-mechanic errors after an upgrade — Crucible registers its mechanics against the core version it was built for. Upgrade Mythic and Crucible together.
Items & item types
Crucible items are Mythic items with extra keys. The Type field is what turns a plain item into a hat, bag, gem, furniture, brush or block:
Type | Behaviour |
|---|---|
ITEM | Default — an ordinary item with no special behaviour. |
HAT | Wearable in the helmet slot regardless of the base material. |
BAG | Opens a portable inventory. |
GEM | An augment that can be socketed into another item. |
FURNITURE | Places a furniture object in the world on right-click. |
PAINT_BRUSH | Recolours furniture in the world. |
BLOCK | Places a custom block. |
plugins/MythicCrucible/Items/example.yml
ExampleItem:
Material: STONE_SWORD
EquipSlot: HAND
EquipSlotSkill: DoFancyStuff
EquipConditions:
- day true
Other documented item facilities: Durability (including a custom durability system), Item Sets (set bonuses across armor pieces), Levels, Augments, Ammo, the Item Updater (rewrites already-distributed items when the definition changes), and Dynamic Lore Generation (templated lore built from stats).
Equipment activation
These fields decide when an item's stats and skills actually apply — the part most often misconfigured:
| Field | Meaning |
|---|---|
EquipSlot | The slot the item must occupy. Used anywhere else, its stats do not apply at all. |
EquipSlotSkill | Metaskill run once the item is equipped in the correct slot. |
EquipConditions | Conditions that must hold for the equipped item to apply its stats and run its skills. |
EquipLevel | Minimum player level required before stats apply. Defaults to 0. |
EquipLevelSkill | Metaskill run when equipped at the correct level. |
EquipLevelKey | Which Player Level Provider supplies the level. Defaults to vanilla XP level. |
ArrowDamage | Initial damage for arrows fired from this item — bows/crossbows only, and does not affect other projectiles. |
Item skills & triggers
Items use the same skill grammar as mobs (see skill anatomy), but respond to item triggers rather than mob triggers:
plugins/MythicCrucible/Items/wand.yml
FireWand:
Material: BLAZE_ROD
Display: '<red>Wand of Cinders'
Options:
Unbreakable: true
Skills:
- skill{s=CastFireball} ~onRightClick
- message{m="<yellow>The wand hums."} @self ~onHold
Recipes
An item may carry multiple recipes of different types, so it can be craftable more than one way. Each is a named entry under Recipes.
| Type | Crafted in |
|---|---|
SHAPELESS | Crafting grid, any arrangement. |
SHAPED | Crafting grid, fixed pattern. |
FURNACE | Furnace. |
CAMPFIRE | Campfire. |
BLASTING | Blast furnace. |
SMOKING | Smoker. |
STONECUTTING | Stonecutter. |
SMITHING | Smithing table. |
BREWING | Brewing stand. |
IngredientsLeftover keeps items in the grid after crafting, the way a milk bucket leaves an empty bucket. Shaped and shapeless only.
plugins/MythicCrucible/Items/leftover.yml
ExampleItem:
Id: GOLD_NUGGET
Display: 'Test Recipe Item'
Recipes:
SHAPELESS:
Type: SHAPELESS
Amount: 1
IngredientsLeftover:
- bucket
Ingredients:
- water_bucket
- apple
Recipes can also be gated behind Mythic conditions — again shaped and shapeless only:
A recipe only craftable at night
ExampleItem:
Id: GOLD_NUGGET
Display: 'Test Recipe'
Recipes:
NIGHT:
Type: SHAPED
Conditions:
- night
Larger grids are available through Crucible's workbench commands — /superworkbench (5 × 5) and /megaworkbench (6 × 6).
Furniture
An item with Type: FURNITURE places a world object where the player is looking on right-click, and by default drops the original item when broken. All options live under a Furniture section.
- 1.19.4 and newer — furniture renders with display entities (default
Type: DISPLAY). - 1.19.3 and older — furniture renders with invisible item frames (default
Type: ITEM_FRAME). - You may force either on a modern server with
Type: ITEM_FRAMEorType: ARMOR_STAND. - Seats always use armor stands regardless of version.
plugins/MythicCrucible/Items/furniture.yml
ExampleFurniture:
Id: IRON_NUGGET
Type: FURNITURE
Model: 5
Furniture:
Material: GOLD_NUGGET
Model: 6
The furniture Type accepts several aliases, including a ModelEngine mode in which Model is read as a ModelEngine model name instead of a model number:
| Value | Aliases |
|---|---|
| Item frame | ITEM_FRAME, ITEMFRAME, FRAME |
| Armor stand | ARMOR_STAND, ARMORSTAND, STAND |
| ModelEngine | MODEL_ENGINE, ME, MEG, MODEL, MODELENGINE |
Furniture additionally supports drops, its own skills and triggers, furniture states, and furniture variables. The paint brush recolours placed furniture in-world.
Custom blocks
Custom blocks exploit spare block states on mushroom blocks, note blocks, tripwires and chorus plants. MUSHROOM_BLOCK and NOTE_BLOCK are "solid" and need a texture path; TRIPWIRE and CHORUS are non-solid and reuse the item's model.
| Option | Description | Default |
|---|---|---|
Type | Base block family used for the state trick. | MUSHROOM |
Id | Custom block id. | 0 |
Parent | Parent model. | minecraft:block/cube_all |
Model | Model path; generated automatically. | — |
Texture | Texture path (solid blocks). Ignored if Textures is set. | — |
Textures | Multiple texture paths. | — |
Variants | Variants with different rotations. | — |
Drops | What the block drops. | Itself |
Because custom blocks are really unusual block states, ordinary block updates can visibly corrupt them. Crucible's own docs call the system "advanced… carefully audited for project scopes" and recommend disabling updates for whichever base block you use. On Paper, in config/paper-global.yml:
config/paper-global.yml
block-updates:
disable-chorus-plant-updates: false
disable-mushroom-block-updates: false
disable-noteblock-updates: true
disable-tripwire-updates: false
Resource-pack generation
Crucible generates the resource pack for its own items, furniture and blocks with /mm items generate, and can merge other packs into the result.
- 5.13.0 External pack import.
Generation.Import.FromLocationmerges local folders or.zipfiles in list order;Generation.Import.FromUrldownloads and merges packs from URLs;Generation.Import.ExternalPackOrderexplicitly orders packs inplugins/MythicCrucible/external_packs/, with unlisted packs following alphabetically. Merging is atlas-aware. - 5.13.0 ModelEngine textures are routed into
items.jsonon 1.21.11+ / 26.x. - 5.13.0 Added pack validation and skipping of unchanged deployments.
plugins/MythicCrucible/config.yml — 5.13.0 external pack import
Generation:
Import:
FromLocation:
- plugins/Emojy/pack.zip
- packs/my_extra_pack
FromUrl:
- https://example.com/shared_assets.zip
ExternalPackOrder:
- base_pack
- overrides.zip
Crucible can also merge MythicArmors' assets, configured either in MythicArmors' own config or as an import directory in plugins/MythicMobs/config/config-generation.yml. Font icons and .bbmodel sources are supported.
Mechanic index
Available in any Mythic skill once Crucible is installed.
| Mechanic | Description |
|---|---|
BlockCrack | Shows a block crack effect on the target block for the selected audience |
ConsumeHeldDurability | Consumes durability from the held item |
ConsumeItem | Removes some items from the casting player's inventory |
ConsumeItemDurability | Consume the durability of an item |
ConsumeUsedItem | Removes the item that triggered the skilltree |
ConsumeUsedDurability | Consumes durability from the item that triggered the skilltree |
DealCustomDurability | Deals damage or heals custom durability |
InventoryClear | Clears the target's inventory |
InventoryFromVariable | Restores a player's inventory from a serialized variable |
InventoryToVariable | Serializes a player's inventory into a variable |
ModelSet | Sets the calling item's model |
ModelToggle | Toggles the calling item's model |
SetSlotModel | Sets the model of an item in the target slot |
OpenBackpack | Opens the first backpack found in the player's inventory |
OpenItemFurnace | Opens a furnace inventory stored inside the used item |
ParseArmor | Force a re-scan of the caster's armor |
ParseWeapon | Force a re-scan of the caster's weapon |
ProjectileHit | Simulates an hit from a bow's projectile |
RemoveTriggeringItem | Removes the Item entity that triggered the SkillTree |
ResetAttackCooldown | Resets the player's attack cooldown |
SetCompassLocation | Sets the location a compass points to |
SetCompassLodestone | Sets the location a compass points to as a lodestone location |
SetCrossbowCharged | Sets the state of the held crossbow's charge |
SetItemCustomModelData | Sets the CustomModelData of the used item |
SetItemDisplay | Sets the item display name |
SetLore | Sets the item's new lore |
SetItemNbt | Sets the item's NBT keys |
SnapshotUsedBow | Snapshots the state of the held bow for use with later projectile damage |
UpdateLore | Reparses the item's lore config |
UpgradeItem | Upgrades the level of the item in the specified slot |
Furniture mechanics
| Mechanic | Description |
|---|---|
FurnitureColor | Sets the casting Furniture's color |
FurnitureInventory | Opens the inventory of the Furniture |
FurnitureRemove | Removes the casting Furniture |
FurnitureRemoveAt | Removes the Furniture at the target location |
FurnitureSetAt | Sets a furniture at the target location |
FurnitureState | Sets the casting Furniture's state |
SetFurnitureStateAt | Sets the state of the furniture at the target location or entity |
OpenFurniturePainter | Opens the furniture's painter for the target player |
PlaceFurnitureAt | Makes the casting player place a furniture at a specific location |
FurnitureVariableSet | Set a variable on the target furniture entity |
Trigger index
Item triggers
| Trigger | Fires when |
|---|---|
onAttack | When the player hits another entity |
onBreak | When the player holding or equipping the item breaks it |
onCancelUse | When the player stops using the item |
onConsume | Triggered when the item is eaten |
onCrouch | When the player crouches |
onUnCrouch | When the player stops crouching |
onDamaged | When the player is damaged |
onDeath | When the player dies |
onEquip | When a player equips an armor piece. |
onUnEquip | When a player unequips an armor piece. |
onInteract | When the player interacts with an entity |
onItemDrop | When the player drops an item |
onItemPickup | When the player picks up an item |
onBowHit | When a player hits an entity with an arrow |
onPotionSplash | Triggered if the item is a potion that was thrown |
onRightClick | When the player right-clicks |
onShoot | When the player shoots a bow |
onSpawn | When the player logs in or respawns |
onSwing | When the player left-clicks |
onTimer | Every # ticks (where # is the interval in ticks) |
onUse | When the player right-clicks while holding the item |
onFish | When a player is fishing, ie casting the line out |
onFishBite | Called when there is a bite on the hook and it is ready to be reeled in |
onFishCatch | When a player has successfully caught a fish and is reeling it in |
onFishGrab | When a player has successfully caught an entity |
onFishGround | When a bobber is stuck in the ground |
onFishReel | When a player reels in their hook without receiving any bites |
onFishFail | When a player fails to catch a bite while fishing usually due to poor timing |
onPressQ | When a player presses Q to drop the item. Requires ProtocolLib |
onPressCtrlQ | When a player presses CTRL+Q to drop the item. Requires ProtocolLib |
onPressF | When a player presses F to swap the item |
onPressF_HAND | When a player presses F to swap the item, and it ends up in the main hand |
onPressF_OFFHAND | When a player presses F to swap the item, and it ends up in the offhand |
onPress | When a player presses a key. Requires MythicKeysPlugin for the server and MythicKeys mod for the client |
onRelease | When a player releases a key. Requires MythicKeysPlugin for the server and MythicKeys mod for the client |
onJoin | When a player joins the server |
onRespawn | When a player respawns |
onPickup | When a player picks up the crucible item |
onHold | When the player holds an item |
onUnHeld | When the player switches off the item from their hotbar |
onJump | When the Player jumps |
onPaint | When a Paint Brush paints a furniture |
onKill | When the Player kills an entity |
onKillPlayer | When the Player kills another player |
onProjectileThrow | When a special projectile is thrown |
onStartDestroyBlock | When the player starts destroying a block |
onStopDestroyBlock | When the player stops destroying a block |
Custom block triggers
| Trigger | Fires when |
|---|---|
onBlockBreak | When the player breaks the custom block |
onBlockPlace | When the player places the custom block |
Furniture triggers
| Trigger | Fires when |
|---|---|
onBlockPlace | When the furniture is placed |
onBlockBreak | When the furniture is broken |
onBlockRotate | When the furniture is rotated |
onBlockSit | When a player sits on the furniture |
onDamaged | When the furniture is punched |
onFurnitureStateChange | When the furnitures state changed. This is triggered every time the FurnitureState mechanic is used, even if the state stays the same. |
onFurnitureInventoryOpen | When the Furniture Inventory is opened |
onFurnitureInventoryClose | When the Furniture Inventory is closed |
onInteract | When a player right clicks the furniture |
onPaint | When a paintbrush is used on a furniture |
onTimer | Every X ticks |
Commands & permissions
| Command | Does |
|---|---|
/crucible reload | Reloads the plugin. |
/superworkbench (/swb) | Opens a 5 × 5 crafting grid. |
/megaworkbench (/mwb) | Opens a 6 × 6 crafting grid. |
/crucible furniture listactive [radius] | Lists furniture within a radius, or all of it. |
/crucible getresourcepack (grp) | Sends the server resource pack to you. |
/mm items generate | Generates the resource pack. |
| Permission | Grants |
|---|---|
mythiccrucible.admin | All Crucible commands. |
mythiccrucible.superworkbench | /swb. |
mythiccrucible.megaworkbench | /mwb. |
mythiccrucible.furniture.rotate | Rotating placed furniture. |
Version history
| Version | Notable changes |
|---|---|
| 5.13.0 | Paper 26.2 support. External resource-pack imports from local paths and URLs, pack validation, unchanged-deployment skipping. Custom music discs and oversized GUI item models. Bags expanded with configurable open actions, skill triggers, content filters and safer inventory persistence. Tripwire saplings, per-variant custom-block models, redstone power triggers. Transmute recipes, recipe discovery controls, smithing preservation options. Stable public furniture API with placement results, footprint queries and player attribution. |
| 5.12.0 | Second entry in the current changelog file. |
| 1.4.x – 2.x.x | The pre-realignment numbering, documented in separate changelog files. |
Gotchas
EquipSlotis load-bearing. An item worn or held in the wrong slot silently applies none of its stats.- Custom blocks glitch under block updates unless you disable updates for the base block family in
paper-global.yml. IngredientsLeftoverand recipeConditionsare shaped/shapeless only — they are silently ignored on furnace, smithing and the rest.- Crucible's
setitemmodelshadows ModelEngine's. Use themeg:prefix for the ModelEngine one — see interoperation. - Version-lock with MythicMobs. Crucible's version tracks the core it was built against.
- Furniture render type changed at 1.19.4 — configs written for older servers may pin item frames unnecessarily.
Sources
- MythicCrucible Wiki — Home
- MythicCrucible Wiki — Items
- MythicCrucible Wiki — Recipes
- MythicCrucible Wiki — Furniture
- MythicCrucible Wiki — Custom Blocks
- MythicCrucible Wiki — ResourcePack Generator
- MythicCrucible Wiki — Mechanics
- MythicCrucible Wiki — Triggers
- MythicCrucible Wiki — Commands and Permissions
- MythicCrucible Wiki — Changelogs