Cellular Automata rules lexicon 

Family: User DLLs 
Type: any, in range 1 neighborhood
"User DLLs" game allows MCell users to program rules otherwise impossible to specify in the program. External DLLs can be programmed using any language and compiler producing 32bit Windows standard DLL files. For detailed instructions of programming user DLLs refer to the "Programming user rules" page.
Name  Character  Description 
Aurora  Chaotic  A onedimensional version of the Rug rule: every cell's new state is taken
to be one greater than the neighborhood average of Left, Me, and Right. When a color value
reaches 16, it is rounded back down to 0. The effect produced is like globby paint running
down the screen, though really you are seeing "onedimensional gliders" moving
back and forth and interacting. "I called the rule Aurora because when I visited Norman Packard's office at the Institute for Advanced Study in 1985, he showed me a smoother (eight visible neighbor bits and 255 colors) version of this rule and remarked that it looked like the northern lights."  RR A rule by Rudy Rucker. 
Digital Inkblots More pictures: 2, 3, 4, 5 
Exploding  An interesting version of the Rug rule with 9cells
neighbourhood and increment of 3. Most of the patterns will go through stages of
relatively small changes for a while and then suddenly hit a chaotic stage that usually
spreads out destroying the previous stable state and creating a new stable (but more
complicated) phase. Best palettes seem to be shaded bands of colors, i.e. black=>white=>black=>white or black=>anycolor=>black=>anycolor etc. Shaded palettes without the black fadeout bands do not give as nice effects. A rule by Jason Rampe. 
DLA  Chaotic  DLA (Diffusion Limited Aggregation) in Margolus neighborhood. A rule by Brian Behlendorf, November 1999. 
DNA  Expanding  Many automata can reproduce patterns, but such behavior is a simple
mathematical property of the rules, and is not based on the starting pattern. In this
automata, the correct starting pattern is essential, otherwise nothing interesting
happens. True, the rules are VERY convenient for this pattern, but the rules themselves do
not make the reproduction occur. It is the rules acting on this special pattern which
enables reproduction (just like our own universe!) Like real organisms, this pattern contains "DNA" which directs the reproduction. The "DNA" is processed in two ways, by replicating it and by transcribing it. This is necessary for "true" reproduction. Like bacteria, the reproduction doesn't simply create another copy of the starting pattern. It creates two identical copies of itself, thus both the parent and the child can continue to make new copies of themselves. This automata was designed by Christopher G. Langton at the University of Michigan, and is described in his article "SelfReproduction in Cellular Automata", published in the book "Cellular Automata" in 1984. 
GreenHast  Gliding  The original GreenHast rule seems to die out very quickly. MCell's
implementation allows patterns going out of the board to bounce back. I noticed that
simple starting patterns reappear after some thousand cycles. Is it a general rule? Will
every pattern reappear giving the rule sufficient running time? It's hard to believe it,
especially if the pattern enters the chaotic phase. GreenbergHastings rule, slightly modified by Mirek Wojtowicz. 
Hodge  Exploding  A version of the "Hodgepodge machine", the classic CA rule by
Martin Gerhardt and Heike Schuster of the University of Bielefeld in West Germany. Hodge
is a lovely rule which converges very rapidly. After about 200500 cycles it starts
producing spirals like the Zhabotinsky reaction. Try also running the rule from
symmetrical patterns. The Hodge rule is formulated in terms of two constants g and n:
A rule by Martin Gerhardt and Heike Schuster. 
ModulusM4  Exploding  Add up the Moore 9 neighbors and return the sum mod 4. A rule by Dave Hiebeler 
ModulusMS9  Exploding  This rule sets the new state of each cell to the modulus sum, base 9 of
its immediate 8 neighbors. A rule by Alastair Couper. 
ModulusMT9  Exploding  This rule sets the new state of each cell to the modulus sum, base 9 of
its immediate 8 neighbors plus itself. A rule by Alastair Couper. 
ModulusN2  Exploding  Add up the von Neumann 5 neighbors and return the sum mod 2. A rule by Dave Hiebeler. 
RandomWalk  Chaotic  RandomWalk Cellular Automaton in Margolus neighborhood. All
cells move randomly on the grid. A rule by Brian Behlendorf, November 1999. 
Rug  Exploding  Rug rules are averaging rules using the full range of 256 possible states.
To update itself in a Rug rule, every cell takes four steps. 1) Every cell calculates the
sum of its eight nearest neighbours' states. 2) Every cell calculates the average
neighbour state by dividing the sum by eight and throwing out any remainder. 3) Every cell
computes its new state by adding an Increment (usually the increment is 1) to the average
neighbour state. 4) As a final step, new state is taken modulo 256. In general the Rug rules will look better when the wrap is turned off. The existence of a fixed zero boundary gives the rule some information input to react to. A rule by Rudy Rucker. 
Triad  Chaotic  This rule is a competition of two independent Brian's Brain systems, one blue and the other
red. At places where both families of cells clash, yellow sparks come in sight. A rule by Lionel Bonnetier. 
Venus  Stable  "I call it Venus because it produces a pattern that looks like what
you might see peering out through hanging mosses at floating mats of vegetation in a
swampy sea. When I was a child this is what sciencefiction writers thought the surface of
the planet Venus would be like."  RR A rule by Rudy Rucker: 
Weighted Generations  Any  WeightedGenerations DLL is a configurable user DLL that
implements a Weighted Generations family. It's a natural extension of the Generations
family. The extension simply permits any state to contribute to the neighbor
count using weights associated with each state. If a weight is n, and the
corresponding state occurs m times in a cells neighborhood then the
neighbor count is incremented by n*m. If a state's weight is 0, then that
state does not contribute to the neighbor count. Position weights identical to
those used in the Weighted Life family are also
supported. 
Webmaster: Mirek Wójtowicz info@mirekw.com, mirwoj@life.pl http://www.mirekw.com 

Last update: 15 Sep 2001