Skip to content

[WIP] Feature Parity Additions - #5

Draft
bluecoconut wants to merge 1 commit into
Infatoshi:masterfrom
bluecoconut:master
Draft

[WIP] Feature Parity Additions#5
bluecoconut wants to merge 1 commit into
Infatoshi:masterfrom
bluecoconut:master

Conversation

@bluecoconut

Copy link
Copy Markdown

I tasked Codex with pushing Netherite toward Minecraft Java 1.11.2 feature parity. It has been working continuously for roughly six days, with periodic review and performance checks.

Key things I wanted to call out: I pushed it for full parity, because I felt like why not, seemed like a fun exercise, and would be nice for netherite to match, and if any feature critically hits performance, can always toggle it later rather than just skip.

The main thing I focused on early was adding more testing infrastructure, specifically the ability to load java clients from save-states and check world tick progression. This let me simulate and rapidly test things like redstone, blocks falling physics, etc. Additionally, I ran a highly parallel client test suite (32 clients) to rapidly check all the tests and regressions for all simulations. Keeping the most important thing the actual bit-level accurate parity and also the performance considerations (many times it fell below, and then took time to re-implement to get back the performance).

(below is codex's summary)

This is still a WIP. It does not claim complete Minecraft parity or completely general redstone. The major change is that many previously cut systems now have working, bounded implementations
backed by real-Java oracle fixtures, exact world-state comparisons, targeted negative controls, regression gates, and performance floors.

Main checklist

Verification infrastructure

  • Restructure the repository into the java, magma, blaze, and verify product trees.
  • Add isolated Java oracle clients with independent display, port, run directory, and save directory.
  • Add an on-demand 32-client oracle pool with health checks, safe recycling, and a 350 GiB cgroup ceiling.
  • Add exact N-client scaling benchmarks. The 32-client result reached 53.68 cases/minute and passed 64/64 cases.
  • Add exact client-step execution so every input advances Java and Magma by the requested number of ticks.
  • Add shared save-state capsules for represented player, inventory, blocks, entities, dimension, weather/time, and RNG state.
  • Add strict pre/post raw block and light-volume comparison with non-vacuous negative controls.
  • Expand runtime observations to expose health, air, fire, XP, effects, combat timers, entities, RNG state, and scheduled work.
  • Add pixel-difference classification, clustering, probing, zooming, and canonical tape replay.
  • Add quick/full regression sweeps and frozen CPU, CUDA simulation, and 1080p rendering performance floors.

Gameplay and world simulation

  • Add core survival coverage for drowning, fire, extinguishing, XP, combat, death, hunger, regeneration, and potion duration.

  • Greatly expand exact player physics and collision shapes, including stairs, fences, doors, panes, ladders, slabs, pistons, chests, cauldrons, hoppers, beds, cakes, cactus, and other non-full cubes.

  • Add broad world-tick behavior for fluids, fire, falling blocks, crops, support loss, random ticks, light updates, and explosions.

  • Add a live Blaze attack cycle with exact aim RNG, fireballs, melee, burning state, collisions, and End dragon/crystal candidates.

  • Add redstone scheduling, neighbor notification, power queries, scheduled callbacks, and represented pending-work persistence.

  • Add working dust, torches, levers, buttons, pressure plates, lamps, tripwire, daylight detectors, and support-loss behavior.

  • Add repeater/comparator timing and direction, comparator overrides, trapped-chest output, and complete six-facing observer pulses.

  • Add substantial six-facing normal/sticky piston behavior: 12-block traversal, slime structures, extension/retraction, short pulses, repowering, moving tiles, block reactions, drops, and entity pushing.

  • Add hoppers, droppers, twelve dispenser behavior classes, straight/sloped rails, powered/detector/activator rails, and several minecart types.

  • Add TNT ignition, chains, explosions, exposure/armor calculations, block destruction, entity response, End crystals, and bed explosions.

  • Add live simple dungeons and normal/Mesa mineshafts with structure geometry, loot seeds, rails, webs, cave-spider spawners, and chest minecarts.

  • Add substantial weather behavior: rain/thunder state, precipitation, wet extinguishing, snow/ice/cauldron callbacks, lightning, rendering, and mob conversion.

  • Add enchanting-table offers, bookshelf scans, seeded costs, lapis/XP consumption, enchant application, and a playable table UI.

  • Add live brewing stands, recipes, fuel/timing, GUI, drinkable/splash/lingering potions, clouds, and represented potion effects.

  • Add sheep, cow, pig, and chicken feeding, breeding, birth, growth, drops, shearing/milking, sheep genetics, and chicken eggs.

  • Add saddled-pig riding, carrot-stick boost, collision/media behavior, vehicle packets, corrections, dismounting, and death/drop ordering.

  • Add village generation, houses/farms/roads, resident spawning, villager models, initial trade generation, trade execution, and limited villager persistence.

  • Add desert pyramids, jungle temples, and swamp huts with traps, loot seeds, dispensers, and witch-site state.

  • Add outer End terrain, islands, chorus population, gateways, End cities, ships, treasure, elytra frames, and gateway travel.

  • Add elytra acquisition, rocket recipes, flight boosting, rocket explosions/damage/durability, and firework audio.

  • Add fishing cast/bobber/reel behavior, bite timing, weather/luck/lure modifiers, loot tables, XP/items, collisions, and saved hook state.

  • Add bounded OpenAL playback, jukebox streaming, fireworks, block break/place/mining sounds, and 112 owned sound events with 307 OGG variants.

  • Add renderer work including visibility-graph occlusion, section/frustum/backface culling, GPU compaction, Hi-Z rejection, particles, entities, and device-resident layers.

Still open before “full parity”

  • Finish fully general redstone notification/scheduling edges, complex slime machines, automation edges, minecart curves/collisions, and remaining entity interactions.
  • Finish monument, mansion, igloo, guardian, illager, witch, shulker, pet, and broader mob-AI lifecycles.
  • Finish arbitrary save/load and NBT persistence across every implemented system and chunk-load ordering.
  • Finish remaining audio emitters, ambience/music/options, particles, custom-NBT visuals, and exact audio-output comparison.
  • Close remaining pixel differences and complete a clean human spawn-to-End playthrough with no unexplained divergence.

Current evidence

  • The promoted Java-vs-Magma composite matrix covers hundreds of exact behavior and raw-world outcomes. The project board currently records 676 promoted composite outcomes, with diagnostics explicitly separated from strict passes.

  • Canonical 3,617-tick physics replay completes without a physics divergence.

  • Java, native CPU, and CUDA have focused equality gates for shared simulation paths.

  • Recent clean performance evidence remains above the frozen floors, around 4.8k scalar steps/s, 2.93M batched environment ticks/s, and 30.7 CUDA-rendered 1080p fps.

  • The latest pushed audio slice passes the exhaustive 235-block Java oracle, the full native aggregate, the CPU performance guard, and the quick repository sweep.

This PR is intentionally marked WIP because many major systems are now useful and testable, but global behavioral and pixel equivalence is not yet complete.

@bluecoconut
bluecoconut marked this pull request as draft August 8, 2026 00:40
@Infatoshi

Copy link
Copy Markdown
Owner

thank you but i will not be reviewing this by hand. got some agents going at it. i see keywords like "sound" which are not supposed to be in this. we care about pixel matching not sound tho. im thinking if this is worth adding or not as its not relevant to the end goal of killing the dragon. could add it in the magma version and just add support in the gpu sim. curious to hear your thoughts on this!

@bluecoconut
bluecoconut force-pushed the master branch 2 times, most recently from 54ac32a to 6b53fc2 Compare August 8, 2026 02:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants