26.2 Changelog 5/7: For the resource pack team

Status
Not open for further replies.

q220

Founder
Staff member
Supporter
Credits
10
XP
96
Type
Question

For the resource pack team​

For: the resource pack team and pack makers
← Back to the overview

Going from 1.21.4 to 26.2 means catching up on seven resource pack formats at once (46 to 88), and six of those releases changed something our packs rely on. We compared our pack repositories with vanilla 26.2, and four problems stand out: our core shader overrides, beds and signs turning into block models, custom player heads, and custom block models that borrow item textures. The fastest path: start with the migration checklist at the end and come back up for the details.


Resource packs: formats and pack.mcmeta​

VersionResource pack formatData pack format
1.21.4 (our old version)4661
1.21.55571
1.21.66380
1.21.7 and 1.21.86481
1.21.9 and 1.21.1069.088.0
1.21.1175.094.1
26.1, 26.1.1 and 26.1.284.0101.1
26.2 (MCME now)88.0107.1
⚠ 26.3 (newer, not our version)97.1121.0
  • Trap: 88.0 is the 26.2 resource pack format, but it was also the data pack format of 1.21.9 and 1.21.10.
  • Minor versions (69.0, 75.0 and so on) exist since 1.21.9; a minor bump stays compatible within its major. 26.2 got no hotfix, and since 15/09/2026 the launcher's "Latest release" is 26.3.
Full history: Pack format and pack.mcmeta on the Minecraft Wiki.

pack.mcmeta since 1.21.9
  • NEW min_format and max_format are required. Each takes a number, [major] or [major, minor]. As a minimum, 74 means 74.0; as a maximum, 74 means 74 with any minor.
  • CHANGED pack_format is optional, unless the pack also claims a format below 65 (clients older than 1.21.9).
  • REMOVED supported_formats is forbidden when the range starts at 65 or higher. It's only still required when the range reaches below 65, and must then match the majors of min and max.
  • CHANGED Overlay entries need min and max too. Their old formats field is required on every entry once any overlay covers a format below 65, and forbidden otherwise.
A valid header for a 26.2-only build (pack_format optional, supported_formats not allowed):
JSON:
{
  "pack": {
    "description": "MCME Human (26.2)",
    "min_format": 88,
    "max_format": 88
  }
}
Our packs: all except Survival use an open-ended header (formats 15 to 255, all four fields set). That's valid, so every client accepts it, but it says nothing about real compatibility. Two packs need a fix:
  • Human, the overlay gotcha: its overlay entries 1_21_1 and 1_21_4 only have the old formats field, without min and max. That's invalid for 1.21.9 and newer clients, and we don't know yet whether a 26.2 client skips the overlays or rejects the pack's metadata. Add min and max to both entries, or drop the overlays from the 26.2 build.
  • Survival only declares "pack_format": 46. It's probably accepted as a legacy pack; give it the same header as the others anyway.
JSON:
{
  "pack": {
    "description": "MCME Example (1.21.4 - 26.2)",
    "pack_format": 46,
    "supported_formats": [46, 88],
    "min_format": 46,
    "max_format": 88
  },
  "overlays": {
    "entries": [
      { "directory": "ov_1_21_4", "formats": [46, 64], "min_format": 46, "max_format": 64 },
      { "directory": "ov_26_2", "formats": [88, 88], "min_format": 88, "max_format": 88 }
    ]
  }
}
Clients up to 1.21.8 read the old fields and ignore min and max; newer clients check both. Overlays can only add or replace files, never delete one, so with this much moved a separate 26.2 build is simpler.


Resource packs: what breaks in our packs​

This comes from a read-only scan (23/09/2026) of the master branch of each pack below, compared with vanilla 26.2, so skip anything you already fixed on another branch. Files at vanilla paths that no longer exist in 26.2: Human 66, Mordor 39, Dwarven 36, Paths of the Dead 27, Rohan 27, Lothlorien 25, Survival 2. Highest impact first:

Pack audit: shader overrides​

