Cellular automata toys in LÖVE2D
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
mat ess c5a6d894db Update license 4 weeks ago
ants Color tweaks 3 months ago
life Color tweaks 3 months ago
nix working ants!! 3 months ago
wireworld Color tweaks 3 months ago
.envrc Initial commit 3 months ago
.gitignore working ants!! 3 months ago
LICENSE.txt Update license 4 weeks ago
README.md Add gifs 3 months ago
ant.gif Add gifs 3 months ago
colorbrewer.lua Add life 3 months ago
flake.lock Initial commit 3 months ago
flake.nix Spawn ants with mouse, FPS counter 3 months ago
life.gif Add gifs 3 months ago
util.lua Add wireworld! 3 months ago
wireworld.gif Add gifs 3 months ago

README.md

cellular automata toys in löve2d

toys

ants

ants

langton's ant, heavily inspired by Andrew Healey's blog post and code.

supports multiple colors by passing a custom set of rules, see wikipedia.

click on the screen to spawn new ants.

life

life

conway's game of life. supports other life-like cellular automata rules, see wikipedia

left click or click and drag to flip cells on, and right click to spawn a glider.

wireworld

wireworld

wireworld.

left click to toggle conductors (wires) on and off. right click to spawn an electron head in a conductor. spacebar to toggle play/pause.

colorbrewer

this repo includes a lua interface to the lovely and accessible ColorBrewer2 colorschemes based on the research of Dr. Cynthia Brewer, based on the original ColorBrewer code and the implementation in Chroma.js.

running the toys

if you have löve installed on your system, you can just run the toys by name:

love ants
# run with a cool square pattern
love ants LRRRRRLLR
# other options
love ants <rule> <grid-unit-width-px> <simulation-steps-per-frame> 

love life
# run with HighLife rules
love life B36/S23
# other options
love life <rule> <grid-unit-width-px> <simulation-steps-per-frame>

love wireworld

if you have nix, you can use the provided flake.nix to get a working environment for running the games, as well as support for hot reloading if you want to hack on them.

nix develop
love ...