Husk - 1.13.0.34
<<
back to
entity list
View
Entity Version History >>
Resource Packs
Last Updated
The Husk entity last updated in Minecraft Version oldWhat's Changed:
Changes since stable release 1.12.0.28
Behavior Packs- New Value:
"minecraft:environment_sensor": {
"triggers": {
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": true
},
"event": "minecraft:start_transforming"
}
}Previous Value:"minecraft:environment_sensor": {
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": true
},
"event": "minecraft:start_transforming"
} - New Value:
"minecraft:environment_sensor": {
"triggers": {
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": false
},
"event": "minecraft:stop_transforming"
}
}Previous Value:"minecraft:environment_sensor": {
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": false
},
"event": "minecraft:stop_transforming"
} - New Value:
"minecraft:experience_reward": {
"on_death": "query.last_hit_by_player ? 5 + (query.equipment_count * Math.Random(1,3)) : 0"
} - New Value:
"minecraft:experience_reward": {
"on_death": "query.last_hit_by_player ? 12 + (query.equipment_count * Math.Random(1,3)) : 0"
} - New Value:
"format_version": "1.13.0"
Previous Value:"format_version": "1.10.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:environment_sensor": {
"triggers": [
{
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": true
},
"event": "minecraft:start_transforming"
}
]
}Previous Value:"minecraft:environment_sensor": [
{
"filters": {
"test": "is_underwater",
"subject": "self",
"operator": "==",
"value": true
},
"event": "minecraft:start_transforming"
}
] - 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:pushable": {
"is_pushable": true,
"is_pushable_by_piston": true
} - New Value:
"minecraft:type_family": {
"family": [
"husk",
"zombie",
"undead",
"monster",
"mob"
]
}Previous Value:"minecraft:type_family": {
"family": [
"husk",
"zombie",
"undead",
"monster"
]
}
- 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.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.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) * 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;"
]
}
- Previous Value:
"rebuild_animation_matrices": true
Statistics:
Health
[20]
Loot / Barter Loot / Additional Drops
- Chainmail Helmet
- Diamond Helmet
- Golden Helmet
- Iron Helmet
- Leather Helmet
- Rotten Flesh
- Iron Ingot
- Carrot
- Potato
- Iron Sword
- Iron Shovel
Attack Damage
- Default: 3
Can be Ridden by Mobs
- Zombie Husk Adult: Zombie
Families
- Default: Husk, Mob, Monster, Undead, Zombie
Movement Speed
- Zombie Husk Adult: 0.23
- Zombie Husk Baby: 0.35
Variations
- Default
Other Attributes
- 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/husk.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/husk.entity.json
Geometry
- resource_packs/vanilla/models/entity/husk.geo.json
Loot Tables
- behavior_packs/vanilla/loot_tables/entities/armor_set_chain.json
- behavior_packs/vanilla/loot_tables/entities/armor_set_diamond.json
- behavior_packs/vanilla/loot_tables/entities/armor_set_gold.json
- behavior_packs/vanilla/loot_tables/entities/armor_set_iron.json
- behavior_packs/vanilla/loot_tables/entities/armor_set_leather.json
- behavior_packs/vanilla/loot_tables/entities/zombie.json
- behavior_packs/vanilla/loot_tables/entities/zombie_equipment.json
Render Controllers
- resource_packs/vanilla/render_controllers/husk.render_controllers.json
Sounds
- resource_packs/vanilla/sounds/mob/husk/death1.fsb
- resource_packs/vanilla/sounds/mob/husk/death2.fsb
- resource_packs/vanilla/sounds/mob/husk/hurt1.fsb
- resource_packs/vanilla/sounds/mob/husk/hurt2.fsb
- resource_packs/vanilla/sounds/mob/husk/idle1.fsb
- resource_packs/vanilla/sounds/mob/husk/idle2.fsb
- resource_packs/vanilla/sounds/mob/husk/idle3.fsb
- resource_packs/vanilla/sounds/mob/husk/step1.fsb
- resource_packs/vanilla/sounds/mob/husk/step2.fsb
- resource_packs/vanilla/sounds/mob/husk/step3.fsb
- resource_packs/vanilla/sounds/mob/husk/step4.fsb
- resource_packs/vanilla/sounds/mob/husk/step5.fsb
Spawn Rules
- behavior_packs/vanilla/spawn_rules/husk.json
Textures
- resource_packs/vanilla/textures/entity/zombie/husk.png
Material Info:
Material: Husk
{
"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"
]
}