JigsawStructure
A structure grown from jigsaw pieces, with how often it appears:
JigsawStructure dungeon { biomes = #minecraft:is_overworld, step = underground_structures, spacing = 32, separation = 12, height = AboveBottom(20), start = start, pools = { start = [Piece("start")] } }.
It writes the structure set, the structure and one template pool per
entry of pools. Its name stands for the structure, as in
/locate structure ${dungeon}.
JigsawStructure name {
biomes = ...
step = ...
spacing = ...
separation = ...
height = ...
start = ...
pools = ...
} JigsawStructure is a Blueprint in the prelude: it is written in MMS, and every project has it.
Fields
biomesIds<worldgen/biome>Where it can start: a biome, a tag such as
#minecraft:is_overworld, or a list of biomes.stepDecorationStepThe generation step it is placed in, such as
surface_structuresorunderground_structures.spacingintThe size in chunks of the grid cells it is spread over; about one structure per cell.
separationintsaltoptionalint?heightHeightProviderThe height of the start piece, such as
AboveBottom(20)orConstant(64).heightmapoptionalHeightmap?The start piece's y is taken from the ground's surface instead, with
heightadded to it, as villages do.depthdefault7intHow many pieces deep it grows from the start piece, from 1 to 20.
max_distancedefault80intHow far in blocks a piece can be from the start piece, from 1 to 128.
terrain_adaptationoptionalTerrainAdaptation?How the terrain fits around it:
beard_thinandbeard_boxraise the ground under it,burysinks it,encapsulatefills around it.startId<worldgen/template_pool>The pool the start piece comes from, usually one of
pools.pools{string: [WeightedElement] | TemplatePool}The template pools, by name: a list of pieces, such as
start = [Piece("start")], or a whole pool, such ashalls = { fallback = caps, elements = [Piece("halls/hall")] }. Each one is a TemplatePool of that name, so jigsaw blocks draw from<namespace>:<name>.