feat(pet): add Hey Hey chicken pet addon
All checks were successful
Deploy Addons / deploy (push) Successful in 15s

Tameable white chicken modelled on Hey Hey from Moana — custom plump
geometry, waddly walk/peck animations, hatching egg item, and vanilla
chicken sounds. Mounted on all 4 servers via docker-compose.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-05 09:14:39 +01:00
parent 616395de88
commit 1bdac0e157
21 changed files with 872 additions and 0 deletions

View File

@@ -0,0 +1,247 @@
{
"format_version": "1.21.0",
"minecraft:entity": {
"description": {
"identifier": "silverlabs:heyhe_chicken",
"is_spawnable": true,
"is_summonable": true,
"is_experimental": false,
"properties": {
"silverlabs:heyhe_tamed": {
"type": "bool",
"default": false,
"client_sync": true
},
"silverlabs:heyhe_sitting": {
"type": "bool",
"default": false,
"client_sync": true
}
}
},
"component_groups": {
"silverlabs:wild": {
"minecraft:behavior.tempt": {
"priority": 3,
"speed_multiplier": 0.6,
"items": ["wheat", "wheat_seeds", "beetroot_seeds", "melon_seeds", "pumpkin_seeds"],
"can_tempt_vertically": false
},
"minecraft:behavior.avoid_mob_type": {
"priority": 4,
"max_dist": 8,
"walk_speed_multiplier": 1.2,
"sprint_speed_multiplier": 1.2,
"entity_types": [
{
"filters": {
"test": "is_family",
"subject": "other",
"value": "monster"
},
"max_dist": 8
}
]
},
"minecraft:interact": {
"interactions": [
{
"on_interact": {
"filters": {
"all_of": [
{ "test": "is_family", "subject": "other", "value": "player" },
{ "test": "has_equipment", "subject": "other", "domain": "hand", "value": "wheat" }
]
},
"event": "silverlabs:become_tamed",
"target": "self"
},
"use_item": true,
"interact_text": "action.interact.tame",
"play_sounds": "random.eat",
"particle_on_start": {
"particle_type": "minecraft:heart_particle",
"particle_y_offset": 1.0,
"particle_offset_towards_interactor": false
}
},
{
"on_interact": {
"filters": {
"all_of": [
{ "test": "is_family", "subject": "other", "value": "player" },
{ "test": "has_equipment", "subject": "other", "domain": "hand", "value": "wheat_seeds" }
]
},
"event": "silverlabs:become_tamed",
"target": "self"
},
"use_item": true,
"interact_text": "action.interact.tame",
"play_sounds": "random.eat",
"particle_on_start": {
"particle_type": "minecraft:heart_particle",
"particle_y_offset": 1.0,
"particle_offset_towards_interactor": false
}
}
]
}
},
"silverlabs:tamed": {
"minecraft:behavior.follow_owner": {
"priority": 4,
"speed_multiplier": 0.9,
"start_distance": 8,
"stop_distance": 3
},
"minecraft:teleport": {
"dark_teleport_chance": 0.01,
"light_teleport_chance": 0.01,
"max_random_teleport_time": 30,
"min_random_teleport_time": 15,
"target_distance": 64,
"target_teleport_chance": 0.05
},
"minecraft:interact": {
"interactions": [
{
"on_interact": {
"filters": {
"all_of": [
{ "test": "is_family", "subject": "other", "value": "player" },
{
"test": "has_equipment",
"subject": "other",
"domain": "hand",
"operator": "equals",
"value": "air"
}
]
},
"event": "silverlabs:toggle_sit",
"target": "self"
},
"use_item": false,
"interact_text": "action.interact.sit"
}
]
}
},
"silverlabs:sitting": {
"minecraft:behavior.sit": {
"start_chance": 1.0
}
}
},
"components": {
"minecraft:type_family": {
"family": ["heyhe_chicken", "chicken", "animal"]
},
"minecraft:physics": {},
"minecraft:pushable": {
"is_pushable": true,
"is_pushable_by_piston": true
},
"minecraft:collision_box": {
"width": 0.5,
"height": 0.7
},
"minecraft:health": {
"value": 10,
"max": 10
},
"minecraft:movement": {
"value": 0.25
},
"minecraft:navigation.walk": {
"can_path_over_water": false,
"avoid_water": true,
"avoid_damage_blocks": true
},
"minecraft:movement.basic": {},
"minecraft:jump.static": {},
"minecraft:can_climb": {},
"minecraft:breathable": {
"total_supply": 15,
"suffocate_time": -1
},
"minecraft:despawn": {
"despawn_from_distance": {}
},
"minecraft:nameable": {},
"minecraft:behavior.float": { "priority": 0 },
"minecraft:behavior.panic": {
"priority": 1,
"speed_multiplier": 1.5
},
"minecraft:behavior.look_at_player": {
"priority": 9,
"target_distance": 6,
"look_time": [2, 4]
},
"minecraft:behavior.random_look_around": {
"priority": 10
},
"minecraft:behavior.random_stroll": {
"priority": 8,
"speed_multiplier": 0.6
}
},
"events": {
"minecraft:entity_spawned": {
"add": {
"component_groups": ["silverlabs:wild"]
}
},
"silverlabs:become_tamed": {
"set_property": {
"silverlabs:heyhe_tamed": true
},
"remove": {
"component_groups": ["silverlabs:wild"]
},
"add": {
"component_groups": ["silverlabs:tamed"]
}
},
"silverlabs:toggle_sit": {
"sequence": [
{
"filters": {
"test": "bool_property",
"domain": "silverlabs:heyhe_sitting",
"value": false
},
"set_property": {
"silverlabs:heyhe_sitting": true
},
"add": {
"component_groups": ["silverlabs:sitting"]
}
},
{
"filters": {
"test": "bool_property",
"domain": "silverlabs:heyhe_sitting",
"value": true
},
"set_property": {
"silverlabs:heyhe_sitting": false
},
"remove": {
"component_groups": ["silverlabs:sitting"]
}
}
]
}
}
}
}

