I always liked the idea of color life. I like that this did one game for each bit. That's an interesting take on it and the results look nice.
I made a quick color life a few years ago. I wanted the rules to be simple like life itself, so this is what I came up with:
* Each cell has a color attribute. When generating the initial board, colors are randomly assigned.
* When a new cell is created it inherits the most prevalent color of the surrounding cells, or if there is a tie, any one of the the top colors may be used.
(Randomly assigned colors aren't filtered, so it is possible for dark cells to exist that are the same color as the background.)
Sure. This was based on a life program I wrote in JavaScript a long time ago that used DIVs, because canvas didn't yet exist at the time. The color version was made a few years later by taking the nLife code, switching it to use canvas, and adding the color rules. I just tarred it all up and left in the nLife license, which I think is BSD w/ advertising clause. You can find the source here:
I'm fairly certain from watching it that there is a bug in the selection of the most dominant color, since sometimes a color that died off manages to come back. Anyway, if you make it do anything interesting, please share. I'd definitely like to see.
If you watch it for a while the patterns in each layer stablize and you end up with a stable overall pattern. It's often very easy to discern blinkers, beacons, gliders and the like.
Exactly - this is 24 separate 2 dimensional Games of Life overlaid on each other for visual effect.
To be 24 dimensional, the rules would have to be quite different: at each turn of the game, instead of just considering each cell's 8 neighboring cells on a 2d grid, there'd be 11 additional 2d grids (perhaps represented by different colors), and you'd evaluate the 8 neighboring cells on each of the 11 other 2d grids, iteratively, once for each of the 12 grids. Likely this would not run particularly quickly in a browser (or anything else) for any interestingly large field.
This is very cool. I am working on an implementation of Conway's Game of Life for the Launchpad S which basically has 8-bit color. So far I only have the basic game of life working starting from pre-defined patterns. I want to allow the user to input the starting configuration using the device itself and then trigger samples based on the evolving patterns. But now I have the next goal after that -- implement an 8-bit version of this.
The code is in Clojure (it uses Overtone to talk to the Launchpad S) and is here if anyone is interested:
For extra beauty, turn on the pencil (it can stay the default color, black) and click-drag it across the canvas any which way while there are colors interacting.
It's fascinating to watch the darker colors quickly give way to light ones.
Awesome. This is the best game of life I've seen on the web. It has every feature you could ever want for someone who enjoys creating patterns incrementally.
I think a better experience is possible with a start button over a static background to provide the viewer with an idea about what they're about to get into.
Well, I'm not an expert, but the w3c Accesibility guidelines say:
"2.3.1 Three Flashes or Below Threshold: Web pages do not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds."[0]
And also:
"Individuals who have photosensitive seizure disorders can have a seizure triggered by content that flashes at certain frequencies for more than a few flashes. People are even more sensitive to red flashing than to other colors, so a special test is provided for saturated red flashing."[1]
It is clear that this are only guidelines, not laws, but in this particular case I think it is appropriate to make some kind of warning for this users.
I wonder if it would be feasible to build an accessibility mode into web browsers that suppressed (non-plugin) animations that could trigger photosensitive seizures.
Did a morning thing where I opened up a bunch of HN links in different tabs. Halfway through, my browser started seizing up, operating system becoming unresponsive. Spent 15 minutes diagnosing, checking about:memory and then realized - wait a minute, what about the 24 bit RGB Game of Life tab?
I made a quick color life a few years ago. I wanted the rules to be simple like life itself, so this is what I came up with:
* Each cell has a color attribute. When generating the initial board, colors are randomly assigned.
* When a new cell is created it inherits the most prevalent color of the surrounding cells, or if there is a tie, any one of the the top colors may be used.
(Randomly assigned colors aren't filtered, so it is possible for dark cells to exist that are the same color as the background.)
Here is the result: http://www.node99.net/content/color_life/index.html