movblock.mov

Anvil

Placed anvils have tiers [1, 8] and a special tier 1,916,169.

Construction recipes

Inputs come from the player's main inventory; an input count totals across stacks. Each non-empty entry of each output position is granted independently, with probability equal to its weight divided by the position's total weight. When the lbsm condition holds and lbsm.unlock_anvil is enabled, tier and a tier_upper other than -1 load as 1.

Fields

FieldMeaning and defaultRange
typeSelects the hbm:anvil_construction recipe format.
name​OptionalInternal lookup name; defaults to the last segment of the recipe resource path.
input_itemsOrdered counted item inputs; defaults to an empty list.
output_itemsFixed or weighted item-output positions; defaults to an empty list.
order​OptionalSort position within the recipe table; lower values first, default 2147483647.\texttt{i32}
overlayAnvil GUI category and badge: none, construction, recycling, or smithing. A recycling recipe is listed with its first input as icon.
tier​OptionalMinimum anvil tier; default 0.\texttt{i32}
tier_upper​OptionalMaximum anvil tier; default -1, which leaves it unbounded.\texttt{i32}

Example

Source path: data/hbm/recipe/anvil_construction/anvil.coal.json

{
  "type": "hbm:anvil_construction",
  "input_items": [
    {
      "ingredient": "#c:dusts/coal"
    }
  ],
  "order": 24,
  "output_items": [
    "minecraft:coal"
  ],
  "overlay": "smithing",
  "tier": 3
}

Smithing recipes

input_items holds two positions: 0 for the left slot and 1 for the right slot. The anvil applies the first matching row by order whose tier does not exceed its own.

kindLeft slotRight slotResult
plainMatches position 0; consumes its countMatches position 1; consumes its countFirst output_items position
hotAs plain; a heated NTM item needs at least half heat and no component changes other than heatAs the left slotAs plain; a heated result takes the inputs' average heat
moldTemplate, kept: exactly the position-0 count, matching shape when set, otherwise position 0; undamagedMatches position 1; consumes its countFirst output_items position
poisonAny food; consumes the position-0 countMatches position 1; consumes its countOne left item with the red-pill additive when the right item is hbm:pill_red, otherwise cyanide; output_items is ignored
renameAny item; consumes the position-0 countMatches position 1 and has a custom name; keptOne left item with the right item's name; output_items is ignored

Fields

FieldMeaning and defaultRange
typeSelects the hbm:anvil_smithing recipe format.
name​OptionalInternal lookup name; defaults to the last segment of the recipe resource path.
input_itemsOrdered counted item inputs; defaults to an empty list.
output_itemsFixed or weighted item-output positions; defaults to an empty list.
order​OptionalSort position within the recipe table; lower values first, default 2147483647.\texttt{i32}
tier​OptionalMinimum anvil tier; default 1.\texttt{i32}
kind​OptionalSmithing behavior: plain, hot, mold, poison, or rename; default plain.
shapeless​OptionalFor plain and hot, also matches with the slots swapped when true; default false.
shape​OptionalFor mold, the left slot matches any item in a c or hbm item tag whose path starts with <shape>/, in place of the position-0 ingredient.

Example

Source path: data/hbm/recipe/anvil_smithing/smith.ingot_gunmetal.json

{
  "type": "hbm:anvil_smithing",
  "input_items": [
    {
      "ingredient": "#c:ingots/copper"
    },
    {
      "ingredient": "#c:ingots/aluminum"
    }
  ],
  "order": 38,
  "output_items": [
    "hbm:ingot_gunmetal"
  ]
}

© 2026 movblock. Original site text is licensed under CC BY-SA 4.0 unless otherwise noted. Built with Fumadocs.

On this page