Affects: Human (HUD shader); the vanilla-client variants of Human and Mordor (objmc, fog)
Mojang calls core shader overrides unsupported, and the shaders changed in every drop since 1.21.4.
  • REMOVED Human's HUD shader. Our "MCME-Action-Bar" override, core/rendertype_text.vsh, moves font glyphs with a huge negative ascent into place. 26.2 removed that program: the six rendertype_text programs became core/text and core/text_background. The file also still uses #version 150 and loose uniforms, which 1.21.6 and 1.21.9 replaced. Port it to core/text.vsh inside #ifdef IS_GUI, using the Projection and DynamicTransforms uniform blocks. Until then, the HUD icons will likely be missing or misplaced.
  • REMOVED objmc. The vanilla-client variant of Human and Mordor (the default for non-Fabric players, built by generateVanilla in ResourcePackScripts) ships 1.21.1-era objmc shaders, wired up through shaders/core/rendertype_*.json. Those JSON program files stopped working in 1.21.5. objmc itself was last updated for 1.21.11 (17/02/2026).
  • CHANGED fog.glsl. The same variants override include/fog.glsl with a 1.21.1 file. It lacks the Fog uniform block, apply_fog and fog_spherical_distance, which vanilla 26.2's terrain, entity and text shaders import.
Likely result: shader compile errors and a failed resource reload for 26.2 players on the vanilla variant of Human or Mordor. We read this from the files; nobody has tested it yet.
Decision needed: port objmc to 26.2, or rebuild those models as JSON now that elements rotate freely (see new possibilities). Test whatever stays on OpenGL and on the new Vulkan backend (pack shaders run there too), and flip any custom depth logic, because 26.2 reversed the depth buffer. Details: Shader on the wiki.

Pack audit: beds and signs​

Affects: all six region packs; sign carriers in Human and Dwarven
  • REMOVED Beds, signs and hanging signs are ordinary block models in 26.2. The game ignores textures/entity/bed/ and textures/entity/signs/, which all six region packs override, so our custom beds and signs silently fall back to vanilla.
  • Fix: Mojang's Slicer v1.2.1 (GitHub, 13/05/2026) cuts the old textures into the new block/<color>_bed_*, block/<wood>_sign and block/<wood>_hanging_sign files. It targets format 87.0 (a 26.2 snapshot), may leave some manual work, and doesn't do the pillar rename below. Bed items are now composite models of head and foot, so ship both. The sign edit screen uses gui/sign/<wood>.png.
  • CHANGED Sign carriers. Human and Dwarven override sign blockstates to show custom models (for example warped_sign → block/directional_sign_top*). In 1.21.4 the block entity drew the vanilla board as well, which is presumably why our sign textures were blank. In 26.2 the blockstate model is the sign, so our models replace the board outright. The game still draws the sign text, at a position packs can't change yet, so check where it lands on each carrier.
  • REMOVED Human's particle override models/block/oak_hanging_sign.json is dead; the new models are called <wood>_hanging_sign_rot_0 and so on.

Pack audit: custom player heads​

Affects: Human and Survival (player heads); Survival (shield, trident)
  • CHANGED Both packs override items/player_head.json and draw every custom_model_data entry (our "statue" parts) and the fallback with the minecraft:head special model. Since 1.21.6 that type no longer loads the skin from the profile, so our custom heads show the default skin until they use the new minecraft:player_head type.
  • CHANGED Since 26.1 the special renderers (heads, banners, shields, tridents and others) no longer apply their own transform; vanilla's item definitions carry it in a transformation field. Definitions copied from 1.21.x without it will likely render flipped or offset.
  • Fix: switch to minecraftlayer_head and copy the transformation from vanilla 26.2's items/player_head.json. Survival's shield.json and trident.json fallbacks need vanilla's transformation too. Items model definition

Pack audit: item textures in block models​

Affects: unknown until we search
CHANGED 1.21.11 moved item textures into their own items atlas. A block model may now only use blocks-atlas sprites, so a custom block model that borrows an item/ texture shows the missing texture. An item model must take all its textures from one atlas. Nobody has searched our roughly 10,000 block models for item/ references yet (checklist step 6). The fix: copy those textures into block/. An item directory source in atlases/blocks.json also works, since atlas sources merge, but the game then warns about duplicate sprite names. Atlas

Pack audit: silent texture renames​

