26.3.3.1.1 — 24 September 2026: the right copy of an overlaid file
A pack can carry a second copy of a file in an overlay, which the game loads instead of the base copy when the overlay covers the version being played. MCDDD was checking whichever copy it happened to read last, so the same pack could answer differently as a .zip than as a folder, and the copy it checked was often one the game never loads.
It now works out which overlays your declared version actually turns on, and checks the copy the game would load — base first, then each active overlay in the order the pack declares them.
- Measured on 772 real packs: the 760 without overlays are affected in no way at all, and no pack lost or gained a single resource.
- Three packs previously gave different answers zipped than unpacked. None do now.
- Errors fall where copies the game does not load had been checked in error — one pack went from 39 errors to 13.
- If a pack carries overlays your version does not turn on, the report now says so and counts the files, rather than quietly checking nothing. Those copies are not yet checked at their own version.
26.3.3.1.0 — 21 September 2026: fewer wrong answers, and it says when it did not check
Every change below was measured on a 70-pack collection before it shipped. The headline is not new checks: it is that several ways the tool could give a wrong answer, or a clean answer for a run that did not finish, are gone.
It no longer passes things it did not check
- A command bundle from the wrong Minecraft version is refused instead of used. Before, a 26.2 bundle installed as 26.3 checked every 26.3 pack against the wrong commands and could still earn a pass badge.
- A damaged file inside a pack is reported instead of crashing the tool, and the run is marked incomplete.
- A folder that is both a Mythic server pack and a resource pack now says its resource half was not checked, instead of reporting complete.
- Files stored deep enough to pass Windows' 260-character path limit are now read. On one pack this uncovered nine real errors that the failure had been hiding.
It no longer reports things that are not wrong
-
A pack that declares a single format the tool's table does not list
—
pack_format: 107is the ordinary way to write 26.2 — is judged at that version, not at the newest one. - A field a version removed now says so, instead of asking whether you misspelled it. Across the collection forced to 26.3, 61 findings moved from “unknown field, did you mean…” to “removed in 26.3”, and the total did not change by one.
- A tag entry from a mod or another pack is no longer an error. A required one is still a warning, because Minecraft drops the whole tag when a required entry is missing.
New checks
-
$macro lines are now checked against the command grammar. The parts in$(…)are accepted as written and everything else is judged. On the collection: 978 macro lines, zero false errors, and 9 in 10 deliberately broken lines caught. - MCD330: a jigsaw that names a template pool which does not exist. The structure loads cleanly and places nothing there. MCD331 adds one line per pack for templates nothing uses.
-
MCD509:
HandItems,ArmorItemsand the drop-chance keys that 1.21.5 replaced. The game ignores them silently, and the mob spawns without what it was given. -
MCD611: an empty id, such as
"type": "", where the game looks one up.
26.3.2.6.1 — 16 September 2026
-
Minecraft 26.3 added two commands,
computeandposteffect. They were already recognised when command grammar is loaded, but with it unticked they were reported as unknown commands. They are now known either way. - Checked against the packs other projects built for 26.3 — Phantom Keep (data and resource pack), Darkreach Citadel, Mazes and fast happy ghasts. Every one reports 0 errors and 0 warnings with every checking layer running.
26.3.2.6.0 — 15 September 2026: Minecraft 26.3
26.3 is now the default target (data pack format 121, resource pack format 97.1). A pack is still judged at the version it declares, so a 26.2 pack is checked as 26.2.
What 26.3 changed, and what now catches it
-
Loot tables were reshaped.
functionsbecamemodifier,conditionsbecamecondition(several conditions becomeminecraft:all_of), and the id inside each moved fromfunctionorconditiontotype. The old keys are reported as removed. -
Exploration maps flipped. A structure tag is now
written with
#, and a bare id means one structure. The bare form that 26.2 required now parses cleanly and quietly finds nothing, so it is reported (MCD328). A missingdestinationis also reported, because 26.3 requires it (MCD329). -
Two worldgen folders were renamed:
configured_featuretofeatureandconfigured_carvertocarver. References resolve against either name, and a 26.3 pack still using the old folder gets a warning (MCD214). Keeping the old folder in the base pack and the new one in an overlay — how one pack supports both versions — stays silent. -
Removed forms are reported: untyped number providers
like
{"min": 1, "max": 3}now need atype; item modifier and predicate files must be a single object rather than an array; biomespawnersandspawn_costsare gone; and the noise router was rebuilt. -
New registry folders are recognised:
block_transformer,context_float_provider,context_int_provideranddecorated_pot_pattern.
A bug this release fixed
Many packs declare only min_format and
max_format, with no pack_format. MCDDD read only
pack_format, so it judged those packs at its default version
instead of the one they declare. Once the default became 26.3, correct
26.2 packs were shown 26.3 problems they do not have. A pack is now judged
at the newest release inside the range it declares.
On this page
Both the 26.2 and 26.3 command data now ship, so a pack is checked with the data for the version it declares.
26.2.2.5.x — 31 August to 5 September 2026
-
Ids inside commands are checked (MCD507). An invented
block, item, entity, effect or damage type used in a command was
previously accepted. A real example it found:
setblock … minecraft:chain, which no longer exists as a block. -
Fixed a false error on macro lines. A function name
built by a macro, such as
$function ns:spike_$(h), was reported as a missing function. It is now noted as not checkable (MCD327). - Every report names the schema data it used, so a result can always be traced to what produced it.
26.2.2.4.0 — 30 August 2026
-
Worldgen references are checked: a jigsaw
start_pool, a template pool's.nbtpiece, a processor list, a structure set's structure, and features and carvers. A danglingstart_poolused to pass, and only failed once a player reached a chunk that tried to place it. -
Structure tags that list a structure from a companion
pack are reported, with the fix. A missing required entry makes
Minecraft drop the whole tag, so mark cross-pack entries
"required": false.
Not checked yet
A clean report means these were not looked at, not that they are fine.
-
Ids inside selectors, such as
@e[type=…], are not checked. - Values inside item modifiers — item ids, attribute ids, slot and operation names — are not checked, only their structure.
-
Sound ids in
playsound, and block state properties such as[facing=north], are not checked.