For a long time I’ve had plans to create a game engine entirely based on cellular automata which is universally applicable to different game genres. Somehow I never got round to it, until now.
Cellular automata (aka cellular spaces or CA) are found in various games. For example, games like the powder game and sand physics games can be built using CA. It can also be used for simple fire and water physics, as is for example found in Minecraft.
There have been several attempts at CA game engines that I know of. There is Rocks ‘n Diamonds, which is a sort of ultimate Boulderdash clone where you can define your own rules, Hacktile, which is probably the closest to what I want, but is very old and seems to have been abandoned, and the recent Puzzlescript, which looks like a promising project, but not targeted toward action games.
I created my own CA engine called CellSpace, which is just now in a state that you can actually define a complete game with it. It still has many limitations, but in the spirit of “release early, release often” I released a first version with a tutorial and two example games.

Candy Cane Dash, a Boulderdash-like game with some interesting game mechanics written in CellSpace
As an example of how it works, here’s how you specify falling and rolling boulders, Boulderdash-style:


The 3×3 grids represent 3×3 tile areas on the screen. Left is the pattern that it tries to find on the screen, and right is the pattern it rewrites to when it matches the pattern on the left. Black squares indicate “don’t care” values, grey ones indicate an “empty space” tile, and the boulders represent “boulder” tiles.
At this stage, you can define a game using a textual language called CellScript. I’m still experimenting with the engine’s expressive power vs ease of use, but I already found the current version enables easy creation of various interesting game mechanics. Ideal for whipping up a prototype of an original puzzle/action game.
Check out the CellSpace engine, including two examples and a tutorial.
OK… now I have this little idea involving fish and CA style water physics, so let’s see if I still have time to create a shark game for MiniLD #46 with this engine!