Files
minecraft-bedrock-json-schemas/behavior/feature_rules/feature_rules.json

1 line
62 KiB
JSON
Raw Normal View History

{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.feature_rules","examples":[{"format_version":"1.20.80","minecraft:feature_rules":{"minecraft:ore_feature":{"description":{"identifier":"example:foo","places_feature":"minecraft:legacy:birch_forest_tree_feature"},"conditions":{}}}}],"type":"object","title":"Feature Rules","description":"Each feature rule controls exactly one feature and serves as the root of a chain of feature data.","required":["format_version","minecraft:feature_rules"],"additionalProperties":false,"properties":{"format_version":{"$ref":"#/definitions/A"},"minecraft:feature_rules":{"$ref":"#/definitions/B"}},"definitions":{"A":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^([1-9]+)\\.([0-9]+)\\.([0-9]+)$","type":"string","default":"1.20.81","examples":["1.20.81","1.20.40","1.19.0","1.12.0","1.10.0","1.8.0"],"defaultSnippets":[{"label":"New Format version","body":"1.${1|8,10,12,17,18,19,20|}.${3|2|0|}"}]},"B_coord_dist":{"title":"","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","oneOf":[{"$ref":"#/definitions/C","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","type":"number","minimum":1},"denominator":{"title":"Denominator","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"number","minimum":1}}},{"type":"object","additionalProperties":false,"properties":{"distribution":{"title":"Distribution","description":"Distribution type","type":"string","enum":["uniform","fixed_grid","jittered_grid","gaussian","inverse_gaussian","triangle"]},"extent":{"title":"Extent","description":"Represents the range of values on which that distribution operates, from minimum to maximum.","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}}}}]},"C":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":["(1.0)","(0.0)"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"D":{"description":"A minecraft feature identifier.","examples":["namespace:feature"],"pattern":"^[0-9a-zA-Z:_\\.\\-]+$","title":"Feature Identifier","type":"string","defaultSnippets":[{"label":"New Identifier","body":"$1:$2"}]},"E_filters_spec":{"defaultSnippets":[{"label":"New Test","body":{"test":"$1","value":"$2"}},{"label":"New All_of Test","body":{"all_of":[{"test":"$1","value":"$2"},{"test":"$3","value":"$4"}]}},{"label":"New Any_of Test","body":{"any_of":[{"test":"$1","value":"$2"},{"test":"$3","value":"$4"}]}},{"label":"New None_of Test","body":{"none_of":[{"test":"$1","value":"$2"},{"test":"$3","value":"$4"}]}}],"examples":[{"all_of":[{}]},{"any_of":[{}]},{"none_of":[{}]}],"oneOf":[{"propertyNames":{"enum":["all_of","any_of","none_of"]},"properties":{"all_of":{"title":"All Of","description":"All tests in an `all_of` group must pass in order for the group to pass.","$ref":"#/definitions/E_groups_spec"},"any_of":{"title":"Any Of","description":"One or more tests in an `any_of` group must pass in order for the group to pass.","$ref":"#/definitions/E_groups_spec"},"none_of":{"title":"None Of","description":"All tests in a `none_of` group must fail in order for the group to pass.","$ref":"#/definitions/E_groups_spec"}}},{"required":["test"],"properties":{"all_of":{"title":"All Of","description":"All tests in an `all_of` group must pass in order for the group to pass.","$ref":"#/definitions/E_groups_spec"},"any_of":{"title":"Any Of","description":"One or more tests in an `any_of` group must pass in order for the group to pass.","$ref":"#/definitions/E_groups_spec"},"