Affects: every pack
A renamed vanilla file throws no error: our old file just stops being used, and players see vanilla.
  • CHANGED Pillars (26.2): block/quartz_pillar.pngquartz_pillar_side.png (Human, Dwarven, Mordor, Paths of the Dead, Rohan) and purpur_pillar.pngpurpur_pillar_side.png (Human, Dwarven, Mordor). Keep the old file too if our own models use it.
  • CHANGED Sun and moon (1.21.11): environment/sun.pngenvironment/celestial/sun.png, and the moon_phases.png sheet became 8 files in environment/celestial/moon/ (full_moon, waning_gibbous, third_quarter, waning_crescent, new_moon, waxing_crescent, first_quarter, waxing_gibbous). All six region packs.
  • CHANGED Iron chain (1.21.9): chainiron_chain in the blockstate, item definition, models and textures. Mordor.
  • CHANGED Entity textures (26.1): 76 moved or were renamed with identical content, and the rabbit got a new model with redrawn textures. Ours: cat persian and tabby → cat_persian and cat_tabby (all six); shield_base and shield_base_nopattern → entity/shield/ (Human, Mordor, Paths of the Dead, Rohan, Lothlorien); spectral_arrow and tipped_arrow → arrow_spectral and arrow_tipped (Mordor, Paths of the Dead, Rohan, Lothlorien); enchanting_table_book → entity/enchantment/ (Human, Rohan); the armor stand, beacon beam, end portal, experience orb and minecart (Dwarven).
  • CHANGED Glint (1.21.5): misc/enchanted_glint_entity.pngenchanted_glint_armor.png (Mordor). Mordor's misc/white.png is dead too; vanilla removed it in 1.21.9.
  • CHANGED Effect backgrounds (1.21.11): effect_background_small → effect_background (nine-sliced); effect_background_large removed; effect_background_ambient added. Survival.

Pack audit: per-texture translucency​

Affects: any pack with stray transparency in "solid" textures
CHANGED Since 26.1 the texture picks the render pass, not the block: partly transparent pixels mean translucent, fully transparent ones mean cutout, anything else is solid. Stray semi-transparent pixels on a carrier block that used to be solid now render see-through. Clean the alpha, or choose on purpose with the new {"sprite": …, "force_translucent": true} form in a model's textures. Vanilla's glass, glass pane and redstone dust models use force_translucent now, so compare if we override them.

Pack audit: strict JSON​

Affects: any file that isn't standard JSON
CHANGED Since 1.21.6 all JSON is parsed strictly, lang files included. Mojang doesn't say exactly what that rejects, so run every .json and .mcmeta file through a strict parser (python -m json.tool or jq) and fix what it flags, typically comments and trailing commas.


Resource packs: changes per version​

The pack changes of each release, in short. The wiki pages linked in each spoiler have the complete lists.

Format 55.
  • CHANGED Renamed: enchanted_glint_entity → enchanted_glint_armor; creaking heart _active → _awake; entity/chicken.png → chicken/temperate_chicken.png; pig → temperate_pig and cow → temperate_cow (new texture sizes; the cow has a new model with a snout); sheep_fur → sheep_wool, plus a tinted sheep_wool_undercoat.
  • CHANGED Saddles became equipment layers (entity/equipment/<mob>_saddle/). They were cut out of the camel, horse, donkey, mule, skeleton horse and zombie horse textures, so old retextures that painted a saddle lose it.
  • REMOVED The shared spawn egg textures (every egg has its own now). The JSON program files of core shaders and post effects: only .vsh, .fsh and .glsl can still be overridden, post-effect JSON uses vertex_shader and fragment_shader instead of program, and uniforms need a type.
  • CHANGED Dropped items hover and stack by model size. Wolf sounds moved into variant folders, and the entity.wolf.howl event is gone.
  • NEW component in select and condition item models; a separator for paletted_permutations atlas sources; colormap/dry_foliage.png.
Wiki: Java Edition 1.21.5 · Mojang's changelog

