Recolouring the sky: the moon is eight files now, and the sun has moved
A sky pack replaces celestial/sun.png, eight 32×32 moon-phase files, end_flash.png, clouds.png, rain.png, snow.png and end_sky.png at exact sizes. The old single moon strip is gone.
Recolour packs fail for boring reasons: the wrong path, the wrong canvas size, or one file where the game wants eight. These are the exact targets, read out of the 26.3 client jar, so the paths and sizes here are the ones that actually load.
The sky is fourteen files
Everything the sky is made of lives under assets/minecraft/textures/environment/, and the sun and moon have their own celestial/ folder:
| file | size |
|---|---|
celestial/sun.png | 32 × 32 |
celestial/moon/<phase>.png × 8 | 32 × 32 each |
celestial/end_flash.png | 64 × 64 |
clouds.png | 256 × 256 |
rain.png | 64 × 256 |
snow.png | 64 × 256 |
end_sky.png | 128 × 128 |
Replace all fourteen and the sky is yours. There is nothing else — no separate horizon, no gradient file. Sky colour beyond these comes from the biome, not from a texture.
The moon is eight files
This is the mistake worth naming, because it used to be the other way round. Each phase is its own 32 × 32 texture under environment/celestial/moon/: full_moon.png, waning_gibbous.png, third_quarter.png, waning_crescent.png, new_moon.png, waxing_crescent.png, first_quarter.png and waxing_gibbous.png.
So a pack that still ships the old single moon_phases.png — a 128 × 64 strip of all eight — ships a file the current game never reads, and so does a pack that puts sun.png directly in environment/. Both are the shape most older packs and tutorials still use.
Rain and snow are tall, not square
Both are 64 × 256 — four times taller than wide. That is because they are a vertical streak tiled down the screen, not a particle sprite. Painting them square gets a stretched smear, and it is the most common size mistake.
The glint is two files with different jobs
The enchantment shimmer is not one texture:
misc/enchanted_glint_item.png— the sheen on itemsmisc/enchanted_glint_armor.png— the sheen on worn armour
Recolour one and the other keeps vanilla's purple, which reads as a bug in your own pack. If you are changing the glint, change both or neither.
Fonts are a JSON plus a sheet
Font work touches two files:
font/include/default.json— the provider list that says which sheet supplies which characters (font/default.jsononly points at it)textures/font/ascii.png— the sheet itself
Swapping only the PNG keeps vanilla's character mapping. That is fine as long as you draw on vanilla's 16 × 16 grid; move a glyph and it lands in the wrong slot unless the JSON changes too.
The general rule
A recolour pack is a path-for-path override: put a file at the same path vanilla uses and yours wins. That is why the paths above matter more than the artwork — a beautiful texture at textures/enviroment/sun.png loads nothing at all, and the game will not tell you why.