1 line
20 KiB
JSON
Generated
1 line
20 KiB
JSON
Generated
{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.block","$comment":"UNDOCUMENTED","required":["format_version","minecraft:block"],"type":"object","title":"Block Behavior","description":"The minecraft block behavior specification.","additionalProperties":false,"properties":{"format_version":{"$ref":"#/definitions/A"},"minecraft:block":{"$ref":"#/definitions/B"}},"definitions":{"A":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^([1-9]+)\\.([0-9]+)\\.([0-9]+)$","type":"string","default":"1.19.0","examples":["1.19.0","1.18.30","1.18.20","1.18.10","1.18.0","1.17.0","1.16.0","1.15.0","1.14.0","1.13.0","1.12.0","1.10.0","1.8.0"],"defaultSnippets":[{"label":"New Format version","body":"1.${1|8,10,12,17,18|}.${3|2|0|}"}]},"B_components_ref":{"type":"object","title":"Component","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","additionalProperties":false,"properties":{"minecraft:block_light_filter":{"$ref":"#/definitions/C"},"minecraft:block_light_emission":{"$ref":"#/definitions/D"},"minecraft:breakonpush":{"$ref":"#/definitions/E"},"minecraft:breathability":{"$ref":"#/definitions/F"},"minecraft:destroy_time":{"$ref":"#/definitions/G"},"minecraft:display_name":{"$ref":"#/definitions/H"},"minecraft:entity_collision":{"$ref":"#/definitions/I"},"minecraft:explosion_resistance":{"$ref":"#/definitions/J"},"minecraft:flammable":{"$ref":"#/definitions/BA"},"minecraft:friction":{"$ref":"#/definitions/BB"},"minecraft:geometry":{"$ref":"#/definitions/BC"},"minecraft:immovable":{"$ref":"#/definitions/BD"},"minecraft:loot":{"$ref":"#/definitions/BE"},"minecraft:map_color":{"$ref":"#/definitions/BF"},"minecraft:material_instances":{"$ref":"#/definitions/BG"},"minecraft:onlypistonpush":{"$ref":"#/definitions/BH"},"minecraft:part_visibility":{"$ref":"#/definitions/BI"},"minecraft:on_fall_on":{"$ref":"#/definitions/BJ"},"minecraft:on_interact":{"$ref":"#/definitions/CA"},"minecraft:on_placed":{"$ref":"#/definitions/CB"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/CC"},"minecraft:on_player_placing":{"$ref":"#/definitions/CD"},"minecraft:on_step_off":{"$ref":"#/definitions/CE"},"minecraft:on_step_on":{"$ref":"#/definitions/CF"},"minecraft:pick_collision":{"$ref":"#/definitions/CG"},"minecraft:placement_filter":{"$ref":"#/definitions/CH"},"minecraft:preventsjumping":{"$ref":"#/definitions/CI"},"minecraft:random_ticking":{"$ref":"#/definitions/CJ"},"minecraft:rotation":{"$ref":"#/definitions/DA"},"minecraft:ticking":{"$ref":"#/definitions/DB"},"minecraft:unit_cube":{"$ref":"#/definitions/DC"},"minecraft:unwalkable":{"$ref":"#/definitions/DD"}}},"C":{"additionalProperties":false,"type":"integer","title":"Block Light filter","description":"The amount of light this block will filter out. Higher value means more light will be filtered out (0 - 15).","default":0},"D":{"additionalProperties":false,"type":"number","title":"Block Light Emission","description":"The amount of light this block will emit in a range [0.0, 1.0].","minimum":0,"maximum":1,"default":0.0},"E":{"additionalProperties":false,"type":"boolean","title":"Break On Push","description":"When pushed by a piston the block breaks."},"F":{"additionalProperties":false,"type":"string","title":"Breathability","description":"Property describing the breathability of the block, and whether it's treated as a solid block or a block of air.","enum":["solid","air"],"default":"solid"},"G":{"additionalProperties":false,"type":"number","title":"Destroy Time","description":"Sets the destroy time property for the block. Greater numbers result in greater mining times. Time is measured in seconds with base equipment.","default":0.0},"H":{"additionalProperties":false,"type":"string","title":"Display Name","description":"Specifies the language file key that maps to what text will be displayed when you hover over the block."},"I":{"title":"Entity Collision","description":"Can only be set to false or an object, 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."}]}}}]},"J":{"additionalProperties":false,"type":"number","title":"Explosion Resistance","description":"Sets the explosion resistance for this block.","default":0.0},"BA":{"additionalProperties":false,"type":"object","title":"Flammable","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. Value must be greater than or equal to 0.","title":"Burn Odds"},"flame_odds":{"type":"integer","default":0,"description":"How likely the block will catch flame when next to a fire. Value must be greater than or equal to 0.","title":"Flame Odds"}}},"BB":{"additionalProperties":false,"type":"number","title":"Friction","description":"Property describing the friction for this block. Friction effects an entities movements when it walks on the block.","default":0.1},"BC":{"additionalProperties":false,"type":"string","title":"Geometry","description":"The geometry description identifier to use, this identifier must match an existing geometry identifier in any of the currently loaded resource packs.","pattern":"^geometry\\.[a-zA-Z0-9_\\-\\.]+$"},"BD":{"additionalProperties":false,"type":"boolean","title":"Immovable","description":"An Immovable block cannot be pushed by pistons."},"BE":{"additionalProperties":false,"type":"string","title":"Loot","description":"The path to the loot table, relative to the behavior pack. Path string is limited to 256 characters.","pattern":"loot_tables/.*\\.json$"},"BF":{"additionalProperties":false,"type":"string","title":"Map Color","description":"A color represented as a hex value. This will be the color rendered to a map.","format":"color-hex","examples":["#FFFFFF"]},"BG_material_instance":{"title":"Material Instance","description":"A single material instance.","additionalProperties":false,"properties":{"ambient_occlusion":{"title":"Ambient Occlusion","type":"boolean","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"face_dimming":{"title":"Face Dimming","type":"boolean","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"render_method":{"type":"string","title":"Render Method","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["blend","opaque","alpha_test"]},"texture":{"type":"string","title":"Texture","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}}},"BG":{"type":"object","title":"Material Instances","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/BG_material_instance"}},"additionalProperties":{"$ref":"#/definitions/BG_material_instance"}},"BH":{"type":"boolean","title":"Only Piston Push","description":"Blocks with those components won't stick to stickyPistons."},"BI":{"title":"Part Visibility","description":"Maps bone names in a geometry file to a condition that turns their rendering on/off. The condition should be a Molang query that uses block properties to determine true/falseSupported queries include 'has_block_property', 'block_property', and other queries that can evaluate without knowledge of the block's in-game positional or player affected data.","type":"object","additionalProperties":{"title":"Bone Name","examples":[{"root":"query.variant"}],"type":"string"}},"BJ":{"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":"Minimum Fall Distance"},"target":{"type":"string","default":"self","description":"The target of event executed on the block.","title":"Target"}}},"CA":{"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"}}},"CB":{"type":"object","title":"On Placed","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"}}},"CC":{"type":"object","title":"On Player Destroyed","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"}}},"CD":{"type":"object","title":"On Player Placing","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"}}},"CE":{"type":"object","title":"On Step Off","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"}}},"CF":{"type":"object","title":"On Step 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"}}},"CG":{"title":"Pick Collision","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."}]}}}]},"CH":{"title":"Placement Filter","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":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","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":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}}}}}}},"CI":{"title":"Prevents Jumping","description":"This component makes it so actors can't jump when walking on this block.","type":"boolean"},"CJ":{"title":"Random Ticking","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"}}},"DA":{"title":"Rotation","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"}]},"DB":{"title":"Ticking","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"]}}}},"DC":{"title":"Unit Cube","description":"Specifies that a unit cube is to be used with tessellation.","type":"object"},"DD":{"title":"Unwalkable","description":"Sets the block as unwalkable. Mobs would not attempt to path over top of it when the value is set to true.","default":false,"type":"boolean"},"DE":{"description":"A minecraft block identifier.","examples":["namespace:block"],"pattern":"^[0-9a-zA-Z:_\\.\\-]+$","title":"Block Identifier","type":"string","defaultSnippets":[{"label":"New Identifier","body":"$1:$2"}]},"DF_event_base":{"title":"Event","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"condition":{"title":"Condition","description":"The condition of event to be executed on the block.","type":"string"},"event":{"title":"Event","description":"The event executed on the block.","type":"string"},"target":{"title":"Target","description":"The target of event executed on the block.","type":"string","default":"self"}}},"DF":{"title":"Events","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","properties":{"minecraft:on_fall_on":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_interact":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_placed":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_player_destroyed":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_player_placing":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_step_off":{"$ref":"#/definitions/DF_event_base"},"minecraft:on_step_on":{"$ref":"#/definitions/DF_event_base"}}},"DG":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"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":{"menu_category":{"title":"Menu Category","$comment":"UNDOCUMENTED","description":"The category this block will be placed in in the menu.","type":"object","default":"misc","additionalProperties":false,"required":["category"],"properties":{"category":{"title":"Category","$comment":"UNDOCUMENTED","description":"construction","type":"string","examples":["construction"]},"group":{"title":"Group","$comment":"UNDOCUMENTED","description":"","type":"string","examples":["itemGroup.name.planks"]}}},"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/DE"},"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":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","propertyNames":{"pattern":"^([a-zA-Z0-9_]+:[a-zA-Z0-9_\\-]+)$"},"type":"object","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/DF"},"components":{"type":"object","title":"Component","$ref":"#/definitions/B_components_ref"},"permutations":{"type":"array","title":"Permutations","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","items":{"title":"Permutation","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"condition":{"title":"Condition","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/DG"},"components":{"type":"object","title":"Component","$ref":"#/definitions/B_components_ref"}}}}}}}} |