# ENTITIES DOCUMENTATION Version: 1.17.0.2

##

Index

Client Entity Documentation
identifier
min_engine_version
materials, textures, animations
scripts
animations
animation_controllers
particle
render_controllers
locators
enable_attachables
Spawn Egg
Data-Driven Spawning
Spawn Rules
Filters
clock_time
distance_to_nearest_player
has_ability
has_biome_tag
has_component
has_container_open
has_damage
has_equipment
has_mob_effect
has_ranged_weapon
has_tag
has_target
has_trade_supply
hourly_clock_time
in_block
in_caravan
in_clouds
in_contact_with_water
in_lava
in_nether
in_water
in_water_or_rain
inactivity_timer
is_altitude
is_avoiding_mobs
is_biome
is_block
is_brightness
is_climbing
is_color
is_daytime
is_difficulty
is_family
is_game_rule
is_humid
is_immobile
is_in_village
is_leashed
is_leashed_to
is_mark_variant
is_moving
is_owner
is_persistent
is_riding
is_skin_id
is_sleeping
is_sneaking
is_snow_covered
is_target
is_temperature_type
is_temperature_value
is_underground
is_underwater
is_variant
is_visible
is_weather
light_level
moon_intensity
moon_phase
on_ground
on_ladder
random_chance
rider_count
surface_mob
trusts
weather
weather_at_position
Server Entity Documentation
AI Goals
Attributes
Built-in Events
Components
Entity Definition Properties
Entity Description Properties
ID Lists
Properties
Triggers

Back to top

#

Client Entity Documentation

Client entity definitions are contained within a Resource Pack. To start, create a new folder and name it "entity" inside the root of the Resource Pack. In the entity folder create a JSON file and give it a name.The JSON file needs a format version and minecraft:client_entity information.The minecraft:client_entity section contains the description for the entity. Under description there are a number of things that you can set about an entity. Generally, this file is defining what resources a mob requires and gives a friendly name to each, that the other definition files can use.

##

Example client entity definitions JSON for the pig
"format_version": "1.8.0", "minecraft:client_entity": { "description": { "identifier": "minecraft:pig", "min_engine_version": "1.8.0", "materials": { "default": "pig" }, "textures": { "default": "textures/entity/pig/pig", "saddled": "textures/entity/pig/pig_saddle" }, "geometry": { "default": "geometry.pig.v1.8" }, "animations": { "setup": "animation.pig.setup", "walk": "animation.quadruped.walk", "look_at_target": "animation.common.look_at_target", "baby_transform": "animation.pig.baby_transform" }, "animation_controllers": [ { "setup": "controller.animation.pig.setup" }, { "move": "controller.animation.pig.move" }, { "baby": "controller.animation.pig.baby" } ], "render_controllers": [ "controller.render.pig" ], "locators": { "lead": { "head": [ 0.0, 14.0, -6.0 ] } }, "spawn_egg": { "texture": "spawn_egg", "texture_index": 2 } } } Back to top

#

identifier

of the entity(materials, textures, geometry, etc.) The matching identifier in the Entity Behavior JSON in the Behavior Pack is what gives the entity its behaviors.Back to top

#

min_engine_version

engine version for which the top resource pack was built.If a definition's min_engine_version is newer than that pack's engine version then the definition is not parsed.Multiple definition files may use the same identifier, in which case only one of those definitions will be loaded. The definition with the same or closest and not greater min_engine_version, as compared to the top resource pack's engine version, will be parsed; all other definitions with the same identifier will not be parsed.This can be useful for continuing to support an older version of an entity, when an older resource pack is used at the top of the resource pack stack, while also supporting a newer version of the entity in all other cases.Back to top

#

materials, textures, animations

Players must set user defined names for them. These names are used in the Render Controllers JSON. Players can reference materials, textures, and geometry from the vanilla Minecraft Resource Pack or create their own. Custom materials, textures, and geometry should be in the corresponding folder at the root of the Resource Pack.Back to top

#

scripts

This value than can be used over and over again without the need to constantly recompute the calculations. Scripts currently support pre - animation and scale.More script types will be added later.-Pre-animation scripts are evaluated immediately before animations are processed.-Scale sets the scale of the mob's geometry.

##

Example pre-animation script for cod
"scripts": { "pre_animation": [ "variable.ZRot = !query.is_in_water ? Math.cos((query.time_stamp + global.frame_alpha) * 14.32) * 90 : 0.0;", "variable.AnimationAmountBlend = Math.lerp(variable.AnimationAmountPrev, variable.AnimationAmount, global.frame_alpha);" ] }, Example scale script for the bat
"scripts": { "scale": "0.35" }, Back to top

#

animations

These names are used by the animation controller JSON. Players can reference animations from the vanilla Minecraft Resource Pack or create their own. Custom animations should be in the animation folder at the root of the Resource Pack.Back to top

#

animation_controllers

Each Controller contains a list of states that play one or more animations. Allows the player to assign names to reference the long names for animation controllers. Names are required and need to be unique from all other names in the animation controllers for that mob. Players can reference animation controllers from the vanilla Minecraft Resource Pack or create their own. Custom animation controllers should be in the animation_controllers folder at the root of the Resource Pack.Back to top

#

particle

Keys are required and need to be unique from all other keys in the animation controllers. Players can reference particles from the vanilla Minecraft Resource Pack or create their own. Custom particles should be in the particle folder at the root of the Resource Pack.Back to top

#

render_controllers

Players can reference Render Controllers from the vanilla Minecraft Resource Pack or create their own. Custom Render Controllers should be in the textures folder at the root of the Resource Pack.Back to top

#

locators

##

"locators": { "lead": { "head": [ 0.0, 14.0, -6.0 ] } } Back to top

#

enable_attachables

##

"enable_attachables": true Back to top

#

Spawn Egg

##

###

Example Spawn Egg using hex value
"spawn_egg": { "base_color": "#53443E", "overlay_color": "#2E6854" } Back to top
When there are more than one texture associated with a texture name you can use an index to pick the one that you want. If no index is specified than it is assumed to be 0 and the first texture in the list is used.

###

Example Spawn Egg specifying a texture
"spawn_egg": { "texture": "spawn_egg", "texture_index": 2 } Back to top

#

Data-Driven Spawning

Data-Driven spawning allows you to adjust the spawn conditions of mobs, including new mobs added to the game to spawn naturally in biomes, add / remove a mob's spawn egg to the creative inventory and set the mob's spawn egg, and add / remove a to the / summon command

#

Spawn Rules

##

##

Getting Started

Spawn rules contain description and conditionsAll Spawn Rules JSON need to have an ID (located under the description section). Similar to other identifiers, it follows the convention "namespace:name". The minecraft namespace is reserved for the vanilla Minecraft rules.When changing an existing mob use the ID that appears in the entity JSON for that entity. When creating your own mob, make sure the mobs have the same ID in all the entity's JSON files.Spawn Rules also needs to define the pool that is used for population control.Each pool has their own spawn limit, By setting an entity to a pool it will spawn as long as that pool hasn't reached the spawn limit.There are 3 pools that entities can be assigned to :-animal-water_animal-monsterBack to top

##

Conditions

###

###

Components

####

Name | Description
--- | ---
minecraft:spawns_on_surface |
minecraft:spawns_underwater |
minecraft:brightness_filter |
Name | Type | Default Value | Description
--- | --- | --- | ---
adjust_for_weather | Boolean | false | This determines if weather can affect the light level conditions that cause the mob to spawn (e.g. Allowing hostile mobs to spawn during the day when it rains.)
max | Decimal | 15.0 | This is the maximum light level value that allows the mob to spawn
min | Decimal | 0.0 | This is the minimum light level value that allows the mob to spawn
minecraft:weight |
Name | Type | Default Value | Description
--- | --- | --- | ---
default | Decimal | 0.0 | This is the priority of the mob spawning
minecraft:difficulty_filter |
Name | Type | Default Value | Description
--- | --- | --- | ---
max | String |  | This is the maximum difficulty level that a mob spawns
min | String |  | This is the minimum difficulty level that a mob spawns
minecraft:herd |
Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | This is an event that can be triggered from spawning
event_skip_count | Decimal |  | This is the number of mobs spawned before the specified event is triggered
max_size | Decimal |  | This is the maximum number of mobs that spawn in a herd
min_size | Decimal |  | This is the minimum number of mobs that spawn in a herd
minecraft:biome_filter |
minecraft:density_limit |
Name | Type | Default Value | Description
--- | --- | --- | ---
surface | Integer |  | This is the maximum number of mobs of this type spawnable on the surface
underground | Integer |  | This is the maximum number of mobs of this type spawnable underground

Back to top

##

Biome Tags

###

Tag
animal
beach
birch
cold
dark_oak
deep
desert
edge
extreme_hills
flower_forest
forest
frozen
hills
ice
ice_plains
jungle
lakes
lukewarm
mega
mesa
monster
mooshroom_island
mountain
mutated
nether
ocean
plains
plateau
river
roofed
savanna
shore
stone
swamp
taiga
the_end
warm

Back to top

##

Tagged Biomes

###

Biome | Tags
--- | ---
Plains |
Desert |
Mountain |
Forest |
Taiga |
Swamp |
River |
Nether |
The End |
Frozen Ocean |
Frozen River |
Snowy Tundra |
Snowy Mountains |
Mushroom Fields |
Mushroom Fields Shore |
Beach |
Desert Hills |
Forest Hills |
Taiga Hills |
Mountain Edge |
Jungle |
Jungle Hills |
Jungle Edge |
Snowy Beach |
Stone Shore |
Birch Forest |
Birch Forest Hills |
Dark Forest |
Snowy Taiga |
Snowy Taiga Hills |
Giant Tree Taiga |
Giant Tree Taiga Hills |
Wooded Mountain |
Savanna |
Savanna Plateau |
Mesa |
Mesa Plateau Stone |
Mesa Plateau |
Ocean |
Deep Ocean |
Warm Ocean |
Deep Warm Ocean |
Lukewarm Ocean |
Deep Lukewarm Ocean |
Cold Ocean |
Deep Cold Ocean |
Frozen Ocean |
Deep Frozen Ocean |
Plains M |
Swamp M |
Snowy Tundra M |
Cold Taiga M |
Savanna M |
Savanna Plateau M |
Dark Forest M |
Desert M |
Forest M |
Taiga M |
Jungle M |
Jungle Edge M |
Mesa M |
Mesa Plateau M |
Mesa Plateau Stone M |
Birch Forest M |
Birch Forest Hills M |
Giant Trees Taiga M |
Mountain M |
Mountain + M |
Giant Tree Taiga Hills M |

Back to top

##

Example Spawn Rules for the zombie
"format_version": "1.8.0", "minecraft:spawn_rules": { "description": { "identifier": "minecraft:zombie", "population_control": "monster" }, "conditions": [ { "minecraft:spawns_on_surface": {}, "minecraft:brightness_filter": { "min": 0, "max": 7, "adjust_for_weather": true }, "minecraft:difficulty_filter": { "min": "easy", "max": "hard" }, "minecraft:weight": { "default": 100 }, "minecraft:herd": { "min_size": 2, "max_size": 4 }, "minecraft:permute_type": [ { "weight": 95 }, { "weight": 5, "entity_type": "minecraft:zombie_villager" } ], "minecraft:biome_filter": { "test": "has_biome_tag", "operator": "==", "value": "monster" } } ] }

#

Filters

Filters allow data objects to specify test criteria which allows their use.For example, a model that includes a filter will only be used when the filter criteria is true.A typical filter consists of four parameters: name: the name of the test to apply. domain: the domain the test should be performed in. An armor slot, for example. This parameter is only used by a few tests. operator: the comparison to apply with the value, such as 'equal' or 'greater'. value: the value being compared with the test.A typical filter looks like the following: { "test" : "moon_intensity", "subject" : "self", "operator" : "greater", "value" : "0.5" } Which results in the calling entity (self) calculating the moon_intensity at its location and returning true if the result is greater than 0.5.Tests can be combined into groups using the collections 'all_of', 'any_of', or 'none_of'. All tests in an 'all_of' group must pass in order for the group to pass. One or more tests in an 'any_of' group must pass in order for the group to pass. All tests in a 'none_of' group must fail in order for the group to pass.

#

clock_time

Compares the current time with a float value in the range (0.0, 1.0). 0.0= Noon 0.25= Sunset 0.5= Midnight 0.75= Sunrise

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Decimal |  | (Required) A floating point value.

## Examples

Full..
{ "test": "clock_time", "subject": "self", "operator": "equals", "value": "0.00" } Short (using Defaults)..
{ "test": "clock_time", "value": "0.00" } Back to top

#

distance_to_nearest_player

Compares the distance to the nearest Player with a float value.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Decimal |  | (Required) A floating point value.

## Examples

Full..
{ "test": "distance_to_nearest_player", "subject": "self", "operator": "equals", "value": "0.00" } Short (using Defaults)..
{ "test": "distance_to_nearest_player", "value": "0.00" } Back to top

#

has_ability

Returns true when the subject entity has the named ability.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Ability type to test
Options | Description
--- | ---
flySpeed |
flying |
instabuild |
invulnerable |
lightning |
mayfly |
mute |
noclip |
walkSpeed |
worldbuilder |

## Examples

Full..
{ "test": "has_ability", "subject": "self", "operator": "equals", "value": "instabuild" } Short (using Defaults)..
{ "test": "has_ability", "value": "instabuild" } Back to top

#

has_biome_tag

Tests whether the biome the subject is in has the specified tag.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The tag to look for

## Examples

Full..
{ "test": "has_biome_tag", "subject": "self", "operator": "equals", "value": " " } Short (using Defaults)..
{ "test": "has_biome_tag", "value": " " } Back to top

#

has_component

Returns true when the subject entity contains the named component.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The component name to look for

## Examples

Full..
{ "test": "has_component", "subject": "self", "operator": "equals", "value": "minecraft:explode" } Short (using Defaults)..
{ "test": "has_component", "value": "minecraft:explode" } Back to top

#

has_container_open

Returns true when the subject Player entity has opened a container.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "has_container_open", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "has_container_open" } Back to top

#

has_damage

Returns true when the subject entity receives the named damage type.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Damage type to test
Options | Description
--- | ---
anvil |
attack |
block_explosion |
contact |
drowning |
entity_explosion |
fall |
falling_block |
fatal | Any damage which kills the subject
fire |
fire_tick |
fly_into_wall |
lava |
magic |
none |
override |
piston |
projectile |
stalactite |
stalagmite |
starve |
suffocation |
suicide |
thorns |
void |
wither |

## Examples

Full..
{ "test": "has_damage", "subject": "self", "operator": "equals", "value": "fatal" } Short (using Defaults)..
{ "test": "has_damage", "value": "fatal" } Back to top

#

has_equipment

Tests for the presence of a named item in the designated slot of the subject entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
domain | String | any | (Optional) The equipment location to test
Options | Description
--- | ---
any |
armor |
feet |
hand |
head |
leg |
torso |
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The item name to look for

## Examples

Full..
{ "test": "has_equipment", "subject": "self", "domain": "any", "operator": "equals", "value": "dirt" } Short (using Defaults)..
{ "test": "has_equipment", "value": "dirt" } Back to top

#

has_mob_effect

Tests whether the Subject has the specified mob effect.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Optional) A string value.

## Examples

Full..
{ "test": "has_mob_effect", "subject": "self", "operator": "equals", "value": "" } Short (using Defaults)..
{ "test": "has_mob_effect" } Back to top

#

has_ranged_weapon

Returns true when the subject entity is holding a ranged weapon like a bow or crossbow.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "has_ranged_weapon", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "has_ranged_weapon" } Back to top

#

has_tag

Returns true if the subject entity has the tag provided.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Optional) A string value.

## Examples

Full..
{ "test": "has_tag", "subject": "self", "operator": "equals", "value": "" } Short (using Defaults)..
{ "test": "has_tag" } Back to top

#

has_target

Returns true if the subject entity has a valid target.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "has_target", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "has_target" } Back to top

#

has_trade_supply

Tests whether the target has any trade supply left. Will return false if the target cannot be traded with.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "has_trade_supply", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "has_trade_supply" } Back to top

#

hourly_clock_time

Compares the current 24 hour time with an int value in the range[0, 24000]

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "hourly_clock_time", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "hourly_clock_time", "value": "0" } Back to top

#

in_block

Returns true when the subject entity is inside a specified Block type.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Optional) A string value.

## Examples

Full..
{ "test": "in_block", "subject": "self", "operator": "equals", "value": "" } Short (using Defaults)..
{ "test": "in_block" } Back to top

#

in_caravan

Returns true if the subject entity is in a caravan.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_caravan", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_caravan" } Back to top

#

in_clouds

Returns true when the subject entity is in the clouds.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_clouds", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_clouds" } Back to top

#

in_contact_with_water

Returns true when the subject entity in contact with any water: water, rain, splash water bottle.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_contact_with_water", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_contact_with_water" } Back to top

