Energy is everything.
Organisms seek food, pay for movement and grow old. Larger organisms can eat smaller ones. Greener squares have more energy relative to their reproduction threshold.
AN ARTIFICIAL LIFE PLAYGROUND
Mathias’s Python simulation, reimplemented in JavaScript. No two lives quite alike.
WHAT YOU’RE WATCHING
Organisms seek food, pay for movement and grow old. Larger organisms can eat smaller ones. Greener squares have more energy relative to their reproduction threshold.
Enough energy triggers reproduction. Offspring inherit size, movement, reproduction and bomb traits—with small variation and a 5% chance per numeric trait of a larger mutation.
Blue bombs provide propulsion. Red bombs push and stun neighbours. Both cost energy; they don’t directly subtract health. If everyone dies, a founder is reseeded from an old survivor or a fresh genome.
Based on Mathias Karlsen’s 2022 Python/Kivy source. The starting 8 organisms, 90 food, energy equations, inheritance rules, predation condition, food propagation and bomb mechanics follow that version. This is a toy simulation, not a biological model.
Broken attack scheduling, missing-target handling and survivor reseeding are repaired. Timing uses fixed 1/60-second steps, with consistent centre coordinates. Organisms are not bounced or wrapped at the original world boundary. The browser view includes its surrounding food margin; drag to explore farther.
For browser safety: at most 240 living organisms, 1,501 food particles and 1,200 simultaneous bombs; extreme mutated values and zero timers are bounded. A full population defers reproduction. Time pauses in a hidden tab and slows if your device cannot keep up—it does not skip generations. No simulation or seed is saved or sent to a server.