Skip to main content

Module split

Module split 

Source
Expand description

Oversize splitting — the one tiling in this project.

Vanilla structure templates cap each axis at 48. That is a limit on a file format, never on a design, so anything bigger is tiled into a deterministic grid of parts plus a manifest recording grid dimensions, per-part sizes and zone-local offsets, and every consumer reassembles losslessly from that manifest.

Two producers write tilings — delvec schem convert for an oversize .schem import, and delvec grammar expand for a zone whose expansion outgrows one template — and they call the same plan_split, so a volume tiles the same way whichever door it came in by. TileSet is the manifest contract itself: one struct, Serialize for the producers and Deserialize for the consumers, so the two halves cannot drift apart.

Structs§

Part
One grid cell of a split.
SplitPlan
The plan for tiling a source_size volume with a part_max-cube cap.
TilePart
One tile of a TileSet.
TileSet
A volume packaged as several structure templates.

Enums§

TileEvidence
What a single .nbt path turned out to be: a whole template, or one tile of a tiling.

Functions§

fragment_refusal
The refusal a whole-piece tool owes a fragment: one sentence saying what the file is, what answering about it would mean, and what to do instead.
manifest_claiming
The tile-set manifest that names nbt_path as one of its tiles, if any.
manifest_filename
Manifest filename: <base>.split.json.
manifest_json
Render the split manifest as pretty JSON (deterministic — fixed field order, parts in grid order).
part_filename
Part filename for a base name: <base>.x<i>y<j>z<k>.nbt.
plan_split
Compute a split plan. Parts are emitted in x -> y -> z grid order.
read_tile_set
Read a prefab metadata file and say whether it describes a tile set.
tile_evidence
Decide whether a single .nbt is one tile of a tiled zone.
tile_filename
The base name and grid index a tile filename spells, if it spells one.