Skip to content

Blockhaven: golems, hoglins, striders and ravagers on Java's models - #73

Merged
eklonofficial merged 8 commits into
eklonofficial:mainfrom
k1519035:blockhaven-mobs-beasts
Oct 3, 2026
Merged

eklonofficial merged 8 commits into
eklonofficial:mainfrom
k1519035:blockhaven-mobs-beasts

Conversation

@k1519035

@k1519035 k1519035 commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

Stacked on #72. Review that one first; this PR's own change is the top commit.

What
Iron golem, snow golem, hoglin, strider and ravager now use Java 1.20.1's own models (new js/entity/beasts.js). Their texture offsets match too, so resource packs skin them.

  • Geometry: checked part by part against the LayerDefinitions the real game builds; every part and box matches.
  • Poses: ported from setupAnim / prepareMobModel:
    • the golem's triangle-wave stride and its two-armed slam
    • the snow golem's body turning a quarter as far as its head
    • the hoglin's flapping ears and goring head
    • the strider's bobbing, rolling body and streaming bristles
    • the ravager's lunging neck and snapping jaw
  • Renderer details:
    • IronGolemRenderer's walk lurch.
    • The iron golem's crackiness layers (low, medium and high, by health).
    • SnowGolemHeadLayer's carved pumpkin.
    • The strider's cold skin and shiver when out of lava, and its saddle layer.

Testing

  • npm test passes (138), including a new tests/beasts.test.mjs.
  • Checked visually with the vanilla pack in the local lab.
  • Checked in-game: summoned each mob, no console errors, and the pumpkin sits on the snow golem's head facing forward.

🤖 Generated with Claude Code

https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG

Copilot AI balanced review requested due to automatic review settings October 3, 2026 03:18
@vercel

vercel Bot commented Oct 3, 2026

Copy link
Copy Markdown

@k1519035 is attempting to deploy a commit to the Marin Team on Vercel.

A member of the Team first needs to authorize it.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

k1519035 and others added 8 commits October 3, 2026 09:14
…inventory preview

The player is Java's PlayerModel (64x64 skin with its outer layer, slim arms) unwrapped
exactly as ModelPart.Cube, posed by a port of HumanoidModel.setupAnim. Players can load
their own Minecraft skin (64x64 or classic 64x32). Armor is Java's two-layer armor model,
using a pack's textures/models/armor when present. The inventory shows the live model
turned towards the pointer. Also fixes the elytra wind code throwing in the rain.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
Its angles came out NaN until the first mouse move, so the preview stayed empty.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
…from your own game

Zombie, husk, drowned, skeleton, stray and wither skeleton use Java's ZombieModel,
DrownedModel and SkeletonModel meshes and texture layouts, posed by HumanoidModel.setupAnim
with Java's zombie and skeleton arm animations. A resource pack's entity textures replace
their painted skins, and the stray's clothes and the drowned's outer layer are drawn as in
Java. tools/pack-from-jar.mjs builds a resource pack of the official textures from the
player's own installed Minecraft (launcher, Modrinth, Prism or CurseForge), never committed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
Villagers (with their biome and profession layers), wandering traders, zombie villagers,
witches, pillagers, vindicators, evokers, piglins and zombified piglins use Java's
VillagerModel, WitchModel, IllagerModel, PiglinModel and ZombieVillagerModel, posed by
their setupAnim (folded arms, spellcasting, crossbows, axe swings, flapping ears). Entity
texture layers grow to 128x128 so Java's taller textures (the witch's 64x128) fit, and a
model face's painted decoration no longer spills onto another face's pixels.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
Pig, cow, mooshroom, sheep (with its tinted wool layer), chicken, wolf (tame and angry
skins, sitting), fox, polar bear, goat, llama, horse and donkey use Java's model geometry
and texture layouts, posed by their setupAnim; mooshrooms carry Java's mushrooms. Their
painted looks carry over, and a resource pack's textures/entity images replace them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
Checked every model against the LayerDefinitions 1.20.1 builds: quadruped legs share one
unmirrored texture, the goat's ears are 3 wide and its goatee mirrored, and armor legs are
inflated 0.1 less than the rest (HumanoidArmorModel).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
…dels

Creeper, spider and cave spider, enderman, slime, magma cube, silverfish, endermite, blaze,
ghast and phantom now use Java 1.20.1's own model geometry and texture layouts (checked against
the LayerDefinitions the game builds), so resource packs skin them, with their setupAnim poses:
splayed spider legs, the enderman's clamped stride and screaming jaw, magma slices parting as it
squishes, circling blaze rods, swaying tentacles, beating phantom wings. Also CreeperRenderer's
swell, the slime squish and its see-through outer jelly (a new translucent mob pass), the eyes
layers, the ghast's 4.5x size and its shooting face.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
Iron golem, snow golem, hoglin, strider and ravager now use Java 1.20.1's model geometry and
texture layouts (checked against the game's LayerDefinitions), with their setupAnim /
prepareMobModel poses: the golem's triangle-wave stride and two-armed slam, the snow golem's
turning body, the hoglin's flapping ears and goring head, the strider's bobbing body and
streaming bristles, the ravager's lunging neck and snapping jaw. Also the iron golem's walk
lurch and crackiness layers, the snow golem's carved pumpkin, and the strider's cold skin,
shiver and saddle.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5yMmGQVzFD1XVDyZe42KG
@eklonofficial
eklonofficial force-pushed the blockhaven-mobs-beasts branch from be9cde5 to 4ff5855 Compare October 3, 2026 14:16
@eklonofficial
eklonofficial merged commit b758eb3 into eklonofficial:main Oct 3, 2026
2 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants