175 lines
7.0 KiB
JSON
175 lines
7.0 KiB
JSON
{
|
|
"$id": "blockception.minecraft.behavior.feature_rules.1.13.0",
|
|
"type": "object",
|
|
"title": "Feature Rules 1.13.0",
|
|
"description": "Each feature rule controls exactly one feature and serves as the root of a chain of feature data.",
|
|
"additionalProperties": false,
|
|
"required": ["format_version", "minecraft:feature_rules"],
|
|
"minProperties": 2,
|
|
"maxProperties": 2,
|
|
"definitions": {
|
|
"coord_dist": {
|
|
"title": "",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "../../../molang/number.json",
|
|
"description": "Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below."
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Distribution for the coordinate (evaluated each iteration). Mutually exclusive with Molang expression above.",
|
|
"additionalProperties": false,
|
|
"examples": [{ "numerator": 1, "denominator": 1 }],
|
|
"properties": {
|
|
"numerator": {
|
|
"title": "Numerator",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"denominator": {
|
|
"title": "Denominator",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"type": "number",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"format_version": {
|
|
"const": "1.13.0",
|
|
"description": "Specifies the version of the game this entity was made in. Minimum supported version is 1.13.0. Current supported version is 1.13.0.",
|
|
"title": "Format Version"
|
|
},
|
|
"minecraft:feature_rules": {
|
|
"title": "Feature rules",
|
|
"description": "Each feature rule controls exactly one feature and serves as the root of a chain of feature data.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["description", "conditions"],
|
|
"properties": {
|
|
"description": {
|
|
"title": "Description",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["identifier", "places_feature"],
|
|
"properties": {
|
|
"identifier": {
|
|
"title": "Identifier",
|
|
"description": "The name of this feature in the form `namespace_name:feature_name`. `feature_name` must match the filename.",
|
|
"type": "string",
|
|
"$ref": "../../../general/feature/identifier.json"
|
|
},
|
|
"places_feature": {
|
|
"title": "Places Feature",
|
|
"description": "Named reference to the feature controlled by this rule.",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"conditions": {
|
|
"title": "Conditions",
|
|
"description": "Parameters to control where and when the feature will be placed.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["placement_pass"],
|
|
"properties": {
|
|
"placement_pass": {
|
|
"title": "Placement pass",
|
|
"description": "When the feature should be placed relative to others. Earlier passes in the list are guaranteed to occur before later passes. Order is not guaranteed within each pass.",
|
|
"type": "string",
|
|
"enum": [
|
|
"pregeneration_pass",
|
|
"first_pass",
|
|
"before_underground_pass",
|
|
"underground_pass",
|
|
"after_underground_pass",
|
|
"before_surface_pass",
|
|
"surface_pass",
|
|
"after_surface_pass",
|
|
"before_sky_pass",
|
|
"sky_pass",
|
|
"after_sky_pass",
|
|
"final_pass"
|
|
]
|
|
},
|
|
"minecraft:biome_filter": {
|
|
"title": "Placement pass",
|
|
"description": "List of filter tests to determine which biomes this rule will attach to.",
|
|
"$ref": "../../entities/filters/filters.json"
|
|
}
|
|
}
|
|
},
|
|
"distribution": {
|
|
"title": "Distribution",
|
|
"description": "Parameters controlling the initial scatter of the feature.",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["iterations"],
|
|
"properties": {
|
|
"coordinate_eval_order": {
|
|
"title": "Coordinate Eval Order",
|
|
"description": "The order in which coordinates will be evaluated. Should be used when a coordinate depends on another. If omitted, defaults to `xzy`.",
|
|
"type": "string",
|
|
"enum": ["xyz", "xzy", "yxz", "yzx", "zxy", "zyx"]
|
|
},
|
|
"iterations": {
|
|
"title": "Iterations",
|
|
"description": "Number of scattered positions to generate",
|
|
"$ref": "../../../molang/number.json"
|
|
},
|
|
"scatter_chance": {
|
|
"title": "Scatter Chance",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "../../../molang/number.json",
|
|
"description": "Probability (0-100] that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will."
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Probability numerator / denominator that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will.",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"numerator": {
|
|
"title": "Numerator",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"type": "number",
|
|
"minimum": 1
|
|
},
|
|
"denominator": {
|
|
"title": "Denominator",
|
|
"description": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"$comment": "UNDOCUMENTED",
|
|
"type": "number",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"x": { "title": "X", "$ref": "#/definitions/coord_dist" },
|
|
"z": { "title": "Y", "$ref": "#/definitions/coord_dist" },
|
|
"y": { "title": "Z", "$ref": "#/definitions/coord_dist" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|