3.4 KiB
Minecraft Java 26.2 compatibility
Verified on September 14, 2026. A complete catalog for the target version and a bidirectional converter are implemented, with an explicitly defined fidelity profile. Detailed contracts and commands: CONTENT, interop, SERVER.
Source
Mojang released Java 26.2 on June 16, 2026. The official launcher manifest identified the exact version metadata:
- Server JAR:
823e2250d24b3ddac457a60c92a6a941943fcd6a, 60,894,273 bytes; Java major version 25. - DataVersion extracted from the target version: 4903.
- Reports and the public API confirmed 1,196 blocks, 32,366 states, and 158 entities.
- Every state is compared by canonical string and property set, not just by total count.
scripts/catalog_generate.py verifies the artifact, extracts reports, and measures collisions. Repeating the extraction produced byte-identical compressed catalogs. The JAR remains in an ignored cache; Minecraft source code, textures, models, and sounds are not included in the distribution.
Scope of support
identity, render, collision, and behavior are separate fields. All vanilla states are known; 179 context-dependent states are explicitly marked approximate-context. Other collisions were measured with air neighbors and an empty entity context. This does not promise contextual equivalence in every situation. Visual models use original procedural geometry rather than vanilla assets. Invisible technical blocks intentionally receive no visible geometry.
The 158 entity types have measured dimensions, persistent instances, and original geometry. Full AI, redstone, inventories, terrain generation, and fluid simulation are not implemented. Unknown imported states remain in the registry and appear as a marked placeholder; the stored data does not replace them with air.
Shacraft's numeric runtime BlockId is not a Minecraft state ID. The converter matches canonical strings; identical names in independent WorldStore instances can have different internal numbers.
Verified interchange
Anvil imports one chunk at a time using typed NBT, including dimensions and opaque extra data. An unchanged exact export returns the preserved original after checking its hashes. After edits, exact conservatively refuses to export. best-effort transfers block changes and supported entity properties, invalidates dependent data, and preserves unsupported data with a report and the original source.
Sponge .schem v3 is supported in both directions. Conversion between formats does not promise to translate all biome/block entity semantics: data that is not transferred is archived and identified in the report. Older versions, legacy .schematic, structure .nbt, and complete migration of arbitrary DataVersion values are not claimed as supported.
New, unchanged, and edited exports were read by the official Java 26.2 NbtIo, RegionFile, SerializableChunkData, PrimaryLevelData, WorldGenSettings, and entity reader. Independent nbtlib checks verified Sponge and NBT types. These checks used official codecs without launching the Minecraft game/server or accepting its server startup prompt; no in-game Minecraft playtest is claimed.