Format 63.
  • CHANGED Strict JSON, and minecraft:head no longer loads skins; use minecraftlayer_head (both above).
  • CHANGED Shaders: built-in uniforms became uniform blocks (Globals, Fog, Projection, DynamicTransforms, Lighting, CloudInfo, LightmapInfo). Fog split into environmental and render-distance fog, and FogShape and FOG_IS_SKY are gone. New sky, stars and panorama shaders. SamplerInfo replaces the *Size post-effect uniforms.
  • CHANGED Some sound files moved from sounds/entity/ to sounds/mob/ (squids, guardian, horse, rabbit, pufferfish), and block.sand.wind became block.dry_grass.ambient. The mob_effects atlas merged into gui. "blur" in .png.mcmeta is honored consistently. clouds.png can't be tinted anymore. Panoramas must be square and equal in size. The ghast texture is higher resolution, and wolf, sheep and pig legs are mirrored.
  • NEW Element rotation at any angle within ±45°; oversized_in_gui; Unifont 16.0.03 with a Private Use Area sub-font; the happy_ghast_body layer; waypoint styles.
Diffing tip: about 850 vanilla block textures got new file hashes in 1.21.6 but looked identical in a sample pixel check (re-encoded, not redrawn).
Wiki: Java Edition 1.21.6 · Mojang's changelog

Format 64. No breaking pack changes; 1.21.7 added textures for the "Lava Chicken" disc and the "Dennis" painting.
FIXED Corruption after repeatedly reloading 512×512 packs, very large atlases breaking the game, and atlas memory leaks (1.21.7). A crash on some AMD graphics cards when a pack contains an invalid shader (1.21.8).
Wiki: 1.21.7 · Wiki: 1.21.8

Format 69.0; 1.21.10 changed nothing for packs.
  • CHANGED The pack.mcmeta overhaul and chain → iron_chain (both above). misc/white.png was removed.
  • CHANGED Shaders: all are #version 330 (OpenGL 3.3). Unused lightmap shaders such as position_color_lightmap were removed. The full-screen vertex shaders (blit_screen, blit, blur, invert, sobel, screenquad) were replaced by core/screenquad.vsh, which draws 3 vertices from gl_VertexID with no Position attribute. The entity shaders gained a PER_FACE_LIGHTING flag.
  • CHANGED Redrawn dye icons; the villager GUI result slot moved up 1 pixel; entity atlases no longer build unused mipmaps; the undersides of flat entity model parts are lit correctly.
  • NEW The on_shelf display context, and the text object component (atlas sprites and player heads inside text).
Wiki: Java Edition 1.21.9 · Mojang's changelog

Format 75.0.
  • CHANGED The new items and celestials atlases, the split moon and the effect_background sprites (all above). The end_flash texture moved with the sun, the celestials atlas has no mipmaps, and duplicate sprite names across atlases now cause a warning.
  • CHANGED Leather horse armor is split into a tinted base and an overlay; the zombie horse is darker; copper chests were redrawn.
  • CHANGED Every block gets mipmaps. Glass, panes and redstone dust accept translucent textures. Still water and lava always use water_still and lava_still (fine for us). Shaders: GPU sprite animation (animate_sprite*, SpriteAnimationInfo), a new core/block shader, a ChunkSection block in terrain.vsh, camera coordinates in Globals.
  • NEW Multi-axis element rotation without an angle limit; z rotation in blockstates; mipmap_strategy and alpha_cutoff_bias; swap_animation_scale; Unifont 17.0.01.
Wiki: Java Edition 1.21.11 · Mojang's changelog

Format 84.0; the hotfixes changed nothing for packs.
  • CHANGED 76 entity textures moved or were renamed, content unchanged. The patterns: flat files moved into folders (entity/bat.png → entity/bat/bat.png; also banner, beacon, enchanting book, end portal, experience orb, fishing hook, guardian, shield, spider eyes, trident and more); cat and llama variants got a prefix (cat_black); climate and color variants swapped round (cold_cow → cow_cold; also chicken, pig, frog, panda, mooshroom, snow fox, copper golem). Plus armorstand/wood → armorstand/armorstand, arrow_spectral, arrow_tipped and turtle/turtle.
  • CHANGED New rabbit model and textures (rabbit/rabbit_<variant>.png); the Programmer Art rabbit is gone. Baby mobs got new models, about 120 new textures and a humanoid_baby equipment layer, so packs that only retexture adults leave the babies vanilla.
  • CHANGED Special item models lost their built-in transforms, and the render pass is chosen per texture (both above). Tripwire renders as cutout. Special model fields: bed gained part; banner and the signs gained attachment (misspelled attachement on standing_sign, MC-307498); chest gained chest_type; shulker_box lost orientation.
  • REMOVED gui/demo_background.png. The shaders rendertype_entity_alpha and _decal (now a DISSOLVE flag in core/entity), rendertype_item_entity_translucent_cull and rendertype_translucent_moving_block.
  • CHANGED Shaders: new core/item; block.vsh and terrain.vsh lost Normal; the lightmap was rewritten (BlockLightTint, NightVisionColor); sample_lightmap.glsl replaced smooth_lighting.glsl.
  • NEW transformation on every item model; bell, book and end_cube special types.
Wiki: Java Edition 26.1 · Mojang's changelog

Format 88.0; no hotfix.
  • REMOVED Beds, signs and hanging signs as entities (see above): their entity textures, the beds and signs atlases, the bed, standing_sign and hanging_sign special item types, the bed block entity and the old particle-only models.
  • NEW Block textures and models per wood and color (oak_sign_rot_0 to 3, oak_wall_sign, red_bed_head_up, red_bed_foot_south, bed_down and so on), with y rotations in the blockstates, composite bed items and gui/sign/<wood>.png. Beds lost their inner faces.
  • CHANGED The pillar rename (above). Shaders: the six rendertype_text programs became core/text and core/text_background (defines IS_GUI, IS_SEE_THROUGH, IS_GRAYSCALE); the depth buffer is reversed; ALPHA_CUTOUT for translucent terrain is now 0.1.
  • NEW An experimental Vulkan backend (Video Settings → Graphics API; Default is still OpenGL). Pack shaders run there too, with small automatic rewrites (gl_VertexID → gl_VertexIndex), so test both. Textures for the sulfur and cinnabar blocks, the sulfur spike, the sulfur cube and new particles; five new languages.
  • FIXED Black spots on distant textures with some packs (MC-305182); TTF glyphs on glowing signs (MC-297491).
Wiki: Java Edition 26.2 · Mojang's changelog

Not our version (format 97.1), but 26.3 players can join, and Architect gives them our 26.2 build. For a future 26.3 build: model elements lost shade ("shade_direction_override": "up" replaces "shade": false), so most custom models need an edit. Shaders compile through ShaderC, with #include instead of #moj_import and explicit in/out locations. rendertype_clouds and rendertype_world_border lost their prefix. Transparency is order-independent, and the transparency post chain and text_background were removed. Palettes moved to textures/palettes/.
How our 26.2 build looks on a 26.3 client is untested.
Wiki: Java Edition 26.3 · Mojang's changelog


Resource packs: new possibilities​

  • NEW Free element rotation. Any angle within ±45° (1.21.6), then rotation around x, y and z at once with no limit (1.21.11), plus z rotation in blockstate variants. Culling still uses the unrotated faces. Angled beams, rafters and leaning ruins become plain JSON models, and so might some objmc and OBJ models (elements are still boxes, not free triangles). Model
  • NEW Translucency on any block (26.1). Windows, ice or crystal no longer need a translucent carrier such as tripwire or glass panes: the texture's alpha decides.
  • NEW Remodelable beds and signs (26.2). Their shape is an ordinary blockstate and model now, so medieval beds and carved inn signs are possible.
  • NEW Mipmaps per texture (1.21.11). mipmap_strategy and alpha_cutoff_bias in .png.mcmeta keep thin cutouts (fences, leaves) from vanishing or thickening at a distance. Worth testing whether this lets us drop our "turn mipmapping off" advice for OptiFine.
  • NEW Item models. select and condition on any data component (1.21.5), a transformation per sub-model (26.1), oversized_in_gui (1.21.6, which Mojang calls temporary), on_shelf (1.21.9), swap_animation_scale (1.21.11) and the bell, book and end_cube special types (26.1). With item_model and custom_model_data set by the server, that covers most custom item textures without any mod. Items model definition
  • NEW Sprites in text (1.21.9). The object text component shows any atlas sprite or a player head in chat, holograms and signs, which could replace some font-glyph tricks.
  • NEW Also: data-driven pig, cow, chicken, cat and frog variants (1.21.5), mob sound variants (26.1), waypoint styles for the locator bar (1.21.6), and cheaper animated textures thanks to GPU sprite animation (1.21.11).
