mirror of
https://github.com/Mojang/bedrock-samples.git
synced 2025-07-24 14:01:45 +00:00
355 lines
14 KiB
JSON
355 lines
14 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "3883188534",
|
|
"x-format-version": "1.21.20",
|
|
"x-minecraft-version": "1.21.90-beta.3",
|
|
"definitions": {
|
|
"4231469203": {
|
|
"title": "Feature Rule Conditions",
|
|
"type": "object",
|
|
"properties": {
|
|
"minecraft:biome_filter": {
|
|
"description": "List of filter tests to determine which biomes this rule will attach to.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"required": [
|
|
"placement_pass"
|
|
]
|
|
},
|
|
"1088251937": {
|
|
"title": "Filter Group",
|
|
"description": "Filters allow data objects to specify test criteria which allows their use. Filters can be defined by a single object of type (Filter Test), an array of tests, collection groups, or a combination of these objects.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/4150989894"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"description": "Filters allow data objects to specify test criteria which allows their use. Filters can be defined by a single object of type (Filter Test), an array of tests, collection groups, or a combination of these objects.",
|
|
"$ref": "#/definitions/1088251937"
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"AND": {
|
|
"description": "Evaluates all tests in the group, all must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"NOT": {
|
|
"description": "Evaluates all tests in the group, all must fail in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"OR": {
|
|
"description": "Evaluates tests in the group, one or more must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"all": {
|
|
"description": "Evaluates all tests in the group, all must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"all_of": {
|
|
"description": "Evaluates all tests in the group, all must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"any": {
|
|
"description": "Evaluates tests in the group, one or more must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"any_of": {
|
|
"description": "Evaluates tests in the group, one or more must pass in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
},
|
|
"none_of": {
|
|
"description": "Evaluates all tests in the group, all must fail in order for the group to pass.",
|
|
"$ref": "#/definitions/1088251937"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"3683814853": {
|
|
"title": "Feature Rule Description",
|
|
"type": "object",
|
|
"properties": {
|
|
"identifier": {
|
|
"description": "The name of this feature rule in the format 'namespace_name:rule_name'. 'rule_name' must match the filename.",
|
|
"type": "string"
|
|
},
|
|
"places_feature": {
|
|
"description": "Named reference to the feature controlled by this rule.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"identifier",
|
|
"places_feature"
|
|
]
|
|
},
|
|
"4150989894": {
|
|
"title": "Filter Test",
|
|
"type": "object",
|
|
"properties": {
|
|
"domain": {
|
|
"description": "The domain the test should be performed in.",
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
]
|
|
},
|
|
"operator": {
|
|
"description": "The comparison to apply with 'value'.",
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
]
|
|
},
|
|
"subject": {
|
|
"description": "The subject of this filter test.",
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
]
|
|
},
|
|
"test": {
|
|
"description": "The name of the test to apply.",
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The value being compared with the test.",
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"test"
|
|
]
|
|
},
|
|
"2195141389": {
|
|
"title": "Scatter Params",
|
|
"description": "Controls the scatter distribution of a particular object.",
|
|
"type": "object",
|
|
"properties": {
|
|
"coordinate_eval_order": {
|
|
"title": "Coordinate Evaluation Order",
|
|
"description": "The order in which coordinates will be evaluated. Should be used when a coordinate depends on another. If omitted, defaults to \"xzy\". Supported orders are defined by \"Coordinate Evaluation Order\".",
|
|
"type": "string",
|
|
"enum": [
|
|
"xyz",
|
|
"xzy",
|
|
"yxz",
|
|
"yzx",
|
|
"zxy",
|
|
"zyx"
|
|
]
|
|
},
|
|
"iterations": {
|
|
"description": "Number of scattered positions to generate.",
|
|
"$ref": "#/definitions/3178719147"
|
|
},
|
|
"scatter_chance": {
|
|
"description": "Probability that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will.",
|
|
"$ref": "#/definitions/2176758423"
|
|
},
|
|
"x": {
|
|
"description": "Distribution for the coordinate (evaluated each iteration).",
|
|
"$ref": "#/definitions/4150871210"
|
|
},
|
|
"y": {
|
|
"description": "Distribution for the coordinate (evaluated each iteration).",
|
|
"$ref": "#/definitions/4150871210"
|
|
},
|
|
"z": {
|
|
"description": "Distribution for the coordinate (evaluated each iteration).",
|
|
"$ref": "#/definitions/4150871210"
|
|
}
|
|
},
|
|
"required": [
|
|
"iterations",
|
|
"x",
|
|
"y",
|
|
"z"
|
|
]
|
|
},
|
|
"3178719147": {
|
|
"title": "Molang expression",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/2267778531"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
]
|
|
},
|
|
"2267778531": {
|
|
"title": "Molang string",
|
|
"oneOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"expression": {
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"expression",
|
|
"version"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"2176758423": {
|
|
"title": "Scatter Chance",
|
|
"description": "Scatter probability represented by an expression or an object with a numerator and denominator.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/3178719147"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"denominator": {
|
|
"description": "Denominator for scatter probability.",
|
|
"type": "integer",
|
|
"minimum": 1.0
|
|
},
|
|
"numerator": {
|
|
"description": "Numerator for scatter probability.",
|
|
"type": "integer",
|
|
"minimum": 1.0
|
|
}
|
|
},
|
|
"required": [
|
|
"denominator",
|
|
"numerator"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"4150871210": {
|
|
"title": "Coordinate Range",
|
|
"description": "Represents the scatter distrubution over a coordinate (x/y/z), can also be built by an expression.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/3178719147"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"distribution": {
|
|
"title": "Random Distribution Type",
|
|
"description": "Type of distribution. Supported distributions are defined by \"Random Distribution Type\".",
|
|
"type": "string",
|
|
"enum": [
|
|
"uniform",
|
|
"gaussian",
|
|
"inverse_gaussian",
|
|
"triangle",
|
|
"fixed_grid",
|
|
"jittered_grid"
|
|
]
|
|
},
|
|
"extent": {
|
|
"description": "Lower and upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/3178719147"
|
|
},
|
|
"minItems": 2,
|
|
"maxItems": 2
|
|
},
|
|
"grid_offset": {
|
|
"description": "When the distribution type is grid, defines the offset along this axis.",
|
|
"type": "integer",
|
|
"minimum": 0.0
|
|
},
|
|
"step_size": {
|
|
"description": "When the distribution type is grid, defines the distance between steps along this axis.",
|
|
"type": "integer",
|
|
"minimum": 1.0
|
|
}
|
|
},
|
|
"required": [
|
|
"distribution",
|
|
"extent"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"title": "Feature Rule Definition",
|
|
"type": "object",
|
|
"properties": {
|
|
"conditions": {
|
|
"description": "Parameters to control where and when the feature will be placed.",
|
|
"$ref": "#/definitions/4231469203"
|
|
},
|
|
"description": {
|
|
"description": "Identifier for the Feature Rule and Feture to place.",
|
|
"$ref": "#/definitions/3683814853"
|
|
},
|
|
"distribution": {
|
|
"description": "Parameters controlling the initial scatter of the feature.",
|
|
"$ref": "#/definitions/2195141389"
|
|
}
|
|
},
|
|
"required": [
|
|
"conditions",
|
|
"description"
|
|
]
|
|
} |