Skip to content

Custom Enchantment Upgrade Recipes

DaFuqs edited this page Sep 8, 2026 · 16 revisions

Enchantment Upgrade recipes in the Enchanter differ quite a bit from other recipe types. Specifically, you need just a single recipe file to specify a complete upgrade path for all levels of an enchantment. As is normal for recipes in the Enchanter, it requires a structure with 8 Item Bowls, making the input 9 items, with a tenth item to supply experience (Usually a Knowledge Gem). The bowls have to be filled with a specified amount of a single item and an enchanted book with the enchantment wished to upgrade. The result is always an Enchanted Book with a level equal to the previous level + 1.

Enchantment Upgrading

The crafting duration is dependent on the amount of items required for each upgrade step.


You are able to specify enchantment upgrades over the usual max level (and very welcome to!).

Upgrading to those levels will be not possible until the player unlocked the advancement spectrum:milestones/unlock_overenchanting_with_enchanter though. If you do not like overenchanting at all or want to make it accessible right when unlocking the Enchanter instead, feel free to modify this advancement with a data pack.

Properties

Entry Type Default Description
group string empty A string that represents a recipe group. Recipes with a common group will only trigger a single unlock popup, if multiple are unlocked at once. Add a localization string recipeGroup.spectrum.<<your_group_string>> so the toast popup is properly localized
required_advancement advancement_identifier empty The advancement a player needs to have to be able to see this recipe. Spectrum will automatically show a recipe unlock toast when this advancement has been gotten
reveal_secret_advancement advancement_identifier empty If set, the recipe shows up as a secret in recipe viewers at first, until the player has the set advancement. You can set a hint by adding a lang key recipe.spectrum.<recipe_type_id>.secret.<recipe_id>.hint
additional_recipe_viewer_results itemstack list empty Items that will be considered an "output" of the recipe for recipe viewers when pressing "R". Has no gameplay relevance, but is a nice QoL thing for your players, if your recipe does something funky.
enchantment enchantment_identifier The enchantment to upgrade
levels level_entry list An array specifying the requirements for upgrading the enchantment, starting with level 1 => level 2

Enchantment Level Entry

Entry Type Description
ingredient ingredient The ingredient required in the Item Bowls
ingredient_count_per_bowl int The item count required per Item Bowl (total of 8 bowls)
experience int The experience consumed from the Knowledge Gem for this upgrade step

Example: Upgrade path for enchanted books with the "Treasure Hunter" enchantment.

Note that there are four level specifications, for levels 1 => 2, 2 => 3, 3 => 4, and 4 => 5.

{
  "type": "spectrum:enchantment_upgrade",
  "enchantment": "spectrum:treasure_hunter",
  "levels": [
    {
      "ingredient": {
        "item": "spectrum:light_blue_pigment"
      },
      "ingredient_count_per_bowl": 2,
      "experience": 400
    },
    {
      "ingredient": {
        "item": "spectrum:light_blue_pigment"
      },
      "ingredient_count_per_bowl": 4,
      "experience": 800
    },
    {
      "ingredient": {
        "item": "spectrum:light_blue_pigment"
      },
      "ingredient_count_per_bowl": 8,
      "experience": 1600
    },
    {
      "ingredient": {
        "item": "spectrum:light_blue_pigment"
      },
      "ingredient_count_per_bowl": 16,
      "experience": 3200
    }
  ],
  "required_advancement": "spectrum:unlocks/enchantments/treasure_hunter"
}

Clone this wiki locally