Skip to main content

Migration Notes

This page helps administrators update older Structory configurations.

Use recipe and discovers​

Some old examples use recipe-group inside the structure crafting option.

For new configurations, use recipe on the structure:

options:
crafting:
recipe: ["forge"]

Then use discovers in the recipe:

my_recipe:
discovers: "forge"

If a recipe has no discovers, Structory treats it as default.

If a structure has no recipe, Structory treats it as default.

Move old crafting effects to particle​

Old configurations may place effects directly inside crafting:

crafting:
consume:
type: particle
particle: FLAME

Use the particle option instead:

options:
crafting:
recipe: ["default"]
particle:
consume:
type: particle
particle: FLAME
amount: 8

This keeps crafting logic and visual effects separated.

Add listeners explicitly​

If you add a listener section, include all listeners you still want to use.

Before:

crafting:
recipe: ["default"]

After, with both right-click and entity-death:

crafting:
recipe: ["default", "soul_altar"]
listeners:
interact: {}
entity-death:
range: 8

Without interact: {}, normal right-click crafting may no longer be enabled for that structure.

Replace unclear dependency aliases​

Prefer readable aliases:

Instead ofPrefer
ceitemcraftengine
oitem as ingredientoraxen
nitemnexo
mitemmmoitems
iaitemitemsadder
eitemecoitems

Short aliases may still work, but full names are clearer and easier to maintain.

Retest after migration​

After updating old files:

  1. Restart the server.
  2. Check the console for parser warnings.
  3. Create or reload the structure.
  4. Test item placement.
  5. Test one recipe.
  6. Test listeners such as entity-death.
  7. Test dependency item recipes last.