Tengwar in the game font. Since 1.21.6 the game ships Unifont's Private Use Area glyphs as the font include minecraft:include/unifont_pua, and Mojang says they include Tengwar. It's off by default, since no default font uses it, but a pack can add it to a font such as default.json to show Tengwar in chat, on signs and in books. How complete the Tengwar set is, and whether Cirth is covered at all, is unconfirmed. Many packs put custom icons in the Private Use Area, so check for clashes with our own font glyphs first.


Resource packs: OptiFine features on 26.2​

OptiFine for 26.2 is only a preview (HD U K2 pre1, 22/09/2026): shaders don't work, and there's no Forge support. The last full release is HD U J9 for 1.21.11. These mods replace its pack features and have 26.2 builds (as of 23/09/2026):
FeatureMod26.2 build
Connected textures (OptiFine format), emissive texturesContinuity (Fabric, Quilt)3.0.1+26.2
Random and emissive entity texturesEntity Texture Features (Fabric, Quilt, NeoForge)7.2.4
Custom entity models (CEM)Entity Model Features (Fabric, Quilt, NeoForge)3.3.8
Custom item textures (CIT)CIT Resewn Continuation (Fabric; the original CIT Resewn stops at 1.21.1)1.2.2-fork.13+26.2 (beta)
Custom colors, colormaps, block soundsPolytone (Fabric, NeoForge)26.2-6.8.1
Better grassBetterGrassify (Fabric, Quilt)1.8.7+fabric.26.2
Custom GUI texturesOptiGUI (Fabric, Quilt)2.3.0-beta.10+26.2 (beta)
For our packs this matters little. They hold only a handful of OptiFine files: Human's bettergrass.properties, block.properties and texture.properties, plus one or two each in Dwarven, Mordor and Paths of the Dead. Random block textures in our packs use vanilla weighted blockstate variants, which need no mod at all.


Resource packs: the MCME modpack and Special Model Loader​

The honest status: the Sodium route isn't ready for 26.2 yet.
  • ⚠ Special Model Loader (SML) has no 26.x build. The last official build is 1.21.4-1.4.0, with no upstream commits since 19/01/2025. The Sodium variants of Human (420 .obj models) and Mordor (150) depend on it. The community fork SpecialModelLoader Updated stops at 26.1.2; its source targets a 26.2 snapshot but has no release. Without SML, those OBJ models (leaves, branches, beams and more) will likely show up as missing models.
  • No clean fallback: Architect warns Sodium players on the vanilla variant that they "might experience texture errors", and that combination is untested with Sodium 0.9.
  • REMOVED Indium: Sodium 0.6.0 and newer have the Fabric Rendering API built in, and Indium is incompatible with it.
  • The MCME Modpack Marker (v1.0.0) only declares 1.21.x, so Fabric refuses to launch with it on 26.2. Until a new marker ships, Architect can't detect Sodium players automatically; Fabric players get a clickable hint to run /rp client sodium instead.
  • The MCME installer is hard-coded to 1.21.4, so running it again can't produce a 26.2 setup. Its README describes the rebuild. A 26.2 mods zip would need Fabric API 0.161.0+26.2, Sodium 0.9.2, Iris 1.11.4+26.2, Continuity 3.0.1+26.2, LambDynamicLights 4.12.4+26.2 and Logical Zoom 0.0.36, no Indium, a new marker and an answer for SML.
The SML options: (a) build or port the fork, (b) make Sodium variants without OBJ models, or (c) something else. We'll announce the decision.


Resource packs: how the server sends packs​

