* Update vscode-settings.json * - Updated map color * - Added replaceable block component * - Effect durations can be set to infinite now * - Added support for entity sound variants * - Fix description for renders_when_invisible entity component * - Added is_collidable component * - Updated entity_sensor * - Added body_rotation_axis_aligned * - Updated projectile > on_hit * - Set min and max for collision_box * - Added locator field to sounds in animation controllers and animations * - Added new event response * - Removed peak_factor from mountain_parameters component * - Added isotropic field to material_instances * - Added tint field to material_instances * - Added input_air_controlled entity component * - Added use_beta_features property to entity.json * - Added missing match_tool property * - Added use_home_position_restriction to float_wander goal * - Added deferred client biome components * - Added dry_foliage_color client biome component * - Added destruction_particles * - Marked biome tinting as experimental * - Fix property_inheritance under breedable * - Fix inconsistency with scatter feature * - Update rideable description * - Allowed event.add/remove to be strings * - Added missing property in move_around_target behavior * - Made features accept block references * - Allowed repairable to use item descriptors * - Fix typo
1507 lines
50 KiB
JSON
1507 lines
50 KiB
JSON
{
|
|
"title": "Tree Feature",
|
|
"description": "'minecraft:tree_feature' will place a tree in the world. A tree consists of a column that is anchored to a base block with set parameters for what it can be placed on and canopy that extends from the column. Trees support multiple types of canopies, trunks, and roots.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["description"],
|
|
"definitions": {
|
|
"branch_canopy": {
|
|
"title": "Branch Canopy",
|
|
"description": "Configuration object for the canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"acacia_canopy": {
|
|
"title": "Acacia Canopy",
|
|
"description": "Configuration object for the acacia canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_size": {
|
|
"title": "Canopy Size",
|
|
"description": "The size of the canopy.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"simplify_canopy": {
|
|
"$ref": "#/definitions/simplify_canopy"
|
|
}
|
|
}
|
|
},
|
|
"canopy": {
|
|
"title": "Canopy",
|
|
"description": "Configuration object for the normal canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_offset": {
|
|
"title": "Canopy Offset",
|
|
"description": "Canopy position offset relative to the block above the trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"min": {
|
|
"title": "Min",
|
|
"description": "Min canopy position offset.",
|
|
"type": "integer"
|
|
},
|
|
"max": {
|
|
"title": "Max",
|
|
"description": "Max canopy position offset.",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"min_width": {
|
|
"title": "Min Width",
|
|
"description": "Min width for the canopy.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"canopy_slope": {
|
|
"title": "Canopy Slope",
|
|
"description": "Configuration object for the canopy slope.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"rise": {
|
|
"title": "Rise",
|
|
"description": "The numerator for the slope fraction.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"run": {
|
|
"title": "Run",
|
|
"description": "The denominator for the slope fraction.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"variation_chance": {
|
|
"title": "Variation Chance",
|
|
"description": "Determines the chance of creating leaf blocks for every layer of the canopy. Larger numbers create a denser tree.",
|
|
"oneOf": [
|
|
{ "$ref": "../types/chance_information.json" },
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"canopy_decoration": {
|
|
"title": "Canopy Decoration",
|
|
"description": "Configuration object for the canopy decoration.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"decoration_chance": {
|
|
"title": "Decoration Chance",
|
|
"description": "Probability of decorating the trunk.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"decoration_block": {
|
|
"title": "Decoration Block",
|
|
"description": "The block used for decorating the trunk.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"num_steps": {
|
|
"title": "Num Steps",
|
|
"description": "Number of decoration blocks to place.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"step_direction": {
|
|
"title": "Step Direction",
|
|
"description": "Directions to spread decoration blocks.",
|
|
"type": "string",
|
|
"enum": ["down", "up", "out", "away"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cherry_canopy": {
|
|
"title": "Cherry Canopy",
|
|
"description": "Configuration object for the cherry canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"wide_bottom_layer_hole_chance": {
|
|
"title": "Wide Bottom Layer Hole Chance",
|
|
"description": "Probability of the canopy having a hole in the bottom layer.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"corner_hole_chance": {
|
|
"title": "Corner Hole Chance",
|
|
"description": "Probability of the canopy having a hole in the corner.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"hanging_leaves_chance": {
|
|
"title": "Hanging Leaves Chance",
|
|
"description": "Probability of the canopy having hanging leaves",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"hanging_leaves_extension_chance": {
|
|
"title": "Hanging Leaves Extension Chance",
|
|
"description": "Probability of hanging leaves extending further down",
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
},
|
|
"fancy_canopy": {
|
|
"title": "Fancy Canopy",
|
|
"description": "Configuration object for the fancy canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"mangrove_canopy": {
|
|
"title": "Mangrove Canopy",
|
|
"description": "Configuration object for the mangrove canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"canopy_radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_placement_attempts": {
|
|
"title": "Leaf Placement Attempts",
|
|
"description": "Max number of attempts to create leaf blocks.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"leaf_blocks": {
|
|
"title": "Leaf Blocks",
|
|
"description": "The blocks that form the canopy of the tree",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": [
|
|
{
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
{
|
|
"title": "Weight",
|
|
"description": "Weight used in random selection. Value is relative to other weights in the collection.",
|
|
"type": "number",
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"canopy_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
},
|
|
"hanging_block": {
|
|
"title": "Hanging Block",
|
|
"description": "The block to be used as a hanging block.",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"hanging_block_placement_chance": {
|
|
"title": "Hanging Block Placement Chance",
|
|
"description": "Probability of creating a hanging leaf block.",
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
},
|
|
"mega_canopy": {
|
|
"title": "Mega Canopy",
|
|
"description": "Configuration object for the mega canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"base_radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"simplify_canopy": {
|
|
"$ref": "#/definitions/simplify_canopy"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"mega_pine_canopy": {
|
|
"title": "Mega Pine Canopy",
|
|
"description": "Configuration object for the mega pine canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"base_radius": {
|
|
"$ref": "#/definitions/radius",
|
|
"minimum": 0
|
|
},
|
|
"radius_step_modifier": {
|
|
"title": "Radius Step Modifier",
|
|
"description": "Modifier for the base radius of the canopy.",
|
|
"type": "number",
|
|
"minimum": 0
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"pine_canopy": {
|
|
"title": "Pine Canopy",
|
|
"description": "Configuration object for the pine canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"roofed_canopy": {
|
|
"title": "Roofed Canopy",
|
|
"description": "Configuration object for the roofed canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"title": "Canopy Height",
|
|
"description": "Roofed canopies feature a base and a top layer, and an extra cap layer on some occasions, this value controls the number of layers in the middle.",
|
|
"type": "integer",
|
|
"minimum": 3
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"outer_radius": {
|
|
"title": "Outer Radius",
|
|
"description": "Radius used for the base and top layers.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"inner_radius": {
|
|
"title": "Inner Radius",
|
|
"description": "Radius used for the middle layers.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"spruce_canopy": {
|
|
"title": "Spruce Canopy",
|
|
"description": "Configuration object for the spruce canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"lower_offset": {
|
|
"title": "Lower Offset",
|
|
"description": "Min canopy position offset.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"upper_offset": {
|
|
"title": "Upper Offset",
|
|
"description": "Max canopy position offset.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"max_radius": {
|
|
"title": "Max Radius",
|
|
"description": "Max radius of the canopy.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"leaf_block": {
|
|
"title": "Leaf Block",
|
|
"description": "The block thata forms the canopy of the tree.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"trunk_width": {
|
|
"title": "Trunk Width",
|
|
"description": "The width of the tree trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"height": {
|
|
"title": "Height",
|
|
"description": "Number of layers for the canopy.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"radius": {
|
|
"title": "Radius",
|
|
"description": "The radius of the canopy.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"decoration": {
|
|
"title": "Decoration",
|
|
"description": "Configuration object for the decoration.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"decoration_chance": {
|
|
"title": "Decoration Chance",
|
|
"description": "Probability of decorating the trunk.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"decoration_block": {
|
|
"title": "Decoration Block",
|
|
"description": "The block used for decorating the trunk.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"num_steps": {
|
|
"title": "Num Steps",
|
|
"description": "Number of decoration blocks to place.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"step_direction": {
|
|
"title": "Step Direction",
|
|
"description": "Directions to spread decoration blocks.",
|
|
"type": "string",
|
|
"enum": ["down", "up", "out", "away"]
|
|
}
|
|
}
|
|
},
|
|
"simplify_canopy": {
|
|
"title": "Simplify Canopy",
|
|
"description": "If true the canopy uses a simple pattern.",
|
|
"type": "boolean"
|
|
},
|
|
"trunk_block": {
|
|
"title": "Trunk Block",
|
|
"description": "The block that forms the tree trunk.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"properties": {
|
|
"description": {
|
|
"$ref": "../types/description.json"
|
|
},
|
|
"base_block": {
|
|
"title": "Base Block",
|
|
"oneOf": [
|
|
{ "$ref": "../../../general/block/reference.json" },
|
|
{
|
|
"type": "array",
|
|
"items": { "title": "Block", "$ref": "../../../general/block/reference.json" }
|
|
}
|
|
]
|
|
},
|
|
"base_cluster": {
|
|
"title": "Base Cluster",
|
|
"description": "Allows you to define a number of clusters for the base of the tree. Used to generate mega tree variants.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["may_replace", "num_clusters", "cluster_radius"],
|
|
"properties": {
|
|
"may_replace": {
|
|
"title": "May Replace",
|
|
"description": "List of blocks that the base cluster of a tree can replace.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"num_clusters": {
|
|
"title": "Num Clusters",
|
|
"description": "Number of clusters that can be generated.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"cluster_radius": {
|
|
"title": "Clusters Radius",
|
|
"description": "Radius where the clusters that can be generated.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
}
|
|
}
|
|
},
|
|
"may_grow_on": {
|
|
"title": "May Grow On",
|
|
"description": "List of blocks where a tree can grow on.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"may_replace": {
|
|
"title": "May Reaplce",
|
|
"description": "List of blocks that a tree can replace.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"may_grow_through": {
|
|
"title": "May Grow Through",
|
|
"description": "List of blocks that a tree can grow through.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"acacia_trunk": {
|
|
"title": "Acacia Trunk",
|
|
"description": "Configutarion for the acacia trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Configuration object for the trunk height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"base": {
|
|
"title": "Base",
|
|
"description": "Min height for the trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"intervals": {
|
|
"title": "Intervals",
|
|
"description": "Intervals used to randomize the trunk height, the value of each interval will create a random number where (0 <= rand < interval)), and will be added to the height.",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"min_height_for_canopy": {
|
|
"title": "Minimum Height For Canopy",
|
|
"description": "Min height where the canopy can be placed.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"trunk_lean": {
|
|
"title": "Trunk Lean",
|
|
"description": "Configuration object for diagonal branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"allow_diagonal_growth": {
|
|
"title": "Allow Diagonal Growth",
|
|
"description": "If true, diagonal branches will be created.",
|
|
"type": "boolean"
|
|
},
|
|
"lean_height": {
|
|
"title": "Lean Height",
|
|
"description": "Number of blocks below the tree height at which diagonal branches can be created.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"lean_steps": {
|
|
"title": "Lean Steps",
|
|
"description": "Number of steps taken in X/Z direction while creating a diagonal branch.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"lean_length": {
|
|
"title": "Lean Length",
|
|
"description": "Length for the diagonal branch in the Y axis.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
}
|
|
}
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"branches": {
|
|
"title": "Branches",
|
|
"description": "Configuration object for branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"branch_length": {
|
|
"title": "Branch Length",
|
|
"description": "Length for the branch in the Y axis.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_position": {
|
|
"title": "Branch Position",
|
|
"description": "Starting Y position for the branch.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_chance": {
|
|
"title": "Branch Chance",
|
|
"description": "Probability of creating a branch.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"branch_canopy": {
|
|
"$ref": "#/definitions/branch_canopy"
|
|
},
|
|
"trunk_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cherry_trunk": {
|
|
"title": "Cherry Trunk",
|
|
"description": "Configutarion for the cherry trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Configuration object for the trunk height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"base": {
|
|
"title": "Base",
|
|
"description": "Min height for the trunk.",
|
|
"type": "integer",
|
|
"minimum": 2
|
|
},
|
|
"intervals": {
|
|
"title": "Intervals",
|
|
"description": "Intervals used to randomize the trunk height, the value of each interval will create a random number where (0 <= rand < interval)), and will be added to the height.",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"branches": {
|
|
"title": "Branches",
|
|
"description": "Configuration object for branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tree_type_weights": {
|
|
"title": "Tree Type Weights",
|
|
"description": "Configuration object to pick a tree variant based on a weighted random number",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"one_branch": {
|
|
"title": "One Branch",
|
|
"description": "Tree variant with one branch.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"two_branches": {
|
|
"title": "Two Branches",
|
|
"description": "Tree variant with two branches.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"two_branches_and_trunk": {
|
|
"title": "Two Branches And Trunk",
|
|
"description": "Tree variant with three branch.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
}
|
|
}
|
|
},
|
|
"branch_horizontal_length": {
|
|
"title": "Branch Horizontal Length",
|
|
"description": "Branch length in X/Z axis.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_start_offset_from_top": {
|
|
"title": "Branch Start Offset From Top",
|
|
"description": "Branch starting position relative to the top of the tree",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_end_offset_from_top": {
|
|
"title": "Branch End Offset From Top",
|
|
"description": "Branch end position relative to the top of the tree",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_chance": {
|
|
"title": "Branch Chance",
|
|
"description": "Probability of creating a branch.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"branch_canopy": {
|
|
"$ref": "#/definitions/branch_canopy"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"fallen_trunk": {
|
|
"title": "Fallen Trunk",
|
|
"description": "Configutarion for the fallen trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log_length": {
|
|
"title": "Log Length",
|
|
"description": "Length of the fallen log.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"stump_height": {
|
|
"title": "Stump Height",
|
|
"description": "height of the stump.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"height_modifier": {
|
|
"title": "Height Modifier",
|
|
"description": "Modifier for the length of the fallen log.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"log_decoration_feature": {
|
|
"title": "Log Decoration Feature",
|
|
"description": "Feature that can be used to decorate the fallen log.",
|
|
"type": "string",
|
|
"$ref": "../../../general/feature/identifier.json"
|
|
},
|
|
"trunk_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
}
|
|
}
|
|
},
|
|
"fancy_trunk": {
|
|
"title": "Fancy Trunk",
|
|
"description": "Configutarion for the fancy trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Configuration object for the trunk height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"base": {
|
|
"title": "Base",
|
|
"description": "Min height for the trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"variance": {
|
|
"title": "Variance",
|
|
"description": "Modifier for the trunk height.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"scale": {
|
|
"title": "Scale",
|
|
"description": "Final tree height is multiplied by this scale.",
|
|
"type": "number",
|
|
"maximum": 1
|
|
}
|
|
}
|
|
},
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"branches": {
|
|
"title": "Branches",
|
|
"description": "Configuration object for branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"slope": {
|
|
"title": "Slope",
|
|
"description": "Slope for the branch, where 0 is horizontal and 1 is vertical.",
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 1
|
|
},
|
|
"density": {
|
|
"title": "Density",
|
|
"description": "Density of foliage.",
|
|
"type": "number"
|
|
},
|
|
"min_altitude_factor": {
|
|
"title": "Min Altitude Factor",
|
|
"description": "Min height for branches. Represented by a percentage of the tree height.",
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"maximum": 1.0
|
|
}
|
|
}
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"width_scale": {
|
|
"title": "Width Scale",
|
|
"description": "Scale modifier for the tree radius.",
|
|
"type": "number",
|
|
"minimum": 0.0
|
|
},
|
|
"foliage_altitude_factor": {
|
|
"title": "Foliage Altitude Factor",
|
|
"description": "Min height for foliage. Represented by a percentage of the tree height.",
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"maximum": 1.0
|
|
}
|
|
}
|
|
},
|
|
"mangrove_trunk": {
|
|
"title": "Mangrove Trunk",
|
|
"description": "Configutarion for the mangrove trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Configuration object for the trunk height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"base": {
|
|
"title": "Base",
|
|
"description": "Min height for the trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"height_rand_a": {
|
|
"title": "Height Rand A",
|
|
"description": "Tree height modifier A.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"height_rand_b": {
|
|
"title": "Height Rand B",
|
|
"description": "Tree height modifier B.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"branches": {
|
|
"title": "Branches",
|
|
"description": "Configuration object for branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"branch_length": {
|
|
"title": "Branch Length",
|
|
"description": "Length for the branch in the Y axis.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_steps": {
|
|
"title": "Branch Steps",
|
|
"description": "Number of branches to place.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_chance": {
|
|
"title": "Branch Chance",
|
|
"description": "Probability of creating a branch.",
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
},
|
|
"trunk_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
}
|
|
}
|
|
},
|
|
"mega_trunk": {
|
|
"title": "Mega Trunk",
|
|
"description": "Configutarion for the mega trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Configuration object for the trunk height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"base": {
|
|
"title": "Base",
|
|
"description": "Min height for the trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"intervals": {
|
|
"title": "Intervals",
|
|
"description": "Intervals used to randomize the trunk height, the value of each interval will create a random number where (0 <= rand < interval)), and will be added to the height.",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"min_height_for_canopy": {
|
|
"title": "Minimum Height For Canopy",
|
|
"description": "Min height where the canopy can be placed.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"trunk_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
},
|
|
"branches": {
|
|
"title": "Branches",
|
|
"description": "Configuration object for branches.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"branch_length": {
|
|
"title": "Branch Length",
|
|
"description": "Length for the branch.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"branch_slope": {
|
|
"title": "Branch Slope",
|
|
"description": "Slope for the branch, where 0 is horizontal and 1 is vertical.",
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 1
|
|
},
|
|
"branch_interval": {
|
|
"title": "Branch Interval",
|
|
"description": "Randomized distance between branches.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"branch_altitude_factor": {
|
|
"title": "Branch Altitude Factor",
|
|
"description": "Altitude at which branches can spawn, relative to the tree height.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"min": {
|
|
"title": "Min",
|
|
"description": "Min altitude where branches can spawn.",
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"maximum": 1.0
|
|
},
|
|
"max": {
|
|
"title": "Max",
|
|
"description": "Max altitude where branches can spawn.",
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"maximum": 1.0
|
|
}
|
|
}
|
|
},
|
|
"branch_canopy": {
|
|
"$ref": "#/definitions/branch_canopy"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"trunk": {
|
|
"title": "Trunk",
|
|
"description": "Configutarion for the normal trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"trunk_height": {
|
|
"title": "Trunk Height",
|
|
"description": "Defines the height of the trunk.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"height_modifier": {
|
|
"title": "Height Modifier",
|
|
"description": "Modifier for the height of the trunk.",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"can_be_submerged": {
|
|
"title": "Can Be Submerged",
|
|
"description": "Specifies if the trunk can be submerged.",
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"max_depth": {
|
|
"title": "Max Depth",
|
|
"description": "Defines the max depth at which the trunk can be submerged.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "boolean"
|
|
}
|
|
]
|
|
},
|
|
"trunk_block": {
|
|
"$ref": "#/definitions/trunk_block"
|
|
},
|
|
"trunk_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
}
|
|
}
|
|
},
|
|
"acacia_canopy": {
|
|
"title": "Acacia Canopy",
|
|
"description": "Configuration object for the acacia canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_size": {
|
|
"title": "Canopy Size",
|
|
"description": "The size of the canopy.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"simplify_canopy": {
|
|
"$ref": "#/definitions/simplify_canopy"
|
|
}
|
|
}
|
|
},
|
|
"canopy": {
|
|
"title": "Canopy",
|
|
"description": "Configuration object for the normal canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_offset": {
|
|
"title": "Canopy Offset",
|
|
"description": "Canopy position offset relative to the block above the trunk.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"min": {
|
|
"title": "Min",
|
|
"description": "Min canopy position offset.",
|
|
"type": "integer"
|
|
},
|
|
"max": {
|
|
"title": "Max",
|
|
"description": "Max canopy position offset.",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"min_width": {
|
|
"title": "Min Width",
|
|
"description": "Min width for the canopy.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"canopy_slope": {
|
|
"title": "Canopy Slope",
|
|
"description": "Configuration object for the canopy slope.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"rise": {
|
|
"title": "Rise",
|
|
"description": "The numerator for the slope fraction.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"run": {
|
|
"title": "Run",
|
|
"description": "The denominator for the slope fraction.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"variation_chance": {
|
|
"title": "Variation Chance",
|
|
"description": "Determines the chance of creating leaf blocks for every layer of the canopy. Larger numbers create a denser tree.",
|
|
"oneOf": [
|
|
{ "$ref": "../types/chance_information.json" },
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"canopy_decoration": {
|
|
"title": "Canopy Decoration",
|
|
"description": "Configuration object for the canopy decoration.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"decoration_chance": {
|
|
"title": "Decoration Chance",
|
|
"description": "Probability of decorating the trunk.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"decoration_block": {
|
|
"title": "Decoration Block",
|
|
"description": "The block used for decorating the trunk.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"num_steps": {
|
|
"title": "Num Steps",
|
|
"description": "Number of decoration blocks to place.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"step_direction": {
|
|
"title": "Step Direction",
|
|
"description": "Directions to spread decoration blocks.",
|
|
"type": "string",
|
|
"enum": ["down", "up", "out", "away"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cherry_canopy": {
|
|
"title": "Cherry Canopy",
|
|
"description": "Configuration object for the cherry canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"trunk_width": {
|
|
"$ref": "#/definitions/trunk_width"
|
|
},
|
|
"wide_bottom_layer_hole_chance": {
|
|
"title": "Wide Bottom Layer Hole Chance",
|
|
"description": "Probability of the canopy having a hole in the bottom layer.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"corner_hole_chance": {
|
|
"title": "Corner Hole Chance",
|
|
"description": "Probability of the canopy having a hole in the corner.",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"hanging_leaves_chance": {
|
|
"title": "Hanging Leaves Chance",
|
|
"description": "Probability of the canopy having hanging leaves",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"hanging_leaves_extension_chance": {
|
|
"title": "Hanging Leaves Extension Chance",
|
|
"description": "Probability of hanging leaves extending further down",
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
},
|
|
"fancy_canopy": {
|
|
"title": "Fancy Canopy",
|
|
"description": "Configuration object for the fancy canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"mangrove_canopy": {
|
|
"title": "Mangrove Canopy",
|
|
"description": "Configuration object for the mangrove canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"canopy_radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_placement_attempts": {
|
|
"title": "Leaf Placement Attempts",
|
|
"description": "Max number of attempts to create leaf blocks.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"leaf_blocks": {
|
|
"title": "Leaf Blocks",
|
|
"description": "The blocks that form the canopy of the tree",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": [
|
|
{
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
{
|
|
"title": "Weight",
|
|
"description": "Weight used in random selection. Value is relative to other weights in the collection.",
|
|
"type": "number",
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"canopy_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
},
|
|
"hanging_block": {
|
|
"title": "Hanging Block",
|
|
"description": "The block to be used as a hanging block.",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"hanging_block_placement_chance": {
|
|
"title": "Hanging Block Placement Chance",
|
|
"description": "Probability of creating a hanging leaf block.",
|
|
"$ref": "../types/chance_information.json"
|
|
}
|
|
}
|
|
},
|
|
"mega_canopy": {
|
|
"title": "Mega Canopy",
|
|
"description": "Configuration object for the mega canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"base_radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"simplify_canopy": {
|
|
"$ref": "#/definitions/simplify_canopy"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"mega_pine_canopy": {
|
|
"title": "Mega Pine Canopy",
|
|
"description": "Configuration object for the mega pine canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"base_radius": {
|
|
"$ref": "#/definitions/radius",
|
|
"minimum": 0
|
|
},
|
|
"radius_step_modifier": {
|
|
"title": "Radius Step Modifier",
|
|
"description": "Modifier for the base radius of the canopy.",
|
|
"type": "number",
|
|
"minimum": 0
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"pine_canopy": {
|
|
"title": "Pine Canopy",
|
|
"description": "Configuration object for the pine canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"roofed_canopy": {
|
|
"title": "Roofed Canopy",
|
|
"description": "Configuration object for the roofed canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"title": "Canopy Height",
|
|
"description": "Roofed canopies feature a base and a top layer, and an extra cap layer on some occasions, this value controls the number of layers in the middle.",
|
|
"type": "integer",
|
|
"minimum": 3
|
|
},
|
|
"core_width": {
|
|
"title": "Core Width",
|
|
"description": "Width of the tree trunk.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"outer_radius": {
|
|
"title": "Outer Radius",
|
|
"description": "Radius used for the base and top layers.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"inner_radius": {
|
|
"title": "Inner Radius",
|
|
"description": "Radius used for the middle layers.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"spruce_canopy": {
|
|
"title": "Spruce Canopy",
|
|
"description": "Configuration object for the spruce canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"lower_offset": {
|
|
"title": "Lower Offset",
|
|
"description": "Min canopy position offset.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"upper_offset": {
|
|
"title": "Upper Offset",
|
|
"description": "Max canopy position offset.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"max_radius": {
|
|
"title": "Max Radius",
|
|
"description": "Max radius of the canopy.",
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"leaf_block": {
|
|
"$ref": "#/definitions/leaf_block"
|
|
}
|
|
}
|
|
},
|
|
"random_spread_canopy": {
|
|
"title": "Random Spread Canopy",
|
|
"description": "Configuration object for the random spread canopy.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"canopy_height": {
|
|
"$ref": "#/definitions/height"
|
|
},
|
|
"canopy_radius": {
|
|
"$ref": "#/definitions/radius"
|
|
},
|
|
"leaf_placement_attempts": {
|
|
"title": "Leaf Placement Attempts",
|
|
"description": "Max number of attempts to create leaf blocks.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"leaf_blocks": {
|
|
"title": "Leaf Blocks",
|
|
"description": "The blocks that form the canopy of the tree",
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": [
|
|
{
|
|
"$ref": "#/definitions/leaf_block"
|
|
},
|
|
{
|
|
"title": "Weight",
|
|
"description": "Weight used in random selection. Value is relative to other weights in the collection.",
|
|
"type": "number",
|
|
"minimum": 0
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"mangrove_roots": {
|
|
"title": "Mangrove Roots",
|
|
"description": "Configuration for mangrove roots",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"max_root_width": {
|
|
"title": "Max Root Width",
|
|
"description": "Max width that the roots can occupy. The width increases up to the max width while moving downwards. When a max width is reached, roots will grow vertically",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"max_root_length": {
|
|
"title": "Max Root Length",
|
|
"description": "Max length that the roots can occupy.",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"root_block": {
|
|
"title": "Root Block",
|
|
"description": "Block used for roots.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"above_root": {
|
|
"title": "Above Root",
|
|
"description": "Configuration object for blocks decorating the top of the roots",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"above_root_chance": {
|
|
"title": "Above Root Chance",
|
|
"description": "Probability of creating a block above the root",
|
|
"$ref": "../types/chance_information.json"
|
|
},
|
|
"above_root_block": {
|
|
"title": "Above Root Block",
|
|
"description": "The block placed on the top of the roots.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"muddy_root_block": {
|
|
"title": "Muddy Root Block",
|
|
"description": "The block used for muddy roots.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"mud_block": {
|
|
"title": "Mud Block",
|
|
"description": "The block used to determine if a muddy root should be placed.",
|
|
"type": "string",
|
|
"$ref": "../../../general/block/reference.json"
|
|
},
|
|
"y_offset": {
|
|
"title": "Y Offset",
|
|
"description": "Root offset from the trunk",
|
|
"$ref": "../../entities/format/types/range_number_type.json"
|
|
},
|
|
"roots_may_grow_through": {
|
|
"title": "Roots May Grow Through",
|
|
"description": "List of blocks that a root can grow through.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "../../../general/block/reference.json"
|
|
}
|
|
},
|
|
"root_decoration": {
|
|
"$ref": "#/definitions/decoration"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |