Parameters
Some recipe fields can use fixed values or dynamic parameters.
For normal configurations, start with fixed values. Use parameters only when you need random values, offsets, or dynamic locations.
Fixed values
Most fields can be written directly.
amount: 3
value: 50
currency: coins
This is the safest format for simple recipes.
Random integer
Use randomint when a result or condition should use a random whole number.
amount:
param: randomint
min: 1
max: 5
This can be used in fields that accept an integer parameter.
Random decimal number
Use randomdouble when a field accepts a decimal value.
value:
param: randomdouble
min: 10.0
max: 25.0
Use this only where the field accepts decimal numbers.
Text parameter
message:
param: str
value: "The ritual is complete."
Most text fields can also be written directly without param: str.
Integer parameter
amount:
param: int
value: 3
Most integer fields can also be written directly.
Location parameter
A full location can be written with world and coordinates.
location:
param: location
world: world
x: 100
y: 65
z: 100
yaw: 0
pitch: 0
This is useful for fixed world locations, but most Structory recipes should use offsets instead.
Offset from the structure center
Offsets are relative to the structure center.
Simple format:
offset: "0 1 0"
Expanded format:
location:
param: offset
x: 0
y: 1
z: 0
Accepted aliases include:
offsetcenteroffsetinstanceoffsetioffset
Use offsets for result drops, entity summons, and most structure-based effects.
Practical examples
Drop a random amount of items
result:
reward:
type: item
offset: "0 1 0"
amount:
param: randomint
min: 1
max: 3
item:
material: DIAMOND
Summon at the structure center
result:
summon:
type: summon
entity: ZOMBIE
amount: 1
location:
param: offset
x: 0
y: 1
z: 0
Recommendations
- Use direct values when possible.
- Use quoted vectors for offsets:
"0 1 0". - Use
randomintfor random item amounts. - Use offsets instead of fixed world locations for portable structures.
- Test random and dynamic parameters after every reload or restart.