#

in_lava

Returns true when the subject entity is in lava.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_lava", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_lava" } Back to top

#

in_nether

Returns true when the subject entity is in Nether.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_nether", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_nether" } Back to top

#

in_water

Returns true when the subject entity is in water.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_water", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_water" } Back to top

#

in_water_or_rain

Returns true when the subject entity is in water or rain.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "in_water_or_rain", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "in_water_or_rain" } Back to top

#

inactivity_timer

Tests if the specified duration in seconds of inactivity for despawning has been reached.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "inactivity_timer", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "inactivity_timer", "value": "0" } Back to top

#

is_altitude

Tests the current altitude against a provided value. 0= bedrock elevation.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) The altitude value to compare with

## Examples

Full..
{ "test": "is_altitude", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "is_altitude", "value": "0" } Back to top

#

is_avoiding_mobs

Returns true if the subject entity is fleeing from other mobs.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_avoiding_mobs", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_avoiding_mobs" } Back to top

#

is_biome

Tests whether the Subject is currently in the named biome.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Biome type to test
Options | Description
--- | ---
beach |
desert |
extreme_hills |
flat |
forest |
ice |
jungle |
mesa |
mushroom_island |
ocean |
plain |
river |
savanna |
stone_beach |
swamp |
taiga |
the_end |
the_nether |

## Examples

Full..
{ "test": "is_biome", "subject": "self", "operator": "equals", "value": "beach" } Short (using Defaults)..
{ "test": "is_biome", "value": "beach" } Back to top

#

is_block

Returns true when the block has the given name.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Family name to look for

## Examples

Full..
{ "test": "is_block", "subject": "self", "operator": "equals", "value": "player" } Short (using Defaults)..
{ "test": "is_block", "value": "player" } Back to top

#

is_brightness

Tests the current brightness against a provided value in the range (0.0f, 1.0f).

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Decimal |  | (Required) The brightness value to compare with.

## Examples

Full..
{ "test": "is_brightness", "subject": "self", "operator": "equals", "value": "0.50" } Short (using Defaults)..
{ "test": "is_brightness", "value": "0.50" } Back to top

#

is_climbing

Returns true if the subject entity is climbing.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_climbing", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_climbing" } Back to top

#

is_color

Returns true if the subject entity is the named color.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Palette Color to test
Options | Description
--- | ---
black |
blue |
brown |
cyan |
gray |
green |
light_blue |
light_green |
magenta |
orange |
pink |
purple |
red |
silver |
white |
yellow |

## Examples

Full..
{ "test": "is_color", "subject": "self", "operator": "equals", "value": "white" } Short (using Defaults)..
{ "test": "is_color", "value": "white" } Back to top

#

is_daytime

Returns true during the daylight hours.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_daytime", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_daytime" } Back to top

#

is_difficulty

Tests the current difficulty level of the game.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The game's difficulty level to test
Options | Description
--- | ---
easy |
hard |
normal |
peaceful |

## Examples

Full..
{ "test": "is_difficulty", "subject": "self", "operator": "equals", "value": "normal" } Short (using Defaults)..
{ "test": "is_difficulty", "value": "normal" } Back to top

#

is_family

Returns true when the subject entity is a member of the named family.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Family name to look for

## Examples

Full..
{ "test": "is_family", "subject": "self", "operator": "equals", "value": "player" } Short (using Defaults)..
{ "test": "is_family", "value": "player" } Back to top

#

is_game_rule

Tests whether a named game rule is active.

##

Name | Type | Default | Description
--- | --- | --- | ---
domain | String |  | (Required) The Game Rule to test.
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_game_rule", "subject": "self", "domain": "domobspawning", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_game_rule", "domain": "domobspawning" } Back to top

#

is_humid

Tests whether the Subject is in an area with humidity

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_humid", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_humid" } Back to top

#

is_immobile

Returns true if the subject entity is immobile. An entity is immobile if it lacks AI goals, has just changed dimensions or if it is a mob and has no health.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_immobile", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_immobile" } Back to top

#

is_in_village

Tests whether the Subject is inside the bounds of a village.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_in_village", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_in_village" } Back to top

#

is_leashed

Returns true if the subject entity is leashed.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_leashed", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_leashed" } Back to top

#

is_leashed_to

Returns true if the subject entity leashed to the calling entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_leashed_to", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_leashed_to" } Back to top

#

is_mark_variant

Returns true if the subject entity is the mark variant number provided.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "is_mark_variant", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "is_mark_variant", "value": "0" } Back to top

#

is_moving

Returns true if the subject entity is moving.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_moving", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_moving" } Back to top

#

is_owner

Returns true if the subject entity is the owner of the calling entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_owner", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_owner" } Back to top

#

is_persistent

Tests if the subject's persistence matches the bool value passed in.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_persistent", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_persistent" } Back to top

#

is_riding

Returns true if the subject entity is riding on another entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_riding", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_riding" } Back to top

#

is_skin_id

Returns true if the subject entity is the skin id number provided.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "is_skin_id", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "is_skin_id", "value": "0" } Back to top

#

is_sleeping

Tests whether the Subject is sleeping.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_sleeping", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_sleeping" } Back to top

#

is_sneaking

Returns true if the subject entity is sneaking.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_sneaking", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_sneaking" } Back to top

#

is_snow_covered

Tests whether the Subject is in an area with snow cover

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_snow_covered", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_snow_covered" } Back to top

#

is_target

Returns true if the subject entity is the target of the calling entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_target", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_target" } Back to top

#

is_temperature_type

Tests whether the current temperature is a given type.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Biome temperature catagory to test
Options | Description
--- | ---
cold |
mild |
ocean |
warm |

## Examples

Full..
{ "test": "is_temperature_type", "subject": "self", "operator": "equals", "value": "cold" } Short (using Defaults)..
{ "test": "is_temperature_type", "value": "cold" } Back to top

#

is_temperature_value

Tests the current temperature against a provided value in the range (0.0, 1.0) where 0.0f is the coldest temp and 1.0f is the hottest.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Decimal |  | (Required) The Biome temperature value to compare with.

## Examples

Full..
{ "test": "is_temperature_value", "subject": "self", "operator": "equals", "value": "0.50" } Short (using Defaults)..
{ "test": "is_temperature_value", "value": "0.50" } Back to top

#

is_underground

Returns true when the subject entity is underground. An entity is considered underground if there are non-solid blocks above it.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_underground", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_underground" } Back to top

#

is_underwater

Returns true when the subject entity is under water. An entity is considered underwater if it is completely submerged in water blocks.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_underwater", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_underwater" } Back to top

#

is_variant

Returns true if the subject entity is the variant number provided.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "is_variant", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "is_variant", "value": "0" } Back to top

#

is_visible

Returns true if the subject entity is visible.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "is_visible", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "is_visible" } Back to top

#

is_weather

DEPRECATED

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Family name to look for

## Examples

Full..
{ "test": "is_weather", "subject": "self", "operator": "equals", "value": "player" } Short (using Defaults)..
{ "test": "is_weather", "value": "player" } Back to top

#

light_level

Tests is the mob is outside of the specified light level range (0, 16).

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "light_level", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "light_level", "value": "0" } Back to top

#

moon_intensity

Compares the current moon intensity with a float value in the range (0.0, 1.0)

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Decimal |  | (Required) A floating point value.

## Examples

Full..
{ "test": "moon_intensity", "subject": "self", "operator": "equals", "value": "0.00" } Short (using Defaults)..
{ "test": "moon_intensity", "value": "0.00" } Back to top

#

moon_phase

Compares the current moon phase with an integer value in the range (0, 7).

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "moon_phase", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "moon_phase", "value": "0" } Back to top

#

on_ground

Returns true when the subject entity is on ground.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "on_ground", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "on_ground" } Back to top

#

on_ladder

Returns true when the subject entity is on a ladder.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "on_ladder", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "on_ladder" } Back to top

#

random_chance

Returns true if the random chance rolls 0 out of a specified max range.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "random_chance", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "random_chance", "value": "0" } Back to top

#

rider_count

Returns the number of riders on this entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Integer |  | (Required) An integer value.

## Examples

Full..
{ "test": "rider_count", "subject": "self", "operator": "equals", "value": "0" } Short (using Defaults)..
{ "test": "rider_count", "value": "0" } Back to top

#

surface_mob

Tests if the subject is a surface mob.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "surface_mob", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "surface_mob" } Back to top

#

trusts

Returns true if the subject is trusted by entity.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | Boolean | true | (Optional) true or false.

## Examples

Full..
{ "test": "trusts", "subject": "self", "operator": "equals", "value": "true" } Short (using Defaults)..
{ "test": "trusts" } Back to top

#

weather

Tests the current weather in the dimension against a provided weather value.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Family name to look for

## Examples

Full..
{ "test": "weather", "subject": "self", "operator": "equals", "value": "player" } Short (using Defaults)..
{ "test": "weather", "value": "player" } Back to top

#

weather_at_position

Tests the current weather, at the actor's position, against a provided weather value.

##

Name | Type | Default | Description
--- | --- | --- | ---
operator | String | equals | (Optional) The comparison to apply with 'value'.
Options | Description
--- | ---
!= | Test for inequality.
< | Test for less-than the value.
<= | Test for less-than or equal to the value.
<> | Test for inequality.
= | Test for equality.
== | Test for equality.
> | Test for greater-than the value.
>= | Test for greater-than or equal to the value.
equals | Test for equality.
not | Test for inequality.
subject | String | self | (Optional) The subject of this filter test.
Options | Description
--- | ---
block | The block involved with the interaction.
damager | The damaging actor involved with the interaction.
other | The other member of an interaction, not the caller.
parent | The caller's current parent.
player | The player involved with the interaction.
self | The entity or object calling the test
target | The caller's current target.
value | String |  | (Required) The Family name to look for

## Examples

Full..
{ "test": "weather_at_position", "subject": "self", "operator": "equals", "value": "player" } Short (using Defaults)..
{ "test": "weather_at_position", "value": "player" } Back to top

## Example:

This filter group will pass only when the moon_intensity is greater than 0.5 AND the caller's target entity is standing in water.
"all_of" : [ : { "test" : "moon_intensity", "subject" : "self", "operator" : "greater", "value" : "0.5" }, : { "test" : "in_water", "subject" : "target", "operator" : "equal", "value" : "true" } : ]

#

Server Entity Documentation

#

AI Goals

##

##

minecraft:behavior.admire_item

###

Name | Type | Default Value | Description
--- | --- | --- | ---
admire_item_sound | String |  | The sound event to play when admiring the item
sound_interval | Range [a, b] | 0 | The range of time in seconds to randomly wait before playing the sound again.

Back to top

##

minecraft:behavior.barter

Back to top

##

minecraft:behavior.beg

###

Name | Type | Default Value | Description
--- | --- | --- | ---
items | List |  | List of items that this mob likes
look_distance | Decimal | 8.0 | Distance in blocks the mob will beg from
look_time | Range [a, b] | [2, 4] | The range of time in seconds this mob will stare at the player holding a food they like, begging for it

Back to top

##

minecraft:behavior.break_door

Back to top

##

minecraft:behavior.stomp_turtle_egg

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
search_height | Integer | 1 | Height in blocks the mob will look for turtle eggs to move towards
search_range | Integer | 0 | The distance in blocks it will look for turtle eggs to move towards
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.breed

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.drink_potion

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_modifier |  |  | 0.0
potions | List |  | A list of potions that this entity can drink. Each potion entry has the following parameters:
Name | Type | Default Value | Description
--- | --- | --- | ---
chance | Decimal | 1.0 | The percent chance (from 0.0 to 1.0) of this potion being selected when searching for a potion to use.
filters | Minecraft Filter |  | The filters to use when determining if this potion can be selected.
id | Integer | -1 | The registry ID of the potion to use

Back to top

##

minecraft:behavior.door_interact

Back to top

##

minecraft:behavior.eat_carried_item

###

Name | Type | Default Value | Description
--- | --- | --- | ---
delay_before_eating | Decimal |  | Time in seconds the mob should wait before eating the item.

Back to top

##

minecraft:behavior.explore_outskirts

###

Name | Type | Default Value | Description
--- | --- | --- | ---
explore_dist | Decimal | 5.0 | The distance in which the mob will proceed past the village bounds
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
wait_time | Integer | 0 | The time the mob will stand around 'searching' for POIs

Back to top

##

minecraft:behavior.find_cover

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.flee_sun

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.float

Back to top

##

minecraft:behavior.rise_to_liquid_level

Back to top

##

minecraft:behavior.follow_owner

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
start_distance | Decimal | 10.0 | The distance in blocks that the owner can be away from this mob before it starts following it
stop_distance | Decimal | 2.0 | The distance in blocks this mob will stop from its owner while following it

Back to top

##

minecraft:behavior.follow_parent

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.follow_caravan

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_count | Integer | 1 | Number of entities that can be in the caravan
entity_types | JSON Object |  | List of entity types that this mob can follow in a caravan
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.follow_mob

###

Name | Type | Default Value | Description
--- | --- | --- | ---
search_range | Integer | 0 | The distance in blocks it will look for a mob to follow
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
stop_distance | Decimal | 2.0 | The distance in blocks this mob stops from the mob it is following

Back to top

##

minecraft:behavior.go_home

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
on_home | String |  | Event to run when this mob gets home.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.knockback_roar

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Trigger |  |  |
attack_time | Decimal | 0.5 | The delay after which the knockback occurs (in seconds).
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
duration | Decimal | 1.0 | The duration of the roar (in seconds).
knockback_damage | Integer | 6 | The damage dealt by the knockback roar.
knockback_range | Integer | 4 | The radius (in blocks) of the knockback effect.
knockback_strength | Integer | 4 | The strength of the knockback.

Back to top

##

minecraft.behavior.scared

###

Name | Type | Default Value | Description
--- | --- | --- | ---
sound_interval | Integer | 0 | The interval in which a sound will play when active in a 1/delay chance to kick off

Back to top

##

minecraft:behavior.move_to_water

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_count | Integer | 10 | The number of blocks each tick that the mob will check within it's search range and height for a valid block to move to. A value of 0 will have the mob check every block within range in one tick
search_height | Integer | 1 | Height in blocks the mob will look for water to move towards
search_range | Integer | 0 | The distance in blocks it will look for water to move towards
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.move_to_lava

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_count | Integer | 10 | The number of blocks each tick that the mob will check within it's search range and height for a valid block to move to. A value of 0 will have the mob check every block within range in one tick
search_height | Integer | 1 | Height in blocks the mob will look for lava to move towards
search_range | Integer | 0 | The distance in blocks it will look for lava to move towards
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.move_to_land

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_count | Integer | 10 | The number of blocks each tick that the mob will check within it's search range and height for a valid block to move to. A value of 0 will have the mob check every block within range in one tick
search_height | Integer | 1 | Height in blocks the mob will look for land to move towards
search_range | Integer | 0 | The distance in blocks it will look for land to move towards
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft.behavior.move_to_poi

###

Name | Type | Default Value | Description
--- | --- | --- | ---
poi_type | String |  | Tells the goal what POI type it should be looking for
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.move_to_village

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_range | Integer | 0 | The distance in blocks to search for villages. If <= 0, find the closest village regardless of distance.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.stroll_towards_village

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_range | Integer | 0 | The distance in blocks to search for points inside villages. If <= 0, find the closest village regardless of distance.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
start_chance | Decimal | 0.1 | This is the chance that the mob will start this goal, from 0 to 1

Back to top

##

minecraft.behavior.hide

###

Name | Type | Default Value | Description
--- | --- | --- | ---
duration | Decimal | 1.0 | Amount of time in seconds that the mob reacts.
poi_type | String |  | Defines what POI type to hide at.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
timeout_cooldown | Decimal | 8.0 | The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition.

Back to top

##

minecraft.behavior.work

###

Name | Type | Default Value | Description
--- | --- | --- | ---
active_time | Integer | 0 | The amount of ticks the NPC will stay in their the work location
can_work_in_rain | Boolean | false | If true, this entity can work when their jobsite POI is being rained on.
goal_cooldown | Integer | 0 | The amount of ticks the goal will be on cooldown before it can be used again
on_arrival | String |  | Event to run when the mob reaches their jobsite and finishes working.
sound_delay_max | Integer | 0 | The max interval in which a sound will play
sound_delay_min | Integer | 0 | The min interval in which a sound will play
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
work_in_rain_tolerance | Integer | -1 | If "can_work_in_rain" is false, this is the maximum number of ticks left in the goal where rain will not interrupt the goal

Back to top

##

minecraft:behavior.random_breach

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1

Back to top

##

