mirror of
https://github.com/Mojang/bedrock-samples.git
synced 2024-11-21 20:46:28 +00:00
654 lines
27 KiB
JSON
654 lines
27 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "2288298513",
|
|
"definitions": {
|
|
"1134690608": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::AppendLoot",
|
|
"description": "Modifier will attempt to add loot to a block entity.",
|
|
"type": "object",
|
|
"properties": {
|
|
"loot_table": {
|
|
"description": "The loot table to append",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockEntityModifierType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:append_loot"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"loot_table",
|
|
"type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"1218029234": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructureProcessorList::Description",
|
|
"type": "object",
|
|
"properties": {
|
|
"identifier": {
|
|
"description": "Identifier of the Processor List. This is referenced by Template Pools when pairing processors with Structure Templates.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"identifier"
|
|
]
|
|
},
|
|
"1354340864": {
|
|
"title": "struct SharedTypes::v1_21_20::ConstantIntProvider",
|
|
"description": "Specifies a constant integer",
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"title": "enum SharedTypes::v1_21_20::IntProviderType",
|
|
"type": "string",
|
|
"enum": [
|
|
"constant"
|
|
]
|
|
},
|
|
"value": {
|
|
"description": "Constant value",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"value"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"1391327946": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructureProcessorList::Contents",
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"$ref": "#/definitions/1218029234"
|
|
},
|
|
"processors": {
|
|
"title": "sequence container",
|
|
"description": "List of processors to run on the Structure Template.",
|
|
"type": "array",
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"description": "Replaces and modifies blocks based on a series of rules",
|
|
"$ref": "#/definitions/3016468321"
|
|
},
|
|
{
|
|
"description": "Protect blocks from this structure's placement in the world. Ensuring that it does not replace matching blocks in the world",
|
|
"$ref": "#/definitions/1810898542"
|
|
},
|
|
{
|
|
"description": "Specifies block types in the template that should be ignored by other processors.",
|
|
"$ref": "#/definitions/3518228880"
|
|
},
|
|
{
|
|
"description": "Processor that wraps a processor and caps the number of times the delegated processor can be applied.",
|
|
"$ref": "#/definitions/2581260060"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"description",
|
|
"processors"
|
|
]
|
|
},
|
|
"1556792771": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::AlwaysTruePos",
|
|
"description": "Predicate that always evaluates to true. This is the default predicate if no other predicate is specified.",
|
|
"type": "object",
|
|
"properties": {
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::PosType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:always_true"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"predicate_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"1740413124": {
|
|
"title": "struct SharedTypes::v1_21_20::UniformIntProvider",
|
|
"description": "Specifies a uniformly distributed integer",
|
|
"type": "object",
|
|
"properties": {
|
|
"max_inclusive": {
|
|
"description": "Maximum value (inclusive)",
|
|
"type": "integer"
|
|
},
|
|
"min_inclusive": {
|
|
"description": "Minimum value (inclusive)",
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"title": "enum SharedTypes::v1_21_20::IntProviderType",
|
|
"type": "string",
|
|
"enum": [
|
|
"uniform"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"max_inclusive",
|
|
"min_inclusive",
|
|
"type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"1790427995": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::ArcheologyBlockLootMatch",
|
|
"description": "Predicate that replaces a block and adds loot.",
|
|
"type": "object",
|
|
"properties": {
|
|
"block_mapping": {
|
|
"title": "associative container",
|
|
"description": "Mapping of block types to replace.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"limit": {
|
|
"description": "Maximum number of blocks to replace within the structure.",
|
|
"type": "integer"
|
|
},
|
|
"loot_table": {
|
|
"description": "Loot table to assign to the replaced blocks.",
|
|
"type": "string"
|
|
},
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockType",
|
|
"description": "Predicate that replaces a block and adds a loot table.",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:archeology_block_loot"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"block_mapping",
|
|
"limit",
|
|
"loot_table",
|
|
"predicate_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"1810898542": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::Processors::ProtectedBlock",
|
|
"description": "Protect blocks from this structure's placement in the world. Ensuring that it does not replace matching blocks in the world",
|
|
"type": "object",
|
|
"properties": {
|
|
"processor_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::Processors::Type",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:protected_blocks"
|
|
]
|
|
},
|
|
"value": {
|
|
"description": "Block tag for the blocks that will be protected",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"processor_type",
|
|
"value"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"2198589344": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockMatch",
|
|
"description": "Predicate that evaluates to true if the block at the specified location matches the specified block.",
|
|
"type": "object",
|
|
"properties": {
|
|
"block": {
|
|
"description": "The block to match against.",
|
|
"type": "string"
|
|
},
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:block_match"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"block",
|
|
"predicate_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"2581260060": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::Processors::Capped",
|
|
"description": "Processor that wraps a processor and caps the number of times the delegated processor can be applied.",
|
|
"type": "object",
|
|
"properties": {
|
|
"delegate": {
|
|
"description": "The processor that will be executed.",
|
|
"oneOf": [
|
|
{
|
|
"description": "Replaces and modifies blocks based on a series of rules",
|
|
"$ref": "#/definitions/3016468321"
|
|
},
|
|
{
|
|
"description": "Specifies block types in the template that should be ignored by other processors.",
|
|
"$ref": "#/definitions/3518228880"
|
|
},
|
|
{
|
|
"description": "Protect blocks from this structure's placement in the world. Ensuring that it does not replace matching blocks in the world",
|
|
"$ref": "#/definitions/1810898542"
|
|
}
|
|
]
|
|
},
|
|
"limit": {
|
|
"description": "The maximum number of times that this delegate can be applied.",
|
|
"oneOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"description": "Specifies a constant integer",
|
|
"$ref": "#/definitions/1354340864"
|
|
},
|
|
{
|
|
"description": "Specifies a uniformly distributed integer",
|
|
"$ref": "#/definitions/1740413124"
|
|
}
|
|
]
|
|
},
|
|
"processor_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::Processors::Type",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:capped"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"delegate",
|
|
"limit",
|
|
"processor_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"3016468321": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::Processors::BlockRules",
|
|
"description": "Replaces and modifies blocks based on a series of rules",
|
|
"type": "object",
|
|
"properties": {
|
|
"processor_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::Processors::Type",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:rule"
|
|
]
|
|
},
|
|
"rules": {
|
|
"title": "sequence container",
|
|
"description": "List of block rules evaluated on all blocks of a Structure Template. Block rules are evaluated in order. If a block rule succeeds and the output_state is set, the output_state block will be used as the input_predicate block for subsequent rules.",
|
|
"type": "array",
|
|
"items": {
|
|
"description": "A block rule that is evaluated on all blocks of a Structure Template. All predicates must evaluate to true in order for a block to be replaced by the output_state.",
|
|
"$ref": "#/definitions/3035388266"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"processor_type",
|
|
"rules"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"3034820683": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::TagMatch",
|
|
"description": "Predicate that evaluates to true if the block at the specified location constains the tag.",
|
|
"type": "object",
|
|
"properties": {
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:tag_match"
|
|
]
|
|
},
|
|
"tag": {
|
|
"description": "The tag to be matched",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"predicate_type",
|
|
"tag"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"3035388266": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::Rule",
|
|
"description": "A block rule that is evaluated on all blocks of a Structure Template. All predicates must evaluate to true in order for a block to be replaced by the output_state.",
|
|
"type": "object",
|
|
"properties": {
|
|
"block_entity_modifier": {
|
|
"description": "A block state modifier for block entities when all predicate match.",
|
|
"oneOf": [
|
|
{
|
|
"description": "Modifier that leaves the state unchanged. This is the default block modifier if no other block modifier is specified.",
|
|
"$ref": "#/definitions/45584192"
|
|
},
|
|
{
|
|
"description": "Modifier will attempt to add loot to a block entity.",
|
|
"$ref": "#/definitions/1134690608"
|
|
}
|
|
]
|
|
},
|
|
"input_predicate": {
|
|
"description": "A predicate evaluated on the Structure Template block.",
|
|
"oneOf": [
|
|
{
|
|
"description": "Predicate that always evaluates to true. This is the default predicate if no other predicate is specified.",
|
|
"$ref": "#/definitions/4275912652"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true if the block at the specified location matches the specified block.",
|
|
"$ref": "#/definitions/2198589344"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true with a given probability if the block at the specified location matches the specified block.",
|
|
"$ref": "#/definitions/3523914459"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true if the block at the specified location constains the tag.",
|
|
"$ref": "#/definitions/3034820683"
|
|
}
|
|
]
|
|
},
|
|
"location_predicate": {
|
|
"description": "A predicate evaluated on the world block.",
|
|
"oneOf": [
|
|
{
|
|
"description": "Predicate that always evaluates to true. This is the default predicate if no other predicate is specified.",
|
|
"$ref": "#/definitions/4275912652"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true if the block at the specified location matches the specified block.",
|
|
"$ref": "#/definitions/2198589344"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true with a given probability if the block at the specified location matches the specified block.",
|
|
"$ref": "#/definitions/3523914459"
|
|
},
|
|
{
|
|
"description": "Predicate that evaluates to true if the block at the specified location constains the tag.",
|
|
"$ref": "#/definitions/3034820683"
|
|
}
|
|
]
|
|
},
|
|
"output_state": {
|
|
"description": "Block to replace the world block with if all predicates evaluate to true.",
|
|
"$ref": "#/definitions/3076687790"
|
|
},
|
|
"position_predicate": {
|
|
"description": "A predicate evaluated on the distance between the structure's world origin and the world block.",
|
|
"oneOf": [
|
|
{
|
|
"description": "Predicate that always evaluates to true. This is the default predicate if no other predicate is specified.",
|
|
"$ref": "#/definitions/1556792771"
|
|
},
|
|
{
|
|
"description": "Predicate that evalutes to true if the block is within the distance range along the provided axis and and random number is generated between chance range",
|
|
"$ref": "#/definitions/3839910888"
|
|
},
|
|
{
|
|
"description": "Predicate that replaces a block and adds loot.",
|
|
"$ref": "#/definitions/1790427995"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false,
|
|
"CEREAL_JSON_SCHEMA": "Processor Rule v1.21.20"
|
|
}
|
|
},
|
|
"3076687790": {
|
|
"title": "Block Specifier",
|
|
"description": "Specifies a particular block. Can be a string block name or a JSON object",
|
|
"oneOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"description": "Name of the block",
|
|
"type": "string"
|
|
},
|
|
"states": {
|
|
"title": "associative container",
|
|
"description": "Contains members named after each state, with boolean, integer, or string values.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
]
|
|
}
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false,
|
|
"CEREAL_JSON_SCHEMA": "Block Specifier v1.20.60"
|
|
}
|
|
},
|
|
"3518228880": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::Processors::BlockIgnore",
|
|
"description": "Specifies block types in the template that should be ignored by other processors.",
|
|
"type": "object",
|
|
"properties": {
|
|
"blocks": {
|
|
"title": "sequence container",
|
|
"description": "List of blocks evaluated on all blocks of a Structure Template. If a block is matched in the provided list the block will be ignored for processing.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"processor_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::Processors::Type",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:block_ignore"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"blocks",
|
|
"processor_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"3523914459": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::RandomBlockMatch",
|
|
"description": "Predicate that evaluates to true with a given probability if the block at the specified location matches the specified block.",
|
|
"type": "object",
|
|
"properties": {
|
|
"block": {
|
|
"description": "The block to match against.",
|
|
"type": "string"
|
|
},
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:random_block_match"
|
|
]
|
|
},
|
|
"probability": {
|
|
"description": "Probability of the evaluating to true when the block matches.",
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"exclusiveMaximum": 1.0
|
|
}
|
|
},
|
|
"required": [
|
|
"block",
|
|
"predicate_type",
|
|
"probability"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"3839910888": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::AxisAlignedLinear",
|
|
"description": "Predicate that evalutes to true if the block is within the distance range along the provided axis and and random number is generated between chance range",
|
|
"type": "object",
|
|
"properties": {
|
|
"axis": {
|
|
"title": "PositionalBlockRuleAxis",
|
|
"type": "string",
|
|
"enum": [
|
|
"x",
|
|
"y",
|
|
"z"
|
|
]
|
|
},
|
|
"max_chance": {
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"exclusiveMaximum": 1.0
|
|
},
|
|
"max_dist": {
|
|
"type": "integer",
|
|
"minimum": 0.0
|
|
},
|
|
"min_chance": {
|
|
"type": "number",
|
|
"minimum": 0.0,
|
|
"exclusiveMaximum": 1.0
|
|
},
|
|
"min_dist": {
|
|
"type": "integer",
|
|
"minimum": 0.0
|
|
},
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::PosType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:axis_aligned_linear_pos"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"predicate_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"4275912652": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::AlwaysTrueBlock",
|
|
"description": "Predicate that always evaluates to true. This is the default predicate if no other predicate is specified.",
|
|
"type": "object",
|
|
"properties": {
|
|
"predicate_type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:always_true"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"predicate_type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
},
|
|
"45584192": {
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::Passthrough",
|
|
"description": "Modifier that leaves the state unchanged. This is the default block modifier if no other block modifier is specified.",
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"title": "enum SharedTypes::v1_21_20::JigsawStructure::ProcessorRule::BlockEntityModifierType",
|
|
"type": "string",
|
|
"enum": [
|
|
"minecraft:passthrough"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false
|
|
}
|
|
}
|
|
},
|
|
"title": "struct SharedTypes::v1_21_20::JigsawStructureProcessorList::Document",
|
|
"type": "object",
|
|
"properties": {
|
|
"format_version": {
|
|
"type": "string"
|
|
},
|
|
"minecraft:processor_list": {
|
|
"description": "Rules used by Jigsaw Structures to determine which blocks to modify or replace when placing a Structure Template in the world.",
|
|
"$ref": "#/definitions/1391327946"
|
|
}
|
|
},
|
|
"required": [
|
|
"format_version",
|
|
"minecraft:processor_list"
|
|
],
|
|
"$metaProperties": {
|
|
"CEREAL_DOCUMENTATION_TAG": false,
|
|
"CEREAL_JSON_SCHEMA": "Processor List v1.21.20"
|
|
}
|
|
} |