Your cart is empty
Looks like the spiders padded through here. Pick a plugin and it will show up here. Continue shoppingFind missing textures, broken models, bad JSON and wrong pack_format before your players see purple and black squares.
Checks pack.mcmeta, JSON, models and textures, 1.21.4+ item definitions, blockstates, fonts, sounds and paths against vanilla 26.3.
A list of every problem, with the fix
The Resource Pack Validator checks a Minecraft Java resource pack the way the game loads it and lists every problem with the file and the fix. Use it to find the cause of purple and black missing textures before your players do.
| Area | Checks |
|---|---|
pack.mcmeta |
Present at the root, valid JSON, a pack section with pack_format (or min_format/max_format), a description, overlay folders that exist, and which Minecraft releases the format matches. |
| Models | Parents exist in the pack or vanilla, every texture id resolves to a PNG, faces only use #variables defined somewhere in the parent chain, flat items have a layer0, and overrides use known predicates, point to existing models and are sorted by custom_model_data. |
| Item definitions (1.21.4+) | Valid model types and properties, required fields, every referenced model exists, custom_model_data selects compare strings, and the file name matches a real item. |
| Blockstates | Every variant and multipart model exists, and the file is named after a real block. |
| Textures | Real PNG files, sensible sizes, and animated textures (.png.mcmeta) that divide into equal frames with valid frame indexes. |
| Fonts | Bitmap images exist, chars rows are the same length, the image splits into an even glyph grid, ascent isn't higher than height, and TTF, unihex and reference providers point to real files. |
| Sounds |
sounds.json entries point to .ogg files or existing events; non-Ogg audio files are flagged. |
| Paths and structure | Lowercase-only paths and namespaces, no wrapper folder, no files where Minecraft never looks, and no __MACOSX or .DS_Store junk. |
"layer0": "mypack:item/ruby" means the file must be at assets/mypack/textures/item/ruby.png. Don't include textures/ or .png in the id.Ruby.png and ruby sword.png are invalid resource locations, so Minecraft skips them.#side needs "side" in the model's textures or in a parent's..png.mcmeta.pack.mcmeta at all.Since 1.21.4 Minecraft ignores model overrides and reads item definitions from assets/<namespace>/items/. If the validator says your overrides are ignored, run the pack through the CustomModelData converter, then validate again. Combining several plugin packs? Use the Resource Pack Merger first.
When the errors are gone, shrink the download with the Resource Pack Optimizer.
That checkerboard is Minecraft's missing texture. It appears when a model points to a texture file that doesn't exist, a texture variable like #side isn't defined, the PNG is corrupt or not really a PNG, or an animated texture's size doesn't split into equal frames. The validator flags each of these with the file and the fix.
No. The validator runs entirely in your browser. The ZIP is read on your own computer and nothing is sent to our servers, so it's safe for paid or unreleased packs.
References are checked against the vanilla 26.3 asset list, so models and textures you use from vanilla count as present. The pack_format in pack.mcmeta is matched against every release since 1.6.1 to tell you which versions your pack targets.
Yes. From 1.21.4, Minecraft ignores model overrides and reads item definitions from assets/<namespace>/items/ instead. If your pack targets 1.21.4+ and still relies on overrides, the validator reports it and links the CustomModelData converter.
Minecraft only accepts lowercase letters, digits, underscores, dots, dashes and slashes in namespaces and file paths. A file like textures/item/Ruby Sword.png is skipped entirely, so anything that references it shows the missing texture.
No errors means none of the problems the validator knows about were found. It can't see plugin configs, server settings or shaders, and it checks vanilla parents by name only. Always test the pack in game on the version your players use.
No. It checks Java Edition resource packs. To bring custom Java items to Bedrock, use the Java to Bedrock converter.
Your cart is empty
Looks like the spiders padded through here. Pick a plugin and it will show up here. Continue shopping