View File

@@ -0,0 +1,66 @@
{
"format_version": "1.21.0",
"minecraft:entity": {
"description": {
"identifier": "silverlabs:heyhe_egg",
"is_spawnable": false,
"is_summonable": true,
"is_experimental": false
},
"components": {
"minecraft:type_family": {
"family": ["heyhe_egg"]
},
"minecraft:collision_box": {
"width": 0.5,
"height": 0.6
},
"minecraft:physics": {
"has_gravity": true,
"has_collision": true
},
"minecraft:pushable": {
"is_pushable": false,
"is_pushable_by_piston": false
},
"minecraft:health": {
"value": 5,
"max": 5
},
"minecraft:timer": {
"looping": false,
"time": 10,
"time_down_event": {
"event": "silverlabs:hatch",
"target": "self"
}
},
"minecraft:ambient_sound_interval": {
"event_name": "mob.chicken.egg",
"range": 0,
"value": 8
}
},
"events": {
"silverlabs:hatch": {
"sequence": [
{
"spawn_entity": {
"entities_to_spawn": [
{
"entity_type": "silverlabs:heyhe_chicken",
"num_to_spawn": 1
}
]
}
},
{
"die": {}
}
]
}
}
}
}

View File

@@ -0,0 +1,31 @@
{
"format_version": "1.21.0",
"minecraft:item": {
"description": {
"identifier": "silverlabs:heyhe_egg",
"category": "Nature"
},
"components": {
"minecraft:max_stack_size": 16,
"minecraft:icon": {
"texture": "heyhe_egg"
},
"minecraft:entity_placer": {
"entity": "silverlabs:heyhe_egg",
"dispense_on": [
"grass",
"dirt",
"stone",
"sand",
"gravel",
"coarse_dirt",
"podzol",
"mycelium",
"farmland",
"grass_path",
"dirt_with_roots"
]
}
}
}
}

View File

@@ -0,0 +1,23 @@
{
"format_version": 2,
"header": {
"name": "Hey Hey Chicken Pet",
"description": "Hey Hey the loyal Moana chicken — tameable, following pet with waddly personality.",
"uuid": "fc811a53-dbdb-4701-bc63-c3ca1d793c47",
"version": [1, 0, 0],
"min_engine_version": [1, 21, 0]
},
"modules": [
{
"type": "data",
"uuid": "f7aae24a-06d8-432b-85dc-359c4fda9dfd",
"version": [1, 0, 0]
}
],
"dependencies": [
{
"uuid": "45ec17df-0d84-456f-b2cc-2d990f96e6d5",
"version": [1, 0, 0]
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 971 B

View File

@@ -0,0 +1,18 @@
{
"format_version": "1.21.0",
"minecraft:recipe_shapeless": {
"description": {
"identifier": "silverlabs:heyhe_egg_recipe"
},
"tags": ["crafting_table"],
"ingredients": [
{ "item": "minecraft:egg" },
{ "item": "minecraft:feather" },
{ "item": "minecraft:gold_nugget" }
],
"result": {
"item": "silverlabs:heyhe_egg",
"count": 1
}
}
}

View File

@@ -0,0 +1,30 @@
{
"format_version": "1.10.0",
"animation_controllers": {
"controller.animation.heyhe_chicken": {
"initial_state": "idle",
"states": {
"idle": {
"animations": ["idle"],
"transitions": [
{ "walking": "query.modified_move_speed > 0.05" },
{ "sitting": "query.property('silverlabs:heyhe_sitting')" }
]
},
"walking": {
"animations": ["walk"],
"transitions": [
{ "idle": "query.modified_move_speed <= 0.05" },
{ "sitting": "query.property('silverlabs:heyhe_sitting')" }
]
},
"sitting": {
"animations": ["sit"],
"transitions": [
{ "idle": "!query.property('silverlabs:heyhe_sitting')" }
]
}
}
}
}
}

View File

@@ -0,0 +1,114 @@
{
"format_version": "1.8.0",
"animations": {
"animation.heyhe_chicken.idle": {
"loop": true,
"animation_length": 2.0,
"bones": {
"body": {
"position": {
"0.0": [0, 0, 0],
"1.0": [0, 0.4, 0],
"2.0": [0, 0, 0]
}
},
"head": {
"rotation": {
"0.0": [0, 0, 0],
"0.4": [10, 0, 0],
"0.8": [0, 0, 0],
"1.4": [10, 0, 0],
"1.8": [0, 0, 0],
"2.0": [0, 0, 0]
}
}
}
},
"animation.heyhe_chicken.walk": {
"loop": true,
"animation_length": 0.8,
"bones": {
"body": {
"rotation": {
"0.0": [0, 0, 4],
"0.2": [0, 0, 0],
"0.4": [0, 0, -4],
"0.6": [0, 0, 0],
"0.8": [0, 0, 4]
}
},
"head": {
"rotation": {
"0.0": [0, 0, -4],
"0.2": [0, 0, 0],
"0.4": [0, 0, 4],
"0.6": [0, 0, 0],
"0.8": [0, 0, -4]
},
"position": {
"0.0": [0, 0, 0.5],
"0.4": [0, 0, -0.5],
"0.8": [0, 0, 0.5]
}
},
"leg_left": {
"rotation": {
"0.0": [ 15, 0, 0],
"0.4": [-15, 0, 0],
"0.8": [ 15, 0, 0]
}
},
"leg_right": {
"rotation": {
"0.0": [-15, 0, 0],
"0.4": [ 15, 0, 0],
"0.8": [-15, 0, 0]
}
}
}
},
"animation.heyhe_chicken.sit": {
"loop": true,
"animation_length": 1.6,
"bones": {
"body": {
"position": {
"0.0": [0, -2.5, 0],
"0.8": [0, -2.5, 0]
},
"rotation": {
"0.0": [5, 0, 0],
"0.8": [5, 0, 0]
}
},
"wing_left": {
"rotation": {
"0.0": [0, 0, -10],
"0.8": [0, 0, -18],
"1.6": [0, 0, -10]
}
},
"wing_right": {
"rotation": {
"0.0": [0, 0, 10],
"0.8": [0, 0, 18],
"1.6": [0, 0, 10]
}
},
"head": {
"rotation": {
"0.0": [ 0, 0, 0],
"0.4": [12, 0, 0],
"0.8": [ 0, 0, 0],
"1.2": [12, 0, 0],
"1.6": [ 0, 0, 0]
}
}
}
}
}
}

View File

@@ -0,0 +1,36 @@
{
"format_version": "1.10.0",
"minecraft:client_entity": {
"description": {
"identifier": "silverlabs:heyhe_chicken",
"materials": {
"default": "entity_alphatest"
},
"textures": {
"default": "textures/entity/heyhe_chicken"
},
"geometry": {
"default": "geometry.heyhe_chicken"
},
"render_controllers": [
"controller.render.heyhe_chicken"
],
"animations": {
"idle": "animation.heyhe_chicken.idle",
"walk": "animation.heyhe_chicken.walk",
"sit": "animation.heyhe_chicken.sit",
"controller": "controller.animation.heyhe_chicken"
},
"scripts": {
"animate": ["controller"]
},
"particle_effects": {
"hearts": "minecraft:heart_particle"
},
"spawn_egg": {
"base_color": "#F5F5F0",
"overlay_color": "#E07020"
}
}
}
}

View File

@@ -0,0 +1,20 @@
{
"format_version": "1.10.0",
"minecraft:client_entity": {
"description": {
"identifier": "silverlabs:heyhe_egg",
"materials": {
"default": "entity_alphatest"
},
"textures": {
"default": "textures/entity/heyhe_egg"
},
"geometry": {
"default": "geometry.heyhe_egg"
},
"render_controllers": [
"controller.render.heyhe_egg"
]
}
}
}

View File

@@ -0,0 +1,17 @@
{
"format_version": 2,
"header": {
"name": "Hey Hey Chicken Pet Resources",
"description": "Textures, models, and animations for the Hey Hey chicken pet.",
"uuid": "45ec17df-0d84-456f-b2cc-2d990f96e6d5",
"version": [1, 0, 0],
"min_engine_version": [1, 21, 0]
},
"modules": [
{
"type": "resources",
"uuid": "0cba3001-7442-4a69-afa2-27b3dfb763c3",
"version": [1, 0, 0]
}
]
}

View File

@@ -0,0 +1,205 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.heyhe_chicken",
"texture_width": 64,
"texture_height": 32,
"visible_bounds_width": 2,
"visible_bounds_height": 2,
"visible_bounds_offset": [0, 0.75, 0]
},
"bones": [
{
"name": "root",
"pivot": [0, 0, 0]
},
{
"name": "body",
"parent": "root",
"pivot": [0, 7, 0],
"cubes": [
{
"origin": [-5, 3, -4],
"size": [10, 8, 8],
"uv": [0, 0]
}
]
},
{
"name": "wing_left",
"parent": "body",
"pivot": [-5, 9, 0],
"cubes": [
{
"origin": [-7, 6, -2],
"size": [2, 5, 5],
"uv": [24, 0]
}
]
},
{
"name": "wing_right",
"parent": "body",
"pivot": [5, 9, 0],
"mirror": true,
"cubes": [
{
"origin": [5, 6, -2],
"size": [2, 5, 5],
"uv": [24, 0]
}
]
},
{
"name": "tail",
"parent": "body",
"pivot": [0, 11, -4],
"rotation": [-30, 0, 0],
"cubes": [
{
"origin": [-2, 9, -6],
"size": [4, 4, 2],
"uv": [40, 0]
}
]
},
{
"name": "neck",
"parent": "body",
"pivot": [0, 11, 3],
"cubes": [
{
"origin": [-2, 8, 2],
"size": [4, 4, 3],
"uv": [14, 0]
}
]
},
{
"name": "head",
"parent": "neck",
"pivot": [0, 13, 4],
"cubes": [
{
"origin": [-3, 11, 1],
"size": [6, 6, 6],
"uv": [0, 16]
}
]
},
{
"name": "comb_a",
"parent": "head",
"pivot": [0, 17, 4],
"cubes": [
{
"origin": [-1, 17, 2],
"size": [2, 2, 2],
"uv": [30, 16]
}
]
},
{
"name": "comb_b",
"parent": "head",
"pivot": [0, 17, 4],
"cubes": [
{
"origin": [-1, 16, 4],
"size": [2, 3, 2],
"uv": [38, 16]
}
]
},
{
"name": "comb_c",
"parent": "head",
"pivot": [0, 17, 4],
"cubes": [
{
"origin": [-1, 17, 6],
"size": [2, 2, 2],
"uv": [30, 16]
}
]
},
{
"name": "beak",
"parent": "head",
"pivot": [0, 13, 7],
"cubes": [
{
"origin": [-1, 12, 7],
"size": [2, 2, 2],
"uv": [44, 16]
}
]
},
{
"name": "wattle",
"parent": "head",
"pivot": [0, 11, 7],
"cubes": [
{
"origin": [-1, 9, 6],
"size": [2, 2, 1],
"uv": [50, 16]
}
]
},
{
"name": "leg_left",
"parent": "root",
"pivot": [-2, 5, 0],
"cubes": [
{
"origin": [-3, 1, -1],
"size": [2, 4, 2],
"uv": [48, 0]
}
]
},
{
"name": "foot_left",
"parent": "leg_left",
"pivot": [-2, 1, 0],
"cubes": [
{
"origin": [-4, 0, -2],
"size": [4, 1, 4],
"uv": [48, 6]
}
]
},
{
"name": "leg_right",
"parent": "root",
"pivot": [2, 5, 0],
"mirror": true,
"cubes": [
{
"origin": [1, 1, -1],
"size": [2, 4, 2],
"uv": [48, 0]
}
]
},
{
"name": "foot_right",
"parent": "leg_right",
"pivot": [2, 1, 0],
"mirror": true,
"cubes": [
{
"origin": [0, 0, -2],
"size": [4, 1, 4],
"uv": [48, 6]
}
]
}
]
}
]
}

