Zombie Villager V2 - 1.13.0.34
<<
back to
entity list
View
Entity Version History >>
Resource Packs
Last Updated
The Zombie Villager V2 entity last updated in Minecraft Version oldWhat's Changed:
Changes since stable release 1.12.0.28
Behavior Packs- New Value:
"minecraft:experience_reward": {
"on_death": "query.last_hit_by_player ? 5 + (query.equipment_count * Math.Random(1,3)) : 0"
} - New Value:
"minecraft:type_family": {
"family": [
"armorer",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"armorer",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:experience_reward": {
"on_death": "query.last_hit_by_player ? 12 + (query.equipment_count * Math.Random(1,3)) : 0"
} - New Value:
"minecraft:type_family": {
"family": [
"butcher",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"butcher",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"cartographer",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"cartographer",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"cleric",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"cleric",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"farmer",
"zombie",
"zombie_villager",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"farmer",
"zombie",
"zombie_villager",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"fisherman",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"fisherman",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"fletcher",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"fletcher",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"leatherworker",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"leatherworker",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"librarian",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"librarian",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"mason",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"mason",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"nitwit",
"zombie",
"zombie_villager",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"nitwit",
"zombie",
"zombie_villager",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"shepherd",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"shepherd",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:transformation": {
"into": "minecraft:villager_v2",
"begin_transform_sound": "remedy",
"transformation_sound": "unfect",
"keep_level": true,
"delay": {
"value": 100,
"block_assist_chance": 0.01,
"block_radius": 4,
"block_chance": 0.3,
"block_types": [
"minecraft:bed",
"minecraft:iron_bars"
]
}
}Previous Value:"minecraft:transformation": {
"into": "minecraft:villager_v2",
"begin_transform_sound": "remedy",
"transformation_sound": "unfect",
"delay": {
"value": 100,
"block_assist_chance": 0.01,
"block_radius": 4,
"block_chance": 0.3,
"block_types": [
"minecraft:bed",
"minecraft:iron_bars"
]
}
} - New Value:
"minecraft:type_family": {
"family": [
"toolsmith",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"toolsmith",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"unskilled",
"zombie",
"zombie_villager",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"unskilled",
"zombie",
"zombie_villager",
"undead",
"monster"
]
} - New Value:
"minecraft:type_family": {
"family": [
"weaponsmith",
"zombie_villager",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"weaponsmith",
"zombie_villager",
"zombie",
"undead",
"monster"
]
} - New Value:
"format_version": "1.13.0"
Previous Value:"format_version": "1.11.0"
- New Value:
"minecraft:breathable": {
"total_supply": 15,
"suffocate_time": 0,
"breathes_water": true
}Previous Value:"minecraft:breathable": {
"totalSupply": 15,
"suffocateTime": 0,
"breathesWater": true
} - New Value:
"minecraft:collision_box": {
"width": 0.6,
"height": 1.9
}Previous Value:"minecraft:collision_box": {
"width": 0.6,
"height": 1.8
} - New Value:
"minecraft:hurt_on_condition": {
"damage_conditions": [
{
"filters": {
"test": "in_lava",
"subject": "self",
"operator": "==",
"value": true
},
"cause": "lava",
"damage_per_tick": 4
}
]
} - New Value:
"minecraft:interact": {
"interactions": {
"on_interact": {
"filters": {
"all_of": [
{
"test": "has_equipment",
"domain": "hand",
"subject": "other",
"value": "golden_apple"
},
{
"test": "has_component",
"subject": "self",
"value": "minecraft:effect.weakness"
}
]
},
"event": "villager_converted",
"target": "self"
},
"use_item": true,
"interact_text": "action.interact.cure"
}
}Previous Value:"minecraft:interact": {
"on_interact": {
"filters": {
"all_of": [
{
"test": "has_equipment",
"domain": "hand",
"subject": "other",
"value": "golden_apple"
},
{
"test": "has_component",
"subject": "self",
"value": "minecraft:effect.weakness"
}
]
},
"event": "villager_converted",
"target": "self"
},
"use_item": true,
"interact_text": "action.interact.cure"
} - New Value:
"minecraft:pushable": {
"is_pushable": true,
"is_pushable_by_piston": true
} - New Value:
"minecraft:rideable": {
"seat_count": 1,
"family_types": [
"zombie"
],
"seats": {
"position": [
0,
1.1,
-0.35
]
}
}Previous Value:"minecraft:rideable": {
"seat_count": 1,
"family_types": [
"zombie"
],
"seats": {
"position": [
0,
0.9,
-0.25
]
}
}
- New Value:
"body": {
"rotation": [
0,
"math.sin(math.sqrt(variable.attack_time) * 360) * 11.46 - this",
0
]
}Previous Value:"body": {
"rotation": [
0,
"variable.attack_body_rot_y - this",
0
]
} - New Value:
"head": {
"scale": 1.4
}Previous Value:"head": {
"scale": 1.399999976158142
} - New Value:
"head": {
"relative_to": {
"rotation": "entity"
},
"rotation": [
"query.target_x_rotation",
"query.target_y_rotation",
0
]
}Previous Value:"head": {
"rotation": [
"query.target_x_rotation",
"query.target_y_rotation",
0
]
} - The leftarm component was changed in the bones subsection of the animation.humanoid.swimming sectionNew Value:
"leftarm": {
"rotation": {
"0.7": {
"post": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)"
],
"pre": [
"math.lerp(this, 0.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0 - 0.01877 * (-65.0 * math.mod(query.modified_distance_moved, 26.0) + math.mod(query.modified_distance_moved, 26.0) * math.mod(query.modified_distance_moved, 26.0)), variable.leftarmswim_amount)"
]
},
"1.1": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)"
],
"1.3": {
"post": [
"math.lerp(this, 90.0 - (22.5 * math.mod(query.modified_distance_moved, 26.0)), variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)"
],
"pre": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.leftarmswim_amount)"
]
}
}
}Previous Value:"leftarm": {
"rotation": {
"0.7": {
"post": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.leftarmswim_amount)"
],
"pre": [
"math.lerp(this, 0.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0 - 0.01877 * (-65.0 * variable.internal_swim_pos + variable.internal_swim_pos * variable.internal_swim_pos), variable.leftarmswim_amount)"
]
},
"1.1": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.leftarmswim_amount)"
],
"1.3": {
"post": [
"math.lerp(this, 90.0 - (22.5 * variable.internal_swim_pos), variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)"
],
"pre": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.leftarmswim_amount)",
"math.lerp(this, 180.0, variable.leftarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.leftarmswim_amount)"
]
}
}
} - New Value:
"rightarm": {
"rotation": [
"variable.use_item_startup_progress * -60.0 + variable.use_item_interval_progress * 11.25",
"variable.use_item_startup_progress * -22.5 + variable.use_item_interval_progress * 11.25",
"variable.use_item_startup_progress * -5.625 + variable.use_item_interval_progress * 11.25"
]
}Previous Value:"rightarm": {
"rotation": [
"variable.useitemstartupprogress * -60.0 + variable.useitemintervalprogress * 11.25",
"variable.useitemstartupprogress * -22.5 + variable.useitemintervalprogress * 11.25",
"variable.useitemstartupprogress * -5.625 + variable.useitemintervalprogress * 11.25"
]
} - New Value:
"animation.humanoid.celebrating": {
"loop": true,
"bones": {
"leftarm": {
"rotation": [
"(math.cos(query.life_time * 800.0) * 2.865)",
180,
-135
]
},
"rightarm": {
"rotation": [
"(math.cos(query.life_time * 800.0) * 2.865)",
180,
153
]
}
}
} - New Value:
"animation_length": 1.3
Previous Value:"animation_length": 1.299999952316284
- New Value:
"rightarm": {
"rotation": [
"math.sin(1.0 - math.pow(1.0 - variable.attack_time, 3.0) * 180.0) * (variable.is_brandishing_spear ? -1.0 : 1.0 )",
"variable.is_brandishing_spear ? 0.0 : (math.sin(math.sqrt(variable.attack_time) * 360) * 11.46) * 2.0",
0
]
}Previous Value:"rightarm": {
"rotation": [
"math.sin(1.0 - math.pow(1.0 - variable.attack_time, 3.0) * 180.0) * (variable.is_brandishing_spear ? -1.0 : 1.0 )",
"variable.is_brandishing_spear ? 0.0 : variable.attack_body_rot_y * 2.0",
0
]
} - New Value:
"leftarm": {
"rotation": [
"math.sin(math.sqrt(variable.attack_time) * 360) * 11.46",
0,
0
]
}Previous Value:"leftarm": {
"rotation": [
"variable.attack_body_rot_y",
0,
0
]
} - New Value:
"leftleg": {
"rotation": [
"variable.tcos0 * -1.4",
0,
0
]
}Previous Value:"leftleg": {
"rotation": [
"variable.tcos1 * 1.4",
0,
0
]
} - Previous Value:
"leftleg": {
"rotation": [
"-math.sin(query.life_time * 76.8) * 2.865",
0,
0
]
} - New Value:
"rightarm": {
"rotation": [
"-variable.tcos0",
0,
0
]
}Previous Value:"rightarm": {
"rotation": [
"variable.tcos1",
0,
0
]
} - New Value:
"rightarm": {
"rotation": {
"0.7": {
"post": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)"
],
"pre": [
"math.lerp(this, 0.0, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, -0.1019 * (-65.0 * math.mod(query.modified_distance_moved, 26.0) + math.mod(query.modified_distance_moved, 26.0) * math.mod(query.modified_distance_moved, 26.0)), variable.rightarmswim_amount)"
]
},
"1.1": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)"
],
"1.3": {
"post": [
"math.lerp(this, 90.0 - (22.5 * math.mod(query.modified_distance_moved, 26.0)), variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)"
],
"pre": [
"math.lerp(this, 11.25 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * math.mod(query.modified_distance_moved, 26.0), variable.rightarmswim_amount)"
]
}
}
}Previous Value:"rightarm": {
"rotation": {
"0.7": {
"post": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.rightarmswim_amount)"
],
"pre": [
"math.lerp(this, 0.0, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, -0.1019 * (-65.0 * variable.internal_swim_pos + variable.internal_swim_pos * variable.internal_swim_pos), variable.rightarmswim_amount)"
]
},
"1.1": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.rightarmswim_amount)"
],
"1.3": {
"post": [
"math.lerp(this, 90.0 - (22.5 * variable.internal_swim_pos), variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)"
],
"pre": [
"math.lerp(this, 11.25 * variable.internal_swim_pos, variable.rightarmswim_amount)",
"math.lerp(this, 180.0, variable.rightarmswim_amount)",
"math.lerp(this, 72.77 + 13.4 * variable.internal_swim_pos, variable.rightarmswim_amount)"
]
}
}
}
- New Value:
"leftarm": {
"rotation": [
"-90 - ((math.sin(variable.attack_time * 180.0) * 57.3) * 1.2 - (math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3) * 0.4) - (math.sin(query.life_time * 76.776372) * 2.865) - this",
"5.73 - ((math.sin(variable.attack_time * 180.0) * 57.3) * 0.6) - this",
"math.cos(query.life_time * 103.13244) * -2.865 - 2.865 - this"
]
}Previous Value:"leftarm": {
"rotation": [
"-90 - (variable.attack2 * 1.2 - variable.attack * 0.4) - variable.x_bob - this",
"5.73 - (variable.attack2 * 0.6) - this",
"-variable.z_bob - this"
]
} - New Value:
"leftarm": {
"rotation": [
"math.lerprotate(this, -180.0, variable.swim_amount) - (variable.swim_amount * ((math.sin(variable.attack_time * 180.0) * 57.3) * 1.2 - (math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3) * 0.4)) - (variable.swim_amount * (math.sin(query.life_time * 76.776372) * 2.865)) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - (variable.swim_amount * (math.cos(query.life_time * 103.13244) * 2.865 + 2.865)) - this"
]
}Previous Value:"leftarm": {
"rotation": [
"math.lerprotate(this, -180.0, variable.swim_amount) - (variable.swim_amount * (variable.attack2 * 1.2 - variable.attack * 0.4)) - (variable.swim_amount * variable.x_bob) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - (variable.swim_amount * variable.z_bob) - this"
]
} - New Value:
"rightarm": {
"rotation": [
"90 * (variable.is_brandishing_spear - 1.0) - ((math.sin(variable.attack_time * 180.0) * 57.3) * 1.2 - (math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3) * 0.4) + (math.sin(query.life_time * 76.776372) * 2.865) - this",
"(math.sin(variable.attack_time * 180.0) * 57.3) * 0.6 - 5.73 - this",
"math.cos(query.life_time * 103.13244) * 2.865 + 2.865 - this"
]
}Previous Value:"rightarm": {
"rotation": [
"90 * (variable.is_brandishing_spear - 1.0) - (variable.attack2 * 1.2 - variable.attack * 0.4) + variable.x_bob - this",
"variable.attack2 * 0.6 - 5.73 - this",
"variable.z_bob - this"
]
} - New Value:
"rightarm": {
"rotation": [
"math.lerprotate(this, -180.0, variable.swim_amount) - (variable.swim_amount * ((math.sin(variable.attack_time * 180.0) * 57.3) * 1.2 - (math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3) * 0.4)) + (variable.swim_amount * (math.sin(query.life_time * 76.776372) * 2.865)) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - this",
"math.lerprotate(this, -14.325, variable.swim_amount) + (variable.swim_amount * (math.cos(query.life_time * 103.13244) * 2.865 + 2.865)) - this"
]
}Previous Value:"rightarm": {
"rotation": [
"math.lerprotate(this, -180.0, variable.swim_amount) - (variable.swim_amount * (variable.attack2 * 1.2 - variable.attack * 0.4)) + (variable.swim_amount * variable.x_bob) - this",
"math.lerprotate(this, 14.325, variable.swim_amount) - this",
"math.lerprotate(this, -14.325, variable.swim_amount) + (variable.swim_amount * variable.z_bob) - this"
]
}
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"attacking": {
"animations": [
"attack.rotations"
],
"transitions": [
{
"default": "variable.attack_time > 0.0"
}
]
}Previous Value:"attacking": {
"animations": [
{
"attack.rotations": []
}
],
"transitions": [
{
"default": "variable.attack_time > 0.0"
}
]
} - New Value:
"baby": {
"animations": [
"humanoid_big_head"
],
"transitions": [
{
"default": "!query.is_baby"
}
]
}Previous Value:"baby": {
"animations": [
{
"humanoid_big_head": []
}
],
"transitions": [
{
"default": "!query.is_baby"
}
]
} - New Value:
"default": {
"animations": [
"humanoid_base_pose"
]
}Previous Value:"default": {
"animations": [
{
"humanoid_base_pose": []
}
]
} - New Value:
"default": {
"animations": [
"bob"
]
}Previous Value:"default": {
"animations": [
{
"bob": []
}
]
} - New Value:
"bow_and_arrow": {
"animations": [
"bow_and_arrow"
],
"transitions": [
{
"default": "!query.has_target"
}
]
}Previous Value:"bow_and_arrow": {
"animations": [
{
"bow_and_arrow": []
}
],
"transitions": [
{
"default": "!query.has_target"
}
]
} - New Value:
"brandish_spear": {
"animations": [
"brandish_spear"
],
"transitions": [
{
"default": "!variable.is_brandishing_spear"
}
]
}Previous Value:"brandish_spear": {
"animations": [
{
"brandish_spear": []
}
],
"transitions": [
{
"default": "!variable.is_brandishing_spear"
}
]
} - New Value:
"charging": {
"animations": [
"charging"
],
"transitions": [
{
"default": "!query.is_charging"
}
]
}Previous Value:"charging": {
"animations": [
{
"charging": []
}
],
"transitions": [
{
"default": "!query.is_charging"
}
]
} - New Value:
"damage_nearby_mobs": {
"animations": [
"damage_nearby_mobs"
],
"transitions": [
{
"default": "!variable.damage_nearby_mobs"
}
]
}Previous Value:"damage_nearby_mobs": {
"animations": [
{
"damage_nearby_mobs": []
}
],
"transitions": [
{
"default": "!variable.damage_nearby_mobs"
}
]
} - New Value:
"default": {
"animations": [
"holding"
]
}Previous Value:"default": {
"animations": [
{
"holding": []
}
]
} - New Value:
"default": {
"animations": [
"look_at_target_default"
],
"transitions": [
{
"gliding": "query.is_gliding"
},
{
"swimming": "query.is_swimming"
}
]
}Previous Value:"default": {
"animations": [
{
"look_at_target_default": []
}
],
"transitions": [
{
"gliding": "query.is_gliding"
},
{
"swimming": "query.is_swimming"
}
]
} - New Value:
"default": {
"animations": [
"move"
]
}Previous Value:"default": {
"animations": [
{
"move": []
}
]
} - New Value:
"swimming": {
"animations": [
"look_at_target_swimming"
],
"transitions": [
{
"gliding": "query.is_gliding"
},
{
"default": "!query.is_swimming"
}
]
}Previous Value:"swimming": {
"animations": [
{
"look_at_target_swimming": []
}
],
"transitions": [
{
"gliding": "query.is_gliding"
},
{
"default": "!query.is_swimming"
}
]
} - New Value:
"format_version": "1.10.0"
Previous Value:"format_version": "1.8.0"
- New Value:
"gliding": {
"animations": [
"look_at_target_gliding"
],
"transitions": [
{
"swimming": "query.is_swimming"
},
{
"default": "!query.is_gliding"
}
]
}Previous Value:"gliding": {
"animations": [
{
"look_at_target_gliding": []
}
],
"transitions": [
{
"swimming": "query.is_swimming"
},
{
"default": "!query.is_gliding"
}
]
} - New Value:
"riding": {
"animations": [
"riding.arms",
"riding.legs"
],
"transitions": [
{
"default": "!query.is_riding"
}
]
}Previous Value:"riding": {
"animations": [
{
"riding.arms": []
},
{
"riding.legs": []
}
],
"transitions": [
{
"default": "!query.is_riding"
}
]
} - New Value:
"sneaking": {
"animations": [
"sneaking"
],
"transitions": [
{
"default": "!query.is_sneaking"
}
]
}Previous Value:"sneaking": {
"animations": [
{
"sneaking": []
}
],
"transitions": [
{
"default": "!query.is_sneaking"
}
]
} - New Value:
"swimming": {
"animations": [
"swimming"
],
"transitions": [
{
"default": "variable.swim_amount >= 0.0"
}
]
}Previous Value:"swimming": {
"animations": [
{
"swimming": []
}
],
"transitions": [
{
"default": "variable.swim_amount >= 0.0"
}
]
} - New Value:
"use_item_progress": {
"animations": [
"use_item_progress"
],
"transitions": [
{
"default": "( variable.use_item_interval_progress >= 0.0 ) && ( variable.use_item_startup_progress >= 0.0 )"
}
]
}Previous Value:"use_item_progress": {
"animations": [
{
"use_item_progress": []
}
],
"transitions": [
{
"default": "( variable.use_item_interval_progress >= 0.0 ) && ( variable.use_item_startup_progress >= 0.0 )"
}
]
}
- New Value:
"initial_state": "default"
- New Value:
"initial_state": "default"
- New Value:
"format_version": "1.10.0"
Previous Value:"format_version": "1.8.0"
- New Value:
"is_bare_hand": {
"animations": [
"zombie_attack_bare_hand"
],
"transitions": [
{
"default": "variable.is_holding_left == 1.0"
}
]
}Previous Value:"is_bare_hand": {
"animations": [
{
"zombie_attack_bare_hand": []
}
],
"transitions": [
{
"default": "variable.is_holding_left == 1.0"
}
]
} - New Value:
"is_swimming": {
"animations": [
"zombie_swimming"
],
"transitions": [
{
"default": "variable.swim_amount >= 0.0"
}
]
}Previous Value:"is_swimming": {
"animations": [
{
"zombie_swimming": []
}
],
"transitions": [
{
"default": "variable.swim_amount >= 0.0"
}
]
}
- New Value:
"scripts": {
"pre_animation": [
"variable.num_professions = 14;",
"variable.profession_index = ((query.variant > variable.num_professions) ? query.variant : 0);",
"variable.tcos0 = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;"
]
}Previous Value:"scripts": {
"pre_animation": [
"variable.num_professions = 14;",
"variable.profession_index = ((query.variant > variable.num_professions) ? query.variant : 0);",
"variable.tcos0 = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;",
"variable.tcos1 = -variable.tcos0;",
"variable.attack_body_rot_y = Math.sin(Math.sqrt(variable.attack_time) * 360.0) * 11.46;",
"variable.cos_attack_body_rot_y = Math.cos(variable.attack_body_rot_y);",
"variable.sin_attack_body_rot_y = Math.sin(variable.attack_body_rot_y);",
"variable.internal_swim_pos = Math.mod(query.modified_distance_moved, 26.0);",
"variable.attack = Math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3;",
"variable.attack2 = Math.sin(variable.attack_time * 180.0) * 57.3;",
"variable.z_bob = Math.cos(query.life_time * 103.13244) * 2.865 + 2.865;",
"variable.x_bob = Math.sin(query.life_time * 76.776372) * 2.865;"
]
}
Statistics:
Health
[20]
Loot / Barter Loot / Additional Drops
- Rotten Flesh
- Iron Ingot
- Carrot
- Potato
Attack Damage
- Default: 3
Can be Ridden by Mobs
- Adult: Zombie
Families
- Armorer: Armorer, Mob, Monster, Undead, Zombie, Zombie Villager
- Butcher: Butcher, Mob, Monster, Undead, Zombie, Zombie Villager
- Cartographer: Cartographer, Mob, Monster, Undead, Zombie, Zombie Villager
- Cleric: Cleric, Mob, Monster, Undead, Zombie, Zombie Villager
- Farmer: Farmer, Mob, Monster, Undead, Zombie, Zombie Villager
- Fisherman: Fisherman, Mob, Monster, Undead, Zombie, Zombie Villager
- Fletcher: Fletcher, Mob, Monster, Undead, Zombie, Zombie Villager
- Leatherworker: Leatherworker, Mob, Monster, Undead, Zombie, Zombie Villager
- Librarian: Librarian, Mob, Monster, Undead, Zombie, Zombie Villager
- Mason: Mason, Mob, Monster, Undead, Zombie, Zombie Villager
- Nitwit: Mob, Monster, Nitwit, Undead, Zombie, Zombie Villager
- Shepherd: Mob, Monster, Shepherd, Undead, Zombie, Zombie Villager
- Toolsmith: Mob, Monster, Toolsmith, Undead, Zombie, Zombie Villager
- Unskilled: Mob, Monster, Undead, Unskilled, Zombie, Zombie Villager
- Weaponsmith: Mob, Monster, Undead, Weaponsmith, Zombie, Zombie Villager
Mark Variations
- Desert Villager
- Jungle Villager
- Savanna Villager
- Snow Villager
- Swamp Villager
- Taiga Villager
Movement Speed
- Adult: 0.23
- Baby: 0.35
Variations
- Armorer
- Butcher
- Cartographer
- Cleric
- Farmer
- Fisherman
- Fletcher
- Leatherworker
- Librarian
- Mason
- Nitwit
- Shepherd
- Toolsmith
- Unskilled
- Weaponsmith
Other Attributes
- Burns in Daylight
- Can be Renamed
- Can Breath in Water
- Can Climb
- Can Jump
- Has Collisions
- Has Gravity
- Pushable
- Pushable by Pistons
Associated Files:
Behavior File
- behavior_packs/vanilla/entities/zombie_villager_v2.json
Animations
- resource_packs/vanilla/animations/humanoid.animation.json
- resource_packs/vanilla/animations/zombie.animation.json
Animation Controllers
- resource_packs/vanilla/animation_controllers/humanoid.animation_controllers.json
- resource_packs/vanilla/animation_controllers/zombie.animation_controllers.json
Entity
- resource_packs/vanilla/entity/zombie_villager_v2.entity.json
Geometry
- resource_packs/vanilla/models/entity/zombie_villager_v2.geo.json
Loot Tables
- behavior_packs/vanilla/loot_tables/entities/zombie.json
Render Controllers
- resource_packs/vanilla/render_controllers/zombie_villager_v2.render_controllers.json
Sounds
- resource_packs/vanilla/sounds/mob/zombie/step1.fsb
- resource_packs/vanilla/sounds/mob/zombie/step2.fsb
- resource_packs/vanilla/sounds/mob/zombie/step3.fsb
- resource_packs/vanilla/sounds/mob/zombie/step4.fsb
- resource_packs/vanilla/sounds/mob/zombie/step5.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/death.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/hurt1.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/hurt2.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/say1.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/say2.fsb
- resource_packs/vanilla/sounds/mob/zombie_villager/say3.fsb
Textures
- resource_packs/vanilla/textures/entity/zombie_villager2/zombie-villager.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-desert-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-jungle-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-plains-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-savanna-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-snow-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-swamp-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/biomes/biome-taiga-zombie.png
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/armorer.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/butcher.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/cartographer.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/cleric.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/farmer.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/fisherman.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/fletcher.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/leatherworker.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/librarian.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/nitwit.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/shepherd.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/stonemason.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/toolsmith.tga
- resource_packs/vanilla/textures/entity/zombie_villager2/professions/weaponsmith.tga
Material Info:
Material: Zombie Villager V2
{
"vertexShader": "shaders/entity.vertex",
"vrGeometryShader": "shaders/entity.geometry",
"fragmentShader": "shaders/entity.fragment",
"vertexFields": [
{
"field": "Position"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
],
"variants": [
{
"skinning": {
"+defines": [
"USE_SKINNING"
],
"vertexFields": [
{
"field": "Position"
},
{
"field": "BoneId0"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
]
}
},
{
"skinning_color": {
"+defines": [
"USE_SKINNING",
"USE_OVERLAY"
],
"+states": [
"Blending"
],
"vertexFields": [
{
"field": "Position"
},
{
"field": "BoneId0"
},
{
"field": "Color"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
]
}
}
],
"msaaSupport": [
"Both"
],
"+samplerStates": {
"samplerIndex": 1,
"textureWrap": "Repeat"
},
"+defines": [
"USE_OVERLAY",
"ALPHA_TEST"
],
"+states": [
"DisableCulling"
],
"depthFunc": "LessEqual"
}
Material: Zombie Villager V2 Masked
{
"vertexShader": "shaders/entity.vertex",
"vrGeometryShader": "shaders/entity.geometry",
"fragmentShader": "shaders/entity.fragment",
"vertexFields": [
{
"field": "Position"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
],
"variants": [
{
"skinning": {
"+defines": [
"USE_SKINNING"
],
"vertexFields": [
{
"field": "Position"
},
{
"field": "BoneId0"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
]
}
},
{
"skinning_color": {
"+defines": [
"USE_SKINNING",
"USE_OVERLAY"
],
"+states": [
"Blending"
],
"vertexFields": [
{
"field": "Position"
},
{
"field": "BoneId0"
},
{
"field": "Color"
},
{
"field": "Normal"
},
{
"field": "UV0"
}
]
}
}
],
"msaaSupport": [
"Both"
],
"+samplerStates": {
"samplerIndex": 1,
"textureWrap": "Clamp"
},
"+defines": [
"USE_OVERLAY",
"ALPHA_TEST",
"MASKED_MULTITEXTURE"
],
"+states": [
"DisableCulling"
],
"depthFunc": "LessEqual"
}