hbm:stratum_3d
Places blocks where three noise fields form a sparse 3D deposit.
Fields
| Field | Meaning and default | Range |
|---|---|---|
domain_x | Noise domain sampled on the Y/Z plane. | |
domain_y | Noise domain sampled on the X/Z plane. | |
domain_z | Noise domain sampled on the X/Y plane. | |
replaceable | Vanilla rule test selecting blocks to replace. | |
scale_h | Horizontal noise sampling scale. | finite \texttt{f64} |
scale_v | Vertical noise sampling scale. | finite \texttt{f64} |
state | Block state placed in the deposit. | |
threshold | Minimum product of the three noise values for placement. | finite \texttt{f64} |
The top-level type selects this feature; the remaining fields belong beside it.
Domain validation
Each domain used by domain_x or domain_z must keep the same axis and the same scale_h/scale_v pair across all loaded 3D-stratum definitions. domain_x and domain_z use distinct IDs, including when both scales are equal. Reusing a domain on the same axis with the same scales is supported.
Conflicts fail worldgen registry loading when the world opens. The error names the domain, both features, their axis fields and their sampling scales. domain_y may reuse a domain independently of these axis and scale restrictions.
Example
Source path: data/hbm/worldgen/feature/stratum_bauxite.json
{
"type": "hbm:stratum_3d",
"domain_x": "hbm:noise/stratum_bauxite/x",
"domain_y": "hbm:noise/stratum_bauxite/y",
"domain_z": "hbm:noise/stratum_bauxite/z",
"replaceable": {
"predicate_type": "minecraft:tag_match",
"tag": "minecraft:base_stone_overworld"
},
"scale_h": 0.03,
"scale_v": 0.15,
"state": "hbm:stone_resource_bauxite",
"threshold": 300.0
}hbm:stratum
Forms a wavy horizontal replacement layer around `y_level`.
hbm:depth_deposit
Builds a rounded deposit with a core and filler shell.
© 2026 movblock. Original site text is licensed under CC BY-SA 4.0 unless otherwise noted. Built with Fumadocs.