rustyWingsa tiny evolving world
tick 0
Seeds 0 Sparrows 0 Hawks 0
Sparrows eat seeds. Hawks eat sparrows. Nobody is programmed to do anything. Every bird's brain is inherited, mutated, and kept only if it worked. Click any bird to meet it.
click a bird · drag to pan · wheel or pinch to zoom · double-click to reset
Drop a .world file to open it, or a saved genome to release that bird

What you are looking at

A square world that wraps at the edges. Seeds grow in drifting patches. Sparrows eat seeds; hawks eat sparrows. Every bird has an energy budget: moving, seeing and simply being alive all cost energy, a meal restores some, and a bird that runs dry dies. A bird with plenty of energy has a chick, which inherits its parent's body plan and brain with small mutations.

Nobody is told to chase or flee. A bird's retina feeds a tiny neural network that decides how hard to turn and accelerate. Brains that ate got to reproduce; brains that did not, did not. What you see is what survived.

Keys

Spacepause / play .step one tick [ ]slower / faster Ffollow the selected bird Rselect a random bird Vshow every bird's field of view Tshow the selected bird's trail Sscatter seeds Marm a meteor, then click 0reset the view Escdeselect / cancel

Reproducible by design

The seed in the header and the settings you choose define the world completely. The same link replays the same world, tick for tick, on any machine, and the checksum in the status bar matches what the native command-line build prints for the same seed and tick.

Save world writes this exact moment to a file. Open it here later, drop it on the map, or continue it headless with rustywings run --resume; rustywings verify --resume … --ticks 0 prints the checksum you saw when you saved. Save genome writes one bird's body plan and brain; drop that file on another world to release the bird there.

Built in Rust, compiled to WebAssembly, simulated on a Web Worker and drawn with WebGL2. Inspired by Patryk Wychowaniec's Learning to Fly series; the simulation, the ecosystem and this frontend are original work. Source on GitHub.