Carver definition
Jump to navigation
Jump to search
This feature is exclusive to Java Edition.
Configured carvers are used to add caves and canyons. They are referenced in biomes.
Definition
[edit | edit source]Configured carvers can be defined in data packs, as part of the directory structure below.
data pack name.zip or
data pack name
pack.mcmeta
data
namespace
worldgen
carver
<name>.json
- More directories…
- More directories…
JSON format
[edit | edit source]- [NBT Compound / JSON Object]: The root object.
- [String] type: The ID of carver type; see below.
- [NBT Compound / JSON Object] config: Configuration values for the carver.
- [Float] probability: The probability that each chunk attempts to generate carvers. Value between 0 and 1 (both inclusive).
- [NBT Compound / JSON Object] y: The height at which this carver attempts to generate.
- Height provider see Template:Nbt inherit/height provider/template
- Additional fields based on [String] type; see below.
Carver Type
[edit | edit source]The carver type determines the shape of the carving.
cave
[edit | edit source]Carves a cave. A cave is a long tunnel that sometimes branches. Sometimes one or more tunnels start from a circular void.
Additional fields:
- [Float][NBT Compound / JSON Object] room_vertical_radius_multiplier: Vertically scales circular voids.
- [Int][NBT Compound / JSON Object] count: The number of cave tunnels to create from a seed chunk. The number must not be negative.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float][NBT Compound / JSON Object] horizontal_radius_multiplier: Horizonally scales cave tunnels. Doesn't affect the length of tunnels.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float][NBT Compound / JSON Object] vertical_radius_multiplier: Vertically scales cave tunnels. Doesn't affect the length of tunnels.
- [Float][NBT Compound / JSON Object] start_vertical_radius_multiplier: Multiplier for the vertical radius of the first segment in each tunnel. If not specified, it defaults to 1.0.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float][NBT Compound / JSON Object] floor_level: Value between -1.0 and 1.0 (both inclusive). Change the shape of the cave's horizontal floor. If 0.0, carves the terrain with ellipsoids. If 1.0, carves with upper semi-ellipsoids, resulting in a level floor.
- [Float][NBT Compound / JSON Object] thickness: Multiplier for the radius of carved tunnels.
- [Boolean][NBT Compound / JSON Object] weird_thickness_bias: If
true, thickness will be multiplied with a 10% chance (e.g.random(0, 1) * random(0, 3) + 1). If not specified, it defaults tofalse.- Float provider see Template:Nbt inherit/float_provider/template
canyon
[edit | edit source]Carves a canyon.
Additional fields:
- [Float][NBT Compound / JSON Object] vertical_rotation: Vertical rotation as a canyon extends.
- Float provider see Template:Nbt inherit/float_provider/template
- [NBT Compound / JSON Object] shape: The shape to use for the ravine.
- [Float][NBT Compound / JSON Object] y_scale: Vertically scales canyons.
- [Float][NBT Compound / JSON Object] distance_factor: Scales the length of canyons. Higher values make canyons longer.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float][NBT Compound / JSON Object] thickness: Scales the breadth and height of canyons.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float][NBT Compound / JSON Object] horizontal_radius_factor: Scales the breadth of canyons. Higher values make canyons wider.
- Float provider see Template:Nbt inherit/float_provider/template
- [Float] vertical_radius_default_factor: Vertically scales canyons. Higher values make canyons deeper.
- [Float] vertical_radius_center_factor: Scales the height based on the horizontal distance from the canyon's center, resulting in deeper center.
- [Int] width_smoothness: Higher values smooth canyon walls on the vertical axis. Must be greater than 0.
- [Float][NBT Compound / JSON Object] vertical_rotation: Vertical rotation as a canyon extends.
History
[edit | edit source]| Java Edition | |||||||
|---|---|---|---|---|---|---|---|
| 1.16.2 | 20w28a | Added experimental support for configured carvers in data packs. | |||||
| 1.17 | 21w06a | Removed carvers underwater_canyon and underwater_cave. | |||||
| 21w08a | Added configuration for the canyon carver. | ||||||
Added optional carver field debug_settings. When enabled with debug_mode, can place blocks from air_state. | |||||||
| 21w11a | Renamed canyon carver field distanceFactor to distance_factor. | ||||||
| 21w13a | Added configuration for the cave carver. | ||||||
Replaced carver field bottom_inclusive and top_inclusive with field y, which is a height provider. Added field yScale.
| |||||||
Moved canyon carver shape fields into sub-object shape. | |||||||
| 21w16a | Added field aquifers_enabled.
| ||||||
Added fields water_state, lava_state, and barrier_state in the debug_settings object. | |||||||
| 1.18 | 21w38a | Removed field aquifers_enabled. | |||||
| 1.19 | 22w15a | Added field replaceable to carver configuration. | |||||
| 26.3 | snap2 | Removed carver nether_cave.
| |||||
Added cave carver fields:
| |||||||
Renamed cave carver field yScale to room_vertical_radius_multiplier.
| |||||||
Renamed canyon carver field yScale to y_scale and moved under the shape compound.
| |||||||
Removed carver fields:
| |||||||