diff --git a/behavior/biomes/biomes.json b/behavior/biomes/biomes.json index 59d7442e..7380871e 100644 --- a/behavior/biomes/biomes.json +++ b/behavior/biomes/biomes.json @@ -1 +1 @@ -{"$id":"minecraft.behavior.biomes","type":"object","examples":[{"plains":{"format_version":"1.12.0"}}],"additionalProperties":{"type":"object","title":"Biome","description":"A biome definition","allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.12.0"}}},"then":{"$ref":"#/definitions/A"}},{"properties":{"format_version":{"$ref":"#/definitions/BH"}}}]},"definitions":{"B":{"title":"Climate","description":"Describes temperature, humidity, precipitation, etc. Biomes without this component will have default values.","type":"object","minProperties":0,"maxProperties":7,"additionalProperties":false,"properties":{"temperature":{"title":"Temperature","description":"UNDOCUMENATED","type":"number"},"downfall":{"title":"Downfall","description":"UNDOCUMENATED","type":"number"},"red_spores":{"title":"Red Spores","description":"UNDOCUMENATED","type":"number"},"blue_spores":{"title":"Blue Spores","description":"UNDOCUMENATED","type":"number"},"ash":{"title":"Ash","description":"UNDOCUMENATED","type":"number"},"white_ash":{"title":"White Ash","description":"UNDOCUMENATED","type":"number"},"snow_accumulation":{"title":"Snow Accumulation","description":"UNDOCUMENATED","type":"array","items":[{"type":"number"},{"type":"number"}]}}},"C_coordinate":{"oneOf":[{"type":"string","$ref":"#/definitions/D","description":"Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below."},{"type":"number","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,"required":["distribution","extent"],"properties":{"distribution":{"title":"Distribution","description":"Type of distribution - uniform random, gaussian (centered in the range), or grid (either fixed-step or jittered)","type":"string","enum":["uniform","gaussian","inverse_gaussian","fixed_grid","jittered_grid"]},"extent":{"title":"Extent","description":"UNDOCUMENTATED","type":"array","items":[{"title":"Lower Bound","description":"Lower bound (inclusive) of the scatter range, as an offset from the input point to scatter around","$ref":"#/definitions/D"},{"title":"Upper Bound","description":"Upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around","$ref":"#/definitions/D"}]},"grid_offset":{"title":"Step Size","description":"When the distribution type is grid, defines the offset along this axis","type":"integer","minimum":0},"step_size":{"title":"Step Size","description":"When the distribution type is grid, defines the distance between steps along this axis","type":"integer","minimum":1}}}]},"C_iteration":{"title":"Iteration","description":"UNDOCUMENTED","additionalProperties":false,"required":["iterations","places_feature","identifier"],"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"]},"identifier":{"title":"Identifier","description":"UNDOCUMANTED","type":"string"},"iterations":{"title":"Iterations","description":"Number of scattered positions to generate","$ref":"#/definitions/D"},"places_feature":{"title":"Places Feature","description":"UNDOCUMANTED","type":"string"},"scatter_chance":{"title":"Scatter Chance","oneOf":[{"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":{"denominator":{"title":"Denominator","description":"","type":"integer","minimum":1},"numerator":{"title":"Numerator","description":"","type":"integer","minimum":1}}},{"type":"string","description":"Probability (0-100) that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will.","$ref":"#/definitions/D"},{"type":"number","description":"Probability (0-100) that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will."}]},"x":{"title":"X","$ref":"#/definitions/C_coordinate"},"y":{"title":"X","$ref":"#/definitions/C_coordinate"},"z":{"title":"X","$ref":"#/definitions/C_coordinate"}}},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"C":{"title":"Forced Features","description":"Force specific decorative features (trees, plants, etc.) to appear in this Biome, regardless of normal decoration rules.","type":"object","minProperties":0,"maxProperties":11,"additionalProperties":false,"properties":{"after_sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"after_surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"after_underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"final_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"first_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}}}},"E":{"title":"Overworld Height","description":"Noise parameters used to drive terrain height in the Overworld.","type":"object","minProperties":0,"maxProperties":2,"additionalProperties":false,"properties":{"noise_params":{"title":"Noise Params","description":"UNDOCUMENATED","type":"array","items":[{"type":"number"},{"type":"number"}]},"noise_type":{"title":"Noise Type","description":"UNDOCUMENATED","type":"string","enum":["stone_beach","deep_ocean","default","default_mutated","lowlands","river","ocean","taiga","mountains","highlands","mushroom","less_extreme","extreme","beach","swamp"]}}},"F":{"title":"Ignore Automatic Features","description":"No features will be automatically attached to this Biome, only features specified in the minecraft:forced_features component will appear.","type":"object","additionalProperties":false,"properties":{}},"G":{"title":"Surface Parameters","description":"Control the blocks used for the default Minecraft Overworld terrain generation.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"H":{"title":"Surface Material Adjustments","description":"Specify fine-detail changes to blocks used in terrain generation (based on a noise function)","type":"object","additionalProperties":false,"properties":{"adjustments":{"title":"Adjustments","description":"All adjustments that match the column's noise values will be applied in the order listed.","items":{"title":"Adjustment","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"properties":{"height_range":{"title":"Height Range","description":"Defines a range of noise values [min, max] for which this adjustment should be applied.","type":"array","items":[{"$ref":"#/definitions/D","title":"Min"},{"$ref":"#/definitions/D","title":"Max"}]},"materials":{"title":"Materials","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome when this adjustment is active.","type":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome when this adjustment is active.","type":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome when this adjustment is active.","type":"string"},"foundation_material":{"title":"Top Materials","description":"Controls the block type used deep underground in this biome when this adjustment is active.","type":"string"},"sea_material":{"title":"Top Materials","description":"Controls the block type used in the bodies of water in this biome when this adjustment is active.","type":"string"}}},"noise_range":{"title":"Noise Range","description":"Defines a range of noise values [min, max] for which this adjustment should be applied.","type":"array","items":[{"minimum":-1,"maximum":1,"title":"Min"},{"minimum":-1,"maximum":1,"title":"Max"}]}}}}}},"I":{"title":"Swamp Surface","description":"Similar to overworld_surface. Adds swamp surface details.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"J":{"title":"Frozen Ocean Surface","description":"Similar to overworld_surface. Adds icebergs.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"BA":{"title":"Mesa Surface","description":"Similar to overworld_surface. Adds colored strata and optional pillars.","type":"object","minProperties":0,"maxProperties":10,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"},"clay_material":{"title":"Clay Material","description":"UNDOCUMENTATED","type":"string"},"hard_clay_material":{"title":"Hard Clay Material","description":"UNDOCUMENTATED","type":"string"},"bryce_pillars":{"title":"Bryce Pillars","description":"UNDOCUMENTATED","type":"boolean"},"has_forest":{"title":"Has Forest","description":"UNDOCUMENTATED","type":"boolean"}}},"BB":{"title":"Nether Surface","description":"Use default Minecraft Nether terrain generation.","type":"object","additionalProperties":false,"properties":{}},"BC":{"title":"End Surface","description":"Use default Minecraft End terrain generation.","type":"object","additionalProperties":false,"properties":{}},"BD":{"title":"Capped Surface","description":"Generates surface on blocks with non-solid blocks above or below.","type":"object","additionalProperties":false,"required":["floor_materials","ceiling_materials","sea_material","foundation_material"],"properties":{"ceiling_materials":{"title":"Ceiling Materials","description":"Materials used for the surface ceiling.","minItems":1,"items":{"title":"Block Reference","description":"UNDOCUMENTATED","type":"string"}},"floor_materials":{"title":"Floor Materials","description":"Materials used for the surface floor.","minItems":1,"items":{"title":"Block Reference","description":"UNDOCUMENTATED","type":"string"}},"sea_material":{"title":"Sea Material","description":"Material used to replace air blocks below sea level.","type":"string"},"foundation_material":{"title":"Foundation Material","description":"Material used to repalce solid blocks that are not surface blocks.","type":"string"},"beach_material":{"title":"Beach Material","description":"Material used to decorate surface near sea level.","type":"string"}}},"BE_transformation":{"oneOf":[{"type":"string","title":"Block Reference","description":"UNDOCUMENTATED"},{"type":"array","description":"UNDOCUMENTATED","minItems":1,"items":{"oneOf":[{"type":"string","description":"UNDOCUMENTATED","title":"Block Reference"},{"type":"array","description":"UNDOCUMENTATED","items":[{"title":"Biome Reference","description":"UNDOCUMENTATED","type":"string"},{"title":"_","description":"UNDOCUMENTATED","type":"integer"}]}]}}]},"BE":{"title":"Overworld Generation Rules","description":"Control how this biome is instantiated (and then potentially modified) during world generation of the overworld.","type":"object","additionalProperties":false,"properties":{"hills_transformation":{"title":"Hills Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BE_transformation"},"mutate_transformation":{"title":"Mutate Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BE_transformation"},"river_transformation":{"title":"River Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BE_transformation"},"shore_transformation":{"title":"Shore Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BE_transformation"},"generate_for_climates":{"title":"Generate For Climates","description":"Controls the world generation climate categories that this biome can spawn for. A single biome can be associated with multiple categories with different weightings.","type":"array","items":{"title":"_","description":"UNDOCUMENTATED","type":"array","items":[{"title":"UNDOCUMENTATED","description":"Name of a climate category","type":"string","enum":["medium","warm","lukewarm","cold","frozen"]},{"title":"UNDOCUMENTATED","description":"Weight with which this biome should be selected, relative to other biomes in the same category","type":"integer"}]}}}},"BF":{"title":"Nether Generation Rules","description":"Controls how this biome is instantiated (and then potentially modified) during world generation of the nether.","type":"object","additionalProperties":false,"properties":{"target_temperature":{"title":"Target Temperature","description":"Temperature with which this biome should selected, relative to other biomes.","type":"number"},"target_humidity":{"title":"Target Humidity","description":"Humidity with which this biome should selected, relative to other biomes.","type":"number"},"target_altitude":{"title":"Target Altitude","description":"Altitude with which this biome should selected, relative to other biomes.","type":"number"},"target_weirdness":{"title":"Target Weirdness","description":"Weirdness with which this biome should selected, relative to other biomes.","type":"number"},"weight":{"title":"Weight","description":"Weight with which this biome should selected, relative to other biomes.","type":"number"}}},"BG":{"title":"Legacy World Generation Rules","description":"Additional world generation control applicable only to legacy limited worlds.","type":"object","additionalProperties":false,"properties":{}},"A":{"type":"object","title":"Biomes","description":"The definition of a biome","additionalProperties":{"title":"Tag","type":"object","description":"Components with no namespace are treated as 'tags': any name consisting of alphanumeric characters, '.' and '_' is permitted; the tag is attached to the biome so that either code or data may check for its existence; tag components may not have member fields.","additionalProperties":false},"properties":{"minecraft:climate":{"$ref":"#/definitions/B"},"minecraft:forced_features":{"$ref":"#/definitions/C"},"minecraft:overworld_height":{"$ref":"#/definitions/E"},"minecraft:ignore_automatic_features":{"$ref":"#/definitions/F"},"minecraft:surface_parameters":{"$ref":"#/definitions/G"},"minecraft:surface_material_adjustments":{"$ref":"#/definitions/H"},"minecraft:swamp_surface":{"$ref":"#/definitions/I"},"minecraft:frozen_ocean_surface":{"$ref":"#/definitions/J"},"minecraft:mesa_surface":{"$ref":"#/definitions/BA"},"minecraft:nether_surface":{"$ref":"#/definitions/BB"},"minecraft:the_end_surface":{"$ref":"#/definitions/BC"},"minecraft:capped_surface":{"$ref":"#/definitions/BD"},"minecraft:overworld_generation_rules":{"$ref":"#/definitions/BE"},"minecraft:nether_generation_rules":{"$ref":"#/definitions/BF"},"minecraft:legacy_world_generation_rules":{"$ref":"#/definitions/BG"}}},"BH":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file +{"$id":"minecraft.behavior.biomes","type":"object","examples":[{"plains":{"format_version":"1.12.0"}}],"additionalProperties":{"type":"object","title":"Biome","description":"A biome definition","allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.12.0"}}},"then":{"$ref":"#/definitions/A"}},{"properties":{"format_version":{"$ref":"#/definitions/BI"}}}]},"definitions":{"B":{"title":"Climate","description":"Describes temperature, humidity, precipitation, etc. Biomes without this component will have default values.","type":"object","minProperties":0,"maxProperties":7,"additionalProperties":false,"properties":{"temperature":{"title":"Temperature","description":"UNDOCUMENATED","type":"number"},"downfall":{"title":"Downfall","description":"UNDOCUMENATED","type":"number"},"red_spores":{"title":"Red Spores","description":"UNDOCUMENATED","type":"number"},"blue_spores":{"title":"Blue Spores","description":"UNDOCUMENATED","type":"number"},"ash":{"title":"Ash","description":"UNDOCUMENATED","type":"number"},"white_ash":{"title":"White Ash","description":"UNDOCUMENATED","type":"number"},"snow_accumulation":{"title":"Snow Accumulation","description":"UNDOCUMENATED","type":"array","items":[{"type":"number"},{"type":"number"}]}}},"C_coordinate":{"oneOf":[{"type":"string","$ref":"#/definitions/D","description":"Expression for the coordinate (evaluated each iteration). Mutually exclusive with random distribution object below."},{"type":"number","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,"required":["distribution","extent"],"properties":{"distribution":{"title":"Distribution","description":"Type of distribution - uniform random, gaussian (centered in the range), or grid (either fixed-step or jittered)","type":"string","enum":["uniform","gaussian","inverse_gaussian","fixed_grid","jittered_grid"]},"extent":{"title":"Extent","description":"UNDOCUMENTATED","type":"array","items":[{"title":"Lower Bound","description":"Lower bound (inclusive) of the scatter range, as an offset from the input point to scatter around","$ref":"#/definitions/D"},{"title":"Upper Bound","description":"Upper bound (inclusive) of the scatter range, as an offset from the input point to scatter around","$ref":"#/definitions/D"}]},"grid_offset":{"title":"Step Size","description":"When the distribution type is grid, defines the offset along this axis","type":"integer","minimum":0},"step_size":{"title":"Step Size","description":"When the distribution type is grid, defines the distance between steps along this axis","type":"integer","minimum":1}}}]},"C_iteration":{"title":"Iteration","description":"UNDOCUMENTED","additionalProperties":false,"required":["iterations","places_feature","identifier"],"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"]},"identifier":{"title":"Identifier","description":"UNDOCUMANTED","type":"string"},"iterations":{"title":"Iterations","description":"Number of scattered positions to generate","$ref":"#/definitions/D"},"places_feature":{"title":"Places Feature","description":"UNDOCUMANTED","type":"string"},"scatter_chance":{"title":"Scatter Chance","oneOf":[{"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":{"denominator":{"title":"Denominator","description":"","type":"integer","minimum":1},"numerator":{"title":"Numerator","description":"","type":"integer","minimum":1}}},{"type":"string","description":"Probability (0-100) that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will.","$ref":"#/definitions/D"},{"type":"number","description":"Probability (0-100) that this scatter will occur. Not evaluated each iteration; either no iterations will run, or all will."}]},"x":{"title":"X","$ref":"#/definitions/C_coordinate"},"y":{"title":"X","$ref":"#/definitions/C_coordinate"},"z":{"title":"X","$ref":"#/definitions/C_coordinate"}}},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"C":{"title":"Forced Features","description":"Force specific decorative features (trees, plants, etc.) to appear in this Biome, regardless of normal decoration rules.","type":"object","minProperties":0,"maxProperties":11,"additionalProperties":false,"properties":{"after_sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"after_surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"after_underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"before_underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"final_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"first_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"surface_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"sky_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}},"underground_pass":{"title":"First Pass","description":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/C_iteration"}}}},"E":{"title":"Overworld Height","description":"Noise parameters used to drive terrain height in the Overworld.","type":"object","minProperties":0,"maxProperties":2,"additionalProperties":false,"properties":{"noise_params":{"title":"Noise Params","description":"UNDOCUMENATED","type":"array","items":[{"type":"number"},{"type":"number"}]},"noise_type":{"title":"Noise Type","description":"UNDOCUMENATED","type":"string","enum":["stone_beach","deep_ocean","default","default_mutated","lowlands","river","ocean","taiga","mountains","highlands","mushroom","less_extreme","extreme","beach","swamp"]}}},"F":{"title":"Ignore Automatic Features","description":"No features will be automatically attached to this Biome, only features specified in the minecraft:forced_features component will appear.","type":"object","additionalProperties":false,"properties":{}},"G":{"title":"Surface Parameters","description":"Control the blocks used for the default Minecraft Overworld terrain generation.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"H":{"title":"Surface Material Adjustments","description":"Specify fine-detail changes to blocks used in terrain generation (based on a noise function)","type":"object","additionalProperties":false,"properties":{"adjustments":{"title":"Adjustments","description":"All adjustments that match the column's noise values will be applied in the order listed.","items":{"title":"Adjustment","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"properties":{"height_range":{"title":"Height Range","description":"Defines a range of noise values [min, max] for which this adjustment should be applied.","type":"array","items":[{"$ref":"#/definitions/D","title":"Min"},{"$ref":"#/definitions/D","title":"Max"}]},"materials":{"title":"Materials","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome when this adjustment is active.","type":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome when this adjustment is active.","type":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome when this adjustment is active.","type":"string"},"foundation_material":{"title":"Top Materials","description":"Controls the block type used deep underground in this biome when this adjustment is active.","type":"string"},"sea_material":{"title":"Top Materials","description":"Controls the block type used in the bodies of water in this biome when this adjustment is active.","type":"string"}}},"noise_range":{"title":"Noise Range","description":"Defines a range of noise values [min, max] for which this adjustment should be applied.","type":"array","items":[{"minimum":-1,"maximum":1,"title":"Min"},{"minimum":-1,"maximum":1,"title":"Max"}]}}}}}},"I":{"title":"Swamp Surface","description":"Similar to overworld_surface. Adds swamp surface details.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"J":{"title":"Frozen Ocean Surface","description":"Similar to overworld_surface. Adds icebergs.","type":"object","minProperties":0,"maxProperties":6,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"}}},"BA":{"title":"Mesa Surface","description":"Similar to overworld_surface. Adds colored strata and optional pillars.","type":"object","minProperties":0,"maxProperties":10,"additionalProperties":false,"properties":{"top_material":{"title":"Top Material","description":"Controls the block type used for the surface of this biome.","string":"string"},"mid_material":{"title":"Mid Material","description":"Controls the block type used in a layer below the surface of this biome.","string":"string"},"sea_floor_material":{"title":"Sea Floor Material","description":"Controls the block type used as a floor for bodies of water in this biome.","string":"boostringlean"},"foundation_material":{"title":"Foundation Material","description":"Controls the block type used deep underground in this biome.","string":"string"},"sea_material":{"title":"Sea Material","description":"Controls the block type used for the bodies of water in this biome.","string":"string"},"sea_floor_depth":{"title":"Sea Floor Depth","description":"Controls how deep below the world water level the floor should occur.","type":"integer"},"clay_material":{"title":"Clay Material","description":"UNDOCUMENTATED","type":"string"},"hard_clay_material":{"title":"Hard Clay Material","description":"UNDOCUMENTATED","type":"string"},"bryce_pillars":{"title":"Bryce Pillars","description":"UNDOCUMENTATED","type":"boolean"},"has_forest":{"title":"Has Forest","description":"UNDOCUMENTATED","type":"boolean"}}},"BB":{"title":"Mountain parameters","description":"Noise parameters used to drive mountain terrain generation in Overworld","type":"object","additionalProperties":false,"minProperties":0,"maxProperties":3,"properties":{"peaks_factor":{"type":"number","title":"Peaks factor","description":"UNDOCUMENTATED"},"steep_material_adjustment":{"type":"object","title":"Steep material adjustment","description":"Defines surface material for steep slopes","additionalProperties":false,"properties":{"material":{"type":"string","title":"Material","description":"Block type use as steep material."},"north_slopes":{"type":"boolean","title":"North slopes","description":"Enable for north facing slopes"},"south_slopes":{"type":"boolean","title":"South slopes","description":"Enable for south facing slopes"},"west_slopes":{"type":"boolean","title":"West slopes","description":"Enable for west facing slopes"},"east_slopes":{"type":"boolean","title":"East slopes","description":"Enable for east facing slopes"}}},"top_slide":{"title":"Top slide","description":"Controls the density tapering that happens at the top of the world to prevent terrain from reaching too high","type":"object","additionalProperties":false,"properties":{"enabled":{"title":"Enabled","description":"If false, top slide will be disabled. If true, other parameters will be taken into account"}}}}},"BC":{"title":"Nether Surface","description":"Use default Minecraft Nether terrain generation.","type":"object","additionalProperties":false,"properties":{}},"BD":{"title":"End Surface","description":"Use default Minecraft End terrain generation.","type":"object","additionalProperties":false,"properties":{}},"BE":{"title":"Capped Surface","description":"Generates surface on blocks with non-solid blocks above or below.","type":"object","additionalProperties":false,"required":["floor_materials","ceiling_materials","sea_material","foundation_material"],"properties":{"ceiling_materials":{"title":"Ceiling Materials","description":"Materials used for the surface ceiling.","minItems":1,"items":{"title":"Block Reference","description":"UNDOCUMENTATED","type":"string"}},"floor_materials":{"title":"Floor Materials","description":"Materials used for the surface floor.","minItems":1,"items":{"title":"Block Reference","description":"UNDOCUMENTATED","type":"string"}},"sea_material":{"title":"Sea Material","description":"Material used to replace air blocks below sea level.","type":"string"},"foundation_material":{"title":"Foundation Material","description":"Material used to repalce solid blocks that are not surface blocks.","type":"string"},"beach_material":{"title":"Beach Material","description":"Material used to decorate surface near sea level.","type":"string"}}},"BF_transformation":{"oneOf":[{"type":"string","title":"Block Reference","description":"UNDOCUMENTATED"},{"type":"array","description":"UNDOCUMENTATED","minItems":1,"items":{"oneOf":[{"type":"string","description":"UNDOCUMENTATED","title":"Block Reference"},{"type":"array","description":"UNDOCUMENTATED","items":[{"title":"Biome Reference","description":"UNDOCUMENTATED","type":"string"},{"title":"_","description":"UNDOCUMENTATED","type":"integer"}]}]}}]},"BF":{"title":"Overworld Generation Rules","description":"Control how this biome is instantiated (and then potentially modified) during world generation of the overworld.","type":"object","additionalProperties":false,"properties":{"hills_transformation":{"title":"Hills Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BF_transformation"},"mutate_transformation":{"title":"Mutate Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BF_transformation"},"river_transformation":{"title":"River Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BF_transformation"},"shore_transformation":{"title":"Shore Transformation","description":"UNDOCUMENTATED","$ref":"#/definitions/BF_transformation"},"generate_for_climates":{"title":"Generate For Climates","description":"Controls the world generation climate categories that this biome can spawn for. A single biome can be associated with multiple categories with different weightings.","type":"array","items":{"title":"_","description":"UNDOCUMENTATED","type":"array","items":[{"title":"UNDOCUMENTATED","description":"Name of a climate category","type":"string","enum":["medium","warm","lukewarm","cold","frozen"]},{"title":"UNDOCUMENTATED","description":"Weight with which this biome should be selected, relative to other biomes in the same category","type":"integer"}]}}}},"BG":{"title":"Nether Generation Rules","description":"Controls how this biome is instantiated (and then potentially modified) during world generation of the nether.","type":"object","additionalProperties":false,"properties":{"target_temperature":{"title":"Target Temperature","description":"Temperature with which this biome should selected, relative to other biomes.","type":"number"},"target_humidity":{"title":"Target Humidity","description":"Humidity with which this biome should selected, relative to other biomes.","type":"number"},"target_altitude":{"title":"Target Altitude","description":"Altitude with which this biome should selected, relative to other biomes.","type":"number"},"target_weirdness":{"title":"Target Weirdness","description":"Weirdness with which this biome should selected, relative to other biomes.","type":"number"},"weight":{"title":"Weight","description":"Weight with which this biome should selected, relative to other biomes.","type":"number"}}},"BH":{"title":"Legacy World Generation Rules","description":"Additional world generation control applicable only to legacy limited worlds.","type":"object","additionalProperties":false,"properties":{}},"A":{"type":"object","title":"Biomes","description":"The definition of a biome","additionalProperties":{"title":"Tag","type":"object","description":"Components with no namespace are treated as 'tags': any name consisting of alphanumeric characters, '.' and '_' is permitted; the tag is attached to the biome so that either code or data may check for its existence; tag components may not have member fields.","additionalProperties":false},"properties":{"minecraft:climate":{"$ref":"#/definitions/B"},"minecraft:forced_features":{"$ref":"#/definitions/C"},"minecraft:overworld_height":{"$ref":"#/definitions/E"},"minecraft:ignore_automatic_features":{"$ref":"#/definitions/F"},"minecraft:surface_parameters":{"$ref":"#/definitions/G"},"minecraft:surface_material_adjustments":{"$ref":"#/definitions/H"},"minecraft:swamp_surface":{"$ref":"#/definitions/I"},"minecraft:frozen_ocean_surface":{"$ref":"#/definitions/J"},"minecraft:mesa_surface":{"$ref":"#/definitions/BA"},"minecraft:mountain_parameters":{"$ref":"#/definitions/BB"},"minecraft:nether_surface":{"$ref":"#/definitions/BC"},"minecraft:the_end_surface":{"$ref":"#/definitions/BD"},"minecraft:capped_surface":{"$ref":"#/definitions/BE"},"minecraft:overworld_generation_rules":{"$ref":"#/definitions/BF"},"minecraft:nether_generation_rules":{"$ref":"#/definitions/BG"},"minecraft:legacy_world_generation_rules":{"$ref":"#/definitions/BH"}}},"BI":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file diff --git a/behavior/blocks/blocks.json b/behavior/blocks/blocks.json index ec38dcfb..3ac61720 100644 --- a/behavior/blocks/blocks.json +++ b/behavior/blocks/blocks.json @@ -1 +1 @@ -{"$id":"blockception.minecraft.behavior.blocks","examples":[{"format_version":"1.16.200","minecraft:block":{"description":{"identifier":"namespace:block","properties":{}},"components":{},"events":{}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.10"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.12.0"}}},"then":{"$ref":"#/definitions/CH"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.0"}}},"then":{"$ref":"#/definitions/CI"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.100"}}},"then":{"$ref":"#/definitions/CJ"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.200"}}},"then":{"$ref":"#/definitions/HG"}},{"properties":{"format_version":{"$ref":"#/definitions/BCD"}}}],"definitions":{"B":{"type":"string","title":"Block Identifier 1.8.0","description":"The minecraft block identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"D":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.10.0","description":"The amount of light this block will absorb.","default":0},"E":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.10.0","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"F":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.10.0","description":"When pushed by a piston the block breaks."},"G":{"additionalProperties":false,"type":"string","title":"Breathability 1.10.0","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"H":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.10.0","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"I":{"additionalProperties":false,"type":"string","title":"Display Name 1.10.0","description":"Specifies the display name id for the block."},"J":{"additionalProperties":false,"title":"Entity Collision 1.10.0","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"BA":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.10.0","description":"Sets the explosion resistance for this block.","default":0.0},"BB":{"additionalProperties":false,"type":"object","title":"Flammable 1.10.0","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"BC":{"additionalProperties":false,"type":"number","title":"Friction 1.10.0","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"BD":{"additionalProperties":false,"type":"string","title":"Geometry 1.10.0","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"BE":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.10.0","description":"An Immovable block cannot be pushed by pistons"},"BF":{"additionalProperties":false,"type":"string","title":"Loot 1.10.0","description":"The path of the loot table that this component will use when the block is destroyed.","pattern":"loot_tables/.*\\.json$"},"BG":{"additionalProperties":false,"type":"string","title":"Map Color 1.10.0","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"BH_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"BH":{"type":"object","title":"Material Instances 1.10.0","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/BH_material_instance"}},"additionalProperties":{"$ref":"#/definitions/BH_material_instance"}},"BI":{"type":"boolean","title":"Only Piston Push 1.10.0","description":"Blocks with those components won't stick to stickyPistons"},"BJ":{"title":"Pick Collision 1.10.0","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"CA":{"title":"Placement Filter 1.10.0","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"CB":{"title":"Prevents Jumping 1.10.0","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"CC":{"title":"Random Ticking 1.10.0","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}}},"CD":{"title":"Rotation 1.10.0","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"CE":{"title":"Ticking 1.10.0","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"CF":{"title":"Unit Cube 1.10.0","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"CG":{"title":"Unwalkable 1.10.0","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"C":{"title":"Components","description":"The components of that define this block","required":[],"type":"object","additionalProperties":false,"properties":{"minecraft:block_light_absorption":{"$ref":"#/definitions/D"},"minecraft:block_light_emission":{"$ref":"#/definitions/E"},"minecraft:breakonpush":{"$ref":"#/definitions/F"},"minecraft:breathability":{"$ref":"#/definitions/G"},"minecraft:destroy_time":{"$ref":"#/definitions/H"},"minecraft:display_name":{"$ref":"#/definitions/I"},"minecraft:entity_collision":{"$ref":"#/definitions/J"},"minecraft:explosion_resistance":{"$ref":"#/definitions/BA"},"minecraft:flammable":{"$ref":"#/definitions/BB"},"minecraft:friction":{"$ref":"#/definitions/BC"},"minecraft:geometry":{"$ref":"#/definitions/BD"},"minecraft:immovable":{"$ref":"#/definitions/BE"},"minecraft:loot":{"$ref":"#/definitions/BF"},"minecraft:map_color":{"$ref":"#/definitions/BG"},"minecraft:material_instances":{"$ref":"#/definitions/BH"},"minecraft:onlypistonpush":{"$ref":"#/definitions/BI"},"minecraft:pick_collision":{"$ref":"#/definitions/BJ"},"minecraft:placement_filter":{"$ref":"#/definitions/CA"},"minecraft:preventsjumping":{"$ref":"#/definitions/CB"},"minecraft:random_ticking":{"$ref":"#/definitions/CC"},"minecraft:rotation":{"$ref":"#/definitions/CD"},"minecraft:ticking":{"$ref":"#/definitions/CE"},"minecraft:unit_cube":{"$ref":"#/definitions/CF"},"minecraft:unwalkable":{"$ref":"#/definitions/CG"}}},"A":{"description":"Minecraft blocks 1.10.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.10.0 Format Version","type":"string","const":"1.10.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"}}},"components":{"$ref":"#/definitions/C"}}}}},"CH":{"description":"Minecraft blocks 1.12.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.12.0 Format Version","type":"string","const":"1.12.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"}}},"components":{"$ref":"#/definitions/C"}}}}},"CI":{"description":"Minecraft blocks 1.16.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.0 Format Version","type":"string","const":"1.16.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"components":{"$ref":"#/definitions/C"}}}}},"DA":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"min_fall_distance":{"type":"number","default":0,"description":"The minimum distance in blocks that an actor needs to fall to trigger this event.","title":"Min Fall Distance"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DB":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DC":{"type":"object","title":"On Placed 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DD":{"type":"object","title":"On Player Destroyed 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DE":{"type":"object","title":"On Player Placing 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DF":{"type":"object","title":"On Step Off 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DG":{"type":"object","title":"On Step On 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DH":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.16.100","description":"The amount of light this block will absorb.","default":0},"DI":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.16.100","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"DJ":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.16.100","description":"When pushed by a piston the block breaks."},"EA":{"additionalProperties":false,"type":"string","title":"Breathability 1.16.100","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"EB":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.16.100","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"EC":{"additionalProperties":false,"type":"string","title":"Display Name 1.16.100","description":"Specifies the display name id for the block."},"ED":{"additionalProperties":false,"title":"Entity Collision 1.16.100","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"EE":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.16.100","description":"Sets the explosion resistance for this block.","default":0.0},"EF":{"additionalProperties":false,"type":"object","title":"Flammable 1.16.100","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"EG":{"additionalProperties":false,"type":"number","title":"Friction 1.16.100","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"EH":{"additionalProperties":false,"type":"string","title":"Geometry 1.16.100","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"EI":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.16.100","description":"An Immovable block cannot be pushed by pistons"},"EJ":{"additionalProperties":false,"type":"string","title":"Map Color 1.16.100","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"FA_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"FA":{"type":"object","title":"Material Instances 1.16.100","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/FA_material_instance"}},"additionalProperties":{"$ref":"#/definitions/FA_material_instance"}},"FB":{"type":"boolean","title":"Only Piston Push 1.16.100","description":"Blocks with those components won't stick to stickyPistons"},"FC":{"title":"Pick Collision 1.16.100","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"FD":{"title":"Placement Filter 1.16.100","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"FE":{"title":"Prevents Jumping 1.16.100","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"FF":{"title":"Random Ticking 1.16.100","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","default":"1","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","default":"set_block_property","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}},"looping":{"type":"boolean","default":true,"description":"Does the event loop","title":"Looping"},"range":{"type":"array","default":[10,10],"description":"The Range between which the component will trigger his event.","title":"Range"}}},"FG":{"title":"Rotation 1.16.100","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"FH":{"title":"Ticking 1.16.100","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"FI":{"title":"Unit Cube 1.16.100","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"FJ":{"title":"Unwalkable 1.16.100","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"GA_event_base":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"$ref":"#/definitions/GA_event_functions","properties":{"sequence":{"title":"Sequence","description":"UNDOCUMENTATED","type":"array","items":{"title":"Sequence","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/GA_event_functions"}},"randomize":{"title":"Randomize","description":"UNDOCUMENTATED","type":"array","items":{"title":"Randomize","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/GA_event_functions","required":["weight"],"properties":{"weight":{"title":"Weight","description":"UNDOCUMENTATED","type":"integer","minimum":0}}}},"add_mob_effect":{"$ref":"#/definitions/GB"},"damage":{"$ref":"#/definitions/GC"},"decrement_stack":{"$ref":"#/definitions/GD"},"die":{"$ref":"#/definitions/GE"},"play_effect":{"$ref":"#/definitions/GF"},"play_sound":{"$ref":"#/definitions/GG"},"remove_mob_effect":{"$ref":"#/definitions/GH"},"run_command":{"$ref":"#/definitions/GI"},"set_block":{"$ref":"#/definitions/GJ"},"set_block_at_pos":{"$ref":"#/definitions/HA"},"set_block_property":{"$ref":"#/definitions/HB"},"spawn_loot":{"$ref":"#/definitions/HC"},"swing":{"$ref":"#/definitions/HD"},"teleport":{"$ref":"#/definitions/HE"},"transform_item":{"$ref":"#/definitions/HF"}}},"GA_event_functions":{"title":"Event","description":"UNDOCUMENTATED","type":"object","properties":{"add_mob_effect":{"$ref":"#/definitions/GB"},"damage":{"$ref":"#/definitions/GC"},"decrement_stack":{"$ref":"#/definitions/GD"},"die":{"$ref":"#/definitions/GE"},"play_effect":{"$ref":"#/definitions/GF"},"play_sound":{"$ref":"#/definitions/GG"},"remove_mob_effect":{"$ref":"#/definitions/GH"},"run_command":{"$ref":"#/definitions/GI"},"set_block":{"$ref":"#/definitions/GJ"},"set_block_at_pos":{"$ref":"#/definitions/HA"},"set_block_property":{"$ref":"#/definitions/HB"},"spawn_loot":{"$ref":"#/definitions/HC"},"swing":{"$ref":"#/definitions/HD"},"teleport":{"$ref":"#/definitions/HE"},"transform_item":{"$ref":"#/definitions/HF"}}},"GB":{"type":"object","description":"Apply mob effect to target.","title":"Add Mob Effect","additionalProperties":false,"properties":{"amplifier":{"type":"integer","default":0,"description":"The amplifier for the mob effect.","title":"Amplifier"},"duration":{"type":"number","default":0,"description":"The duration of the mob effect.","title":"Duration"},"effect":{"type":"string","default":"","description":"The mob effect to apply.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GC":{"type":"object","description":"Deals damage to the target.","title":"Damage","additionalProperties":false,"properties":{"amount":{"type":"integer","default":0,"description":"The amount of damage to deal.","title":"Amount"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"},"type":{"type":"string","default":"","description":"The type of damage to deal.","title":"Type"}}},"GD":{"type":"object","description":"Decrement item stack.","title":"Decrement Stack","additionalProperties":false,"properties":{}},"GE":{"type":"object","description":"Kill target. If target is self and this is run from a block then destroy the block.","title":"Die","additionalProperties":false,"properties":{"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GF":{"type":"object","description":"Spawns a particle effect relative to target position.","title":"Play Effect","additionalProperties":false,"properties":{"data":{"type":"integer","default":0,"description":"Particle data value.","title":"Data"},"effect":{"type":"string","default":"","description":"The name of the particle effect to create.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GG":{"type":"object","description":"Play a sound relative to target position.","title":"Playsound","additionalProperties":false,"properties":{"sound":{"type":"string","default":"","description":"The name of the sound to play.","title":"Sound"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GH":{"type":"object","description":"Removes mob effect from target.","title":"Remove Mob Effect","additionalProperties":false,"properties":{"effect":{"type":"string","default":"","description":"The mob effect to remove. Use 'all' to remove all mob effects from target.","title":"Effect"},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"GI":{"type":"object","description":"Triggers a slash command or a list of slash commands.","title":"Run Command","additionalProperties":false,"properties":{"command":{"default":"","description":"Slash command to run.","title":"Command","oneof":[{"type":"string"},{"type":"array","items":{"type":"string","title":"Command","description":"Slash command to run."}}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"GJ":{"type":"object","description":"Sets this block to another block type.","title":"Set Block","additionalProperties":false,"properties":{"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"HA":{"type":"object","description":"Sets a block relative to this block to another block type.","title":"Set Block At Pos","additionalProperties":false,"properties":{"block_offset":{"type":"array","default":[0.0,0.0,0.0],"description":"The offset from the block's center.","title":"Block Offset","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"HB":{"type":"object","description":"Sets a block property on this block","title":"Set Block Property","additionalProperties":false,"properties":{"property":{"type":"string","description":"Block property to set on the block.","title":"Property"}}},"HC":{"type":"object","description":"Spawn loot from block.","title":"Spawn Loot","required":["table"],"additionalProperties":false,"properties":{"table":{"type":"string","description":"File path, relative to the Behavior Pack's path, to the loot table file.","title":"Table"}}},"HD":{"type":"object","description":"Event causes the actor to swing.","title":"Swing","additionalProperties":false,"properties":{}},"HE":{"type":"object","description":"Teleport target randomly around destination point.","title":"Teleport","additionalProperties":false,"properties":{"avoid_water":{"type":"boolean","default":true,"description":"Determines if the teleport avoids putting the target in water.","title":"Avoid Water"},"destination":{"default":[0.0,0.0,0.0],"description":"Origin destination of the teleport.","title":"Destination","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"land_on_block":{"type":"boolean","default":true,"description":"Determines if the teleport places the target on a block.","title":"Land On Block"},"max_range":{"default":[8.0,8.0,8.0],"description":"Max range the target can teleport relative to the origin destination.","title":"Max Range","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"HF":{"type":"object","description":"Transforms item into another item.","title":"Transform Item 1.16.100","additionalProperties":false,"properties":{"transform":{"type":"string","description":"Name of the item it should transform into","title":"Transform"}}},"GA":{"title":"Events","description":"UNDOCUMENTATED","type":"object","properties":{"minecraft:on_interact":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_step_on":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_step_off":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_fall_on":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_placed":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_player_placing":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/GA_event_base"},"minecraft:ticking":{"$ref":"#/definitions/GA_event_base"},"minecraft:random_ticking":{"$ref":"#/definitions/GA_event_base"}},"additionalProperties":{"$ref":"#/definitions/GA_event_base"}},"CJ":{"description":"Minecraft blocks 1.16.100","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.100 Format Version","type":"string","const":"1.16.100","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"components":{"type":"object","title":"Component","description":"","properties":{"minecraft:on_fall_on":{"$ref":"#/definitions/DA"},"minecraft:on_interact":{"$ref":"#/definitions/DB"},"minecraft:on_placed":{"$ref":"#/definitions/DC"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/DD"},"minecraft:on_player_placing":{"$ref":"#/definitions/DE"},"minecraft:on_step_off":{"$ref":"#/definitions/DF"},"minecraft:on_step_on":{"$ref":"#/definitions/DG"},"minecraft:block_light_absorption":{"$ref":"#/definitions/DH"},"minecraft:block_light_emission":{"$ref":"#/definitions/DI"},"minecraft:breakonpush":{"$ref":"#/definitions/DJ"},"minecraft:breathability":{"$ref":"#/definitions/EA"},"minecraft:destroy_time":{"$ref":"#/definitions/EB"},"minecraft:display_name":{"$ref":"#/definitions/EC"},"minecraft:entity_collision":{"$ref":"#/definitions/ED"},"minecraft:explosion_resistance":{"$ref":"#/definitions/EE"},"minecraft:flammable":{"$ref":"#/definitions/EF"},"minecraft:friction":{"$ref":"#/definitions/EG"},"minecraft:geometry":{"$ref":"#/definitions/EH"},"minecraft:immovable":{"$ref":"#/definitions/EI"},"minecraft:map_color":{"$ref":"#/definitions/EJ"},"minecraft:material_instances":{"$ref":"#/definitions/FA"},"minecraft:onlypistonpush":{"$ref":"#/definitions/FB"},"minecraft:pick_collision":{"$ref":"#/definitions/FC"},"minecraft:placement_filter":{"$ref":"#/definitions/FD"},"minecraft:preventsjumping":{"$ref":"#/definitions/FE"},"minecraft:random_ticking":{"$ref":"#/definitions/FF"},"minecraft:rotation":{"$ref":"#/definitions/FG"},"minecraft:ticking":{"$ref":"#/definitions/FH"},"minecraft:unit_cube":{"$ref":"#/definitions/FI"},"minecraft:unwalkable":{"$ref":"#/definitions/FJ"}}},"events":{"$ref":"#/definitions/GA"}}}}},"HH":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"min_fall_distance":{"type":"number","default":0,"description":"The minimum distance in blocks that an actor needs to fall to trigger this event.","title":"Min Fall Distance"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"HI":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"HJ":{"type":"object","title":"On Placed 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IA":{"type":"object","title":"On Player Destroyed 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IB":{"type":"object","title":"On Player Placing 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IC":{"type":"object","title":"On Step Off 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"ID":{"type":"object","title":"On Step On 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IE":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.16.200","description":"The amount of light this block will absorb.","default":0},"IF":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.16.200","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"IG":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.16.200","description":"When pushed by a piston the block breaks."},"IH":{"additionalProperties":false,"type":"string","title":"Breathability 1.16.200","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"II":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.16.200","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"IJ":{"additionalProperties":false,"type":"string","title":"Display Name 1.16.200","description":"Specifies the display name id for the block."},"JA":{"additionalProperties":false,"title":"Entity Collision 1.16.200","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"JB":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.16.200","description":"Sets the explosion resistance for this block.","default":0.0},"JC":{"additionalProperties":false,"type":"object","title":"Flammable 1.16.200","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"JD":{"additionalProperties":false,"type":"number","title":"Friction 1.16.200","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"JE":{"additionalProperties":false,"type":"string","title":"Geometry 1.16.200","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"JF":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.16.200","description":"An Immovable block cannot be pushed by pistons"},"JG":{"additionalProperties":false,"type":"string","title":"Map Color 1.16.200","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"JH_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"JH":{"type":"object","title":"Material Instances 1.16.200","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/JH_material_instance"}},"additionalProperties":{"$ref":"#/definitions/JH_material_instance"}},"JI":{"type":"boolean","title":"Only Piston Push 1.16.200","description":"Blocks with those components won't stick to stickyPistons"},"JJ":{"title":"Pick Collision 1.16.200","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"BAA":{"title":"Placement Filter 1.16.200","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"BAB":{"title":"Prevents Jumping 1.16.200","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"BAC":{"title":"Random Ticking 1.16.200","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","default":"1","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","default":"set_block_property","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}},"looping":{"type":"boolean","default":true,"description":"Does the event loop","title":"Looping"},"range":{"type":"array","default":[10,10],"description":"The Range between which the component will trigger his event.","title":"Range"}}},"BAD":{"title":"Rotation 1.16.200","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"BAE":{"title":"Ticking 1.16.200","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"BAF":{"title":"Unit Cube 1.16.200","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"BAG":{"title":"Unwalkable 1.16.200","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"BAH_event_base":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"properties":{"sequence":{"title":"Sequence","description":"UNDOCUMENTATED","type":"array","items":{"title":"Sequence","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/BAH_event_functions"}},"randomize":{"title":"Randomize","description":"UNDOCUMENTATED","type":"array","items":{"title":"Randomize","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/BAH_event_functions","required":["weight"],"properties":{"weight":{"title":"Weight","description":"UNDOCUMENTATED","type":"integer","minimum":0}}}},"add_mob_effect":{"$ref":"#/definitions/BAI"},"damage":{"$ref":"#/definitions/BAJ"},"decrement_stack":{"$ref":"#/definitions/BBA"},"die":{"$ref":"#/definitions/BBB"},"play_effect":{"$ref":"#/definitions/BBC"},"play_sound":{"$ref":"#/definitions/BBD"},"remove_mob_effect":{"$ref":"#/definitions/BBE"},"run_command":{"$ref":"#/definitions/BBF"},"set_block":{"$ref":"#/definitions/BBG"},"set_block_at_pos":{"$ref":"#/definitions/BBH"},"set_block_property":{"$ref":"#/definitions/BBI"},"spawn_loot":{"$ref":"#/definitions/BBJ"},"swing":{"$ref":"#/definitions/BCA"},"teleport":{"$ref":"#/definitions/BCB"},"transform_item":{"$ref":"#/definitions/BCC"}}},"BAH_event_functions":{"title":"Event","description":"UNDOCUMENTATED","type":"object","properties":{"add_mob_effect":{"$ref":"#/definitions/BAI"},"damage":{"$ref":"#/definitions/BAJ"},"decrement_stack":{"$ref":"#/definitions/BBA"},"die":{"$ref":"#/definitions/BBB"},"play_effect":{"$ref":"#/definitions/BBC"},"play_sound":{"$ref":"#/definitions/BBD"},"remove_mob_effect":{"$ref":"#/definitions/BBE"},"run_command":{"$ref":"#/definitions/BBF"},"set_block":{"$ref":"#/definitions/BBG"},"set_block_at_pos":{"$ref":"#/definitions/BBH"},"set_block_property":{"$ref":"#/definitions/BBI"},"spawn_loot":{"$ref":"#/definitions/BBJ"},"swing":{"$ref":"#/definitions/BCA"},"teleport":{"$ref":"#/definitions/BCB"},"transform_item":{"$ref":"#/definitions/BCC"}}},"BAI":{"type":"object","description":"Apply mob effect to target.","title":"Add Mob Effect 1.16.200","additionalProperties":false,"properties":{"amplifier":{"type":"integer","default":0,"description":"The amplifier for the mob effect.","title":"Amplifier"},"duration":{"type":"number","default":0,"description":"The duration of the mob effect.","title":"Duration"},"effect":{"type":"string","default":"","description":"The mob effect to apply.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BAJ":{"type":"object","description":"Deals damage to the target.","title":"Damage 1.16.200","additionalProperties":false,"properties":{"amount":{"type":"integer","default":0,"description":"The amount of damage to deal.","title":"Amount"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"},"type":{"type":"string","default":"","description":"The type of damage to deal.","title":"Type"}}},"BBA":{"type":"object","description":"Decrement item stack.","title":"Decrement Stack 1.16.200","additionalProperties":false,"properties":{}},"BBB":{"type":"object","description":"Kill target. If target is self and this is run from a block then destroy the block.","title":"Die 1.16.200","additionalProperties":false,"properties":{"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBC":{"type":"object","description":"Spawns a particle effect relative to target position.","title":"Play Effect 1.16.200","additionalProperties":false,"properties":{"data":{"type":"integer","default":0,"description":"Particle data value.","title":"Data"},"effect":{"type":"string","default":"","description":"The name of the particle effect to create.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBD":{"type":"object","description":"Play a sound relative to target position.","title":"Playsound 1.16.200","additionalProperties":false,"properties":{"sound":{"type":"string","default":"","description":"The name of the sound to play.","title":"Sound"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBE":{"type":"object","description":"Removes mob effect from target.","title":"Remove Mob Effect 1.16.200","additionalProperties":false,"properties":{"effect":{"type":"string","default":"","description":"The mob effect to remove. Use 'all' to remove all mob effects from target.","title":"Effect"},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBF":{"type":"object","description":"Triggers a slash command or a list of slash commands.","title":"Run Command 1.16.200","additionalProperties":false,"properties":{"command":{"default":"","description":"Slash command to run.","title":"Command","oneof":[{"type":"string"},{"type":"array","items":{"type":"string","title":"Command","description":"Slash command to run."}}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBG":{"type":"object","description":"Sets this block to another block type.","title":"Set Block 1.16.200","additionalProperties":false,"properties":{"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"BBH":{"type":"object","description":"Sets a block relative to this block to another block type.","title":"Set Block At Pos 1.16.200","additionalProperties":false,"properties":{"block_offset":{"type":"array","default":[0.0,0.0,0.0],"description":"The offset from the block's center.","title":"Block Offset","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"BBI":{"type":"object","description":"Sets a block property on this block","title":"Set Block Property 1.16.200","additionalProperties":false,"properties":{"property":{"type":"string","description":"Block property to set on the block.","title":"Property"}}},"BBJ":{"type":"object","description":"Spawn loot from block.","title":"Spawn Loot 1.16.200","required":["table"],"additionalProperties":false,"properties":{"table":{"type":"string","description":"File path, relative to the Behavior Pack's path, to the loot table file.","title":"Table"}}},"BCA":{"type":"object","description":"Event causes the actor to swing.","title":"Swing 1.16.200","additionalProperties":false,"properties":{}},"BCB":{"type":"object","description":"Teleport target randomly around destination point.","title":"Teleport 1.16.200","additionalProperties":false,"properties":{"avoid_water":{"type":"boolean","default":true,"description":"Determines if the teleport avoids putting the target in water.","title":"Avoid Water"},"destination":{"default":[0.0,0.0,0.0],"description":"Origin destination of the teleport.","title":"Destination","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"land_on_block":{"type":"boolean","default":true,"description":"Determines if the teleport places the target on a block.","title":"Land On Block"},"max_range":{"default":[8.0,8.0,8.0],"description":"Max range the target can teleport relative to the origin destination.","title":"Max Range","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BCC":{"type":"object","description":"Transforms item into another item.","title":"Transform Item 1.16.200","additionalProperties":false,"properties":{"transform":{"type":"string","description":"Name of the item it should transform into","title":"Transform"}}},"BAH":{"title":"Events","description":"UNDOCUMENTATED","type":"object","properties":{"minecraft:on_interact":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_step_on":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_step_off":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_fall_on":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_placed":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_player_placing":{"$ref":"#/definitions/BAH_event_base"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/BAH_event_base"},"minecraft:ticking":{"$ref":"#/definitions/BAH_event_base"},"minecraft:random_ticking":{"$ref":"#/definitions/BAH_event_base"}},"additionalProperties":{"oneOf":[{"$ref":"#/definitions/BAH_event_base"},{"$ref":"#/definitions/BAH_event_functions"}]}},"HG":{"description":"Minecraft blocks 1.16.200","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.200 Format Version","type":"string","const":"1.16.200","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"components":{"type":"object","title":"Component","description":"","properties":{"minecraft:on_fall_on":{"$ref":"#/definitions/HH"},"minecraft:on_interact":{"$ref":"#/definitions/HI"},"minecraft:on_placed":{"$ref":"#/definitions/HJ"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/IA"},"minecraft:on_player_placing":{"$ref":"#/definitions/IB"},"minecraft:on_step_off":{"$ref":"#/definitions/IC"},"minecraft:on_step_on":{"$ref":"#/definitions/ID"},"minecraft:block_light_absorption":{"$ref":"#/definitions/IE"},"minecraft:block_light_emission":{"$ref":"#/definitions/IF"},"minecraft:breakonpush":{"$ref":"#/definitions/IG"},"minecraft:breathability":{"$ref":"#/definitions/IH"},"minecraft:destroy_time":{"$ref":"#/definitions/II"},"minecraft:display_name":{"$ref":"#/definitions/IJ"},"minecraft:entity_collision":{"$ref":"#/definitions/JA"},"minecraft:explosion_resistance":{"$ref":"#/definitions/JB"},"minecraft:flammable":{"$ref":"#/definitions/JC"},"minecraft:friction":{"$ref":"#/definitions/JD"},"minecraft:geometry":{"$ref":"#/definitions/JE"},"minecraft:immovable":{"$ref":"#/definitions/JF"},"minecraft:map_color":{"$ref":"#/definitions/JG"},"minecraft:material_instances":{"$ref":"#/definitions/JH"},"minecraft:onlypistonpush":{"$ref":"#/definitions/JI"},"minecraft:pick_collision":{"$ref":"#/definitions/JJ"},"minecraft:placement_filter":{"$ref":"#/definitions/BAA"},"minecraft:preventsjumping":{"$ref":"#/definitions/BAB"},"minecraft:random_ticking":{"$ref":"#/definitions/BAC"},"minecraft:rotation":{"$ref":"#/definitions/BAD"},"minecraft:ticking":{"$ref":"#/definitions/BAE"},"minecraft:unit_cube":{"$ref":"#/definitions/BAF"},"minecraft:unwalkable":{"$ref":"#/definitions/BAG"}}},"events":{"$ref":"#/definitions/BAH"}}}}},"BCD":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file +{"$id":"blockception.minecraft.behavior.blocks","examples":[{"format_version":"1.16.200","minecraft:block":{"description":{"identifier":"namespace:block","properties":{}},"components":{},"events":{}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.10"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.12.0"}}},"then":{"$ref":"#/definitions/CH"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.0"}}},"then":{"$ref":"#/definitions/CI"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.100"}}},"then":{"$ref":"#/definitions/CJ"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.16.200"}}},"then":{"$ref":"#/definitions/HH"}},{"properties":{"format_version":{"$ref":"#/definitions/BCE"}}}],"definitions":{"B":{"type":"string","title":"Block Identifier 1.8.0","description":"The minecraft block identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"D":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.10.0","description":"The amount of light this block will absorb.","default":0},"E":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.10.0","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"F":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.10.0","description":"When pushed by a piston the block breaks."},"G":{"additionalProperties":false,"type":"string","title":"Breathability 1.10.0","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"H":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.10.0","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"I":{"additionalProperties":false,"type":"string","title":"Display Name 1.10.0","description":"Specifies the display name id for the block."},"J":{"additionalProperties":false,"title":"Entity Collision 1.10.0","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"BA":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.10.0","description":"Sets the explosion resistance for this block.","default":0.0},"BB":{"additionalProperties":false,"type":"object","title":"Flammable 1.10.0","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"BC":{"additionalProperties":false,"type":"number","title":"Friction 1.10.0","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"BD":{"additionalProperties":false,"type":"string","title":"Geometry 1.10.0","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"BE":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.10.0","description":"An Immovable block cannot be pushed by pistons"},"BF":{"additionalProperties":false,"type":"string","title":"Loot 1.10.0","description":"The path of the loot table that this component will use when the block is destroyed.","pattern":"loot_tables/.*\\.json$"},"BG":{"additionalProperties":false,"type":"string","title":"Map Color 1.10.0","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"BH_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"BH":{"type":"object","title":"Material Instances 1.10.0","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/BH_material_instance"}},"additionalProperties":{"$ref":"#/definitions/BH_material_instance"}},"BI":{"type":"boolean","title":"Only Piston Push 1.10.0","description":"Blocks with those components won't stick to stickyPistons"},"BJ":{"title":"Pick Collision 1.10.0","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"CA":{"title":"Placement Filter 1.10.0","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"CB":{"title":"Prevents Jumping 1.10.0","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"CC":{"title":"Random Ticking 1.10.0","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}}},"CD":{"title":"Rotation 1.10.0","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"CE":{"title":"Ticking 1.10.0","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"CF":{"title":"Unit Cube 1.10.0","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"CG":{"title":"Unwalkable 1.10.0","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"C":{"title":"Components","description":"The components of that define this block","required":[],"type":"object","additionalProperties":false,"properties":{"minecraft:block_light_absorption":{"$ref":"#/definitions/D"},"minecraft:block_light_emission":{"$ref":"#/definitions/E"},"minecraft:breakonpush":{"$ref":"#/definitions/F"},"minecraft:breathability":{"$ref":"#/definitions/G"},"minecraft:destroy_time":{"$ref":"#/definitions/H"},"minecraft:display_name":{"$ref":"#/definitions/I"},"minecraft:entity_collision":{"$ref":"#/definitions/J"},"minecraft:explosion_resistance":{"$ref":"#/definitions/BA"},"minecraft:flammable":{"$ref":"#/definitions/BB"},"minecraft:friction":{"$ref":"#/definitions/BC"},"minecraft:geometry":{"$ref":"#/definitions/BD"},"minecraft:immovable":{"$ref":"#/definitions/BE"},"minecraft:loot":{"$ref":"#/definitions/BF"},"minecraft:map_color":{"$ref":"#/definitions/BG"},"minecraft:material_instances":{"$ref":"#/definitions/BH"},"minecraft:onlypistonpush":{"$ref":"#/definitions/BI"},"minecraft:pick_collision":{"$ref":"#/definitions/BJ"},"minecraft:placement_filter":{"$ref":"#/definitions/CA"},"minecraft:preventsjumping":{"$ref":"#/definitions/CB"},"minecraft:random_ticking":{"$ref":"#/definitions/CC"},"minecraft:rotation":{"$ref":"#/definitions/CD"},"minecraft:ticking":{"$ref":"#/definitions/CE"},"minecraft:unit_cube":{"$ref":"#/definitions/CF"},"minecraft:unwalkable":{"$ref":"#/definitions/CG"}}},"A":{"description":"Minecraft blocks 1.10.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.10.0 Format Version","type":"string","const":"1.10.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"}}},"components":{"$ref":"#/definitions/C"}}}}},"CH":{"description":"Minecraft blocks 1.12.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.12.0 Format Version","type":"string","const":"1.12.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"}}},"components":{"$ref":"#/definitions/C"}}}}},"CI":{"description":"Minecraft blocks 1.16.0","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.0 Format Version","type":"string","const":"1.16.0","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"components":{"$ref":"#/definitions/C"}}}}},"DA":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"min_fall_distance":{"type":"number","default":0,"description":"The minimum distance in blocks that an actor needs to fall to trigger this event.","title":"Min Fall Distance"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DB":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DC":{"type":"object","title":"On Placed 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DD":{"type":"object","title":"On Player Destroyed 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DE":{"type":"object","title":"On Player Placing 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DF":{"type":"object","title":"On Step Off 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DG":{"type":"object","title":"On Step On 1.16.100","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"DH":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.16.100","description":"The amount of light this block will absorb.","default":0},"DI":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.16.100","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"DJ":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.16.100","description":"When pushed by a piston the block breaks."},"EA":{"additionalProperties":false,"type":"string","title":"Breathability 1.16.100","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"EB":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.16.100","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"EC":{"additionalProperties":false,"type":"string","title":"Display Name 1.16.100","description":"Specifies the display name id for the block."},"ED":{"title":"Entity Collision 1.16.100","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"EE":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.16.100","description":"Sets the explosion resistance for this block.","default":0.0},"EF":{"additionalProperties":false,"type":"object","title":"Flammable 1.16.100","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"EG":{"additionalProperties":false,"type":"number","title":"Friction 1.16.100","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"EH":{"additionalProperties":false,"type":"string","title":"Geometry 1.16.100","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"EI":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.16.100","description":"An Immovable block cannot be pushed by pistons"},"EJ":{"additionalProperties":false,"type":"string","title":"Map Color 1.16.100","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"FA_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"FA":{"type":"object","title":"Material Instances 1.16.100","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/FA_material_instance"}},"additionalProperties":{"$ref":"#/definitions/FA_material_instance"}},"FB":{"type":"boolean","title":"Only Piston Push 1.16.100","description":"Blocks with those components won't stick to stickyPistons"},"FC":{"title":"Pick Collision 1.16.100","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"FD":{"title":"Placement Filter 1.16.100","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"FE":{"title":"Prevents Jumping 1.16.100","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"FF":{"title":"Random Ticking 1.16.100","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","default":"1","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","default":"set_block_property","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}},"looping":{"type":"boolean","default":true,"description":"Does the event loop","title":"Looping"},"range":{"type":"array","default":[10,10],"description":"The Range between which the component will trigger his event.","title":"Range"}}},"FG":{"title":"Rotation 1.16.100","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"FH":{"title":"Ticking 1.16.100","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"FI":{"title":"Unit Cube 1.16.100","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"FJ":{"title":"Unwalkable 1.16.100","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"GA_event_base":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"$ref":"#/definitions/GA_event_functions","properties":{"sequence":{"title":"Sequence","description":"UNDOCUMENTATED","type":"array","items":{"title":"Sequence","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/GA_event_functions"}},"randomize":{"title":"Randomize","description":"UNDOCUMENTATED","type":"array","items":{"title":"Randomize","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/GA_event_functions","required":["weight"],"properties":{"weight":{"title":"Weight","description":"UNDOCUMENTATED","type":"integer","minimum":0}}}},"add_mob_effect":{"$ref":"#/definitions/GB"},"damage":{"$ref":"#/definitions/GC"},"decrement_stack":{"$ref":"#/definitions/GD"},"die":{"$ref":"#/definitions/GE"},"play_effect":{"$ref":"#/definitions/GF"},"play_sound":{"$ref":"#/definitions/GG"},"remove_mob_effect":{"$ref":"#/definitions/GH"},"run_command":{"$ref":"#/definitions/GI"},"set_block":{"$ref":"#/definitions/GJ"},"set_block_at_pos":{"$ref":"#/definitions/HA"},"set_block_property":{"$ref":"#/definitions/HB"},"spawn_loot":{"$ref":"#/definitions/HC"},"swing":{"$ref":"#/definitions/HD"},"teleport":{"$ref":"#/definitions/HE"},"transform_item":{"$ref":"#/definitions/HF"}}},"GA_event_functions":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":true,"properties":{"add_mob_effect":{"$ref":"#/definitions/GB"},"damage":{"$ref":"#/definitions/GC"},"decrement_stack":{"$ref":"#/definitions/GD"},"die":{"$ref":"#/definitions/GE"},"play_effect":{"$ref":"#/definitions/GF"},"play_sound":{"$ref":"#/definitions/GG"},"remove_mob_effect":{"$ref":"#/definitions/GH"},"run_command":{"$ref":"#/definitions/GI"},"set_block":{"$ref":"#/definitions/GJ"},"set_block_at_pos":{"$ref":"#/definitions/HA"},"set_block_property":{"$ref":"#/definitions/HB"},"spawn_loot":{"$ref":"#/definitions/HC"},"swing":{"$ref":"#/definitions/HD"},"teleport":{"$ref":"#/definitions/HE"},"transform_item":{"$ref":"#/definitions/HF"}}},"GB":{"type":"object","description":"Apply mob effect to target.","title":"Add Mob Effect","additionalProperties":false,"properties":{"amplifier":{"type":"integer","default":0,"description":"The amplifier for the mob effect.","title":"Amplifier"},"duration":{"type":"number","default":0,"description":"The duration of the mob effect.","title":"Duration"},"effect":{"type":"string","default":"","description":"The mob effect to apply.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GC":{"type":"object","description":"Deals damage to the target.","title":"Damage","additionalProperties":false,"properties":{"amount":{"type":"integer","default":0,"description":"The amount of damage to deal.","title":"Amount"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"},"type":{"type":"string","default":"","description":"The type of damage to deal.","title":"Type"}}},"GD":{"type":"object","description":"Decrement item stack.","title":"Decrement Stack","additionalProperties":false,"properties":{}},"GE":{"type":"object","description":"Kill target. If target is self and this is run from a block then destroy the block.","title":"Die","additionalProperties":false,"properties":{"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GF":{"type":"object","description":"Spawns a particle effect relative to target position.","title":"Play Effect","additionalProperties":false,"properties":{"data":{"type":"integer","default":0,"description":"Particle data value.","title":"Data"},"effect":{"type":"string","default":"","description":"The name of the particle effect to create.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GG":{"type":"object","description":"Play a sound relative to target position.","title":"Playsound","additionalProperties":false,"properties":{"sound":{"type":"string","default":"","description":"The name of the sound to play.","title":"Sound"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"GH":{"type":"object","description":"Removes mob effect from target.","title":"Remove Mob Effect","additionalProperties":false,"properties":{"effect":{"type":"string","default":"","description":"The mob effect to remove. Use 'all' to remove all mob effects from target.","title":"Effect"},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"GI":{"type":"object","description":"Triggers a slash command or a list of slash commands.","title":"Run Command","additionalProperties":false,"properties":{"command":{"default":"","description":"Slash command to run.","title":"Command","oneof":[{"type":"string"},{"type":"array","items":{"type":"string","title":"Command","description":"Slash command to run."}}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"GJ":{"type":"object","description":"Sets this block to another block type.","title":"Set Block","additionalProperties":false,"properties":{"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"HA":{"type":"object","description":"Sets a block relative to this block to another block type.","title":"Set Block At Pos","additionalProperties":false,"properties":{"block_offset":{"type":"array","default":[0.0,0.0,0.0],"description":"The offset from the block's center.","title":"Block Offset","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"HB":{"type":"object","description":"Sets a block property on this block","title":"Set Block Property","additionalProperties":false,"properties":{"property":{"type":"string","description":"Block property to set on the block.","title":"Property"}}},"HC":{"type":"object","description":"Spawn loot from block.","title":"Spawn Loot","required":["table"],"additionalProperties":false,"properties":{"table":{"type":"string","description":"File path, relative to the Behavior Pack's path, to the loot table file.","title":"Table"}}},"HD":{"type":"object","description":"Event causes the actor to swing.","title":"Swing","additionalProperties":false,"properties":{}},"HE":{"type":"object","description":"Teleport target randomly around destination point.","title":"Teleport","additionalProperties":false,"properties":{"avoid_water":{"type":"boolean","default":true,"description":"Determines if the teleport avoids putting the target in water.","title":"Avoid Water"},"destination":{"default":[0.0,0.0,0.0],"description":"Origin destination of the teleport.","title":"Destination","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"land_on_block":{"type":"boolean","default":true,"description":"Determines if the teleport places the target on a block.","title":"Land On Block"},"max_range":{"default":[8.0,8.0,8.0],"description":"Max range the target can teleport relative to the origin destination.","title":"Max Range","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"HF":{"type":"object","description":"Transforms item into another item.","title":"Transform Item 1.16.100","additionalProperties":false,"properties":{"transform":{"type":"string","description":"Name of the item it should transform into","title":"Transform"}}},"GA":{"title":"Events","description":"UNDOCUMENTATED","type":"object","properties":{"minecraft:on_interact":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_step_on":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_step_off":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_fall_on":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_placed":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_player_placing":{"$ref":"#/definitions/GA_event_base"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/GA_event_base"},"minecraft:ticking":{"$ref":"#/definitions/GA_event_base"},"minecraft:random_ticking":{"$ref":"#/definitions/GA_event_base"}},"additionalProperties":{"$ref":"#/definitions/GA_event_base"}},"HG":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"CJ":{"description":"Minecraft blocks 1.16.100","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.100 Format Version","type":"string","const":"1.16.100","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"definitions":{"CJ_components_ref":{"type":"object","title":"Component","description":"UNDOCUMENTATED","additionalProperties":false,"properties":{"minecraft:on_fall_on":{"$ref":"#/definitions/DA"},"minecraft:on_interact":{"$ref":"#/definitions/DB"},"minecraft:on_placed":{"$ref":"#/definitions/DC"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/DD"},"minecraft:on_player_placing":{"$ref":"#/definitions/DE"},"minecraft:on_step_off":{"$ref":"#/definitions/DF"},"minecraft:on_step_on":{"$ref":"#/definitions/DG"},"minecraft:block_light_absorption":{"$ref":"#/definitions/DH"},"minecraft:block_light_emission":{"$ref":"#/definitions/DI"},"minecraft:breakonpush":{"$ref":"#/definitions/DJ"},"minecraft:breathability":{"$ref":"#/definitions/EA"},"minecraft:destroy_time":{"$ref":"#/definitions/EB"},"minecraft:display_name":{"$ref":"#/definitions/EC"},"minecraft:entity_collision":{"$ref":"#/definitions/ED"},"minecraft:explosion_resistance":{"$ref":"#/definitions/EE"},"minecraft:flammable":{"$ref":"#/definitions/EF"},"minecraft:friction":{"$ref":"#/definitions/EG"},"minecraft:geometry":{"$ref":"#/definitions/EH"},"minecraft:immovable":{"$ref":"#/definitions/EI"},"minecraft:map_color":{"$ref":"#/definitions/EJ"},"minecraft:material_instances":{"$ref":"#/definitions/FA"},"minecraft:onlypistonpush":{"$ref":"#/definitions/FB"},"minecraft:pick_collision":{"$ref":"#/definitions/FC"},"minecraft:placement_filter":{"$ref":"#/definitions/FD"},"minecraft:preventsjumping":{"$ref":"#/definitions/FE"},"minecraft:random_ticking":{"$ref":"#/definitions/FF"},"minecraft:rotation":{"$ref":"#/definitions/FG"},"minecraft:ticking":{"$ref":"#/definitions/FH"},"minecraft:unit_cube":{"$ref":"#/definitions/FI"},"minecraft:unwalkable":{"$ref":"#/definitions/FJ"}}}},"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"events":{"$ref":"#/definitions/GA"},"components":{"type":"object","title":"Component","$ref":"#/definitions/CJ_components_ref"},"permutations":{"type":"array","title":"Permutations","description":"UNDOCUMENATED","items":{"title":"Permutation","description":"UNDOCUMENATED","type":"object","additionalProperties":false,"properties":{"condition":{"title":"Condition","description":"UNDOCUMENATED","$ref":"#/definitions/HG"},"components":{"type":"object","title":"Component","$ref":"#/definitions/CJ_components_ref"}}}}}}}},"HI":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"min_fall_distance":{"type":"number","default":0,"description":"The minimum distance in blocks that an actor needs to fall to trigger this event.","title":"Min Fall Distance"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"HJ":{"type":"object","title":"On Fall On","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IA":{"type":"object","title":"On Placed 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IB":{"type":"object","title":"On Player Destroyed 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IC":{"type":"object","title":"On Player Placing 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"ID":{"type":"object","title":"On Step Off 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IE":{"type":"object","title":"On Step On 1.16.200","description":"Describes event for this block.","properties":{"condition":{"type":"string","default":"","description":"The condition of event to be executed on the block.","title":"Condition"},"event":{"type":"string","default":"","description":"The event executed on the block.","title":"Event"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"IF":{"additionalProperties":false,"type":"integer","title":"Block Light Absorption 1.16.200","description":"The amount of light this block will absorb.","default":0},"IG":{"additionalProperties":false,"type":"number","title":"Block Light Emission 1.16.200","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"IH":{"additionalProperties":false,"type":"boolean","title":"Break On Push 1.16.200","description":"When pushed by a piston the block breaks."},"II":{"additionalProperties":false,"type":"string","title":"Breathability 1.16.200","description":"Property describing the breathability of this block and whether it is treated as a solid or as air.","enum":["solid","air"],"default":"solid"},"IJ":{"additionalProperties":false,"type":"number","title":"Destroy Time 1.16.200","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times."},"JA":{"additionalProperties":false,"type":"string","title":"Display Name 1.16.200","description":"Specifies the display name id for the block."},"JB":{"title":"Entity Collision 1.16.200","description":"Can only be set to false, it disables the collision of the block with entities.","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"JC":{"additionalProperties":false,"type":"number","title":"Explosion Resistance 1.16.200","description":"Sets the explosion resistance for this block.","default":0.0},"JD":{"additionalProperties":false,"type":"object","title":"Flammable 1.16.200","description":"Describes the flammable properties for this block.","additionalItems":false,"properties":{"burn_odds":{"type":"integer","default":0,"description":"How likely the block will be destroyed by flames when on fire.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire.","title":"Flame Odds"}}},"JE":{"additionalProperties":false,"type":"number","title":"Friction 1.16.200","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"JF":{"additionalProperties":false,"type":"string","title":"Geometry 1.16.200","description":"The geometry definition name to use.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"JG":{"additionalProperties":false,"type":"boolean","title":"Immovable 1.16.200","description":"An Immovable block cannot be pushed by pistons"},"JH":{"additionalProperties":false,"type":"string","title":"Map Color 1.16.200","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex"},"JI_material_instance":{"title":"Material Instance","description":"A single material instance","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTATED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTATED"},"render_method":{"type":"string","title":"Render Method","description":"TODO description","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"TODO description"}}},"JI":{"type":"object","title":"Material Instances 1.16.200","description":"Maps face or material_instance names in a geometry file to an actual material instance. Material instance can either be a full material instance or a name to another already defined instance","properties":{"*":{"$ref":"#/definitions/JI_material_instance"}},"additionalProperties":{"$ref":"#/definitions/JI_material_instance"}},"JJ":{"type":"boolean","title":"Only Piston Push 1.16.200","description":"Blocks with those components won't stick to stickyPistons"},"BAA":{"title":"Pick Collision 1.16.200","description":"Can only be set to false, it disables the collision of the block with entities","oneOf":[{"type":"boolean","const":false},{"type":"object","additionalProperties":false,"properties":{"origin":{"type":"array","title":"Origin","description":"Minimal position Bounds of the collision box","default":[-8.0,0.0,-8.0],"items":[{"type":"number","title":"X","description":"The x offset"},{"type":"number","title":"Y","description":"The y offset"},{"type":"number","title":"Z","description":"The z offset"}]},"size":{"type":"array","title":"Size","description":"Size of each side of the box of the component","default":[16.0,16.0,16.0],"items":[{"type":"number","title":"X","description":"The x size"},{"type":"number","title":"Y","description":"The y size"},{"type":"number","title":"Z","description":"The z size"}]}}}]},"BAB":{"title":"Placement Filter 1.16.200","description":"Sets rules for under what conditions the block can be placed/survive","type":"object","properties":{"conditions":{"title":"Conditions","description":"List of conditions where the block can be placed/survive","type":"array","items":{"type":"object","title":"Condition","description":"TODO","properties":{"allowed_faces":{"title":"Allowed Faces","description":"List of any of the following strings: up, down, north, south, east, west, side, all","type":"array","items":{"type":"string","enum":["up","down","north","south","east","west","side","all"]}},"block_filter":{"title":"Block Filter","description":"List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction","type":"array","items":{"type":"string","title":"Block Identifier","description":"TODO"}}}}}}},"BAC":{"title":"Prevents Jumping 1.16.200","description":"This component makes it so actors can't jump when walking on this block","type":"boolean"},"BAD":{"title":"Random Ticking 1.16.200","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"on_tick":{"title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","type":"string","additionalProperties":false,"properties":{"condition":{"title":"Condition","type":"string","default":"1","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","default":"set_block_property","description":"The type of event executed on the block."},"range":{"title":"Range","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}},"looping":{"type":"boolean","default":true,"description":"Does the event loop","title":"Looping"},"range":{"type":"array","default":[10,10],"description":"The Range between which the component will trigger his event.","title":"Range"}}},"BAE":{"title":"Rotation 1.16.200","description":"This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z.","type":"array","additionalProperties":false,"items":[{"type":"number","title":"X"},{"type":"number","title":"Y"},{"type":"number","title":"Z"}]},"BAF":{"title":"Ticking 1.16.200","description":"Describes the component that will trigger an even at a regular interval between two values","type":"object","additionalProperties":false,"properties":{"looping":{"type":"boolean","title":"Looping","description":"Does the event loop"},"range":{"title":"Range","description":"The Range between which the component will trigger his event.","type":"array","items":[{"type":"integer"},{"type":"integer"}]},"on_tick":{"type":"object","title":"On Tick","description":"Describes the component that will trigger an even at a regular interval between two values","condition":{"title":"Condition","type":"string","description":"The condition of event to be executed on the block. Molang"},"event":{"title":"Event","type":"string","description":"The type of event executed on the block."},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","enum":["block","damager","other","parent","player","self","target"]}}}},"BAG":{"title":"Unit Cube 1.16.200","description":"Specifies that a unit cube is to be used with tessellation.","type":"string"},"BAH":{"title":"Unwalkable 1.16.200","description":"this component sets a block as unwalkable. Most mobs will not try to jump over it if the value is set to true","type":"boolean"},"BAI_event_base":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":false,"$ref":"#/definitions/BAI_event_functions","properties":{"sequence":{"title":"Sequence","description":"UNDOCUMENTATED","type":"array","items":{"title":"Sequence","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/BAI_event_functions"}},"randomize":{"title":"Randomize","description":"UNDOCUMENTATED","type":"array","items":{"title":"Randomize","description":"UNDOCUMENTATED","type":"object","$ref":"#/definitions/BAI_event_functions","required":["weight"],"properties":{"weight":{"title":"Weight","description":"UNDOCUMENTATED","type":"integer","minimum":0}}}},"add_mob_effect":{"$ref":"#/definitions/BAJ"},"damage":{"$ref":"#/definitions/BBA"},"decrement_stack":{"$ref":"#/definitions/BBB"},"die":{"$ref":"#/definitions/BBC"},"play_effect":{"$ref":"#/definitions/BBD"},"play_sound":{"$ref":"#/definitions/BBE"},"remove_mob_effect":{"$ref":"#/definitions/BBF"},"run_command":{"$ref":"#/definitions/BBG"},"set_block":{"$ref":"#/definitions/BBH"},"set_block_at_pos":{"$ref":"#/definitions/BBI"},"set_block_property":{"$ref":"#/definitions/BBJ"},"spawn_loot":{"$ref":"#/definitions/BCA"},"swing":{"$ref":"#/definitions/BCB"},"teleport":{"$ref":"#/definitions/BCC"},"transform_item":{"$ref":"#/definitions/BCD"}}},"BAI_event_functions":{"title":"Event","description":"UNDOCUMENTATED","type":"object","additionalProperties":true,"properties":{"add_mob_effect":{"$ref":"#/definitions/BAJ"},"damage":{"$ref":"#/definitions/BBA"},"decrement_stack":{"$ref":"#/definitions/BBB"},"die":{"$ref":"#/definitions/BBC"},"play_effect":{"$ref":"#/definitions/BBD"},"play_sound":{"$ref":"#/definitions/BBE"},"remove_mob_effect":{"$ref":"#/definitions/BBF"},"run_command":{"$ref":"#/definitions/BBG"},"set_block":{"$ref":"#/definitions/BBH"},"set_block_at_pos":{"$ref":"#/definitions/BBI"},"set_block_property":{"$ref":"#/definitions/BBJ"},"spawn_loot":{"$ref":"#/definitions/BCA"},"swing":{"$ref":"#/definitions/BCB"},"teleport":{"$ref":"#/definitions/BCC"},"transform_item":{"$ref":"#/definitions/BCD"}}},"BAJ":{"type":"object","description":"Apply mob effect to target.","title":"Add Mob Effect 1.16.200","additionalProperties":false,"properties":{"amplifier":{"type":"integer","default":0,"description":"The amplifier for the mob effect.","title":"Amplifier"},"duration":{"type":"number","default":0,"description":"The duration of the mob effect.","title":"Duration"},"effect":{"type":"string","default":"","description":"The mob effect to apply.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBA":{"type":"object","description":"Deals damage to the target.","title":"Damage 1.16.200","additionalProperties":false,"properties":{"amount":{"type":"integer","default":0,"description":"The amount of damage to deal.","title":"Amount"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"},"type":{"type":"string","default":"","description":"The type of damage to deal.","title":"Type"}}},"BBB":{"type":"object","description":"Decrement item stack.","title":"Decrement Stack 1.16.200","additionalProperties":false,"properties":{}},"BBC":{"type":"object","description":"Kill target. If target is self and this is run from a block then destroy the block.","title":"Die 1.16.200","additionalProperties":false,"properties":{"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBD":{"type":"object","description":"Spawns a particle effect relative to target position.","title":"Play Effect 1.16.200","additionalProperties":false,"properties":{"data":{"type":"integer","default":0,"description":"Particle data value.","title":"Data"},"effect":{"type":"string","default":"","description":"The name of the particle effect to create.","title":"Effect"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBE":{"type":"object","description":"Play a sound relative to target position.","title":"Playsound 1.16.200","additionalProperties":false,"properties":{"sound":{"type":"string","default":"","description":"The name of the sound to play.","title":"Sound"},"target":{"type":"object","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBF":{"type":"object","description":"Removes mob effect from target.","title":"Remove Mob Effect 1.16.200","additionalProperties":false,"properties":{"effect":{"type":"string","default":"","description":"The mob effect to remove. Use 'all' to remove all mob effects from target.","title":"Effect"},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBG":{"type":"object","description":"Triggers a slash command or a list of slash commands.","title":"Run Command 1.16.200","additionalProperties":false,"properties":{"command":{"default":"","description":"Slash command to run.","title":"Command","oneof":[{"type":"string"},{"type":"array","items":{"type":"string","title":"Command","description":"Slash command to run."}}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BBH":{"type":"object","description":"Sets this block to another block type.","title":"Set Block 1.16.200","additionalProperties":false,"properties":{"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"BBI":{"type":"object","description":"Sets a block relative to this block to another block type.","title":"Set Block At Pos 1.16.200","additionalProperties":false,"properties":{"block_offset":{"type":"array","default":[0.0,0.0,0.0],"description":"The offset from the block's center.","title":"Block Offset","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"block_type":{"type":"string","default":"","description":"The type of block to set.","title":"Block Type"}}},"BBJ":{"type":"object","description":"Sets a block property on this block","title":"Set Block Property 1.16.200","additionalProperties":false,"properties":{"property":{"type":"string","description":"Block property to set on the block.","title":"Property"}}},"BCA":{"type":"object","description":"Spawn loot from block.","title":"Spawn Loot 1.16.200","required":["table"],"additionalProperties":false,"properties":{"table":{"type":"string","description":"File path, relative to the Behavior Pack's path, to the loot table file.","title":"Table"}}},"BCB":{"type":"object","description":"Event causes the actor to swing.","title":"Swing 1.16.200","additionalProperties":false,"properties":{}},"BCC":{"type":"object","description":"Teleport target randomly around destination point.","title":"Teleport 1.16.200","additionalProperties":false,"properties":{"avoid_water":{"type":"boolean","default":true,"description":"Determines if the teleport avoids putting the target in water.","title":"Avoid Water"},"destination":{"default":[0.0,0.0,0.0],"description":"Origin destination of the teleport.","title":"Destination","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"land_on_block":{"type":"boolean","default":true,"description":"Determines if the teleport places the target on a block.","title":"Land On Block"},"max_range":{"default":[8.0,8.0,8.0],"description":"Max range the target can teleport relative to the origin destination.","title":"Max Range","items":[{"type":"number","title":"X","description":"The x offset from the block's center."},{"type":"number","title":"Y","description":"The y offset from the block's center."},{"type":"number","title":"Z","description":"The z offset from the block's center."}]},"target":{"type":"string","default":"self","description":"The target context to execute against.","title":"Target"}}},"BCD":{"type":"object","description":"Transforms item into another item.","title":"Transform Item 1.16.200","additionalProperties":false,"properties":{"transform":{"type":"string","description":"Name of the item it should transform into","title":"Transform"}}},"BAI":{"title":"Events","description":"UNDOCUMENTATED","type":"object","properties":{"minecraft:on_interact":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_step_on":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_step_off":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_fall_on":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_placed":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_player_placing":{"$ref":"#/definitions/BAI_event_base"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/BAI_event_base"},"minecraft:ticking":{"$ref":"#/definitions/BAI_event_base"},"minecraft:random_ticking":{"$ref":"#/definitions/BAI_event_base"}},"additionalProperties":{"$ref":"#/definitions/BAI_event_base"}},"HH":{"description":"Minecraft blocks 1.16.200","required":["format_version","minecraft:block"],"title":"Block","type":"object","additionalProperties":false,"properties":{"format_version":{"title":"1.16.200 Format Version","type":"string","const":"1.16.200","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"minecraft:block":{"title":"Block Definitions","description":"A custom block definition","type":"object","additionalProperties":false,"required":["description","components"],"definitions":{"HH_components_ref":{"type":"object","title":"Component","description":"UNDOCUMENTATED","additionalProperties":false,"properties":{"minecraft:on_fall_on":{"$ref":"#/definitions/HI"},"minecraft:on_interact":{"$ref":"#/definitions/HJ"},"minecraft:on_placed":{"$ref":"#/definitions/IA"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/IB"},"minecraft:on_player_placing":{"$ref":"#/definitions/IC"},"minecraft:on_step_off":{"$ref":"#/definitions/ID"},"minecraft:on_step_on":{"$ref":"#/definitions/IE"},"minecraft:block_light_absorption":{"$ref":"#/definitions/IF"},"minecraft:block_light_emission":{"$ref":"#/definitions/IG"},"minecraft:breakonpush":{"$ref":"#/definitions/IH"},"minecraft:breathability":{"$ref":"#/definitions/II"},"minecraft:destroy_time":{"$ref":"#/definitions/IJ"},"minecraft:display_name":{"$ref":"#/definitions/JA"},"minecraft:entity_collision":{"$ref":"#/definitions/JB"},"minecraft:explosion_resistance":{"$ref":"#/definitions/JC"},"minecraft:flammable":{"$ref":"#/definitions/JD"},"minecraft:friction":{"$ref":"#/definitions/JE"},"minecraft:geometry":{"$ref":"#/definitions/JF"},"minecraft:immovable":{"$ref":"#/definitions/JG"},"minecraft:map_color":{"$ref":"#/definitions/JH"},"minecraft:material_instances":{"$ref":"#/definitions/JI"},"minecraft:onlypistonpush":{"$ref":"#/definitions/JJ"},"minecraft:pick_collision":{"$ref":"#/definitions/BAA"},"minecraft:placement_filter":{"$ref":"#/definitions/BAB"},"minecraft:preventsjumping":{"$ref":"#/definitions/BAC"},"minecraft:random_ticking":{"$ref":"#/definitions/BAD"},"minecraft:rotation":{"$ref":"#/definitions/BAE"},"minecraft:ticking":{"$ref":"#/definitions/BAF"},"minecraft:unit_cube":{"$ref":"#/definitions/BAG"},"minecraft:unwalkable":{"$ref":"#/definitions/BAH"}}}},"properties":{"description":{"title":"Block Description","description":"The description for this block","type":"object","additionalProperties":false,"required":["identifier"],"properties":{"identifier":{"type":"string","description":"The identifier for this block. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla block.","title":"Identifier","$ref":"#/definitions/B"},"is_experimental":{"type":"boolean","default":false,"description":"If this block is experimental, it will only be registered if the world is marked as experimantal.","title":"Is Experimental"},"register_to_creative_menu":{"type":"boolean","default":false,"description":"Whether or not to register this block to the creative inventory menu.","title":"Register To Creative Menu"},"properties":{"title":"Properties","description":"UNDOCUMENATED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"additionalProperties":{"title":"Property","description":"A block property","oneOf":[{"type":"array","items":{"title":"Property Value","description":"The value of this property","anyOf":[{"type":"boolean"},{"type":"number"},{"type":"integer"},{"type":"string"}]}},{"type":"object"}]}}}},"events":{"$ref":"#/definitions/BAI"},"components":{"type":"object","title":"Component","$ref":"#/definitions/HH_components_ref"},"permutations":{"type":"array","title":"Permutations","description":"UNDOCUMENATED","items":{"title":"Permutation","description":"UNDOCUMENATED","type":"object","additionalProperties":false,"properties":{"condition":{"title":"Condition","description":"UNDOCUMENATED","$ref":"#/definitions/HG"},"components":{"type":"object","title":"Component","$ref":"#/definitions/HH_components_ref"}}}}}}}},"BCE":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file diff --git a/resource/particles/particles.json b/resource/particles/particles.json index a20cc85e..2057762d 100644 --- a/resource/particles/particles.json +++ b/resource/particles/particles.json @@ -1 +1 @@ -{"$id":"blockception.minecraft.resource.particle","examples":[{"format_version":"1.10.0","particle_effect":{"description":{"identifier":"blockception:particle","basic_render_parameters":{"material":"particles_alpha","texture":"textures/particle/particle"}},"curves":{},"components":{}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}},{"properties":{"format_version":{"$ref":"#/definitions/DE"}}}],"definitions":{"B":{"type":"string","title":"Particle Identifier 1.8.0","description":"The minecraft particle identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"A":{"type":"object","additionalProperties":false,"description":"A particle definition file","title":"Particle 1.8.0","properties":{"format_version":{"type":"string","const":"1.8.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"}},"description":"TODO description: description","title":"Description"},"components":{"additionalProperties":false,"type":"object","description":"TODO description: components","title":"Components"}},"description":"TODO description: particle effect","title":"Particle Effect"}}},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"F":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"E":{"description":"This component allows the emitter to run some Molang at creation, primarily to populate any MoLang variables that get used later.","type":"object","title":"Emitter Initialization Component For 1.10.0","additionalProperties":false,"properties":{"creation_expression":{"$ref":"#/definitions/F","description":"This is run once at emitter startup.","title":"Creation Expression"},"per_update_expression":{"$ref":"#/definitions/F","description":"This is run once per emitter update.","title":"Per Update Expression"}}},"G":{"type":"object","title":"Emitter Lifetime Events Component For 1.10.0","description":"TODO","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the emitter is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"expiration_event":{"title":"Expiration Event","description":"Fires when the emitter expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"title":"Timeline","type":"object","description":"A series of times, e.g. 0.0 or 1.0, that trigger the event, these get fired on every loop the emitter goes through, \"time\" is the time, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"},"additionalProperties":{"title":"Timeline Object","description":"A single point in time that executes commands/molang/events","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]}},"travel_distance_events":{"title":"Travel Distance Events","description":"A series of distances, e.g. 0.0 or 1.0, that trigger the event these get fired when the emitter has moved by the specified input distance, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"}},"looping_travel_distance_events":{"title":"Looping Travel Distance Events","description":"A series of events that occur at set intervals these get fired every time the emitter has moved the specified input distance from the last time it was fired.","type":"array","items":{"type":"object","title":"Distance Event","additionalProperties":false,"properties":{"distance":{"title":"Distance","description":"TODO","type":"number"},"effects":{"title":"Effects","description":"TODO","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]}}}}}},"H":{"type":"object","title":"Emitter Rate Manual Component 1.10.0","description":"TODO description: ","additionalProperties":false,"properties":{"activation_expression":{"$ref":"#/definitions/D","description":"When the expression is non-zero, the emitter will emit particles. Evaluated every frame","title":"Activation Expression"},"expiration_expression":{"$ref":"#/definitions/D","description":"Emitter will expire if the expression is non-zero. Evaluated every frame","title":"Expiration Expression"}}},"I":{"type":"object","title":"Emitter Lifetime Once Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"How long the particles emit for evaluated once","title":"Active Time"}},"description":"TODO description: "},"J":{"type":"object","title":"Emitter Lifetime Looping Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"Emitter will emit particles for this time per loop evaluated once per particle emitter loop","title":"Active Time"},"sleep_time":{"$ref":"#/definitions/D","description":"Emitter will pause emitting particles for this time per loop evaluated once per particle emitter loop","title":"Sleep Time"}},"description":"TODO description: "},"BA":{"type":"object","title":"Emitter Local Space Component For 1.10.0","description":"TODO description:","additionalProperties":false,"properties":{"position":{"type":"boolean","description":"TODO description: position","title":"Position"},"rotation":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"},"velocity":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"}}},"BB":{"type":"object","title":"Emitter Rate Instant Component For 1.10.0","additionalProperties":false,"properties":{"num_particles":{"$ref":"#/definitions/D","description":"This many particles are emitted at once evaluated once per particle emitter loop.","title":"Num Particles","default":10}},"description":"TODO description: "},"BC":{"type":"object","title":"Emitter Rate Manual Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Evaluated once per particle emitted","title":"Max Particles"}},"description":"TODO description: "},"BD":{"type":"object","title":"Emitter Rate Steady Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Maximum number of particles that can be active at once for this emitter, evaluated once per particle emitter loop","title":"Max Particles"},"spawn_rate":{"$ref":"#/definitions/D","description":"How often a particle is emitted, in particles/sec evaluated once per particle emitted","title":"Spawn Rate"}},"description":"TODO description: "},"BE":{"type":"object","title":"Emitter Shape Box Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"description":"TODO description: direction","title":"Direction","default":"outwards","anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}]},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"half_dimensions":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: half dimensions","title":"Half Dimensions"},"description":"TODO description: half dimensions","title":"Half Dimensions"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BF":{"type":"object","title":"Emitter Shape Custom Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"}},"description":"TODO description: "},"BG":{"type":"object","title":"Emitter Shape Disc Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}],"description":"TODO description: direction","title":"Direction"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"plane_normal":{"title":"Plane Normal","description":"Specifies the normal of the disc plane, the disc will be perpendicular to this direction","default":[0,1,0],"oneOf":[{"type":"string","enum":["x","y","z"]},{"type":"array","items":[{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"}]}]},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BH":{"type":"object","title":"Emitter Shape Entity Aabb Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BI":{"type":"object","title":"Emitter Shape Point Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BJ":{"type":"object","title":"Emitter Shape Sphere Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"CA":{"type":"object","title":"Particle Appearance Billboard Component For 1.10.0","additionalProperties":false,"properties":{"size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size","title":"Size"},"description":"TODO description: size","title":"Size"},"facing_camera_mode":{"description":"Used to orient the billboard.","type":"string","enum":["lookat_xyz","lookat_y","rotate_xyz","rotate_y","direction_x","direction_y","direction_z"],"title":"Facing Camera Mode"},"uv":{"additionalProperties":false,"type":"object","properties":{"texture_width":{"type":"integer","description":"TODO description: texture width","title":"Texture Width"},"texture_height":{"type":"integer","description":"TODO description: texture height","title":"Texture Height"},"flipbook":{"additionalProperties":false,"type":"object","required":["max_frame"],"properties":{"base_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: base UV","title":"Base U V"},"description":"TODO description: base UV","title":"Base U V"},"size_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size UV","title":"Size U V"},"description":"TODO description: size UV","title":"Size U V"},"step_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: step UV","title":"Step U V"},"description":"TODO description: step UV","title":"Step U V"},"frames_per_second":{"$ref":"#/definitions/D","description":"TODO description: frames per second","title":"Frames Per Second"},"max_frame":{"$ref":"#/definitions/D","description":"TODO description: max frame","title":"Max Frame"},"stretch_to_lifetime":{"type":"boolean","description":"TODO description: stretch to lifetime","title":"Stretch To Lifetime"},"loop":{"type":"boolean","description":"TODO description: loop","title":"Loop"}},"description":"TODO description: flipbook","title":"Flipbook"},"uv":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv","title":"Uv"},"description":"TODO description: uv","title":"Uv"},"uv_size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv size","title":"Uv Size"},"description":"TODO description: uv size","title":"Uv Size"}},"description":"TODO description: uv","title":"Uv"}},"description":"TODO description: "},"CB":{"description":"Color fields are special, they can be either an RGB, or a \"#RRGGBB\" field (or RGBA or \"AARRGGBB\"). If RGB(A), the channels are from 0 to 1. If the string \"#AARRGGBB\", then the values are hex from 00 to ff.","type":"object","title":"Particle Appearance Tinting Component For 1.10.0","additionalProperties":false,"properties":{"color":{"title":"Color","anyOf":[{"type":"array","description":"Direct color field","items":{"$ref":"#/definitions/D"}},{"type":"string","format":"color-hex","description":"Direct color field"},{"description":"Interpolation based color","type":"object","additionalProperties":false,"properties":{"gradient":{"title":"Gradient","oneOf":[{"description":"An array of colors","type":"array","items":{"type":"string","description":"Color","title":"Color","format":"color-hex"}},{"description":"An object of colors","type":"object","propertyNames":{"pattern":"(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)"},"additionalProperties":{"type":"string","description":"Color","format":"color-hex"}},{"description":"An array of colors","type":"array","items":{"type":"array","minItems":3,"items":{"oneOf":[{"type":"number","description":"Color","title":"Color","minimum":0,"maximum":1},{"type":"string","title":"Molang"}]}}}]},"interpolant":{"$ref":"#/definitions/D","description":"TODO description: interpolant","title":"Interpolant"}}}],"description":"TODO description"}}},"CC":{"type":"object","title":"Particle Appearance Lighting Component For 1.10.0","additionalProperties":false,"description":"TODO description"},"CE":{"type":"string","title":"Block Name","description":"TODO description"},"CD":{"type":"array","title":"Particle Expire If Not In Blocks Component For 1.10.0","additionalProperties":false,"items":{"$ref":"#/definitions/CE","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"CF":{"type":"object","title":"Particle Initialization Component For 1.10.0","additionalProperties":false,"properties":{"per_update_expression":{"$ref":"#/definitions/D","description":"TODO description: per update expression","title":"Per Update Expression"},"per_render_expression":{"$ref":"#/definitions/D","description":"TODO description: per render expression","title":"Per Render Expression"}},"description":"TODO description: "},"CG":{"title":"Particle Initial Speed Component For 1.10.0","additionalProperties":false,"anyOf":[{"$ref":"#/definitions/D"},{"type":"array","items":{"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"minItems":3,"maxItems":3,"description":"TODO description","title":"TODO Title"}]},"CH":{"title":"Particle Initial Spin Component For 1.10.0","description":"Starts the particle with a specified orientation and rotation rate.","additionalProperties":false,"type":"object","properties":{"rotation":{"$ref":"#/definitions/D","description":"Specifies the initial rotation in degrees","title":"Rotation"},"rotation_rate":{"$ref":"#/definitions/D","description":"Specifies the spin rate in degrees/second","title":"Rotation Rate"}}},"CI":{"type":"object","description":"TODO description:","title":"Particle Lifetime Expression Component For 1.10.0","additionalProperties":false,"properties":{"expiration_expression":{"title":"Expiration Expression","description":"This expression makes the particle expire when true (non-zero), The float/expr is evaluated once per particle, evaluated every frame","$ref":"#/definitions/D"},"max_lifetime":{"$ref":"#/definitions/D","description":"Alternate way to express lifetime, particle will expire after this much time, evaluated once","title":"Max Lifetime"}}},"CJ":{"type":"object","title":"Particle Lifetime Events Component For 1.10.0","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the particle is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"custom_events":{"title":"Custom Events","description":"TODO, unclear structure :("},"expiration_event":{"title":"Expiration Event","description":"Fires when the particle expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"propertyNames":{"pattern":"[0-9]*.[0-9]*"},"description":"TODO description: timeline","title":"Timeline"}},"description":"TODO description: "},"DA":{"type":"array","title":"Particle Kill Plane Component For 1.10.0","items":{"minItems":4,"maxItems":4,"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"DB":{"type":"object","title":"Particle Motion Collision Component For 1.10.0","additionalProperties":false,"properties":{"collision_drag":{"type":"number","description":"TODO description: collision drag","title":"Collision Drag"},"coefficient_of_restitution":{"type":"number","description":"TODO description: coefficient of restitution","title":"Coefficient Of Restitution"},"collision_radius":{"type":"number","description":"TODO description: collision radius","title":"Collision Radius"},"enabled":{"$ref":"#/definitions/D","description":"TODO description: enabled","title":"Enabled"},"expire_on_contact":{"type":"boolean","description":"TODO description: expire on contact","title":"Expire On Contact"},"events":{"type":"array","items":{"properties":{"additionalProperties":false,"event":{"type":"string","description":"TODO description: event","title":"Event"},"min_speed":{"type":"number","description":"TODO description: min speed","title":"Min Speed"}},"description":"TODO description: events","title":"Events"},"description":"TODO description: events","title":"Events"}},"description":"TODO description: "},"DC":{"description":"This component specifies the dynamic properties of the particle, from a simulation standpoint what forces act upon the particle? These dynamics alter the velocity of the particle, which is a combination of the direction of the particle and the speed. Particle direction will always be in the direction of the velocity of the particle.","type":"object","title":"Particle Motion Dynamic Component For 1.10.0","additionalProperties":false,"properties":{"linear_acceleration":{"type":"array","default":[0,0,0],"minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"},"description":"The linear acceleration applied to the particle. Units are blocks/sec/sec","title":"Linear Acceleration"},"linear_drag_coefficient":{"$ref":"#/definitions/D","description":"Using the equation: 'acceleration = -linear_drag_coefficient*velocity' where velocity is the current direction times speed. Think of this as air-drag. The higher the value, the more drag evaluated every frame","default":0,"title":"Linear Drag Coefficient"},"rotation_acceleration":{"$ref":"#/definitions/D","description":"Acceleration applies to the rotation speed of the particle","title":"Rotation Acceleration","default":0},"rotation_drag_coefficient":{"$ref":"#/definitions/D","description":"Drag applied to rotation","title":"Rotation Drag Coefficient","default":0}}},"DD":{"type":"object","title":"Particle Motion Parametric Component For 1.10.0","additionalProperties":false,"properties":{"relative_position":{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D","description":"TODO description: relative position","title":"Relative Position"},"description":"TODO description: relative position","title":"Relative Position"},"rotation":{"$ref":"#/definitions/D","description":"TODO description: rotation","title":"Rotation"}},"description":"TODO description: "},"C":{"type":"object","additionalProperties":false,"description":"A particle definition file","title":"Particle 1.8.0","properties":{"format_version":{"type":"string","const":"1.10.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","required":["identifier","basic_render_parameters"],"properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"},"basic_render_parameters":{"additionalProperties":false,"type":"object","properties":{"material":{"type":"string","examples":["particles_alpha","particles_blend"],"description":" Minecraft material to use for emitter","title":"Material"},"texture":{"type":"string","pattern":"^.+$","description":"Minecraft texture to use for emitter","title":"Texture"}},"description":"TODO description: basic render parameters","title":"Basic Render Parameters"}},"description":"TODO description: description","title":"Description"},"curves":{"title":"Curves","description":"Curves are interpolation values, with inputs from 0 to 1, and outputs based on the curve. The result of the curve is a MoLang variable of the same name that can be referenced in MoLang in components. For each rendering frame for each particle, the curves are evaluated and the result is placed in a MoLang variable of the name of the curve.","type":"object","propertyNames":{"pattern":"^(v|variable)\\.[a-zA-z0-9]+$"},"additionalProperties":{"type":"object","additionalProperties":false,"title":"Curve","description":"TODO","properties":{"input":{"$ref":"#/definitions/D","title":"Input","description":"What is the input value to use"},"nodes":{"description":"Control nodes for curve. These are assumed to be equally, used Object for bezier_chain","title":"Nodes","oneOf":[{"minItems":1,"type":"array","items":{"$ref":"#/definitions/D"}},{"type":"object","propertyNames":{"pattern":"(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)"},"additionalProperties":{"type":"object","properties":{}}}]},"type":{"type":"string","title":"Type","description":"The type of curve","enum":["linear","bezier","bezier_chain","catmull_rom"]},"horizontal_range":{"type":"string","title":"Horizontal Range","description":"What is the range the input is mapped onto"}}}},"components":{"additionalProperties":false,"type":"object","description":"The particle components.","title":"Components","properties":{"minecraft:emitter_initialization":{"$ref":"#/definitions/E"},"minecraft:emitter_lifetime_events":{"$ref":"#/definitions/G"},"minecraft:emitter_lifetime_expression":{"$ref":"#/definitions/H"},"minecraft:emitter_lifetime_once":{"$ref":"#/definitions/I"},"minecraft:emitter_lifetime_looping":{"$ref":"#/definitions/J"},"minecraft:emitter_local_space":{"$ref":"#/definitions/BA"},"minecraft:emitter_rate_instant":{"$ref":"#/definitions/BB"},"minecraft:emitter_rate_manual":{"$ref":"#/definitions/BC"},"minecraft:emitter_rate_steady":{"$ref":"#/definitions/BD"},"minecraft:emitter_shape_box":{"$ref":"#/definitions/BE"},"minecraft:emitter_shape_custom":{"$ref":"#/definitions/BF"},"minecraft:emitter_shape_disc":{"$ref":"#/definitions/BG"},"minecraft:emitter_shape_entity_aabb":{"$ref":"#/definitions/BH"},"minecraft:emitter_shape_point":{"$ref":"#/definitions/BI"},"minecraft:emitter_shape_sphere":{"$ref":"#/definitions/BJ"},"minecraft:particle_appearance_billboard":{"$ref":"#/definitions/CA"},"minecraft:particle_appearance_tinting":{"$ref":"#/definitions/CB"},"minecraft:particle_appearance_lighting":{"$ref":"#/definitions/CC"},"minecraft:particle_expire_if_not_in_blocks":{"$ref":"#/definitions/CD"},"minecraft:particle_initialization":{"$ref":"#/definitions/CF"},"minecraft:particle_initial_speed":{"$ref":"#/definitions/CG"},"minecraft:particle_initial_spin":{"$ref":"#/definitions/CH"},"minecraft:particle_lifetime_expression":{"$ref":"#/definitions/CI"},"minecraft:particle_lifetime_events":{"$ref":"#/definitions/CJ"},"minecraft:particle_kill_plane":{"$ref":"#/definitions/DA"},"minecraft:particle_motion_collision":{"$ref":"#/definitions/DB"},"minecraft:particle_motion_dynamic":{"$ref":"#/definitions/DC"},"minecraft:particle_motion_parametric":{"$ref":"#/definitions/DD"}}},"events":{"type":"object","additionalProperties":{"description":"Event","title":"TODO","type":"object","additionalProperties":false,"properties":{"particle_effect":{"title":"Particle Effect","description":"TODO","properties":{"effect":{"type":"string","description":"TODO description: effect","title":"Effect"},"type":{"type":"string","description":"TODO description: type","title":"Type"}}}}},"description":"TODO description: events","title":"Events"}},"description":"TODO description: particle effect","title":"Particle Effect"}}},"DE":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file +{"$id":"blockception.minecraft.resource.particle","examples":[{"format_version":"1.10.0","particle_effect":{"description":{"identifier":"blockception:particle","basic_render_parameters":{"material":"particles_alpha","texture":"textures/particle/particle"}},"curves":{},"components":{}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}},{"properties":{"format_version":{"$ref":"#/definitions/DE"}}}],"definitions":{"B":{"type":"string","title":"Particle Identifier 1.8.0","description":"The minecraft particle identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"A":{"type":"object","additionalProperties":false,"description":"A particle definition file","title":"Particle 1.8.0","properties":{"format_version":{"type":"string","const":"1.8.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"}},"description":"TODO description: description","title":"Description"},"components":{"additionalProperties":false,"type":"object","description":"TODO description: components","title":"Components"}},"description":"TODO description: particle effect","title":"Particle Effect"}}},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"F":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"E":{"description":"This component allows the emitter to run some Molang at creation, primarily to populate any MoLang variables that get used later.","type":"object","title":"Emitter Initialization Component For 1.10.0","additionalProperties":false,"properties":{"creation_expression":{"$ref":"#/definitions/F","description":"This is run once at emitter startup.","title":"Creation Expression"},"per_update_expression":{"$ref":"#/definitions/F","description":"This is run once per emitter update.","title":"Per Update Expression"}}},"G":{"type":"object","title":"Emitter Lifetime Events Component For 1.10.0","description":"TODO","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the emitter is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"expiration_event":{"title":"Expiration Event","description":"Fires when the emitter expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"title":"Timeline","type":"object","description":"A series of times, e.g. 0.0 or 1.0, that trigger the event, these get fired on every loop the emitter goes through, \"time\" is the time, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"},"additionalProperties":{"title":"Timeline Object","description":"A single point in time that executes commands/molang/events","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]}},"travel_distance_events":{"title":"Travel Distance Events","description":"A series of distances, e.g. 0.0 or 1.0, that trigger the event these get fired when the emitter has moved by the specified input distance, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"}},"looping_travel_distance_events":{"title":"Looping Travel Distance Events","description":"A series of events that occur at set intervals these get fired every time the emitter has moved the specified input distance from the last time it was fired.","type":"array","items":{"type":"object","title":"Distance Event","additionalProperties":false,"properties":{"distance":{"title":"Distance","description":"TODO","type":"number"},"effects":{"title":"Effects","description":"TODO","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]}}}}}},"H":{"type":"object","title":"Emitter Rate Manual Component 1.10.0","description":"TODO description: ","additionalProperties":false,"properties":{"activation_expression":{"$ref":"#/definitions/D","description":"When the expression is non-zero, the emitter will emit particles. Evaluated every frame","title":"Activation Expression"},"expiration_expression":{"$ref":"#/definitions/D","description":"Emitter will expire if the expression is non-zero. Evaluated every frame","title":"Expiration Expression"}}},"I":{"type":"object","title":"Emitter Lifetime Once Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"How long the particles emit for evaluated once","title":"Active Time"}},"description":"TODO description: "},"J":{"type":"object","title":"Emitter Lifetime Looping Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"Emitter will emit particles for this time per loop evaluated once per particle emitter loop","title":"Active Time"},"sleep_time":{"$ref":"#/definitions/D","description":"Emitter will pause emitting particles for this time per loop evaluated once per particle emitter loop","title":"Sleep Time"}},"description":"TODO description: "},"BA":{"type":"object","title":"Emitter Local Space Component For 1.10.0","description":"TODO description:","additionalProperties":false,"properties":{"position":{"type":"boolean","description":"TODO description: position","title":"Position"},"rotation":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"},"velocity":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"}}},"BB":{"type":"object","title":"Emitter Rate Instant Component For 1.10.0","additionalProperties":false,"properties":{"num_particles":{"$ref":"#/definitions/D","description":"This many particles are emitted at once evaluated once per particle emitter loop.","title":"Num Particles","default":10}},"description":"TODO description: "},"BC":{"type":"object","title":"Emitter Rate Manual Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Evaluated once per particle emitted","title":"Max Particles"}},"description":"TODO description: "},"BD":{"type":"object","title":"Emitter Rate Steady Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Maximum number of particles that can be active at once for this emitter, evaluated once per particle emitter loop","title":"Max Particles"},"spawn_rate":{"$ref":"#/definitions/D","description":"How often a particle is emitted, in particles/sec evaluated once per particle emitted","title":"Spawn Rate"}},"description":"TODO description: "},"BE":{"type":"object","title":"Emitter Shape Box Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"description":"TODO description: direction","title":"Direction","default":"outwards","anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}]},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"half_dimensions":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: half dimensions","title":"Half Dimensions"},"description":"TODO description: half dimensions","title":"Half Dimensions"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BF":{"type":"object","title":"Emitter Shape Custom Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"}},"description":"TODO description: "},"BG":{"type":"object","title":"Emitter Shape Disc Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}],"description":"TODO description: direction","title":"Direction"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"plane_normal":{"title":"Plane Normal","description":"Specifies the normal of the disc plane, the disc will be perpendicular to this direction","default":[0,1,0],"oneOf":[{"type":"string","enum":["x","y","z"]},{"type":"array","items":[{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"}]}]},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BH":{"type":"object","title":"Emitter Shape Entity Aabb Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BI":{"type":"object","title":"Emitter Shape Point Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BJ":{"type":"object","title":"Emitter Shape Sphere Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"CA":{"type":"object","title":"Particle Appearance Billboard Component For 1.10.0","additionalProperties":false,"properties":{"size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size","title":"Size"},"description":"TODO description: size","title":"Size"},"facing_camera_mode":{"description":"Used to orient the billboard.","type":"string","enum":["lookat_xyz","lookat_y","rotate_xyz","rotate_y","direction_x","direction_y","direction_z"],"title":"Facing Camera Mode"},"uv":{"additionalProperties":false,"type":"object","properties":{"texture_width":{"type":"integer","description":"TODO description: texture width","title":"Texture Width"},"texture_height":{"type":"integer","description":"TODO description: texture height","title":"Texture Height"},"flipbook":{"additionalProperties":false,"type":"object","required":["max_frame"],"properties":{"base_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: base UV","title":"Base U V"},"description":"TODO description: base UV","title":"Base U V"},"size_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size UV","title":"Size U V"},"description":"TODO description: size UV","title":"Size U V"},"step_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: step UV","title":"Step U V"},"description":"TODO description: step UV","title":"Step U V"},"frames_per_second":{"$ref":"#/definitions/D","description":"TODO description: frames per second","title":"Frames Per Second"},"max_frame":{"$ref":"#/definitions/D","description":"TODO description: max frame","title":"Max Frame"},"stretch_to_lifetime":{"type":"boolean","description":"TODO description: stretch to lifetime","title":"Stretch To Lifetime"},"loop":{"type":"boolean","description":"TODO description: loop","title":"Loop"}},"description":"TODO description: flipbook","title":"Flipbook"},"uv":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv","title":"Uv"},"description":"TODO description: uv","title":"Uv"},"uv_size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv size","title":"Uv Size"},"description":"TODO description: uv size","title":"Uv Size"}},"description":"TODO description: uv","title":"Uv"}},"description":"TODO description: "},"CB":{"description":"Color fields are special, they can be either an RGB, or a \"#RRGGBB\" field (or RGBA or \"AARRGGBB\"). If RGB(A), the channels are from 0 to 1. If the string \"#AARRGGBB\", then the values are hex from 00 to ff.","type":"object","title":"Particle Appearance Tinting Component For 1.10.0","additionalProperties":false,"properties":{"color":{"title":"Color","anyOf":[{"type":"array","description":"Direct color field","items":{"$ref":"#/definitions/D"}},{"type":"string","format":"color-hex","description":"Direct color field"},{"description":"Interpolation based color","type":"object","additionalProperties":false,"properties":{"gradient":{"title":"Gradient","oneOf":[{"description":"An array of colors","type":"array","items":{"type":"string","description":"Color","title":"Color","format":"color-hex"}},{"description":"An object of colors","type":"object","propertyNames":{"pattern":"(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)"},"additionalProperties":{"type":"string","description":"Color","format":"color-hex"}},{"description":"An array of colors","type":"array","items":{"type":"array","minItems":3,"items":{"oneOf":[{"type":"number","description":"Color","title":"Color","minimum":0,"maximum":1},{"type":"string","title":"Molang"}]}}}]},"interpolant":{"$ref":"#/definitions/D","description":"TODO description: interpolant","title":"Interpolant"}}}],"description":"TODO description"}}},"CC":{"type":"object","title":"Particle Appearance Lighting Component For 1.10.0","additionalProperties":false,"description":"TODO description"},"CE":{"type":"string","title":"Block Identifier 1.8.0","description":"The minecraft block identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"CD":{"type":"array","title":"Particle Expire If Not In Blocks Component For 1.10.0","additionalProperties":false,"items":{"$ref":"#/definitions/CE","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"CF":{"type":"object","title":"Particle Initialization Component For 1.10.0","additionalProperties":false,"properties":{"per_update_expression":{"$ref":"#/definitions/D","description":"TODO description: per update expression","title":"Per Update Expression"},"per_render_expression":{"$ref":"#/definitions/D","description":"TODO description: per render expression","title":"Per Render Expression"}},"description":"TODO description: "},"CG":{"title":"Particle Initial Speed Component For 1.10.0","additionalProperties":false,"anyOf":[{"$ref":"#/definitions/D"},{"type":"array","items":{"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"minItems":3,"maxItems":3,"description":"TODO description","title":"TODO Title"}]},"CH":{"title":"Particle Initial Spin Component For 1.10.0","description":"Starts the particle with a specified orientation and rotation rate.","additionalProperties":false,"type":"object","properties":{"rotation":{"$ref":"#/definitions/D","description":"Specifies the initial rotation in degrees","title":"Rotation"},"rotation_rate":{"$ref":"#/definitions/D","description":"Specifies the spin rate in degrees/second","title":"Rotation Rate"}}},"CI":{"type":"object","description":"TODO description:","title":"Particle Lifetime Expression Component For 1.10.0","additionalProperties":false,"properties":{"expiration_expression":{"title":"Expiration Expression","description":"This expression makes the particle expire when true (non-zero), The float/expr is evaluated once per particle, evaluated every frame","$ref":"#/definitions/D"},"max_lifetime":{"$ref":"#/definitions/D","description":"Alternate way to express lifetime, particle will expire after this much time, evaluated once","title":"Max Lifetime"}}},"CJ":{"type":"object","title":"Particle Lifetime Events Component For 1.10.0","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the particle is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"custom_events":{"title":"Custom Events","description":"TODO, unclear structure :("},"expiration_event":{"title":"Expiration Event","description":"Fires when the particle expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"propertyNames":{"pattern":"[0-9]*.[0-9]*"},"description":"TODO description: timeline","title":"Timeline"}},"description":"TODO description: "},"DA":{"type":"array","title":"Particle Kill Plane Component For 1.10.0","items":{"minItems":4,"maxItems":4,"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"DB":{"type":"object","title":"Particle Motion Collision Component For 1.10.0","additionalProperties":false,"properties":{"collision_drag":{"type":"number","description":"TODO description: collision drag","title":"Collision Drag"},"coefficient_of_restitution":{"type":"number","description":"TODO description: coefficient of restitution","title":"Coefficient Of Restitution"},"collision_radius":{"type":"number","description":"TODO description: collision radius","title":"Collision Radius"},"enabled":{"$ref":"#/definitions/D","description":"TODO description: enabled","title":"Enabled"},"expire_on_contact":{"type":"boolean","description":"TODO description: expire on contact","title":"Expire On Contact"},"events":{"type":"array","items":{"properties":{"additionalProperties":false,"event":{"type":"string","description":"TODO description: event","title":"Event"},"min_speed":{"type":"number","description":"TODO description: min speed","title":"Min Speed"}},"description":"TODO description: events","title":"Events"},"description":"TODO description: events","title":"Events"}},"description":"TODO description: "},"DC":{"description":"This component specifies the dynamic properties of the particle, from a simulation standpoint what forces act upon the particle? These dynamics alter the velocity of the particle, which is a combination of the direction of the particle and the speed. Particle direction will always be in the direction of the velocity of the particle.","type":"object","title":"Particle Motion Dynamic Component For 1.10.0","additionalProperties":false,"properties":{"linear_acceleration":{"type":"array","default":[0,0,0],"minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"},"description":"The linear acceleration applied to the particle. Units are blocks/sec/sec","title":"Linear Acceleration"},"linear_drag_coefficient":{"$ref":"#/definitions/D","description":"Using the equation: 'acceleration = -linear_drag_coefficient*velocity' where velocity is the current direction times speed. Think of this as air-drag. The higher the value, the more drag evaluated every frame","default":0,"title":"Linear Drag Coefficient"},"rotation_acceleration":{"$ref":"#/definitions/D","description":"Acceleration applies to the rotation speed of the particle","title":"Rotation Acceleration","default":0},"rotation_drag_coefficient":{"$ref":"#/definitions/D","description":"Drag applied to rotation","title":"Rotation Drag Coefficient","default":0}}},"DD":{"type":"object","title":"Particle Motion Parametric Component For 1.10.0","additionalProperties":false,"properties":{"relative_position":{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D","description":"TODO description: relative position","title":"Relative Position"},"description":"TODO description: relative position","title":"Relative Position"},"rotation":{"$ref":"#/definitions/D","description":"TODO description: rotation","title":"Rotation"}},"description":"TODO description: "},"C":{"type":"object","additionalProperties":false,"description":"A particle definition file","title":"Particle 1.8.0","properties":{"format_version":{"type":"string","const":"1.10.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","required":["identifier","basic_render_parameters"],"properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"},"basic_render_parameters":{"additionalProperties":false,"type":"object","properties":{"material":{"type":"string","examples":["particles_alpha","particles_blend"],"description":" Minecraft material to use for emitter","title":"Material"},"texture":{"type":"string","pattern":"^.+$","description":"Minecraft texture to use for emitter","title":"Texture"}},"description":"TODO description: basic render parameters","title":"Basic Render Parameters"}},"description":"TODO description: description","title":"Description"},"curves":{"title":"Curves","description":"Curves are interpolation values, with inputs from 0 to 1, and outputs based on the curve. The result of the curve is a MoLang variable of the same name that can be referenced in MoLang in components. For each rendering frame for each particle, the curves are evaluated and the result is placed in a MoLang variable of the name of the curve.","type":"object","propertyNames":{"pattern":"^(v|variable)\\.[a-zA-z0-9]+$"},"additionalProperties":{"type":"object","additionalProperties":false,"title":"Curve","description":"TODO","properties":{"input":{"$ref":"#/definitions/D","title":"Input","description":"What is the input value to use"},"nodes":{"description":"Control nodes for curve. These are assumed to be equally, used Object for bezier_chain","title":"Nodes","oneOf":[{"minItems":1,"type":"array","items":{"$ref":"#/definitions/D"}},{"type":"object","propertyNames":{"pattern":"(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)"},"additionalProperties":{"type":"object","properties":{}}}]},"type":{"type":"string","title":"Type","description":"The type of curve","enum":["linear","bezier","bezier_chain","catmull_rom"]},"horizontal_range":{"type":"string","title":"Horizontal Range","description":"What is the range the input is mapped onto"}}}},"components":{"additionalProperties":false,"type":"object","description":"The particle components.","title":"Components","properties":{"minecraft:emitter_initialization":{"$ref":"#/definitions/E"},"minecraft:emitter_lifetime_events":{"$ref":"#/definitions/G"},"minecraft:emitter_lifetime_expression":{"$ref":"#/definitions/H"},"minecraft:emitter_lifetime_once":{"$ref":"#/definitions/I"},"minecraft:emitter_lifetime_looping":{"$ref":"#/definitions/J"},"minecraft:emitter_local_space":{"$ref":"#/definitions/BA"},"minecraft:emitter_rate_instant":{"$ref":"#/definitions/BB"},"minecraft:emitter_rate_manual":{"$ref":"#/definitions/BC"},"minecraft:emitter_rate_steady":{"$ref":"#/definitions/BD"},"minecraft:emitter_shape_box":{"$ref":"#/definitions/BE"},"minecraft:emitter_shape_custom":{"$ref":"#/definitions/BF"},"minecraft:emitter_shape_disc":{"$ref":"#/definitions/BG"},"minecraft:emitter_shape_entity_aabb":{"$ref":"#/definitions/BH"},"minecraft:emitter_shape_point":{"$ref":"#/definitions/BI"},"minecraft:emitter_shape_sphere":{"$ref":"#/definitions/BJ"},"minecraft:particle_appearance_billboard":{"$ref":"#/definitions/CA"},"minecraft:particle_appearance_tinting":{"$ref":"#/definitions/CB"},"minecraft:particle_appearance_lighting":{"$ref":"#/definitions/CC"},"minecraft:particle_expire_if_not_in_blocks":{"$ref":"#/definitions/CD"},"minecraft:particle_initialization":{"$ref":"#/definitions/CF"},"minecraft:particle_initial_speed":{"$ref":"#/definitions/CG"},"minecraft:particle_initial_spin":{"$ref":"#/definitions/CH"},"minecraft:particle_lifetime_expression":{"$ref":"#/definitions/CI"},"minecraft:particle_lifetime_events":{"$ref":"#/definitions/CJ"},"minecraft:particle_kill_plane":{"$ref":"#/definitions/DA"},"minecraft:particle_motion_collision":{"$ref":"#/definitions/DB"},"minecraft:particle_motion_dynamic":{"$ref":"#/definitions/DC"},"minecraft:particle_motion_parametric":{"$ref":"#/definitions/DD"}}},"events":{"type":"object","additionalProperties":{"description":"Event","title":"TODO","type":"object","additionalProperties":false,"properties":{"particle_effect":{"title":"Particle Effect","description":"TODO","properties":{"effect":{"type":"string","description":"TODO description: effect","title":"Effect"},"type":{"type":"string","description":"TODO description: type","title":"Type"}}}}},"description":"TODO description: events","title":"Events"}},"description":"TODO description: particle effect","title":"Particle Effect"}}},"DE":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^(1)\\.([0-9]+)\\.([0-9]+)$","type":"string"}}} \ No newline at end of file