Files
minecraft-bedrock-json-schemas/behavior/entities/entities.json
2021-11-16 13:42:54 +01:00

12197 lines
504 KiB
JSON
Generated

{
"$id": "blockception.minecraft.behavior.entities",
"examples": [
{
"format_version": "1.17.0",
"minecraft:entity": {
"description": { "identifier": "namespace:entity", "is_spawnable": true, "is_summonable": true },
"component_groups": {},
"components": {},
"events": {}
}
}
],
"type": "object",
"title": "Entity Behavior",
"description": "The minecraft entity behavior specification",
"required": ["format_version", "minecraft:entity"],
"additionalProperties": false,
"properties": { "format_version": { "$ref": "#/definitions/A" }, "minecraft:entity": { "$ref": "#/definitions/B" } },
"definitions": {
"A": {
"title": "Format Version",
"description": "A version that tells minecraft what type of data format can be expected when reading this file.",
"pattern": "^([1-9]+)\\.([0-9]+)\\.([0-9]+)$",
"type": "string",
"examples": ["1.17.40", "1.17.30", "1.17.0", "1.16.0", "1.15.0", "1.14.0", "1.13.0", "1.12.0", "1.10.0", "1.8.0"]
},
"C": {
"description": "A minecraft entity identifier",
"examples": ["namespace:entity_name"],
"pattern": "^[0-9a-zA-Z:_\\.\\-]+$",
"title": "Entity Identifier",
"type": "string"
},
"E": {
"additionalProperties": false,
"type": "object",
"title": "Add Rider",
"description": "Adds a rider to the entity. Requires `minecraft:rideable.`",
"required": ["entity_type"],
"properties": {
"entity_type": { "type": "string", "description": "The entity type that will be riding this entity", "title": "Entity Type" },
"spawn_event": {
"type": "string",
"description": "The spawn event that will be used when the riding entity is created",
"title": "Spawn Event"
}
},
"examples": [{ "entity_type": "minecraft:rabbit" }, { "entity_type": "minecraft:rabbit", "spawn_event": "self:example" }]
},
"G": { "description": "A minecraft item identifier", "pattern": "^[0-9a-zA-Z:_\\-\\.]+$", "title": "Item Identifier", "type": "string" },
"H": {
"title": "Event",
"description": "Minecraft behavior event",
"examples": [{ "event": "example:foo", "target": "self" }],
"oneOf": [
{ "type": "string", "pattern": "^[a-zA-Z0-9_\\-:]+$", "description": "The event to fire" },
{
"type": "object",
"properties": {
"event": { "type": "string", "pattern": "^[a-zA-Z0-9_\\-:]+$", "description": "The event to fire", "title": "Event" },
"target": {
"type": "string",
"description": "The target of the event",
"title": "Target",
"enum": ["baby", "block", "damager", "other", "parent", "player", "self", "target"]
}
}
}
]
},
"F": {
"type": "object",
"title": "Ageable",
"description": "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.",
"additionalProperties": false,
"properties": {
"drop_items": {
"description": "List of items that the entity drops when it grows up.",
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/G" } },
{ "type": "string", "$ref": "#/definitions/G" }
],
"title": "Drop Items"
},
"duration": {
"type": "number",
"default": 1200,
"description": "Amount of time before the entity grows up, -1 for always a baby.",
"title": "Duration"
},
"feed_items": {
"description": "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",
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/G" } },
{
"type": "array",
"items": { "type": "object", "properties": { "growth": { "type": "number" }, "item": { "$ref": "#/definitions/G" } } }
},
{ "type": "string", "$ref": "#/definitions/G" }
],
"title": "Feed Items"
},
"grow_up": { "$ref": "#/definitions/H", "description": "Event to run when this entity grows up.", "title": "Grow Up" },
"transform_to_item": {
"type": "string",
"title": "Transform To Item",
"description": "The feed item used will transform to this item upon successful interaction. Format: itemName:auxValue"
}
},
"examples": [{ "duration": 1200, "transform_to_item": "example" }]
},
"I": {
"additionalProperties": false,
"type": "object",
"title": "Ambient Sound Interval",
"description": "Sets the entity's delay between playing its ambient sound.",
"properties": {
"event_name": {
"type": "string",
"default": "ambient",
"description": "Level sound event to be played as the ambient sound.",
"title": "Event Name"
},
"range": {
"type": "number",
"default": 16,
"description": "Maximum time in seconds to randomly add to the ambient sound delay time.",
"title": "Range"
},
"value": {
"type": "number",
"default": 8,
"description": "Minimum time in seconds before the entity plays its ambient sound again",
"title": "Value"
}
},
"examples": [{ "event_name": "ambient", "range": 16, "value": 8 }]
},
"BA_filters_spec": {
"defaultSnippets": [
{ "label": "new test", "body": { "test": "$1", "value": "$2" } },
{
"label": "new all_of test",
"body": {
"all_of": [
{ "test": "$1", "value": "$2" },
{ "test": "$3", "value": "$4" }
]
}
},
{
"label": "new any_of test",
"body": {
"any_of": [
{ "test": "$1", "value": "$2" },
{ "test": "$3", "value": "$4" }
]
}
},
{
"label": "new none_of test",
"body": {
"none_of": [
{ "test": "$1", "value": "$2" },
{ "test": "$3", "value": "$4" }
]
}
}
],
"examples": [{ "all_of": [{}] }, { "any_of": [{}] }, { "none_of": [{}] }],
"oneOf": [
{
"propertyNames": { "enum": ["all_of", "any_of", "none_of"] },
"properties": {
"all_of": {
"title": "All Of",
"description": "All tests in an `all_of` group must pass in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
},
"any_of": {
"title": "Any Of",
"description": "One or more tests in an `any_of` group must pass in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
},
"none_of": {
"title": "None Of",
"description": "All tests in a `none_of` group must fail in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
}
}
},
{
"required": ["test"],
"properties": {
"all_of": {
"title": "All Of",
"description": "All tests in an `all_of` group must pass in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
},
"any_of": {
"title": "Any Of",
"description": "One or more tests in an `any_of` group must pass in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
},
"none_of": {
"title": "None Of",
"description": "All tests in a `none_of` group must fail in order for the group to pass.",
"$ref": "#/definitions/BA_groups_spec"
}
},
"allOf": [
{ "if": { "properties": { "test": { "const": "clock_time" } } }, "then": { "$ref": "#/definitions/BB" } },
{ "if": { "properties": { "test": { "const": "distance_to_nearest_player" } } }, "then": { "$ref": "#/definitions/BE" } },
{ "if": { "properties": { "test": { "const": "has_ability" } } }, "then": { "$ref": "#/definitions/BF" } },
{ "if": { "properties": { "test": { "const": "has_biome_tag" } } }, "then": { "$ref": "#/definitions/BG" } },
{ "if": { "properties": { "test": { "const": "has_component" } } }, "then": { "$ref": "#/definitions/BH" } },
{ "if": { "properties": { "test": { "const": "has_container_open" } } }, "then": { "$ref": "#/definitions/BI" } },
{ "if": { "properties": { "test": { "const": "has_damage" } } }, "then": { "$ref": "#/definitions/BJ" } },
{ "if": { "properties": { "test": { "const": "has_equipment" } } }, "then": { "$ref": "#/definitions/CB" } },
{ "if": { "properties": { "test": { "const": "has_mob_effect" } } }, "then": { "$ref": "#/definitions/CC" } },
{ "if": { "properties": { "test": { "const": "has_ranged_weapon" } } }, "then": { "$ref": "#/definitions/CD" } },
{ "if": { "properties": { "test": { "const": "has_tag" } } }, "then": { "$ref": "#/definitions/CE" } },
{ "if": { "properties": { "test": { "const": "has_target" } } }, "then": { "$ref": "#/definitions/CF" } },
{ "if": { "properties": { "test": { "const": "has_trade_supply" } } }, "then": { "$ref": "#/definitions/CG" } },
{ "if": { "properties": { "test": { "const": "hourly_clock_time" } } }, "then": { "$ref": "#/definitions/CH" } },
{ "if": { "properties": { "test": { "const": "in_block" } } }, "then": { "$ref": "#/definitions/CI" } },
{ "if": { "properties": { "test": { "const": "in_caravan" } } }, "then": { "$ref": "#/definitions/CJ" } },
{ "if": { "properties": { "test": { "const": "in_clouds" } } }, "then": { "$ref": "#/definitions/DA" } },
{ "if": { "properties": { "test": { "const": "in_lava" } } }, "then": { "$ref": "#/definitions/DB" } },
{ "if": { "properties": { "test": { "const": "in_nether" } } }, "then": { "$ref": "#/definitions/DC" } },
{ "if": { "properties": { "test": { "const": "in_water" } } }, "then": { "$ref": "#/definitions/DD" } },
{ "if": { "properties": { "test": { "const": "in_water_or_rain" } } }, "then": { "$ref": "#/definitions/DE" } },
{ "if": { "properties": { "test": { "const": "in_contact_with_water" } } }, "then": { "$ref": "#/definitions/DF" } },
{ "if": { "properties": { "test": { "const": "inactivity_timer" } } }, "then": { "$ref": "#/definitions/DG" } },
{ "if": { "properties": { "test": { "const": "is_altitude" } } }, "then": { "$ref": "#/definitions/DH" } },
{ "if": { "properties": { "test": { "const": "is_avoiding_mobs" } } }, "then": { "$ref": "#/definitions/DI" } },
{ "if": { "properties": { "test": { "const": "is_biome" } } }, "then": { "$ref": "#/definitions/DJ" } },
{ "if": { "properties": { "test": { "const": "is_block" } } }, "then": { "$ref": "#/definitions/EA" } },
{ "if": { "properties": { "test": { "const": "is_brightness" } } }, "then": { "$ref": "#/definitions/EB" } },
{ "if": { "properties": { "test": { "const": "is_climbing" } } }, "then": { "$ref": "#/definitions/EC" } },
{ "if": { "properties": { "test": { "const": "is_color" } } }, "then": { "$ref": "#/definitions/ED" } },
{ "if": { "properties": { "test": { "const": "is_daytime" } } }, "then": { "$ref": "#/definitions/EE" } },
{ "if": { "properties": { "test": { "const": "is_difficulty" } } }, "then": { "$ref": "#/definitions/EF" } },
{ "if": { "properties": { "test": { "const": "is_family" } } }, "then": { "$ref": "#/definitions/EG" } },
{ "if": { "properties": { "test": { "const": "is_game_rule" } } }, "then": { "$ref": "#/definitions/EH" } },
{ "if": { "properties": { "test": { "const": "is_humid" } } }, "then": { "$ref": "#/definitions/EI" } },
{ "if": { "properties": { "test": { "const": "is_immobile" } } }, "then": { "$ref": "#/definitions/EJ" } },
{ "if": { "properties": { "test": { "const": "is_in_village" } } }, "then": { "$ref": "#/definitions/FA" } },
{ "if": { "properties": { "test": { "const": "is_leashed" } } }, "then": { "$ref": "#/definitions/FB" } },
{ "if": { "properties": { "test": { "const": "is_leashed_to" } } }, "then": { "$ref": "#/definitions/FC" } },
{ "if": { "properties": { "test": { "const": "is_mark_variant" } } }, "then": { "$ref": "#/definitions/FD" } },
{ "if": { "properties": { "test": { "const": "is_moving" } } }, "then": { "$ref": "#/definitions/FE" } },
{ "if": { "properties": { "test": { "const": "is_owner" } } }, "then": { "$ref": "#/definitions/FF" } },
{ "if": { "properties": { "test": { "const": "is_persistent" } } }, "then": { "$ref": "#/definitions/FG" } },
{ "if": { "properties": { "test": { "const": "is_riding" } } }, "then": { "$ref": "#/definitions/FH" } },
{ "if": { "properties": { "test": { "const": "is_skin_id" } } }, "then": { "$ref": "#/definitions/FI" } },
{ "if": { "properties": { "test": { "const": "is_sleeping" } } }, "then": { "$ref": "#/definitions/FJ" } },
{ "if": { "properties": { "test": { "const": "is_sneaking" } } }, "then": { "$ref": "#/definitions/GA" } },
{ "if": { "properties": { "test": { "const": "is_snow_covered" } } }, "then": { "$ref": "#/definitions/GB" } },
{ "if": { "properties": { "test": { "const": "is_target" } } }, "then": { "$ref": "#/definitions/GC" } },
{ "if": { "properties": { "test": { "const": "is_temperature_type" } } }, "then": { "$ref": "#/definitions/GD" } },
{ "if": { "properties": { "test": { "const": "is_temperature_value" } } }, "then": { "$ref": "#/definitions/GE" } },
{ "if": { "properties": { "test": { "const": "is_underground" } } }, "then": { "$ref": "#/definitions/GF" } },
{ "if": { "properties": { "test": { "const": "is_underwater" } } }, "then": { "$ref": "#/definitions/GG" } },
{ "if": { "properties": { "test": { "const": "is_variant" } } }, "then": { "$ref": "#/definitions/GH" } },
{ "if": { "properties": { "test": { "const": "is_visible" } } }, "then": { "$ref": "#/definitions/GI" } },
{ "if": { "properties": { "test": { "const": "light_level" } } }, "then": { "$ref": "#/definitions/GJ" } },
{ "if": { "properties": { "test": { "const": "moon_intensity" } } }, "then": { "$ref": "#/definitions/HA" } },
{ "if": { "properties": { "test": { "const": "moon_phase" } } }, "then": { "$ref": "#/definitions/HB" } },
{ "if": { "properties": { "test": { "const": "on_ground" } } }, "then": { "$ref": "#/definitions/HC" } },
{ "if": { "properties": { "test": { "const": "on_ladder" } } }, "then": { "$ref": "#/definitions/HD" } },
{ "if": { "properties": { "test": { "const": "random_chance" } } }, "then": { "$ref": "#/definitions/HE" } },
{ "if": { "properties": { "test": { "const": "rider_count" } } }, "then": { "$ref": "#/definitions/HF" } },
{ "if": { "properties": { "test": { "const": "surface_mob" } } }, "then": { "$ref": "#/definitions/HG" } },
{ "if": { "properties": { "test": { "const": "trusts" } } }, "then": { "$ref": "#/definitions/HH" } },
{ "if": { "properties": { "test": { "const": "weather" } } }, "then": { "$ref": "#/definitions/HI" } },
{ "if": { "properties": { "test": { "const": "weather_at_position" } } }, "then": { "$ref": "#/definitions/HJ" } },
{ "not": { "properties": { "test": { "const": "is_weather" } }, "$comment": "DEPRECATED" } }
]
}
]
},
"BA_groups_spec": {
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/BA_groups_spec" } },
{ "type": "object", "$ref": "#/definitions/BA_filters_spec" }
]
},
"BC": {
"title": "Operator",
"type": "string",
"description": "The comparison to apply with `value`.",
"default": "equals",
"enum": ["!=", "<", "<=", "<>", "=", "==", ">", ">=", "equals", "not"]
},
"BD": {
"title": "Subject",
"type": "string",
"description": "The subject of this filter test.",
"default": "self",
"enum": ["block", "other", "parent", "player", "self", "target", "damager"]
},
"BB": {
"type": "object",
"title": "Clock Time",
"description": "Compares the current time with a float value in the range (0.0, 1.0).\n0.0= Noon\n0.25= Sunset\n0.5= Midnight\n0.75= Sunrise",
"required": ["value"],
"examples": [{ "test": "clock_time", "value": 0.25 }],
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Compares the current time with a float value in the range (0.0, 1.0).\n0.0= Noon\n0.25= Sunset\n0.5= Midnight\n0.75= Sunrise"
},
"operator": {
"$ref": "#/definitions/BC",
"description": "(Optional) The comparison to apply with `value`.",
"default": "equals",
"title": "Operator"
},
"subject": {
"$ref": "#/definitions/BD",
"description": "(Optional) The subject of this filter test.",
"default": "self",
"title": "Subject"
},
"value": {
"type": "number",
"minimum": 0,
"maximum": 24000,
"description": "(Required) A floating point value.",
"title": "Value",
"examples": [0, 0.025, 0.5, 0.75, 1]
}
}
},
"BE": {
"type": "object",
"title": "Distance To Nearest Player",
"description": "Compares the distance to the nearest Player with a float value.",
"required": ["value"],
"examples": [{ "test": "distance_to_nearest_player", "value": 5.7 }],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Compares the distance to the nearest Player with a float value." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "number", "description": "(Required) A floating point value.", "title": "Value" }
}
},
"BF": {
"type": "object",
"title": "Has Ability",
"description": "Returns true when the subject entity has the named ability.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity has the named ability." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"type": "string",
"description": "(Required) The Ability type to test",
"enum": ["flySpeed", "flying", "instabuild", "invulnerable", "lightning", "mayfly", "mute", "noclip", "walkSpeed", "worldbuilder"],
"title": "Value"
}
},
"examples": [{ "test": "has_ability", "value": "flySpeed" }]
},
"BG": {
"type": "object",
"title": "Has Biome Tag",
"description": "Tests whether the biome the subject is in has the specified tag.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Tests whether the biome the subject is in has the specified tag." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "(Required) The tag to look for", "type": "string", "title": "Value" }
},
"examples": [{ "test": "has_biome_tag", "value": "monster" }]
},
"BH": {
"type": "object",
"title": "Has Component",
"description": "Returns true when the subject entity contains the named component.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity contains the named component." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "string", "description": "(Required) The component name to look for", "title": "Value" }
},
"examples": [{ "test": "has_component", "value": "minecraft:explode" }]
},
"BI": {
"type": "object",
"title": "Has Container Open",
"description": "Returns true when the subject Player entity has opened a container.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "(Optional) true or false.", "title": "Value", "type": "boolean", "default": true }
},
"examples": [{ "test": "has_container_open", "value": true }]
},
"CA": {
"title": "Entity Damage Source",
"description": "The types of damage an entity can receive",
"type": "string",
"enum": [
"all",
"anvil",
"attack",
"block_explosion",
"charging",
"contact",
"drowning",
"entity_attack",
"entity_explosion",
"fall",
"falling_block",
"fatal",
"fire",
"fire_tick",
"fireworks",
"fly_into_wall",
"freezing",
"lava",
"lightning",
"magic",
"magma",
"none",
"override",
"piston",
"projectile",
"stalactite",
"stalagmite",
"starve",
"suffocation",
"suicide",
"temperature",
"thorns",
"void",
"wither"
]
},
"BJ": {
"type": "object",
"title": "Has Damage",
"description": "Returns true when the subject entity receives the named damage type. has_damage can also use subject and operator parameters but they are optional.",
"required": ["value"],
"examples": [{ "test": "has_damage", "value": "fatal" }],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity receives the named damage type." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "string", "description": "The Damage type to test", "$ref": "#/definitions/CA", "title": "Value" }
}
},
"CB": {
"type": "object",
"title": "Has Equipment",
"description": "Tests for the presence of a named item in the designated slot of the subject entity.",
"required": ["value"],
"properties": {
"test": {
"type": "string",
"const": "has_equipment",
"description": "Tests for the presence of a named item in the designated slot of the subject entity.",
"title": "Test"
},
"domain": {
"description": "The equipment location to test",
"default": "any",
"enum": ["any", "armor", "feet", "hand", "head", "leg", "torso"],
"title": "Domain"
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The item name to look for", "type": "string", "$ref": "#/definitions/G", "title": "Value" }
},
"examples": [{ "test": "example", "value": "example" }]
},
"CC": {
"type": "object",
"title": "Has Mob Effect",
"description": "Tests whether the Subject has the specified mob effect.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Tests whether the Subject has the specified mob effect." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "string", "description": "The specified mob effect", "title": "Value" }
},
"examples": [{ "test": "has_mob_effect", "value": "bad_omen" }]
},
"CD": {
"type": "object",
"title": "Has Ranged Weapon",
"description": "Returns true when the subject entity is holding a ranged weapon like a bow or crossbow.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "has_ranged_weapon", "value": true }]
},
"CE": {
"type": "object",
"title": "Has Tag",
"description": "Returns true if the subject entity has the tag provided.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true if the subject entity has the tag provided." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "string", "description": "The tag as a string", "pattern": "[a-zA-Z0-9_]+", "title": "Value" }
},
"examples": [{ "test": "has_tag", "value": "example" }]
},
"CF": {
"type": "object",
"title": "Has Target",
"description": "Returns true if the subject entity has a valid target.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "has_target", "value": true }]
},
"CG": {
"type": "object",
"title": "Has Trade Supply",
"description": "Tests whether the target has any trade supply left. Will return false if the target cannot be traded with.",
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Tests whether the target has any trade supply left. Will return false if the target cannot be traded with."
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "has_trade_supply", "value": true }]
},
"CH": {
"type": "object",
"title": "Hourly Clock Time",
"description": "Compares the current 24 hour time with an int value in the range[0, 24000]",
"required": ["value"],
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Compares the current 24 hour time with an int value in the range[0, 24000]",
"const": "hourly_clock_time"
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"type": "integer",
"description": "(Required) An integer value set between 0 and 24000",
"minimum": 0,
"maximum": 24000,
"title": "Value"
}
},
"examples": [{ "test": "hourly_clock_time", "value": 0 }]
},
"CI": {
"type": "object",
"title": "In Block",
"description": "Returns true when the subject entity is inside a specified Block type.",
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Returns true when the subject entity is inside a specified Block type."
},
"operator": {
"$ref": "#/definitions/BC",
"description": "(Optional) The comparison to apply with `value`.",
"default": "equals",
"title": "Operator"
},
"subject": {
"$ref": "#/definitions/BD",
"description": "(Optional) The subject of this filter test.",
"default": "self",
"title": "Subject"
},
"value": { "type": "string", "description": "(Optional) A string value.", "title": "Value" }
},
"examples": [{ "test": "in_block", "value": "minecraft:water" }]
},
"CJ": {
"type": "object",
"title": "In Caravan",
"description": "Returns true if the subject entity is in a caravan.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true if the subject entity is in a caravan." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_caravan", "value": true }]
},
"DA": {
"type": "object",
"title": "In Clouds",
"description": "Returns true when the subject entity is in the clouds.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity is in the clouds." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_clouds", "value": true }]
},
"DB": {
"type": "object",
"title": "In Lava",
"description": "Returns true when the subject entity is in lava.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity is in lava." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_lava", "value": true }]
},
"DC": {
"type": "object",
"title": "In Nether",
"description": "Returns true when the subject entity is in Nether.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "in_nether", "value": true }]
},
"DD": {
"type": "object",
"title": "In Water",
"description": "Returns true when the subject entity is in water.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity is in water." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_water", "value": true }]
},
"DE": {
"type": "object",
"title": "In Water Or Rain",
"description": "Returns true when the subject entity is in water or rain.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true when the subject entity is in water or rain." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_water_or_rain", "value": true }]
},
"DF": {
"type": "object",
"title": "In Contact With Water",
"description": "Returns true when the subject entity in contact with any water: water, rain, splash water bottle.",
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Returns true when the subject entity in contact with any water: water, rain, splash water bottle."
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "(Optional) true or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "in_contact_with_water", "value": true }]
},
"DG": {
"type": "object",
"title": "Inactivity Timer",
"description": "Tests if the specified duration in seconds of inactivity for despawning has been reached.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Family name to look for", "type": "integer", "title": "Value" }
},
"examples": [{ "test": "inactivity_timer", "value": 0 }]
},
"DH": {
"type": "object",
"title": "Is Altitude",
"description": "Tests the current altitude against a provided value. 0= bedrock elevation.",
"required": ["value"],
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Tests the current altitude against a provided value. 0= bedrock elevation."
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "integer", "description": "The altitude value to compare with", "minimum": 0, "title": "Value" }
},
"examples": [{ "test": "example", "value": 0 }]
},
"DI": {
"type": "object",
"title": "Is Avoiding Mobs",
"description": "Returns true if the subject entity is fleeing from other mobs.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true if the subject entity is fleeing from other mobs." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "example", "value": true }]
},
"DJ": {
"type": "object",
"title": "Is Biome",
"description": "Tests whether the Subject is currently in the named biome.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Tests whether the Subject is currently in the named biome." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"description": "The Biome type to test",
"type": "string",
"enum": [
"beach",
"desert",
"extreme_hills",
"flat",
"forest",
"ice",
"jungle",
"mesa",
"mushroom_island",
"ocean",
"plain",
"river",
"savanna",
"stone_beach",
"swamp",
"taiga",
"the_end",
"the_nethe"
],
"title": "Value"
}
},
"examples": [{ "test": "is_biome", "value": "beach" }]
},
"EA": {
"type": "object",
"title": "Is Block",
"description": "Returns true when the block has the given name.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Family name to look for", "type": "string", "title": "Value" }
},
"examples": [{ "test": "is_block", "subject": "block", "value": "minecraft:sweet_berry_bush" }]
},
"EB": {
"type": "object",
"title": "Is Brightness",
"description": "Tests the current brightness against a provided value in the range (0.0f, 1.0f).",
"required": ["value"],
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Tests the current brightness against a provided value in the range (0.0f, 1.0f)."
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The brightness value to compare with.", "type": "number", "minimum": 0.0, "maximum": 1.0, "title": "Value" }
},
"examples": [{ "test": "is_brightness", "value": 0.0 }]
},
"EC": {
"type": "object",
"title": "Is Climbing",
"description": "Returns true if the subject entity is climbing.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true if the subject entity is climbing." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_climbing", "value": true }]
},
"ED": {
"type": "object",
"title": "Is Color",
"description": "Returns true if the subject entity is the named color.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true if the subject entity is the named color." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"description": "The Palette Color to test",
"type": "string",
"enum": [
"black",
"blue",
"brown",
"cyan",
"gray",
"green",
"light_blue",
"light_green",
"magenta",
"orange",
"pink",
"purple",
"red",
"silver",
"white",
"yello"
],
"title": "Value"
}
},
"examples": [{ "test": "is_color", "value": "black" }]
},
"EE": {
"type": "object",
"title": "Is Daytime",
"description": "Returns true during the daylight hours.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Returns true during the daylight hours." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_daytime", "value": true }]
},
"EF": {
"type": "object",
"title": "Is Difficulty",
"description": "Tests the current difficulty level of the game.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Tests the current difficulty level of the game." },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"description": "The game's difficulty level to test",
"type": "string",
"enum": ["easy", "hard", "normal", "peaceful"],
"title": "Value"
}
},
"examples": [{ "test": "is_difficulty", "value": "easy" }]
},
"EG": {
"type": "object",
"title": "Is Family",
"description": "Returns true when the subject entity is a member of the named family.",
"required": ["value"],
"properties": {
"test": {
"type": "string",
"title": "Test Property",
"description": "Returns true when the subject entity is a member of the named family."
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Family name to look for", "type": "string", "title": "Value" }
},
"examples": [{ "test": "is_family", "value": "monster" }]
},
"EH": {
"type": "object",
"title": "Is Game Rule",
"description": "Tests whether a named game rule is active.",
"required": ["domain", "value"],
"properties": {
"domain": {
"description": "The Game Rule to test.",
"title": "Domain",
"examples": [
"commandBlockOutput",
"commandBlocksEnabled",
"doDaylightCycle",
"doEntityDrops",
"doFireTick",
"doImmediateRespawn",
"doInsomnia",
"doMobLoot",
"doMobSpawning",
"doTileDrops",
"doWeatherCycle",
"drowningDamage",
"fallDamage",
"fireDamage",
"freezeDamage",
"functionCommandLimit",
"keepInventory",
"maxCommandChainLength",
"mobGriefing",
"naturalRegeneration",
"pvp",
"randomTickSpeed",
"respawnblocksexplode",
"sendCommandFeedback",
"showCoordinates",
"showDeathMessages",
"showTags",
"spawnRadius",
"tntExplodes"
]
},
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "Tests whether a named game rule is active.", "default": true, "type": "boolean", "title": "Value" }
},
"examples": [{ "test": "is_game_rule", "domain": "domobspawning", "value": false }]
},
"EI": {
"type": "object",
"title": "Is Humid",
"description": "Tests whether the Subject is in an area with humidity",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "Tests whether the Subject is in an area with humidity" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_humid", "value": true }]
},
"EJ": {
"type": "object",
"title": "Is Immobile",
"description": "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.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_immobile", "value": true }]
},
"FA": {
"type": "object",
"title": "Is In Village",
"description": "Tests whether the Subject is inside the bounds of a village.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_in_village", "value": true }]
},
"FB": {
"type": "object",
"title": "Is Leashed",
"description": "Returns true if the subject entity is leashed.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_leashed", "value": true }]
},
"FC": {
"type": "object",
"title": "Is Leashed To",
"description": "Returns true if the subject entity leashed to the calling entity.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "is_leashed_to", "value": true }]
},
"FD": {
"type": "object",
"title": "Is Mark Variant",
"description": "Returns true if the subject entity is the mark variant number provided.",
"additionalProperties": false,
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "integer", "description": "The altitude value to compare with", "title": "Value" }
},
"examples": [{ "test": "is_mark_variant", "value": 0 }]
},
"FE": {
"type": "object",
"title": "Is Moving",
"description": "Returns true if the subject entity is moving.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_moving", "value": true }]
},
"FF": {
"type": "object",
"title": "Is Owner",
"description": "Returns true if the subject entity is the owner of the calling entity.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_owner", "value": true }]
},
"FG": {
"type": "object",
"title": "Is Persistent",
"description": "Tests if the subject's persistence matches the bool value passed in.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "is_persistent", "value": true }]
},
"FH": {
"type": "object",
"title": "Is Riding",
"description": "Returns true if the subject entity is riding on another entity.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_riding", "value": true }]
},
"FI": {
"type": "object",
"title": "Is Skin Id",
"description": "Returns true if the subject entity is the skin id number provided.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "integer", "description": "The altitude value to compare with", "title": "Value" }
},
"examples": [{ "test": "is_skin_id", "value": 0 }]
},
"FJ": {
"type": "object",
"title": "Is Sleeping",
"description": "Tests whether the Subject is sleeping.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "is_sleeping", "value": true }]
},
"GA": {
"type": "object",
"title": "Is Sneaking",
"description": "Returns true if the subject entity is sneaking.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_sneaking", "value": true }]
},
"GB": {
"type": "object",
"title": "Is Snow Covered",
"description": "Tests whether the Subject is in an area with snow cover",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_snow_covered", "value": true }]
},
"GC": {
"type": "object",
"title": "Is Target",
"description": "Returns true if the subject entity is the target of the calling entity.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_target", "value": true }]
},
"GD": {
"type": "object",
"title": "Is Target",
"description": "Tests whether the current temperature is a given type.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": {
"description": "The Biome temperature catagory to test",
"type": "string",
"enum": ["cold", "mild", "ocean", "warm"],
"title": "Value"
}
},
"examples": [{ "test": "is_temperature_type", "value": "cold" }]
},
"GE": {
"type": "object",
"title": "Is Temperature Value",
"description": "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.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Biome temperature value to compare with.", "type": "number", "minimum": 0.0, "maximum": 1.0, "title": "Value" }
},
"examples": [{ "test": "is_temperature_value", "value": 0.0 }]
},
"GF": {
"type": "object",
"title": "Is Underground",
"description": "Returns true when the subject entity is underground. An entity is considered underground if there are non-solid blocks above it.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_underground", "value": true }]
},
"GG": {
"type": "object",
"title": "Is Underwater",
"description": "Returns true when the subject entity is under water. An entity is considered underwater if it is completely submerged in water blocks.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_underwater", "value": true }]
},
"GH": {
"type": "object",
"title": "Is Variant",
"description": "Returns true if the subject entity is the variant number provided.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "integer", "description": "The altitude value to compare with", "title": "Value" }
},
"examples": [{ "test": "is_variant", "value": 0 }]
},
"GI": {
"type": "object",
"title": "Is Visible",
"description": "Returns true if the subject entity is visible.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "is_visible", "value": true }]
},
"GJ": {
"type": "object",
"title": "Light Level",
"description": "Tests is the mob is outside of the specified light level range (0, 16).",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "An integer value.", "type": "integer", "title": "Value", "minimum": 0, "maximum": 16 }
},
"examples": [{ "test": "light_level", "value": 0 }]
},
"HA": {
"type": "object",
"title": "Moon Intensity",
"description": "Compares the current moon intensity with a float value in the range (0.0, 1.0)",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "A floating point value.", "type": "number", "minimum": 0, "maximum": 1, "title": "Value" }
},
"examples": [{ "test": "moon_intensity", "value": 0.0 }]
},
"HB": {
"type": "object",
"title": "Moon Phase",
"description": "Compares the current moon phase with an integer value in the range (0, 7).",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "type": "integer", "description": "An integer value.", "minimum": 0, "maximum": 7, "title": "Value" }
},
"examples": [{ "test": "moon_phase", "value": 0 }]
},
"HC": {
"type": "object",
"title": "On Ground",
"description": "Returns true when the subject entity is on ground.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "on_ground", "value": true }]
},
"HD": {
"type": "object",
"title": "On Ladder",
"description": "Returns true when the subject entity is on a ladder.",
"properties": {
"test": { "type": "string", "title": "Test Property", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "title": "Value", "description": "True or false.", "type": "boolean", "default": true }
},
"examples": [{ "test": "on_ladder", "value": true }]
},
"HE": {
"type": "object",
"title": "Random Chance",
"description": "Returns true if the random chance rolls 0 out of a specified Maximum range.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "An integer value.", "type": "integer", "title": "Value" }
},
"examples": [{ "test": "random_chance", "value": 0 }]
},
"HF": {
"type": "object",
"title": "Rider Count",
"description": "Returns the number of riders on this entity.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "An integer value.", "type": "integer", "title": "Value" }
},
"examples": [{ "test": "rider_count", "value": 0 }]
},
"HG": {
"type": "object",
"title": "Surface Mob",
"description": "Tests if the subject is a surface mob.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "surface_mob", "value": true }]
},
"HH": {
"type": "object",
"title": "Trusts",
"description": "Returns true if the subject is trusted by entity.",
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "True or false.", "type": "boolean", "default": true, "title": "Value" }
},
"examples": [{ "test": "trusts", "value": true }]
},
"HI": {
"type": "object",
"title": "Weather",
"description": "Tests for the current weather state the entity is experiencing.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Family name to look for", "type": "string", "title": "Value", "examples": ["clear", "thunderstorm"] }
},
"examples": [{ "test": "weather", "value": "clear" }]
},
"HJ": {
"type": "object",
"title": "Weather At Position",
"description": "Tests the current weather, at the actor's position, against a provided weather value.",
"required": ["value"],
"properties": {
"test": { "type": "string", "title": "Test", "description": "The test property" },
"operator": { "$ref": "#/definitions/BC" },
"subject": { "$ref": "#/definitions/BD" },
"value": { "description": "The Family name to look for", "type": "string", "title": "Value", "examples": ["thunderstorm"] }
},
"examples": [{ "test": "weather_at_position", "value": "thunderstorm" }]
},
"BA": {
"title": "Filters",
"$ref": "#/definitions/BA_groups_spec",
"examples": [{ "test": "is_family", "value": "example" }, { "test": "has_tag", "value": "example" }, []]
},
"J": {
"type": "object",
"title": "Angry",
"description": "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.",
"additionalProperties": false,
"required": [],
"properties": {
"broadcast_anger": {
"type": "boolean",
"default": false,
"description": "If true, other entities of the same entity definition within the broadcastRange will also become angry",
"title": "Broadcast Anger"
},
"broadcast_filters": {
"$ref": "#/definitions/BA",
"description": "Conditions that make this entry in the list valid",
"title": "Broadcast Filters"
},
"filters": { "$ref": "#/definitions/BA", "description": "Filter out mob types that it should not attack while angry (other Piglins)" },
"broadcast_range": {
"type": "integer",
"default": 20,
"description": "Distance in blocks within which other entities of the same entity definition will become angry",
"title": "Broadcast Range"
},
"broadcast_targets": {
"type": "array",
"description": "A list of entity families to broadcast anger to",
"items": { "type": "string", "description": "An entity family", "pattern": "^.+$", "title": "Broadcast Targets" },
"title": "Broadcast Targets"
},
"calm_event": {
"$ref": "#/definitions/H",
"description": "Event to run after the number of seconds specified in duration expires (when the entity stops being `angry')",
"title": "Calm Event"
},
"angry_sound": { "type": "string", "default": "", "description": "The sound event to play when the mob is angry", "title": "Angry Sound" },
"broadcast_anger_on_attack": {
"type": "boolean",
"default": false,
"description": "If true, other entities of the same entity definition within the broadcastRange will also become angry whenever this mob attacks",
"title": "Broadcast Anger On Attack"
},
"broadcast_anger_on_being_attacked": {
"type": "boolean",
"default": false,
"description": "If true, other entities of the same entity definition within the broadcastRange will also become angry whenever this mob is attacked",
"title": "Broadcast Anger On Being Attacked"
},
"duration": {
"type": "integer",
"default": 25,
"description": "The amount of time in seconds that the entity will be angry",
"title": "Duration"
},
"duration_delta": {
"type": "integer",
"default": 0,
"description": "Variance in seconds added to the duration [-delta, delta]",
"title": "Duration Delta"
},
"sound_interval": {
"description": "The range of time in seconds to randomly wait before playing the sound again",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"default": [0, 0],
"items": [
{ "type": "integer", "minimum": 0, "description": "The minimum interval", "$comment": "UNDOCUMENTED", "title": "Minimum" },
{ "type": "integer", "minimum": 0, "description": "The maximum interval", "$comment": "UNDOCUMENTED", "title": "Maximum" }
]
},
{
"type": "object",
"additionalProperties": false,
"properties": {
"range_min": { "type": "number", "description": "The minimum interval", "$comment": "UNDOCUMENTED", "title": "Range Minimum" },
"range_max": { "type": "number", "description": "The maximum interval", "$comment": "UNDOCUMENTED", "title": "Range Maximum" }
}
}
]
}
},
"examples": [
{
"broadcast_anger": false,
"broadcast_range": 20,
"broadcast_targets": [],
"angry_sound": "",
"broadcast_anger_on_attack": false,
"broadcast_anger_on_being_attacked": false,
"duration": 25,
"duration_delta": 0
}
]
},
"IA": {
"additionalProperties": false,
"description": "Allows the actor to break doors assuming that that flags set up for the component to use in navigation",
"type": "object",
"title": "Annotation.break Door",
"required": [],
"$comment": "Caution No longe rin use",
"properties": {
"break_time": {
"type": "number",
"default": 12,
"description": "The time in seconds required to break through doors.",
"title": "Break Time"
},
"min_difficulty": {
"type": "string",
"default": "hard",
"description": "The minimum difficulty that the world must be on for this entity to break doors.",
"title": "Minimum Difficulty"
}
},
"examples": [{ "break_time": 12, "min_difficulty": "hard" }]
},
"IB": {
"additionalProperties": false,
"description": "Allows the actor to open doors assuming that that flags set up for the component to use in navigation",
"type": "object",
"title": "Annotation.open Door",
"required": [],
"properties": {}
},
"ID": {
"title": "Range [A, B]",
"description": "A described range",
"examples": [1, 2, 3, [0.0, 1.0]],
"items": [
{ "type": "number", "title": "A", "description": "The first value of the range" },
{ "type": "number", "title": "B", "description": "The second value of the range" }
]
},
"IC": {
"type": "object",
"additionalProperties": false,
"title": "Attack",
"description": "Defines an entity's melee attack and any additional effects on it.",
"required": ["damage"],
"properties": {
"damage": {
"title": "Damage",
"$ref": "#/definitions/ID",
"description": "Range of the random amount of damage the melee attack deals. A negative value can heal the entity instead of hurting it."
},
"effect_name": {
"type": "string",
"description": "Identifier of the status ailment to apply to an entity attacked by this entity's melee attack.",
"examples": ["wither", "hunger"],
"title": "Effect Name"
},
"effect_duration": {
"type": "number",
"default": 1,
"description": "Duration in seconds of the status ailment applied to the damaged entity.",
"title": "Effect Duration"
}
},
"examples": [{ "damage": 1 }, { "damage": 1, "effect_name": "example", "effect_duration": 1 }]
},
"IE": {
"type": "object",
"title": "Attack Damage",
"additionalProperties": false,
"required": ["value"],
"properties": { "value": { "type": "number", "description": "UNDOCUMENTED: value", "title": "Value" } },
"description": "UNDOCUMENTED",
"examples": [{ "value": 0.0 }]
},
"IF": {
"additionalProperties": false,
"type": "object",
"title": "Balloonable",
"required": [],
"properties": { "mass": { "type": "number", "description": "UNDOCUMENTED: mass", "title": "Mass" } },
"description": "UNDOCUMENTED",
"examples": [{ "mass": 0.0 }]
},
"IG": {
"type": "object",
"title": "Block Climber",
"additionalProperties": false,
"description": "Allows the player to detect and maneuver on the scaffolding block.",
"properties": {}
},
"IH": {
"type": "object",
"title": "Boss",
"additionalProperties": false,
"description": "The current state of the boss for updating the boss HUD",
"required": [],
"properties": {
"hud_range": {
"type": "integer",
"default": 55,
"description": "The Maximum distance from the boss at which the boss's health bar is present on the players screen.",
"title": "Hud Range"
},
"name": { "type": "string", "default": "", "description": "The name that will be displayed above the boss's health bar.", "title": "Name" },
"should_darken_sky": {
"type": "boolean",
"default": false,
"description": "Whether the sky should darken in the presence of the boss.",
"title": "Should Darken Sky"
}
},
"examples": [{ "hud_range": 55, "name": "", "should_darken_sky": false }]
},
"II": {
"type": "object",
"title": "Boostable",
"additionalProperties": false,
"description": "Defines the conditions and behavior of a rideable entity's boost",
"properties": {
"duration": { "type": "number", "default": 3, "description": "Time in seconds for the boost.", "title": "Duration" },
"speed_multiplier": {
"type": "number",
"default": 1,
"description": "Factor by which the entity's normal speed increases. E.g. 2.0 means go twice as fast.",
"title": "Speed Multiplier"
},
"boost_items": {
"type": "array",
"description": "List of items that can be used to boost while riding this entity",
"title": "Boost Items",
"items": {
"type": "object",
"additionalProperties": false,
"description": "List of items that can be used to boost while riding this entity.",
"properties": {
"damage": {
"type": "integer",
"default": 1,
"description": "This is the damage that the item will take each time it is used.",
"title": "Damage"
},
"item": { "type": "string", "default": "", "description": "Name of the item that can be used to boost.", "title": "Item" },
"replace_item": {
"type": "string",
"default": "",
"description": "The item used to boost will become this item once it is used up.",
"title": "Replace Item"
}
}
}
}
},
"examples": [{ "duration": 3, "speed_multiplier": 1, "boost_items": [] }]
},
"JA": { "type": "string", "title": "Block Name", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"IJ": {
"type": "object",
"title": "Break Blocks",
"additionalProperties": false,
"description": "Specifies the blocks that this entity can break as it moves around.",
"required": [],
"properties": {
"breakable_blocks": {
"type": "array",
"title": "Breakable Blocks",
"description": "A list of the blocks that can be broken as this entity moves around",
"items": { "$ref": "#/definitions/JA" }
}
},
"examples": [{ "breakable_blocks": [] }]
},
"JC": {
"description": "A minecraft block identifier",
"examples": ["namespace:block"],
"pattern": "^[0-9a-zA-Z:_\\.\\-]+$",
"title": "Block Identifier",
"type": "string"
},
"JB": {
"type": "object",
"title": "Breathable",
"additionalProperties": false,
"description": "Defines what blocks this entity can breathe in and gives them the ability to suffocate.",
"required": [],
"properties": {
"total_supply": {
"type": "integer",
"default": 15,
"description": "Time in seconds the entity can hold its breath",
"title": "Total Supply"
},
"suffocate_time": {
"type": "integer",
"default": -20,
"description": "Time in seconds between suffocation damage",
"title": "Suffocate Time"
},
"inhale_time": { "type": "number", "default": 0, "description": "Time in seconds to recover breath to maximum", "title": "Inhale Time" },
"breathes_air": { "type": "boolean", "default": true, "description": "If true, this entity can breathe in air", "title": "Breathes Air" },
"breathes_water": {
"type": "boolean",
"default": false,
"description": "If true, this entity can breathe in water",
"title": "Breathes Water"
},
"breathes_lava": { "type": "boolean", "default": false, "description": "If true, this entity can breathe in lava", "title": "Breathes Lava" },
"breathes_solids": {
"type": "boolean",
"default": false,
"description": "If true, this entity can breathe in solid blocks",
"title": "Breathes Solids"
},
"generates_bubbles": {
"type": "boolean",
"default": true,
"description": "If true, this entity will have visible bubbles while in water",
"title": "Generates Bubbles"
},
"breathe_blocks": {
"type": "array",
"description": "List of blocks this entity can breathe in, in addition to the above",
"items": { "$ref": "#/definitions/JC" },
"title": "Breathe Blocks"
},
"non_breathe_blocks": {
"type": "array",
"description": "List of blocks this entity can't breathe in, in addition to the above",
"items": { "$ref": "#/definitions/JC" },
"title": "Non Breathes Blocks"
}
},
"examples": [
{
"total_supply": 15,
"suffocate_time": -20,
"inhale_time": 0,
"breathes_air": true,
"breathes_water": false,
"breathes_lava": false,
"breathes_solids": false,
"generates_bubbles": true,
"breathe_blocks": [],
"non_breathe_blocks": []
}
]
},
"JD_breeds_with_spec": {
"type": "object",
"description": "An entity definitions that this entity can breed with.",
"additionalItems": false,
"properties": {
"baby_type": { "type": "string", "description": "The entity definition of this entity's babies.", "title": "Baby Type" },
"breed_event": { "$ref": "#/definitions/H", "description": "Event to run when this entity breeds.", "title": "Breed Event" },
"mate_type": { "type": "string", "description": "The entity definition of this entity's mate.", "title": "Mate Type" }
}
},
"JD_enviroment_requirements": {
"type": "object",
"description": "A nearby block requirements to get the entity into the `love` state.",
"properties": {
"blocks": {
"description": "The block types required nearby for the entity to breed.",
"title": "Blocks",
"oneOf": [
{
"type": "array",
"items": {
"description": "A block type required nearby for the entity to breed.",
"type": "string",
"$ref": "#/definitions/JA",
"title": "Blocks"
}
},
{
"description": "A block type required nearby for the entity to breed.",
"type": "string",
"$ref": "#/definitions/JA",
"title": "Blocks"
}
]
},
"count": { "type": "number", "description": "The number of the required block types nearby for the entity to breed.", "title": "Count" },
"radius": {
"type": "number",
"description": "How many blocks radius from the mob's center to search in for the required blocks. Bounded between 0 and 16.",
"minimum": 0,
"title": "Radius"
}
},
"title": "Environment Requirements"
},
"JD": {
"type": "object",
"title": "Breedable",
"additionalProperties": false,
"description": "Defines the way an entity can get into the `love` state.",
"properties": {
"allow_sitting": {
"description": "If true, entities can breed while sitting.",
"type": "boolean",
"default": false,
"title": "Allow Sitting"
},
"blend_attributes": {
"description": "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.",
"type": "boolean",
"default": true,
"title": "Blend Attributes"
},
"breed_cooldown": {
"description": "Time in seconds before the Entity can breed again.",
"type": "number",
"default": 60.0,
"title": "Breed Cooldown"
},
"breed_items": {
"description": "The list of items that can be used to get the entity into the `love` state",
"title": "Breed Items",
"oneOf": [
{
"type": "array",
"items": {
"type": "string",
"description": "An item that can be used to get the entity into the `love` state",
"$ref": "#/definitions/G",
"title": "Breed Item"
}
},
{ "type": "string", "$ref": "#/definitions/G" }
]
},
"breeds_with": {
"description": "The list of entity definitions that this entity can breed with.",
"title": "Breeds With",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/JD_breeds_with_spec" },
{ "uniqueItems": true, "type": "array", "items": { "type": "object", "$ref": "#/definitions/JD_breeds_with_spec" } }
]
},
"deny_parents_variant": {
"type": "object",
"description": "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.",
"additionalProperties": false,
"properties": {
"chance": { "type": "number", "default": 0, "description": "The percentage chance of denying the parents` variant.", "title": "Chance" },
"max_variant": {
"type": "integer",
"default": 0,
"description": "The inclusive maximum of the variant range.",
"title": "Maximum Variant"
},
"min_variant": {
"type": "integer",
"default": 0,
"description": "The inclusive minimum of the variant range.",
"title": "Minimum Variant"
}
},
"title": "Deny Parents Variant"
},
"environment_requirements": {
"description": "The list of nearby block requirements to get the entity into the `love` state.",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/JD_enviroment_requirements" },
{ "type": "array", "items": { "$ref": "#/definitions/JD_enviroment_requirements" } }
],
"title": "Environment Requirements"
},
"extra_baby_chance": {
"type": "number",
"default": 0.0,
"description": "Chance that up to 16 babies will spawn between 0.0 and 1.0, where 1.0 is 100%.",
"minimum": 0.0,
"maximum": 1.0,
"title": "Extra Baby Chance"
},
"love_filters": { "$ref": "#/definitions/BA", "description": "The filters to run when attempting to fall in love.", "title": "Love Filters" },
"mutation_factor": {
"type": "object",
"description": "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.",
"additionalProperties": false,
"properties": {
"color": {
"type": "number",
"default": 0,
"minimum": 0.0,
"maximum": 1.0,
"description": "The percentage chance of a mutation on the entity's color.",
"title": "Color"
},
"extra_variant": {
"type": "number",
"default": 0,
"minimum": 0.0,
"maximum": 1.0,
"description": "The percentage chance of a mutation on the entity's extra variant type.",
"title": "Extra Variant"
},
"variant": {
"type": "number",
"default": 0,
"minimum": 0.0,
"maximum": 1.0,
"description": "The percentage chance of a mutation on the entity's variant type.",
"title": "Variant"
}
},
"title": "Mutation Factor"
},
"causes_pregnancy": {
"type": "boolean",
"default": false,
"description": "If true, the entity will become pregnant instead of spawning a baby.",
"title": "Causes Pregnancy"
},
"inherit_tamed": {
"type": "boolean",
"default": true,
"description": "If true, the babies will be automatically tamed if its parents are",
"title": "Inherit Tamed"
},
"require_full_health": {
"type": "boolean",
"default": false,
"description": "If true, the entity needs to be at full health before it can breed.",
"title": "Require Full Health"
},
"require_tame": {
"type": "boolean",
"default": true,
"description": "If true, the entities need to be tamed first before they can breed.",
"title": "Require Tame"
},
"transform_to_item": {
"type": "string",
"title": "Transform To Item",
"description": "The feed item used will transform to this item upon successful interaction. Format: itemName:auxValue"
}
},
"examples": [
{
"allow_sitting": false,
"blend_attributes": true,
"breed_cooldown": 60.0,
"deny_parents_variant": {},
"extra_baby_chance": 0.0,
"mutation_factor": {},
"causes_pregnancy": false,
"inherit_tamed": true,
"require_full_health": false,
"require_tame": true,
"transform_to_item": "example"
}
]
},
"JE": {
"type": "object",
"title": "Bribeable",
"additionalProperties": false,
"description": "Specifies if/how a mob burns in daylight.",
"required": [],
"properties": {
"bribe_cooldown": {
"type": "number",
"default": 2,
"description": "Time in seconds before the Entity can be bribed again",
"title": "Bribe Cooldown"
},
"bribe_items": {
"type": "array",
"description": "The list of items that can be used to bribe the entity",
"items": { "description": "An item that can be used to bribe the entity", "$ref": "#/definitions/G", "title": "Bribe Items" },
"title": "Bribe Items"
}
},
"examples": [{ "bribe_cooldown": 2, "bribe_items": [] }]
},
"JF": {
"title": "Burns In Daylight",
"additionalProperties": false,
"description": "Specifies if/how a mob burns in daylight.",
"required": [],
"properties": {},
"oneOf": [{ "type": "boolean" }, { "type": "object" }]
},
"JG": {
"type": "object",
"title": "Can Climb",
"additionalProperties": false,
"description": "Allows this entity to climb up ladders.",
"required": [],
"properties": {}
},
"JH": {
"type": "object",
"title": "Can Fly",
"additionalProperties": false,
"description": "Marks the entity as being able to fly, the pathfinder won't be restricted to paths where a solid block is required underneath it.",
"required": [],
"properties": {
"value": {
"type": "boolean",
"default": true,
"description": "Marks the entity as being able to fly, the pathfinder won't be restricted to paths where a solid block is required underneath it.",
"title": "Value"
}
},
"examples": [{ "value": true }]
},
"JI": {
"type": "object",
"title": "Can Power Jump",
"additionalProperties": false,
"description": "Allows the entity to power jump like the horse does in vanilla.",
"required": [],
"properties": {}
},
"JJ": {
"type": "object",
"title": "Collision Box",
"additionalProperties": false,
"description": "Sets the width and height of the Entity's collision box.",
"required": [],
"properties": {
"height": {
"type": "number",
"default": 1,
"description": "Height of the collision box in blocks. A negative value will be assumed to be 0",
"title": "Height"
},
"width": {
"type": "number",
"default": 1,
"description": "Width and Depth of the collision box in blocks. A negative value will be assumed to be 0",
"title": "Width"
}
},
"examples": [{ "height": 1, "width": 1 }]
},
"BAA": {
"type": "object",
"title": "Color",
"additionalProperties": false,
"description": "Defines the entity's color. Only works on vanilla entities that have predefined color values (sheep, llama, shulker).",
"required": [],
"properties": { "value": { "type": "integer", "default": 0, "description": "The Palette Color value of the entity", "title": "Value" } },
"examples": [{ "value": 0 }]
},
"BAB": {
"type": "object",
"title": "Color.0",
"additionalProperties": false,
"description": "Defines the entity's second texture color. Only works on vanilla entities that have a second predefined color values (tropical fish).",
"required": [],
"properties": { "value": { "type": "integer", "default": 0, "description": "The second Palette Color value of the entity", "title": "Value" } },
"examples": [{ "value": 0 }]
},
"BAC": {
"type": "object",
"title": "Combat Regeneration",
"description": "Gives Regeneration I and removes Mining Fatigue from the mob that kills the Actor`s attack target.",
"additionalProperties": false,
"properties": {
"apply_to_family": {
"type": "boolean",
"default": false,
"description": "Determines if the mob will grant mobs of the same type combat buffs if they kill the target.",
"title": "Apply To Family"
},
"apply_to_self": {
"type": "boolean",
"default": false,
"description": "Determines if the mob will grant itself the combat buffs if it kills the target.",
"title": "Apply To Self"
},
"regeneration_duration": {
"type": "integer",
"default": 5,
"description": "The duration in seconds of Regeneration I added to the mob.",
"title": "Regeneration Duration"
}
},
"examples": [{ "apply_to_family": false, "apply_to_self": false, "regeneration_duration": 5 }]
},
"BAD": {
"type": "object",
"title": "Drying Out Timer",
"description": "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`",
"additionalProperties": false,
"properties": {
"dried_out_event": {
"$ref": "#/definitions/H",
"description": "Event to fire when the drying out time runs out.",
"title": "Dried Out Event"
},
"recover_after_dried_out_event": {
"$ref": "#/definitions/H",
"description": "Event to fire when entity was already dried out but received increase in water supply.",
"title": "Recover After Dried Out Event"
},
"stopped_drying_out_event": {
"$ref": "#/definitions/H",
"description": "Event to fire when entity stopped drying out, for example got into water or under rain.",
"title": "Stopped Drying Out Event"
},
"total_time": { "type": "number", "default": 0, "description": "Amount of time in seconds to dry out fully.", "title": "Total Time" },
"water_bottle_refill_time": {
"type": "number",
"default": 0,
"description": "Optional amount of additional time in seconds given by using splash water bottle on entity.",
"title": "Water Bottle Refill Time"
}
},
"examples": [{ "total_time": 0, "water_bottle_refill_time": 0 }]
},
"BAE": {
"additionalProperties": false,
"type": "object",
"title": "Conditional Bandwidth Optimization",
"description": "Defines the Conditional Spatial Update Bandwidth Optimizations of this entity.",
"properties": {
"conditional_values": {
"title": "Conditional Values",
"description": "The object containing the conditional bandwidth optimization values.",
"type": "array",
"items": {
"title": "Conditional Value",
"description": "The object containing the conditional bandwidth optimization values.",
"additionalProperties": false,
"type": "object",
"properties": {
"max_dropped_ticks": {
"title": "Maximum Dropped Ticks",
"description": "In relation to the optimization value, determines the maximum ticks spatial update packets can be not sent.",
"type": "integer"
},
"max_optimized_distance": {
"title": "Maximum Optimized Distance",
"description": "The maximum distance considered during bandwidth optimizations. Any value below the Maximum is interpolated to find optimization, and any value greater than or equal to this Maximum results in Maximum optimization.",
"type": "number"
},
"use_motion_prediction_hints": {
"title": "Use Motion Prediction Hints",
"description": "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.",
"type": "boolean"
},
"conditional_values": {
"title": "Conditional Values",
"description": "Conditions that must be met for these optimization values to be used.",
"type": "array",
"items": { "$ref": "#/definitions/BA" }
}
}
}
},
"default_values": {
"title": "Default Values",
"description": "The object containing the default bandwidth optimization values.",
"type": "object",
"additionalProperties": false,
"properties": {
"max_dropped_ticks": {
"title": "Maximum Dropped Ticks",
"description": "In relation to the optimization value, determines the maximum ticks spatial update packets can be not sent.",
"type": "integer"
},
"max_optimized_distance": {
"title": "Maximum Optimized Distance",
"description": "The maximum distance considered during bandwidth optimizations. Any value below the Maximum is interpolated to find optimization, and any value greater than or equal to this Maximum results in Maximum optimization.",
"type": "number"
},
"use_motion_prediction_hints": {
"title": "Use Motion Prediction Hints",
"description": "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.",
"type": "boolean"
}
}
}
},
"examples": [{ "conditional_values": [], "default_values": {} }]
},
"BAF": {
"type": "object",
"title": "Custom Hit Test",
"description": "List of hitboxes for melee and ranged hits against the entity.",
"additionalProperties": false,
"properties": {
"hitboxes": {
"type": "array",
"title": "Hitboxes",
"description": "Defines a hitbox size and pivot to test against.",
"items": {
"type": "object",
"title": "Hitbox",
"description": "Defines a hitbox size and pivot to test against.",
"additionalProperties": false,
"properties": {
"width": {
"type": "number",
"title": "Width",
"description": "Height of the hitbox in blocks. A negative value will be assumed to be 0."
},
"height": {
"type": "number",
"title": "Height",
"description": "Width and Depth of the hitbox in blocks. A negative value will be assumed to be 0."
},
"pivot": {
"type": "array",
"title": "Pivot",
"description": "The offset from the entity's anchor where the hitbox will spawn",
"items": [
{ "type": "number", "title": "X" },
{ "type": "number", "title": "Y" },
{ "type": "number", "title": "Z" }
]
}
}
}
}
},
"examples": [{ "hitboxes": [{ "width": 1, "height": 1, "pivot": [0, 1, 0] }] }]
},
"BAG": {
"type": "object",
"title": "Damage Over Time",
"additionalProperties": false,
"description": "Applies defined amount of damage to the entity at specified intervals.",
"required": [],
"properties": {
"damage_per_hurt": { "type": "integer", "default": 1, "description": "Amount of damage caused each hurt.", "title": "Damage Per Hurt" },
"time_between_hurt": { "type": "number", "default": 0, "description": "Time in seconds between damage.", "title": "Time Between Hurt" }
},
"examples": [{ "damage_per_hurt": 1, "time_between_hurt": 0 }]
},
"BAH_trigger": {
"properties": {
"cause": {
"type": "string",
"default": "none",
"description": "Type of damage that triggers the events.",
"title": "Cause",
"$ref": "#/definitions/CA"
},
"damage_multiplier": {
"type": "number",
"default": 1,
"description": "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.",
"title": "Damage Multiplier"
},
"deals_damage": {
"type": "boolean",
"default": true,
"description": "If true, the damage dealt to the entity will take away health from it, set to false to make the entity ignore that damage.",
"title": "Deals Damage"
},
"on_damage": {
"type": "object",
"description": "Specifies filters for entity definitions and events.",
"title": "On Damage",
"$ref": "#/definitions/BAI"
},
"on_damage_sound_event": {
"type": "string",
"description": "Defines what sound to play, if any, when the on_damage filters are met.",
"title": "On Damage Sound Event"
}
}
},
"BAI": {
"title": "Trigger",
"description": "Trigger to fire",
"examples": [{ "filters": [], "target": "self", "event": "to:foo" }],
"oneOf": [
{ "type": "string" },
{
"type": "object",
"additionalProperties": false,
"properties": {
"event": { "type": "string", "description": "The event to run when the conditions for this trigger are met.", "title": "Event" },
"filters": { "$ref": "#/definitions/BA", "description": "The list of conditions for this trigger to execute." },
"target": { "$ref": "#/definitions/BD", "description": "The target of the event.", "title": "Target" }
}
}
]
},
"BAH": {
"title": "Damage Sensor",
"description": "Defines what events to call when this entity is damaged by specific entities or items.",
"type": "object",
"additionalProperties": false,
"examples": [
{ "triggers": [{ "cause": "all", "deals_damage": false }] },
{ "triggers": [{ "on_damage": { "filters": { "test": "has_damage", "subject": "self", "value": "fatal" } }, "deals_damage": false }] }
],
"properties": {
"triggers": {
"title": "Triggers",
"description": "The list of triggers that fire when the environment conditions match the given filter criteria.",
"examples": [[{ "cause": "all", "deals_damage": false }]],
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/BAH_trigger" } },
{ "type": "object", "$ref": "#/definitions/BAH_trigger" }
]
}
}
},
"BAJ": {
"type": "object",
"title": "Default Look Angle",
"additionalProperties": false,
"description": "Sets this entity's default head rotation angle.",
"required": [],
"properties": { "value": { "type": "number", "default": 0.0, "description": "Angle in degrees", "title": "Value" } },
"examples": [{ "value": 0.0 }]
},
"BBA": {
"type": "object",
"title": "Despawn",
"description": "Despawns the Actor when the despawn rules or optional filters evaluate to true.",
"additionalProperties": false,
"properties": {
"despawn_from_chance": {
"type": "boolean",
"default": true,
"description": "Determines if `min_range_random_chance` is used in the standard despawn rules",
"title": "Despawn From Chance"
},
"despawn_from_distance": {
"type": "object",
"additionalProperties": false,
"description": "Defines the minimum and maximum distance for despawn to occur.",
"title": "Despawn From Distance",
"properties": {
"max_distance": {
"type": "integer",
"default": 128,
"description": "Maximum distance for standard despawn rules to instantly despawn the mob.",
"title": "Maximum Distance"
},
"min_distance": {
"type": "integer",
"default": 32,
"description": "Minimum distance for standard despawn rules to try to despawn the mob.",
"title": "Minimum Distance"
}
}
},
"despawn_from_inactivity": {
"type": "boolean",
"default": true,
"description": "Determines if the `min_range_inactivity_timer` is used in the standard despawn rules.",
"title": "Despawn From Inactivity"
},
"despawn_from_simulation_edge": {
"type": "boolean",
"default": true,
"description": "Determines if the mob is instantly despawned at the edge of simulation distance in the standard despawn rules.",
"title": "Despawn From Simulation Edge"
},
"filters": {
"$ref": "#/definitions/BA",
"description": "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": {
"type": "integer",
"default": 30,
"description": "The amount of time in seconds that the mob must be inactive.",
"title": "Minimum Range Inactivity Timer"
},
"min_range_random_chance": {
"type": "integer",
"default": 800,
"description": "A random chance between 1 and the given value.",
"title": "Minimum Range Random Chance"
},
"remove_child_entities": {
"type": "boolean",
"default": false,
"description": "If true, all entities linked to this entity in a child relationship (eg. leashed) will also be despawned.",
"title": "Remove Child Entities"
}
},
"examples": [
{
"despawn_from_chance": true,
"despawn_from_distance": {},
"despawn_from_inactivity": true,
"despawn_from_simulation_edge": true,
"min_range_inactivity_timer": 30,
"min_range_random_chance": 800,
"remove_child_entities": false
}
]
},
"BBB": {
"type": "object",
"title": "Dweller",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"dwelling_type": { "type": "string", "title": "Dwelling Type", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"dweller_role": { "type": "string", "title": "Dwelling Role", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"update_interval_base": { "type": "integer", "title": "Update Interval Base", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"update_interval_variant": {
"type": "integer",
"title": "Update Interval Variant",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"preferred_profession": { "type": "string", "title": "Preferred Profession", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"can_find_poi": { "type": "boolean", "title": "Can Find Poi", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"can_migrate": { "type": "boolean", "title": "Can Migrate", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"first_founding_reward": { "type": "integer", "title": "First Founding Reward", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"dwelling_type": "example",
"dweller_role": "example",
"update_interval_base": 0,
"update_interval_variant": 0,
"preferred_profession": "example",
"can_find_poi": true,
"can_migrate": true,
"first_founding_reward": 0
}
]
},
"BBC": {
"type": "object",
"title": "Economy Trade Table",
"additionalProperties": false,
"description": "Defines this entity's ability to trade with players.",
"required": [],
"properties": {
"convert_trades_economy": {
"type": "boolean",
"default": false,
"description": "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.",
"title": "Convert Trades Economy"
},
"cured_discount": {
"type": "array",
"default": [-5, -20],
"description": "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)",
"title": "Cured Discount",
"items": [
{ "type": "integer", "title": "A", "description": "Minimum" },
{ "type": "integer", "title": "B", "description": "Maximum" }
]
},
"display_name": {
"type": "string",
"default": "",
"description": "Name to be displayed while trading with this entity",
"title": "Display Name"
},
"hero_demand_discount": {
"type": "integer",
"default": -4,
"description": "Used in legacy prices to determine how much should Demand be modified by when the player has the Hero of the Village mob effect",
"title": "Hero Demand Discount"
},
"max_cured_discount": {
"type": "array",
"default": [-25, -63],
"description": "The Maximum 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)",
"title": "Maximum Cured Discount",
"items": [
{ "type": "integer", "title": "A", "description": "Minimum" },
{ "type": "integer", "title": "B", "description": "Maximum" }
]
},
"max_nearby_cured_discount": {
"type": "integer",
"default": -200,
"description": "The Maximum the discount can be modified by when the player has cured a nearby Zombie Villager",
"title": "Maximum Nearby Cured Discount"
},
"nearby_cured_discount": {
"type": "integer",
"default": -25,
"description": "How much should the discount be modified by when the player has cured a nearby Zombie Villager",
"title": "Nearby Cured Discount"
},
"new_screen": {
"type": "boolean",
"default": false,
"description": "Used to determine if trading with entity opens the new trade screen",
"title": "New Screen"
},
"persist_trades": {
"type": "boolean",
"default": false,
"description": "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.",
"title": "Persist Trades"
},
"show_trade_screen": {
"type": "boolean",
"default": true,
"description": "Show an in game trade screen when interacting with the mob.",
"title": "Show Trade Screen"
},
"table": {
"type": "string",
"default": "",
"description": "File path relative to the resource pack root for this entity's trades",
"title": "Table"
},
"use_legacy_price_formula": {
"type": "boolean",
"default": false,
"description": "Determines whether the legacy formula is used to determines the trade prices.",
"title": "Use Legacy Price Formula"
}
},
"examples": [
{
"convert_trades_economy": false,
"cured_discount": [],
"display_name": "",
"hero_demand_discount": -4,
"max_cured_discount": [],
"max_nearby_cured_discount": -200,
"nearby_cured_discount": -25,
"new_screen": false,
"persist_trades": false,
"show_trade_screen": true,
"table": "",
"use_legacy_price_formula": false
}
]
},
"BBD_trigger": { "$ref": "#/definitions/BAI" },
"BBD": {
"title": "Environment Sensor",
"description": "Creates a trigger based on environment conditions.",
"type": "object",
"additionalProperties": false,
"examples": [{ "triggers": [{ "event": "self:example", "target": "self", "filters": { "test": "has_tag", "value": "example" } }] }],
"properties": {
"triggers": {
"description": "The list of triggers that fire when the environment conditions match the given filter criteria.",
"title": "Triggers",
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/BBD_trigger" } },
{ "type": "object", "$ref": "#/definitions/BBD_trigger" }
]
}
}
},
"BBF": {
"description": "A minecraft loot_table identifier",
"examples": ["loot_tables/"],
"pattern": "^loot_tables/.*\\.json$",
"title": "Loot Table Identifier",
"type": "string"
},
"BBE": {
"type": "object",
"title": "Equipment",
"description": "Sets the equipment table to use for the entity.",
"additionalProperties": false,
"properties": {
"slot_drop_chance": {
"type": "array",
"description": "A list of slots with the chance to drop an equipped item from that slot",
"title": "Slot Drop Chance",
"items": {
"additionalProperties": false,
"title": "Slot Drop Chance",
"description": "A slots with the chance to drop an equipped item from that slot.",
"type": "object",
"properties": {
"drop_chance": { "type": "number", "title": "Drop Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"slot": { "type": "string", "title": "Slot", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
}
}
},
"table": {
"title": "Table",
"description": "The file path to the equipment table, relative to the behavior pack's root.",
"$ref": "#/definitions/BBF"
}
},
"examples": [{ "slot_drop_chance": [] }]
},
"BBG": {
"type": "object",
"title": "Equippable",
"additionalProperties": false,
"description": "Defines an entity's behavior for having items equipped to it.",
"properties": {
"slots": {
"description": "List of slots and the item that can be equipped",
"type": "array",
"title": "Slots",
"items": {
"description": "A slot and the item that can be equipped",
"title": "Slots",
"type": "object",
"properties": {
"slot": { "type": "integer", "default": 0, "description": "The slot number of this slot.", "title": "Slot" },
"accepted_items": {
"type": "array",
"description": "The list of items that can go in this slot.",
"title": "Accepted Items",
"items": { "type": "string", "description": "A item name", "$ref": "#/definitions/G", "title": "Accepted Items" }
},
"item": { "$ref": "#/definitions/G", "description": "Identifier of the item that can be equipped for this slot.", "title": "Item" },
"interact_text": {
"type": "string",
"description": "Text to be displayed when the entity can be equipped with this item when playing with Touch-screen controls.",
"title": "Interact Text"
},
"on_equip": {
"$ref": "#/definitions/H",
"description": "Event to trigger when this entity is equipped with this item.",
"title": "On Equip"
},
"on_unequip": {
"$ref": "#/definitions/H",
"description": "Event to trigger when this item is removed from this entity.",
"title": "On Unequip"
}
}
}
}
},
"examples": [{ "slots": [] }]
},
"BBH": {
"type": "object",
"title": "Explode",
"additionalProperties": false,
"description": "Defines how the entity explodes.",
"properties": {
"breaks_blocks": {
"type": "boolean",
"default": true,
"description": "If true, the explosion will destroy blocks in the explosion radius.",
"title": "Breaks Blocks"
},
"causes_fire": {
"type": "boolean",
"default": false,
"description": "If true, blocks in the explosion radius will be set on fire.",
"title": "Causes Fire"
},
"destroy_affected_by_griefing": {
"type": "boolean",
"default": false,
"description": "If true, whether the explosion breaks blocks is affected by the mob griefing game rule.",
"title": "Destroy Affected By Griefing"
},
"fire_affected_by_griefing": {
"type": "boolean",
"default": false,
"description": "If true, whether the explosion causes fire is affected by the mob griefing game rule.",
"title": "Fire Affected By Griefing"
},
"fuse_length": {
"default": [0.0, 0.0],
"description": "The range for the random amount of time the fuse will be lit before exploding, a negative value means the explosion will be immediate.",
"title": "Fuse Length",
"oneOf": [{ "type": "array", "items": [{ "type": "number" }, { "type": "number" }] }, { "type": "number" }]
},
"fuse_lit": {
"type": "boolean",
"default": false,
"description": "If true, the fuse is already lit when this component is added to the entity.",
"title": "Fuse Lit"
},
"max_resistance": {
"type": "number",
"description": "A blocks explosion resistance will be capped at this value when an explosion occurs.",
"title": "Maximum Resistance"
},
"power": {
"type": "number",
"default": 3,
"description": "The radius of the explosion in blocks and the amount of damage the explosion deals.",
"title": "Power"
}
},
"examples": [
{
"breaks_blocks": true,
"causes_fire": false,
"destroy_affected_by_griefing": false,
"fire_affected_by_griefing": false,
"fuse_lit": false,
"max_resistance": 0.0,
"power": 3
}
]
},
"BBI": {
"type": "object",
"title": "Fall Damage",
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": { "value": { "type": "number", "default": 1, "description": "UNDOCUMENTED: value", "title": "Value" } },
"examples": [{ "value": 1 }]
},
"BBJ": {
"title": "Fire Immune",
"additionalProperties": false,
"description": "Sets that this entity doesn't take damage from fire.",
"type": "object",
"required": [],
"properties": {}
},
"BCA": {
"type": "object",
"title": "Flocking",
"description": "Allows entities to flock in groups in water or not.",
"additionalProperties": false,
"properties": {
"block_distance": {
"type": "number",
"default": 0,
"description": "The amount of blocks away the entity will look at to push away from.",
"title": "Block Distance"
},
"block_weight": { "type": "number", "default": 0, "description": "The weight of the push back away from blocks.", "title": "Block Weight" },
"breach_influence": {
"type": "number",
"default": 0,
"description": "The amount of push back given to a flocker that breaches out of the water.",
"title": "Breach Influence"
},
"cohesion_threshold": {
"type": "number",
"default": 1,
"description": "The threshold in which to start applying cohesion.",
"title": "Cohesion Threshold"
},
"cohesion_weight": {
"type": "number",
"default": 1,
"description": "The weight applied for the cohesion steering of the flock.",
"title": "Cohesion Weight"
},
"goal_weight": { "type": "number", "default": 0, "description": "The weight on which to apply on the goal output.", "title": "Goal Weight" },
"high_flock_limit": {
"type": "integer",
"default": 0,
"description": "Determines the high bound amount of entities that can be allowed in the flock.",
"title": "High Flock Limit"
},
"in_water": {
"type": "boolean",
"default": false,
"description": "Tells the Flocking Component if the entity exists in water.",
"title": "In Water"
},
"influence_radius": {
"type": "number",
"default": 0,
"description": "The area around the entity that allows others to be added to the flock.",
"title": "Influence Radius"
},
"innner_cohesion_threshold": {
"type": "number",
"default": 0,
"description": "The distance in which the flocker will stop applying cohesion.",
"title": "Innner Cohesion Threshold"
},
"loner_chance": {
"type": "number",
"default": 0,
"description": "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.",
"title": "Loner Chance"
},
"low_flock_limit": {
"type": "integer",
"default": 0,
"description": "Determines the low bound amount of entities that can be allowed in the flock.",
"title": "Low Flock Limit"
},
"match_variants": {
"type": "boolean",
"default": false,
"description": "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.",
"title": "Match Variants"
},
"max_height": {
"type": "number",
"default": 0,
"description": "The Maximum height allowable in the air or water.",
"title": "Maximum Height"
},
"min_height": {
"type": "number",
"default": 0,
"description": "The Minimum height allowable in the air or water.",
"title": "Minimum Height"
},
"separation_threshold": {
"type": "number",
"default": 2,
"description": "The distance that is determined to be to close to another flocking and to start applying separation.",
"title": "Separation Threshold"
},
"separation_weight": {
"type": "number",
"default": 1,
"description": "The weight applied to the separation of the flock.",
"title": "Separation Weight"
},
"use_center_of_mass": {
"type": "boolean",
"default": false,
"description": "Tells the flockers that they will follow flocks based on the center of mass.",
"title": "Use Center Of Mass"
}
},
"examples": [
{
"block_distance": 0,
"block_weight": 0,
"breach_influence": 0,
"cohesion_threshold": 1,
"cohesion_weight": 1,
"goal_weight": 0,
"high_flock_limit": 0,
"in_water": false,
"influence_radius": 0,
"innner_cohesion_threshold": 0,
"loner_chance": 0,
"low_flock_limit": 0,
"match_variants": false,
"max_height": 0,
"min_height": 0,
"separation_threshold": 2,
"separation_weight": 1,
"use_center_of_mass": false
}
]
},
"BCB": {
"description": "Sets that this entity can float in liquid blocks.",
"type": "object",
"title": "Floats In Liquid",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BCC": {
"type": "object",
"title": "Flying Speed",
"additionalProperties": false,
"description": "Speed in Blocks that this entity flies at.",
"required": [],
"properties": { "value": { "type": "number", "default": 0.02, "description": "Flying speed in blocks per tick", "title": "Value" } },
"examples": [{ "value": 0.02 }]
},
"BCD": {
"type": "object",
"title": "Follow Range",
"additionalProperties": false,
"required": [],
"properties": {
"value": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Value" },
"max": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Max" }
},
"description": "UNDOCUMENTED",
"examples": [{ "value": 0, "max": 0 }]
},
"BCE": {
"type": "object",
"title": "Friction Modifier",
"additionalProperties": false,
"description": "Defines how much does friction affect this entity.",
"required": [],
"properties": {
"value": {
"type": "number",
"default": 1.0,
"description": "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",
"title": "Value"
}
},
"examples": [{ "value": 1.0 }]
},
"BCF_integer_range": {
"title": "Range",
"examples": [-1, { "range_min": 4, "range_max": 7 }],
"oneOf": [
{ "type": "integer" },
{
"type": "object",
"properties": {
"range_min": { "type": "integer", "default": 0, "description": "Lower bound", "title": "Range Minimum" },
"range_max": { "type": "integer", "default": 0, "description": "Upper bound", "title": "Range Maximum" }
}
}
]
},
"BCF": {
"type": "object",
"title": "Genetics",
"additionalProperties": false,
"description": "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.",
"required": [],
"properties": {
"mutation_rate": {
"type": "number",
"description": "Chance that an allele will be replaced with a random one instead of the parent's allele during birth.",
"title": "Mutation Rate"
},
"genes": {
"type": "array",
"description": "Genes is a list defined by three parameters",
"title": "Genes",
"items": {
"type": "object",
"description": "The list of genes that this entity has and will cross with a partner during breeding.",
"title": "Gene",
"properties": {
"allele_range": {
"title": "Allele Range",
"description": "The range of positive integer allele values for this gene. Spawned mobs will have a random number in this range assigned to them.",
"$ref": "#/definitions/BCF_integer_range"
},
"genetic_variants": {
"type": "array",
"description": "The list of genetic variants for this gene. These check for particular allele combinations and fire events when all of them are satisfied.",
"title": "Genetic Variants",
"items": {
"title": "Genetic Variants",
"description": "The genetic variant for this gene. These check for particular allele combinations and fire events when all of them are satisfied.",
"type": "object",
"properties": {
"birth_event": {
"$ref": "#/definitions/H",
"description": "Event to run when this mob is created and matches the above allele conditions.",
"title": "Brith Event"
},
"both_allele": {
"description": "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.",
"title": "Both Allele",
"$ref": "#/definitions/BCF_integer_range"
},
"either_allele": {
"type": "integer",
"default": -1,
"description": "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": {
"type": "integer",
"default": -1,
"description": "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": {
"default": -1,
"description": "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.",
"$ref": "#/definitions/BCF_integer_range"
}
}
}
}
}
}
}
},
"examples": [{ "mutation_rate": 0.0, "genes": [] }]
},
"BCG": {
"additionalProperties": false,
"description": "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.",
"type": "object",
"title": "Giveable",
"properties": {
"triggers": {
"description": "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.",
"title": "Triggers",
"type": "object",
"additionalProperties": false,
"properties": {
"cooldown": {
"type": "number",
"default": 0.0,
"description": "An optional cool down in seconds to prevent spamming interactions.",
"title": "Cooldown"
},
"items": {
"type": "array",
"title": "Properties",
"description": "The list of items that can be given to the entity to place in their inventory.",
"items": {
"description": "An items that can be given to the entity to place in their inventory.",
"$ref": "#/definitions/G",
"title": "Properties"
}
},
"on_give": { "$ref": "#/definitions/H", "description": "Event to fire when the correct item is given.", "title": "On Give" }
}
}
},
"examples": [{ "triggers": {} }]
},
"BCH": {
"type": "object",
"title": "Ground Offset",
"additionalProperties": false,
"description": "Sets the offset from the ground that the entity is actually at.",
"required": [],
"properties": {
"value": { "type": "number", "default": 0.0, "description": "The value of the entity's offset from the terrain, in blocks", "title": "Value" }
},
"examples": [{ "value": 0.0 }]
},
"BCI": {
"description": "Defines the interactions with this entity for healing it.",
"type": "object",
"title": "Healable",
"additionalProperties": false,
"required": [],
"properties": {
"filters": { "$ref": "#/definitions/BA" },
"force_use": {
"type": "boolean",
"default": false,
"description": "Determines if item can be used regardless of entity being at full health",
"title": "Force Use"
},
"items": {
"description": "The array of items that can be used to heal this entity",
"title": "Items",
"type": "array",
"items": {
"type": "object",
"properties": {
"filters": {
"$ref": "#/definitions/BA",
"description": "The filter group that defines the conditions for using this item to heal the entity"
},
"heal_amount": {
"type": "integer",
"default": 1,
"description": "The amount of health this entity gains when fed this item",
"title": "Heal Amount"
},
"item": { "type": "string", "description": "Item identifier that can be used to heal this entity", "title": "Item" }
}
}
}
},
"examples": [{ "force_use": false, "items": [] }]
},
"BCJ": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Health",
"additionalProperties": false,
"required": [],
"dependencies": { "max": ["value"] },
"properties": {
"max": { "type": "integer", "description": "The maximum health the entity can heal", "title": "Maximum" },
"value": {
"description": "Current health of the entity",
"title": "Value",
"oneOf": [
{ "type": "integer", "default": 1 },
{
"type": "object",
"additionalProperties": false,
"required": ["range_min", "range_max"],
"properties": {
"range_min": { "title": "Range Minimum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"range_max": { "title": "Range Maximum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" }
}
}
]
}
},
"examples": [{ "value": 1, "max": 0 }]
},
"BDA": {
"type": "object",
"title": "Hurt When Wet",
"additionalProperties": false,
"required": [],
"properties": {},
"description": "Specifies if an actor is hurt when wet."
},
"BDB": {
"type": "object",
"title": "Hurt On Condition",
"description": "Defines a set of conditions under which an entity should take damage.",
"additionalProperties": false,
"properties": {
"damage_conditions": {
"type": "array",
"title": "Damage Conditions",
"description": "An array of conditions used to compare the event to.",
"items": {
"type": "object",
"title": "Damage Condition",
"description": "A condition used to compare the event to.",
"additionalProperties": false,
"properties": {
"filters": { "$ref": "#/definitions/BA" },
"cause": { "type": "string", "title": "Cause", "description": "Damage cause", "$ref": "#/definitions/CA" },
"damage_per_tick": {
"type": "integer",
"title": "Damage Per Tick",
"description": "Amount of damage done each tick that the conditions are met."
}
}
}
}
},
"examples": [{ "damage_conditions": [] }]
},
"BDC": {
"description": "When configured as a rideable entity, the entity will be controlled using WASD controls.",
"type": "object",
"title": "Input Ground Controlled",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BDE": {
"title": "Block",
"type": "object",
"additionalProperties": false,
"properties": {
"name": { "title": "Name", "description": "The block id, for example: `minecraft:air'", "type": "string" },
"states": {
"title": "States",
"description": "The block states",
"type": "object",
"additionalProperties": {
"title": "State",
"description": "A single state of a block",
"oneOf": [{ "type": "string" }, { "type": "boolean" }, { "type": "number" }]
}
}
}
},
"BDD": {
"type": "object",
"title": "Inside Block Notifier",
"additionalProperties": false,
"description": "Verifies whether the entity is inside any of the listed blocks.",
"required": [],
"properties": {
"block_list": {
"title": "Block List",
"description": "List of blocks, with certain block states, that we are monitoring to see if the entity is inside.",
"type": "array",
"items": {
"title": "Block",
"description": "A of block, with certain block states, that we are monitoring to see if the entity is inside.",
"type": "object",
"additionalProperties": false,
"properties": {
"block": { "$ref": "#/definitions/BDE" },
"entered_block_event": {
"title": "Entered Block Event",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"$ref": "#/definitions/H"
},
"exited_block_event": {
"title": "Exited Block Event",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"$ref": "#/definitions/H"
}
}
}
}
},
"examples": [{ "block_list": [] }]
},
"BDF": {
"description": "Adds a timer since last rested to see if phantoms should spawn.",
"type": "object",
"title": "Insomnia",
"additionalProperties": false,
"required": [],
"properties": {
"days_until_insomnia": {
"type": "number",
"default": 3,
"description": "Number of days the mob has to stay up until the insomnia effect begins.",
"title": "Days Until Insomnia"
}
},
"examples": [{ "days_until_insomnia": 3 }]
},
"BDG_interaction_spec": {
"type": "object",
"properties": {
"add_items": {
"type": "object",
"description": "Loot table with items to add to the player's inventory upon successful interaction.",
"title": "Add Items",
"additionalProperties": false,
"properties": {
"table": {
"type": "string",
"$ref": "#/definitions/BBF",
"description": "File path, relative to the Behavior Pack's path, to the loot table file.",
"title": "Table"
}
}
},
"cooldown": {
"type": "number",
"default": 0,
"description": "Time in seconds before this entity can be interacted with again.",
"title": "Cooldown"
},
"hurt_item": {
"type": "integer",
"default": 0,
"description": "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.",
"title": "Hurt Item"
},
"interact_text": {
"type": "string",
"default": "",
"description": "Text to show when the player is able to interact in this way with this entity when playing with Touch-screen controls.",
"title": "Interact Text"
},
"on_interact": { "$ref": "#/definitions/BAI", "description": "Event to fire when the interaction occurs.", "title": "On Interact" },
"particle_on_start": {
"type": "object",
"description": "Particle effect that will be triggered at the start of the interaction.",
"title": "Particle On Start",
"properties": {
"particle_offset_towards_interactor": {
"type": "boolean",
"description": "Whether or not the particle will appear closer to who performed the interaction.",
"title": "Particle Offset Towards Interactor"
},
"particle_type": { "type": "string", "description": "The type of particle that will be spawned.", "title": "Particle Type" },
"particle_y_offset": {
"type": "number",
"description": "Will offset the particle this amount in the y direction.",
"title": "Particle Y Offset"
}
}
},
"play_sounds": {
"type": "string",
"default": "",
"description": "List of sounds to play when the interaction occurs.",
"title": "Play Sounds"
},
"spawn_entities": {
"type": "string",
"default": "",
"description": "List of entities to spawn when the interaction occurs.",
"title": "Spawn Entities"
},
"spawn_items": {
"type": "object",
"description": "Loot table with items to drop on the ground upon successful interaction.",
"title": "Spawn Items",
"additionalProperties": false,
"properties": {
"table": {
"type": "string",
"$ref": "#/definitions/BBF",
"description": "File path, relative to the Behavior Pack's path, to the loot table file.",
"title": "Table"
}
}
},
"swing": {
"type": "boolean",
"default": false,
"description": "If true, the player will do the `swing` animation when interacting with this entity.",
"title": "Swing"
},
"transform_to_item": {
"type": "string",
"title": "Transform To Item",
"description": "The feed item used will transform to this item upon successful interaction. Format: itemName:auxValue"
},
"use_item": { "type": "boolean", "default": false, "description": "If true, the interaction will use an item.", "title": "Use Item" }
}
},
"BDG": {
"type": "object",
"title": "Interact",
"description": "Defines interactions with this entity.",
"additionalProperties": false,
"examples": [{ "interactions": [] }],
"properties": {
"interactions": {
"description": "The interactions",
"title": "Interactions",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/BDG_interaction_spec" },
{ "type": "array", "items": { "$ref": "#/definitions/BDG_interaction_spec" } }
]
}
}
},
"BDH": {
"description": "Defines this entity's inventory properties.",
"type": "object",
"title": "Inventory",
"additionalProperties": false,
"properties": {
"additional_slots_per_strength": {
"type": "integer",
"default": 0,
"description": "Number of slots that this entity can gain per extra strength",
"title": "Additional Slots Per Strength"
},
"can_be_siphoned_from": {
"type": "boolean",
"default": false,
"description": "If true, the contents of this inventory can be removed by a hopper",
"title": "Can Be Siphoned From"
},
"container_type": {
"type": "string",
"default": "none",
"description": "Type of container this entity has. Can be horse, minecart_chest, minecart_hopper, inventory, container or hopper",
"title": "Container Type",
"enum": ["horse", "minecart_chest", "minecart_hopper", "inventory", "container", "hopper"]
},
"inventory_size": { "type": "integer", "default": 5, "description": "Number of slots the container has", "title": "Inventory Size" },
"private": { "type": "boolean", "default": false, "description": "If true, only the entity can access the inventory", "title": "Private" },
"restrict_to_owner": {
"type": "boolean",
"default": false,
"description": "If true, the entity's inventory can only be accessed by its owner or itself",
"title": "Restrict To Owner"
}
},
"examples": [
{
"additional_slots_per_strength": 0,
"can_be_siphoned_from": false,
"container_type": "none",
"inventory_size": 5,
"private": false,
"restrict_to_owner": false
}
]
},
"BDI": {
"description": "Sets that this entity is a baby.",
"type": "object",
"title": "Is Baby",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BDJ": {
"description": "Sets that this entity is charged.",
"type": "object",
"title": "Is Charged",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEA": {
"description": "Sets that this entity is currently carrying a chest.",
"type": "object",
"title": "Is Chested",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEB": {
"description": "Allows dyes to be used on this entity to change its color.",
"type": "object",
"title": "Is Dyeable",
"additionalProperties": false,
"required": [],
"properties": {
"interact_text": {
"type": "string",
"description": "The text that will display when interacting with this entity with a dye when playing with Touch-screen controls",
"title": "Interact Text"
}
},
"examples": [{ "interact_text": "example" }]
},
"BEC": {
"type": "object",
"title": "Is Hidden When Invisible",
"additionalProperties": false,
"description": "Sets that this entity can hide from hostile mobs while invisible."
},
"BED": {
"description": "Sets that this entity is currently on fire.",
"type": "object",
"title": "Is Ignited",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEE": {
"description": "Sets that this entity is an illager captain.",
"type": "object",
"title": "Is Illager Captain",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEF": {
"description": "Sets that this entity is currently saddled.",
"type": "object",
"title": "Is Saddled",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEG": {
"description": "Sets that this entity is currently shaking.",
"type": "object",
"title": "Is Shaking",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEH": {
"description": "Sets that this entity is currently sheared.",
"type": "object",
"title": "Is Sheared",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BEI": {
"description": "Sets that this entity can be stacked.",
"type": "object",
"title": "Is Stackable",
"additionalProperties": false,
"properties": { "value": { "title": "Value", "description": "UNDOCUMENTATED", "type": "boolean" } }
},
"BEJ": {
"description": "Sets that this entity is currently stunned.",
"type": "object",
"title": "Is Stunned",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BFA": {
"description": "Sets that this entity is currently tamed.",
"type": "object",
"title": "Is Tamed",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BFB": {
"description": "Efines what items can be used to control this entity while ridden",
"type": "object",
"title": "Item Controllable",
"additionalProperties": false,
"required": [],
"properties": {
"control_items": {
"description": "List of items that can be used to control this entity",
"oneOf": [
{ "type": "array", "items": { "type": "string", "description": "An item that can be used to control this entity", "title": "Item" } },
{ "type": "string" }
],
"title": "Control Items"
}
}
},
"BFC": {
"type": "object",
"title": "Item Hopper",
"additionalProperties": false,
"required": [],
"properties": {},
"description": "Determines that this entity is an item hopper"
},
"BFD": {
"description": "Defines a dynamic type jump control that will change jump properties based on the speed modifier of the mob.",
"type": "object",
"title": "Jump.dynamic",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BFE": {
"description": "Gives the entity the ability to jump.",
"type": "object",
"title": "Jump.static",
"additionalProperties": false,
"required": [],
"properties": {
"jump_power": { "type": "number", "default": 0.42, "description": "The initial vertical velocity for the jump", "title": "Jump Power" }
},
"examples": [{ "jump_power": 0.42 }]
},
"BFF": {
"type": "object",
"title": "Knockback Resistance",
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": {
"value": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Value" },
"max": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Maximum" }
},
"examples": [{ "value": 0.0, "max": 0.0 }]
},
"BFG": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Lava Movement",
"additionalProperties": false,
"required": [],
"properties": { "value": { "type": "number", "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" } },
"examples": [{ "value": 0.0 }]
},
"BFH": {
"type": "object",
"title": "Leashable",
"description": "Defines interactions with this entity.",
"additionalProperties": false,
"properties": {
"can_be_stolen": {
"type": "boolean",
"default": false,
"description": "If true, players can leash this entity even if it is already leashed to another mob.",
"title": "Can Be Stolen"
},
"hard_distance": {
"type": "number",
"default": 6,
"description": "Distance in blocks at which the leash stiffens, restricting movement.",
"title": "Hard Distance"
},
"max_distance": {
"type": "number",
"default": 10,
"description": "Distance in blocks at which the leash breaks.",
"title": "Maximum Distance"
},
"on_leash": { "$ref": "#/definitions/H", "description": "Event to call when this entity is leashed.", "title": "On Leash" },
"on_unleash": { "$ref": "#/definitions/H", "description": "Event to call when this entity is unleashed.", "title": "On Unleash" },
"soft_distance": {
"type": "number",
"default": 4,
"description": "Distance in blocks at which the `spring` effect starts acting to keep this entity close to the entity that leashed it.",
"title": "Soft Distance"
}
},
"examples": [{ "can_be_stolen": false, "hard_distance": 6, "max_distance": 10, "soft_distance": 4 }]
},
"BFI": {
"description": "Defines the behavior when another entity looks at this entity.",
"type": "object",
"title": "Lookat",
"additionalProperties": false,
"properties": {
"allow_invulnerable": {
"type": "boolean",
"default": false,
"description": "If true, invulnerable entities (e.g. Players in creative mode) are considered valid targets.",
"title": "Allow Invulnerable"
},
"filters": { "$ref": "#/definitions/BA", "description": "Defines the entities that can trigger this component", "title": "Filters" },
"look_cooldown": {
"$ref": "#/definitions/ID",
"default": [0.0, 0.0],
"description": "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",
"title": "Look Cooldown"
},
"look_event": {
"description": "The event identifier to run when the entities specified in filters look at this entity",
"title": "Look Event",
"$ref": "#/definitions/H"
},
"search_radius": {
"type": "number",
"default": 10,
"description": "Maximum distance this entity will look for another entity looking at it.",
"title": "Search Radius"
},
"set_target": {
"type": "boolean",
"default": true,
"description": "If true, this entity will set the attack target as the entity that looked at it.",
"title": "Set Target"
}
},
"examples": [{ "allow_invulnerable": false, "search_radius": 10, "set_target": true }]
},
"BFJ": {
"type": "object",
"title": "Loot",
"description": "sets the loot table for what items this entity drops upon death.",
"additionalProperties": false,
"required": ["table"],
"examples": [{ "table": "loot_tables/empty.json" }],
"properties": {
"table": {
"type": "string",
"pattern": "^loot_tables/.*.json$",
"description": "The path to the loot table, relative to the Behavior Pack's root.",
"title": "Table",
"default": "loot_tables/empty.json"
}
}
},
"BGA": {
"type": "object",
"title": "Managed Wandering Trader",
"additionalProperties": false,
"required": [],
"properties": {},
"description": "This component is used to implement part of the Wandering Trader behavior"
},
"BGB": {
"type": "object",
"title": "Mark Variant",
"description": "Additional variant value. Can be used to further differentiate variants.",
"required": ["value"],
"properties": {
"value": {
"type": "integer",
"default": 0,
"description": "The ID of the variant. By convention, 0 is the ID of the base entity",
"title": "Value"
}
},
"additionalProperties": false,
"examples": [
{ "value": 0 },
{ "value": 1 },
{ "value": 2 },
{ "value": 3 },
{ "value": 4 },
{ "value": 5 },
{ "value": 6 },
{ "value": 7 },
{ "value": 8 },
{ "value": 9 }
]
},
"BGC": {
"type": "object",
"title": "Movement",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"required": [],
"properties": {
"value": {
"title": "Value",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"title": "Range",
"properties": {
"range_min": { "type": "number", "title": "Range Minimum" },
"range_max": { "type": "number", "title": "Range Maximum" }
}
}
]
},
"max": { "type": "number", "title": "Maximum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "max": 0.0 }]
},
"BGD": {
"type": "object",
"title": "Movement.amphibious",
"additionalProperties": false,
"required": [],
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"description": "This move control allows the mob to swim in water and walk on land.",
"examples": [{ "max_turn": 30 }]
},
"BGE": {
"type": "object",
"title": "Movement.basic",
"description": "defines the movement of an entity.",
"additionalProperties": false,
"required": [],
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "max_turn": 30 }]
},
"BGF": {
"type": "object",
"title": "Movement.fly",
"description": "This move control causes the mob to fly.",
"additionalProperties": false,
"required": [],
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "max_turn": 30 }]
},
"BGG": {
"description": "This move control allows a mob to fly, swim, climb, etc.",
"type": "object",
"title": "Movement.generic",
"additionalProperties": false,
"required": [],
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "max_turn": 30 }]
},
"BGH": {
"type": "object",
"title": "Movement.glide",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"required": [],
"properties": {
"start_speed": { "type": "number", "title": "Start Speed", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"speed_when_turning": { "type": "number", "title": "Speed When Turning", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "start_speed": 0.0, "speed_when_turning": 0.0 }]
},
"BGI": {
"type": "object",
"title": "Movement.jump",
"description": "Move control that causes the mob to jump as it moves with a specified delay between jumps.",
"additionalProperties": false,
"properties": {
"jump_delay": {
"type": "array",
"default": [0.0, 0.0],
"description": "Delay after landing when using the slime move control.",
"title": "Jump Delay",
"items": [
{ "type": "number", "title": "Minimum" },
{ "type": "number", "title": "Maximum" }
]
},
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "jump_delay": [], "max_turn": 30 }]
},
"BGJ": {
"type": "object",
"title": "Movement.skip",
"additionalProperties": false,
"required": [],
"description": "This move control causes the mob to hop as it moves.",
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "max_turn": 30 }]
},
"BHA": {
"title": "Movement.sway",
"description": "This move control causes the mob to sway side to side giving the impression it is swimming.",
"type": "object",
"additionalProperties": false,
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
},
"sway_amplitude": { "type": "number", "description": "The amount of sway that is allowed for movement.", "title": "Sway Amplitude" }
},
"examples": [{ "max_turn": 30, "sway_amplitude": 0.0 }]
},
"BHB_name_action": {
"type": "object",
"additionalProperties": false,
"description": "Describes the special names for this entity and the events to call when the entity acquires those names",
"title": "Name Action",
"properties": {
"name_filter": {
"type": "string",
"default": "",
"description": "List of special names that will cause the events defined in `on_named` to fire",
"title": "Name Filter"
},
"on_named": {
"$ref": "#/definitions/H",
"description": "Event to be called when this entity acquires the name specified in `name_filter'",
"title": "On Named"
}
}
},
"BHB": {
"type": "object",
"title": "Nameable",
"additionalProperties": false,
"description": "Allows this entity to be named (e.g. using a name tag).",
"properties": {
"allow_name_tag_renaming": {
"type": "boolean",
"default": true,
"description": "If true, this entity can be renamed with name tags",
"title": "Allow Name Tag Renaming"
},
"always_show": { "type": "boolean", "default": false, "description": "If true, the name will always be shown", "title": "Always Show" },
"default_trigger": { "$ref": "#/definitions/BAI", "description": "Trigger to run when the entity gets named", "title": "Default Trigger" },
"name_actions": {
"title": "Name Actions",
"description": "Describes the special names for this entity and the events to call when the entity acquires those names",
"oneOf": [
{ "type": "array", "items": { "$ref": "#/definitions/BHB_name_action" } },
{ "type": "object", "$ref": "#/definitions/BHB_name_action" }
]
}
},
"examples": [{ "allow_name_tag_renaming": true, "always_show": false }]
},
"BHD": {
"description": "A minecraft block reference",
"examples": ["namespace:block", { "name": "namespace:block" }],
"title": "Block Reference",
"oneOf": [
{ "type": "string", "$ref": "#/definitions/JC" },
{
"title": "Block Reference",
"description": "",
"type": "object",
"additionalProperties": false,
"properties": {
"name": { "type": "string", "$ref": "#/definitions/JC" },
"states": {
"title": "States",
"description": "",
"type": "object",
"propertyNames": { "pattern": "\\w*:?\\w+" },
"example": [{ "property": "value" }],
"additionalProperties": {
"type": ["boolean", "integer", "string"],
"title": "State Value",
"description": "The key of property is the name of the block state/property, the value must be the same as the block properties accepted values"
}
}
}
}
]
},
"BHC": {
"title": "Navigation.climb",
"description": "Allows this entity to generate paths that include vertical walls like the vanilla Spiders do.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHE": {
"title": "Navigation.float",
"description": "Allows this entity to generate paths by flying around the air like the regular Ghast.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHF": {
"title": "Navigation.fly",
"description": "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.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHG": {
"title": "Navigation.generic",
"description": "Allows this entity to generate paths by walking, swimming, flying and/or climbing around and jumping up and down a block.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHH": {
"title": "Navigation.swim",
"description": "Allows this entity to generate paths that include water.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHI": {
"title": "Navigation.walk",
"description": "Allows this entity to generate paths by walking around and jumping up and down a block like regular mobs.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"BHJ": {
"description": "Adds a trigger to call on this entity's death. minecraft:on_death can only be used by the `ender_dragon` entity.",
"title": "On Death",
"$ref": "#/definitions/BAI"
},
"BIA": {
"description": "Adds a trigger that will run when a nearby entity of the same type as this entity becomes Angry.",
"title": "On Friendly Anger",
"$ref": "#/definitions/BAI"
},
"BIB": { "description": "Adds a trigger to call when this entity takes damage.", "title": "On Hurt", "$ref": "#/definitions/BAI" },
"BIC": {
"description": "Adds a trigger to call when this entity is attacked by the player.",
"title": "On Hurt By Player",
"$ref": "#/definitions/BAI"
},
"BID": { "description": "Adds a trigger to call when this entity is set on fire.", "title": "On Ignite", "$ref": "#/definitions/BAI" },
"BIE": {
"description": "Only usable by the Ender Dragon. Adds a trigger to call when this entity lands.",
"title": "On Start Landing",
"$ref": "#/definitions/BAI"
},
"BIF": {
"description": "Only usable by the Ender Dragon. Adds a trigger to call when this entity starts flying.",
"title": "On Start Takeoff",
"$ref": "#/definitions/BAI"
},
"BIG": { "description": "Adds a trigger to call when this entity finds a target.", "title": "On Target Acquired", "$ref": "#/definitions/BAI" },
"BIH": {
"description": "Adds a trigger to call when this entity loses the target it currently has.",
"title": "On Target Escape",
"$ref": "#/definitions/BAI"
},
"BII": {
"description": "Adds a trigger to call when this pet's owner awakes after sleeping with the pet.",
"title": "On Wake With Owner",
"$ref": "#/definitions/BAI"
},
"BIJ": {
"type": "object",
"title": "Out Of Control",
"additionalProperties": false,
"description": "defines the entity's `out of control` state.",
"required": [],
"properties": {}
},
"BJA": {
"additionalProperties": false,
"type": "object",
"title": "Player.saturation",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": { "value": { "type": "number", "default": true, "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" } },
"examples": [{ "value": true }]
},
"BJB": {
"additionalProperties": false,
"type": "object",
"title": "Player.exhaustion",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": {
"value": { "type": "number", "default": true, "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max": { "type": "number", "default": true, "title": "Maximum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "value": true, "max": true }]
},
"BJC": {
"additionalProperties": false,
"type": "object",
"title": "Player.level",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": {
"value": { "type": "number", "default": true, "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max": { "type": "number", "default": true, "title": "Maximum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "value": true, "max": true }]
},
"BJD": {
"additionalProperties": false,
"type": "object",
"title": "Player.experience",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": {
"value": { "type": "number", "default": true, "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max": { "type": "number", "default": true, "title": "Maximum", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "value": true, "max": true }]
},
"BJE": {
"description": "Defines the entity's `peek` behavior, defining the events that should be called during it",
"type": "object",
"title": "Peek",
"additionalProperties": false,
"required": [],
"properties": {
"on_close": { "$ref": "#/definitions/H", "description": "Event to call when the entity is done peeking", "title": "On Close" },
"on_open": { "$ref": "#/definitions/H", "description": "Event to call when the entity starts peeking", "title": "On Open" },
"on_target_open": {
"$ref": "#/definitions/H",
"description": "Event to call when the entity's target entity starts peeking",
"title": "On Target Open"
}
}
},
"BJF": {
"description": "Defines whether an entity should be persistent in the game world.",
"type": "object",
"title": "Persistent",
"additionalProperties": false,
"required": [],
"properties": {}
},
"BJG": {
"additionalProperties": false,
"type": "object",
"title": "Physics",
"description": "Defines a dynamic type jump control that will change jump properties based on the speed modifier of the mob.",
"required": [],
"properties": {
"has_collision": {
"type": "boolean",
"default": true,
"description": "Whether or not the object collides with things.",
"title": "Has Collision"
},
"has_gravity": {
"type": "boolean",
"default": true,
"description": "Whether or not the entity is affected by gravity.",
"title": "Has Gravity"
}
},
"examples": [{}, { "has_collision": true, "has_gravity": true }]
},
"BJH": {
"type": "object",
"title": "Preferred Path",
"description": "Specifies costing information for mobs that prefer to walk on preferred paths.",
"additionalProperties": false,
"required": ["preferred_path_blocks"],
"properties": {
"default_block_cost": { "type": "number", "default": 0, "description": "Cost for non-preferred blocks", "title": "Default Block Cost" },
"jump_cost": { "type": "integer", "default": 0, "description": "Added cost for jumping up a node", "title": "Jump Cost" },
"max_fall_blocks": {
"type": "integer",
"default": 3,
"description": "Distance mob can fall without taking damage",
"title": "Maximum Fall Blocks"
},
"preferred_path_blocks": {
"type": "array",
"title": "Preferred Path Blocks",
"description": "A list of blocks with their associated cost",
"items": {
"additionalProperties": false,
"type": "object",
"description": "Blocks cost",
"properties": { "cost": { "type": "number" }, "blocks": { "type": "array", "items": { "$ref": "#/definitions/JA" } } }
}
}
},
"examples": [{ "default_block_cost": 0, "jump_cost": 0, "max_fall_blocks": 3, "preferred_path_blocks": [] }]
},
"BJI": {
"type": "object",
"title": "Interact",
"description": "Allows the entity to be a thrown entity.",
"additionalProperties": false,
"properties": {
"anchor": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Anchor" },
"angle_offset": {
"type": "number",
"default": 0,
"description": "Determines the angle at which the projectile is thrown",
"title": "Angle Offset"
},
"catch_fire": { "type": "boolean", "default": false, "description": "If true, the entity hit will be set on fire", "title": "Catch Fire" },
"crit_particle_on_hurt": {
"type": "boolean",
"default": false,
"description": "If true, the projectile will produce additional particles when a critical hit happens",
"title": "Crit Particle On Hurt"
},
"destroy_on_hurt": {
"type": "boolean",
"default": false,
"description": "If true, this entity will be destroyed when hit",
"title": "Destroy On Hurt"
},
"filter": {
"type": "string",
"default": "",
"description": "Entity Definitions defined here can't be hurt by the projectile",
"title": "Filter"
},
"fire_affected_by_griefing": {
"type": "boolean",
"default": false,
"description": "If true, whether the projectile causes fire is affected by the mob griefing game rule",
"title": "Fire Affected By Griefing"
},
"gravity": {
"type": "number",
"default": 0.05,
"description": "The gravity applied to this entity when thrown. The higher the value, the faster the entity falls",
"title": "Gravity"
},
"hit_ground_sound": {
"type": "string",
"default": "",
"description": "The sound that plays when the projectile hits the ground",
"title": "Hit Ground Sound"
},
"hit_sound": {
"type": "string",
"default": "",
"description": "The sound that plays when the projectile hits something",
"title": "Hit Sound"
},
"homing": { "type": "boolean", "default": false, "description": "If true, the projectile homes in to the nearest entity", "title": "Homing" },
"inertia": {
"type": "number",
"default": 0.99,
"description": "The fraction of the projectile's speed maintained every frame while traveling in air",
"title": "Inertia"
},
"is_dangerous": {
"type": "boolean",
"default": false,
"description": "If true, the projectile will be treated as dangerous to the players",
"title": "Is Dangerous"
},
"knockback": {
"type": "boolean",
"default": true,
"description": "If true, the projectile will knock back the entity it hits",
"title": "Knockback"
},
"lightning": {
"type": "boolean",
"default": false,
"description": "If true, the entity hit will be struck by lightning",
"title": "Lightning"
},
"liquid_inertia": {
"type": "number",
"default": 0.6,
"description": "The fraction of the projectile's speed maintained every frame while traveling in water",
"title": "Liquid Inertia"
},
"multiple_targets": {
"type": "boolean",
"default": true,
"description": "If true, the projectile can hit multiple entities per flight",
"title": "Multiple Targets"
},
"mob_effect": {
"type": "object",
"default": true,
"description": "UNDOCUMENTED",
"title": "Mob Effects",
"properties": {
"effect": { "title": "Effect", "description": "UNDOCUMENTED", "type": "string" },
"durationeasy": { "title": "Duration Easy", "description": "UNDOCUMENTED", "type": "number" },
"durationnormal": { "title": "Duration Normal", "description": "UNDOCUMENTED", "type": "number" },
"durationhard": { "title": "Duration Hard", "description": "UNDOCUMENTED", "type": "number" },
"amplifier": { "title": "Amplifier", "description": "UNDOCUMENTED", "type": "number" }
}
},
"offset": {
"type": "array",
"default": [0, 0.0, 0],
"description": "The offset from the entity's anchor where the projectile will spawn",
"title": "Offset",
"items": [
{ "type": "number", "description": "X", "title": "X" },
{ "type": "number", "description": "Y", "title": "Y" },
{ "type": "number", "description": "Z", "title": "Z" }
]
},
"on_fire_time": {
"type": "number",
"default": 5,
"description": "Time in seconds that the entity hit will be on fire for",
"title": "On Fire Time"
},
"on_hit": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "On Hit",
"properties": {
"arrow_effect": { "type": "object", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "additionalProperties": false },
"catch_fire": {
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Catch Fire",
"type": "object",
"properties": {
"fire_affected_by_griefing": {
"type": "boolean",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Fire Affected By Griefing"
}
}
},
"definition_event": {
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Event",
"type": "object",
"properties": {
"affect_projectile": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Affect Projectile" },
"event_trigger": { "$ref": "#/definitions/H" }
}
},
"douse_fire": { "type": "object", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Douse Fire" },
"impact_damage": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Impact Damage",
"properties": {
"max_critical_damage": {
"type": "number",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Max Critical Damage"
},
"min_critical_damage": {
"type": "number",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Min Critical Damage"
},
"power_multiplier": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Filter" },
"filter": { "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Filter" },
"catch_fire": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Catch Fire" },
"damage": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Damage",
"oneOf": [{ "type": "integer" }, { "type": "array", "items": [{ "type": "integer" }, { "type": "integer" }] }]
},
"destroy_on_hit": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Destroy On Hit" },
"knockback": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Knockback" },
"semi_random_diff_damage": {
"type": "boolean",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Semi Random Diff Damage"
},
"should_bounce": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Should Bounce" },
"mob_effect": {
"title": "Mob Effect",
"description": "",
"type": "object",
"additionalProperties": false,
"properties": {
"effect": { "title": "", "description": "", "type": "string" },
"durationeasy": { "title": "", "description": "", "type": "number" },
"durationnormal": { "title": "", "description": "", "type": "number" },
"durationhard": { "title": "", "description": "", "type": "number" },
"amplifier": { "title": "", "description": "", "type": "number" }
}
}
}
},
"particle_on_hit": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Particle On Hit",
"properties": {
"particle_type": { "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Particle Type" },
"num_particles": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Num Particles" },
"on_entity_hit": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "On Entity Hit" },
"on_other_hit": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "On Other Hit" }
}
},
"remove_on_hit": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Remove On Hit"
},
"spawn_chance": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Spawn Chance",
"properties": {
"first_spawn_percent_chance": {
"type": "number",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "First Spawn Percent Chance"
},
"first_spawn_chance": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "First Spawn Chance" },
"second_spawn_chance": {
"type": "integer",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Second Spawn Chance"
},
"first_spawn_count": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "First Spawn Count" },
"second_spawn_count": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Second Spawn Count" },
"spawn_definition": { "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Spawn Definition" },
"spawn_baby": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Spawn Baby" }
}
},
"spawn_aoe_cloud": {
"additionalProperties": false,
"type": "object",
"properties": {
"radius": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Radius" },
"radius_on_use": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Radius On Use" },
"potion": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Potion" },
"particle": { "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Particle" },
"duration": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Duration" },
"color": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Color",
"type": "array",
"format": "color-array",
"items": [
{ "type": "integer", "minimum": 0, "maximum": 255, "description": "R", "title": "R" },
{ "type": "integer", "minimum": 0, "maximum": 255, "description": "G", "title": "G" },
{ "type": "integer", "minimum": 0, "maximum": 255, "description": "B", "title": "B" }
]
},
"affect_owner": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Affect Owner" },
"reapplication_delay": {
"type": "integer",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Reapplication Delay"
}
}
},
"stick_in_ground": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Stick In Ground",
"properties": {
"shake_time": { "title": "Shake Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number", "minimum": 0 }
}
},
"teleport_owner": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Teleport Owner"
},
"thrown_potion_effect": { "title": "Thrown Potion Effect", "type": "object", "additionalProperties": false }
}
},
"particle": { "type": "string", "default": "iconcrack", "description": "Particle to use upon collision", "title": "Particle" },
"potion_effect": {
"type": "integer",
"default": -1,
"description": "Defines the effect the arrow will apply to the entity it hits",
"title": "Potion Effect"
},
"power": { "type": "number", "default": 1.3, "description": "Determines the velocity of the projectile", "title": "Power" },
"reflect_on_hurt": {
"type": "boolean",
"default": false,
"description": "If true, this entity will be reflected back when hit",
"title": "Reflect On Hurt"
},
"semi_random_diff_damage": {
"type": "boolean",
"default": false,
"description": "If true, damage will be randomized based on damage and speed",
"title": "Semi Random Diff Damage"
},
"shoot_sound": { "type": "string", "default": "", "description": "The sound that plays when the projectile is shot", "title": "Shoot Sound" },
"shoot_target": {
"type": "boolean",
"default": true,
"description": "If true, the projectile will be shot towards the target of the entity firing it",
"title": "Shoot Target"
},
"should_bounce": {
"type": "boolean",
"default": false,
"description": "If true, the projectile will bounce upon hit",
"title": "Should Bounce"
},
"splash_potion": {
"type": "boolean",
"default": false,
"description": "If true, the projectile will be treated like a splash potion",
"title": "Splash Potion"
},
"splash_range": { "type": "number", "default": 4, "description": "Radius in blocks of the `splash` effect", "title": "Splash Range" },
"stop_on_hurt": { "title": "Splash Range", "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"uncertainty_base": {
"type": "number",
"default": 0,
"description": "The base accuracy. Accuracy is determined by the formula uncertaintyBase - difficultyLevel * uncertaintyMultiplier",
"title": "Uncertainty Base"
},
"uncertainty_multiplier": {
"type": "number",
"default": 0,
"description": "Determines how much difficulty affects accuracy. Accuracy is determined by the formula uncertaintyBase - difficultyLevel * uncertaintyMultiplier",
"title": "Uncertainty Multiplier"
}
},
"examples": [
{},
{
"anchor": 0,
"angle_offset": 0,
"catch_fire": false,
"crit_particle_on_hurt": false,
"destroy_on_hurt": false,
"filter": "",
"fire_affected_by_griefing": false,
"gravity": 0.05,
"hit_sound": "",
"homing": false,
"inertia": 0.99,
"is_dangerous": false,
"knockback": true,
"lightning": false,
"liquid_inertia": 0.6,
"multiple_targets": true,
"offset": [],
"on_fire_time": 5,
"on_hit": {},
"particle": "iconcrack",
"potion_effect": -1,
"power": 1.3,
"reflect_on_hurt": false,
"semi_random_diff_damage": false,
"shoot_sound": "",
"shoot_target": true,
"should_bounce": false,
"splash_potion": false,
"splash_range": 4,
"uncertainty_base": 0,
"uncertainty_multiplier": 0
}
]
},
"BJJ": {
"type": "object",
"title": "Push Through",
"additionalProperties": false,
"description": "Sets the distance through which the entity can push through.",
"required": [],
"properties": {
"value": { "type": "number", "default": 0.0, "description": "The value of the entity's push-through, in blocks", "title": "Value" }
},
"examples": [{ "value": 0.0 }]
},
"CAA": {
"additionalProperties": false,
"type": "object",
"title": "Pushable",
"description": "Defines what can push an entity between other entities and pistons.",
"required": [],
"properties": {
"is_pushable": {
"type": "boolean",
"default": true,
"description": "Whether the entity can be pushed by other entities.",
"title": "Is Pushable"
},
"is_pushable_by_piston": {
"type": "boolean",
"default": true,
"description": "Whether the entity can be pushed by pistons safely.",
"title": "Is Pushable By Piston"
}
},
"examples": [{ "is_pushable": true, "is_pushable_by_piston": true }]
},
"CAB": {
"type": "object",
"title": "Raid Trigger",
"additionalProperties": false,
"description": "Attempts to trigger a raid at the entity's location.",
"required": [],
"properties": {
"triggered_event": {
"$ref": "#/definitions/H",
"description": "Event to run we attempt to trigger a raid on the village.",
"title": "Triggered Event"
}
}
},
"CAC": {
"type": "object",
"title": "Rail Movement",
"description": "Defines the entity's movement on the rails. An entity with this component is only allowed to move on the rail.",
"additionalProperties": false,
"required": [],
"properties": {
"max_speed": {
"type": "number",
"default": 0.4,
"description": "Maximum speed that this entity will move at when on the rail",
"title": "Maximum Speed"
}
},
"examples": [{ "max_speed": 0.4 }]
},
"CAD": {
"description": "Defines the behavior of the entity when the rail gets activated or deactivated.",
"type": "object",
"title": "Rail Sensor",
"additionalProperties": false,
"required": [],
"properties": {
"check_block_types": {
"type": "boolean",
"default": false,
"description": "If true, on tick this entity will trigger its on_deactivate behavior",
"title": "Check Block Types"
},
"eject_on_activate": {
"type": "boolean",
"default": true,
"description": "If true, this entity will eject all of its riders when it passes over an activated rail",
"title": "Eject On Activate"
},
"eject_on_deactivate": {
"type": "boolean",
"default": false,
"description": "If true, this entity will eject all of its riders when it passes over a deactivated rail",
"title": "Eject On Deactivate"
},
"on_activate": { "$ref": "#/definitions/H", "description": "Event to call when the rail is activated", "title": "On Activate" },
"on_deactivate": { "$ref": "#/definitions/H", "description": "Event to call when the rail is deactivated", "title": "On Deactivate" },
"tick_command_block_on_activate": {
"type": "boolean",
"default": true,
"description": "If true, command blocks will start ticking when passing over an activated rail",
"title": "Tick Command Block On Activate"
},
"tick_command_block_on_deactivate": {
"type": "boolean",
"default": false,
"description": "If false, command blocks will stop ticking when passing over a deactivated rail",
"title": "Tick Command Block On Deactivate"
}
},
"examples": [
{
"check_block_types": false,
"eject_on_activate": true,
"eject_on_deactivate": false,
"tick_command_block_on_activate": true,
"tick_command_block_on_deactivate": false
}
]
},
"CAE": {
"description": "Defines the ravager's response to their melee attack being blocked.",
"type": "object",
"title": "Ravager Blocked",
"additionalProperties": false,
"required": [],
"properties": {
"knockback_strength": {
"type": "number",
"default": 3,
"description": "The strength with which blocking entities should be knocked back",
"title": "Knockback Strength"
},
"reaction_choices": {
"type": "array",
"description": "A list of weighted responses to the melee attack being blocked",
"title": "Reaction Choices",
"items": {
"additionalProperties": false,
"type": "object",
"properties": {
"weight": { "type": "integer", "title": "Weight", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"value": { "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/H" }
}
}
}
},
"examples": [{ "knockback_strength": 3, "reaction_choices": [] }]
},
"CAF_seats_spec": {
"additionalProperties": false,
"type": "object",
"properties": {
"lock_rider_rotation": {
"type": "number",
"default": 181,
"description": "Angle in degrees that a rider is allowed to rotate while riding this entity. Omit this property for no limit"
},
"max_rider_count": {
"type": "integer",
"default": 0,
"description": "Defines the maximum number of riders that can be riding this entity for this seat to be valid"
},
"min_rider_count": {
"type": "integer",
"default": 0,
"description": "Defines the minimum number of riders that need to be riding this entity before this seat can be used"
},
"position": {
"$ref": "#/definitions/CAG",
"default": [0.0, 0.0, 0.0],
"description": "Position of this seat relative to this entity's position"
},
"rotate_rider_by": { "$ref": "#/definitions/CAH", "description": "Offset to rotate riders by" }
}
},
"CAG": {
"type": "array",
"title": "Vector Of 3 Items",
"description": "An vector of 3 number",
"examples": [[0.0, 0.0, 0.0]],
"items": [
{ "type": "number", "description": "The X component", "title": "X", "default": 0 },
{ "type": "number", "description": "The Y component", "title": "Y", "default": 0 },
{ "type": "number", "description": "The Z component", "title": "Z", "default": 0 }
]
},
"CAH": {
"title": "Molang Number",
"description": "The minecraft molang definition that results in a float",
"anyOf": [{ "type": "string", "minLength": 0 }, { "type": "number" }],
"examples": [0, "query.variant", "(1.0)"]
},
"CAF": {
"description": "Determines whether this entity can be ridden. Allows specifying the different seat positions and quantity.",
"type": "object",
"title": "Rideable",
"additionalProperties": false,
"properties": {
"controlling_seat": {
"type": "integer",
"default": 0,
"description": "The seat that designates the driver of the entity",
"title": "Controlling Seat"
},
"crouching_skip_interact": {
"type": "boolean",
"default": true,
"description": "If true, this entity can't be interacted with if the entity interacting with it is crouching",
"title": "Crouching Skip Interact"
},
"family_types": {
"type": "array",
"items": { "type": "string" },
"description": "List of entities that can ride this entity",
"title": "Family Types"
},
"interact_text": {
"type": "string",
"default": "",
"description": "The text to display when the player can interact with the entity when playing with Touch-screen controls",
"title": "Interact Text"
},
"pull_in_entities": {
"type": "boolean",
"default": false,
"description": "If true, this entity will pull in entities that are in the correct family_types into any available seats",
"title": "Pull In Entities"
},
"rider_can_interact": {
"type": "boolean",
"default": false,
"description": "If true, this entity will be picked when looked at by the rider",
"title": "Rider Can Interact"
},
"seat_count": {
"type": "integer",
"default": 1,
"description": "The number of entities that can ride this entity at the same time",
"title": "Seat Count"
},
"seats": {
"description": "The list of positions and number of riders for each position for entities riding this entity",
"title": "Seats",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/CAF_seats_spec" },
{ "type": "array", "items": { "$ref": "#/definitions/CAF_seats_spec" } }
]
}
},
"examples": [
{
"controlling_seat": 0,
"crouching_skip_interact": true,
"family_types": [],
"interact_text": "",
"pull_in_entities": false,
"rider_can_interact": false,
"seat_count": 1
}
]
},
"CAI": {
"type": "object",
"title": "Scale",
"additionalProperties": false,
"description": "Sets the entity's visual size.",
"required": [],
"properties": {
"value": {
"type": "number",
"default": 0.0,
"description": "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",
"title": "Value"
}
},
"examples": [{ "value": 0.0 }]
},
"CAJ": {
"type": "object",
"title": "Scale By Age",
"additionalProperties": false,
"description": "Defines the entity's size interpolation based on the entity's age.",
"required": [],
"properties": {
"end_scale": { "type": "number", "default": 1, "description": "Ending scale of the entity when it's fully grown", "title": "End Scale" },
"start_scale": { "type": "number", "default": 1, "description": "Initial scale of the newborn entity", "title": "Start Scale" }
},
"examples": [{ "end_scale": 1, "start_scale": 1 }]
},
"CBA": {
"description": "fires off scheduled mob events at time of day events.",
"type": "object",
"title": "Scheduler",
"additionalProperties": false,
"properties": {
"min_delay_secs": {
"type": "integer",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Minimum Delay Secs",
"minimum": 0
},
"max_delay_secs": {
"type": "integer",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Maximum Delay Secs",
"minimum": 0
},
"scheduled_events": {
"type": "array",
"description": "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.",
"title": "Scheduled Events",
"items": {
"additionalProperties": false,
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Scheduled Events",
"properties": { "filters": { "$ref": "#/definitions/BA" }, "event": { "$ref": "#/definitions/H" } }
}
}
},
"examples": [{ "min_delay_secs": 0, "max_delay_secs": 0, "scheduled_events": [] }]
},
"CBB": {
"description": "Defines a list of items the mob wants to share or pick up. Each item must have the following parameters:",
"type": "object",
"title": "Shareables",
"additionalProperties": false,
"properties": {
"all_items": {
"type": "boolean",
"default": false,
"description": "A bucket for all other items in the game. Note this category is always least priority items.",
"title": "All Items"
},
"all_items_max_amount": {
"type": "integer",
"default": -1,
"description": "Maximum number of this item the mob will hold.",
"title": "All Items Maximum Amount"
},
"all_items_surplus_amount": {
"type": "integer",
"default": -1,
"description": "Number of this item considered extra that the entity wants to share.",
"title": "All Items Surplus Amount"
},
"all_items_want_amount": {
"type": "integer",
"default": -1,
"description": "Number of this item this entity wants to share.",
"title": "All Items Want Amount"
},
"items": {
"type": "array",
"description": "List of items that the entity wants to share",
"items": {
"type": "object",
"title": "Item",
"description": "An Item that the entity wants to share",
"additionalProperties": false,
"properties": {
"admire": {
"type": "boolean",
"description": "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.",
"title": "Admire"
},
"barter": {
"type": "boolean",
"description": "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.",
"title": "Barter"
},
"consume_item": {
"type": "boolean",
"description": "Determines whether the mob will consume the item or not.",
"title": "Consume Item"
},
"craft_into": {
"type": "string",
"description": "Defines the item this entity wants to craft with the item defined above. Should be an item name.",
"title": "Craft Into"
},
"item": { "type": "string", "description": "The name of the item", "$ref": "#/definitions/G" },
"item_aux": { "type": "integer", "description": "Aux value for the item.", "title": "Item Aux" },
"max_amount": { "type": "integer", "description": "Maximum number of this item the mob will hold.", "title": "Maximum Amount" },
"pickup_limit": {
"type": "integer",
"description": "Maximum number of this item the mob will pick up during a single goal tick.",
"title": "Pickup Limit"
},
"priority": {
"type": "integer",
"description": "Prioritizes which items the entity prefers. 0 is the highest priority.",
"title": "Priority"
},
"stored_in_inventory": {
"type": "boolean",
"description": "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.",
"title": "Stored In Inventory"
},
"surplus_amount": {
"type": "integer",
"description": "Number of this item considered extra that the entity wants to share.",
"title": "Surplus Amount"
},
"want_amount": { "type": "integer", "description": "Number of this item this entity wants to have.", "title": "Want Amount" }
}
}
}
},
"examples": [{ "all_items": false, "all_items_max_amount": -1, "all_items_surplus_amount": -1, "all_items_want_amount": -1, "items": [] }]
},
"CBC": {
"description": "Defines the entity's ranged attack behavior.",
"type": "object",
"title": "Shooter",
"additionalProperties": false,
"properties": {
"aux_val": { "type": "integer", "title": "Aux Val", "default": -1, "description": "ID of the Potion effect to be applied on hit" },
"def": {
"title": "Def",
"type": "string",
"description": "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"
},
"type": { "title": "Type", "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "aux_val": -1, "def": "example", "type": "example" }]
},
"CBD": {
"description": "Defines the entity's `sit` state.",
"type": "object",
"title": "Sittable",
"additionalProperties": false,
"required": [],
"properties": {
"sit_event": { "$ref": "#/definitions/H", "description": "Event to run when the entity enters the `sit` state", "title": "Sit Event" },
"stand_event": { "$ref": "#/definitions/H", "description": "Event to run when the entity exits the `sit` state", "title": "Stand Event" }
}
},
"CBE": {
"type": "object",
"title": "Skin Id",
"additionalProperties": false,
"description": "Skin ID value. Can be used to differentiate skins, such as base skins for villagers.",
"required": [],
"properties": {
"value": {
"type": "integer",
"default": 0,
"description": "The ID of the skin. By convention, 0 is the ID of the base skin",
"title": "Value"
}
},
"examples": [{ "value": 0 }]
},
"CBF": {
"type": "object",
"title": "Sound Volume",
"additionalProperties": false,
"description": "Sets the entity's base volume for sound effects.",
"required": [],
"properties": {
"value": { "type": "number", "default": 1.0, "description": "The value of the volume the entity uses for sound effects", "title": "Value" }
},
"examples": [{ "value": 1.0 }]
},
"CBG_entity_spawn": {
"additionalProperties": false,
"type": "object",
"title": "Entity Spawn",
"properties": {
"filters": { "description": "If present, the specified entity will only spawn if the filter evaluates to true", "$ref": "#/definitions/BA" },
"max_wait_time": {
"type": "integer",
"default": 600,
"description": "Maximum amount of time to randomly wait in seconds before another entity is spawned.",
"title": "Maximum Wait Time"
},
"min_wait_time": {
"type": "integer",
"default": 300,
"description": "Minimum amount of time to randomly wait in seconds before another entity is spawned.",
"title": "Minimum Wait Time"
},
"num_to_spawn": {
"type": "integer",
"default": 1,
"description": "The number of entities of this type to spawn each time that this triggers.",
"title": "Num To Spawn"
},
"should_leash": {
"type": "boolean",
"default": false,
"description": "If true, this the spawned entity will be leashed to the parent.",
"title": "Should Leash"
},
"single_use": {
"type": "boolean",
"default": false,
"description": "If true, this component will only ever spawn the specified entity once.",
"title": "Single Use"
},
"spawn_entity": {
"type": "string",
"default": "",
"description": "Identifier of the entity to spawn, leave empty to spawn the item defined above instead.",
"title": "Spawn Entity"
},
"spawn_event": {
"type": "string",
"default": "minecraft:entity_born",
"description": "Event to call when the entity is spawned.",
"title": "Spawn Event"
},
"spawn_item": { "type": "string", "default": "egg", "description": "Item identifier of the item to spawn.", "title": "Spawn Item" },
"spawn_method": { "type": "string", "default": "born", "description": "Method to use to spawn the entity.", "title": "Spawn Method" },
"spawn_sound": {
"type": "string",
"default": "plop",
"description": "Identifier of the sound effect to play when the entity is spawned.",
"title": "Spawn Sound"
}
}
},
"CBG": {
"type": "object",
"description": "Adds a timer after which this entity will spawn another entity or item (similar to vanilla's chicken's egg-laying behavior).",
"title": "Spawn Entity",
"additionalProperties": false,
"properties": {
"entities": {
"title": "Entities",
"description": "The entities to spawn",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/CBG_entity_spawn" },
{ "type": "array", "items": { "type": "object", "$ref": "#/definitions/CBG_entity_spawn" } }
]
}
}
},
"CBH": {
"type": "object",
"title": "Spell Effects",
"additionalProperties": false,
"description": "Defines what mob effects to add and remove to the entity when adding this component.",
"required": [],
"properties": {
"add_effects": {
"type": "array",
"description": "List of effects to add to this entity after adding this component",
"items": {
"oneOf": [
{ "type": "string" },
{
"type": "object",
"properties": {
"effect": { "type": "string" },
"duration": { "type": "integer" },
"display_on_screen_animation": { "type": "boolean" }
}
}
]
},
"title": "Add Effects"
},
"remove_effects": {
"title": "Remove Effects",
"description": "List of identifiers of effects to be removed from this entity after adding this component",
"oneOf": [
{
"type": "array",
"items": {
"type": ["string"],
"title": "Spell Effect ID",
"description": "identifier of the effect to be removed from this entity after adding this component"
}
},
{ "type": "string" }
]
}
},
"examples": [{ "add_effects": [] }]
},
"CBI": {
"type": "object",
"title": "Tameable",
"description": "Defines the rules for a mob to be tamed by the player.",
"required": [],
"additionalProperties": false,
"properties": {
"probability": {
"type": "number",
"default": 1,
"description": "The chance of taming the entity with each item use between 0.0 and 1.0, where 1.0 is 100%",
"minimum": 0,
"maximum": 1,
"title": "Probability"
},
"tame_event": { "title": "Tame Event", "$ref": "#/definitions/H", "description": "Event to run when this entity becomes tamed" },
"tame_items": {
"title": "Tame Items",
"description": "The list of items that can be used to tame this entity",
"oneOf": [{ "type": "array", "items": { "$ref": "#/definitions/G" } }, { "$ref": "#/definitions/G" }]
}
},
"examples": [{ "probability": 1 }]
},
"CBJ_feed_items": {
"type": "object",
"description": "The list of items that can be used to increase the entity's temper and speed up the taming process",
"properties": {
"item": {
"$ref": "#/definitions/G",
"description": "Name of the item this entity likes and can be used to increase this entity's temper",
"title": "Item"
},
"temper_mod": {
"type": "number",
"default": 0,
"description": "The amount of temper this entity gains when fed this item",
"title": "Temper Mod"
}
}
},
"CBJ_auto_reject_items": {
"type": "object",
"description": "The list of items that this entity dislikes and will cause it to get angry if used while untamed.",
"properties": {
"item": {
"$ref": "#/definitions/G",
"description": "Name of the item this entity dislikes and will cause it to get angry if used while untamed"
}
}
},
"CBJ": {
"description": "Allows the Entity to be tamed by mounting it.",
"type": "object",
"title": "Tamemount",
"additionalProperties": false,
"properties": {
"attempt_temper_mod": {
"type": "integer",
"default": 5,
"description": "The amount the entity's temper will increase when mounted.",
"title": "Attempt Temper Mod"
},
"auto_reject_items": {
"title": "Auto Reject Items",
"description": "The list of items that, if carried while interacting with the entity, will anger it.",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/CBJ_auto_reject_items" },
{ "type": "array", "items": { "$ref": "#/definitions/CBJ_auto_reject_items" } }
]
},
"feed_text": { "type": "string", "description": "The text that shows in the feeding interact button", "title": "Feed Text" },
"feed_items": {
"description": "The list of items that can be used to increase the entity's temper and speed up the taming process",
"title": "Feed Items",
"oneOf": [
{ "type": "object", "$ref": "#/definitions/CBJ_feed_items" },
{ "type": "array", "items": { "$ref": "#/definitions/CBJ_feed_items" } }
]
},
"max_temper": {
"type": "integer",
"default": 100,
"description": "The maximum value for the entity's random starting temper",
"title": "Maximum Temper"
},
"min_temper": {
"type": "integer",
"default": 0,
"description": "The minimum value for the entity's random starting temper",
"title": "Minimum Temper"
},
"ride_text": { "type": "string", "description": "The text that shows in the riding interact button", "title": "Ride Text" },
"tame_event": { "$ref": "#/definitions/H", "description": "Event that triggers when the entity becomes tamed", "title": "Tame Event" }
},
"examples": [{ "attempt_temper_mod": 5, "feed_text": "example", "max_temper": 100, "min_temper": 0, "ride_text": "example" }]
},
"CCA": {
"description": "Defines the entity's range within which it can see or sense other entities to target them.",
"type": "object",
"title": "Target Nearby Sensor",
"additionalProperties": false,
"required": [],
"properties": {
"must_see": {
"type": "boolean",
"default": false,
"description": "Whether the other entity needs to be visible to trigger `inside` events",
"title": "Must See"
},
"inside_range": {
"type": "number",
"default": 1,
"description": "Maximum distance in blocks that another entity will be considered in the `inside` range",
"title": "Inside Range"
},
"on_inside_range": {
"$ref": "#/definitions/H",
"description": "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",
"title": "On Inside Range"
},
"on_outside_range": {
"$ref": "#/definitions/H",
"description": "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",
"title": "On Outside Range"
},
"on_vision_lost_inside_range": {
"$ref": "#/definitions/H",
"description": "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",
"title": "On Vision Lost Inside Range"
},
"outside_range": {
"type": "number",
"default": 5,
"description": "Maximum distance in blocks that another entity will be considered in the `outside` range",
"title": "Outside Range"
}
},
"examples": [{ "must_see": false, "inside_range": 1, "outside_range": 5 }]
},
"CCB": {
"description": "Defines an entity's teleporting behavior.",
"type": "object",
"title": "Teleport",
"additionalProperties": false,
"required": [],
"properties": {
"dark_teleport_chance": {
"type": "number",
"default": 0.01,
"description": "Modifies the chance that the entity will teleport if the entity is in darkness",
"title": "Dark Teleport Chance"
},
"light_teleport_chance": {
"type": "number",
"default": 0.01,
"description": "Modifies the chance that the entity will teleport if the entity is in daylight",
"title": "Light Teleport Chance"
},
"max_random_teleport_time": {
"type": "number",
"default": 20,
"description": "Maximum amount of time in seconds between random teleports",
"title": "Maximum Random Teleport Time"
},
"min_random_teleport_time": {
"type": "number",
"default": 0,
"description": "Minimum amount of time in seconds between random teleports",
"title": "Minimum Random Teleport Time"
},
"random_teleport_cube": {
"title": "Random Teleport Cube",
"description": "Entity will teleport to a random position within the area defined by this cube",
"type": "array",
"default": [32.0, 16.0, 32.0],
"items": [
{ "type": "number", "title": "A" },
{ "type": "number", "title": "B" },
{ "type": "number", "title": "C" }
]
},
"random_teleports": {
"type": "boolean",
"default": true,
"description": "If true, the entity will teleport randomly",
"title": "Random Teleports"
},
"target_distance": {
"type": "number",
"default": 16,
"description": "Maximum distance the entity will teleport when chasing a target",
"title": "Target Distance"
},
"target_teleport_chance": {
"type": "number",
"default": 1,
"description": "The chance that the entity will teleport between 0.0 and 1.0. 1.0 means 100%",
"title": "Target Teleport Chance"
}
},
"examples": [
{
"dark_teleport_chance": 0.01,
"light_teleport_chance": 0.01,
"max_random_teleport_time": 20,
"min_random_teleport_time": 0,
"random_teleport_cube": [],
"random_teleports": true,
"target_distance": 16,
"target_teleport_chance": 1
}
]
},
"CCC": {
"description": "Defines if the entity ticks the world and the radius around it to tick.",
"type": "object",
"title": "Tick World",
"additionalProperties": false,
"required": [],
"properties": {
"distance_to_players": {
"type": "number",
"default": 128,
"description": "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.",
"minimum": 128,
"title": "Distance To Players"
},
"never_despawn": {
"type": "boolean",
"default": true,
"description": "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.",
"title": "Never Despawn"
},
"radius": {
"type": "integer",
"default": 2,
"description": "The area around the entity to tick. Default: 2. Allowed range: 2-6.",
"minimum": 2,
"maximum": 6,
"title": "Radius"
}
},
"examples": [{ "distance_to_players": 128, "never_despawn": true, "radius": 2 }]
},
"CCD": {
"type": "object",
"title": "Timer",
"description": "Adds a timer after which an event will fire.",
"required": [],
"additionalProperties": false,
"properties": {
"looping": {
"type": "boolean",
"default": true,
"description": "If true, the timer will restart every time after it fires",
"title": "Looping"
},
"randomInterval": {
"type": "boolean",
"default": true,
"description": "If true, the amount of time on the timer will be random between the Minimum and Maximum values specified in time",
"title": "Random Interval"
},
"time": {
"description": "Amount of time in seconds for the timer. Can be specified as a number or a pair of numbers (Minimum and max). Incompatible with random_time_choices.",
"title": "Time",
"oneOf": [
{
"type": "array",
"default": [0.0, 0.0],
"items": [
{ "type": "number", "title": "A" },
{ "type": "number", "title": "B" }
]
},
{ "type": "number", "default": 0 }
]
},
"time_down_event": {
"description": "Event to fire when the time on the timer runs out",
"title": "Time Down Event",
"$ref": "#/definitions/H"
},
"random_time_choices": {
"type": "array",
"default": [],
"description": "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.",
"title": "Random Time Choices",
"items": {
"title": "Random Time Choices",
"description": "representing one value in seconds that can be picked before firing the event and an optional weight. Incompatible with time.",
"type": "object",
"additionalProperties": false,
"properties": {
"weight": {
"type": "integer",
"description": "The weight on how likely this section is to trigger",
"$comment": "UNDOCUMENTED",
"title": "Weight"
},
"value": { "type": "integer", "description": "UNDOCUMENTED: value", "title": "Value" }
}
}
}
},
"examples": [{ "looping": true, "randomInterval": true, "random_time_choices": [] }]
},
"CCE": {
"description": "Defines this entity's ability to trade with players.",
"type": "object",
"title": "Trade Table",
"additionalProperties": false,
"required": [],
"properties": {
"convert_trades_economy": {
"type": "boolean",
"default": false,
"description": "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.",
"title": "Convert Trades Economy"
},
"display_name": { "type": "string", "description": "Name to be displayed while trading with this entity.", "title": "Display Name" },
"new_screen": {
"type": "boolean",
"default": false,
"description": "Used to determine if trading with entity opens the new trade screen.",
"title": "New Screen"
},
"persist_trades": {
"type": "boolean",
"default": false,
"description": "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.",
"title": "Persist Trades"
},
"table": { "type": "string", "description": "File path relative to the resource pack root for this entity's trades.", "title": "Table" }
},
"examples": [{ "convert_trades_economy": false, "display_name": "example", "new_screen": false, "persist_trades": false, "table": "example" }]
},
"CCF": {
"description": "Defines this entity's ability to trade with players.",
"type": "object",
"title": "Transformation",
"additionalProperties": false,
"properties": {
"add": {
"type": "object",
"description": "List of components to add to the entity after the transformation",
"title": "Add",
"additionalProperties": false,
"properties": { "component_groups": { "type": "array", "description": "Names of component groups to add", "items": { "type": "string" } } }
},
"begin_transform_sound": {
"type": "string",
"description": "Sound to play when the transformation starts",
"title": "Begin Transform Sound"
},
"delay": {
"description": "Defines the properties of the delay for the transformation",
"title": "Delay",
"oneOf": [
{ "type": "number" },
{
"type": "object",
"properties": {
"block_assist_chance": {
"type": "number",
"default": 0,
"description": "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": {
"type": "number",
"default": 0,
"description": "Chance that, once a block is found, will help speed up the transformation"
},
"block_max": {
"type": "integer",
"default": 0,
"description": "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": {
"type": "integer",
"default": 0,
"description": "Distance in Blocks that the entity will search for blocks that can help the transformation"
},
"block_types": {
"type": "array",
"description": "List of blocks that can help the transformation of this entity",
"items": { "$ref": "#/definitions/JC" }
},
"value": { "type": "number", "default": 0, "description": "Time in seconds before the entity transforms" }
}
}
]
},
"drop_equipment": {
"type": "boolean",
"default": false,
"description": "Cause the entity to drop all equipment upon transformation",
"title": "Drop Equipment"
},
"drop_inventory": {
"type": "boolean",
"default": false,
"description": "Cause the entity to drop all items in inventory upon transformation",
"title": "Drop Inventory"
},
"into": { "type": "string", "default": "", "description": "Entity Definition that this entity will transform into", "title": "Into" },
"keep_level": {
"type": "boolean",
"default": false,
"description": "If this entity has trades and has leveled up, it should maintain that level after transformation.",
"title": "Keep Level"
},
"keep_owner": {
"type": "boolean",
"default": false,
"description": "If this entity is owned by another entity, it should remain owned after transformation.",
"title": "Keep Owner"
},
"preserve_equipment": {
"type": "boolean",
"default": false,
"description": "Cause the entity to keep equipment after going through transformation",
"title": "Preserve Equipment"
},
"transformation_sound": {
"type": "string",
"default": "",
"description": "Sound to play when the entity is done transforming",
"title": "Transformation Sound"
}
},
"examples": [
{
"add": {},
"begin_transform_sound": "example",
"drop_equipment": false,
"drop_inventory": false,
"into": "",
"keep_level": false,
"keep_owner": false,
"preserve_equipment": false,
"transformation_sound": ""
}
]
},
"CCG": {
"type": "object",
"title": "Trust",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"additionalProperties": false,
"properties": {}
},
"CCH": {
"type": "object",
"title": "Trusting",
"description": "Defines the rules for a mob to trust players.",
"required": [],
"additionalProperties": false,
"properties": {
"probability": {
"type": "number",
"default": 1,
"description": "The chance of the entity trusting with each item use between 0.0 and 1.0, where 1.0 is 100%",
"title": "Probability"
},
"trust_event": { "$ref": "#/definitions/H", "description": "Event to run when this entity becomes trusting", "title": "Trust Event" },
"trust_items": {
"title": "Trust Items",
"type": "array",
"description": "The list of items that can be used to get the entity to trust players",
"items": { "$ref": "#/definitions/G", "title": "Trust Item" }
}
},
"examples": [
{ "probability": 1, "trust_event": "self:trust" },
{ "probability": 1, "trust_items": [], "trust_event": "self:trust" }
]
},
"CCI": {
"type": "object",
"title": "Type Family",
"additionalProperties": false,
"description": "Defines the families this entity belongs to.",
"required": ["family"],
"examples": [{ "family": [] }, { "family": ["monster"] }, { "family": ["mob"] }, { "family": ["animal"] }, { "family": ["npc"] }],
"properties": {
"family": {
"type": "array",
"items": { "type": "string", "description": "Family name", "title": "Family", "examples": ["monster", "mob", "animal", "npc"] },
"description": "List of family names",
"title": "Family"
}
}
},
"CCJ": {
"additionalProperties": false,
"type": "object",
"title": "Variant",
"description": "Used to differentiate the component group of a variant of an entity from others (e.g. ocelot, villager) Parameters",
"required": ["value"],
"properties": {
"value": {
"type": "integer",
"default": 0,
"description": "The ID of the variant. By convention, 0 is the ID of the base entity",
"title": "Value"
}
},
"examples": [
{ "value": 0 },
{ "value": 1 },
{ "value": 2 },
{ "value": 3 },
{ "value": 4 },
{ "value": 5 },
{ "value": 6 },
{ "value": 7 },
{ "value": 8 },
{ "value": 9 }
]
},
"CDA": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Underwater Movement",
"additionalProperties": false,
"required": [],
"properties": { "value": { "type": "number", "title": "Value", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" } },
"examples": [{ "value": 0.0 }]
},
"CDB": {
"additionalProperties": false,
"type": "object",
"title": "Walk Animation Speed",
"description": "Sets the speed multiplier for this entity's walk animation speed.",
"required": [],
"properties": {
"value": {
"type": "number",
"default": 1,
"description": "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",
"title": "Value"
}
},
"examples": [{ "value": 1 }]
},
"CDC": {
"description": "Sets that this entity wants to become a jockey.",
"type": "object",
"title": "Wants Jockey",
"additionalProperties": false,
"properties": {}
},
"CDD": {
"description": "Defines the speed with which an entity can move through water.",
"type": "object",
"title": "Water Movement",
"additionalProperties": false,
"required": [],
"properties": {
"drag_factor": {
"type": "number",
"default": 0.8,
"description": "Drag factor to determine movement speed when in water.",
"title": "Drag Factor"
}
},
"examples": [{ "drag_factor": 0.8 }]
},
"CDE": {
"type": "object",
"title": "Admire Item",
"description": "Causes the mob to ignore attackable targets for a given duration.",
"additionalProperties": false,
"properties": {
"cooldown_after_being_attacked": {
"type": "integer",
"default": 0,
"description": "Duration, in seconds, for which mob won't admire items if it was hurt",
"title": "Cooldown After Being Attacked"
},
"duration": { "type": "integer", "default": 10, "description": "Duration, in seconds, that the mob is pacified.", "title": "Duration" }
},
"examples": [{ "cooldown_after_being_attacked": 0, "duration": 10 }]
},
"CDF": {
"type": "object",
"title": "Area Attack",
"description": "A component that does damage to entities that get within range.",
"additionalProperties": false,
"properties": {
"damage_per_tick": {
"type": "integer",
"default": 2,
"description": "How much damage per tick is applied to entities that enter the damage range.",
"title": "Damage Per Tick"
},
"damage_range": {
"type": "number",
"default": 0.2,
"description": "How close a hostile entity must be to have the damage applied.",
"title": "Damage Range"
},
"entity_filter": {
"$ref": "#/definitions/BA",
"description": "Filter to see which entities can be affected by the attack",
"title": "Entity Filter"
},
"cause": { "type": "string", "description": "what causes the attack to occur", "title": "Cause", "$ref": "#/definitions/CA" }
},
"examples": [{ "damage_per_tick": 2, "damage_range": 0.2, "cause": "example" }]
},
"CDG": {
"type": "object",
"title": "Attack Cooldown",
"description": "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.",
"additionalProperties": false,
"properties": {
"attack_cooldown_complete_event": {
"$ref": "#/definitions/BAI",
"description": "Event to be runned when the cooldown is complete.",
"title": "Attack Cooldown Complete Event"
},
"attack_cooldown_time": {
"default": [0.0, 1.0],
"description": "Amount of time in seconds for the cooldown. Can be specified as a number or a pair of numbers (Minimum and max).",
"title": "Attack Cooldown Time",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" }
]
}
}
},
"CDH": {
"type": "object",
"title": "Barter",
"description": "Enables the component to drop an item as a barter exchange.",
"additionalProperties": false,
"properties": {
"barter_table": { "type": "string", "description": "Loot table that's used to drop a random item.", "title": "Barter Table" },
"cooldown_after_being_attacked": {
"type": "integer",
"default": 0,
"description": "Duration, in seconds, for which mob won't barter items if it was hurt",
"title": "Cooldown After Being Attacked"
}
},
"examples": [{ "barter_table": "example", "cooldown_after_being_attacked": 0 }]
},
"CDI": {
"type": "object",
"title": "Block Sensor",
"description": "Fires off a specified event when a block in the block list is broken within the sensor range.",
"additionalProperties": false,
"properties": {
"sensor_radius": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Sensor Radius", "minimum": 0 },
"on_break": {
"type": "array",
"title": "On Break",
"description": "Blocks that will trigger the component when broken and what event will trigger.",
"items": {
"type": "object",
"title": "On Block Broken",
"description": "",
"additionalProperties": false,
"properties": {
"block_list": {
"type": "array",
"title": "Block List",
"description": "Blocks that will trigger the component when broken and what event will trigger.",
"items": { "$ref": "#/definitions/JC", "title": "Block ID" }
},
"on_block_broken": { "type": "string", "title": "On Block Broken", "description": "Event to run when a block breaks" }
}
}
}
},
"examples": [{ "sensor_radius": 0, "on_break": [] }]
},
"CDJ": {
"type": "object",
"title": "Buoyant",
"description": "Enables an entity to float on the specified liquid blocks.",
"additionalProperties": false,
"properties": {
"base_buoyancy": {
"type": "number",
"default": 0,
"description": "Base buoyancy used to calculate how much will a mob float.",
"title": "Base Buoyancy"
},
"apply_gravity": {
"type": "boolean",
"default": true,
"description": "Applies gravity each tick. Causes more of a wave simulation, but will cause more gravity to be applied outside liquids.",
"title": "Apply Gravity"
},
"buoyancy": {
"type": "number",
"default": 1,
"description": "Base buoyancy used to calculate how much will a mob float.",
"title": "Base Buoyancy"
},
"big_wave_probability": {
"type": "number",
"default": 0.03,
"description": "Probability for a big wave hitting the entity. Only used if `simulate_waves` is true.",
"title": "Big Wave Probability"
},
"big_wave_speed": {
"type": "number",
"default": 10,
"description": "Multiplier for the speed to make a big wave. Triggered depending on `big_wave_probability`.",
"title": "Big Wave Speed"
},
"drag_down_on_buoyancy_removed": {
"type": "number",
"default": 0,
"description": "How much an actor will be dragged down when the Buoyancy Component is removed.",
"title": "Drag Down On Buoyancy Removed"
},
"liquid_blocks": {
"type": "array",
"description": "List of blocks this entity can float on. Must be a liquid block.",
"title": "Liquid Blocks",
"items": { "type": "string", "title": "Block ID" }
},
"simulate_waves": {
"type": "boolean",
"default": true,
"description": "Should the movement simulate waves going through.",
"title": "Simulate Waves"
}
},
"examples": [
{
"base_buoyancy": 0,
"apply_gravity": true,
"buoyancy": 1,
"big_wave_probability": 0.03,
"big_wave_speed": 10,
"drag_down_on_buoyancy_removed": 0,
"liquid_blocks": [],
"simulate_waves": true
}
]
},
"CEA": {
"type": "object",
"title": "Celebrate Hunt",
"description": "Specifies hunt celebration behavior.",
"additionalProperties": false,
"properties": {
"broadcast": {
"type": "boolean",
"default": true,
"description": "If true, celebration will be broadcasted to other entities in the radius.",
"title": "Broadcast"
},
"celebration_targets": {
"$ref": "#/definitions/BA",
"description": "The list of conditions that target of hunt must satisfy to initiate celebration.",
"title": "Celeberation Targets"
},
"celebrate_sound": {
"type": "string",
"default": "",
"description": "The sound event to play when the mob is celebrating",
"title": "Celebrate Sound"
},
"duration": { "type": "integer", "default": 4, "description": "Duration, in seconds, of celebration", "title": "Duration" },
"radius": {
"type": "number",
"default": 16,
"description": "If broadcast is enabled, specifies the radius in which it will notify other entities for celebration.",
"title": "Radius"
},
"sound_interval": {
"default": 0,
"description": "The range of time in seconds to randomly wait before playing the sound again",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": {
"range_min": { "type": "number", "title": "Minimum", "description": "Minimum" },
"range_max": { "type": "number", "title": "Maximum", "description": "Maximum" }
}
}
]
}
},
"examples": [{ "broadcast": true, "celebrate_sound": "", "duration": 4, "radius": 16 }]
},
"CEB": {
"type": "object",
"title": "Entity Sensor",
"description": "A component that fires an event when a set of conditions are met by other entities within the defined range.",
"additionalProperties": false,
"properties": {
"maximum_count": {
"type": "integer",
"default": -1,
"description": "The maximum number of entities that must pass the filter conditions for the event to send.",
"title": "Maximum Count"
},
"minimum_count": {
"type": "integer",
"default": 1,
"description": "The minimum number of entities that must pass the filter conditions for the event to send.",
"title": "Minimum Count"
},
"relative_range": {
"type": "boolean",
"default": true,
"description": "If true the sensor range is additive on top of the entity's size.",
"title": "Relative Range"
},
"require_all": {
"type": "boolean",
"default": false,
"description": "If true requires all nearby entities to pass the filter conditions for the event to send.",
"title": "Require All"
},
"sensor_range": {
"type": "number",
"default": 10,
"description": "The maximum distance another entity can be from this and have the filters checked against it.",
"title": "Sensor Range"
},
"event_filters": { "$ref": "#/definitions/BA" },
"event": { "title": "Event", "description": "event", "type": "string" }
},
"examples": [{ "maximum_count": -1, "minimum_count": 1, "relative_range": true, "require_all": false, "sensor_range": 10, "event": "example" }]
},
"CEC": {
"type": "object",
"title": "Equip Item",
"description": "The entity puts on the desired equipment.",
"additionalProperties": false,
"properties": {}
},
"CED": {
"type": "object",
"title": "Experience Reward",
"description": "Defines the amount of experience rewarded when the entity dies or is successfully bred.",
"additionalProperties": false,
"properties": {
"on_bred": {
"type": "string",
"default": 0,
"description": "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.",
"title": "On Bred"
},
"on_death": {
"type": "string",
"default": 0,
"description": "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.",
"title": "On Death"
}
},
"examples": [{ "on_bred": 0, "on_death": 0 }]
},
"CEE": {
"type": "object",
"title": "Group Size",
"description": "Keeps track of entity group size in the given radius.",
"additionalProperties": false,
"properties": {
"filters": {
"$ref": "#/definitions/BA",
"description": "The list of conditions that must be satisfied for other entities to be counted towards group size."
},
"radius": { "type": "number", "default": 16, "description": "Radius from center of entity.", "title": "Radius" }
},
"examples": [{ "radius": 16 }]
},
"CEF": {
"type": "object",
"title": "Grows Crop",
"description": "Could increase crop growth when entity walks over crop.",
"additionalProperties": false,
"properties": {
"chance": {
"type": "number",
"default": 0,
"description": "Value between 0-1. Chance of success per tick.",
"minimum": 0,
"maximum": 1,
"title": "Chance"
},
"charges": { "type": "integer", "default": 10, "description": "Number of charges", "title": "Charges" }
},
"examples": [{ "chance": 0, "charges": 10 }]
},
"CEG": {
"type": "object",
"title": "Home",
"description": "Saves a home pos for when the the entity is spawned.",
"additionalProperties": false,
"properties": {
"restriction_radius": {
"title": "Restriction Radius",
"description": "The radius that the entity will be restricted to in relation to its home",
"type": "integer",
"default": -1
},
"home_block_list": {
"title": "Home Block List",
"description": "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",
"type": "array",
"items": {
"title": "Home Block",
"description": "Optional block 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",
"type": "string",
"$ref": "#/definitions/G"
}
}
},
"examples": [{ "restriction_radius": -1, "home_block_list": [] }]
},
"CEH": {
"type": "object",
"title": "Instant Despawn",
"description": "Despawns the Actor immediately.",
"additionalProperties": false,
"properties": {
"remove_child_entities": {
"type": "boolean",
"default": false,
"description": "If true, all entities linked to this entity in a child relationship (eg. leashed) will also be despawned.",
"title": "Remove Child Entities"
}
},
"examples": [{ "remove_child_entities": false }]
},
"CEI": {
"type": "object",
"title": "Mob Effect",
"description": "A component that applies a mob effect to entities that get within range.",
"additionalProperties": false,
"properties": {
"effect_range": {
"type": "number",
"default": 0.2,
"description": "How close a hostile entity must be to have the mob effect applied.",
"title": "Effect Range"
},
"effect_time": {
"type": "integer",
"default": 10,
"description": "How long the applied mob effect lasts in seconds.",
"title": "Effect Time"
},
"mob_effect": {
"type": "string",
"default": "",
"description": "The mob effect that is applied to entities that enter this entities effect range.",
"title": "Mob Effect"
},
"entity_filter": { "$ref": "#/definitions/BA", "title": "Entity Filter", "description": "Filter to use for conditions" }
},
"examples": [{ "effect_range": 0.2, "effect_time": 10, "mob_effect": "" }]
},
"CEJ": {
"title": "Movement.hover",
"description": "This move control causes the mob to hover.",
"type": "object",
"additionalProperties": false,
"properties": {
"max_turn": {
"type": "number",
"default": 30,
"description": "The maximum number in degrees the mob can turn per tick.",
"title": "Maximum Turn"
}
},
"examples": [{ "max_turn": 30 }]
},
"CFA": {
"title": "Navigation.hover",
"description": "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.",
"type": "object",
"additionalProperties": false,
"properties": {
"avoid_damage_blocks": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid blocks that cause damage when finding a path",
"title": "Avoid Damage Blocks"
},
"avoid_portals": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid portals (like nether portals) when finding a path",
"title": "Avoid Portals"
},
"avoid_sun": {
"type": "boolean",
"default": false,
"description": "Whether or not the pathfinder should avoid tiles that are exposed to the sun when creating paths",
"title": "Avoid Sun"
},
"avoid_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder to avoid water when creating a path",
"title": "Avoid Water"
},
"blocks_to_avoid": {
"type": "array",
"description": "Tells the pathfinder which blocks to avoid when creating a path",
"title": "Blocks To Avoid",
"items": { "title": "Block", "description": "Tells the pathfinder which blocks to avoid when creating a path", "$ref": "#/definitions/BHD" }
},
"can_breach": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can jump out of water (like a dolphin)",
"title": "Can Breach"
},
"can_break_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door and break it",
"title": "Can Break Doors"
},
"can_jump": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can jump up blocks",
"title": "Can Jump"
},
"can_open_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed door assuming the AI will open the door",
"title": "Can Open Doors"
},
"can_open_iron_doors": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can path through a closed iron door assuming the AI will open the door",
"title": "Can Open Iron Doors"
},
"can_pass_doors": {
"type": "boolean",
"default": true,
"description": "Whether a path can be created through a door",
"title": "Can Pass Doors"
},
"can_path_from_air": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder that it can start pathing when in the air",
"title": "Can Path From Air"
},
"can_path_over_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the lava",
"title": "Can Path Over Lava"
},
"can_path_over_water": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel on the surface of the water",
"title": "Can Path Over Water"
},
"can_sink": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it will be pulled down by gravity while in water",
"title": "Can Sink"
},
"can_swim": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can path anywhere through water and plays swimming animation along that path",
"title": "Can Swim"
},
"can_walk": {
"type": "boolean",
"default": true,
"description": "Tells the pathfinder whether or not it can walk on the ground outside water",
"title": "Can Walk"
},
"can_walk_in_lava": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can travel in lava like walking on ground",
"title": "Can Walk In Lava"
},
"is_amphibious": {
"type": "boolean",
"default": false,
"description": "Tells the pathfinder whether or not it can walk on the ground underwater",
"title": "Is Amphibious"
}
},
"examples": [
{},
{ "avoid_damage_blocks": true, "can_pass_doors": true, "can_jump": true },
{
"avoid_damage_blocks": false,
"avoid_portals": false,
"avoid_sun": false,
"avoid_water": false,
"blocks_to_avoid": [],
"can_breach": false,
"can_break_doors": false,
"can_jump": true,
"can_open_doors": false,
"can_open_iron_doors": false,
"can_pass_doors": true,
"can_path_from_air": false,
"can_path_over_lava": false,
"can_path_over_water": false,
"can_sink": true,
"can_swim": false,
"can_walk": true,
"can_walk_in_lava": false,
"is_amphibious": false
}
]
},
"CFB_rangeXYZ": {
"type": "array",
"items": [
{ "type": "number", "title": "X" },
{ "type": "number", "title": "Y" },
{ "type": "number", "title": "Z" }
]
},
"CFB": {
"type": "object",
"title": "Npc",
"description": "A component that applies a mob effect to entities that get within range.",
"additionalProperties": false,
"properties": {
"npc_data": {
"type": "object",
"title": "Npc Data",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"portrait_offsets": {
"type": "object",
"title": "Portrait Offsets",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"translate": {
"$ref": "#/definitions/CFB_rangeXYZ",
"title": "Translate",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"scale": { "$ref": "#/definitions/CFB_rangeXYZ", "title": "Scale", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
}
},
"picker_offsets": {
"type": "object",
"title": "Picker Offsets",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"translate": {
"$ref": "#/definitions/CFB_rangeXYZ",
"title": "Translate",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"scale": { "$ref": "#/definitions/CFB_rangeXYZ", "title": "Scale", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
}
},
"skin_list": {
"type": "array",
"title": "Skin List",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": {
"type": "object",
"title": "Skin",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"variant": { "title": "Variant", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "integer", "minimum": 0 }
}
}
}
}
}
},
"examples": [{ "npc_data": {} }]
},
"CFC": {
"description": "Defines the entity's strength to carry items.",
"type": "object",
"title": "Strength",
"additionalProperties": false,
"properties": {
"max": { "type": "integer", "default": 5, "description": "The maximum strength of this entity", "title": "Maximum" },
"value": { "type": "integer", "default": 1, "description": "The initial value of the strength", "title": "Value" }
},
"examples": [{ "max": 5, "value": 1 }]
},
"CFD": {
"description": "Defines the entity's trail to carry items.",
"type": "object",
"title": "Trail",
"additionalProperties": false,
"properties": {
"block_type": {
"type": "string",
"default": "air",
"description": "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 ().",
"title": "Block Type"
},
"spawn_filter": {
"$ref": "#/definitions/BA",
"description": "One or more conditions that must be met in order to cause the chosen block type to spawn.",
"title": "Spawn Filter"
},
"spawn_offset": {
"type": "array",
"default": [0, 0, 0],
"description": "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(-/+).",
"title": "Spawn Offset",
"items": [
{ "type": "number", "title": "X" },
{ "type": "number", "title": "Y" },
{ "type": "number", "title": "Z" }
]
}
},
"examples": [{ "block_type": "air", "spawn_offset": [0, 0, 0] }]
},
"CFE": {
"type": "object",
"title": "Hide",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {}
},
"CFF": {
"type": "object",
"title": "Horse.jump Strength",
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"value": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Value",
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
},
{ "type": "number" }
]
}
}
},
"CFG": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Trade Resupply",
"additionalProperties": false,
"properties": {}
},
"CFI": {
"additionalProperties": false,
"type": "integer",
"title": "Priority",
"minimum": 0,
"description": "Allows the mob to drink potions based on specified environment conditions."
},
"CFH": {
"type": "object",
"title": "Admire Item",
"description": "Enables the mob to admire items that have been configured as admirable. Must be used in combination with the admire_item component.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"admire_item_sound": {
"type": "string",
"default": "",
"description": "The sound event to play when admiring the item",
"title": "Admire Item Sound"
},
"on_admire_item_start": {
"$ref": "#/definitions/H",
"title": "On Admire Item Start",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"on_admire_item_stop": {
"$ref": "#/definitions/H",
"title": "On Admire Item Stop",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"sound_interval": {
"default": 0,
"description": "The range of time in seconds to randomly wait before playing the sound again.",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
}
]
}
},
"examples": [{ "admire_item_sound": "" }]
},
"CFJ": {
"type": "object",
"title": "Avoid Block",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"tick_interval": { "type": "integer", "title": "Tick Interval", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"search_range": { "type": "integer", "title": "Search Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"search_height": { "type": "integer", "title": "Search Height", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"sprint_speed_modifier": { "type": "number", "title": "Sprint Speed Modifier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"target_selection_method": {
"type": "string",
"title": "Target Selection Method",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"target_blocks": {
"type": "array",
"title": "Target Blocks",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": { "type": "string", "title": "Block ID", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"avoid_block_sound": { "type": "string", "title": "Avoid Block Sound", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"walk_speed_modifier": { "type": "number", "title": "Walk Speed Modifier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"on_escape": {
"type": "array",
"title": "Walk Speed Modifier",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": { "$ref": "#/definitions/H" }
},
"sound_interval": {
"default": 0,
"description": "The range of time in seconds to randomly wait before playing the sound again.",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
}
]
}
},
"examples": [
{
"tick_interval": 0,
"search_range": 0,
"search_height": 0,
"sprint_speed_modifier": 0.0,
"target_selection_method": "example",
"target_blocks": [],
"avoid_block_sound": "example",
"walk_speed_modifier": 0.0,
"on_escape": []
}
]
},
"CGB_entity_definition": {
"description": "The entity type",
"title": "Entity Type",
"type": "object",
"properties": {
"filters": { "type": "object", "$ref": "#/definitions/BA" },
"max_dist": {
"type": "number",
"description": "Maximum distance this mob can be away to be a valid choice",
"default": 16,
"title": "Maximum Dist"
},
"walk_speed_multiplier": {
"type": "number",
"description": "Multiplier for the walking speed. A value of 1.0 means the speed is unchanged",
"default": 16,
"title": "Walk Speed Multiplier"
},
"sprint_speed_multiplier": {
"type": "number",
"description": "Multiplier for the running speed. A value of 1.0 means the speed is unchanged",
"default": 16,
"title": "Sprint Speed Multiplier"
},
"must_see": {
"type": "boolean",
"description": "If true, the mob has to be visible to be a valid choice",
"default": false,
"title": "Must See"
},
"must_see_forget_duration": {
"type": "number",
"description": "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",
"default": 3,
"title": "Must See Forget Duration"
}
}
},
"CGB": {
"title": "Entity Types",
"oneOf": [{ "type": "array", "items": { "$ref": "#/definitions/CGB_entity_definition" } }, { "$ref": "#/definitions/CGB_entity_definition" }]
},
"CGA": {
"additionalProperties": false,
"description": "Allows this entity to avoid certain mob types.",
"type": "object",
"title": "Avoid Mob Type",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"max_dist": { "type": "number", "default": 0, "description": "Maximum distance to look for an entity", "title": "Maximum Dist" },
"max_flee": {
"type": "number",
"default": 0.5,
"description": "Distance in blocks within the mob considers it should stop fleeing.",
"title": "Maximum Flee"
},
"walk_speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Multiplier for walking speed. 1.0 means keep the regular speed, while higher numbers make the walking speed faster",
"title": "Walk Speed Multiplier"
},
"sprint_speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Multiplier for running speed. 1.0 means keep the regular speed, while higher numbers make the running speed faster",
"title": "Sprint Speed Multiplier"
},
"probability_per_strength": {
"type": "number",
"default": 1.0,
"description": "Determines how likely it is that this entity will stop avoiding another entity based on that entity's strength",
"title": "Probability Per Strength"
},
"ignore_visibility": {
"type": "boolean",
"default": false,
"description": "If true, visbility between this entity and the mob type will not be checked.",
"title": "Ignore Visibility"
},
"entity_types": { "$ref": "#/definitions/CGB", "description": "UNDOCUMENTED: entity types", "title": "Entity Types" },
"avoid_mob_sound": { "title": "Avoid Mob Sound", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" },
"remove_target": { "title": "Remove Target", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "boolean" },
"on_escape_event": { "$ref": "#/definitions/H", "title": "On Escape Event", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"sound_interval": {
"default": 0,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
}
]
}
},
"examples": [
{
"max_dist": 0,
"max_flee": 0.5,
"walk_speed_multiplier": 1.0,
"sprint_speed_multiplier": 1.0,
"probability_per_strength": 1.0,
"ignore_visibility": false,
"avoid_mob_sound": "example",
"remove_target": true
}
]
},
"CGC": {
"type": "object",
"title": "Barter",
"description": "Enables the mob to barter for items that have been configured as barter currency. Must be used in combination with the barter component",
"additionalProperties": false,
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CGD": {
"type": "object",
"title": "Beg",
"additionalProperties": false,
"description": "Allows this mob to look at and follow the player that holds food they like.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"items": {
"type": "array",
"description": "List of items that this mob likes",
"items": { "type": "string", "description": "List of items that this mob likes", "title": "Properties", "$ref": "#/definitions/G" },
"title": "Properties"
},
"look_distance": { "type": "number", "default": 8, "description": "Distance in blocks the mob will beg from", "title": "Look Distance" },
"look_time": {
"description": "The range of time in seconds this mob will stare at the player holding a food they like, begging for it",
"$ref": "#/definitions/ID",
"default": [2, 4],
"title": "Look Time"
}
},
"examples": [{ "items": [], "look_distance": 8 }]
},
"CGF": {
"additionalProperties": false,
"default": 1.0,
"description": "Movement speed multiplier of the mob when using this AI Goal.",
"type": "number",
"title": "Speed Multiplier"
},
"CGE": {
"type": "object",
"title": "Break Door",
"description": "Allows this mob to break doors.",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } },
"additionalProperties": false
},
"CGG": {
"additionalProperties": false,
"type": "object",
"title": "Breed",
"description": "Allows this mob to breed with other mobs.",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"CGH": {
"type": "object",
"title": "Celebrate",
"description": "This allows the mob celebrate by jumping up and playing a sound periodically.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"celebration_sound": { "type": "string", "default": "", "description": "The sound to occasionally play.", "title": "Celebration Sound" },
"duration": { "type": "number", "default": 1, "description": "The duration of the celebration (in seconds).", "title": "Duration" },
"jump_interval": {
"default": 0,
"description": "The range of time in seconds to randomly wait before jumping again.",
"title": "Jump Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
}
]
},
"on_celebration_end_event": {
"$ref": "#/definitions/BAI",
"description": "The event to trigger when the goal's duration expires.",
"title": "On Celebration End Event"
},
"sound_interval": {
"default": 0,
"description": "The range of time in seconds to randomly wait before playing the sound again.",
"title": "Sound Interval",
"oneOf": [
{
"type": "array",
"items": [
{ "type": "number", "title": "Maximum" },
{ "type": "number", "title": "Maximum" }
]
},
{ "type": "number" },
{
"type": "object",
"additionalProperties": false,
"properties": { "range_min": { "type": "number" }, "range_max": { "type": "number" } }
}
]
}
},
"examples": [{ "celebration_sound": "", "duration": 1 }]
},
"CGI": {
"additionalProperties": false,
"type": "object",
"title": "Charge Attack",
"description": "Allows the mob to attack its target by running at it.",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"CGJ": {
"type": "object",
"title": "Charge Held Item",
"description": "Allows this mob to charge and use their held item.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"items": {
"type": "array",
"title": "Items",
"description": "The list of items that can be used to charge the held item.",
"items": { "type": "string", "description": "Items names to be used.", "title": "Item ID" }
}
},
"examples": [{ "items": [] }]
},
"CHA": {
"type": "object",
"title": "Circle Around Anchor",
"additionalProperties": false,
"description": "Allows the mob to move in a circle around a point or a target.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Movement speed multiplier of the mob when using this AI Goal",
"title": "Speed Multiplier"
},
"radius_range": {
"$ref": "#/definitions/ID",
"default": [5.0, 15.0],
"description": "Range of radius in blocks of the circle to move around.",
"title": "Radius Range"
},
"radius_change_chance": {
"type": "integer",
"default": 250,
"description": "A random value to determine when to increase the size of the radius up to the maximum. This has a 1/value chance every tick to do so.",
"title": "Radius Change Chance"
},
"height_above_target_range": {
"$ref": "#/definitions/ID",
"default": [0.0, 0.0],
"description": "When the mob finds a target, the range of height in blocks above the target to start the anchor point.",
"title": "Height Above Target Range"
},
"height_offset_range": {
"$ref": "#/definitions/ID",
"default": [0.0, 0.0],
"description": "The range of height in blocks offset the mob can have from it's anchor point.",
"title": "Height Offset Range"
},
"height_change_chance": {
"type": "integer",
"default": 350,
"description": "A random value to determine when to change the height of the mob from the anchor point. This has a 1/value chance every tick to do so.",
"title": "Height Change Chance"
},
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"radius_change": { "type": "number", "title": "Radius Change", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"radius_adjustment_chance": {
"type": "number",
"title": "Radius Adjustment Chance",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"height_adjustment_chance": {
"type": "number",
"title": "Height Adjustment Chance",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"angle_change": { "type": "number", "title": "Angle Change", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"speed_multiplier": 1.0,
"radius_change_chance": 250,
"height_change_chance": 350,
"goal_radius": 0.5,
"radius_change": 0.0,
"radius_adjustment_chance": 0.0,
"height_adjustment_chance": 0.0,
"angle_change": 0.0
}
]
},
"CHB": {
"additionalProperties": false,
"type": "object",
"title": "Controlled By Player",
"description": "Allows the mob to be controlled by the player.",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"mount_speed_multiplier": {
"type": "number",
"default": 1,
"description": "Speed multiplier of mount when controlled by player, defaults to 1.0f",
"title": "Mount Speed Multiplier"
}
},
"examples": [{ "mount_speed_multiplier": 1 }]
},
"CHC": {
"type": "object",
"title": "Defend Trusted Target",
"description": "Allows the mob to target another mob that hurts an entity it trusts.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"aggro_sound": { "type": "string", "default": "", "description": "Sound to occasionally play while defending.", "title": "Aggro Sound" },
"attack_interval": { "type": "integer", "default": 0, "description": "Time in seconds between attacks", "title": "Attack Interval" },
"must_see": {
"type": "boolean",
"default": false,
"description": "If true, only entities in this mob's viewing range can be selected as targets",
"title": "Must See"
},
"must_see_forget_duration": {
"type": "number",
"default": 3,
"description": "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",
"title": "Must See Forget Duration"
},
"on_defend_start": { "$ref": "#/definitions/H", "title": "On Defend Start", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks that the target can be within to launch an attack",
"title": "Within Radius"
},
"entity_types": {
"type": "object",
"description": "List of entity types that this mob considers valid targets",
"title": "Entity Types",
"additionalProperties": false
},
"sound_chance": { "title": "Sound Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" }
},
"examples": [
{
"aggro_sound": "",
"attack_interval": 0,
"must_see": false,
"must_see_forget_duration": 3,
"within_radius": 0,
"entity_types": {},
"sound_chance": 0.0
}
]
},
"CHD": {
"additionalProperties": false,
"type": "object",
"title": "Defend Village Target",
"description": "Allows the mob to stay in the village and fight mobs hostile to the villagers.",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types this mob considers a threat to the village",
"title": "Entity Types"
},
"must_reach": { "title": "Must Reach", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "boolean" },
"attack_chance": { "title": "Attack Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" }
},
"examples": [{ "must_reach": true, "attack_chance": 0.0 }]
},
"CHE": {
"additionalProperties": false,
"type": "object",
"title": "Delayed Attack",
"description": "Allows the mob to drink potions based on specified environment conditions.",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"attack_duration": {
"type": "number",
"default": 1,
"description": "The duration of the attack animation in seconds",
"title": "Attack Duration"
},
"attack_once": { "type": "boolean", "default": false, "description": "If true, this mob will attack only one time.", "title": "Attack Once" },
"attack_types": { "type": "string", "default": "", "description": "Defines the entity types this mob will attack", "title": "Attack Types" },
"hit_delay_pct": {
"type": "number",
"default": 1,
"description": "The percentage of the attack_duration that must pass before the hit is made",
"title": "Hit Delay Percentage"
},
"random_stop_interval": {
"type": "integer",
"default": 0,
"description": "Defines the probability the mob will stop fighting. A value of 0 disables randomly stopping, while a value of 1 defines a 50% chance",
"title": "Random Stop Interval"
},
"reach_multiplier": {
"type": "number",
"default": 2,
"description": "Multiplier for how far outside its box the mob can reach its target (this can be used to simulate a mob with longer arms by making this bigger)",
"title": "Reach Multiplier"
},
"require_complete_path": { "type": "boolean", "title": "Require Complet Path", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"sound_event": { "type": "string", "description": "The sound event to play when the attack starts", "title": "Sound Event" },
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
}
},
"examples": [
{
"attack_duration": 1,
"attack_once": false,
"attack_types": "",
"hit_delay_pct": 1,
"random_stop_interval": 0,
"reach_multiplier": 2,
"require_complete_path": true,
"sound_event": "example",
"track_target": false
}
]
},
"CHF": {
"additionalProperties": false,
"type": "object",
"title": "Door Interact",
"description": "Allows the mob to drink potions based on specified environment conditions.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CHG": {
"additionalProperties": false,
"type": "object",
"title": "Dragonchargeplayer",
"description": "Allows the dragon to attack a player by flying fast at them. The player is chosen by the dragonscanning goal. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CHH": {
"additionalProperties": false,
"type": "object",
"title": "Dragondeath",
"description": "Allows the dragon to go out with glory. This controls the Ender Dragon's death animation and can't be used by other mobs.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CHI": {
"additionalProperties": false,
"type": "object",
"title": "Dragonflaming",
"description": "Allows the dragon to use its flame breath attack. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CHJ": {
"additionalProperties": false,
"type": "object",
"title": "Dragonholdingpattern",
"description": "Allows the Dragon to fly around in a circle around the center podium. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CIA": {
"additionalProperties": false,
"type": "object",
"title": "Dragonlanding",
"description": "Allows the Dragon to stop flying and transition into perching mode. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CIB": {
"additionalProperties": false,
"type": "object",
"title": "Dragonscanning",
"description": "Allows the dragon to look around for a player to attack while in perch mode. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CIC": {
"additionalProperties": false,
"type": "object",
"title": "Dragonstrafeplayer",
"description": "Allows the dragon to fly around looking for a player and shoot fireballs at them. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CID": {
"additionalProperties": false,
"type": "object",
"title": "Dragontakeoff",
"description": "Allows the dragon to leave perch mode and go back to flying around. Can only be used by the Ender Dragon.",
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CIE": {
"type": "object",
"title": "Beg",
"description": "Allows the mob to drink potions based on specified environment conditions.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"speed_modifier": { "default": 0.0, "description": "Movement speed modifier of the mob when using this AI Goal", "title": "Speed Modifier" },
"potions": {
"type": "array",
"description": "A list of potions that this entity can drink.",
"title": "Potions",
"items": {
"required": ["id", "chance", "filters"],
"additionalProperties": false,
"type": "object",
"description": "A potions that this entity can drink.",
"title": "Potions",
"properties": {
"id": { "type": "integer", "default": -1, "description": "The registry ID of the potion to use", "title": "Id" },
"chance": {
"type": "number",
"default": 1.0,
"minimum": 0,
"maximum": 1,
"description": "The percent chance (from 0.0 to 1.0) of this potion being selected when searching for a potion to use.",
"title": "Chance"
},
"filters": { "description": "The filters to use when determining if this potion can be selected.", "$ref": "#/definitions/BA" }
}
}
}
},
"examples": [{ "potions": [] }]
},
"CIF": {
"additionalProperties": false,
"description": "Allows the mob to move near a target and drop an item.",
"title": "Drop Item For",
"type": "object",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown": { "title": "Cooldown", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"drop_item_chance": {
"type": "number",
"default": [1.0],
"description": "The probability that the mob will drop an item.",
"title": "Drop Item Chance"
},
"entity_types": { "description": "List of entity types this mob will drop items for.", "title": "Entity Types", "$ref": "#/definitions/CGB" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"loot_table": {
"type": "string",
"pattern": "^loot_tables.*\\.json$",
"description": "Loot table to select items from.",
"title": "Loot Table"
},
"max_dist": {
"type": "number",
"default": 0,
"description": "Maximum distance in blocks this mob will look for entities to drop an item for.",
"title": "Maximum Dist"
},
"minimum_teleport_distance": {
"title": "Minimum Teleport Distance",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "number"
},
"max_head_look_at_height": {
"title": "Maximum Head Look At Height",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "number"
},
"offering_distance": {
"type": "number",
"default": [1.0],
"description": "The distance in blocks the mob will try to be away from the entity when it drops the item.",
"title": "Offering Distance"
},
"on_drop_attempt": {
"$ref": "#/definitions/H",
"description": "Event to run when this mob attempts to drop an item.",
"title": "On Drop Attempt"
},
"seconds_before_pickup": { "title": "Seconds Before Pickup", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"search_count": { "type": "integer", "default": 1, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Search Height" },
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks from the target the mob can be.",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks from the target the mob can be.",
"title": "Search Range"
},
"target_range": {
"title": "Target Range",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "array",
"items": [{ "type": "number" }, { "type": "number" }, { "type": "number" }]
},
"teleport_offset": {
"title": "Teleport Offset",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "array",
"items": [{ "type": "number" }, { "type": "number" }, { "type": "number" }]
},
"time_of_day_range": {
"default": [0.0, 1.0],
"description": "The valid times of day that this goal can be used. For reference: noon is 0.0, sunset is 0.25, midnight is 0.5, and sunrise is 0.75, and back to noon for 1.0.",
"title": "Time Of Day Range",
"type": "array",
"items": [
{ "type": "number", "minimum": 0, "maximum": 1 },
{ "type": "number", "minimum": 0, "maximum": 1 }
]
}
},
"examples": [
{
"cooldown": 0.0,
"drop_item_chance": 0.0,
"goal_radius": 0.5,
"loot_table": "example",
"max_dist": 0,
"minimum_teleport_distance": 0.0,
"max_head_look_at_height": 0.0,
"offering_distance": 0.0,
"seconds_before_pickup": 0.0,
"search_count": 1,
"search_height": 1,
"search_range": 0,
"target_range": [],
"teleport_offset": [],
"time_of_day_range": []
}
]
},
"CIG": {
"type": "object",
"title": "Eat Block",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"on_eat": { "$ref": "#/definitions/BAI", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "On Eat" },
"success_chance": { "title": "Succes Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "$ref": "#/definitions/CAH" },
"time_until_eat": { "title": "Time Until Eat", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"eat_and_replace_block_pairs": {
"type": "array",
"title": "Eat And Replace Block Pairs",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": {
"type": "object",
"title": "Eat And Replace Block Pair",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"eat_block": {
"type": "string",
"title": "Block",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"$ref": "#/definitions/JC"
},
"replace_block": {
"type": "string",
"title": "Replace Block",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"$ref": "#/definitions/JC"
}
}
}
}
},
"examples": [{ "time_until_eat": 0.0, "eat_and_replace_block_pairs": [] }]
},
"CIH": {
"type": "object",
"title": "Eat Carried Item",
"description": "If the mob is carrying a food item, the mob will eat it and the effects will be applied to the mob.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"delay_before_eating": {
"type": "number",
"description": "Time in seconds the mob should wait before eating the item.",
"title": "Delay Before Eating"
}
},
"examples": [{ "delay_before_eating": 0.0 }]
},
"CII": {
"type": "object",
"title": "Enderman Leave Block",
"additionalProperties": false,
"description": "Allows the enderman to drop a block they are carrying. Can only be used by Endermen.",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CIJ": {
"type": "object",
"title": "Enderman Take Block",
"description": "Allows the enderman to take a block and carry it around. Can only be used by Endermen.",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CJA": {
"type": "object",
"title": "Equip Item",
"description": "Allows the entity to equip desired equipment.",
"additionalProperties": false,
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CJB": {
"type": "object",
"title": "Explore Outskirts",
"description": "behavior explore outskirts",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"explore_dist": {
"type": "number",
"default": 5,
"description": "The distance in which the mob will proceed past the village bounds",
"title": "Explore Dist"
},
"wait_time": {
"type": "integer",
"default": 0,
"description": "The time the mob will stand around `searching` for POIs",
"title": "Wait Time"
},
"next_xz": { "title": "Next XZ", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "integer" },
"next_y": { "title": "Next Y", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "integer" },
"min_wait_time": { "title": "Minimum Wait Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"max_wait_time": { "title": "Maximum Wait Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"max_travel_time": { "title": "Maximum Travel Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"min_perimeter": { "title": "Minimum Perimeter", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"min_dist_from_target": {
"title": "Minimum Distance From Target",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "number"
},
"timer_ratio": { "title": "Timer Ratio", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
"dist_from_boundary": {
"title": "Distance From Boundary",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "array",
"items": [
{ "title": "X", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
{ "title": "Y", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
{ "title": "Z", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" }
]
}
},
"examples": [
{
"explore_dist": 5,
"wait_time": 0,
"next_xz": 0,
"next_y": 0,
"min_wait_time": 0.0,
"max_wait_time": 0.0,
"max_travel_time": 0.0,
"min_perimeter": 0.0,
"min_dist_from_target": 0.0,
"timer_ratio": 0.0,
"dist_from_boundary": []
}
]
},
"CJC": {
"type": "object",
"title": "Find Cover",
"description": "Allows the mob to seek shade.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
}
},
"examples": [{ "cooldown_time": 0 }]
},
"CJD": {
"additionalProperties": false,
"description": "Allows the mob to look around for another mob to ride atop it.",
"title": "Find Mount",
"type": "object",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"avoid_water": {
"type": "boolean",
"default": false,
"description": "If true, the mob will not go into water blocks when going towards a mount",
"title": "Avoid Water"
},
"mount_distance": {
"type": "number",
"default": -1,
"description": "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",
"title": "Mount Distance"
},
"start_delay": {
"type": "integer",
"default": 0,
"description": "Time the mob will wait before starting to move towards the mount",
"title": "Start Delay"
},
"target_needed": {
"type": "boolean",
"default": false,
"description": "If true, the mob will only look for a mount if it has a target",
"title": "Target Needed"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks within which the mob will look for a mount",
"title": "Within Radius"
},
"max_failed_attempts": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Maximum Failed Attempts" }
},
"examples": [
{ "avoid_water": false, "mount_distance": -1, "start_delay": 0, "target_needed": false, "within_radius": 0, "max_failed_attempts": 0 }
]
},
"CJE": {
"type": "object",
"title": "Find Underwater Treasure",
"description": "Allows the mob to move towards the nearest underwater ruin or shipwreck.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"search_range": {
"type": "integer",
"default": 0,
"description": "The range that the mob will search for a treasure chest within a ruin or shipwreck to move towards.",
"title": "Search Range"
},
"stop_distance": {
"type": "number",
"default": 2.0,
"description": "The distance the mob will move before stopping.",
"title": "Stop Distance"
}
},
"examples": [{ "search_range": 0, "stop_distance": 2.0 }]
},
"CJF": {
"type": "object",
"title": "Flee Sun",
"description": "Allows the mob to run away from direct sunlight and seek shade.",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"CJG": {
"type": "object",
"title": "Float",
"description": "Allows the mob to stay afloat while swimming.",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"CJH": {
"type": "object",
"title": "Float Wander",
"description": "Allows the mob to float around like the Ghast.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "Xz Dist"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Dist"
},
"y_offset": {
"type": "number",
"default": 0.0,
"description": "Height in blocks to add to the selected target position",
"title": "Y Offset"
},
"must_reach": {
"type": "boolean",
"default": false,
"description": "If true, the point has to be reachable to be a valid target",
"title": "Must Reach"
},
"random_reselect": {
"type": "boolean",
"default": false,
"description": "If true, the mob will randomly pick a new point while moving to the previously selected one",
"title": "Random Reselect"
},
"float_duration": {
"$ref": "#/definitions/ID",
"default": [0.0, 0.0],
"description": "Range of time in seconds the mob will float around before landing and choosing to do something else",
"title": "Float Duration"
}
},
"examples": [{ "xz_dist": 10, "y_dist": 7, "y_offset": 0.0, "must_reach": false, "random_reselect": false }]
},
"CJI": {
"type": "object",
"title": "Follow Caravan",
"description": "Allows the mob to follow mobs that are in a caravan.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types that this mob can follow in a caravan",
"title": "Entity Types"
},
"entity_count": { "type": "integer", "description": "Number of entities that can be in the caravan", "default": 1, "title": "Entity Count" }
},
"examples": [{ "entity_count": 1 }]
},
"CJJ": {
"type": "object",
"title": "Follow Mob",
"description": "Allows the mob to follow other mobs.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for a mob to follow",
"title": "Search Range"
},
"stop_distance": {
"type": "number",
"default": 2,
"description": "The distance in blocks this mob stops from the mob it is following",
"title": "Stop Distance"
}
},
"examples": [{ "search_range": 0, "stop_distance": 2 }]
},
"DAA": {
"type": "object",
"title": "Follow Owner",
"description": "Allows the mob to follow their parent around.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"start_distance": {
"type": "number",
"default": 10,
"description": "The distance in blocks that the owner can be away from this mob before it starts following it",
"title": "Start Distance"
},
"stop_distance": {
"type": "number",
"default": 2,
"description": "The distance in blocks this mob will stop from its owner while following it",
"title": "Stop Distance"
}
},
"examples": [{ "start_distance": 10, "stop_distance": 2 }]
},
"DAB": {
"type": "object",
"title": "Float",
"description": "Allows the mob to follow their parent around.",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DAC": {
"type": "object",
"title": "Follow Target Captain",
"description": "Allows mob to move towards its current target captain.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"follow_distance": {
"type": "number",
"default": 0,
"description": "Defines the distance in blocks the mob will stay from its target while following.",
"title": "Follow Distance"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Defines the maximum distance in blocks a mob can get from its target captain before giving up trying to follow it.",
"title": "Within Radius"
}
},
"examples": [{ "follow_distance": 0, "within_radius": 0 }]
},
"DAD": {
"additionalProperties": false,
"description": "Allows the mob to move back to the position they were spawned.",
"title": "Go Home",
"type": "object",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"on_home": {
"description": "Event to run when this mob gets home.",
"title": "On Home",
"oneOf": [{ "$ref": "#/definitions/BAI" }, { "type": "array", "items": { "$ref": "#/definitions/BAI" } }]
},
"on_failed": { "$ref": "#/definitions/H", "title": "On Failed", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "goal_radius": 0.5, "interval": 120 }]
},
"DAE": {
"type": "object",
"title": "Guardian Attack",
"description": "Allows the guardian to use its laser beam attack. Can only be used by Guardians and Elder Guardians.",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DAF": {
"type": "object",
"title": "Harvest Farm Block",
"description": "Allows the villager to harvest nearby farms. Can only be used by Villagers.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"max_seconds_before_search": {
"title": "Maximum Seconds Before Search",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "number"
},
"search_cooldown_max_seconds": {
"title": "Search Cooldown Maximum Seconds",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "number"
},
"seconds_until_new_task": { "title": "Seconds Until New Task", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" }
},
"examples": [{ "max_seconds_before_search": 0.0, "search_cooldown_max_seconds": 0.0, "seconds_until_new_task": 0.0 }]
},
"DAG": {
"type": "object",
"title": "Hide",
"additionalProperties": false,
"description": "Allows a mob with the hide component to attempt to move to - and hide at - an owned or nearby POI.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"duration": { "type": "number", "default": 1, "description": "Amount of time in seconds that the mob reacts.", "title": "Duration" },
"poi_type": {
"type": "string",
"default": "",
"description": "Defines what POI type to hide at.",
"title": "Point Of Interest Type",
"examples": ["bed"]
},
"timeout_cooldown": {
"type": "number",
"default": 8,
"description": "The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition.",
"title": "Timeout Cooldown"
}
},
"examples": [{ "duration": 1, "poi_type": "", "timeout_cooldown": 8 }]
},
"DAH": {
"type": "object",
"title": "Hold Ground",
"description": "The mob freezes and looks at the mob they are targeting.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"broadcast": {
"type": "boolean",
"default": false,
"description": "Whether to broadcast out the mob's target to other mobs of the same type.",
"title": "Broadcast"
},
"broadcast_range": {
"type": "number",
"default": 0.0,
"description": "Range in blocks for how far to broadcast.",
"title": "Broadcast Range"
},
"min_radius": {
"type": "number",
"default": 10.0,
"description": "Minimum distance the target must be for the mob to run this goal.",
"title": "Minimum Radius"
},
"within_radius_event": {
"$ref": "#/definitions/H",
"description": "Event to run when target is within the radius. This event is broadcasted if broadcast is true.",
"title": "Within Radius Event"
}
},
"examples": [{ "broadcast": false, "broadcast_range": 0.0, "min_radius": 10.0 }]
},
"DAI": {
"type": "object",
"title": "Guardian Attack",
"additionalProperties": false,
"description": "Allows the mob to target another mob that hurts them.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types that this mob can target if they hurt their owner",
"title": "Entity Types"
},
"alert_same_type": {
"type": "boolean",
"default": false,
"description": "If true, nearby mobs of the same type will be alerted about the damage",
"title": "Alert Same Type"
},
"hurt_owner": {
"type": "boolean",
"default": false,
"description": "If true, the mob will hurt its owner and other mobs with the same owner as itself",
"title": "Hurt Owner"
}
},
"examples": [{ "alert_same_type": false, "hurt_owner": false }]
},
"DAJ": {
"type": "object",
"title": "Inspect Bookshelf",
"additionalProperties": false,
"description": "Allows the mob to inspect bookshelves.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "The height that the mob will search for bookshelves",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "Distance in blocks the mob will look for books to inspect",
"title": "Search Range"
}
},
"examples": [{ "goal_radius": 0.5, "search_count": 10, "search_height": 1, "search_range": 0 }]
},
"DBA": {
"type": "object",
"title": "Melee Attack",
"description": "Allows the mob to search around for a block to jump to and then jump to that block.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"search_width": {
"type": "integer",
"title": "Search Width",
"default": 8,
"description": "The maximum width in blocks that the mob will search. Range [2, 15]."
},
"search_height": {
"type": "integer",
"default": 10,
"title": "Search Height",
"description": "The maximum height in blocks that the mob will search. Range [2, 15]."
},
"minimum_path_length": {
"type": "integer",
"default": 5,
"title": "Minimum Path Length",
"description": "The minimum length in blocks of the mob's path to a block in order to consider jumping to it."
},
"minimum_distance": {
"type": "number",
"default": 5,
"title": "Minimum Distance",
"description": "The minimum distance in blocks from the mob to a block in order to consider jumping to it."
},
"scale_factor": {
"type": "number",
"title": "Scale Factor",
"default": 0.7,
"description": "The scale factor of the bounding box of the mob while it is jumping."
},
"cooldown_range": {
"title": "Cooldown Range",
"description": "The minimum and maximum cooldown time-range in seconds between each attempted jump.",
"type": "array",
"items": [
{ "title": "Minimum", "description": "Minimum", "type": "integer", "minimum": 0 },
{ "title": "Maximum", "description": "Maximum", "type": "integer", "minimum": 0 }
]
}
},
"examples": [
{ "search_width": 8, "search_height": 10, "minimum_path_length": 5, "minimum_distance": 5, "scale_factor": 0.7, "cooldown_range": [] }
]
},
"DBB": {
"description": "Allows the mob to perform a damaging knockback that affects all nearby entities.",
"type": "object",
"title": "Knockback Roar",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"attack_time": {
"type": "number",
"default": 0.5,
"description": "The delay after which the knockback occurs (in seconds).",
"title": "Attack Time"
},
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"duration": { "type": "number", "default": 1, "description": "The duration of the roar (in seconds).", "title": "Duration" },
"knockback_damage": {
"type": "integer",
"default": 6,
"description": "The damage dealt by the knockback roar.",
"title": "Knockback Damage"
},
"knockback_horizontal_strength": {
"type": "integer",
"default": 4,
"description": "The strength of the horizontal knockback.",
"title": "Knockback Horizontal Strength"
},
"knockback_range": {
"type": "integer",
"default": 4,
"description": "The radius (in blocks) of the knockback effect.",
"title": "Knockback Range"
},
"knockback_vertical_strength": {
"type": "integer",
"default": 4,
"description": "The strength of the vertical knockback.",
"title": "Knockback Vertical Strength"
},
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
},
"knockback_strength": { "type": "integer", "default": 4, "description": "The strength of the knockback.", "title": "Knockback Strength" },
"knockback_filters": {
"$ref": "#/definitions/BA",
"description": "filters to use to decide what is affected by knockback roar.",
"title": "Knockback Filters"
},
"damage_filters": {
"$ref": "#/definitions/BA",
"description": "filters to use to decide what is damaged by knockback roar.",
"title": "Damage Filters"
},
"on_roar_end": { "$ref": "#/definitions/H", "description": "Event to run when knockback roar has finished.", "title": "On Roar End" }
},
"examples": [
{
"attack_time": 0.5,
"cooldown_time": 0,
"duration": 1,
"knockback_damage": 6,
"knockback_horizontal_strength": 4,
"knockback_range": 4,
"knockback_vertical_strength": 4,
"track_target": false,
"knockback_strength": 4
}
]
},
"DBC": {
"description": "Allows mobs to lay down at times.",
"type": "object",
"title": "Lay Down",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine at what intervals something can occur. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"random_stop_interval": {
"type": "integer",
"default": 120,
"description": "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",
"title": "Random Stop Interval"
}
},
"examples": [{ "interval": 120, "random_stop_interval": 120 }]
},
"DBD": {
"description": "Allows the mob to lay an egg block on a sand block if the mob is pregnant.",
"type": "object",
"title": "Lay Egg",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"on_lay": { "$ref": "#/definitions/H", "description": "Event to run when this mob lays the egg.", "title": "On Lay" },
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for sand block to move towards",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for a sand block to move towards",
"title": "Search Range"
}
},
"examples": [{ "goal_radius": 0.5, "search_height": 1, "search_range": 0 }]
},
"DBE": {
"description": "Allows monsters to jump at and attack their target. Can only be used by hostile mobs.",
"type": "object",
"title": "Leap At Target",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"must_be_on_ground": {
"type": "boolean",
"default": true,
"description": "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",
"title": "Must Be On Ground"
},
"set_persistent": {
"type": "boolean",
"default": false,
"description": "Allows the actor to be set to persist upon targeting a player",
"title": "Set Persistent"
},
"yd": { "type": "number", "default": 0, "description": "The height in blocks the mob jumps when leaping at its target", "title": "Yd" },
"target_dist": { "type": "number", "default": 0, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Target Dist" }
},
"examples": [{ "must_be_on_ground": true, "set_persistent": false, "yd": 0, "target_dist": 0 }]
},
"DBF": {
"description": "Allows the mob to look at nearby entities.",
"type": "object",
"title": "Look At Entity",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"look_distance": {
"type": "number",
"default": 8.0,
"description": "The distance in blocks from which the entity will look at",
"title": "Look Distance"
},
"probability": {
"type": "number",
"default": 0.02,
"description": "The probability of looking at the target. A value of 1.00 is 100%",
"title": "Probability"
},
"look_time": { "$ref": "#/definitions/ID", "default": [2, 4], "description": "Time range to look at the entity", "title": "Look Time" },
"angle_of_view_vertical": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the X-axis (left-right)",
"title": "Angle Of View Vertical"
},
"angle_of_view_horizontal": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the Y-axis (up-down)",
"title": "Angle Of View Horizontal"
},
"filters": { "description": "Filter to determine the conditions for this mob to look at the entity", "$ref": "#/definitions/BA" }
},
"examples": [{ "look_distance": 8.0, "probability": 0.02, "angle_of_view_vertical": 360, "angle_of_view_horizontal": 360 }]
},
"DBG": {
"type": "object",
"title": "Look At Player",
"description": "Allows the mob to look at the player when the player is nearby.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"angle_of_view_vertical": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the X-axis (left-right)",
"title": "Angle Of View Vertical"
},
"angle_of_view_horizontal": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the Y-axis (up-down)",
"title": "Angle Of View Horizontal"
},
"look_distance": {
"type": "number",
"default": 8.0,
"description": "The distance in blocks from which the entity will look at",
"title": "Look Distance"
},
"probability": {
"type": "number",
"default": 0.02,
"minimum": 0,
"description": "The probability of looking at the target. A value of 1.00 is 100%",
"title": "Probability"
},
"look_time": {
"type": "array",
"default": [2, 4],
"description": "Time range to look at the entity",
"title": "Look Time",
"items": [{ "type": "number" }, { "type": "number" }]
},
"target_distance": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Target Distance" }
},
"examples": [
{
"angle_of_view_vertical": 360,
"angle_of_view_horizontal": 360,
"look_distance": 8.0,
"probability": 0.02,
"look_time": [],
"target_distance": 0.0
}
]
},
"DBH": {
"type": "object",
"title": "Look At Target",
"description": "Allows the mob to look at the entity they are targetting.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"look_distance": {
"type": "number",
"default": 8.0,
"description": "The distance in blocks from which the entity will look at",
"title": "Look Distance"
},
"probability": {
"type": "number",
"default": 0.02,
"description": "The probability of looking at the target. A value of 1.00 is 100%",
"title": "Probability"
},
"look_time": { "$ref": "#/definitions/ID", "default": [2, 4], "description": "Time range to look at the entity", "title": "Look Time" },
"angle_of_view_vertical": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the X-axis (left-right)",
"title": "Angle Of View Vertical"
},
"angle_of_view_horizontal": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the Y-axis (up-down)",
"title": "Angle Of View Horizontal"
}
},
"examples": [{ "look_distance": 8.0, "probability": 0.02, "angle_of_view_vertical": 360, "angle_of_view_horizontal": 360 }]
},
"DBI": {
"type": "object",
"title": "Look At Trading Player",
"additionalProperties": false,
"description": "Allows the mob to look at the player they are trading with.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"look_distance": {
"type": "number",
"default": 8.0,
"description": "The distance in blocks from which the entity will look at",
"title": "Look Distance"
},
"probability": {
"type": "number",
"default": 0.02,
"description": "The probability of looking at the target. A value of 1.00 is 100%",
"title": "Probability"
},
"look_time": { "$ref": "#/definitions/ID", "default": [2, 4], "description": "Time range to look at the entity", "title": "Look Time" },
"angle_of_view_vertical": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the X-axis (left-right)",
"title": "Angle Of View Vertical"
},
"angle_of_view_horizontal": {
"type": "integer",
"default": 360,
"description": "The angle in degrees that the mob can see in the Y-axis (up-down)",
"title": "Angle Of View Horizontal"
}
},
"examples": [{ "look_distance": 8.0, "probability": 0.02, "angle_of_view_vertical": 360, "angle_of_view_horizontal": 360 }]
},
"DBJ": {
"description": "Allows the villager to look for a mate to spawn other villagers with. Can only be used by Villagers.",
"type": "object",
"title": "Make Love",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DCA": {
"type": "object",
"title": "Melee Attack",
"description": "Allows the mob to use close combat melee attacks.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"melee_fov": {
"type": "number",
"default": 90.0,
"description": "The allowable FOV the actor will use to determine if it can make a valid melee attack",
"title": "Melee Fov"
},
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
},
"attack_types": { "type": "string", "description": "Defines the entity types this mob will attack", "title": "Attack Types" },
"random_stop_interval": {
"type": "integer",
"default": 0,
"description": "Defines the probability the mob will stop fighting. A value of 0 disables randomly stopping, while a value of 1 defines a 50% chance",
"title": "Random Stop Interval"
},
"reach_multiplier": {
"type": "number",
"default": 2.0,
"description": "Multiplier for how far outside its box the mob can reach its target (this can be used to simulate a mob with longer arms by making this bigger)",
"title": "Reach Multiplier"
},
"attack_once": { "type": "boolean", "default": false, "description": "If true, this mob will attack only one time.", "title": "Attack Once" },
"require_complete_path": {
"type": "boolean",
"default": false,
"description": "If true, this goal will only trigger if the mob can reach its target.",
"title": "Require Complete Path"
},
"cooldown_time": { "type": "number", "title": "Cooldown Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"on_attack": { "$ref": "#/definitions/H", "title": "On Attack", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"on_kill": { "$ref": "#/definitions/H", "title": "On Attack", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"melee_fov": 90.0,
"track_target": false,
"attack_types": "example",
"random_stop_interval": 0,
"reach_multiplier": 2.0,
"attack_once": false,
"require_complete_path": false,
"cooldown_time": 0.0
}
]
},
"DCB": {
"description": "Allows an entity to go to the village bell and mingle with other entities.",
"type": "object",
"title": "Mingle",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"duration": {
"type": "number",
"default": 1,
"description": "Amount of time in seconds that the entity will chat with another entity",
"title": "Duration"
},
"mingle_distance": {
"type": "number",
"default": 2.0,
"description": "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.",
"title": "Mingle Distance"
},
"mingle_partner_type": {
"description": "The entity type that this entity is allowed to mingle with",
"title": "Mingle Partner Type",
"oneOf": [
{ "type": "array", "items": { "description": "The entity type that this entity is allowed to mingle with", "type": "string" } },
{ "type": "string" }
]
}
},
"examples": [{ "cooldown_time": 0, "duration": 1, "mingle_distance": 2.0 }]
},
"DCC": {
"type": "object",
"title": "Mount Pathing",
"description": "Allows the mob to move around on its own while mounted seeking a target to attack.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"target_dist": {
"type": "number",
"default": 0.0,
"description": "The distance at which this mob wants to be away from its target",
"title": "Target Dist"
},
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
}
},
"examples": [{ "target_dist": 0.0, "track_target": false }]
},
"DCD": {
"description": "Can only be used by Villagers. Allows them to seek shelter indoors.",
"type": "object",
"title": "Move Indoors",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"timeout_cooldown": {
"type": "number",
"default": 8,
"description": "The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition",
"title": "Timeout Cooldown"
}
},
"examples": [{ "timeout_cooldown": 8 }]
},
"DCE": {
"type": "object",
"title": "Move Through Village",
"description": "Can only be used by Villagers. Allows the villagers to create paths around the village.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"only_at_night": {
"type": "boolean",
"default": false,
"description": "If true, the mob will only move through the village during night time",
"title": "Only At Night"
}
},
"examples": [{ "only_at_night": false }]
},
"DCF": {
"type": "object",
"title": "Move To Block",
"additionalProperties": false,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"tick_interval": { "type": "number", "title": "Tick Interval", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"start_chance": { "type": "number", "title": "Start Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"search_range": { "type": "number", "title": "Search Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"search_height": { "type": "number", "title": "Search Height", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"goal_radius": { "type": "number", "title": "Goal Radius", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"stay_duration": { "type": "number", "title": "Stay Duration", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"target_selection_method": {
"type": "string",
"title": "Target Selection Method",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"target_offset": {
"type": "array",
"title": "Target Offset",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": [{ "type": "number" }, { "type": "number" }, { "type": "number" }]
},
"target_blocks": {
"type": "array",
"title": "Target Blocks",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": { "type": "string" }
},
"on_stay_completed": {
"type": "array",
"title": "On Stay Completed",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": { "$ref": "#/definitions/H" }
},
"on_reach": {
"type": "array",
"title": "On Reach",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": { "$ref": "#/definitions/H" }
}
},
"examples": [
{
"tick_interval": 0.0,
"start_chance": 0.0,
"search_range": 0.0,
"search_height": 0.0,
"goal_radius": 0.0,
"stay_duration": 0.0,
"target_selection_method": "example",
"target_offset": [],
"target_blocks": [],
"on_stay_completed": [],
"on_reach": []
}
]
},
"DCG": {
"description": "Allows the mob to move back onto land when in water.",
"type": "object",
"title": "Move To Land",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for land to move towards",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for land to move towards",
"title": "Search Range"
}
},
"examples": [{ "goal_radius": 0.5, "search_count": 10, "search_height": 1, "search_range": 0 }]
},
"DCH": {
"type": "object",
"title": "Move To Lava",
"description": "Allows the mob to move back into lava when on land.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for lava to move towards",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for lava to move towards",
"title": "Search Range"
}
},
"examples": [{ "goal_radius": 0.5, "search_count": 10, "search_height": 1, "search_range": 0 }]
},
"DCI": {
"type": "object",
"title": "Move To Liquid",
"description": "Allows the mob to move back into lava when on land.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for lava to move towards",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for lava to move towards",
"title": "Search Range"
},
"material_type": { "title": "Material Type", "description": "UNDOCUMENTAED, examples are : Lava", "type": "string" }
},
"examples": [{ "goal_radius": 0.5, "search_count": 10, "search_height": 1, "search_range": 0, "material_type": "example" }]
},
"DCJ": {
"type": "object",
"title": "Move To Poi",
"additionalProperties": false,
"description": "Allows the mob to move to a POI if able to",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"poi_type": { "type": "string", "description": "Tells the goal what POI type it should be looking for", "title": "Point Of Interest Type" }
},
"examples": [{ "poi_type": "example" }]
},
"DDA": {
"type": "object",
"title": "Move To Random Block",
"description": "Allows mob to move towards a random block.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"block_distance": {
"type": "number",
"default": 16,
"description": "Defines the distance from the mob, in blocks, that the block to move to will be chosen.",
"title": "Block Distance"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Defines the distance in blocks the mob has to be from the block for the movement to be finished.",
"title": "Within Radius"
}
},
"examples": [{ "block_distance": 16, "within_radius": 0 }]
},
"DDB": {
"type": "object",
"title": "Move To Village",
"additionalProperties": false,
"description": "Allows the mob to move into a random location within a village.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks to search for villages. If <= 0, find the closest village regardless of distance.",
"title": "Search Range"
}
},
"examples": [{ "cooldown_time": 0, "goal_radius": 0.5, "search_range": 0 }]
},
"DDC": {
"type": "object",
"title": "Move To Water",
"additionalProperties": false,
"description": "Allows the mob to move back into water when on land.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for water to move towards",
"title": "Search Range"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for water to move towards",
"title": "Search Height"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
}
},
"examples": [{ "search_range": 0, "search_height": 1, "search_count": 10, "goal_radius": 0.5 }]
},
"DDD": {
"type": "object",
"title": "Move Towards Dwelling Restriction",
"additionalProperties": false,
"description": "UNDOCUMENTED, comes from cat",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DDE": {
"type": "object",
"title": "Move Towards Home Restriction",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DDF": {
"type": "object",
"title": "Move Towards Restriction",
"additionalProperties": false,
"description": "Allows Guardians, Iron Golems and Villagers to move within their pre-defined area that the mob should be restricted to. Other mobs don't have a restriction defined.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"control_flags": {
"type": "array",
"items": { "type": "string", "enum": ["move", "look"], "description": "UNDOCUMENTED: control flags", "title": "Control Flags" },
"description": "UNDOCUMENTED: control flags",
"title": "Control Flags"
}
},
"examples": [{ "control_flags": [] }]
},
"DDG": {
"type": "object",
"title": "Guardian Attack",
"additionalProperties": false,
"description": "Allows mob to move towards its current target.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"within_radius": {
"type": "number",
"default": 0.0,
"description": "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",
"title": "Within Radius"
}
},
"examples": [{ "within_radius": 0.0 }]
},
"DDH": {
"type": "object",
"title": "Nap",
"description": "Allows the mob to move back into lava when on land.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_max": {
"type": "number",
"default": 0,
"description": "Maximum time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Max"
},
"cooldown_min": {
"type": "number",
"default": 0,
"description": "Minimum time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Min"
},
"mob_detect_dist": {
"type": "number",
"default": 6,
"description": "The block distance in x and z that will be checked for mobs that this mob detects",
"title": "Mob Detect Dist"
},
"mob_detect_height": {
"type": "number",
"default": 6,
"description": "The block distance in y that will be checked for mobs that this mob detects",
"title": "Mob Detect Height"
},
"can_nap_filters": { "$ref": "#/definitions/BA", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Can Nap Filters" },
"wake_mob_exceptions": {
"$ref": "#/definitions/BA",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Wake Mob Exceptions"
}
},
"examples": [{ "cooldown_max": 0, "cooldown_min": 0, "mob_detect_dist": 6, "mob_detect_height": 6 }]
},
"DDI_entity_type": {
"type": "object",
"description": "A entity type",
"properties": {
"filters": { "$ref": "#/definitions/BA", "description": "Conditions that make this target a valid type.", "title": "Filters" },
"max_dist": {
"type": "number",
"default": 16,
"description": "To be a valid target choice, the target type cannot be farther away from this entity than `max_dist`.",
"title": "Maximum Dist"
},
"must_see": {
"type": "boolean",
"default": false,
"description": "Determines if target-validity requires this entity to be in range only, or both in range and in sight.",
"title": "Must See"
},
"must_see_forget_duration": {
"type": "boolean",
"default": 3,
"description": "Time (in seconds) the target must not be seen by this entity to become invalid. Used only if `must_see` is true.",
"title": "Must See Forget Duration"
}
}
},
"DDI": {
"type": "object",
"title": "Nearest Attackable Target",
"description": "Allows the mob to check for and pursue the nearest valid target.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"description": "Filters which types of targets are valid for this entity.",
"title": "Entity Types",
"oneOf": [{ "$ref": "#/definitions/DDI_entity_type" }, { "type": "array", "items": { "$ref": "#/definitions/DDI_entity_type" } }]
},
"attack_interval": {
"type": "integer",
"default": 0,
"description": "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.",
"title": "Attack Interval"
},
"attack_interval_min": {
"type": "number",
"default": 0,
"description": "Alias for `attack_interval`; provides the same functionality as `attack_interval`.",
"title": "Attack Interval Min"
},
"attack_owner": { "type": "boolean", "default": false, "description": "If true, this entity can attack its owner.", "title": "Attack Owner" },
"must_reach": {
"type": "boolean",
"default": false,
"description": "If true, this entity requires a path to the target.",
"title": "Must Reach"
},
"must_see": {
"type": "boolean",
"default": false,
"description": "Determines if target-validity requires this entity to be in range only, or both in range and in sight.",
"title": "Must See"
},
"must_see_forget_duration": {
"type": "number",
"default": 3,
"description": "Time (in seconds) the target must not be seen by this entity to become invalid. Used only if `must_see` is true.",
"title": "Must See Forget Duration"
},
"persist_time": {
"type": "number",
"default": 0,
"description": "Time (in seconds) this entity can continue attacking the target after the target is no longer valid.",
"title": "Persist Time"
},
"reselect_targets": {
"type": "boolean",
"default": false,
"description": "Allows the attacking entity to update the nearest target, otherwise a target is only reselected after each `scan_interval` or `attack_interval`.",
"title": "Reselect Targets"
},
"scan_interval": {
"type": "integer",
"default": 10,
"description": "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.",
"title": "Scan Interval"
},
"set_persistent": {
"type": "boolean",
"default": false,
"description": "Allows the actor to be set to persist upon targeting a player",
"title": "Set Persistent"
},
"target_invisible_multiplier": {
"type": "number",
"default": 0.7,
"description": "Multiplied with the target's armor coverage percentage to modify `max_dist` when detecting an invisible target.",
"title": "Target Invisible Multiplier"
},
"target_search_height": {
"type": "number",
"default": -1,
"description": "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`.",
"title": "Target Search Height"
},
"target_sneak_visibility_multiplier": {
"type": "number",
"default": 0.8,
"description": "Multiplied with the target type's `max_dist` when trying to detect a sneaking target.",
"title": "Target Sneak Visibility Multiplier"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "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`.",
"title": "Within Radius"
}
},
"examples": [
{
"attack_interval": 0,
"attack_interval_min": 0,
"attack_owner": false,
"must_reach": false,
"must_see": false,
"must_see_forget_duration": 3,
"persist_time": 0,
"reselect_targets": false,
"scan_interval": 10,
"set_persistent": false,
"target_invisible_multiplier": 0.7,
"target_search_height": -1,
"target_sneak_visibility_multiplier": 0.8,
"within_radius": 0
}
]
},
"DDJ": {
"type": "object",
"title": "Nearest Prioritized Attackable Target",
"description": "Allows the mob to check for and pursue the nearest valid target.",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"description": "List of entity types that this mob considers valid targets",
"title": "Entity Types",
"$ref": "#/definitions/CGB"
},
"attack_interval": {
"type": "integer",
"default": 0,
"description": "Time in seconds before selecting a target",
"title": "Attack Interval"
},
"must_reach": {
"type": "boolean",
"default": false,
"description": "If true, only entities that this mob can path to can be selected as targets",
"title": "Must Reach"
},
"must_see": {
"type": "boolean",
"default": false,
"description": "If true, only entities in this mob's viewing range can be selected as targets",
"title": "Must See"
},
"must_see_forget_duration": {
"type": "number",
"default": 3,
"description": "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",
"title": "Must See Forget Duration"
},
"persist_time": {
"type": "number",
"default": 0.0,
"description": "Time in seconds for a valid target to stay targeted when it becomes and invalid target.",
"title": "Persist Time"
},
"reselect_targets": {
"type": "boolean",
"default": false,
"description": "If true, the target will change to the current closest entity whenever a different entity is closer",
"title": "Reselect Targets"
},
"scan_interval": {
"type": "integer",
"default": 10,
"description": "How many ticks to wait between scanning for a target.",
"title": "Scan Interval"
},
"set_persistent": {
"type": "boolean",
"default": false,
"description": "Allows the actor to be set to persist upon targeting a player",
"title": "Set Persistent"
},
"target_search_height": {
"type": "number",
"default": -1.0,
"description": "Height in blocks to search for a target mob. -1.0f means the height does not matter.",
"title": "Target Search Height"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks that the target can be within to launch an attack",
"title": "Within Radius"
}
},
"examples": [
{
"attack_interval": 0,
"must_reach": false,
"must_see": false,
"must_see_forget_duration": 3,
"persist_time": 0.0,
"reselect_targets": false,
"scan_interval": 10,
"set_persistent": false,
"target_search_height": -1.0,
"within_radius": 0
}
]
},
"DEA": {
"additionalProperties": false,
"description": "Allows an entity to sit in place, similar to the ocelot entity animation pose.",
"type": "object",
"title": "Ocelot Sit On Block",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DEB": {
"type": "object",
"title": "Ocelotattack",
"additionalProperties": false,
"description": "Can only be used by the Ocelot. Allows it to perform the sneak and pounce attack.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"walk_speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Multiplier for the walking speed while using this attack",
"title": "Walk Speed Multiplier"
},
"sprint_speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Multiplier for the running speed of this mob while using this attack",
"title": "Sprint Speed Multiplier"
},
"sneak_speed_multiplier": {
"type": "number",
"default": 1.0,
"description": "Multiplier for the sneaking speed. 1.0 means the ocelot will move at the speed it normally sneaks",
"title": "Sneak Speed Multiplier"
},
"cooldown_time": { "type": "number", "title": "Cooldown Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"x_max_rotation": { "type": "number", "title": "X Maximum Rotation", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"y_max_head_rotation": { "type": "number", "title": "Y Maximum Head Rotation", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max_distance": { "type": "number", "title": "Maximum Distance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max_sneak_range": { "type": "number", "title": "Maximum Sneak Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"max_sprint_range": { "type": "number", "title": "Maximum Sprint Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"reach_multiplier": { "type": "number", "title": "Reach Multiplier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"walk_speed_multiplier": 1.0,
"sprint_speed_multiplier": 1.0,
"sneak_speed_multiplier": 1.0,
"cooldown_time": 0.0,
"x_max_rotation": 0.0,
"y_max_head_rotation": 0.0,
"max_distance": 0.0,
"max_sneak_range": 0.0,
"max_sprint_range": 0.0,
"reach_multiplier": 0.0
}
]
},
"DEC": {
"type": "object",
"title": "Offer Flower",
"additionalProperties": false,
"description": "Allows the mob to offer the player a flower like the Iron Golem does.",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DED": {
"type": "object",
"title": "Guardian Attack",
"additionalProperties": false,
"description": "Allows the mob to open doors. Requires the mob to be able to path through doors, otherwise the mob won't even want to try opening them.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"close_door_after": {
"type": "boolean",
"default": true,
"description": "If true, the mob will close the door after opening it and going through it",
"title": "Close Door After"
}
},
"examples": [{ "close_door_after": true }]
},
"DEE": {
"type": "object",
"title": "Owner Hurt By Target",
"additionalProperties": false,
"description": "Allows the mob to target another mob that hurts their owner.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types that this mob can target if they hurt their owner",
"title": "Entity Types"
}
}
},
"DEF": {
"type": "object",
"title": "Owner Hurt Target",
"additionalProperties": false,
"description": "Allows the mob to target a mob that is hurt by their owner.",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types that this entity can target if the potential target is hurt by this mob's owner",
"title": "Entity TYpes"
}
}
},
"DEG": {
"description": "Allows the mob to enter the panic state, which makes it run around and away from the damage source that made it enter this state.",
"type": "object",
"title": "Panic",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"damage_sources": {
"type": "array",
"items": { "$ref": "#/definitions/CA" },
"default": [["all"]],
"description": "The list of Entity Damage Sources that will cause this mob to panic",
"title": "Damage Sources"
},
"force": {
"type": "boolean",
"default": false,
"description": "If true, this mob will not stop panicking until it can't move anymore or the goal is removed from it",
"title": "Force"
},
"ignore_mob_damage": {
"type": "boolean",
"default": false,
"description": "If true, the mob will not panic in response to damage from other mobs. This overrides the damage types in `damage_sources`",
"title": "Ignore Mob Damage"
},
"prefer_water": {
"type": "boolean",
"default": false,
"description": "If true, the mob will prefer water over land",
"title": "Prefer Water"
},
"panic_sound": { "type": "string", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Panic Sound" },
"sound_interval": {
"type": "object",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Sound Interval",
"properties": {
"range_min": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Range Minimum" },
"range_max": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Range Maximum" }
},
"additionalProperties": false
}
},
"examples": [
{ "damage_sources": [], "force": false, "ignore_mob_damage": false, "prefer_water": false, "panic_sound": "example", "sound_interval": {} }
]
},
"DEH": {
"description": "Allows the mob to peek out. This is what the shulker uses to look out of its shell.",
"type": "object",
"title": "Peek",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DEI": {
"description": "Allows the mob to be tempted by food they like.",
"type": "object",
"title": "Tempt",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks from the owner the pet can be to sleep with owner.",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks from the owner the pet can be to sleep with owner.",
"title": "Search Range"
},
"search_radius": { "type": "integer", "default": 0, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Search Radius" }
},
"examples": [{ "goal_radius": 0.5, "search_height": 1, "search_range": 0, "search_radius": 0 }]
},
"DEJ": {
"description": "Allows the mob to pick up items on the ground.",
"additionalProperties": false,
"type": "object",
"title": "Pickup Items",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"can_pickup_any_item": {
"type": "boolean",
"default": false,
"description": "If true, the mob can pickup any item",
"title": "Can Pickup Any Item"
},
"can_pickup_to_hand_or_equipment": {
"type": "boolean",
"default": true,
"description": "If true, the mob can pickup items to its hand or armor slots",
"title": "Can Pickup To Hand Or Equipment"
},
"cooldown_after_being_attacked": {
"type": "number",
"default": true,
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Cooldown After Being Attacked"
},
"excluded_items": { "title": "Excluded Items", "type": "array", "items": { "title": "Excluded Item", "$ref": "#/definitions/G" } },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"max_dist": {
"type": "number",
"default": 0,
"description": "Maximum distance this mob will look for items to pick up",
"title": "Maximum Dist"
},
"pickup_based_on_chance": {
"type": "boolean",
"default": false,
"description": "If true, depending on the difficulty, there is a random chance that the mob may not be able to pickup items",
"title": "Pickup Based On Chance"
},
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
}
},
"examples": [
{
"can_pickup_any_item": false,
"can_pickup_to_hand_or_equipment": true,
"cooldown_after_being_attacked": true,
"excluded_items": [],
"goal_radius": 0.5,
"max_dist": 0,
"pickup_based_on_chance": false,
"track_target": false
}
]
},
"DFA": {
"description": "Allows the mob to play with other baby villagers. This can only be used by Villagers.",
"type": "object",
"title": "Play",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DFB": {
"description": "Allows the mob to play dead when attacked by other entities. When playing dead, other entities will not target this mob.",
"type": "object",
"title": "Play Dead",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"duration": {
"title": "Duration",
"description": "The amount of time in seconds that the mob will remain playing dead.",
"type": "number",
"minimum": 0
},
"force_below_health": {
"title": "Force Below Health",
"description": "The amount of health at which the mob will start to play dead.",
"type": "number",
"minimum": 0
},
"random_start_chance": {
"title": "Random Start Chance",
"description": "The likelihood that the mob will start to play dead upon taking damage.",
"type": "number",
"minimum": 0
},
"random_damage_range": {
"title": "Random Damage Range",
"description": "The range of damage that may cause the mob to start playing dead. Damage taken below the minimum value will never cause the mob to start playing dead. Damage taken above the maximum value will always cause the mob to start playing dead.",
"type": "array",
"items": [
{ "title": "Minimum", "description": "Minimum", "type": "integer", "minimum": 0 },
{ "title": "Maximum", "description": "Maximum", "type": "integer", "minimum": 0 }
]
},
"damage_sources": {
"title": "Damage Sources",
"description": "The list of Entity Damage Sources that will cause this mob to start playing dead.",
"oneOf": [
{ "type": "string", "$ref": "#/definitions/CA" },
{ "type": "array", "items": { "title": "Damage Source", "$ref": "#/definitions/CA" } }
]
},
"apply_regeneration": {
"title": "Apply Regeneration",
"description": "Whether the mob will receive the effect of CombatRegeneration while playing dead.",
"type": "boolean"
},
"filters": { "$ref": "#/definitions/BA" }
},
"examples": [{ "duration": 0.0, "force_below_health": 0.0, "random_start_chance": 0.0, "random_damage_range": [], "apply_regeneration": true }]
},
"DFC": {
"description": "Allows the mob to be ridden by the player after being tamed.",
"type": "object",
"title": "Player Ride Tamed",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DFD": {
"description": "Allows the mob to eat/raid crops out of farms until they are full.",
"additionalProperties": false,
"type": "object",
"title": "Raid Garden",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"blocks": {
"type": "array",
"description": "Blocks that the mob is looking for to eat",
"items": { "type": "string", "title": "Block Id", "description": "A block identifier", "$ref": "#/definitions/JC" },
"title": "Blocks"
},
"eat_delay": { "type": "integer", "default": 2, "description": "Time in seconds between each time it eats", "title": "Eat Delay" },
"full_delay": {
"type": "integer",
"default": 100,
"description": "Amount of time in seconds before this mob wants to eat again",
"title": "Full Delay"
},
"initial_eat_delay": {
"type": "integer",
"default": 0,
"description": "Time in seconds before starting to eat/raid once it arrives at it",
"title": "Initial Eat Delay"
},
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"max_to_eat": {
"type": "integer",
"default": 6,
"description": "Maximum number of things this entity wants to eat",
"title": "Maximum To Eat"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "Distance in blocks the mob will look for crops to eat",
"title": "Search Range"
},
"search_height": { "type": "integer", "default": 0, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Search Height" }
},
"examples": [
{
"blocks": [],
"eat_delay": 2,
"full_delay": 100,
"initial_eat_delay": 0,
"goal_radius": 0.5,
"max_to_eat": 6,
"search_range": 0,
"search_height": 0
}
]
},
"DFE": {
"description": "Allows the mob to search for a random target and, if a direct path exists between the mob and the target, it will perform a charge. If the attack hits, the target will be knocked back based on the mob's speed.",
"type": "object",
"title": "Ram Attack",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"baby_knockback_modifier": {
"type": "integer",
"default": 4,
"description": "The modifier to knockback for baby mobs.",
"title": "Baby Knockback Modifier"
},
"cooldown_range": {
"type": "array",
"default": [10.0, 20.0],
"description": "The minimum and maximum cooldown time-range in seconds between each attempted ram attack.",
"title": "Cooldown Range",
"items": [
{ "title": "Minimum", "description": "Minimum", "type": "number", "minimum": 0 },
{ "title": "Maximum", "description": "Maximum", "type": "number", "minimum": 0 }
]
},
"knockback_force": {
"type": "number",
"default": 5,
"description": "The force of the knockback of the ram's attack.",
"title": "Knockback Force"
},
"knockback_height": {
"type": "number",
"default": 0.1,
"description": "The height in blocks of the knockback of the ram attack.",
"title": "Knockback Height"
},
"min_ram_distance": {
"type": "integer",
"default": 4,
"description": "The minimum distance in blocks at which the mob can start a ram attack.",
"title": "Min Ram Distance"
},
"pre_ram_sound": {
"type": "string",
"description": "The sound to play when the mob is about to perform a ram attack.",
"title": "Pre Ram Sound"
},
"ram_distance": {
"type": "integer",
"default": 7,
"description": "The distance in blocks at which the mob will start to ram its target.",
"title": "Ram Distance"
},
"ram_impact_sound": {
"type": "string",
"description": "The sound to play when the mob hits the target with a ram attack .",
"title": "Ram Impact Sound"
},
"ram_speed": {
"type": "number",
"default": 2,
"description": "Sets the mob's speed when performing a ram attack toward the target.",
"title": "Ram Speed"
},
"run_speed": { "type": "number", "default": 1, "description": "Sets the mob's speed when running toward the target.", "title": "Run Speed" },
"trigger": { "description": "The event to trigger when attacking.", "title": "Trigger", "$ref": "#/definitions/BAI" },
"on_start": {
"title": "On Start",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"oneOf": [{ "$ref": "#/definitions/H" }, { "type": "array", "items": { "$ref": "#/definitions/H" } }]
}
},
"examples": [
{
"baby_knockback_modifier": 4,
"cooldown_range": [],
"knockback_force": 5,
"knockback_height": 0.1,
"min_ram_distance": 4,
"pre_ram_sound": "example",
"ram_distance": 7,
"ram_impact_sound": "example",
"ram_speed": 2,
"run_speed": 1
}
]
},
"DFF": {
"description": "Allows the mob to randomly break surface of the water.",
"type": "object",
"title": "Player Ride Tamed",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "XZ Distance"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Distance"
}
},
"examples": [{ "cooldown_time": 0, "interval": 120, "xz_dist": 10, "y_dist": 7 }]
},
"DFG": {
"description": "Allows a mob to randomly fly around",
"type": "object",
"title": "Random Fly",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"avoid_damage_blocks": { "type": "boolean", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Avoid Damage Blocks" },
"can_land_on_trees": {
"type": "boolean",
"default": true,
"description": "If true, the mob can stop flying and land on a tree instead of the ground",
"title": "Can Land On Trees"
},
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "Xz Dist"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Dist"
},
"y_offset": { "type": "integer", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Y Offset" }
},
"examples": [{ "avoid_damage_blocks": true, "can_land_on_trees": true, "xz_dist": 10, "y_dist": 7, "y_offset": 0 }]
},
"DFH": {
"description": "Allows the mob to hover around randomly, close to the surface",
"type": "object",
"title": "Random Hover",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"hover_height": {
"type": "array",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Hover Height",
"items": [{ "type": "number" }, { "type": "number" }]
},
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "Xz Dist"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Dist"
},
"y_offset": { "type": "number", "default": 0, "description": "Height in blocks to add to the selected target position", "title": "Y Offset" }
},
"examples": [{ "hover_height": [], "interval": 120, "xz_dist": 10, "y_dist": 7, "y_offset": 0 }]
},
"DFI": {
"additionalProperties": false,
"description": "Allows the mob to randomly look around.",
"type": "object",
"title": "Random Look Around",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"look_time": {
"title": "Look Time",
"description": "The range of time in seconds the mob will stay looking in a random direction before looking elsewhere",
"oneOf": [
{ "type": "number" },
{
"type": "array",
"items": [
{ "type": "number", "title": "Minimum", "description": "Minimum" },
{ "type": "number", "title": "Maximum", "description": "Maximum" }
]
}
]
},
"look_distance": { "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Look Distance", "type": "number" }
},
"examples": [{ "look_distance": 0.0 }]
},
"DFJ": {
"description": "Allows the mob to randomly sit and look around for a duration. Note: Must have a sitting animation set up to use this.",
"type": "object",
"title": "Random Look Around And Sit",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"max_look_count": {
"type": "integer",
"default": 2,
"description": "The Maximum amount of unique looks a mob will have while looking around.",
"title": "Maximum Look Count"
},
"max_look_time": {
"type": "integer",
"default": 40,
"description": "The Maximum amount of time (in ticks) a mob will stay looking at a direction while looking around.",
"title": "Maximum Look Time"
},
"min_look_count": {
"type": "integer",
"default": 1,
"description": "The Minimum amount of unique looks a mob will have while looking around.",
"title": "Minimum Look Count"
},
"min_look_time": {
"type": "integer",
"default": 20,
"description": "The Minimum amount of time (in ticks) a mob will stay looking at a direction while looking around.",
"title": "Minimum Look Time"
},
"probability": {
"type": "number",
"default": 0.02,
"description": "The probability of randomly looking around/sitting.",
"title": "Probability"
}
},
"examples": [{ "max_look_count": 2, "max_look_time": 40, "min_look_count": 1, "min_look_time": 20, "probability": 0.02 }]
},
"DGA": {
"type": "object",
"title": "Random Sitting",
"description": "Allows the mob to randomly sit for a duration.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown"
},
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"min_sit_time": {
"type": "number",
"default": 10,
"description": "The minimum amount of time in seconds before the mob can stand back up",
"title": "Minimum Sit Time"
},
"start_chance": {
"type": "number",
"default": 0.1,
"description": "This is the chance that the mob will start this goal, from 0 to 1",
"title": "Start Chance"
},
"stop_chance": {
"type": "number",
"default": 0.3,
"description": "This is the chance that the mob will stop this goal, from 0 to 1",
"title": "Stop Chance"
}
},
"examples": [{ "cooldown": 0, "cooldown_time": 0, "min_sit_time": 10, "start_chance": 0.1, "stop_chance": 0.3 }]
},
"DGB": {
"description": "Allows a mob to randomly stroll around.",
"type": "object",
"title": "Random Stroll",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "XZ Distance"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Distance"
}
},
"additionalProperties": false,
"examples": [{ "interval": 120, "xz_dist": 10, "y_dist": 7 }]
},
"DGC": {
"type": "object",
"title": "Random Swim",
"description": "Allows an entity to randomly move through water",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"avoid_surface": {
"type": "boolean",
"default": true,
"description": "If true, the mob will avoid surface water blocks by swimming below them",
"title": "Avoid Surface"
},
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"xz_dist": {
"type": "integer",
"default": 10,
"description": "Distance in blocks on ground that the mob will look for a new spot to move to. Must be at least 1",
"title": "XZ Distance"
},
"y_dist": {
"type": "integer",
"default": 7,
"description": "Distance in blocks that the mob will look up or down for a new spot to move to. Must be at least 1",
"title": "Y Distance"
}
},
"additionalProperties": false,
"examples": [{ "avoid_surface": true, "interval": 120, "xz_dist": 10, "y_dist": 7 }]
},
"DGD": {
"description": "Allows the mob to use ranged attacks like shooting arrows.",
"type": "object",
"title": "Ranged Attack",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"attack_interval": { "type": "number", "default": 0, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Attack Interval" },
"attack_interval_max": {
"type": "number",
"default": 0,
"description": "Maximum amount of time in seconds the entity will wait after an attack before launching another",
"title": "Attack Interval Maximum"
},
"attack_interval_min": {
"type": "number",
"default": 0,
"description": "Minimum amount of time in seconds the entity will wait after an attack before launching another",
"title": "Attack Interval Minimum"
},
"attack_radius": {
"type": "number",
"default": 0,
"description": "Maximum distance the target can be for this mob to fire. If the target is further away, this mob will move first before firing",
"title": "Attack Radius"
},
"burst_interval": {
"type": "number",
"default": 0,
"description": "Amount of time in seconds between each individual shot when firing multiple shots per attack",
"title": "Burst Interval"
},
"burst_shots": {
"type": "integer",
"default": 1,
"description": "Number of shots fired every time the mob uses a charged attack",
"title": "Burst Shots"
},
"charge_charged_trigger": {
"type": "number",
"default": 0,
"description": "The minimum amount of time in ticks the mob has to charge before firing a charged attack",
"title": "Charge Charged Trigger"
},
"charge_shoot_trigger": {
"type": "number",
"default": 0,
"description": "The minimum amount of time in ticks for the mob to start charging a charged shot. Must be greater than 0 to enable burst shots",
"title": "Charge Shoot Trigger"
},
"ranged_fov": {
"type": "number",
"default": 90,
"description": "The allowable FOV the actor will use to determine if it can make a valid ranged attack",
"title": "Ranged FOV"
},
"target_in_sight_time": { "type": "number", "title": "Target In Sight Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"attack_radius_min": { "type": "number", "title": "Attack Radius Min", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"attack_interval": 0,
"attack_interval_max": 0,
"attack_interval_min": 0,
"attack_radius": 0,
"burst_interval": 0,
"burst_shots": 1,
"charge_charged_trigger": 0,
"charge_shoot_trigger": 0,
"ranged_fov": 90,
"target_in_sight_time": 0.0,
"attack_radius_min": 0.0
}
]
},
"DGE": {
"description": "Allows the villager to stop so another villager can breed with it. Can only be used by a Villager.",
"type": "object",
"title": "Receive Love",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DGF": {
"description": "Allows the mob to stay indoors during night time.",
"type": "object",
"title": "Restrict Open Door",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DGG": {
"description": "Allows the mob to automatically start avoiding the sun when its a clear day out.",
"type": "object",
"title": "Restrict Sun",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DGH": {
"description": "Allows the mob to stay at a certain level when in liquid.",
"type": "object",
"title": "Rise To Liquid Level",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"liquid_y_offset": { "type": "number", "title": "Liquid Y Offset", "description": "Vertical offset from the liquid" },
"rise_delta": {
"type": "number",
"title": "Rise Delta",
"description": "Displacement for how much the entity will move up in the vertical axis"
},
"sink_delta": {
"type": "number",
"title": "Sink Delta",
"description": "Displacement for how much the entity will move down in the vertical axis"
}
},
"examples": [{ "liquid_y_offset": 0.0, "rise_delta": 0.0, "sink_delta": 0.0 }]
},
"DGI": {
"description": "This allows the mob to roll forward.",
"type": "object",
"title": "Roll",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"probability": { "type": "number", "minimum": 0, "description": "The probability that the mob will use the goal.", "title": "Probability" }
},
"examples": [{ "probability": 0.0 }]
},
"DGJ": {
"description": "Allows the mob to run around aimlessly.",
"type": "object",
"title": "Restrict Open Door",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DHA": {
"description": "Allows the a mob to become scared when the weather outside is thundering.",
"type": "object",
"title": "Scared",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"sound_interval": {
"type": "integer",
"default": 0,
"description": "The interval in which a sound will play when active in a 1/delay chance to kick off",
"title": "Sound Interval"
}
},
"examples": [{ "sound_interval": 0 }]
},
"DHB_sequence": {
"type": "array",
"description": "List of events to send",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"base_delay": { "type": "number", "default": 0, "description": "Amount of time in seconds before starting this step" },
"event": { "type": "string", "default": "", "description": "The event to send to the entity" },
"sound_event": { "type": "string", "default": "", "description": "The sound event to play when this step happens" }
}
}
},
"DHB": {
"description": "Allows the mob to send an event to another mob.",
"type": "object",
"title": "Send Event",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"cast_duration": { "type": "number", "description": "Time in seconds for the entire event sending process", "title": "Cast Duration" },
"event_choices": {
"type": "array",
"title": "Event Choices",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"items": {
"type": "object",
"additionalProperties": false,
"title": "Event Choice",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"min_activation_range": {
"type": "number",
"title": "Minimum Activation Range",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"max_activation_range": {
"type": "number",
"title": "Maxmimum Activation Range",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"cooldown_time": { "type": "number", "title": "Cooldown Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"cast_duration": { "type": "number", "title": "Cast Duration", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"filters": { "$ref": "#/definitions/BA" },
"particle_color": {
"type": "string",
"format": "color-hex",
"title": "Particle Color",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"weight": { "type": "integer", "title": "Weight", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"start_sound_event": { "type": "string", "title": "Start Sound Event", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"sequence": { "$ref": "#/definitions/DHB_sequence" }
}
}
},
"sequence": { "$ref": "#/definitions/DHB_sequence", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Sequence" }
},
"examples": [{ "cast_duration": 0.0, "event_choices": [] }]
},
"DHC": {
"description": "Allows the mob to send an event to another mob.",
"type": "object",
"title": "Share Items",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"entity_types": { "$ref": "#/definitions/CGB", "description": "List of entities this mob will share items with", "title": "Entity Types" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"max_dist": {
"type": "number",
"default": 0,
"description": "Maximum distance in blocks this mob will look for entities to share items with",
"title": "Maximum Distance"
}
},
"examples": [{ "goal_radius": 0.5, "max_dist": 0 }]
},
"DHD": {
"description": "Allows the mob to go into stone blocks like Silverfish do. Currently it can only be used by Silverfish.",
"type": "object",
"title": "Silverfish Merge With Stone",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DHE": {
"description": "Allows the mob to alert mobs in nearby blocks to come out. Currently it can only be used by Silverfish.",
"type": "object",
"title": "Silverfish Wake Up Friends",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DHF": {
"description": "Allows Equine mobs to be Horse Traps and be triggered like them, spawning a lightning bolt and a bunch of horses when a player is nearby. Can only be used by Horses, Mules, Donkeys and Skeleton Horses.",
"type": "object",
"title": "Skeleton Horse Trap",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"duration": {
"type": "number",
"default": 1,
"description": "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",
"title": "Duration"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks that the player has to be within to trigger the horse trap",
"title": "Within Radius"
}
},
"examples": [{ "duration": 1, "within_radius": 0 }]
},
"DHG": {
"additionalProperties": false,
"description": "Allows mobs that own a bed to in a village to move to and sleep in it.",
"type": "object",
"title": "Sleep",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"goal_radius": { "type": "number", "default": 0, "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Goal Radius" },
"sleep_collider_height": {
"type": "number",
"default": 1,
"description": "The height of the mob's collider while sleeping",
"title": "Sleep Collider Height"
},
"sleep_collider_width": {
"type": "number",
"default": 1,
"description": "The width of the mob's collider while sleeping",
"title": "Sleep Collider Width"
},
"sleep_y_offset": {
"type": "number",
"default": 1,
"description": "The y offset of the mob's collider while sleeping",
"title": "Sleep Y Offset"
},
"timeout_cooldown": {
"type": "number",
"default": 8,
"description": "The cooldown time in seconds before the goal can be reused after a internal failure or timeout condition",
"title": "Timeout Cooldown"
}
},
"examples": [
{ "cooldown_time": 0, "goal_radius": 0, "sleep_collider_height": 1, "sleep_collider_width": 1, "sleep_y_offset": 1, "timeout_cooldown": 8 }
]
},
"DHH": {
"additionalProperties": false,
"description": "Can only be used by Slimes and Magma Cubes. Allows the mob to use a melee attack like the slime's.",
"type": "object",
"title": "Slime Attack",
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"set_persistent": {
"type": "boolean",
"default": false,
"description": "Allows the actor to be set to persist upon targeting a player",
"title": "Set Persistent"
}
},
"examples": [{ "set_persistent": false }]
},
"DHI": {
"additionalProperties": false,
"description": "Can only be used by Slimes and Magma Cubes. Controls their ability to float in water / lava.",
"type": "object",
"title": "Slime Float",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"jump_chance_percentage": { "type": "number", "title": "Sink Delta", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "jump_chance_percentage": 0.0 }]
},
"DHJ": {
"additionalProperties": false,
"description": "Can only be used by Slimes and Magma Cubes. Allows the mob to continuously jump around like a slime.",
"type": "object",
"title": "Slime Keep On Jumping",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" }, "speed_multiplier": { "$ref": "#/definitions/CGF" } }
},
"DIA": {
"additionalProperties": false,
"description": "Can only be used by Slimes and Magma Cubes. Allows the mob to move in random directions like a slime.",
"type": "object",
"title": "Slime Random Direction",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"add_random_time_range": { "type": "number", "title": "Add Random Time Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"turn_range": { "type": "number", "title": "Turn Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"min_change_direction_time": {
"type": "number",
"title": "Minimum Change Direction Time",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
}
},
"examples": [{ "add_random_time_range": 0.0, "turn_range": 0.0, "min_change_direction_time": 0.0 }]
},
"DIB": {
"additionalProperties": false,
"description": "Allows the mob to take a load off and snack on food that it found nearby.",
"type": "object",
"title": "Snacking",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"items": {
"title": "Items",
"description": "Items that we are interested in snacking on",
"oneOf": [{ "type": "array", "items": { "$ref": "#/definitions/G", "title": "Item" } }, { "$ref": "#/definitions/G" }]
},
"snacking_cooldown": {
"type": "number",
"default": 7.5,
"description": "The cooldown time in seconds before the mob is able to snack again",
"title": "Snacking Cooldown"
},
"snacking_cooldown_min": {
"type": "number",
"default": 0.5,
"description": "The minimum time in seconds before the mob is able to snack again",
"title": "Snacking Cooldown Minimum"
},
"snacking_stop_chance": {
"type": "number",
"description": "This is the chance that the mob will stop snacking, from 0 to 1",
"title": "Snacking Stop Chance"
}
},
"examples": [{ "snacking_cooldown": 7.5, "snacking_cooldown_min": 0.5, "snacking_stop_chance": 0.0 }]
},
"DIC": {
"additionalProperties": false,
"description": "Allows the mob to stop and sneeze possibly startling nearby mobs and dropping an item.",
"type": "object",
"title": "Sneeze",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"drop_item_chance": {
"type": "number",
"default": 1,
"description": "The probability that the mob will drop an item when it sneezes.",
"title": "Drop Item Chance"
},
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types this mob will startle (cause to jump) when it sneezes.",
"title": "Entity Types"
},
"loot_table": {
"type": "string",
"default": "loot_tables/empty.json",
"description": "Loot table to select dropped items from.",
"title": "Loot Table",
"pattern": "^loot_tables/.*.json$"
},
"prepare_sound": {
"type": "string",
"default": "",
"description": "Sound to play when the sneeze is about to happen.",
"title": "Prepare Sound"
},
"prepare_time": {
"type": "number",
"default": 1,
"description": "The time in seconds that the mob takes to prepare to sneeze (while the prepare_sound is playing).",
"title": "Prepare Time"
},
"probability": {
"type": "number",
"default": 0.02,
"minimum": 0,
"maximum": 1,
"description": "The probability of sneezing. A value of 1.00 is 100%",
"title": "Probability"
},
"sound": { "type": "string", "default": "", "description": "Sound to play when the sneeze occurs.", "title": "Sound" },
"within_radius": { "type": "number", "default": 0, "description": "Distance in blocks that mobs will be startled.", "title": "Within Radius" }
},
"examples": [
{
"cooldown_time": 0,
"drop_item_chance": 1,
"loot_table": "loot_tables/empty.json",
"prepare_sound": "",
"prepare_time": 1,
"probability": 0.02,
"sound": "",
"within_radius": 0
}
]
},
"DID": {
"description": "Allows an entity to dive underwater.",
"type": "object",
"title": "Squid Dive",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DIE": {
"description": "Allows the squid to swim away. Can only be used by the Squid.",
"type": "object",
"title": "Squid Flee",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DIF": {
"description": "Allows the squid to swim in place idly. Can only be used by the Squid.",
"type": "object",
"title": "Squid Idle",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DIG": {
"description": "Allows the squid to move away from ground blocks and back to water. Can only be used by the Squid.",
"type": "object",
"title": "Squid Move Away From Ground",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DIH": {
"description": "Allows the squid to stick to the ground when outside water. Can only be used by the Squid.",
"type": "object",
"title": "Squid Out Of Water",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DII": {
"description": "Allows the mob to stay at a certain level when in liquid.",
"type": "object",
"title": "Stalk And Pounce On Target",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"interest_time": {
"type": "number",
"default": 2,
"description": "The amount of time the mob will be interested before pouncing. This happens when the mob is within range of pouncing",
"title": "Interest Time"
},
"leap_distance": {
"type": "number",
"default": 0.8,
"description": "The distance in blocks the mob jumps in the direction of its target",
"title": "Leap Distance"
},
"leap_height": {
"type": "number",
"default": 0.9,
"description": "The height in blocks the mob jumps when leaping at its target",
"title": "Leap Height"
},
"max_stalk_dist": {
"type": "number",
"default": 10,
"description": "The maximum distance away a target can be before the mob gives up on stalking",
"title": "Maximum Stalk Dist"
},
"pounce_max_dist": {
"type": "number",
"default": 5,
"description": "The maximum distance away from the target in blocks to begin pouncing at the target",
"title": "Pounce Maximum Dist"
},
"set_persistent": {
"type": "boolean",
"default": false,
"description": "Allows the actor to be set to persist upon targeting a player",
"title": "Set Persistent"
},
"stalk_speed": {
"type": "number",
"default": 1.2,
"description": "The movement speed in which you stalk your target",
"title": "Stalk Speed"
},
"strike_dist": {
"type": "number",
"default": 2,
"description": "The Maximum distance away from the target when landing from the pounce that will still result in damaging the target",
"title": "Strike Dist"
},
"stuck_time": {
"type": "number",
"default": 2,
"description": "The amount of time the mob will be stuck if they fail and land on a block they can be stuck on",
"title": "Stuck Time"
},
"leap_dist": { "type": "number", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Leap Dist" },
"stuck_blocks": { "$ref": "#/definitions/BA", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "title": "Stuck Block" }
},
"examples": [
{
"interest_time": 2,
"leap_distance": 0.8,
"leap_height": 0.9,
"max_stalk_dist": 10,
"pounce_max_dist": 5,
"set_persistent": false,
"stalk_speed": 1.2,
"strike_dist": 2,
"stuck_time": 2,
"leap_dist": 0.0
}
]
},
"DIJ": {
"description": "Allows the mob to stay put while it is in a sitting state instead of doing something else.",
"type": "object",
"title": "Stay While Sitting",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"DJA": {
"description": "Allows the mob to use the polar bear's melee attack.",
"type": "object",
"title": "Stomp Attack",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"attack_once": { "type": "boolean", "default": false, "description": "If true, this mob will attack only one time.", "title": "Attack Once" },
"attack_types": { "type": "string", "default": "", "description": "Defines the entity types this mob will attack", "title": "Attack Types" },
"probability": {
"type": "number",
"default": 0.02,
"description": "The probability of sneezing. A value of 1.00 is 100%",
"title": "Probability"
},
"random_stop_interval": {
"type": "integer",
"default": 0,
"description": "Defines the probability the mob will stop fighting. A value of 0 disables randomly stopping, while a value of 1 defines a 50% chance",
"title": "Random Stop Interval"
},
"reach_multiplier": {
"type": "number",
"default": 2,
"description": "Multiplier for how far outside its box the mob can reach its target (this can be used to simulate a mob with longer arms by making this bigger)",
"title": "Reach Multiplier"
},
"require_complete_path": {
"type": "boolean",
"default": false,
"description": "If true, this goal will only trigger if the mob can reach its target.",
"title": "Require Complete Path"
},
"sound": { "type": "string", "description": "Sound to play when the sneeze occurs.", "title": "Sound" },
"track_target": {
"type": "boolean",
"default": false,
"description": "If true, this mob will chase after the target as long as it's a valid target",
"title": "Track Target"
},
"stomp_range_multiplier": { "type": "number", "title": "Stomp Range Multiplier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"no_damage_range_multiplier": {
"type": "number",
"title": "No Damage Range Multiplier",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
}
},
"examples": [
{
"attack_once": false,
"attack_types": "",
"probability": 0.02,
"random_stop_interval": 0,
"reach_multiplier": 2,
"require_complete_path": false,
"sound": "example",
"track_target": false,
"stomp_range_multiplier": 0.0,
"no_damage_range_multiplier": 0.0
}
]
},
"DJB": {
"description": "Allows this mob to stomp turtle eggs",
"type": "object",
"title": "Stomp Turtle Egg",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"interval": {
"type": "integer",
"default": 120,
"description": "A random value to determine when to randomly move somewhere. This has a 1/interval chance to choose this goal",
"title": "Interval"
},
"search_count": {
"type": "integer",
"default": 10,
"description": "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",
"title": "Search Count"
},
"search_height": {
"type": "integer",
"default": 1,
"description": "Height in blocks the mob will look for turtle eggs to move towards",
"title": "Search Height"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks it will look for turtle eggs to move towards",
"title": "Search Range"
}
},
"examples": [{ "goal_radius": 0.5, "interval": 120, "search_count": 10, "search_height": 1, "search_range": 0 }]
},
"DJC": {
"description": "Allows the mob to stay at a certain level when in liquid.",
"type": "object",
"title": "Stroll Towards Village",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the goal again",
"title": "Cooldown Time"
},
"goal_radius": {
"type": "number",
"default": 0.5,
"description": "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",
"title": "Goal Radius"
},
"search_range": {
"type": "integer",
"default": 0,
"description": "The distance in blocks to search for points inside villages. If <= 0, find the closest village regardless of distance.",
"title": "Search Range"
},
"speed_multiplier": {
"type": "number",
"default": 1,
"description": "Movement speed multiplier of the mob when using this AI Goal",
"title": "Speed Multiplier"
},
"start_chance": {
"type": "number",
"default": 0.1,
"description": "This is the chance that the mob will start this goal, from 0 to 1",
"title": "Start Chance"
}
},
"examples": [{ "cooldown_time": 0, "goal_radius": 0.5, "search_range": 0, "speed_multiplier": 1, "start_chance": 0.1 }]
},
"DJD": {
"description": "Allows the mob to attack the player by summoning other entities.",
"title": "Stay While Sitting",
"type": "object",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"summon_choices": {
"type": "array",
"description": "List of spells for the mob to use to summon entities",
"title": "Summon Choices",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"cast_duration": { "type": "number", "description": "Time in seconds the spell casting will take", "title": "Cast Duration" },
"cooldown_time": {
"type": "number",
"default": 0,
"description": "Time in seconds the mob has to wait before using the spell again",
"title": "Cooldown Time"
},
"do_casting": {
"type": "boolean",
"default": true,
"description": "If true, the mob will do the casting animations and render spell particles",
"title": "Do Casting"
},
"filters": { "$ref": "#/definitions/BA" },
"max_activation_range": {
"type": "number",
"default": -1,
"description": "Upper bound of the activation distance in blocks for this spell",
"title": "Maximum Activation Range"
},
"min_activation_range": {
"type": "number",
"default": 1,
"description": "Lower bound of the activation distance in blocks for this spell",
"title": "Minimum Activation Range"
},
"particle_color": {
"description": "The color of the particles for this spell",
"title": "Particle Color",
"oneOf": [
{ "type": "integer", "default": 0 },
{ "type": "string", "format": "color-hex" }
]
},
"sequence": {
"type": "array",
"description": "List of steps for the spell",
"title": "Sequence",
"items": {
"type": "object",
"additionalProperties": false,
"title": "Sequence",
"properties": {
"delay": {
"type": "number",
"default": 0,
"description": "Amount of time in seconds to wait before this step starts",
"title": "Delay"
},
"delay_per_summon": {
"type": "number",
"default": 0,
"title": "Delay Per Summon",
"description": "Amount of time in seconds before each entity is summoned in this step"
},
"entity_lifespan": {
"type": "number",
"title": "Entity Lifespan",
"default": -1,
"description": "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"
},
"base_delay": {
"type": "number",
"default": 0,
"description": "Amount of time in seconds to wait before this step starts",
"title": "Base Delay"
},
"entity_type": {
"type": "string",
"description": "The entity type of the entities we will spawn in this step",
"title": "Entity Type"
},
"num_entities_spawned": {
"type": "integer",
"default": 1,
"description": "Number of entities that will be spawned in this step",
"title": "Number Entities Spawned"
},
"shape": {
"type": "string",
"default": "line",
"description": "The base shape of this step. Valid values are circle and line",
"title": "Shape"
},
"size": { "type": "number", "default": 1, "description": "The base size of the entity", "title": "Size" },
"sound_event": { "type": "string", "description": "The sound event to play for this step", "title": "Sound Event" },
"summon_cap": {
"type": "integer",
"default": 0,
"description": "Maximum number of summoned entities at any given time",
"title": "Summon Cap"
},
"summon_cap_radius": {
"type": "number",
"default": 0,
"description": "Maximum radius where the summon entities can spawn",
"title": "Summon Cap Radius"
},
"target": {
"type": "string",
"default": "self",
"description": "The target of the spell. This is where the spell will start (line will start here, circle will be centered here)",
"title": "Target"
}
}
}
},
"start_sound_event": { "type": "string", "description": "The sound event to play when using this spell", "title": "Start Sound Event" },
"weight": {
"type": "number",
"title": "Weight",
"default": 0,
"description": "The weight of this spell. Controls how likely the mob is to choose this spell when casting one"
}
}
}
}
},
"examples": [{ "summon_choices": [] }]
},
"DJE": {
"description": "Allows the creeper to swell up when a player is nearby. It can only be used by Creepers.",
"title": "Stay While Sitting",
"type": "object",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"start_distance": {
"type": "number",
"default": 10,
"description": "This mob starts swelling when a target is at least this many blocks away",
"title": "Start Distance"
},
"stop_distance": {
"type": "number",
"default": 2,
"description": "This mob stops swelling when a target has moved away at least this many blocks",
"title": "Stop Distance"
}
},
"examples": [{ "start_distance": 10, "stop_distance": 2 }]
},
"DJF": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Swim Idle",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"idle_time": { "type": "number", "title": "Idle Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"success_rate": { "type": "number", "title": "Succes Rate", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "idle_time": 0.0, "success_rate": 0.0 }]
},
"DJG": {
"description": "Has the fish swim around when they can't pathfind",
"type": "object",
"title": "Swim Idle",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"interval": { "type": "number", "title": "Interval", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"look_ahead": { "type": "number", "title": "Look Ahead", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"wander_time": { "type": "number", "title": "Wander Time", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "interval": 0.0, "look_ahead": 0.0, "wander_time": 0.0 }]
},
"DJH": {
"type": "object",
"title": "Swim With Entity",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"success_rate": { "type": "number", "title": "Success Rate", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"chance_to_stop": { "type": "number", "title": "Chance To Stop", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"state_check_interval": { "type": "number", "title": "State Check Interval", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"catch_up_threshold": { "type": "number", "title": "Catch Up Threshold", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"match_direction_threshold": {
"type": "number",
"title": "Match Direction Threshold",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED"
},
"catch_up_multiplier": { "type": "number", "title": "Catch Up Multiplier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"search_range": { "type": "number", "title": "Search Range", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"stop_distance": { "type": "number", "title": "Stop Distance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"entity_types": { "$ref": "#/definitions/CGB", "title": "Entity Types", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [
{
"success_rate": 0.0,
"chance_to_stop": 0.0,
"state_check_interval": 0.0,
"catch_up_threshold": 0.0,
"match_direction_threshold": 0.0,
"catch_up_multiplier": 0.0,
"search_range": 0.0,
"stop_distance": 0.0
}
]
},
"DJI": {
"description": "Allows the mob to move to attack a target. The goal ends if it has a horizontal collision or gets hit. Built to be used with flying mobs.",
"type": "object",
"title": "Swoop Attack",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"damage_reach": { "type": "number", "title": "Damage Reach", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"delay_range": {
"$ref": "#/definitions/ID",
"default": [[10.0, 20.0]],
"description": "Range of time in seconds between uses of this goal.",
"title": "Delay Range"
}
},
"examples": [{ "damage_reach": 0.0 }]
},
"DJJ": {
"description": "Can only be used by Villagers. Allows the mob to accept flowers from Iron Golems.",
"type": "object",
"title": "Take Flower",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"EAA": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "object",
"title": "Target When Pushed",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": { "$ref": "#/definitions/CGB", "title": "Entity Types", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"percent_chance": { "type": "number", "title": "Percent Chance", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" }
},
"examples": [{ "percent_chance": 0.0 }]
},
"EAB": {
"description": "Allows the mob to be tempted by food they like.",
"type": "object",
"title": "Tempt",
"additionalProperties": false,
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"can_get_scared": {
"type": "boolean",
"default": false,
"description": "If true, the mob can stop being tempted if the player moves too fast while close to this mob",
"title": "Can Get Scared"
},
"can_tempt_while_ridden": { "type": "boolean", "title": "Can Tempt While Ridden", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"can_tempt_vertically": { "type": "boolean", "title": "Can Tempt Vertically", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED" },
"items": { "type": "array", "description": "List of items this mob is tempted by", "items": { "$ref": "#/definitions/G" }, "title": "Items" },
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks this mob can get tempted by a player holding an item they like",
"title": "Within Radius"
}
},
"examples": [{ "can_get_scared": false, "can_tempt_while_ridden": true, "can_tempt_vertically": true, "items": [], "within_radius": 0 }]
},
"EAC": {
"description": "Allows the mob to look at a player that is holding a tradable item.",
"type": "object",
"title": "Trade Interest",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"carried_item_switch_time": {
"type": "number",
"default": 2,
"description": "The Maximum time in seconds that the trader will hold an item before attempting to switch for a different item that takes the same trade",
"title": "Carried Item Switch Time"
},
"cooldown": {
"type": "number",
"default": 2,
"description": "The time in seconds before the trader can use this goal again",
"title": "Cooldown"
},
"interest_time": {
"type": "number",
"default": 45,
"description": "The Maximum time in seconds that the trader will be interested with showing it's trade items",
"title": "Interest_time"
},
"remove_item_time": {
"type": "number",
"default": 1,
"description": "The Maximum time in seconds that the trader will wait when you no longer have items to trade",
"title": "Remove Item Time"
},
"within_radius": {
"type": "number",
"default": 0,
"description": "Distance in blocks this mob can be interested by a player holding an item they like",
"title": "Within Radius"
}
},
"examples": [{ "carried_item_switch_time": 2, "cooldown": 2, "interest_time": 45, "remove_item_time": 1, "within_radius": 0 }]
},
"EAD": {
"description": "Allows the player to trade with this mob.",
"type": "object",
"title": "Trade With Player",
"additionalProperties": false,
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"EAE": {
"description": "Allows the mob to target the same entity its owner is targeting.",
"additionalProperties": false,
"type": "object",
"title": "Vex Copy Owner Target",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": { "$ref": "#/definitions/CGB", "description": "List of entities this mob can copy the owner from.", "title": "Entity Types" }
}
},
"EAF": {
"description": "Allows the mob to target the same entity its owner is targeting.",
"additionalProperties": false,
"type": "object",
"title": "Vex Random Move",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": { "$ref": "#/definitions/CGB", "description": "List of entities this mob can copy the owner from.", "title": "Entity Types" }
}
},
"EAG": {
"description": "Allows the wither to launch random attacks. Can only be used by the Wither Boss.",
"additionalProperties": false,
"type": "object",
"title": "Wither Random Attack Pos Goal",
"required": [],
"properties": { "priority": { "$ref": "#/definitions/CFI" } }
},
"EAH": {
"description": "Allows the wither to launch random attacks. Can only be used by the Wither Boss.",
"additionalProperties": false,
"type": "object",
"title": "Wither Target Highest Damage",
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"entity_types": {
"$ref": "#/definitions/CGB",
"description": "List of entity types the wither takes into account to find who dealt the most damage to it",
"title": "Entity Types"
}
}
},
"EAI": {
"type": "object",
"title": "Work",
"description": "Allows an entity to navigate and interact with a point of interest that has been assigned as their worksite.",
"additionalProperties": false,
"required": [],
"properties": {
"priority": { "$ref": "#/definitions/CFI" },
"speed_multiplier": { "$ref": "#/definitions/CGF" },
"active_time": {
"type": "integer",
"default": 0,
"description": "The amount of ticks the NPC will stay in their the work location",
"title": "Active Time"
},
"can_work_in_rain": {
"type": "boolean",
"default": false,
"description": "If true, this entity can work when their jobsite POI is being rained on.",
"title": "Can Work In Rain"
},
"goal_cooldown": {
"type": "integer",
"default": 0,
"description": "The amount of ticks the goal will be on cooldown before it can be used again",
"title": "Goal Cooldown"
},
"on_arrival": {
"$ref": "#/definitions/H",
"description": "Event to run when the mob reaches their jobsite and finishes working.",
"title": "On Arrival"
},
"sound_delay_max": {
"type": "integer",
"default": 0,
"description": "The Maximum interval in which a sound will play",
"title": "Sound Delay Maximum"
},
"sound_delay_min": {
"type": "integer",
"default": 0,
"description": "The Minimum interval in which a sound will play",
"title": "Sound Delay Minimum"
},
"work_in_rain_tolerance": {
"type": "integer",
"default": -1,
"description": "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",
"title": "Work In Rain Tolerance"
}
},
"examples": [
{ "active_time": 0, "can_work_in_rain": false, "goal_cooldown": 0, "sound_delay_max": 0, "sound_delay_min": 0, "work_in_rain_tolerance": -1 }
]
},
"D": {
"additionalProperties": false,
"type": "object",
"title": "Components",
"description": "A collection of components",
"required": [],
"properties": {
"minecraft:addrider": { "$ref": "#/definitions/E" },
"minecraft:ageable": { "$ref": "#/definitions/F" },
"minecraft:ambient_sound_interval": { "$ref": "#/definitions/I" },
"minecraft:angry": { "$ref": "#/definitions/J" },
"minecraft:annotation.break_door": { "$ref": "#/definitions/IA" },
"minecraft:annotation.open_door": { "$ref": "#/definitions/IB" },
"minecraft:attack": { "$ref": "#/definitions/IC" },
"minecraft:attack_damage": { "$ref": "#/definitions/IE" },
"minecraft:balloonable": { "$ref": "#/definitions/IF" },
"minecraft:block_climber": { "$ref": "#/definitions/IG" },
"minecraft:boss": { "$ref": "#/definitions/IH" },
"minecraft:boostable": { "$ref": "#/definitions/II" },
"minecraft:break_blocks": { "$ref": "#/definitions/IJ" },
"minecraft:breathable": { "$ref": "#/definitions/JB" },
"minecraft:breedable": { "$ref": "#/definitions/JD" },
"minecraft:bribeable": { "$ref": "#/definitions/JE" },
"minecraft:burns_in_daylight": { "$ref": "#/definitions/JF" },
"minecraft:can_climb": { "$ref": "#/definitions/JG" },
"minecraft:can_fly": { "$ref": "#/definitions/JH" },
"minecraft:can_power_jump": { "$ref": "#/definitions/JI" },
"minecraft:collision_box": { "$ref": "#/definitions/JJ" },
"minecraft:color": { "$ref": "#/definitions/BAA" },
"minecraft:color2": { "$ref": "#/definitions/BAB" },
"minecraft:combat_regeneration": { "$ref": "#/definitions/BAC" },
"minecraft:drying_out_timer": { "$ref": "#/definitions/BAD" },
"minecraft:conditional_bandwidth_optimization": { "$ref": "#/definitions/BAE" },
"minecraft:custom_hit_test": { "$ref": "#/definitions/BAF" },
"minecraft:damage_over_time": { "$ref": "#/definitions/BAG" },
"minecraft:damage_sensor": { "$ref": "#/definitions/BAH" },
"minecraft:default_look_angle": { "$ref": "#/definitions/BAJ" },
"minecraft:despawn": { "$ref": "#/definitions/BBA" },
"minecraft:dweller": { "$ref": "#/definitions/BBB" },
"minecraft:economy_trade_table": { "$ref": "#/definitions/BBC" },
"minecraft:environment_sensor": { "$ref": "#/definitions/BBD" },
"minecraft:equipment": { "$ref": "#/definitions/BBE" },
"minecraft:equippable": { "$ref": "#/definitions/BBG" },
"minecraft:explode": { "$ref": "#/definitions/BBH" },
"minecraft:fall_damage": { "$ref": "#/definitions/BBI" },
"minecraft:fire_immune": { "$ref": "#/definitions/BBJ" },
"minecraft:flocking": { "$ref": "#/definitions/BCA" },
"minecraft:floats_in_liquid": { "$ref": "#/definitions/BCB" },
"minecraft:flying_speed": { "$ref": "#/definitions/BCC" },
"minecraft:follow_range": { "$ref": "#/definitions/BCD" },
"minecraft:friction_modifier": { "$ref": "#/definitions/BCE" },
"minecraft:genetics": { "$ref": "#/definitions/BCF" },
"minecraft:giveable": { "$ref": "#/definitions/BCG" },
"minecraft:ground_offset": { "$ref": "#/definitions/BCH" },
"minecraft:healable": { "$ref": "#/definitions/BCI" },
"minecraft:health": { "$ref": "#/definitions/BCJ" },
"minecraft:hurt_when_wet": { "$ref": "#/definitions/BDA" },
"minecraft:hurt_on_condition": { "$ref": "#/definitions/BDB" },
"minecraft:input_ground_controlled": { "$ref": "#/definitions/BDC" },
"minecraft:inside_block_notifier": { "$ref": "#/definitions/BDD" },
"minecraft:insomnia": { "$ref": "#/definitions/BDF" },
"minecraft:interact": { "$ref": "#/definitions/BDG" },
"minecraft:inventory": { "$ref": "#/definitions/BDH" },
"minecraft:is_baby": { "$ref": "#/definitions/BDI" },
"minecraft:is_charged": { "$ref": "#/definitions/BDJ" },
"minecraft:is_chested": { "$ref": "#/definitions/BEA" },
"minecraft:is_dyeable": { "$ref": "#/definitions/BEB" },
"minecraft:is_hidden_when_invisible": { "$ref": "#/definitions/BEC" },
"minecraft:is_ignited": { "$ref": "#/definitions/BED" },
"minecraft:is_illager_captain": { "$ref": "#/definitions/BEE" },
"minecraft:is_saddled": { "$ref": "#/definitions/BEF" },
"minecraft:is_shaking": { "$ref": "#/definitions/BEG" },
"minecraft:is_sheared": { "$ref": "#/definitions/BEH" },
"minecraft:is_stackable": { "$ref": "#/definitions/BEI" },
"minecraft:is_stunned": { "$ref": "#/definitions/BEJ" },
"minecraft:is_tamed": { "$ref": "#/definitions/BFA" },
"minecraft:item_controllable": { "$ref": "#/definitions/BFB" },
"minecraft:item_hopper": { "$ref": "#/definitions/BFC" },
"minecraft:jump.dynamic": { "$ref": "#/definitions/BFD" },
"minecraft:jump.static": { "$ref": "#/definitions/BFE" },
"minecraft:knockback_resistance": { "$ref": "#/definitions/BFF" },
"minecraft:lava_movement": { "$ref": "#/definitions/BFG" },
"minecraft:leashable": { "$ref": "#/definitions/BFH" },
"minecraft:lookat": { "$ref": "#/definitions/BFI" },
"minecraft:loot": { "$ref": "#/definitions/BFJ" },
"minecraft:managed_wandering_trader": { "$ref": "#/definitions/BGA" },
"minecraft:mark_variant": { "$ref": "#/definitions/BGB" },
"minecraft:movement": { "$ref": "#/definitions/BGC" },
"minecraft:movement.amphibious": { "$ref": "#/definitions/BGD" },
"minecraft:movement.basic": { "$ref": "#/definitions/BGE" },
"minecraft:movement.fly": { "$ref": "#/definitions/BGF" },
"minecraft:movement.generic": { "$ref": "#/definitions/BGG" },
"minecraft:movement.glide": { "$ref": "#/definitions/BGH" },
"minecraft:movement.jump": { "$ref": "#/definitions/BGI" },
"minecraft:movement.skip": { "$ref": "#/definitions/BGJ" },
"minecraft:movement.sway": { "$ref": "#/definitions/BHA" },
"minecraft:nameable": { "$ref": "#/definitions/BHB" },
"minecraft:navigation.climb": { "$ref": "#/definitions/BHC" },
"minecraft:navigation.float": { "$ref": "#/definitions/BHE" },
"minecraft:navigation.fly": { "$ref": "#/definitions/BHF" },
"minecraft:navigation.generic": { "$ref": "#/definitions/BHG" },
"minecraft:navigation.swim": { "$ref": "#/definitions/BHH" },
"minecraft:navigation.walk": { "$ref": "#/definitions/BHI" },
"minecraft:on_death": { "$ref": "#/definitions/BHJ" },
"minecraft:on_friendly_anger": { "$ref": "#/definitions/BIA" },
"minecraft:on_hurt": { "$ref": "#/definitions/BIB" },
"minecraft:on_hurt_by_player": { "$ref": "#/definitions/BIC" },
"minecraft:on_ignite": { "$ref": "#/definitions/BID" },
"minecraft:on_start_landing": { "$ref": "#/definitions/BIE" },
"minecraft:on_start_takeoff": { "$ref": "#/definitions/BIF" },
"minecraft:on_target_acquired": { "$ref": "#/definitions/BIG" },
"minecraft:on_target_escape": { "$ref": "#/definitions/BIH" },
"minecraft:on_wake_with_owner": { "$ref": "#/definitions/BII" },
"minecraft:out_of_control": { "$ref": "#/definitions/BIJ" },
"minecraft:player.saturation": { "$ref": "#/definitions/BJA" },
"minecraft:player.exhaustion": { "$ref": "#/definitions/BJB" },
"minecraft:player.level": { "$ref": "#/definitions/BJC" },
"minecraft:player.experience": { "$ref": "#/definitions/BJD" },
"minecraft:peek": { "$ref": "#/definitions/BJE" },
"minecraft:persistent": { "$ref": "#/definitions/BJF" },
"minecraft:physics": { "$ref": "#/definitions/BJG" },
"minecraft:preferred_path": { "$ref": "#/definitions/BJH" },
"minecraft:projectile": { "$ref": "#/definitions/BJI" },
"minecraft:push_through": { "$ref": "#/definitions/BJJ" },
"minecraft:pushable": { "$ref": "#/definitions/CAA" },
"minecraft:raid_trigger": { "$ref": "#/definitions/CAB" },
"minecraft:rail_movement": { "$ref": "#/definitions/CAC" },
"minecraft:rail_sensor": { "$ref": "#/definitions/CAD" },
"minecraft:ravager_blocked": { "$ref": "#/definitions/CAE" },
"minecraft:rideable": { "$ref": "#/definitions/CAF" },
"minecraft:scale": { "$ref": "#/definitions/CAI" },
"minecraft:scale_by_age": { "$ref": "#/definitions/CAJ" },
"minecraft:scheduler": { "$ref": "#/definitions/CBA" },
"minecraft:shareables": { "$ref": "#/definitions/CBB" },
"minecraft:shooter": { "$ref": "#/definitions/CBC" },
"minecraft:sittable": { "$ref": "#/definitions/CBD" },
"minecraft:skin_id": { "$ref": "#/definitions/CBE" },
"minecraft:sound_volume": { "$ref": "#/definitions/CBF" },
"minecraft:spawn_entity": { "$ref": "#/definitions/CBG" },
"minecraft:spell_effects": { "$ref": "#/definitions/CBH" },
"minecraft:tameable": { "$ref": "#/definitions/CBI" },
"minecraft:tamemount": { "$ref": "#/definitions/CBJ" },
"minecraft:target_nearby_sensor": { "$ref": "#/definitions/CCA" },
"minecraft:teleport": { "$ref": "#/definitions/CCB" },
"minecraft:tick_world": { "$ref": "#/definitions/CCC" },
"minecraft:timer": { "$ref": "#/definitions/CCD" },
"minecraft:trade_table": { "$ref": "#/definitions/CCE" },
"minecraft:transformation": { "$ref": "#/definitions/CCF" },
"minecraft:trust": { "$ref": "#/definitions/CCG" },
"minecraft:trusting": { "$ref": "#/definitions/CCH" },
"minecraft:type_family": { "$ref": "#/definitions/CCI" },
"minecraft:variant": { "$ref": "#/definitions/CCJ" },
"minecraft:underwater_movement": { "$ref": "#/definitions/CDA" },
"minecraft:walk_animation_speed": { "$ref": "#/definitions/CDB" },
"minecraft:wants_jockey": { "$ref": "#/definitions/CDC" },
"minecraft:water_movement": { "$ref": "#/definitions/CDD" },
"minecraft:admire_item": { "$ref": "#/definitions/CDE" },
"minecraft:area_attack": { "$ref": "#/definitions/CDF" },
"minecraft:attack_cooldown": { "$ref": "#/definitions/CDG" },
"minecraft:barter": { "$ref": "#/definitions/CDH" },
"minecraft:block_sensor": { "$ref": "#/definitions/CDI" },
"minecraft:buoyant": { "$ref": "#/definitions/CDJ" },
"minecraft:celebrate_hunt": { "$ref": "#/definitions/CEA" },
"minecraft:entity_sensor": { "$ref": "#/definitions/CEB" },
"minecraft:equip_item": { "$ref": "#/definitions/CEC" },
"minecraft:experience_reward": { "$ref": "#/definitions/CED" },
"minecraft:group_size": { "$ref": "#/definitions/CEE" },
"minecraft:grows_crop": { "$ref": "#/definitions/CEF" },
"minecraft:home": { "$ref": "#/definitions/CEG" },
"minecraft:instant_despawn": { "$ref": "#/definitions/CEH" },
"minecraft:mob_effect": { "$ref": "#/definitions/CEI" },
"minecraft:movement.hover": { "$ref": "#/definitions/CEJ" },
"minecraft:navigation.hover": { "$ref": "#/definitions/CFA" },
"minecraft:npc": { "$ref": "#/definitions/CFB" },
"minecraft:strength": { "$ref": "#/definitions/CFC" },
"minecraft:trail": { "$ref": "#/definitions/CFD" },
"minecraft:hide": { "$ref": "#/definitions/CFE" },
"minecraft:horse.jump_strength": { "$ref": "#/definitions/CFF" },
"minecraft:trade_resupply": { "$ref": "#/definitions/CFG" },
"minecraft:behavior.admire_item": { "$ref": "#/definitions/CFH" },
"minecraft:behavior.avoid_block": { "$ref": "#/definitions/CFJ" },
"minecraft:behavior.avoid_mob_type": { "$ref": "#/definitions/CGA" },
"minecraft:behavior.barter": { "$ref": "#/definitions/CGC" },
"minecraft:behavior.beg": { "$ref": "#/definitions/CGD" },
"minecraft:behavior.break_door": { "$ref": "#/definitions/CGE" },
"minecraft:behavior.breed": { "$ref": "#/definitions/CGG" },
"minecraft:behavior.celebrate": { "$ref": "#/definitions/CGH" },
"minecraft:behavior.charge_attack": { "$ref": "#/definitions/CGI" },
"minecraft:behavior.charge_held_item": { "$ref": "#/definitions/CGJ" },
"minecraft:behavior.circle_around_anchor": { "$ref": "#/definitions/CHA" },
"minecraft:behavior.controlled_by_player": { "$ref": "#/definitions/CHB" },
"minecraft:behavior.defend_trusted_target": { "$ref": "#/definitions/CHC" },
"minecraft:behavior.defend_village_target": { "$ref": "#/definitions/CHD" },
"minecraft:behavior.delayed_attack": { "$ref": "#/definitions/CHE" },
"minecraft:behavior.door_interact": { "$ref": "#/definitions/CHF" },
"minecraft:behavior.dragonchargeplayer": { "$ref": "#/definitions/CHG" },
"minecraft:behavior.dragondeath": { "$ref": "#/definitions/CHH" },
"minecraft:behavior.dragonflaming": { "$ref": "#/definitions/CHI" },
"minecraft:behavior.dragonholdingpattern": { "$ref": "#/definitions/CHJ" },
"minecraft:behavior.dragonlanding": { "$ref": "#/definitions/CIA" },
"minecraft:behavior.dragonscanning": { "$ref": "#/definitions/CIB" },
"minecraft:behavior.dragonstrafeplayer": { "$ref": "#/definitions/CIC" },
"minecraft:behavior.dragontakeoff": { "$ref": "#/definitions/CID" },
"minecraft:behavior.drink_potion": { "$ref": "#/definitions/CIE" },
"minecraft:behavior.drop_item_for": { "$ref": "#/definitions/CIF" },
"minecraft:behavior.eat_block": { "$ref": "#/definitions/CIG" },
"minecraft:behavior.eat_carried_item": { "$ref": "#/definitions/CIH" },
"minecraft:behavior.enderman_leave_block": { "$ref": "#/definitions/CII" },
"minecraft:behavior.enderman_take_block": { "$ref": "#/definitions/CIJ" },
"minecraft:behavior.equip_item": { "$ref": "#/definitions/CJA" },
"minecraft:behavior.explore_outskirts": { "$ref": "#/definitions/CJB" },
"minecraft:behavior.find_cover": { "$ref": "#/definitions/CJC" },
"minecraft:behavior.find_mount": { "$ref": "#/definitions/CJD" },
"minecraft:behavior.find_underwater_treasure": { "$ref": "#/definitions/CJE" },
"minecraft:behavior.flee_sun": { "$ref": "#/definitions/CJF" },
"minecraft:behavior.float": { "$ref": "#/definitions/CJG" },
"minecraft:behavior.float_wander": { "$ref": "#/definitions/CJH" },
"minecraft:behavior.follow_caravan": { "$ref": "#/definitions/CJI" },
"minecraft:behavior.follow_mob": { "$ref": "#/definitions/CJJ" },
"minecraft:behavior.follow_owner": { "$ref": "#/definitions/DAA" },
"minecraft:behavior.follow_parent": { "$ref": "#/definitions/DAB" },
"minecraft:behavior.follow_target_captain": { "$ref": "#/definitions/DAC" },
"minecraft:behavior.go_home": { "$ref": "#/definitions/DAD" },
"minecraft:behavior.guardian_attack": { "$ref": "#/definitions/DAE" },
"minecraft:behavior.harvest_farm_block": { "$ref": "#/definitions/DAF" },
"minecraft:behavior.hide": { "$ref": "#/definitions/DAG" },
"minecraft:behavior.hold_ground": { "$ref": "#/definitions/DAH" },
"minecraft:behavior.hurt_by_target": { "$ref": "#/definitions/DAI" },
"minecraft:behavior.inspect_bookshelf": { "$ref": "#/definitions/DAJ" },
"minecraft:behavior.jump_to_block": { "$ref": "#/definitions/DBA" },
"minecraft:behavior.knockback_roar": { "$ref": "#/definitions/DBB" },
"minecraft:behavior.lay_down": { "$ref": "#/definitions/DBC" },
"minecraft:behavior.lay_egg": { "$ref": "#/definitions/DBD" },
"minecraft:behavior.leap_at_target": { "$ref": "#/definitions/DBE" },
"minecraft:behavior.look_at_entity": { "$ref": "#/definitions/DBF" },
"minecraft:behavior.look_at_player": { "$ref": "#/definitions/DBG" },
"minecraft:behavior.look_at_target": { "$ref": "#/definitions/DBH" },
"minecraft:behavior.look_at_trading_player": { "$ref": "#/definitions/DBI" },
"minecraft:behavior.make_love": { "$ref": "#/definitions/DBJ" },
"minecraft:behavior.melee_attack": { "$ref": "#/definitions/DCA" },
"minecraft:behavior.mingle": { "$ref": "#/definitions/DCB" },
"minecraft:behavior.mount_pathing": { "$ref": "#/definitions/DCC" },
"minecraft:behavior.move_indoors": { "$ref": "#/definitions/DCD" },
"minecraft:behavior.move_through_village": { "$ref": "#/definitions/DCE" },
"minecraft:behavior.move_to_block": { "$ref": "#/definitions/DCF" },
"minecraft:behavior.move_to_land": { "$ref": "#/definitions/DCG" },
"minecraft:behavior.move_to_lava": { "$ref": "#/definitions/DCH" },
"minecraft:behavior.move_to_liquid": { "$ref": "#/definitions/DCI" },
"minecraft:behavior.move_to_poi": { "$ref": "#/definitions/DCJ" },
"minecraft:behavior.move_to_random_block": { "$ref": "#/definitions/DDA" },
"minecraft:behavior.move_to_village": { "$ref": "#/definitions/DDB" },
"minecraft:behavior.move_to_water": { "$ref": "#/definitions/DDC" },
"minecraft:behavior.move_towards_dwelling_restriction": { "$ref": "#/definitions/DDD" },
"minecraft:behavior.move_towards_home_restriction": { "$ref": "#/definitions/DDE" },
"minecraft:behavior.move_towards_restriction": { "$ref": "#/definitions/DDF" },
"minecraft:behavior.move_towards_target": { "$ref": "#/definitions/DDG" },
"minecraft:behavior.nap": { "$ref": "#/definitions/DDH" },
"minecraft:behavior.nearest_attackable_target": { "$ref": "#/definitions/DDI" },
"minecraft:behavior.nearest_prioritized_attackable_target": { "$ref": "#/definitions/DDJ" },
"minecraft:behavior.ocelot_sit_on_block": { "$ref": "#/definitions/DEA" },
"minecraft:behavior.ocelotattack": { "$ref": "#/definitions/DEB" },
"minecraft:behavior.offer_flower": { "$ref": "#/definitions/DEC" },
"minecraft:behavior.open_door": { "$ref": "#/definitions/DED" },
"minecraft:behavior.owner_hurt_by_target": { "$ref": "#/definitions/DEE" },
"minecraft:behavior.owner_hurt_target": { "$ref": "#/definitions/DEF" },
"minecraft:behavior.panic": { "$ref": "#/definitions/DEG" },
"minecraft:behavior.peek": { "$ref": "#/definitions/DEH" },
"minecraft:behavior.pet_sleep_with_owner": { "$ref": "#/definitions/DEI" },
"minecraft:behavior.pickup_items": { "$ref": "#/definitions/DEJ" },
"minecraft:behavior.play": { "$ref": "#/definitions/DFA" },
"minecraft:behavior.play_dead": { "$ref": "#/definitions/DFB" },
"minecraft:behavior.player_ride_tamed": { "$ref": "#/definitions/DFC" },
"minecraft:behavior.raid_garden": { "$ref": "#/definitions/DFD" },
"minecraft:behavior.ram_attack": { "$ref": "#/definitions/DFE" },
"minecraft:behavior.random_breach": { "$ref": "#/definitions/DFF" },
"minecraft:behavior.random_fly": { "$ref": "#/definitions/DFG" },
"minecraft:behavior.random_hover": { "$ref": "#/definitions/DFH" },
"minecraft:behavior.random_look_around": { "$ref": "#/definitions/DFI" },
"minecraft:behavior.random_look_around_and_sit": { "$ref": "#/definitions/DFJ" },
"minecraft:behavior.random_sitting": { "$ref": "#/definitions/DGA" },
"minecraft:behavior.random_stroll": { "$ref": "#/definitions/DGB" },
"minecraft:behavior.random_swim": { "$ref": "#/definitions/DGC" },
"minecraft:behavior.ranged_attack": { "$ref": "#/definitions/DGD" },
"minecraft:behavior.receive_love": { "$ref": "#/definitions/DGE" },
"minecraft:behavior.restrict_open_door": { "$ref": "#/definitions/DGF" },
"minecraft:behavior.restrict_sun": { "$ref": "#/definitions/DGG" },
"minecraft:behavior.rise_to_liquid_level": { "$ref": "#/definitions/DGH" },
"minecraft:behavior.roll": { "$ref": "#/definitions/DGI" },
"minecraft:behavior.run_around_like_crazy": { "$ref": "#/definitions/DGJ" },
"minecraft:behavior.scared": { "$ref": "#/definitions/DHA" },
"minecraft:behavior.send_event": { "$ref": "#/definitions/DHB" },
"minecraft:behavior.share_items": { "$ref": "#/definitions/DHC" },
"minecraft:behavior.silverfish_merge_with_stone": { "$ref": "#/definitions/DHD" },
"minecraft:behavior.silverfish_wake_up_friends": { "$ref": "#/definitions/DHE" },
"minecraft:behavior.skeleton_horse_trap": { "$ref": "#/definitions/DHF" },
"minecraft:behavior.sleep": { "$ref": "#/definitions/DHG" },
"minecraft:behavior.slime_attack": { "$ref": "#/definitions/DHH" },
"minecraft:behavior.slime_float": { "$ref": "#/definitions/DHI" },
"minecraft:behavior.slime_keep_on_jumping": { "$ref": "#/definitions/DHJ" },
"minecraft:behavior.slime_random_direction": { "$ref": "#/definitions/DIA" },
"minecraft:behavior.snacking": { "$ref": "#/definitions/DIB" },
"minecraft:behavior.sneeze": { "$ref": "#/definitions/DIC" },
"minecraft:behavior.squid_dive": { "$ref": "#/definitions/DID" },
"minecraft:behavior.squid_flee": { "$ref": "#/definitions/DIE" },
"minecraft:behavior.squid_idle": { "$ref": "#/definitions/DIF" },
"minecraft:behavior.squid_move_away_from_ground": { "$ref": "#/definitions/DIG" },
"minecraft:behavior.squid_out_of_water": { "$ref": "#/definitions/DIH" },
"minecraft:behavior.stalk_and_pounce_on_target": { "$ref": "#/definitions/DII" },
"minecraft:behavior.stay_while_sitting": { "$ref": "#/definitions/DIJ" },
"minecraft:behavior.stomp_attack": { "$ref": "#/definitions/DJA" },
"minecraft:behavior.stomp_turtle_egg": { "$ref": "#/definitions/DJB" },
"minecraft:behavior.stroll_towards_village": { "$ref": "#/definitions/DJC" },
"minecraft:behavior.summon_entity": { "$ref": "#/definitions/DJD" },
"minecraft:behavior.swell": { "$ref": "#/definitions/DJE" },
"minecraft:behavior.swim_idle": { "$ref": "#/definitions/DJF" },
"minecraft:behavior.swim_wander": { "$ref": "#/definitions/DJG" },
"minecraft:behavior.swim_with_entity": { "$ref": "#/definitions/DJH" },
"minecraft:behavior.swoop_attack": { "$ref": "#/definitions/DJI" },
"minecraft:behavior.take_flower": { "$ref": "#/definitions/DJJ" },
"minecraft:behavior.target_when_pushed": { "$ref": "#/definitions/EAA" },
"minecraft:behavior.tempt": { "$ref": "#/definitions/EAB" },
"minecraft:behavior.trade_interest": { "$ref": "#/definitions/EAC" },
"minecraft:behavior.trade_with_player": { "$ref": "#/definitions/EAD" },
"minecraft:behavior.vex_copy_owner_target": { "$ref": "#/definitions/EAE" },
"minecraft:behavior.vex_random_move": { "$ref": "#/definitions/EAF" },
"minecraft:behavior.wither_random_attack_pos_goal": { "$ref": "#/definitions/EAG" },
"minecraft:behavior.wither_target_highest_damage": { "$ref": "#/definitions/EAH" },
"minecraft:behavior.work": { "$ref": "#/definitions/EAI" }
}
},
"EAJ_addremove": {
"additionalProperties": false,
"title": "Add Or Remove",
"description": "The components groups to add or remove",
"type": "object",
"examples": [{ "component_groups": [] }],
"properties": {
"component_groups": {
"title": "Component Groups",
"description": "The components groups to add or remove",
"type": "array",
"items": { "type": "string", "description": "A reference to a component group", "title": "Component Groups" }
}
}
},
"EAJ_event_base": {
"additionalProperties": false,
"type": "object",
"examples": [{}, { "add": { "component_groups": [] } }, { "remove": { "component_groups": [] } }],
"defaultSnippets": [
{ "label": "add component groups", "body": { "add": { "component_groups": ["$1"] } } },
{ "label": "remove component groups", "body": { "remove": { "component_groups": ["$1"] } } },
{
"label": "random component groups",
"body": {
"randomize": [
{ "add": { "component_groups": ["$1"] }, "weight": 1 },
{ "add": { "component_groups": ["$2"] }, "weight": 1 }
]
}
},
{
"label": "random component groups",
"body": { "sequence": [{ "add": { "component_groups": ["$1"] } }, { "add": { "component_groups": ["$2"] } }] }
}
],
"properties": {
"filters": { "$ref": "#/definitions/BA" },
"trigger": { "type": "string", "description": "Triggers additional events", "$comment": "UNDOCUMENTED", "title": "Trigger" },
"add": { "$ref": "#/definitions/EAJ_addremove", "description": "What gets added when the event gets triggered", "title": "Add" },
"remove": { "$ref": "#/definitions/EAJ_addremove", "description": "What gets removed when the event gets triggered", "title": "Remove" },
"randomize": {
"type": "array",
"description": "Randomly selects one of the following items based upon their weight and the total weights",
"title": "Randomize",
"items": {
"required": ["weight"],
"description": "Randomly selects one of the following items based upon their weight and the total weights",
"title": "Randomize",
"properties": {
"add": { "$ref": "#/definitions/EAJ_addremove", "description": "What gets added when the event gets triggered", "title": "Add" },
"remove": {
"$ref": "#/definitions/EAJ_addremove",
"description": "What gets removed when the event gets triggered",
"title": "Remove"
},
"trigger": { "type": "string", "description": "Triggers additional events", "$comment": "UNDOCUMENTED", "title": "Trigger" },
"weight": {
"type": "number",
"default": 1,
"minimum": 1,
"description": "The weight on how likely this section is to trigger",
"$comment": "UNDOCUMENTED",
"title": "Weight"
}
}
}
},
"sequence": {
"type": "array",
"description": "A series of filters and components to be added",
"title": "Sequences",
"items": {
"description": "Filters and components to be added",
"title": "Sequence",
"type": "object",
"properties": {
"add": { "$ref": "#/definitions/EAJ_addremove", "description": "What gets added when the event gets triggered", "title": "Add" },
"remove": {
"$ref": "#/definitions/EAJ_addremove",
"description": "What gets removed when the event gets triggered",
"title": "Remove"
},
"trigger": { "type": "string", "description": "Triggers additional events", "$comment": "UNDOCUMENTED", "title": "Trigger" },
"filters": { "$ref": "#/definitions/BA" }
}
}
}
}
},
"EAJ": {
"type": "object",
"title": "Events",
"description": "Events for entities",
"additionalProperties": { "$ref": "#/definitions/EAJ_event_base" },
"properties": {
"minecraft:entity_transformed": {
"description": "Event called on an entity that transforms into another entity.",
"$ref": "#/definitions/EAJ_event_base",
"title": "Entity Transformed"
},
"minecraft:entity_born": {
"description": "Event called on an entity that is spawned through two entities breeding.",
"$ref": "#/definitions/EAJ_event_base",
"title": "Entity Born"
},
"minecraft:entity_spawned": {
"description": "Event called on an entity that is placed in the level.",
"$ref": "#/definitions/EAJ_event_base",
"title": "Entity Spawned"
},
"minecraft:on_prime": {
"description": "Event called on an entity whose fuse is lit and is ready to explode.",
"$ref": "#/definitions/EAJ_event_base",
"title": "On Prime"
}
}
},
"B": {
"title": "Entity",
"required": ["description"],
"dependencies": { "component_groups": ["events"] },
"additionalProperties": false,
"type": "object",
"properties": {
"description": {
"required": ["identifier"],
"title": "Description",
"description": "The description of the this entity",
"properties": {
"animations": {
"title": "Animations",
"description": "Sets the mapping of internal animation / animation controllers references to actual animations. This is a JSON Object of name/animation pairs",
"type": "object",
"additionalProperties": {
"title": "Animation / Controller",
"description": "The name of the animation controller / animation",
"type": "string",
"examples": ["animation.", "controller."]
}
},
"identifier": { "$ref": "#/definitions/C", "description": "Sets the identifier for this entity's description.", "title": "Identifier" },
"is_spawnable": {
"type": "boolean",
"title": "Is Spawnable",
"description": "Sets whether or not this entity has a spawn egg in the creative ui.",
"default": false
},
"is_summonable": {
"type": "boolean",
"title": "Is Summonable Property",
"description": "Sets whether or not we can summon this entity using commands such as /summon.",
"default": true
},
"is_experimental": {
"type": "boolean",
"title": "Is Experimental",
"description": "Sets whether or not this entity is experimental. Experimental entities are only enabled when the experimental toggle is enabled.",
"default": false
},
"runtime_identifier": {
"type": "string",
"title": "Runtime Identifier",
"description": "Sets the name for the Vanilla Minecraft identifier this entity will use to build itself from.",
"examples": ["minecraft."]
},
"scripts": {
"type": "object",
"title": "Scripts",
"description": "Sets the mapping of internal animation controller references to actual animation controller. This is a JSON Array of name/animation-controller pairs",
"properties": {
"animate": {
"type": "array",
"title": "Animate",
"description": "Tells minecraft to run which animation / animation controllers and under what conditions",
"items": {
"oneOf": [
{ "type": "string", "title": "Animation", "description": "The name of an animation controller referenced in animations" },
{
"type": "object",
"title": "Conditional Animation",
"description": "A conditional statement to run the animation under a specified condition",
"$comment": "UNDOCUMENTED",
"additionalProperties": { "type": "string", "title": "Animation" }
}
]
}
}
}
}
}
},
"component_groups": {
"title": "Component Groups",
"description": "Each group when add / remove the default components",
"uniqueItems": true,
"type": "object",
"propertyNames": { "examples": ["self:"] },
"additionalProperties": {
"$ref": "#/definitions/D",
"uniqueItems": true,
"description": "The components that are added as the foundation of the entity",
"title": "Component"
}
},
"components": {
"$ref": "#/definitions/D",
"uniqueItems": true,
"description": "The components that are added as the foundation of the entity",
"title": "Component"
},
"events": {
"$ref": "#/definitions/EAJ",
"uniqueItems": true,
"description": "The events that the entity can run, these add or remove components_groups",
"title": "Events"
}
}
}
}
}