MCME-Architect picks one pack per player and sends it (not forced). Its ServerResourcePacks config is a tree:
Code:
ServerResourcePacks
  <pack>                one per region pack
    <client>            vanilla, sodium, lite
      <resolution>      16px
        <variant>       light, dark, footprints
          <version key> 1_21_4, 26_2, ...
            url, sha
  • Client and region: the client is sodium when the Modpack Marker announces itself, and otherwise vanilla for non-Fabric clients; players can switch with /rp client. With auto-switching on, Architect also picks the highest-weight region pack at the player's position every second.
  • Version: Architect takes the highest key whose protocol number in protocolVersions.yml is at or below the player's; if none qualifies, it takes the lowest key. With 1_21_4 and 26_2, a 1.21.11 player (774) gets the 1.21.4 build and a 26.3 player (777) the 26.2 build. Keep the 1_21_4 entries as a fallback. ViaVersion runs on every server, so Architect sees each player's real client version.
  • protocolVersions.yml: Architect only writes its bundled copy when none exists, so plugin updates never change it. On our network it's one file shared by every server, and it already has 26_1: 775 and 26_2: 776.
  • ⚠ Right now no pack has a 26_2 key. The newest key in every ServerResourcePacks section is 1_21_4, so 26.2 and 26.3 players currently get the 1.21.4 builds. There are three configs to update: the shared one (hub has an identical copy), rpserver's own (it adds Erebor and spells Paths of the Dead as "Pathsofthedead") and eventserver's (its packs have no version keys at all).
  • A missing key is fatal: the lookup gives up as soon as any version key under a variant is missing from that file. A 26_2 entry in the config without the 26_2 line in protocolVersions.yml means no pack at all for that pack, client, resolution and variant, the 1.21.4 players included. /rp then reports a missing URL configuration.
  • Every served path needs its own 26_2 key with a url and a sha (26_2, not 26.2). /rp server <pack> <version> 26.2 fills in the release URLs for the standard paths (vanilla, sodium or lite; 16px; light or footprints) and refreshes the newest SHA-1 per variant. It can fail if the config lacks one of those paths, and other paths, such as dark, need a manual entry. /rp calcsha <pack> all recomputes every SHA-1. Without the 26_2 line in protocolVersions.yml, a SHA-1 may never get written, so check every entry has one.
  • When testing, watch for the FAILED_DOWNLOAD and FAILED_RELOAD statuses: Architect doesn't message the player about FAILED_RELOAD.


Resource packs: migration checklist​

Per pack, top to bottom:
  1. Branch: a 26.2-only build with the simple header is easier than overlays, and Architect serves a build per client version anyway.
  2. Strict JSON: run every .json and .mcmeta through python -m json.tool or jq and fix what it flags.
  3. Path audit: flag every assets/minecraft file that exists in vanilla 1.21.4 but not in 26.2 (the 26.2-assets tag of misode/mcmeta helps), then rename or move it. Keep old files that our own models use.
  4. Beds and signs: run Slicer 1.2.1, check its output, add the gui/sign backgrounds and review every sign carrier.
  5. Pillars: add quartz_pillar_side and purpur_pillar_side by hand.
  6. Atlases: search block models for item/ textures and copy those into block/. No item model may mix atlases.
  7. Translucency: clean stray alpha or set force_translucent; tune thin cutouts with mipmap_strategy and alpha_cutoff_bias.
  8. Item definitions: for every overridden definition that uses minecraft:special, re-copy vanilla 26.2's fallback, add its transformation to our entries, and switch heads to minecraftlayer_head.
  9. Entities: the 26.1 renames, the 1.21.5 saddle split and the redrawn cow, pig, chicken, rabbit and zombie horse (new sizes and layouts). Decide whether baby mobs need textures.
  10. Sky: move the sun and split the moon into 8 files.
  11. Shaders: port or drop the HUD, objmc and fog overrides. Test on OpenGL and on Vulkan, and with the Sodium variant (Sodium doesn't use the vanilla terrain shaders).
  12. pack.mcmeta: fix or drop Human's overlays, and give Survival the full header.
  13. Test on a real 26.2 client: reload with F3+T and read the game log for missing textures and model, metadata or shader errors. F3+S dumps the atlases, so you can check where a sprite landed. Walk a test area with every carrier blockstate, sign, bed, head on a display entity and HUD icon, and compare with 1.21.4 screenshots.
  14. Deploy: publish the release, add the 26_2 url and sha entries through Architect in all three configs (shared, rpserver, eventserver), and join with a 26.2 client (and once with 26.3).
Found something we missed? Known issues and what's next explains how to report it.
 
Last edited:
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…