Here's what I built — a proper **tick-based voxel simulation engine**: **Architecture:** - **ChunkData class** — 16x16x64 chunks storing blocks, sky light, and block light arrays with height maps - **Fixed tick loop** — 20 TPS (50ms) running independently from the render loop. Handles fluid simulation, random ticks (grass spread/decay), scheduled block updates - **3D Simplex Noise** — Full 3D noise implementation for cave generation via density subtraction (cheese caves) **Systems implemented:** 1. **World Gen** — Continent-scale noise (continentalness + erosion + ridges), 4 biomes (plains/forest/desert/snow/savanna), ore veins (coal/iron), cave networks, trees 2. **BFS Lighting Engine** — Sky light (propagated column-wise) + block light (BFS flood fill, 0-15 levels). Light-emitting blocks: Glowstone (14), Torch (13). Water attenuates light by 3 per block 3. **Ambient Occlusion** — Per-vertex AO with proper quad flipping to avoid diagonal artifacts 4. **Fluid Simulation** — Water spreads down first, then sideways. Tick-scheduled with delay 5. **Random Ticks** — Grass spreads to nearby dirt, dies under solid blocks (like Minecraft) 6. **14 block types** — Including ores, torches, glowstone, planks 7. **Water swimming physics** — Reduced gravity/speed in water, float with jump 8. **Light-aware rendering** — Vertex colors modulated by max(skyLight, blockLight) **Next Ideas:** 1. **Crafting System** — Add an inventory grid and 2x2 crafting with recipes (wood→planks→sticks→tools) 2. **Mob AI** — Spawn passive animals (sheep, cows) with goal-based wandering and hostile zombies at night using the day/night cycle **Ready to level up your game? Pick one and let's build it!**