Here's the plan for the simulation: - **Volcano**: a dark basalt cone drawn as a filled polygon with a crater notch, stratified shading, and an inner glowing crater mouth. Ground plane and gradient sky behind it. - **Pressure system**: pressure climbs steadily toward 100%; when full, an eruption fires lava bombs + ash burst, then pressure drops and slowly rebuilds for the next cycle. - **Lava physics**: particles get varied velocity from the crater, follow gravity with air drag, collide against the slope (a heightfield function of x), bounce/roll downhill proportional to local slope, cool through a color ramp (white-hot → yellow → orange → red → dark rock → fade), and are removed once cold and nearly still. - **Ash**: soft smoke puffs spawning at the crater, buoyant upward drift plus horizontal wind, expanding radius, fading alpha. - **Sliders**: eruption power, wind (negative = left, positive = right), and particle budget per eruption — all live. - **HUD**: live active-particle count and FPS via frame timing; particle-cap logic keeps the frame budget smooth well above 1000 particles. ```html