View File

@@ -0,0 +1,28 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.heyhe_egg",
"texture_width": 32,
"texture_height": 16,
"visible_bounds_width": 1,
"visible_bounds_height": 1,
"visible_bounds_offset": [0, 0.3, 0]
},
"bones": [
{
"name": "root",
"pivot": [0, 0, 0],
"cubes": [
{
"origin": [-2.5, 0, -2.5],
"size": [5, 6, 5],
"uv": [0, 0]
}
]
}
]
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 971 B

View File

@@ -0,0 +1,15 @@
{
"format_version": "1.8.0",
"render_controllers": {
"controller.render.heyhe_chicken": {
"geometry": "Geometry.default",
"materials": [{ "*": "Material.default" }],
"textures": ["Texture.default"]
},
"controller.render.heyhe_egg": {
"geometry": "Geometry.default",
"materials": [{ "*": "Material.default" }],
"textures": ["Texture.default"]
}
}
}

View File

@@ -0,0 +1,5 @@
entity.silverlabs:heyhe_chicken.name=Hey Hey
entity.silverlabs:heyhe_egg.name=Hey Hey's Egg
item.silverlabs:heyhe_egg.name=Hey Hey's Egg
action.interact.tame=Tame with Food
action.interact.sit=Sit / Stand

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

View File

@@ -0,0 +1,9 @@
{
"resource_pack_name": "heyhe_pet_RP",
"texture_name": "atlas.items",
"texture_data": {
"heyhe_egg": {
"textures": "textures/items/heyhe_egg"
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

View File

@@ -22,6 +22,8 @@ services:
- ./lobby-addon/lobby_transfer_RP:/data/resource_packs/lobby_transfer_RP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./easter-egg-addon/easter_egg_lobby_BP:/data/behavior_packs/easter_egg_lobby_BP
restart: unless-stopped
networks:
@@ -49,6 +51,8 @@ services:
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./easter-egg-addon/easter_egg_child_BP:/data/behavior_packs/easter_egg_child_BP
restart: unless-stopped
networks:
@@ -76,6 +80,8 @@ services:
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./easter-egg-addon/easter_egg_child_BP:/data/behavior_packs/easter_egg_child_BP
restart: unless-stopped
networks:
@@ -103,6 +109,8 @@ services:
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./easter-egg-addon/easter_egg_child_BP:/data/behavior_packs/easter_egg_child_BP
restart: unless-stopped
networks: