This is documentation for a preview release of Minecraft. New features, components, and capabilities in this release are not final and might change without notice before the final release.
Be sure to check the documentation once the release is out of preview if your add-on isn't working properly. Resource and Behavior Packs created for the preview are not guaranteed to work on the final release.
Name | Type | Default Value | Description |
minecraft:aim_collision |
Boolean / JSON Object |
|
Describes the collision of the block for raycast and its outline. If set to false it disables the collision of the block with entities. An origin of [-8.0, 0.0, -8.0] with a size of [16, 16, 16] is a unit cube.Experimental toggles required: Holiday Creator Features
Name | Type | Default Value | Description |
origin |
Vector [a, b, c] |
[-8.0, 0.0, -8.0] |
Minimal position Bounds of the selection box. Origin is specified as [x, y, z] and must be in the range (-8, 0, -8) to (8, 16, 8), inclusive |
size |
Vector [a, b, c] |
[16.0, 16.0, 16.0] |
Size of each side of the selection box. Size is specified as [x, y, z]. Origin + size must be in the range (-8, 0, -8) to (8, 16, 8), inclusive |
|
minecraft:block_light_emission |
Decimal |
0.0 |
The amount of light this block will emit in a range [0.0, 1.0]. |
minecraft:breathability |
Enumerator |
solid |
The breathing type of this block that affects the breathing state of mobs when they have their breathing points inside this block. Available values: solid, airExperimental toggles required: Holiday Creator Features |
minecraft:collision_box |
Boolean / JSON Object |
true |
Defines the area of the block that collides with entities. If set to true, default values are used. If set to false, the block's collision with entities is disabled. If this component is omitted, default values are used.Experimental toggles required: Holiday Creator Features
Name | Type | Default Value | Description |
origin |
Vector [a, b, c] |
[-8.0, 0.0, -8.0] |
Minimal position Bounds of the collision box. Origin is specified as [x, y, z] and must be in the range (-8, 0, -8) to (8, 16, 8), inclusive |
size |
Vector [a, b, c] |
[16.0, 16.0, 16.0] |
Size of each side of the collision box. Size is specified as [x, y, z]. Origin + size must be in the range (-8, 0, -8) to (8, 16, 8), inclusive |
|
minecraft:crafting_table |
JSON Object |
|
Describes the component of a custom crafting table. This component supports only "recipe_shaped" and "recipe_shapeless" typed recipes and not others like "recipe_furnace" or "recipe_brewing_mix". If there are two recipes for one item, the recipe book will pick the first that was parsed. If two input recipes are the same, crafting may assert and the resulting item may vary.Experimental toggles required: Holiday Creator Featurescrafting_tags#
Defines the tags recipes should define to be crafted on this table. Limited to 64 tags. Each tag is limited to 64 characters.
table_name#
Specifies the language file key that maps to what text will be displayed in the UI of this table. If the string given can not be resolved as a loc string, the raw string given will be displayed. If this field is omitted, the name displayed will default to the name specified in the display_name component. If this block has no display_name component, the name displayed will default to the name of the block.
|
minecraft:creative_category |
String |
|
Specifies the menu category and group for the block, which determine where this block is placed in the inventory and crafting table container screens. If this component is omitted, the block will not appear in the inventory or crafting table container screens.Experimental toggles required: Holiday Creator Featurescategory#
Determines which category this block will be placed under in the inventory and crafting table container screens. Options are "construction", "nature", "equipment", "items", and "none". If omitted or "none" is specified, the block will not appear in the inventory or crafting table container screens.
group#
Specifies the language file key that maps to which expandable/collapsible group this block will be a part of within a category. If the string given can not be resolved as a loc string, then we will check if there is an existing group whose name matches the raw string. If this field is omitted, or there is no group whose name matches the loc string or the raw string, this block will be placed standalone in the given category.
|
minecraft:destroy_time |
Decimal |
0.0 |
Sets the destroy time property for the block. Greater numbers result in greater mining times. Time is measured in seconds with base equipment. |
minecraft:display_name |
Localization String |
|
Specifies the language file key that maps to what text will be displayed when you hover over the block. Key is limited to 256 characters.Experimental toggles required: Holiday Creator Features |
minecraft:explosion_resistance |
Decimal |
0.0 |
How much power it can resist from explosion. Bigger the value is, more explosion power it blocks from explosion. If the value is less than remaining power from explosion, the block would destroy. |
minecraft:flammable |
Boolean / JSON Object |
|
Describes the flammable properties for this block. If set to true, default values are used. If set to false, this block will not be able to catch on fire. If this component is omitted, the block will not be able to catch on fire naturally from neighbors or lava, but it can still be directly ignited, and that fire will be able to spread to neighbor blocks.
Name | Type | Default Value | Description |
catch_chance_modifier |
Integer |
5 |
A modifier affecting the chance that this block will catch flame when next to a fire. Values are greater than or equal to 0, with a higher number meaning more likely to catch on fire. The default value of 5 is the same as that of Planks. |
destroy_chance_modifier |
Integer |
20 |
A modifier affecting the chance that this block will be destroyed by flames when on fire. Values are greater than or equal to 0, with a higher number meaning more likely to be destroyed by fire. The default value of 20 is the same as that of Planks. |
|
minecraft:friction |
Decimal |
0.6 |
Property describing the friction for this block in a range of [0.1, 1.0]. Friction affects an entity's movement speed when it travels on the block. Greater value results in less friction. |
minecraft:geometry |
Identifier String |
|
The geometry description identifier to use, this identifier must match an existing geometry identifier in any of the currently loaded resource packs.Experimental toggles required: Holiday Creator Features |
minecraft:light_dampening |
Integer |
15 |
The amount that light will be dampened when it passes through the block, in a range (0-15). Higher value means the light will be dampened more. |
minecraft:loot |
Path String |
|
The path to the loot table, relative to the behavior pack. Path string is limited to 256 characters. |
minecraft:map_color |
String |
|
Sets the color of the block when rendered to a map. The color is represented as a hex value in the format "#RRGGBB". May also be expressed as an array of [R, G, B] from 0 to 255. If this component is omitted, the block will not show up on the map. |
minecraft:material_instances |
JSON Object |
|
The material instances for a block. Maps face or material_instance names in a geometry file to an actual material instance. You can assign a material instance object to any of these faces: 'up', 'down', 'north', 'south', 'east', 'west', or '*'. You can also give an instance the name of your choosing such as 'my_instance', and then assign it to a face by doing 'north':'my_instance'.Experimental toggles required: Holiday Creator FeaturesMaterial Instance#
A material instance definition to map to a material instance in a geometry file. The material instance '*' will be used for any materials that don't have a match.
Name | Type | Default Value | Description |
ambient_occlusion |
Boolean |
true |
Should this material have ambient occlusion applied when lighting? If true, shadows will be created around and underneath the block. |
face_dimming |
Boolean |
true |
Should this material be dimmed by the direction it's facing? |
render_method |
String |
opaque |
The render method to use. Must be one of these options:'opaque' - Used for a regular block texture without an alpha layer. Does not allow for transparency or translucency.'double_sided' - Used for completely disabling backface culling.'blend' - Used for a block like stained glass. Allows for transparency and translucency (slightly transparent textures).'alpha_test' - Used for a block like the vanilla (unstained) glass. Does not allow for translucency, only fully opaque or fully transparent textures. Also disables backface culling. |
texture |
String |
|
Texture name for the material. |
|
minecraft:part_visibility |
JSON Object |
|
Sets conditions for when the block's different parts are visible.Experimental toggles required: Upcoming Creator Features
Name | Type | Default Value | Description |
conditions |
JSON Object |
|
A JSON object that contains a list of key/value pairs that map from bone name in a geometry file (key) to a condition that turns their rendering on/off (value). The condition should be a Molang query that uses block properties to determine true/false. Supported 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. |
|
minecraft:placement_filter |
JSON Object |
|
Sets rules for under what conditions the block can be placed/surviveExperimental toggles required: Holiday Creator Featuresconditions#
List of conditions where the block can be placed/survive. Limited to 64 conditions.
Name | Type | Default Value | Description |
allowed_faces |
Array |
|
List of any of the following strings: up, down, north, south, east, west, side, all. Limited to 6 faces. |
block_filter |
Array |
|
List of blocks (can use tags to specify them) that this block can be placed against in the allowed_faces direction. Limited to 64 blocks. |
|
minecraft:queued_ticking |
JSON Object |
|
Triggers the specified event, either once, or at a regular interval equal to a number of ticks randomly chosen from the interval_range provided.Experimental toggles required: Holiday Creator Features
Name | Type | Default Value | Description |
interval_range |
Array |
|
A range of values, specified in ticks, that will be used to decide the interval between times this event triggers. Each interval will be chosen randomly from the range, so the times between this event triggering will differ given an interval_range of two different values. If the values in the interval_range are the same, the event will always be triggered after that number of ticks. |
looping |
Boolean |
true |
Does the event loop? If false, the event will only be triggered once, after a delay equal to a number of ticks randomly chosen from the interval_range. If true, the event will loop, and each interval between events will be equal to a number of ticks randomly chosen from the interval_range. |
on_tick |
Trigger |
|
The event that will be triggered once or on an interval.
Name | Type | Default Value | Description |
condition |
String |
1 |
A condition using Molang queries that results to true/false. If true on the scheduled tick, the event will be triggered. If false on the scheduled tick, the event will not be triggered. |
event |
String |
set_block_property |
The event that will be triggered. |
target |
String |
self |
The target of the event executed by the block. |
|
|
minecraft:random_ticking |
JSON Object |
|
Triggers the specified event randomly based on the random tick speed gamerule. The random tick speed determines how often blocks are updated. Some other examples of game mechanics that use random ticking are crop growth and fire spreading.Experimental toggles required: Holiday Creator Features
Name | Type | Default Value | Description |
on_tick |
Trigger |
|
The event that will be triggered on random ticks.
Name | Type | Default Value | Description |
condition |
String |
1 |
A condition using Molang queries that results to true/false. If true on the random tick, the event will be triggered. If false on the random tick, the event will not be triggered. |
event |
String |
set_block_property |
The event that will be triggered. |
target |
String |
self |
The target of the event executed by the block. |
|
|
minecraft:rotation |
Vector [a, b, c] |
rotation[0, 0, 0] |
This is the block's rotation around the center of the cube in degrees. The rotation order is x-y-z. Angles need to be in factors of 90.Experimental toggles required: Holiday Creator Features |
minecraft:unit_cube |
JSON Object |
|
Specifies that a unit cube is to be used with tessellation.Experimental toggles required: Holiday Creator Features |
minecraft:unwalkable |
Boolean |
false |
Sets the block as unwalkable. Mobs would not attempt to path over top of it when the value is set to true. |
These properties are part of the Block Definition. This helps the system determine how to parse and initialize this block.
Name | Type | Default Value | Description |
add_mob_effect |
JSON Object |
|
Apply mob effect to target.
Name | Type | Default Value | Description |
amplifier |
Integer |
0 |
The amplifier for the mob effect. |
duration |
Decimal |
0.0 |
The duration of the mob effect. |
effect |
String |
|
The mob effect to apply. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
damage |
JSON Object |
|
Deals damage to the target.
Name | Type | Default Value | Description |
amount |
Integer |
0 |
The amount of damage to deal. |
mob_amount |
Integer |
0 |
The amount of damage to deal if held by a mob. |
target |
Minecraft Filter |
self |
The target context to execute against. |
type |
String |
|
The type of damage to deal. |
|
decrement_stack |
JSON Object |
|
Decrement item stack. |
die |
JSON Object |
|
Kill target. If target is self and this is run from a block then destroy the block.
Name | Type | Default Value | Description |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
play_effect |
JSON Object |
|
Spawns a particle effect relative to target position.
Name | Type | Default Value | Description |
data |
Integer |
0 |
Particle data value. |
effect |
String |
|
The name of the particle effect to create. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
play_sound |
JSON Object |
|
Play a sound relative to target position.
Name | Type | Default Value | Description |
sound |
String |
|
The name of the sound to play. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
remove_mob_effect |
JSON Object |
|
Removes mob effect from target.
Name | Type | Default Value | Description |
effect |
String |
|
The mob effect to remove. Use 'all' to remove all mob effects from target. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
run_command |
JSON Object |
|
Triggers a slash command or a list of slash commands.
Name | Type | Default Value | Description |
command |
String |
|
Slash command to run. |
command array |
Array |
|
List of slash commands to run. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
set_block |
JSON Object |
|
Sets this block to another block type.
Name | Type | Default Value | Description |
block_type |
String |
|
The type of block to set. |
|
set_block_at_pos |
JSON Object |
|
Sets a block relative to this block to another block type.
Name | Type | Default Value | Description |
block_offset |
Vector [a, b, c] |
[0.0, 0.0, 0.0] |
The offset from the block's center. |
block_type |
String |
|
The type of block to set. |
|
set_block_property |
JSON Object |
|
Sets a block property on this block.
Name | Type | Default Value | Description |
property |
Molang |
|
Block property to set on the block. |
|
spawn_loot |
JSON Object |
|
Spawn loot from block.
Name | Type | Default Value | Description |
table |
String |
|
File path, relative to the Behavior Pack's path, to the loot table file. |
|
swing |
JSON Object |
|
Event causes the actor to swing. |
teleport |
JSON Object |
|
Teleport target randomly around destination point.
Name | Type | Default Value | Description |
avoid_water |
Boolean |
true |
Determines if the teleport avoids putting the target in water. |
destination |
Vector [a, b, c] |
[0.0, 0.0, 0.0] |
Origin destination of the teleport. |
land_on_block |
Boolean |
true |
Determines if the teleport places the target on a block. |
max_range |
Vector [a, b, c] |
[8.0, 8.0, 8.0] |
Max range the target can teleport relative to the origin destination. |
target |
Minecraft Filter |
self |
The target context to execute against. |
|
transform_item |
JSON Object |
|
Transforms item into another item.
Name | Type | Default Value | Description |
transform |
String |
|
Name of the item it should transform into |
|