From bd47f2e4b7f3a703e58122a2d396a1b199086c61 Mon Sep 17 00:00:00 2001 From: Novampr Date: Tue, 7 Jul 2026 15:14:58 +0100 Subject: [PATCH 1/3] Fix baby mobs --- .../integratedpack/entity/panda.entity.json | 42 +++++--- .../entity/zombie_villager_v2.entity.json | 102 ------------------ ...zombie_villager_v2.render_controllers.json | 45 -------- 3 files changed, 30 insertions(+), 159 deletions(-) delete mode 100644 src/main/resources/integratedpack/entity/zombie_villager_v2.entity.json delete mode 100644 src/main/resources/integratedpack/render_controllers/zombie_villager_v2.render_controllers.json diff --git a/src/main/resources/integratedpack/entity/panda.entity.json b/src/main/resources/integratedpack/entity/panda.entity.json index d87e72f..561237d 100644 --- a/src/main/resources/integratedpack/entity/panda.entity.json +++ b/src/main/resources/integratedpack/entity/panda.entity.json @@ -11,10 +11,18 @@ "playful": "textures/entity/panda/panda_playful", "brown": "textures/entity/panda/panda_brown", "weak": "textures/entity/panda/panda_sneezy", - "aggressive": "textures/entity/panda/panda_aggressive" + "aggressive": "textures/entity/panda/panda_aggressive", + "baby_default": "textures/entity/panda/panda_baby", + "baby_lazy": "textures/entity/panda/panda_lazy_baby", + "baby_worried": "textures/entity/panda/panda_worried_baby", + "baby_playful": "textures/entity/panda/panda_playful_baby", + "baby_brown": "textures/entity/panda/panda_brown_baby", + "baby_weak": "textures/entity/panda/panda_weak_baby", + "baby_aggressive": "textures/entity/panda/panda_aggressive_baby" }, "geometry": { - "default": "geometry.panda" + "default": "geometry.panda", + "baby": "geometry.panda.baby" }, "particle_effects": { "sneeze": "geyseropt:sneeze" @@ -28,25 +36,35 @@ "sitting": "animation.panda.sitting", "rolling": "animation.panda.rolling", "lying": "animation.panda.lying", - "controller.move": "controller.animation.panda.move", - "controller.unhappy": "controller.animation.panda.unhappy", - "controller.baby": "controller.animation.panda.baby" + "baby_sitting": "animation.panda.baby_sitting", + "baby_rolling": "animation.panda.baby_rolling", + "baby_lying": "animation.panda.baby_lying" }, "scripts": { "pre_animation": [ "v.geyser_sneezing = q.sneeze_counter > 0 ? 1 : (v.geyser_sneezing ?? 0);" ], "animate": [ - "controller.move", - "controller.unhappy", - "controller.baby", {"geyser_sneezing": "v.geyser_sneezing"} - ] + ], + "scale": "query.is_baby ? (1 / 0.4) : 1.0" }, - "render_controllers": [ "controller.render.panda" ], + "animation_controllers": [ + { + "move": "controller.animation.panda.move" + }, + { + "unhappy": "controller.animation.panda.unhappy" + }, + { + "sneezing": "controller.animation.panda.sneezing" + } + ], + "render_controllers": [ + "controller.render.panda.v2" + ], "spawn_egg": { - "texture": "spawn_egg", - "texture_index": 54 + "texture": "spawn_egg_panda" } } } diff --git a/src/main/resources/integratedpack/entity/zombie_villager_v2.entity.json b/src/main/resources/integratedpack/entity/zombie_villager_v2.entity.json deleted file mode 100644 index 63027ac..0000000 --- a/src/main/resources/integratedpack/entity/zombie_villager_v2.entity.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "format_version": "1.8.0", - "minecraft:client_entity": { - "description": { - "identifier": "minecraft:zombie_villager_v2", - "materials": { - "default": "zombie_villager_v2", - "masked": "zombie_villager_v2_masked" - }, - "textures": { - "default": "textures/entity/zombie_villager2/zombie-villager", - "desert": "textures/entity/zombie_villager2/biomes/biome-desert-zombie", - "jungle": "textures/entity/zombie_villager2/biomes/biome-jungle-zombie", - "plains": "textures/entity/zombie_villager2/biomes/biome-plains-zombie", - "savanna": "textures/entity/zombie_villager2/biomes/biome-savanna-zombie", - "snow": "textures/entity/zombie_villager2/biomes/biome-snow-zombie", - "swamp": "textures/entity/zombie_villager2/biomes/biome-swamp-zombie", - "taiga": "textures/entity/zombie_villager2/biomes/biome-taiga-zombie", - "armorer": "textures/entity/villager2/professions/armorer", - "butcher": "textures/entity/villager2/professions/butcher", - "cartographer": "textures/entity/villager2/professions/cartographer", - "cleric": "textures/entity/villager2/professions/cleric", - "farmer": "textures/entity/villager2/professions/farmer", - "fisherman": "textures/entity/villager2/professions/fisherman", - "fletcher": "textures/entity/villager2/professions/fletcher", - "leatherworker": "textures/entity/villager2/professions/leatherworker", - "librarian": "textures/entity/villager2/professions/librarian", - "shepherd": "textures/entity/villager2/professions/shepherd", - "tool_smith": "textures/entity/villager2/professions/toolsmith", - "weapon_smith": "textures/entity/villager2/professions/weaponsmith", - "stonemason": "textures/entity/villager2/professions/stonemason", - "nitwit": "textures/entity/villager2/professions/nitwit", - "unskilled": "textures/entity/zombie_villager2/professions/armorer", - "level_stone": "textures/entity/villager2/levels/level_stone", - "level_iron": "textures/entity/villager2/levels/level_iron", - "level_gold": "textures/entity/villager2/levels/level_gold", - "level_emerald": "textures/entity/villager2/levels/level_emerald", - "level_diamond": "textures/entity/villager2/levels/level_diamond" - }, - "geometry": { - "default": "geometry.zombie.villager_v2" - }, - "scripts": { - "pre_animation": [ - "v.num_professions = 14;", - "v.profession_index = ((q.variant < v.num_professions) ? q.variant : 0);", - "v.tcos0 = (Math.cos(q.modified_distance_moved * 38.17) * q.modified_move_speed / v.gliding_speed_value) * 57.3;", - "v.level_index = (q.trade_tier);" - ] - }, - "animations": { - "humanoid_big_head": "animation.humanoid.big_head", - "humanoid_base_pose": "animation.humanoid.base_pose", - "look_at_target_default": "animation.humanoid.look_at_target.default", - "look_at_target_gliding": "animation.humanoid.look_at_target.gliding", - "look_at_target_swimming": "animation.humanoid.look_at_target.swimming", - "move": "animation.humanoid.move", - "riding.arms": "animation.humanoid.riding.arms", - "riding.legs": "animation.humanoid.riding.legs", - "holding": "animation.humanoid.holding", - "brandish_spear": "animation.humanoid.brandish_spear", - "charging": "animation.humanoid.charging", - "attack.rotations": "animation.humanoid.attack.rotations", - "sneaking": "animation.humanoid.sneaking", - "bob": "animation.humanoid.bob", - "damage_nearby_mobs": "animation.humanoid.damage_nearby_mobs", - "bow_and_arrow": "animation.humanoid.bow_and_arrow", - "use_item_progress": "animation.humanoid.use_item_progress", - "zombie_attack_bare_hand": "animation.zombie.attack_bare_hand", - "swimming": "animation.zombie.swimming" - }, - "animation_controllers": [ - { "humanoid_baby_big_head": "controller.animation.humanoid.baby_big_head" }, - { "humanoid_base_pose": "controller.animation.humanoid.base_pose" }, - { "look_at_target": "controller.animation.humanoid.look_at_target" }, - { "move": "controller.animation.humanoid.move" }, - { "riding": "controller.animation.humanoid.riding" }, - { "holding": "controller.animation.humanoid.holding" }, - { "brandish_spear": "controller.animation.humanoid.brandish_spear" }, - { "charging": "controller.animation.humanoid.charging" }, - { "attack": "controller.animation.humanoid.attack" }, - { "sneaking": "controller.animation.humanoid.sneaking" }, - { "bob": "controller.animation.humanoid.bob" }, - { "damage_nearby_mobs": "controller.animation.humanoid.damage_nearby_mobs" }, - { "bow_and_arrow": "controller.animation.humanoid.bow_and_arrow" }, - { "use_item_progress": "controller.animation.humanoid.use_item_progress" }, - { "zombie_attack_bare_hand": "controller.animation.zombie.attack_bare_hand" }, - { "swimming": "controller.animation.zombie.swimming" } - ], - "render_controllers": [ - "controller.render.zombie_villager_v2_base", - "controller.render.zombie_villager_v2_masked", - "controller.render.villager_v2_level" - ], - "enable_attachables": true, - "spawn_egg": { - "texture": "spawn_egg", - "texture_index": 42 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/integratedpack/render_controllers/zombie_villager_v2.render_controllers.json b/src/main/resources/integratedpack/render_controllers/zombie_villager_v2.render_controllers.json deleted file mode 100644 index e9ad876..0000000 --- a/src/main/resources/integratedpack/render_controllers/zombie_villager_v2.render_controllers.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "format_version": "1.8.0", - "render_controllers": { - "controller.render.zombie_villager_v2_masked": { - "arrays": { - "textures": { - "Array.biomes": [ - "Texture.plains", - "Texture.desert", - "Texture.jungle", - "Texture.savanna", - "Texture.snow", - "Texture.swamp", - "Texture.taiga" - ], - "Array.professions": [ - "Texture.unskilled", - "Texture.farmer", - "Texture.fisherman", - "Texture.shepherd", - "Texture.fletcher", - "Texture.librarian", - "Texture.cartographer", - "Texture.cleric", - "Texture.armorer", - "Texture.weapon_smith", - "Texture.tool_smith", - "Texture.butcher", - "Texture.leatherworker", - "Texture.stonemason", - "Texture.nitwit" - ] - } - }, - "geometry": "Geometry.default", - "materials": [ - { "*": "query.is_baby ? Material.default : Material.masked" } - ], - "textures": [ - "Array.biomes[q.mark_variant]", - "Array.professions[v.profession_index]" - ] - } - } -} From 47878b8fde40fca1e11a4c9a5bb9b61fa6a7489c Mon Sep 17 00:00:00 2001 From: Novampr Date: Tue, 7 Jul 2026 15:38:00 +0100 Subject: [PATCH 2/3] Bump version --- src/main/resources/integratedpack/manifest.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/integratedpack/manifest.json b/src/main/resources/integratedpack/manifest.json index fc6c3e2..c1b4483 100644 --- a/src/main/resources/integratedpack/manifest.json +++ b/src/main/resources/integratedpack/manifest.json @@ -4,7 +4,7 @@ "description": "Bedrock resource pack to extend Geyser functionality", "name": "GeyserIntegratedPack", "uuid": "2254393d-8430-45b0-838a-bd397828c765", - "version": [1, 1, 1], + "version": [1, 1, 2], "min_engine_version": [ 1, 16, 0 ] }, "modules": [ @@ -12,7 +12,7 @@ "description": "GeyserIntegratedPack", "type": "resources", "uuid": "4d60881b-e4ed-466f-925c-8abc873151ba", - "version": [1, 1, 1] + "version": [1, 1, 2] } ] } From 3f95d811f5855bf9871bf1041a30700031c62900 Mon Sep 17 00:00:00 2001 From: Novampr Date: Tue, 7 Jul 2026 16:02:02 +0100 Subject: [PATCH 3/3] Remove Zombie Villager from dev documentation --- developer_documentation.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/developer_documentation.md b/developer_documentation.md index 84b12dd..1c402d0 100644 --- a/developer_documentation.md +++ b/developer_documentation.md @@ -14,7 +14,6 @@ * [Skeleton horses](#Skeleton-horses) * [Spectral arrow entities](#Spectral-arrow-entities) * [Spyglass animations](#Spyglass-animations) - * [Zombie villager textures](#Zombie-villager-textures) * [UI modifications](#ui-modifications) * [Structure block texture changes (MCPE-48224)](#structure-block-texture-changes-mcpe-48224) * [Cherry Fence Gate Sound Fix (MCPE-168021)](#cherry-fence-gate-sound-fix-mcpe-168021) @@ -308,11 +307,6 @@ Lastly, the spyglass animation must be modified to account for the spyglass bein Unfortunately, the spyglass cannot actually be used in the offhand by Bedrock players, as the triggering of the first person "animation" for it is hardcoded on the client side. However, these changes allow the spyglass to be properly displayed when in the offhand of a Bedrock player, as well as when used in the offhand of a Java player. Furthermore, `q.is_emerging` could be utilized by other resource pack creators working with Geyser to identify if an item is being used in the offhand. -### Zombie villager textures - -Like villagers, zombie villagers in Java Edition have visible biome and profession variants. It appears that initial implementation of this was started in the Bedrock vanilla resources, given the presence of the entity with the identifier `minecraft:zombie_villager_v2`. However, the textures specified in this vanilla entity definition appear to be entirely blank TGA files. Luckily, the profession textures of zombie villagers and villagers are essentially identical, so the entity definition was updated to reference the villager profession textures. -Zombie villagers, like villagers, have a profession level. This is implemented by adding the same vanilla render controller used to create this effect in the villager entity, `controller.render.villager_v2_level`. The remainder of the entity definition is unchanged. - ### UI modifications Some inventories have added functionality on Bedrock, that does not exist on Java edition. For example, this includes: - 2x2 crafting grid while in creative mode