minecraft:behavior.nearest_prioritized_attackable_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
attack_interval | Integer | 0 | Time in seconds before selecting a target
entity_types | JSON Object |  | List of entity types that this mob considers valid targets
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
must_reach | Boolean | false | If true, only entities that this mob can path to can be selected as targets
must_see | Boolean | false | If true, only entities in this mob's viewing range can be selected as targets
must_see_forget_duration | Decimal | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
persist_time | Decimal | 0.0f | Time in seconds for a valid target to stay targeted when it becomes and invalid target.
priority | Integer | 0 | Specifies the priority in which filtered enemy types should be attacked. Lower number means higher priority.
reselect_targets | Boolean | false | If true, the target will change to the current closest entity whenever a different entity is closer
scan_interval | Integer | 10 | How many ticks to wait between scanning for a target.
set_persistent | Boolean | false | Allows the actor to be set to persist upon targeting a player
target_search_height | Decimal | -1.0f | Height in blocks to search for a target mob. -1.0f means the height does not matter.
within_radius | Decimal | 0.0 | Distance in blocks that the target can be within to launch an attack

Back to top

##

minecraft:behavior.defend_trusted_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
aggro_sound | String |  | Sound to occasionally play while defending.
attack_interval | Integer | 0 | Time in seconds between attacks
entity_types | JSON Object |  | List of entity types that this mob considers valid targets
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
must_see | Boolean | false | If true, only entities in this mob's viewing range can be selected as targets
must_see_forget_duration | Decimal | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
within_radius | Decimal | 0.0 | Distance in blocks that the target can be within to launch an attack

Back to top

##

minecraft:behavior.hurt_by_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
alert_same_type | Boolean | false | If true, nearby mobs of the same type will be alerted about the damage
entity_types | JSON Object |  | List of entity types that this mob can target when hurt by them
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
hurt_owner | Boolean | false | If true, the mob will hurt its owner and other mobs with the same owner as itself

Back to top

##

minecraft:behavior.owner_hurt_by_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_types | JSON Object |  | List of entity types that this mob can target if they hurt their owner
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged

Back to top

##

minecraft:behavior.owner_hurt_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_types | JSON Object |  | List of entity types that this entity can target if the potential target is hurt by this mob's owner
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged

Back to top

##

minecraft:behavior.hold_ground

###

Name | Type | Default Value | Description
--- | --- | --- | ---
broadcast | Boolean | false | Whether to broadcast out the mob's target to other mobs of the same type.
broadcast_range | Decimal | 0.0f | Range in blocks for how far to broadcast.
min_radius | Decimal | 10.0f | Minimum distance the target must be for the mob to run this goal.
within_radius_event | String |  | Event to run when target is within the radius. This event is broadcasted if broadcast is true.

Back to top

##

minecraft:behavior.lay_egg

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
on_lay | String |  | Event to run when this mob lays the egg.
search_height | Integer | 1 | Height in blocks the mob will look for sand block to move towards
search_range | Integer | 0 | The distance in blocks it will look for a sand block to move towards
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.look_at_player

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angle_of_view_horizontal | Integer | 360 | The angle in degrees that the mob can see in the Y-axis (up-down)
angle_of_view_vertical | Integer | 360 | The angle in degrees that the mob can see in the X-axis (left-right)
look_distance | Decimal | 8.0 | The distance in blocks from which the entity will look at
look_time | Range [a, b] | [2, 4] | Time range to look at the entity
probability | Decimal | 0.02 | The probability of looking at the target. A value of 1.00 is 100%

Back to top

##

minecraft:behavior.look_at_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angle_of_view_horizontal | Integer | 360 | The angle in degrees that the mob can see in the Y-axis (up-down)
angle_of_view_vertical | Integer | 360 | The angle in degrees that the mob can see in the X-axis (left-right)
look_distance | Decimal | 8.0 | The distance in blocks from which the entity will look at
look_time | Range [a, b] | [2, 4] | Time range to look at the entity
probability | Decimal | 0.02 | The probability of looking at the target. A value of 1.00 is 100%

Back to top

##

minecraft:behavior.look_at_entity

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angle_of_view_horizontal | Integer | 360 | The angle in degrees that the mob can see in the Y-axis (up-down)
angle_of_view_vertical | Integer | 360 | The angle in degrees that the mob can see in the X-axis (left-right)
filters | Minecraft Filter |  | Filter to determine the conditions for this mob to look at the entity
look_distance | Decimal | 8.0 | The distance in blocks from which the entity will look at
look_time | Range [a, b] | [2, 4] | Time range to look at the entity
probability | Decimal | 0.02 | The probability of looking at the target. A value of 1.00 is 100%

Back to top

##

minecraft:behavior.look_at_trading_player

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angle_of_view_horizontal | Integer | 360 | The angle in degrees that the mob can see in the Y-axis (up-down)
angle_of_view_vertical | Integer | 360 | The angle in degrees that the mob can see in the X-axis (left-right)
look_distance | Decimal | 8.0 | The distance in blocks from which the entity will look at
look_time | Range [a, b] | [2, 4] | Time range to look at the entity
probability | Decimal | 0.02 | The probability of looking at the target. A value of 1.00 is 100%

Back to top

##

minecraft:behavior.mount_pathing

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
target_dist | Decimal | 0.0 | The distance at which this mob wants to be away from its target
track_target | Boolean | false | If true, this mob will chase after the target as long as it's a valid target

Back to top

##

minecraft:behavior.move_indoors

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
timeout_cooldown | Decimal | 8.0 | The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition

Back to top

##

minecraft:behavior.move_through_village

###

Name | Type | Default Value | Description
--- | --- | --- | ---
only_at_night | Boolean | false | If true, the mob will only move through the village during night time
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.move_towards_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
within_radius | Decimal | 0.0 | Defines the radius in blocks that the mob tries to be from the target. A value of 0 means it tries to occupy the same block as the target

Back to top

##

minecraft:behavior.follow_target_captain

###

Name | Type | Default Value | Description
--- | --- | --- | ---
follow_distance | Decimal | 0.0 | Defines the distance in blocks the mob will stay from its target while following.
within_radius | Decimal | 0.0 | Defines the maximum distance in blocks a mob can get from its target captain before giving up trying to follow it.

Back to top

##

minecraft:behavior.move_to_random_block

###

Name | Type | Default Value | Description
--- | --- | --- | ---
block_distance | Decimal | 16.0 | Defines the distance from the mob, in blocks, that the block to move to will be chosen.
within_radius | Decimal | 0.0 | Defines the distance in blocks the mob has to be from the block for the movement to be finished.

Back to top

##

minecraft:behavior.ocelot_sit_on_block

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.lay_down

###

Name | Type | Default Value | Description
--- | --- | --- | ---
interval | Integer | 120 | A random value to determine at what intervals something can occur. This has a 1/interval chance to choose this goal
random_stop_interval | Integer | 120 | a random value in which the goal can use to pull out of the behavior. This is a 1/interval chance to play the sound

Back to top

##

minecraft:behavior.offer_flower

Back to top

##

minecraft:behavior.open_door

###

Name | Type | Default Value | Description
--- | --- | --- | ---
close_door_after | Boolean | true | If true, the mob will close the door after opening it and going through it

Back to top

##

minecraft:behavior.panic

###

Name | Type | Default Value | Description
--- | --- | --- | ---
damage_sources | List | all | The list of Entity Damage Sources that will cause this mob to panic
force | Boolean | false | If true, this mob will not stop panicking until it can't move anymore or the goal is removed from it
ignore_mob_damage | Boolean | false | If true, the mob will not panic in response to damage from other mobs. This overrides the damage types in "damage_sources"
prefer_water | Boolean | false | If true, the mob will prefer water over land
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.run_around_like_crazy

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.restrict_sun

Back to top

##

minecraft:behavior.restrict_open_door

Back to top

##

minecraft:behavior.random_look_around

###

Name | Type | Default Value | Description
--- | --- | --- | ---
look_time | Range [a, b] | [2, 4] | The range of time in seconds the mob will stay looking in a random direction before looking elsewhere

Back to top

##

minecraft:behavior.silverfish_merge_with_stone

Back to top

##

minecraft:behavior.silverfish_wake_up_friends

Back to top

##

minecraft:behavior.stay_while_sitting

Back to top

##

minecraft:behavior.make_love

Back to top

##

minecraft:behavior.snacking

###

Name | Type | Default Value | Description
--- | --- | --- | ---
items | List |  | Items that we are interested in snacking on
snacking_cooldown | Decimal | 7.5 | The cooldown time in seconds before the mob is able to snack again
snacking_cooldown_min | Decimal | 0.5f | The minimum time in seconds before the mob is able to snack again
snacking_stop_chance | Decimal | 0.0017 | This is the chance that the mob will stop snacking, from 0 to 1

Back to top

##

minecraft:behavior.random_sitting

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
min_sit_time | Decimal | 10 | The minimum amount of time in seconds before the mob can stand back up
start_chance | Decimal | 0.1 | This is the chance that the mob will start this goal, from 0 to 1
stop_chance | Decimal | 0.3 | This is the chance that the mob will stop this goal, from 0 to 1

Back to top

##

minecraft:behavior.random_look_around_and_sit

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_look_count | Integer | 2 | The max amount of unique looks a mob will have while looking around.
max_look_time | Integer | 40 | The max amount of time (in ticks) a mob will stay looking at a direction while looking around.
min_look_count | Integer | 1 | The min amount of unique looks a mob will have while looking around.
min_look_time | Integer | 20 | The min amount of time (in ticks) a mob will stay looking at a direction while looking around.
probability | Integer | 0.02 | The probability of randomly looking around/sitting.

Back to top

##

minecraft:behavior.random_stroll

###

Name | Type | Default Value | Description
--- | --- | --- | ---
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1

Back to top

##

minecraft:behavior.random_swim

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_surface | Boolean | true | If true, the mob will avoid surface water blocks by swimming below them
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1

Back to top

##

minecraft:behavior.random_fly

###

Name | Type | Default Value | Description
--- | --- | --- | ---
can_land_on_trees | Boolean | true | If true, the mob can stop flying and land on a tree instead of the ground
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1

Back to top

##

minecraft:behavior.tempt

###

Name | Type | Default Value | Description
--- | --- | --- | ---
can_get_scared | Boolean | false | If true, the mob can stop being tempted if the player moves too fast while close to this mob
items | List |  | List of items this mob is tempted by
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
within_radius | Decimal | 0.0 | Distance in blocks this mob can get tempted by a player holding an item they like

Back to top

##

minecraft:behavior.trade_interest

###

Name | Type | Default Value | Description
--- | --- | --- | ---
carried_item_switch_time | Decimal | 2.0 | The max time in seconds that the trader will hold an item before attempting to switch for a different item that takes the same trade
cooldown | Decimal | 2.0 | The time in seconds before the trader can use this goal again
interest_time | Decimal | 45.0 | The max time in seconds that the trader will be interested with showing it's trade items
remove_item_time | Decimal | 1.0 | The max time in seconds that the trader will wait when you no longer have items to trade
within_radius | Decimal | 0.0 | Distance in blocks this mob can be interested by a player holding an item they like

Back to top

##

minecraft:behavior.peek

Back to top

##

minecraft:behavior.play

###

Name | Type | Default Value | Description
--- | --- | --- | ---
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.receive_love

Back to top

##

minecraft:behavior.take_flower

Back to top

##

minecraft:behavior.squid_idle

Back to top

##

minecraft:behavior.squid_flee

Back to top

##

minecraft:behavior.squid_move_away_from_ground

Back to top

##

minecraft:behavior.squid_out_of_water

Back to top

##

minecraft:behavior.squid_dive

Back to top

##

minecraft:behavior.skeleton_horse_trap

###

Name | Type | Default Value | Description
--- | --- | --- | ---
duration | Decimal | 1.0 | Amount of time in seconds the trap exists. After this amount of time is elapsed, the trap is removed from the world if it hasn't been activated
within_radius | Decimal | 0.0 | Distance in blocks that the player has to be within to trigger the horse trap

Back to top

##

minecraft:behavior.sleep

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
sleep_collider_height | Decimal | 1.0 | The height of the mob's collider while sleeping
sleep_collider_width | Decimal | 1.0 | The width of the mob's collider while sleeping
sleep_y_offset | Decimal | 1.0 | The y offset of the mob's collider while sleeping
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
timeout_cooldown | Decimal | 8.0 | The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition

Back to top

##

minecraft:behavior.nap

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_max | Decimal | 0.0 | Maximum time in seconds the mob has to wait before using the goal again
cooldown_min | Decimal | 0.0 | Minimum time in seconds the mob has to wait before using the goal again
mob_detect_dist | Decimal | 6.0 | The block distance in x and z that will be checked for mobs that this mob detects
mob_detect_height | Decimal | 6.0 | The block distance in y that will be checked for mobs that this mob detects

Back to top

##

minecraft:behavior.swell

###

Name | Type | Default Value | Description
--- | --- | --- | ---
start_distance | Decimal | 10.0 | This mob starts swelling when a target is at least this many blocks away
stop_distance | Decimal | 2.0 | This mob stops swelling when a target has moved away at least this many blocks

Back to top

##

minecraft:behavior.dragonholdingpattern

Back to top

##

minecraft:behavior.dragonlanding

Back to top

##

minecraft:behavior.dragonscanning

Back to top

##

minecraft:behavior.dragontakeoff

Back to top

##

minecraft:behavior.dragondeath

Back to top

##

minecraft:behavior.enderman_leave_block

Back to top

##

minecraft:behavior.enderman_take_block

Back to top

##

minecraft:behavior.leap_at_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
must_be_on_ground | Boolean | true | If true, the mob will only jump at its target if its on the ground. Setting it to false will allow it to jump even if its already in the air
set_persistent | Boolean | false | Allows the actor to be set to persist upon targeting a player
yd | Decimal | 0.0 | The height in blocks the mob jumps when leaping at its target

Back to top

##

minecraft:behavior.stalk_and_pounce_on_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
interest_time | Decimal | 2.0 | The amount of time the mob will be interested before pouncing. This happens when the mob is within range of pouncing
leap_distance | Decimal | 0.8 | The distance in blocks the mob jumps in the direction of its target
leap_height | Decimal | 0.9 | The height in blocks the mob jumps when leaping at its target
max_stalk_dist | Decimal | 10.0 | The maximum distance away a target can be before the mob gives up on stalking
pounce_max_dist | Decimal | 5.0 | The maximum distance away from the target in blocks to begin pouncing at the target
set_persistent | Boolean | false | Allows the actor to be set to persist upon targeting a player
stalk_speed | Decimal | 1.2 | The movement speed in which you stalk your target
strike_dist | Decimal | 2.0 | The max distance away from the target when landing from the pounce that will still result in damaging the target
stuck_time | Decimal | 2.0 | The amount of time the mob will be stuck if they fail and land on a block they can be stuck on

Back to top

##

minecraft:behavior.slime_attack

###

Name | Type | Default Value | Description
--- | --- | --- | ---
set_persistent | Boolean | false | Allows the actor to be set to persist upon targeting a player

Back to top

##

minecraft:behavior.raid_garden

###

Name | Type | Default Value | Description
--- | --- | --- | ---
blocks | List |  | Blocks that the mob is looking for to eat/raid
eat_delay | Integer | 2 | Time in seconds between each time it eats/raids
full_delay | Integer | 100 | Amount of time in seconds before this mob wants to eat/raid again after eating its maximum
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
initial_eat_delay | Integer | 0 | Time in seconds before starting to eat/raid once it arrives at it
max_to_eat | Integer | 6 | Maximum number of crops this entity wants to eat/raid. If set to zero or less then it doesn't have a maximum
search_range | Integer | 0 | Distance in blocks the mob will look for crops to eat
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.inspect_bookshelf

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_count | Integer | 10 | The number of blocks each tick that the mob will check within it's search range and height for a valid block to move to. A value of 0 will have the mob check every block within range in one tick
search_height | Integer | 1 | The height that the mob will search for bookshelves
search_range | Integer | 0 | Distance in blocks the mob will look for books to inspect
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.player_ride_tamed

Back to top

##

minecraft:behavior.find_mount

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_water | Boolean | false | If true, the mob will not go into water blocks when going towards a mount
mount_distance | Decimal | -1.0 | This is the distance the mob needs to be, in blocks, from the desired mount to mount it. If the value is below 0, the mob will use its default attack distance
start_delay | Integer | 0 | Time the mob will wait before starting to move towards the mount
target_needed | Boolean | false | If true, the mob will only look for a mount if it has a target
within_radius | Decimal | 0.0 | Distance in blocks within which the mob will look for a mount

Back to top

##

minecraft:behavior.wither_random_attack_pos_goal

Back to top

##

minecraft:behavior.wither_target_highest_damage

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_types | JSON Object |  | List of entity types the wither takes into account to find who dealt the most damage to it
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged

Back to top

##

minecraft:behavior.float_wander

###

Name | Type | Default Value | Description
--- | --- | --- | ---
float_duration | Range [a, b] | [0.0, 0.0] | Range of time in seconds the mob will float around before landing and choosing to do something else
must_reach | Boolean | false | If true, the point has to be reachable to be a valid target
random_reselect | Boolean | false | If true, the mob will randomly pick a new point while moving to the previously selected one
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1
y_offset | Decimal | 0.0 | Height in blocks to add to the selected target position

