NPC Texture Atlas Mismatch 1.20.1 - Herbertofury/Advent-of-Ascension GitHub Wiki
Nine NPC texture-atlas mismatches in AoA 3.7.1
Version: Minecraft 1.20.1, AoA3-1.20.1-3.7.1-all.jar. These are static resource/bytecode findings and proposed restoration references. The game has not been patched or run to certify a fix.
What the released code does
The released AoAEntityRendering.humanoidLayerDefinition supplier creates a vanilla humanoid mesh with CubeDeformation.NONE, zero vertical offset and a 64×64 texture atlas. Nine inspected NPC registrations use that supplier, HumanoidModel::new, and a 64×32 PNG.
Texture dimensions need not always equal the model's atlas dimensions, but here the humanoid mesh's UVs and the old 64×32 NPC layout visibly disagree. The static reconstruction reproduces the misplaced texture bands. Changing the declared atlas height to 32, without changing the seven-part geometry or PNG, yields the intended-looking layout below.
The neutral humanoid mesh was extracted from the official Minecraft 1.20.1 HumanoidModel.createMesh factory using a restricted symbolic reader. Unsupported operations stop extraction. This does not execute game code. Mojang's official mappings identify the class and method; class hashes, method calls and the released AoA supplier bytecode are retained in the evidence.
Compare the released mapping with the proposed correction
The left image keeps the released 64×64 atlas. The right changes only atlas height to 32. Both use the exact released NPC texture and identical neutral geometry. Runtime animation, equipment and lighting are outside this comparison.
| NPC | Released atlas configuration | Proposed 64×32 atlas reference |
|---|---|---|
| Creep Banker | ![]() |
![]() |
| Crystal Trader | ![]() |
![]() |
| Dungeon Keeper | ![]() |
![]() |
| Explosives Expert | ![]() |
![]() |
| Metalloid | ![]() |
![]() |
| Naturalist | ![]() |
![]() |
| Shyre Archer | ![]() |
![]() |
| Shyre Banker | ![]() |
![]() |
| Token Collector | ![]() |
![]() |
Restoration checklist
- Confirm the target Enderloom build still uses this exact supplier and texture layout.
- Use a separate 64×32 layer definition for these legacy NPC textures, or deliberately convert each texture to a correct 64×64 layout. Do not change unrelated NPCs globally.
- Verify head/hat, torso, mirrored arms and mirrored legs at front, back and side views.
- Check idle/walk animations, equipment layers, baby/adult scaling where supported, resource-pack overrides and hitboxes in game.
- Add a targeted regression fixture for each of the nine registrations and preserve the original texture hashes.
- Treat the comparison image as a proposed fix until live tests pass.

















