"Zero-player game" is a work that combines the nostalgia of 8bit games with the complexity of tissues development. Its name speaks to the idea that complexity can emerge from simple things and rules.
It presents a new kind of cellular automata with increasing resolution.
One night I was reading a book "The Algorithmic Beauty of Plants" and realized that cellular automata are a special case of context-dependent L-systems! And for two years I tried and couldn't figure out how to make generative grammars two-dimensional.
I was so inspired that the next morning I wrote a prototype.
How it works
A cellular automaton needs rules by which cells change colors!
We only have two colors: ■ and □. To find a new color of a cell, we see the color of the cell itself and its four neighbors. There are 32 possible combinations:
Each of these combinations is matched with a color, in which we repaint the central cell: that will be our rules. For example, these are:
The rest is easy. We take a initial grid of 4×4 cells and randomly fill it with □ and ■.
Then for each cell we find a new color according to rules. Pay attention to how the central cell of the shaded area used the matching rule to find out its new color.
Finally, we increase the resolution of the grid by dividing each cell into four..
Repeat this procedure a few times. You should get something like this:
Then you can make up coloring rules, combine different rules, switch the rules halfway through, overlay the picture on its previous less detaled iterations, and have all the fun you want!