Back to top

##

minecraft:behavior.random_hover

###

Name | Type | Default Value | Description
--- | --- | --- | ---
|  |  | hover_height
interval | Integer | 120 | A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
xz_dist | Integer | 10 | Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1
y_dist | Integer | 7 | Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1
y_offset | Decimal | 0.0 | Height in blocks to add to the selected target position

Back to top

##

minecraft:behavior.trade_with_player

Back to top

##

minecraft:behavior.summon_entity

###

Name | Type | Default Value | Description
--- | --- | --- | ---
summon_choices | List |  | List of spells for the mob to use to summon entities. Each spell has the following parameters:
Name | Type | Default Value | Description
--- | --- | --- | ---
cast_duration | Decimal | Total delay of the steps | Time in seconds the spell casting will take
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the spell again
do_casting | Boolean | true | If true, the mob will do the casting animations and render spell particles
filters | Minecraft Filter |  |
max_activation_range | Decimal | 32.0 | Upper bound of the activation distance in blocks for this spell, must not be negative.
min_activation_range | Decimal | 1.0 | Lower bound of the activation distance in blocks for this spell, must not be negative.
particle_color | Integer | 0 | The color of the particles for this spell
sequence | List |  | List of steps for the spell. Each step has the following parameters:
Name | Type | Default Value | Description
--- | --- | --- | ---
base_delay | Decimal | 0.0 | Amount of time in seconds to wait before this step starts
delay_per_summon | Decimal | 0.0 | Amount of time in seconds before each entity is summoned in this step
entity_lifespan | Decimal | -1.0 | Amount of time in seconds that the spawned entity will be alive for. A value of -1.0 means it will remain alive for as long as it can
entity_type | String |  | The entity type of the entities we will spawn in this step
num_entities_spawned | Integer | 1 | Number of entities that will be spawned in this step
shape | String | line | The base shape of this step. Valid values are circle and line
size | Decimal | 1.0 | The base size of the entity
sound_event | String |  | The sound event to play for this step
summon_cap | Integer | 0 | Maximum number of summoned entities at any given time
summon_cap_radius | Decimal | 0.0 |
target | String | self | The target of the spell. This is where the spell will start (line will start here, circle will be centered here)
start_sound_event | String |  | The sound event to play when using this spell
weight | Decimal | 0.0 | The weight of this spell. Controls how likely the mob is to choose this spell when casting one

Back to top

##

minecraft:behavior.mingle

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
duration | Decimal | 1.0 | Amount of time in seconds that the entity will chat with another entity
mingle_distance | Decimal | 2.0f | The distance from its partner that this entity will mingle. If the entity type is not the same as the entity, this value needs to be identical on both entities.
mingle_partner_type | List | empty | The entity type that this entity is allowed to mingle with
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.send_event

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cast_duration | Decimal | Total delay of the steps | Time in seconds for the entire event sending process
look_at_target | Boolean | true | If true, the mob will face the entity it sends an event to
sequence | List |  | List of events to send
Name | Type | Default Value | Description
--- | --- | --- | ---
base_delay | Decimal | 0.0 | Amount of time in seconds before starting this step
event | String |  | The event to send to the entity
sound_event | String |  | The sound event to play when this step happens

Back to top

##

minecraft:behavior.vex_random_move

Back to top

##

minecraft:behavior.vex_copy_owner_target

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_types | JSON Object |  | List of entities this mob can copy the owner from
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged

Back to top

##

minecraft:behavior.pickup_items

###

Name | Type | Default Value | Description
--- | --- | --- | ---
can_pickup_any_item | Boolean | false | If true, the mob can pickup any item
can_pickup_to_hand_or_equipment | Boolean | true | If true, the mob can pickup items to its hand or armor slots
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
max_dist | Decimal | 0.0 | Maximum distance this mob will look for items to pick up
pickup_based_on_chance | Boolean | false | If true, depending on the difficulty, there is a random chance that the mob may not be able to pickup items
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
track_target | Boolean | false | If true, this mob will chase after the target as long as it's a valid target

Back to top

##

minecraft:behavior.share_items

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_types | JSON Object |  | List of entities this mob will share items with
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
max_dist | Decimal | 0.0 | Maximum distance in blocks this mob will look for entities to share items with
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.find_underwater_treasure

###

Name | Type | Default Value | Description
--- | --- | --- | ---
search_range | Integer | 0 | The range that the mob will search for a treasure chest within a ruin or shipwreck to move towards.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal
stop_distance | Decimal | 2.0 | The distance the mob will move before stopping.

Back to top

##

minecraft:behavior.pet_sleep_with_owner

###

Name | Type | Default Value | Description
--- | --- | --- | ---
goal_radius | Decimal | 0.5 | Distance in blocks within the mob considers it has reached the goal. This is the "wiggle room" to stop the AI from bouncing back and forth trying to reach a specific spot
search_height | Integer | 1 | Height in blocks from the owner the pet can be to sleep with owner.
search_range | Integer | 0 | The distance in blocks from the owner the pet can be to sleep with owner.
speed_multiplier | Decimal | 1.0 | Movement speed multiplier of the mob when using this AI Goal

Back to top

##

minecraft:behavior.sneeze

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_time | Decimal | 0.0 | Time in seconds the mob has to wait before using the goal again
drop_item_chance | Decimal | 1.0 | The probability that the mob will drop an item when it sneezes.
entity_types | JSON Object |  | List of entity types this mob will startle (cause to jump) when it sneezes.
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this entry in the list valid
max_dist | Decimal | 16 | Maximum distance this mob can be away to be a valid choice
must_see | Boolean | false | If true, the mob has to be visible to be a valid choice
must_see_forget_duration | Boolean | 3.0 | Determines the amount of time in seconds that this mob will look for a target before forgetting about it and looking for a new one when the target isn't visible any more
sprint_speed_multiplier | Decimal | 1.0 | Multiplier for the running speed. A value of 1.0 means the speed is unchanged
walk_speed_multiplier | Decimal | 1.0 | Multiplier for the walking speed. A value of 1.0 means the speed is unchanged
loot_table | String |  | Loot table to select dropped items from.
prepare_sound | String |  | Sound to play when the sneeze is about to happen.
prepare_time | Decimal | 1.0 | The time in seconds that the mob takes to prepare to sneeze (while the prepare_sound is playing).
probability | Decimal | 0.02 | The probability of sneezing. A value of 1.00 is 100%
sound | String |  | Sound to play when the sneeze occurs.
within_radius | Decimal | 0.0 | Distance in blocks that mobs will be startled.

Back to top

##

minecraft:behavior.roll

###

Name | Type | Default Value | Description
--- | --- | --- | ---
probability | Decimal | [1.0] | The probability that the mob will use the goal.

Back to top

##

minecraft:behavior.celebrate

###

Name | Type | Default Value | Description
--- | --- | --- | ---
celebration_sound | String |  | The sound to occasionally play.
duration | Decimal | 1.0 | The duration of the celebration (in seconds).
jump_interval | Range [a, b] | 0 | The range of time in seconds to randomly wait before jumping again.
on_celebration_end_event | Trigger |  | The event to trigger when the goal's duration expires.
sound_interval | Range [a, b] | 0 | The range of time in seconds to randomly wait before playing the sound again.

Back to top

##

minecraft:behavior.nearest_attackable_target

Allows an entity to attack the closest target within a given subset of specific target types.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
attack_interval | Integer | 0 | Time range (in seconds) between searching for an attack target, range is in (0, "attack_interval"]. Only used if "attack_interval" is greater than 0, otherwise "scan_interval" is used.
attack_interval_min | Integer | 0 | Alias for "attack_interval"; provides the same functionality as "attack_interval".
attack_owner | Boolean | false | If true, this entity can attack its owner.
entity_types | JSON Object |  | Filters which types of targets are valid for this entity.
Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | Conditions that make this target a valid type.
max_dist | Decimal | 16 | To be a valid target choice, the target type cannot be farther away from this entity than "max_dist".
must_see | Boolean | false | Determines if target-validity requires this entity to be in range only, or both in range and in sight.
must_see_forget_duration | Boolean | 3.0 | Time (in seconds) the target must not be seen by this entity to become invalid. Used only if "must_see" is true.
must_reach | Boolean | false | If true, this entity requires a path to the target.
must_see | Boolean | false | Determines if target-validity requires this entity to be in range only, or both in range and in sight.
must_see_forget_duration | Decimal | 3.0 | Time (in seconds) the target must not be seen by this entity to become invalid. Used only if "must_see" is true.
persist_time | Decimal | 0.0 | Time (in seconds) this entity can continue attacking the target after the target is no longer valid.
reselect_targets | Boolean | false | Allows the attacking entity to update the nearest target, otherwise a target is only reselected after each "scan_interval" or "attack_interval".
scan_interval | Integer | 10 | If "attack_interval" is 0 or isn't declared, then between attacks: scanning for a new target occurs every amount of ticks equal to "scan_interval", minimum value is 1. Values under 10 can affect performance.
set_persistent | Boolean | false | Allows the actor to be set to persist upon targeting a player
target_invisible_multiplier | Decimal | 0.7 | Multiplied with the target's armor coverage percentage to modify "max_dist" when detecting an invisible target.
target_search_height | Decimal | -1.0 | Maximum vertical target-search distance, if it's greater than the target type's "max_dist". A negative value defaults to "entity_types" greatest "max_dist".
target_sneak_visibility_multiplier | Decimal | 0.8 | Multiplied with the target type's "max_dist" when trying to detect a sneaking target.
within_radius | Decimal | 0.0 | Maximum distance this entity can be from the target when following it, otherwise the target becomes invalid. This value is only used if the entity doesn't declare "minecraft:follow_range".

Back to top

#

Attributes

##

##

minecraft:attack

Defines an entity's melee attack and any additional effects on it.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
damage | Range [a, b] |  | Range of the random amount of damage the melee attack deals. A negative value can heal the entity instead of hurting it
effect_duration | Decimal | 0.0 | Duration in seconds of the status ailment applied to the damaged entity
effect_name | String |  | Identifier of the status ailment to apply to an entity attacked by this entity's melee attack

Back to top

##

minecraft:spell_effects

Defines what mob effects to add and remove to the entity when adding this component.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
add_effects | List |  | List of effects to add to this entity after adding this component
Name | Type | Default Value | Description
--- | --- | --- | ---
effect | String |  | Effect to add to this entity. Includes 'duration' in seconds, 'amplifier' level, 'ambient' if it is to be considered an ambient effect, and 'visible' if the effect should be visible
remove_effects | String |  | List of identifiers of effects to be removed from this entity after adding this component

Back to top

##

minecraft:strength

Defines the entity's strength to carry items.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max | Integer | 5 | The maximum strength of this entity
value | Integer | 1 | The initial value of the strength

Back to top

#

Built-in Events

##

Name | Description
--- | ---
minecraft:entity_transformed |
minecraft:entity_born |
minecraft:entity_spawned |
minecraft:on_prime |

Back to top

#

Components

##

##

minecraft:addrider

Adds a rider to the entity. Requires minecraft:rideable.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
entity_type | String |  | The entity type that will be riding this entity.
spawn_event | String |  | The spawn event that will be used when the riding entity is created.

Back to top

##

minecraft:admire_item

Causes the mob to ignore attackable targets for a given duration.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown_after_being_attacked | Integer | 0 | Duration, in seconds, for which mob won't admire items if it was hurt
duration | Integer | 10 | Duration, in seconds, that the mob is pacified.

Back to top

##

minecraft:ageable

Adds a timer for the entity to grow up. It can be accelerated by giving the entity the items it likes as defined by feedItems.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
drop_items | List |  | List of items that the entity drops when it grows up.
duration | Decimal | 1200.0 | Amount of time before the entity grows up, -1 for always a baby.
feed_items | List |  | List of items that can be fed to the entity. Includes 'item' for the item name and 'growth' to define how much time it grows up by
grow_up | String |  | Event to run when this entity grows up.
transform_to_item | Item Description Properties |  | The feed item used will transform to this item upon successful interaction. Format: itemName:auxValue

Back to top

##

minecraft:angry

Defines the entity's 'angry' state using a timer.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angry_sound | String |  | The sound event to play when the mob is angry
broadcast_anger | Boolean | false | If true, other entities of the same entity definition within the broadcastRange will also become angry
broadcast_anger_on_attack | Boolean | false | If true, other entities of the same entity definition within the broadcastRange will also become angry whenever this mob attacks
broadcast_anger_on_being_attacked | Boolean | false | If true, other entities of the same entity definition within the broadcastRange will also become angry whenever this mob is attacked
broadcast_filters | Minecraft Filter |  | Conditions that make this entry in the list valid
broadcast_range | Integer | 20 | Distance in blocks within which other entities of the same entity definition will become angry
broadcast_targets | List |  | A list of entity families to broadcast anger to
calm_event | String |  | Event to run after the number of seconds specified in duration expires (when the entity stops being 'angry')
duration | Integer | 25 | The amount of time in seconds that the entity will be angry
duration_delta | Integer | 0 | Variance in seconds added to the duration [-delta, delta]
filters | Minecraft Filter |  | Filter out mob types that it should not attack while angry (other Piglins)
sound_interval | Range [a, b] | 0 | The range of time in seconds to randomly wait before playing the sound again

Back to top

##

minecraft:annotation.break_door

Allows the actor to break doors assuming that that flags set up for the component to use in navigation

###

Name | Type | Default Value | Description
--- | --- | --- | ---
break_time | Decimal | 12.0 | The time in seconds required to break through doors.
min_difficulty | String | hard | The minimum difficulty that the world must be on for this entity to break doors.

Back to top

##

minecraft:annotation.open_door

Allows the actor to open doors assuming that that flags set up for the component to use in navigationBack to top

##

minecraft:area_attack

A component that does damage to entities that get within range.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
String |  |  | cause
Minecraft Filter |  |  | entity_filter
damage_per_tick | Integer | 2 | How much damage per tick is applied to entities that enter the damage range.
damage_range | Decimal | 0.2 | How close a hostile entity must be to have the damage applied.

Back to top

##

minecraft:attack_cooldown

Adds a cooldown to a mob. The intention of this cooldown is to be used to prevent the mob from attempting to aquire new attack targets.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
attack_cooldown_complete_event | Trigger |  | Event to be runned when the cooldown is complete.
attack_cooldown_time | Range [a, b] | [0.0, 1.0] | Amount of time in seconds for the cooldown. Can be specified as a number or a pair of numbers (min and max).

Back to top

##

minecraft:barter

Enables the component to drop an item as a barter exchange.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
barter_table | String |  | Loot table that's used to drop a random item.
cooldown_after_being_attacked | Integer | 0 | Duration, in seconds, for which mob won't barter items if it was hurt

Back to top

##

minecraft:block_sensor

Fires off a specified event when a block in the block list is broken within the sensor range.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Decimal |  |  | sensor_radius
List |  |  | on_break

Back to top

##

minecraft:boostable

Defines the conditions and behavior of a rideable entity's boost.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
boost_items | List |  | List of items that can be used to boost while riding this entity. Each item has the following properties:
Name | Type | Default Value | Description
--- | --- | --- | ---
damage | Integer | 1 | This is the damage that the item will take each time it is used.
item | String |  | Name of the item that can be used to boost.
replace_item | String |  | The item used to boost will become this item once it is used up.
duration | Decimal | 3.0 | Time in seconds for the boost.
speed_multiplier | Decimal | 1.0 | Factor by which the entity's normal speed increases. E.g. 2.0 means go twice as fast.

Back to top

##

minecraft:boss

The current state of the boss for updating the boss HUD.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
hud_range | Integer | 55 | The max distance from the boss at which the boss's health bar is present on the players screen.
name | String |  | The name that will be displayed above the boss's health bar.
should_darken_sky | Boolean | false | Whether the sky should darken in the presence of the boss.

Back to top

##

minecraft:break_blocks

Specifies the blocks that this entity can break as it moves around.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
breakable_blocks | List |  | A list of the blocks that can be broken as this entity moves around

Back to top

##

minecraft:breathable

Defines what blocks this entity can breathe in and gives them the ability to suffocate.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
breathe_blocks | List |  | List of blocks this entity can breathe in, in addition to the above.
breathes_air | Boolean | true | If true, this entity can breathe in air.
breathes_lava | Boolean | true | If true, this entity can breathe in lava.
breathes_solids | Boolean | false | If true, this entity can breathe in solid blocks.
breathes_water | Boolean | false | If true, this entity can breathe in water.
generates_bubbles | Boolean | true | If true, this entity will have visible bubbles while in water.
inhale_time | Decimal | 0 | Time in seconds to recover breath to maximum.
non_breathe_blocks | List |  | List of blocks this entity can't breathe in, in addition to the above.
suffocate_time | Integer | -20 | Time in seconds between suffocation damage.
total_supply | Integer | 15 | Time in seconds the entity can hold its breath.

Back to top

##

minecraft:breedable

Defines the way an entity can get into the 'love' state.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
allow_sitting | Boolean | false | If true, entities can breed while sitting
blend_attributes | Boolean | true | If true, the entities will blend their attributes in the offspring after they breed. For example, horses blend their health, movement, and jump_strength in their offspring.
breed_cooldown | Decimal | 60 | Time in seconds before the Entity can breed again.
breed_items | List |  | The list of items that can be used to get the entity into the 'love' state
breeds_with | List |  | The list of entity definitions that this entity can breed with.
Name | Type | Default Value | Description
--- | --- | --- | ---
baby_type | String |  | The entity definition of this entity's babies.
breed_event | String |  | Event to run when this entity breeds.
mate_type | String |  | The entity definition of this entity's mate.
causes_pregnancy | Boolean | false | If true, the entity will become pregnant instead of spawning a baby.
deny_parents_variant | JSON Object |  | Determines how likely the baby of parents with the same variant will deny that variant and take a random variant within the given range instead.
Name | Type | Default Value | Description
--- | --- | --- | ---
chance | Decimal | 0 | The percentage chance of denying the parents' variant.
max_variant | Integer | 0 | The inclusive maximum of the variant range.
min_variant | Integer | 0 | The inclusive minimum of the variant range.
environment_requirements | List |  | The list of nearby block requirements to get the entity into the 'love' state. ##### blocks The block types required nearby for the entity to breed.Back to top ##### count The number of the required block types nearby for the entity to breed.Back to top ##### radius How many blocks radius from the mob's center to search in for the required blocks. Bounded between 0 and 16.Back to top
extra_baby_chance | Decimal | 0 | Chance that up to 16 babies will spawn between 0.0 and 1.0, where 1.0 is 100%.
inherit_tamed | Boolean | true | If true, the babies will be automatically tamed if its parents are
love_filters | Minecraft Filter |  | The filters to run when attempting to fall in love.
mutation_factor | JSON Object |  | Determines how likely the babies are to NOT inherit one of their parent's variances. Values are between 0.0 and 1.0, with a higher number meaning more likely to mutate.
Name | Type | Default Value | Description
--- | --- | --- | ---
color | Decimal | 0 | The percentage chance of a mutation on the entity's color.
extra_variant | Decimal | 0 | The percentage chance of a mutation on the entity's extra variant type.
variant | Decimal | 0 | The percentage chance of a mutation on the entity's variant type.
require_full_health | Boolean | false | If true, the entity needs to be at full health before it can breed.
require_tame | Boolean | true | If true, the entities need to be tamed first before they can breed.
transform_to_item | String |  | The breed item used will transform to this item upon successful interaction. Format: itemName:auxValue

Back to top

##

minecraft:bribeable

Defines the way an entity can get into the 'bribed' state.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
bribe_cooldown | Decimal | 2.0 | Time in seconds before the Entity can be bribed again.
bribe_items | List |  | The list of items that can be used to bribe the entity.

Back to top

##

minecraft:buoyant

Enables an entity to float on the specified liquid blocks.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
apply_gravity | Boolean | true | Applies gravity each tick. Causes more of a wave simulation, but will cause more gravity to be applied outside liquids.
base_buoyancy | Decimal | 1.0 | Base buoyancy used to calculate how much will a mob float.
big_wave_probability | Decimal | 0.03 | Probability for a big wave hitting the entity. Only used if `simulate_waves` is true.
big_wave_speed | Decimal | 10.0 | Multiplier for the speed to make a big wave. Triggered depending on 'big_wave_probability'.
drag_down_on_buoyancy_removed | Decimal | 0.0 | How much an actor will be dragged down when the Buoyancy Component is removed.
liquid_blocks | List |  | List of blocks this entity can float on. Must be a liquid block.
simulate_waves | Boolean | true | Should the movement simulate waves going through.

Back to top

##

minecraft:burns_in_daylight

Specifies if/how a mob burns in daylight.Back to top

##

minecraft:celebrate_hunt

Specifies hunt celebration behaviour.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
broadcast | Boolean | true | If true, celebration will be broadcasted to other entities in the radius.
celeberation_targets | Minecraft Filter |  | The list of conditions that target of hunt must satisfy to initiate celebration.
celebrate_sound | String |  | The sound event to play when the mob is celebrating
duration | Integer | 4 | Duration, in seconds, of celebration
radius | Decimal | 16 | If broadcast is enabled, specifies the radius in which it will notify other entities for celebration.
sound_interval | Range [a, b] | 0 | The range of time in seconds to randomly wait before playing the sound again

Back to top

##

minecraft:combat_regeneration

Gives Regeneration I and removes Mining Fatigue from the mob that kills the Actor's attack target.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
apply_to_family | Boolean | false | Determines if the mob will grant mobs of the same type combat buffs if they kill the target.
apply_to_self | Boolean | false | Determines if the mob will grant itself the combat buffs if it kills the target.
regeneration_duration | Integer | 5 | The duration in seconds of Regeneration I added to the mob.

Back to top

##

minecraft:conditional_bandwidth_optimization

Defines the Conditional Spatial Update Bandwidth Optimizations of this entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
conditional_values | List |  | The object containing the conditional bandwidth optimization values. ##### conditional_values Conditions that must be met for these optimization values to be used.Back to top ##### max_dropped_ticks In relation to the optimization value, determines the maximum ticks spatial update packets can be not sent.Back to top ##### max_optimized_distance The maximum distance considered during bandwidth optimizations. Any value below the max is interpolated to find optimization, and any value greater than or equal to this max results in max optimization.Back to top ##### use_motion_prediction_hints When set to true, smaller motion packets will be sent during drop packet intervals, resulting in the same amount of packets being sent as without optimizations but with much less data being sent. This should be used when actors are travelling very quickly or teleporting to prevent visual oddities.Back to top
default_values | JSON Object |  | The object containing the default bandwidth optimization values. ##### max_dropped_ticks In relation to the optimization value, determines the maximum ticks spatial update packets can be not sent.Back to top ##### max_optimized_distance The maximum distance considered during bandwidth optimizations. Any value below the max is interpolated to find optimization, and any value greater than or equal to this max results in max optimization.Back to top ##### use_motion_prediction_hints When set to true, smaller motion packets will be sent during drop packet intervals, resulting in the same amount of packets being sent as without optimizations but with much less data being sent. This should be used when actors are travelling very quickly or teleporting to prevent visual oddities.Back to top

Back to top

##

minecraft:custom_hit_test

List of hitboxes for melee and ranged hits against the entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Array |  |  | hitboxes

Back to top

##

minecraft:damage_over_time

Applies defined amount of damage to the entity at specified intervals.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
damage_per_hurt | Integer | 1 | Amount of damage caused each hurt.
time_between_hurt | Decimal | 0.0 | Time in seconds between damage.

Back to top

##

minecraft:damage_sensor

Defines what events to call when this entity is damaged by specific entities or items.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
triggers | List |  | List of triggers with the events to call when taking specific kinds of damage.
Name | Type | Default Value | Description
--- | --- | --- | ---
cause | String | none | Type of damage that triggers the events.
damage_modifier | Decimal | 0.0 | A modifier that adds to/removes from the base damage from the damage cause. It does not reduce damage to less than 0.
damage_multiplier | Decimal | 1.0 | A multiplier that modifies the base damage from the damage cause. If deals_damage is true the multiplier can only reduce the damage the entity will take to a minimum of 1.
deals_damage | Boolean | true | If true, the damage dealt to the entity will take away health from it, set to false to make the entity ignore that damage.
on_damage | JSON Object |  | Specifies filters for entity definitions and events.
on_damage_sound_event | String |  | Defines what sound to play, if any, when the on_damage filters are met.

Back to top

##

minecraft:despawn

Despawns the Actor when the despawn rules or optional filters evaluate to true.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
JSON Object |  |  | despawn_from_distance
Name | Type | Default Value | Description
--- | --- | --- | ---
max_distance | Integer | 128 | maximum distance for standard despawn rules to instantly despawn the mob.
min_distance | Integer | 32 | minimum distance for standard despawn rules to try to despawn the mob.
despawn_from_chance | Boolean | true | Determines if "min_range_random_chance" is used in the standard despawn rules
despawn_from_inactivity | Boolean | true | Determines if the "min_range_inactivity_timer" is used in the standard despawn rules.
despawn_from_simulation_edge | Boolean | true | Determines if the mob is instantly despawned at the edge of simulation distance in the standard despawn rules.
filters | Minecraft Filter |  | The list of conditions that must be satisfied before the Actor is despawned. If a filter is defined then standard despawn rules are ignored.
min_range_inactivity_timer | Integer | 30 | The amount of time in seconds that the mob must be inactive.
min_range_random_chance | Integer | 800 | A random chance between 1 and the given value.
remove_child_entities | Boolean | false | If true, all entities linked to this entity in a child relationship (eg. leashed) will also be despawned.

Back to top

##

minecraft:drying_out_timer

Adds a timer for drying out that will count down and fire 'dried_out_event' or will stop as soon as the entity will get under rain or water and fire 'stopped_drying_out_event'

###

Name | Type | Default Value | Description
--- | --- | --- | ---
dried_out_event | String |  | Event to fire when the drying out time runs out.
recover_after_dried_out_event | String |  | Event to fire when entity was already dried out but received increase in water supply.
stopped_drying_out_event | String |  | Event to fire when entity stopped drying out, for example got into water or under rain.
total_time | Decimal | 0.0 | Amount of time in seconds to dry out fully.
water_bottle_refill_time | Decimal | 0.0 | Optional amount of additional time in seconds given by using splash water bottle on entity.

Back to top

##

minecraft:economy_trade_table

Defines this entity's ability to trade with players.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
convert_trades_economy | Boolean | false | Determines when the mob transforms, if the trades should be converted when the new mob has a economy_trade_table. When the trades are converted, the mob will generate a new trade list with their new trade table, but then it will try to convert any of the same trades over to have the same enchantments and user data. For example, if the original has a Emerald to Enchanted Iron Sword (Sharpness 1), and the new trade also has an Emerald for Enchanted Iron Sword, then the enchantment will be Sharpness 1.
cured_discount | Range [a, b] | [-5, -20] | How much should the discount be modified by when the player has cured the Zombie Villager. Can be specified as a pair of numbers (low-tier trade discount and high-tier trade discount)
display_name | String |  | Name to be displayed while trading with this entity
hero_demand_discount | Integer | -4 | Used in legacy prices to determine how much should Demand be modified by when the player has the Hero of the Village mob effect
max_cured_discount | Range [a, b] | [-25, -63] | The max the discount can be modified by when the player has cured the Zombie Villager. Can be specified as a pair of numbers (low-tier trade discount and high-tier trade discount)
max_nearby_cured_discount | Integer | -200 | The max the discount can be modified by when the player has cured a nearby Zombie Villager
nearby_cured_discount | Integer | -25 | How much should the discount be modified by when the player has cured a nearby Zombie Villager
new_screen | Boolean | false | Used to determine if trading with entity opens the new trade screen
persist_trades | Boolean | false | Determines if the trades should persist when the mob transforms. This makes it so that the next time the mob is transformed to something with a trade_table or economy_trade_table, then it keeps their trades.
show_trade_screen | Boolean | true | Show an in game trade screen when interacting with the mob.
table | String |  | File path relative to the resource pack root for this entity's trades
use_legacy_price_formula | Boolean | false | Determines whether the legacy formula is used to determines the trade prices.

Back to top

##

minecraft:entity_sensor

A component that fires an event when a set of conditions are met by other entities within the defined range.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Minecraft Filter |  |  | event_filters
String |  |  | event
maximum_count | Integer | -1 | The maximum number of entities that must pass the filter conditions for the event to send.
minimum_count | Integer | 1 | The minimum number of entities that must pass the filter conditions for the event to send.
relative_range | Boolean | true | If true the sensor range is additive on top of the entity's size.
require_all | Boolean | false | If true requires all nearby entities to pass the filter conditions for the event to send.
sensor_range | Decimal | 10 | The maximum distance another entity can be from this and have the filters checked against it.

Back to top

##

minecraft:environment_sensor

Creates a trigger based on environment conditions.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
triggers | List |  | The list of triggers that fire when the environment conditions match the given filter criteria.

Back to top

##

minecraft:equip_item

The entity puts on the desired equipment.Back to top

##

minecraft:equippable

Defines an entity's behavior for having items equipped to it.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
slots | List |  | List of slots and the item that can be equipped.
Name | Type | Default Value | Description
--- | --- | --- | ---
accepted_items | List |  | The list of items that can go in this slot.
interact_text | String |  | Text to be displayed when the entity can be equipped with this item when playing with Touch-screen controls.
item | String |  | Identifier of the item that can be equipped for this slot.
on_equip | String |  | Event to trigger when this entity is equipped with this item.
on_unequip | String |  | Event to trigger when this item is removed from this entity.
slot | Integer | 0 | The slot number of this slot.

Back to top

##

minecraft:experience_reward

.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
on_bred | MoLang | 0 | A molang expression defining the amount of experience rewarded when this entity is successfully bred. An array of expressions adds each expression's result together for a final total.
on_death | MoLang | 0 | A molang expression defining the amount of experience rewarded when this entity dies. An array of expressions adds each expression's result together for a final total.

Back to top

##

minecraft:explode

Defines how the entity explodes.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
breaks_blocks | Boolean | true | If true, the explosion will destroy blocks in the explosion radius.
causes_fire | Boolean | false | If true, blocks in the explosion radius will be set on fire.
destroy_affected_by_griefing | Boolean | false | If true, whether the explosion breaks blocks is affected by the mob griefing game rule.
fire_affected_by_griefing | Boolean | false | If true, whether the explosion causes fire is affected by the mob griefing game rule.
fuse_length | Range [a, b] | [0.0, 0.0] | The range for the random amount of time the fuse will be lit before exploding, a negative value means the explosion will be immediate.
fuse_lit | Boolean | false | If true, the fuse is already lit when this component is added to the entity.
max_resistance | Decimal | 3.40282e+38 | A blocks explosion resistance will be capped at this value when an explosion occurs.
power | Decimal | 3 | The radius of the explosion in blocks and the amount of damage the explosion deals.

Back to top

##

minecraft:flocking

Allows entities to flock in groups in water or not.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
block_distance | Decimal | 0 | The amount of blocks away the entity will look at to push away from.
block_weight | Decimal | 0 | The weight of the push back away from blocks.
breach_influence | Decimal | 0 | The amount of push back given to a flocker that breaches out of the water.
cohesion_threshold | Decimal | 1 | The threshold in which to start applying cohesion.
cohesion_weight | Decimal | 1 | The weight applied for the cohesion steering of the flock.
goal_weight | Decimal | 0 | The weight on which to apply on the goal output.
high_flock_limit | Integer | 0 | Determines the high bound amount of entities that can be allowed in the flock.
in_water | Boolean | false | Tells the Flocking Component if the entity exists in water.
influence_radius | Decimal | 0 | The area around the entity that allows others to be added to the flock.
innner_cohesion_threshold | Decimal | 0 | The distance in which the flocker will stop applying cohesion.
loner_chance | Decimal | 0 | The percentage chance between 0-1 that a fish will spawn and not want to join flocks. Invalid values will be capped at the end points.
low_flock_limit | Integer | 0 | Determines the low bound amount of entities that can be allowed in the flock.
match_variants | Boolean | false | Tells the flockers that they can only match similar entities that also match the variant, mark variants, and color data of the other potential flockers.
max_height | Decimal | 0 | The max height allowable in the air or water.
min_height | Decimal | 0 | The min height allowable in the air or water.
separation_threshold | Decimal | 2 | The distance that is determined to be to close to another flocking and to start applying separation.
separation_weight | Decimal | 1 | The weight applied to the separation of the flock.
use_center_of_mass | Boolean | false | Tells the flockers that they will follow flocks based on the center of mass.

Back to top

##

minecraft:genetics

Defines the way a mob's genes and alleles are passed on to it's offspring, and how those traits manifest in the child. Compatible parent genes are crossed together, the alleles are handed down from the parents to the child, and any matching genetic variants fire off JSON events to modify the child and express the traits.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
genes | List |  | The list of genes that this entity has and will cross with a partner during breeding.
Name | Type | Default Value | Description
--- | --- | --- | ---
allele_range | Integer |  | The range of positive integer allele values for this gene. Spawned mobs will have a random number in this range assigned to them.
Name | Type | Default Value | Description
--- | --- | --- | ---
range_max | Integer | 0 | Upper bound of the allele values for this gene.
range_min | Integer | 0 | Lower bound of the allele values for this gene.
genetic_variants | List |  | The list of genetic variants for this gene. These check for particular allele combinations and fire events when all of them are satisfied.
Name | Type | Default Value | Description
--- | --- | --- | ---
birth_event | String |  | Event to run when this mob is created and matches the above allele conditions.
both_allele | Integer | -1 | If this value is non-negative, compare both the mob's main and hidden alleles with this value for a match with both. Can also be a range of integers.
either_allele | Integer | -1 | If this value is non-negative, compare both the mob's main and hidden alleles with this value for a match with either. Can also be a range of integers.
hidden_allele | Integer | -1 | If this value is non-negative, compare the mob's hidden allele with this value for a match. Can also be a range of integers.
main_allele | Integer | -1 | If this value is non-negative, compare the mob's main allele with this value for a match. Can also be a range of integers.
name | String |  | The name of the gene.
mutation_rate | Decimal | 0.03125 | Chance that an allele will be replaced with a random one instead of the parent's allele during birth.

Back to top

##

minecraft:giveable

Defines sets of items that can be used to trigger events when used on this entity. The item will also be taken and placed in the entity's inventory.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
cooldown | Decimal | 0.0 | An optional cool down in seconds to prevent spamming interactions.
items | List |  | The list of items that can be given to the entity to place in their inventory.
on_give | String |  | Event to fire when the correct item is given.

Back to top

##

minecraft:group_size

Keeps track of entity group size in the given radius.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | The list of conditions that must be satisfied for other entities to be counted towards group size.
radius | Decimal | 16 | Radius from center of entity.

Back to top

##

minecraft:grows_crop

Could increase crop growth when entity walks over crop

###

Name | Type | Default Value | Description
--- | --- | --- | ---
chance | Decimal | 0 | Value between 0-1. Chance of success per tick.
charges | Integer | 10 | Number of charges

Back to top

##

minecraft:healable

Defines the interactions with this entity for healing it.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | The filter group that defines the conditions for using this item to heal the entity.
force_use | Boolean | false | Determines if item can be used regardless of entity being at full health.
items | Array |  | The array of items that can be used to heal this entity.
Name | Type | Default Value | Description
--- | --- | --- | ---
heal_amount | Integer | 1 | The amount of health this entity gains when fed this item.
item | String |  | Item identifier that can be used to heal this entity.

Back to top

##

minecraft:home

Saves a home pos for when the the entity is spawned.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
home_block_list | List |  | Optional block list that the home position will be associated with. If any of the blocks no longer exist at that position, the home restriction is removed. Example syntax: minecraft:sand. Not supported: minecraft:sand:1
restriction_radius | Integer | -1 | The radius that the entity will be restricted to in relation to its home

Back to top

##

minecraft:hurt_on_condition

Defines a set of conditions under which an entity should take damage.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Array |  |  | damage_conditions ##### Minecraft Filter filtersBack to top ##### String cause ###### none Back to top ##### damage_per_tick The amount of damage done each tick that the conditions are met.Back to top

Back to top

##

minecraft:inside_block_notifier

Verifies whether the entity is inside any of the listed blocks.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
block_list | List |  | List of blocks, with certain block states, that we are monitoring to see if the entity is inside.

Back to top

##

minecraft:insomnia

Adds a timer since last rested to see if phantoms should spawn.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
days_until_insomnia | Decimal | 3.0 | Number of days the mob has to stay up until the insomnia effect begins.

Back to top

##

minecraft:instant_despawn

Despawns the Actor immediately.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
remove_child_entities | Boolean | false | If true, all entities linked to this entity in a child relationship (eg. leashed) will also be despawned.

Back to top

##

minecraft:interact

Defines interactions with this entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
add_items | JSON Object |  | Loot table with items to add to the player's inventory upon successful interaction.
Name | Type | Default Value | Description
--- | --- | --- | ---
table | String |  | File path, relative to the Behavior Pack's path, to the loot table file.
cooldown | Decimal | 0 | Time in seconds before this entity can be interacted with again.
cooldown_after_being_attacked | Decimal | 0 | Time in seconds before this entity can be interacted with after being attacked.
hurt_item | Integer | 0 | The amount of damage the item will take when used to interact with this entity. A value of 0 means the item won't lose durability.
interact_text | String |  | Text to show when the player is able to interact in this way with this entity when playing with Touch-screen controls.
on_interact | String |  | Event to fire when the interaction occurs.
particle_on_start | JSON Object |  | Particle effect that will be triggered at the start of the interaction. ##### particle_offset_towards_interactor Whether or not the particle will appear closer to who performed the interaction.Back to top ##### particle_type The type of particle that will be spawned.Back to top ##### particle_y_offset Will offset the particle this amount in the y direction.Back to top
play_sounds | String |  | List of sounds to play when the interaction occurs.
spawn_entities | String |  | List of entities to spawn when the interaction occurs.
spawn_items | JSON Object |  | Loot table with items to drop on the ground upon successful interaction.
Name | Type | Default Value | Description
--- | --- | --- | ---
table | String |  | File path, relative to the Behavior Pack's path, to the loot table file.
swing | Boolean | false | If true, the player will do the 'swing' animation when interacting with this entity.
transform_to_item | String |  | The item used will transform to this item upon successful interaction. Format: itemName:auxValue
use_item | Boolean | false | If true, the interaction will use an item.

Back to top

##

minecraft:inventory

Defines this entity's inventory properties.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
additional_slots_per_strength | Integer | 0 | Number of slots that this entity can gain per extra strength
can_be_siphoned_from | Boolean | false | If true, the contents of this inventory can be removed by a hopper
container_type | String | none | Type of container this entity has. Can be horse, minecart_chest, minecart_hopper, inventory, container or hopper
inventory_size | Integer | 5 | Number of slots the container has
private | Boolean | false | If true, the entity will not drop it's inventory on death
restrict_to_owner | Boolean | false | If true, the entity's inventory can only be accessed by its owner or itself

Back to top

##

minecraft:item_hopper

Determines that this entity is an item hopper.Back to top

##

minecraft:jump.dynamic

Defines a dynamic type jump control that will change jump properties based on the speed modifier of the mob.Back to top

##

minecraft:jump.static

Gives the entity the ability to jump.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
jump_power | Decimal | 0.42 | The initial vertical velocity for the jump

Back to top

##

minecraft:leashable

Allows this entity to be leashed and defines the conditions and events for this entity when is leashed.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
can_be_stolen | Boolean | false | If true, players can leash this entity even if it is already leashed to another mob.
hard_distance | Decimal | 6 | Distance in blocks at which the leash stiffens, restricting movement.
max_distance | Decimal | 10 | Distance in blocks at which the leash breaks.
on_leash | String |  | Event to call when this entity is leashed.
on_unleash | String |  | Event to call when this entity is unleashed.
soft_distance | Decimal | 4 | Distance in blocks at which the 'spring' effect starts acting to keep this entity close to the entity that leashed it.

Back to top

##

minecraft:lookat

Defines the behavior when another entity looks at this entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
allow_invulnerable | Boolean | false | If true, invulnerable entities (e.g. Players in creative mode) are considered valid targets.
filters | Minecraft Filter |  | Defines the entities that can trigger this component.
look_cooldown | Range [a, b] | [0, 0] | The range for the random amount of time during which the entity is 'cooling down' and won't get angered or look for a target.
look_event | String |  | The event identifier to run when the entities specified in filters look at this entity.
search_radius | Decimal | 10 | Maximum distance this entity will look for another entity looking at it.
set_target | Boolean | true | If true, this entity will set the attack target as the entity that looked at it.

Back to top

##

minecraft:managed_wandering_trader

This component is used to implement part of the Wandering Trader behaviorBack to top

##

minecraft:mob_effect

A component that applies a mob effect to entities that get within range.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
Minecraft Filter |  |  | entity_filter
effect_range | Decimal | 0.2 | How close a hostile entity must be to have the mob effect applied.
effect_time | Integer | 10 | How long the applied mob effect lasts in seconds.
mob_effect | String |  | The mob effect that is applied to entities that enter this entities effect range.

Back to top

##

minecraft:movement.amphibious

This move control allows the mob to swim in water and walk on land.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.basic

This component accents the movement of an entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.fly

This move control causes the mob to fly.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.generic

This move control allows a mob to fly, swim, climb, etc.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.hover

This move control causes the mob to hover.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.jump

Move control that causes the mob to jump as it moves with a specified delay between jumps.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
jump_delay | Range [a, b] | [0.0, 0.0] | Delay after landing when using the slime move control.
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.skip

This move control causes the mob to hop as it moves.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:movement.sway

This move control causes the mob to sway side to side giving the impression it is swimming.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_turn | Decimal | 30.0 | The maximum number in degrees the mob can turn per tick.

Back to top

##

minecraft:nameable

Allows this entity to be named (e.g. using a name tag).

###

Name | Type | Default Value | Description
--- | --- | --- | ---
allow_name_tag_renaming | Boolean | true | If true, this entity can be renamed with name tags
always_show | Boolean | false | If true, the name will always be shown
default_trigger | String |  | Trigger to run when the entity gets named
name_actions | JSON Object |  | Describes the special names for this entity and the events to call when the entity acquires those names
Name | Type | Default Value | Description
--- | --- | --- | ---
name_filter | String |  | List of special names that will cause the events defined in 'on_named' to fire
on_named | String |  | Event to be called when this entity acquires the name specified in 'name_filter'

Back to top

##

minecraft:navigation.climb

Allows this entity to generate paths that include vertical walls like the vanilla Spiders do.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.float

Allows this entity to generate paths by flying around the air like the regular Ghast.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.fly

Allows this entity to generate paths in the air like the vanilla Parrots do.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.generic

Allows this entity to generate paths by walking, swimming, flying and/or climbing around and jumping up and down a block.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.hover

Allows this entity to generate paths in the air like the vanilla Bees do. Keeps them from falling out of the skies and doing predictive movement.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.swim

Allows this entity to generate paths that include water.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:navigation.walk

Allows this entity to generate paths by walking around and jumping up and down a block like regular mobs.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
avoid_damage_blocks | Boolean | false | Tells the pathfinder to avoid blocks that cause damage when finding a path
avoid_portals | Boolean | false | Tells the pathfinder to avoid portals (like nether portals) when finding a path
avoid_sun | Boolean | false | Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths
avoid_water | Boolean | false | Tells the pathfinder to avoid water when creating a path
blocks_to_avoid | List |  | Tells the pathfinder which blocks to avoid when creating a path
can_breach | Boolean | false | Tells the pathfinder whether or not it can jump out of water (like a dolphin)
can_break_doors | Boolean | false | Tells the pathfinder that it can path through a closed door and break it
can_jump | Boolean | true | Tells the pathfinder whether or not it can jump up blocks
can_open_doors | Boolean | false | Tells the pathfinder that it can path through a closed door assuming the AI will open the door
can_open_iron_doors | Boolean | false | Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door
can_pass_doors | Boolean | true | Whether a path can be created through a door
can_path_from_air | Boolean | false | Tells the pathfinder that it can start pathing when in the air
can_path_over_lava | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the lava
can_path_over_water | Boolean | false | Tells the pathfinder whether or not it can travel on the surface of the water
can_sink | Boolean | true | Tells the pathfinder whether or not it will be pulled down by gravity while in water
can_swim | Boolean | false | Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path
can_walk | Boolean | true | Tells the pathfinder whether or not it can walk on the ground outside water
can_walk_in_lava | Boolean | false | Tells the pathfinder whether or not it can travel in lava like walking on ground
is_amphibious | Boolean | false | Tells the pathfinder whether or not it can walk on the ground underwater

Back to top

##

minecraft:out_of_control

Defines the entity's 'out of control' state.Back to top

##

minecraft:peek

Defines the entity's 'peek' behavior, defining the events that should be called during it.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
on_close | String |  | Event to call when the entity is done peeking.
on_open | String |  | Event to call when the entity starts peeking.
on_target_open | String |  | Event to call when the entity's target entity starts peeking.

Back to top

##

minecraft:persistent

Defines whether an entity should be persistent in the game world.Back to top

##

minecraft:physics

Defines physics properties of an actor, including if it is affected by gravity or if it collides with objects.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
has_collision | Boolean | true | Whether or not the object collides with things.
has_gravity | Boolean | true | Whether or not the entity is affected by gravity.

Back to top

##

minecraft:preferred_path

Specifies costing information for mobs that prefer to walk on preferred paths.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
default_block_cost | Decimal | 0 | Cost for non-preferred blocks
jump_cost | Integer | 0 | Added cost for jumping up a node
max_fall_blocks | Integer | 3 | Distance mob can fall without taking damage
preferred_path_blocks | List |  | A list of blocks with their associated cost

Back to top

##

minecraft:projectile

Allows the entity to be a thrown entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
angle_offset | Decimal | 0 | Determines the angle at which the projectile is thrown
catch_fire | Boolean | false | If true, the entity hit will be set on fire
crit_particle_on_hurt | Boolean | false | If true, the projectile will produce additional particles when a critical hit happens
destroy_on_hurt | Boolean | false | If true, this entity will be destroyed when hit
filter | String |  | Entity Definitions defined here can't be hurt by the projectile
fire_affected_by_griefing | Boolean | false | If true, whether the projectile causes fire is affected by the mob griefing game rule
gravity | Decimal | 0.05 | The gravity applied to this entity when thrown. The higher the value, the faster the entity falls
hit_sound | String |  | The sound that plays when the projectile hits something
homing | Boolean | false | If true, the projectile homes in to the nearest entity
inertia | Decimal | 0.99 | The fraction of the projectile's speed maintained every frame while traveling in air
is_dangerous | Boolean | false | If true, the projectile will be treated as dangerous to the players
knockback | Boolean | true | If true, the projectile will knock back the entity it hits
lightning | Boolean | false | If true, the entity hit will be struck by lightning
liquid_inertia | Decimal | 0.6 | The fraction of the projectile's speed maintained every frame while traveling in water
multiple_targets | Boolean | true | If true, the projectile can hit multiple entities per flight
offset | Vector [a, b, c] | [0, 0.5, 0] | The offset from the entity's anchor where the projectile will spawn
on_fire_time | Decimal | 5 | Time in seconds that the entity hit will be on fire for
particle | String | iconcrack | Particle to use upon collision
potion_effect | Integer | -1 | Defines the effect the arrow will apply to the entity it hits
power | Decimal | 1.3 | Determines the velocity of the projectile
reflect_on_hurt | Boolean | false | If true, this entity will be reflected back when hit
semi_random_diff_damage | Boolean | false | If true, damage will be randomized based on damage and speed
shoot_sound | String |  | The sound that plays when the projectile is shot
shoot_target | Boolean | true | If true, the projectile will be shot towards the target of the entity firing it
should_bounce | Boolean | false | If true, the projectile will bounce upon hit
splash_potion | Boolean | false | If true, the projectile will be treated like a splash potion
splash_range | Decimal | 4 | Radius in blocks of the 'splash' effect
uncertainty_base | Decimal | 0 | The base accuracy. Accuracy is determined by the formula uncertaintyBase - difficultyLevel * uncertaintyMultiplier
uncertainty_multiplier | Decimal | 0 | Determines how much difficulty affects accuracy. Accuracy is determined by the formula uncertaintyBase - difficultyLevel * uncertaintyMultiplier

Back to top

##

minecraft:pushable

Defines what can push an entity between other entities and pistons.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
is_pushable | Boolean | true | Whether the entity can be pushed by other entities.
is_pushable_by_piston | Boolean | true | Whether the entity can be pushed by pistons safely.

Back to top

##

minecraft:raid_trigger

Attempts to trigger a raid at the entity's location.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
triggered_event | String |  | Event to run we attempt to trigger a raid on the village.

Back to top

##

minecraft:rail_movement

Defines the entity's movement on the rails. An entity with this component is only allowed to move on the rail.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max_speed | Decimal | 0.4 | Maximum speed that this entity will move at when on the rail.

Back to top

##

minecraft:rail_sensor

###

Name | Type | Default Value | Description
--- | --- | --- | ---
check_block_types | Boolean | false | If true, on tick this entity will trigger its on_deactivate behavior
eject_on_activate | Boolean | true | If true, this entity will eject all of its riders when it passes over an activated rail
eject_on_deactivate | Boolean | false | If true, this entity will eject all of its riders when it passes over a deactivated rail
on_activate | String |  | Event to call when the rail is activated
on_deactivate | String |  | Event to call when the rail is deactivated
tick_command_block_on_activate | Boolean | true | If true, command blocks will start ticking when passing over an activated rail
tick_command_block_on_deactivate | Boolean | false | If false, command blocks will stop ticking when passing over a deactivated rail

Back to top

##

minecraft:ravager_blocked

Defines the ravager's response to their melee attack being blocked.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
knockback_strength | Decimal | 3.0 | The strength with which blocking entities should be knocked back
reaction_choices | List | [ ] | A list of weighted responses to the melee attack being blocked

Back to top

##

minecraft:rideable

Determines whether this entity can be ridden. Allows specifying the different seat positions and quantity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
controlling_seat | Integer | 0 | The seat that designates the driver of the entity
crouching_skip_interact | Boolean | true | If true, this entity can't be interacted with if the entity interacting with it is crouching
family_types | List |  | List of entities that can ride this entity
interact_text | String |  | The text to display when the player can interact with the entity when playing with Touch-screen controls
priority | Integer | 0 | This field may exist in old data but isn't used by minecraft:rideable.
pull_in_entities | Boolean | false | If true, this entity will pull in entities that are in the correct family_types into any available seats
rider_can_interact | Boolean | false | If true, this entity will be picked when looked at by the rider
seat_count | Integer | 1 | The number of entities that can ride this entity at the same time
seats | List |  | The list of positions and number of riders for each position for entities riding this entity
Name | Type | Default Value | Description
--- | --- | --- | ---
lock_rider_rotation | Decimal | 181 | Angle in degrees that a rider is allowed to rotate while riding this entity. Omit this property for no limit
max_rider_count | Integer | seat_count | Defines the maximum number of riders that can be riding this entity for this seat to be valid
min_rider_count | Integer | 0 | Defines the minimum number of riders that need to be riding this entity before this seat can be used
position | Vector [a, b, c] | [0, 0, 0] | Position of this seat relative to this entity's position
rotate_rider_by | MoLang | 0 | Offset to rotate riders by

Back to top

##

minecraft:scaffolding_climber

Allows the player to detect and manuever on the scaffolding block.Back to top

##

minecraft:scale_by_age

Defines the entity's size interpolation based on the entity's age.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
end_scale | Decimal | 1 | Ending scale of the entity when it's fully grown.
start_scale | Decimal | 1 | Initial scale of the newborn entity.

Back to top

##

minecraft:scheduler

Fires off scheduled mob events at time of day events.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
scheduled_events | List |  | The list of triggers that fire when the conditions match the given filter criteria. If any filter criteria overlap the first defined event will be picked.

Back to top

##

minecraft:shareables

Defines a list of items the mob wants to share or pick up. Each item must have the following parameters:

###

Name | Type | Default Value | Description
--- | --- | --- | ---
all_items | Boolean | false | A bucket for all other items in the game. Note this category is always least priority items.
all_items_max_amount | Integer | -1 | Maximum number of this item the mob will hold.
all_items_surplus_amount | Integer | -1 | Number of this item considered extra that the entity wants to share.
all_items_want_amount | Integer | -1 | Number of this item this entity wants to share.
items | List |  | List of items that the entity wants to share. ##### admire Mob will admire the item after picking up by looking at it. For this to happen the mob needs to have an Admire component and an Admire goal.Back to top ##### barter Mob will barter for the item after picking it up. For this to work the mob needs to have a Barter component and a Barter goal.Back to top ##### consume_item Determines whether the mob will consume the item or not.Back to top ##### craft_into Defines the item this entity wants to craft with the item defined above. Should be an item name.Back to top ##### item The name of the item. Aux value can be specified, for instance 'minecraft:skull:1'.Back to top ##### max_amount Maximum number of this item the mob will hold.Back to top ##### pickup_limit Maximum number of this item the mob will pick up during a single goal tick.Back to top ##### priority Prioritizes which items the entity prefers. 0 is the highest priority.Back to top ##### stored_in_inventory Determines whether the mob will try to put the item in its inventory if it has the inventory component and if it can't be equipped.Back to top ##### surplus_amount Number of this item considered extra that the entity wants to share.Back to top ##### want_amount Number of this item this entity wants to have.Back to top

Back to top

##

minecraft:shooter

Defines the entity's ranged attack behavior.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
aux_val | Integer | -1 | ID of the Potion effect to be applied on hit
def | String |  | Actor definition to use as projectile for the ranged attack. The actor definition must have the projectile component to be able to be shot as a projectile

Back to top

##

minecraft:sittable

Defines the entity's 'sit' state.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
sit_event | String |  | Event to run when the entity enters the 'sit' state
stand_event | String |  | Event to run when the entity exits the 'sit' state

Back to top

##

minecraft:spawn_entity

Adds a timer after which this entity will spawn another entity or item (similar to vanilla's chicken's egg-laying behavior).

###

Name | Type | Default Value | Description
--- | --- | --- | ---
filters | Minecraft Filter |  | If present, the specified entity will only spawn if the filter evaluates to true.
max_wait_time | Integer | 600 | Maximum amount of time to randomly wait in seconds before another entity is spawned.
min_wait_time | Integer | 300 | Minimum amount of time to randomly wait in seconds before another entity is spawned.
num_to_spawn | Integer | 1 | The number of entities of this type to spawn each time that this triggers.
should_leash | Boolean | false | If true, this the spawned entity will be leashed to the parent.
single_use | Boolean | false | If true, this component will only ever spawn the specified entity once.
spawn_entity | String |  | Identifier of the entity to spawn, leave empty to spawn the item defined above instead.
spawn_event | String | minecraft:entity_born | Event to call when the entity is spawned.
spawn_item | String | egg | Item identifier of the item to spawn.
spawn_method | String | born | Method to use to spawn the entity.
spawn_sound | String | plop | Identifier of the sound effect to play when the entity is spawned.

Back to top

##

minecraft:strength

Defines the entity's strength to carry items.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
max | Integer | 5 | The maximum strength of this entity
value | Integer | 1 | The initial value of the strength

Back to top

##

minecraft:tameable

Defines the rules for a mob to be tamed by the player.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
probability | Decimal | 1 | The chance of taming the entity with each item use between 0.0 and 1.0, where 1.0 is 100%
tame_event | String |  | Event to run when this entity becomes tamed
tame_items | List |  | The list of items that can be used to tame this entity

Back to top

##

minecraft:tamemount

Allows the Entity to be tamed by mounting it.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
attempt_temper_mod | Integer | 5 | The amount the entity's temper will increase when mounted.
autoRejectItems | JSON Object |  | The list of items that, if carried while interacting with the entity, will anger it.
Name | Type | Default Value | Description
--- | --- | --- | ---
item | String |  | Name of the item this entity dislikes and will cause it to get angry if used while untamed.
feed_items | JSON Object |  | The list of items that can be used to increase the entity's temper and speed up the taming process.
Name | Type | Default Value | Description
--- | --- | --- | ---
item | String |  | Name of the item this entity likes and can be used to increase this entity's temper.
temper_mod | Integer | 0 | The amount of temper this entity gains when fed this item.
feed_text | String |  | The text that shows in the feeding interact button.
max_temper | Integer | 100 | The maximum value for the entity's random starting temper.
min_temper | Integer | 0 | The minimum value for the entity's random starting temper.
ride_text | String |  | The text that shows in the riding interact button.
tame_event | String |  | Event that triggers when the entity becomes tamed.

Back to top

##

minecraft:target_nearby_sensor

Defines the entity's range within which it can see or sense other entities to target them.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
inside_range | Decimal | 1 | Maximum distance in blocks that another entity will be considered in the 'inside' range
must_see | Boolean | false | Whether the other entity needs to be visible to trigger 'inside' events
on_inside_range | String |  | Event to call when an entity gets in the inside range. Can specify 'event' for the name of the event and 'target' for the target of the event
on_outside_range | String |  | Event to call when an entity gets in the outside range. Can specify 'event' for the name of the event and 'target' for the target of the event
on_vision_lost_inside_range | String |  | Event to call when an entity exits visual range. Can specify 'event' for the name of the event and 'target' for the target of the event
outside_range | Decimal | 5 | Maximum distance in blocks that another entity will be considered in the 'outside' range

Back to top

##

minecraft:teleport

Defines an entity's teleporting behavior.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
dark_teleport_chance | Decimal | 0.01 | Modifies the chance that the entity will teleport if the entity is in darkness
light_teleport_chance | Decimal | 0.01 | Modifies the chance that the entity will teleport if the entity is in daylight
max_random_teleport_time | Decimal | 20 | Maximum amount of time in seconds between random teleports
min_random_teleport_time | Decimal | 0 | Minimum amount of time in seconds between random teleports
random_teleport_cube | Vector [a, b, c] | [32, 16, 32] | Entity will teleport to a random position within the area defined by this cube
random_teleports | Boolean | true | If true, the entity will teleport randomly
target_distance | Decimal | 16 | Maximum distance the entity will teleport when chasing a target
target_teleport_chance | Decimal | 1 | The chance that the entity will teleport between 0.0 and 1.0. 1.0 means 100%

Back to top

##

minecraft:tick_world

Defines if the entity ticks the world and the radius around it to tick.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
distance_to_players | Decimal | 128 | The distance at which the closest player has to be before this entity despawns. This option will be ignored if never_despawn is true. Min: 128 blocks.
never_despawn | Boolean | true | If true, this entity will not despawn even if players are far away. If false, distance_to_players will be used to determine when to despawn.
radius | Positive Integer | 2 | The area around the entity to tick. Default: 2. Allowed range: 2-6.

Back to top

##

minecraft:timer

Adds a timer after which an event will fire.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
looping | Boolean | true | If true, the timer will restart every time after it fires.
randomInterval | Boolean | true | If true, the amount of time on the timer will be random between the min and max values specified in time.
random_time_choices | List | [ ] | This is a list of objects, representing one value in seconds that can be picked before firing the event and an optional weight. Incompatible with time.
time | Range [a, b] | [0.0, 0.0] | Amount of time in seconds for the timer. Can be specified as a number or a pair of numbers (min and max). Incompatible with random_time_choices.
time_down_event | String |  | Event to fire when the time on the timer runs out.

Back to top

##

minecraft:trade_table

Defines this entity's ability to trade with players.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
convert_trades_economy | Boolean | false | Determines when the mob transforms, if the trades should be converted when the new mob has a economy_trade_table. When the trades are converted, the mob will generate a new trade list with their new trade table, but then it will try to convert any of the same trades over to have the same enchantments and user data. For example, if the original has a Emerald to Enchanted Iron Sword (Sharpness 1), and the new trade also has an Emerald for Enchanted Iron Sword, then the enchantment will be Sharpness 1.
display_name | String |  | Name to be displayed while trading with this entity.
new_screen | Boolean | false | Used to determine if trading with entity opens the new trade screen.
persist_trades | Boolean | false | Determines if the trades should persist when the mob transforms. This makes it so that the next time the mob is transformed to something with a trade_table or economy_trade_table, then it keeps their trades.
table | String |  | File path relative to the behavior pack root for this entity's trades.

Back to top

##

minecraft:trail

Causes an entity to leave a trail of blocks as it moves about the world.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
block_type | String | air | The type of block you wish to be spawned by the entity as it move about the world. Solid blocks may not be spawned at an offset of (0,0,0).
spawn_filter | Minecraft Filter |  | One or more conditions that must be met in order to cause the chosen block type to spawn.
spawn_offset | Vector [a, b, c] | [0, 0, 0] | The distance from the entities current position to spawn the block. Capped at up to 16 blocks away. The X value is left/right(-/+), the Z value is backward/forward(-/+), the Y value is below/above(-/+).

Back to top

##

minecraft:transformation

Defines an entity's transformation from the current definition into another

###

Name | Type | Default Value | Description
--- | --- | --- | ---
add | JSON Object |  | List of components to add to the entity after the transformation
Name | Type | Default Value | Description
--- | --- | --- | ---
component_groups | List |  | Names of component groups to add
begin_transform_sound | String |  | Sound to play when the transformation starts
delay | JSON Object |  | Defines the properties of the delay for the transformation
Name | Type | Default Value | Description
--- | --- | --- | ---
block_assist_chance | Decimal | 0 | Chance that the entity will look for nearby blocks that can speed up the transformation. Value must be between 0.0 and 1.0
block_chance | Decimal | 0 | Chance that, once a block is found, will help speed up the transformation
block_max | Integer | 0 | Maximum number of blocks the entity will look for to aid in the transformation. If not defined or set to 0, it will be set to the block radius
block_radius | Integer | 0 | Distance in Blocks that the entity will search for blocks that can help the transformation
block_types | List |  | List of blocks that can help the transformation of this entity
value | Decimal | 0 | Time in seconds before the entity transforms
drop_equipment | Boolean | false | Cause the entity to drop all equipment upon transformation
drop_inventory | Boolean | false | Cause the entity to drop all items in inventory upon transformation
into | String |  | Entity Definition that this entity will transform into
keep_level | Boolean | false | If this entity has trades and has leveled up, it should maintain that level after transformation.
keep_owner | Boolean | false | If this entity is owned by another entity, it should remain owned after transformation.
preserve_equipment | Boolean | false | Cause the entity to keep equipment after going through transformation
transformation_sound | String |  | Sound to play when the entity is done transforming

Back to top

##

minecraft:trusting

Defines the rules for a mob to trust players.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
probability | Decimal | 1.00 | The chance of the entity trusting with each item use between 0.0 and 1.0, where 1.0 is 100%.
trust_event | String |  | Event to run when this entity becomes trusting.
trust_items | List |  | The list of items that can be used to get the entity to trust players.

Back to top

##

minecraft:water_movement

###

Name | Type | Default Value | Description
--- | --- | --- | ---
drag_factor | Decimal | 0.8 | Drag factor to determine movement speed when in water.

Back to top

#

Entity Definition Properties

These properties are part of the Entity Definition as a whole and go before the Component or Component Groups. Make sure to place them before any Components, Component Groups or Events sections or they will be ignored.

##

##

format_version

Back to top

## Code Example

Example
{ "format_version": "1.8.0", "minecraft:entity": { "component_groups": { ... } ... } }

#

Entity Description Properties

This section defines properties required to identify and construct the entity

##

##

Entity Description Properties

###

###

identifier

####

Type | Default Value | Description
--- | --- | ---
String |  | The identifier for this entity

Back to top

##

Entity Description Properties

###

###

runtime_identifier

####

Type | Default Value | Description
--- | --- | ---
String |  | The identifier for the class to construct this entity with

Back to top

##

Entity Description Properties

###

###

is_spawnable

####

Type | Default Value | Description
--- | --- | ---
Boolean | false | Set to determine if this entity has a spawn egg.

Back to top

##

Entity Description Properties

###

###

is_summonable

####

Type | Default Value | Description
--- | --- | ---
Boolean | false | Flag to mark this entity as being summonable or not.

Back to top

##

animations

Sets the mapping of internal animation references to actual animations. This is a JSON Object of name/animation pairs

###

Name | Type | Default Value | Description
--- | --- | --- | ---
animation | String | none | Actual animation to use
name | String | none | Internal (to the entity) name of this animation entry

Back to top

##

scripts

Sets the mapping of internal animation controller references to actual animation controller. This is a JSON Array of name/animation-controller pairs

###

Name | Type | Default Value | Description
--- | --- | --- | ---
animation controller | String | none | Actual animation to use
name | String | none | Internal (to the entity) name of this animation entry

Back to top

#

ID Lists

##

##

AI Goals

###

JSON Name | ID
--- | ---
minecraft.behavior.hide | 233394190
minecraft.behavior.move_to_poi | 1721669938
minecraft.behavior.scared | 1812936510
minecraft.behavior.work | -1700601421
minecraft:behavior.admire_item | 1024844406
minecraft:behavior.barter | 536670686
minecraft:behavior.beg | 1346418048
minecraft:behavior.break_door | -1798237626
minecraft:behavior.breed | 51166360
minecraft:behavior.celebrate | 995178519
minecraft:behavior.defend_trusted_target | 2070046390
minecraft:behavior.door_interact | -286762735
minecraft:behavior.dragondeath | -1541162059
minecraft:behavior.dragonholdingpattern | 1066617362
minecraft:behavior.dragonlanding | -152352492
minecraft:behavior.dragonscanning | -1003941066
minecraft:behavior.dragontakeoff | -1912535317
minecraft:behavior.drink_potion | 277029334
minecraft:behavior.eat_carried_item | -184757575
minecraft:behavior.enderman_leave_block | -717580550
minecraft:behavior.enderman_take_block | -537294220
minecraft:behavior.explore_outskirts | -1955198366
minecraft:behavior.find_cover | -1231227755
minecraft:behavior.find_mount | 731306871
minecraft:behavior.find_underwater_treasure | -1602192311
minecraft:behavior.flee_sun | -617664229
minecraft:behavior.float | 1758503000
minecraft:behavior.float_wander | -1122048364
minecraft:behavior.follow_caravan | 9936402
minecraft:behavior.follow_mob | -1524701626
minecraft:behavior.follow_owner | 1213259599
minecraft:behavior.follow_parent | 2127040136
minecraft:behavior.follow_target_captain | -135480526
minecraft:behavior.go_home | -1579225026
minecraft:behavior.hold_ground | 1804286487
minecraft:behavior.hurt_by_target | -1710404297
minecraft:behavior.inspect_bookshelf | 40191182
minecraft:behavior.knockback_roar | -1304117826
minecraft:behavior.lay_down | -2074934675
minecraft:behavior.lay_egg | -1207740530
minecraft:behavior.leap_at_target | 256926956
minecraft:behavior.look_at_entity | -1735428573
minecraft:behavior.look_at_player | -1892159379
minecraft:behavior.look_at_target | -885375871
minecraft:behavior.look_at_trading_player | -2094605693
minecraft:behavior.make_love | -1551283431
minecraft:behavior.mingle | 385775952
minecraft:behavior.mount_pathing | 1112137677
minecraft:behavior.move_indoors | 2107078532
minecraft:behavior.move_through_village | 779377630
minecraft:behavior.move_to_land | -943551837
minecraft:behavior.move_to_lava | -945036492
minecraft:behavior.move_to_random_block | 395022171
minecraft:behavior.move_to_village | -805189394
minecraft:behavior.move_to_water | 1886139445
minecraft:behavior.move_towards_target | -166537884
minecraft:behavior.nap | 992184933
minecraft:behavior.nearest_attackable_target | 5824270165841165755
minecraft:behavior.nearest_prioritized_attackable_target | 335414683
minecraft:behavior.ocelot_sit_on_block | -1327999383
minecraft:behavior.offer_flower | -885387854
minecraft:behavior.open_door | -906200433
minecraft:behavior.owner_hurt_by_target | 530667419
minecraft:behavior.owner_hurt_target | 995655261
minecraft:behavior.panic | -169886247
minecraft:behavior.peek | 211304085
minecraft:behavior.pet_sleep_with_owner | 1379392240
minecraft:behavior.pickup_items | 644287189
minecraft:behavior.play | -505601580
minecraft:behavior.player_ride_tamed | 603869698
minecraft:behavior.raid_garden | -1145687602
minecraft:behavior.random_breach | 928528911
minecraft:behavior.random_fly | -446385505
minecraft:behavior.random_hover | -1797323808
minecraft:behavior.random_look_around | 1177762851
minecraft:behavior.random_look_around_and_sit | -1368070166
minecraft:behavior.random_sitting | 1722716662
minecraft:behavior.random_stroll | -1643504294
minecraft:behavior.random_swim | -1465281278
minecraft:behavior.receive_love | 1156694272
minecraft:behavior.restrict_open_door | 715583988
minecraft:behavior.restrict_sun | -382716017
minecraft:behavior.rise_to_liquid_level | -950950337
minecraft:behavior.roll | 817471653
minecraft:behavior.run_around_like_crazy | -1390363669
minecraft:behavior.send_event | -823429137
minecraft:behavior.share_items | 2045906118
minecraft:behavior.silverfish_merge_with_stone | 321908121
minecraft:behavior.silverfish_wake_up_friends | 484391748
minecraft:behavior.skeleton_horse_trap | 530952387
minecraft:behavior.sleep | -1811763
minecraft:behavior.slime_attack | -1315951081
minecraft:behavior.snacking | 875141064
minecraft:behavior.sneeze | 1528584076
minecraft:behavior.squid_dive | 1626998843
minecraft:behavior.squid_flee | 1304043261
minecraft:behavior.squid_idle | 1741234679
minecraft:behavior.squid_move_away_from_ground | 892387674
minecraft:behavior.squid_out_of_water | -1347598607
minecraft:behavior.stalk_and_pounce_on_target | -1248479202
minecraft:behavior.stay_while_sitting | 1346980478
minecraft:behavior.stomp_turtle_egg | 851839416
minecraft:behavior.stroll_towards_village | -1563831906
minecraft:behavior.summon_entity | -2005850647
minecraft:behavior.swell | -1473132493
minecraft:behavior.take_flower | 1218648257
minecraft:behavior.tempt | 422904556
minecraft:behavior.trade_interest | -574851053
minecraft:behavior.trade_with_player | -2048563493
minecraft:behavior.vex_copy_owner_target | -643459543
minecraft:behavior.vex_random_move | -1117822165
minecraft:behavior.wither_random_attack_pos_goal | -528895885
minecraft:behavior.wither_target_highest_damage | -1065562072

Back to top

##

Attributes

###

JSON Name | ID
--- | ---
minecraft:attack | 1651346034
minecraft:spell_effects | 523264365
minecraft:strength | 648564399

Back to top

##

Components

###

JSON Name | ID
--- | ---
| -2078137563
minecraft:addrider | -1014528905
minecraft:admire_item | -1838165406
minecraft:ageable | 1092934985
minecraft:angry | 725411499
minecraft:annotation.break_door | 2116838963
minecraft:annotation.open_door | 1004733768
minecraft:area_attack | 1169114880
minecraft:attack_cooldown | -1439360398
minecraft:barter | -1660828566
minecraft:block_sensor | 1944169706
minecraft:boostable | -8316315
minecraft:boss | -1309638025
minecraft:break_blocks | -944056304
minecraft:breathable | -707187232
minecraft:breedable | -1616430100
minecraft:bribeable | -2125526908
minecraft:buoyant | -467213736
minecraft:burns_in_daylight | 1256874605
minecraft:celebrate_hunt | -789611239
minecraft:combat_regeneration | -315365016
minecraft:conditional_bandwidth_optimization | 1333085468
minecraft:custom_hit_test | 2035968892
minecraft:damage_over_time | -656420526
minecraft:damage_sensor | -82616534
minecraft:despawn | 1674909940
minecraft:drying_out_timer | 2113510784
minecraft:economy_trade_table | 1705466896
minecraft:entity_sensor | -406052184
minecraft:environment_sensor | 687748970
minecraft:equip_item | -1774220620
minecraft:equippable | -1164142226
minecraft:experience_reward | -1992597900
minecraft:explode | -1683058581
minecraft:flocking | 1967597361
minecraft:genetics | -82484670
minecraft:giveable | 1739199795
minecraft:group_size | -1997375941
minecraft:grows_crop | 43636353
minecraft:healable | -54247424
minecraft:home | 610829097
minecraft:hurt_on_condition | 163715083
minecraft:inside_block_notifier | -377593253
minecraft:insomnia | -300455606
minecraft:instant_despawn | -634288138
minecraft:interact | -1996861528
minecraft:inventory | 1941951218
minecraft:item_hopper | -447601772
minecraft:jump.dynamic | 945664737
minecraft:jump.static | 1064987526
minecraft:leashable | 893445039
minecraft:lookat | -1329707008
minecraft:managed_wandering_trader | 846609640
minecraft:mob_effect | 490430596
minecraft:movement.amphibious | -500784850
minecraft:movement.basic | 3354475
minecraft:movement.fly | -1487316136
minecraft:movement.generic | -1363369868
minecraft:movement.hover | 1743805051
minecraft:movement.jump | 1256268727
minecraft:movement.skip | -1828832272
minecraft:movement.sway | 2126249079
minecraft:nameable | -595398763
minecraft:navigation.climb | -1075360945
minecraft:navigation.float | -842998036
minecraft:navigation.fly | -1997823129
minecraft:navigation.generic | 1768002583
minecraft:navigation.hover | -769247640
minecraft:navigation.swim | 1908076634
minecraft:navigation.walk | 1909033775
minecraft:npc | 1140005505
minecraft:out_of_control | -639930856
minecraft:peek | -863721039
minecraft:persistent | 1435858387
minecraft:physics | 1021552959
minecraft:preferred_path | 1431188951
minecraft:projectile | 1922456869
minecraft:pushable | -1784639134
minecraft:raid_trigger | 2093209329
minecraft:rail_movement | -78235634
minecraft:rail_sensor | 1273161273
minecraft:ravager_blocked | -1417579541
minecraft:rideable | 1656173828
minecraft:scaffolding_climber | 169799877
minecraft:scale_by_age | 64881972
minecraft:scheduler | -684492525
minecraft:shareables | 1301057082
minecraft:shooter | 184150118
minecraft:sittable | -1376274106
minecraft:spawn_entity | 1991964333
minecraft:tameable | 932870003
minecraft:tamemount | 1615660288
minecraft:target_nearby_sensor | 1309819882
minecraft:teleport | -1900891127
minecraft:tick_world | -381759296
minecraft:timer | 1862095863
minecraft:trade_table | 50480315
minecraft:trail | 1632590434
minecraft:transformation | -457894577
minecraft:trusting | 936499892
minecraft:water_movement | -128701925

Back to top

##

Entity Description Properties

###

JSON Name | ID
--- | ---
animations | 1232311658
scripts | -76244517

Back to top

##

Properties

###

JSON Name | ID
--- | ---
minecraft:ambient_sound_interval | -1314051310
minecraft:can_climb | -550459594
minecraft:can_fly | 985724318
minecraft:can_power_jump | -763124853
minecraft:collision_box | -1277663508
minecraft:color | 1069623177
minecraft:color2 | 1429635777
minecraft:default_look_angle | -815556357
minecraft:equipment | 714661022
minecraft:fire_immune | -1071767182
minecraft:floats_in_liquid | 179778474
minecraft:flying_speed | -570508595
minecraft:friction_modifier | -714364556
minecraft:ground_offset | -1816881803
minecraft:input_ground_controlled | -646415617
minecraft:is_baby | 1853172763
minecraft:is_charged | 125340337
minecraft:is_chested | -817599379
minecraft:is_dyeable | 1381448355
minecraft:is_hidden_when_invisible | -1553744
minecraft:is_ignited | 905710223
minecraft:is_illager_captain | 921912694
minecraft:is_saddled | 1037901616
minecraft:is_shaking | 523951884
minecraft:is_sheared | 1154836813
minecraft:is_stackable | 1184456737
minecraft:is_stunned | 1818977510
minecraft:is_tamed | 1646421078
minecraft:item_controllable | 1868311069
minecraft:loot | 1775814032
minecraft:mark_variant | 663621689
minecraft:push_through | -138030768
minecraft:scale | 77854436
minecraft:skin_id | 1838729593
minecraft:sound_volume | 937951776
minecraft:type_family | -255011285
minecraft:variant | -1789583977
minecraft:walk_animation_speed | 972393614
minecraft:wants_jockey | 1832515141

Back to top

##

Triggers

###

JSON Name | ID
--- | ---
minecraft:on_death | -49357854
minecraft:on_friendly_anger | -1009986313
minecraft:on_hurt | -1028603471
minecraft:on_hurt_by_player | -599009831
minecraft:on_ignite | -1911489054
minecraft:on_start_landing | -555648368
minecraft:on_start_takeoff | 426083399
minecraft:on_target_acquired | 1063277906
minecraft:on_target_escape | -1373130027
minecraft:on_wake_with_owner | -1543219003

Back to top

#

Properties

##

##

minecraft:ambient_sound_interval

Sets the entity's delay between playing its ambient sound.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event_name | String | ambient | Level sound event to be played as the ambient sound.
range | Decimal | 16.000000 | Maximum time in seconds to randomly add to the ambient sound delay time.
value | Decimal | 8.000000 | Minimum time in seconds before the entity plays its ambient sound again.

Back to top

##

minecraft:can_climb

Allows this entity to climb up ladders.Back to top

##

minecraft:can_fly

Marks the entity as being able to fly, the pathfinder won't be restricted to paths where a solid block is required underneath it.Back to top

##

minecraft:can_power_jump

Allows the entity to power jump like the horse does in vanilla.Back to top

##

minecraft:collision_box

Sets the width and height of the Entity's collision box.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
height | Decimal | 1.0 | Height of the collision box in blocks. A negative value will be assumed to be 0.
width | Decimal | 1.0 | Width and Depth of the collision box in blocks. A negative value will be assumed to be 0.

Back to top

##

minecraft:color

Defines the entity's color. Only works on vanilla entities that have predefined color values (sheep, llama, shulker).

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Integer | 0 | The Palette Color value of the entity.

Back to top

##

minecraft:color2

Defines the entity's second texture color. Only works on vanilla entities that have a second predefined color values (tropical fish).

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Integer | 0 | The second Palette Color value of the entity.

Back to top

##

minecraft:default_look_angle

Sets this entity's default head rotation angle.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 0.0f | Angle in degrees.

Back to top

##

minecraft:equipment

Sets the Equipment table to use for this Entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
slot_drop_chance | List |  | A list of slots with the chance to drop an equipped item from that slot.
table | String |  | The file path to the equipment table, relative to the behavior pack's root.

Back to top

##

minecraft:fire_immune

Sets that this entity doesn't take damage from fire.Back to top

##

minecraft:floats_in_liquid

Sets that this entity can float in liquid blocks.Back to top

##

minecraft:flying_speed

Speed in Blocks that this entity flies at.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 0.02 | Flying speed in blocks per tick.

Back to top

##

minecraft:friction_modifier

Defines how much friction affects this entity.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 1.0 | The higher the number, the more the friction affects this entity. A value of 1.0 means regular friction, while 2.0 means twice as much.

Back to top

##

minecraft:ground_offset

Sets the offset from the ground that the entity is actually at.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 0.0 | The value of the entity's offset from the terrain, in blocks.

Back to top

##

minecraft:input_ground_controlled

When configured as a rideable entity, the entity will be controlled using WASD controls.Back to top

##

minecraft:is_baby

Sets that this entity is a baby.Back to top

##

minecraft:is_charged

Sets that this entity is charged.Back to top

##

minecraft:is_chested

Sets that this entity is currently carrying a chest.Back to top

##

minecraft:is_dyeable

Allows dyes to be used on this entity to change its color.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
interact_text | String |  | The text that will display when interacting with this entity with a dye when playing with Touch-screen controls.

Back to top

##

minecraft:is_hidden_when_invisible

Sets that this entity can hide from hostile mobs while invisible.Back to top

##

minecraft:is_ignited

Sets that this entity is currently on fire.Back to top

##

minecraft:is_illager_captain

Sets that this entity is an illager captain.Back to top

##

minecraft:is_saddled

Sets that this entity is currently saddled.Back to top

##

minecraft:is_shaking

Sets that this entity is currently shaking.Back to top

##

minecraft:is_sheared

Sets that this entity is currently sheared.Back to top

##

minecraft:is_stackable

Sets that this entity can be stacked.Back to top

##

minecraft:is_stunned

Sets that this entity is currently stunned.Back to top

##

minecraft:is_tamed

Sets that this entity is currently tamed.Back to top

##

minecraft:item_controllable

Defines what items can be used to control this entity while ridden.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
control_items | List |  | List of items that can be used to control this entity.

Back to top

##

minecraft:loot

Sets the loot table for what items this entity drops upon death.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
table | String |  | The path to the loot table, relative to the Behavior Pack's root.

Back to top

##

minecraft:mark_variant

Additional variant value. Can be used to further differentiate variants.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Integer | 0 | The ID of the variant. By convention, 0 is the ID of the base entity.

Back to top

##

minecraft:push_through

Sets the distance through which the entity can push through.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 0.0 | The value of the entity's push-through, in blocks.

Back to top

##

minecraft:scale

Sets the entity's visual size.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 1.0 | The value of the scale. 1.0 means the entity will appear at the scale they are defined in their model. Higher numbers make the entity bigger.

Back to top

##

minecraft:skin_id

Skin ID value. Can be used to differentiate skins, such as base skins for villagers.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Integer | 0 | The ID of the skin. By convention, 0 is the ID of the base skin.

Back to top

##

minecraft:sound_volume

Sets the entity's base volume for sound effects.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 1.0 | The value of the volume the entity uses for sound effects.

Back to top

##

minecraft:type_family

Defines the families this entity belongs to.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
family | List |  | List of family names.

Back to top

##

minecraft:variant

Used to differentiate the component group of a variant of an entity from others. (e.g. ocelot, villager)

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Integer | 0 | The ID of the variant. By convention, 0 is the ID of the base entity.

Back to top

##

minecraft:walk_animation_speed

Sets the speed multiplier for this entity's walk animation speed.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
value | Decimal | 1.0 | The higher the number, the faster the animation for walking plays. A value of 1.0 means normal speed, while 2.0 means twice as fast.

Back to top

##

minecraft:wants_jockey

Sets that this entity wants to become a jockey.Back to top

#

Triggers

##

##

minecraft:on_death

Only usable by the Ender Dragon. Adds a trigger to call on this entity's death.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_friendly_anger

Adds a trigger that will run when a nearby entity of the same type as this entity becomes Angry.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_hurt

Adds a trigger to call when this entity takes damage.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_hurt_by_player

Adds a trigger to call when this entity is attacked by the player.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_ignite

Adds a trigger to call when this entity is set on fire.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_start_landing

Only usable by the Ender Dragon. Adds a trigger to call when this entity lands.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_start_takeoff

Only usable by the Ender Dragon. Adds a trigger to call when this entity starts flying.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_target_acquired

Adds a trigger to call when this entity finds a target.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_target_escape

Adds a trigger to call when this entity loses the target it currently has.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top

##

minecraft:on_wake_with_owner

Adds a trigger to call when this pet's owner awakes after sleeping with the pet.

###

Name | Type | Default Value | Description
--- | --- | --- | ---
event | String |  | The event to run when the conditions for this trigger are met.
filters | Minecraft Filter |  | The list of conditions for this trigger to execute.
target | String | self | The target of the event.

Back to top