A basic example is if two cells are directly next to each other. After one tick, each cell will be moved over to the spot opposite of its neighbor. After this, the two cells remain stationary forever. However, the situation gets much more complex if you add more neighboring cells. If a cell is surrounded by multiple other cells, the rule will try to "simplify" the direction it should be pushed. If the angle of repulsion does not fall on a single empty cell, it will split into two separate cells, which gives it a means of reproduction. If two cells are pushed onto the same spot, they will merge together, decreasing the population.
I had hoped that the merging/splitting would keep the population stable, but unfortunately this is not the case. It appears to be a class 3 automaton, because small patterns quickly inflate into giant circles of static. However, I did find a puffer shoot out, so it can support machines to some extent. The static in itself is interesting too, since it appears to make grid-like patterns. One more interesting thing I noticed is that all but one of the pentominoes quickly decay. Only the famous R pentomino inflates to infinity.
In short, this rule doesn't have many interesting properties, other than the strange rule itself. I mostly made it as a coding exercise, so it is a success in that respect. Perhaps there is some tweak that could control the population in some way, please let me know if you think of any.
EDIT:
After a bit of tweaking, this rule has become a very successful way to generate complicated systems naturally. The main change is the D0 rule, where a cell dies after one tick if it does not move. This, in addition to some changes determining how a cell should split, results in this rule (written by BlinkerSpawn):
Code: Select all
@RULE RepelTrig_D0
@TABLE
n_states:18
neighborhood:Moore
symmetries:none
# Explanations:
# 0: dead cell
# 1: live cell
# 2~9: cell pushed N, NE, E, SE, S, SW, W, NW, respectively
# 10~17: cell pushed N+NE, NE+E, E+SE, SE+S, S+SW, W+NW, respectively
var aux={2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17}
var a0={0,aux}
var a1={0,1,aux}
var a2={a1}
var a3={a1}
var a4={a1}
var a5={a1}
var a6={a1}
var a7={a1}
var a8={a1}
var n={2,10,17}
var ne={3,10,11}
var e={4,11,12}
var se={5,12,13}
var s={6,13,14}
var sw={7,14,15}
var w={8,15,16}
var nw={9,16,17}
a0,s,a2,a3,a4,a5,a6,a7,a8,1
a0,a1,sw,a3,a4,a5,a6,a7,a8,1
a0,a1,a2,w,a4,a5,a6,a7,a8,1
a0,a1,a2,a3,nw,a5,a6,a7,a8,1
a0,a1,a2,a3,a4,n,a6,a7,a8,1
a0,a1,a2,a3,a4,a5,ne,a7,a8,1
a0,a1,a2,a3,a4,a5,a6,e,a8,1
a0,a1,a2,a3,a4,a5,a6,a7,se,1
aux,a1,a2,a3,a4,a5,a6,a7,a8,0
1,0,0,0,0,0,0,0,0,0
1,1,0,0,0,0,0,0,0,6
1,0,1,0,0,0,0,0,0,7
1,1,1,0,0,0,0,0,0,14
1,0,0,1,0,0,0,0,0,8
1,1,0,1,0,0,0,0,0,7
1,0,1,1,0,0,0,0,0,15
1,1,1,1,0,0,0,0,0,7
1,0,0,0,1,0,0,0,0,9
1,1,0,0,1,0,0,0,0,15
1,0,1,0,1,0,0,0,0,8
1,1,1,0,1,0,0,0,0,15
1,0,0,1,1,0,0,0,0,16
1,1,0,1,1,0,0,0,0,15
1,0,1,1,1,0,0,0,0,8
1,1,1,1,1,0,0,0,0,15
1,0,0,0,0,1,0,0,0,2
1,1,0,0,0,1,0,0,0,0
1,0,1,0,0,1,0,0,0,16
1,1,1,0,0,1,0,0,0,7
1,0,0,1,0,1,0,0,0,9
1,1,0,1,0,1,0,0,0,8
1,0,1,1,0,1,0,0,0,16
1,1,1,1,0,1,0,0,0,15
1,0,0,0,1,1,0,0,0,17
1,1,0,0,1,1,0,0,0,9
1,0,1,0,1,1,0,0,0,16
1,1,1,0,1,1,0,0,0,8
1,0,0,1,1,1,0,0,0,9
1,1,0,1,1,1,0,0,0,16
1,0,1,1,1,1,0,0,0,16
1,1,1,1,1,1,0,0,0,8
1,0,0,0,0,0,1,0,0,3
1,1,0,0,0,0,1,0,0,12
1,0,1,0,0,0,1,0,0,0
1,1,1,0,0,0,1,0,0,6
1,0,0,1,0,0,1,0,0,17
1,1,0,1,0,0,1,0,0,7
1,0,1,1,0,0,1,0,0,8
1,1,1,1,0,0,1,0,0,7
1,0,0,0,1,0,1,0,0,2
1,1,0,0,1,0,1,0,0,2
1,0,1,0,1,0,1,0,0,9
1,1,1,0,1,0,1,0,0,15
1,0,0,1,1,0,1,0,0,17
1,1,0,1,1,0,1,0,0,16
1,0,1,1,1,0,1,0,0,16
1,1,1,1,1,0,1,0,0,15
1,0,0,0,0,1,1,0,0,10
1,1,0,0,0,1,1,0,0,3
1,0,1,0,0,1,1,0,0,2
1,1,1,0,0,1,1,0,0,0
1,0,0,1,0,1,1,0,0,17
1,1,0,1,0,1,1,0,0,17
1,0,1,1,0,1,1,0,0,9
1,1,1,1,0,1,1,0,0,8
1,0,0,0,1,1,1,0,0,2
1,1,0,0,1,1,1,0,0,2
1,0,1,0,1,1,1,0,0,17
1,1,1,0,1,1,1,0,0,9
1,0,0,1,1,1,1,0,0,17
1,1,0,1,1,1,1,0,0,17
1,0,1,1,1,1,1,0,0,9
1,1,1,1,1,1,1,0,0,16
1,0,0,0,0,0,0,1,0,4
1,1,0,0,0,0,0,1,0,5
1,0,1,0,0,0,0,1,0,13
1,1,1,0,0,0,0,1,0,13
1,0,0,1,0,0,0,1,0,0
1,1,0,1,0,0,0,1,0,6
1,0,1,1,0,0,0,1,0,7
1,1,1,1,0,0,0,1,0,14
1,0,0,0,1,0,0,1,0,10
1,1,0,0,1,0,0,1,0,5
1,0,1,0,1,0,0,1,0,8
1,1,1,0,1,0,0,1,0,14
1,0,0,1,1,0,0,1,0,9
1,1,0,1,1,0,0,1,0,15
1,0,1,1,1,0,0,1,0,8
1,1,1,1,1,0,0,1,0,15
1,0,0,0,0,1,0,1,0,3
1,1,0,0,0,1,0,1,0,4
1,0,1,0,0,1,0,1,0,3
1,1,1,0,0,1,0,1,0,13
1,0,0,1,0,1,0,1,0,2
1,1,0,1,0,1,0,1,0,0
1,0,1,1,0,1,0,1,0,16
1,1,1,1,0,1,0,1,0,7
1,0,0,0,1,1,0,1,0,10
1,1,0,0,1,1,0,1,0,10
1,0,1,0,1,1,0,1,0,17
1,1,1,0,1,1,0,1,0,8
1,0,0,1,1,1,0,1,0,17
1,1,0,1,1,1,0,1,0,9
1,0,1,1,1,1,0,1,0,16
1,1,1,1,1,1,0,1,0,8
1,0,0,0,0,0,1,1,0,11
1,1,0,0,0,0,1,1,0,12
1,0,1,0,0,0,1,1,0,4
1,1,1,0,0,0,1,1,0,5
1,0,0,1,0,0,1,1,0,3
1,1,0,1,0,0,1,1,0,12
1,0,1,1,0,0,1,1,0,0
1,1,1,1,0,0,1,1,0,6
1,0,0,0,1,0,1,1,0,10
1,1,0,0,1,0,1,1,0,11
1,0,1,0,1,0,1,1,0,10
1,1,1,0,1,0,1,1,0,5
1,0,0,1,1,0,1,1,0,2
1,1,0,1,1,0,1,1,0,2
1,0,1,1,1,0,1,1,0,9
1,1,1,1,1,0,1,1,0,15
1,0,0,0,0,1,1,1,0,3
1,1,0,0,0,1,1,1,0,11
1,0,1,0,0,1,1,1,0,3
1,1,1,0,0,1,1,1,0,4
1,0,0,1,0,1,1,1,0,10
1,1,0,1,0,1,1,1,0,3
1,0,1,1,0,1,1,1,0,2
1,1,1,1,0,1,1,1,0,0
1,0,0,0,1,1,1,1,0,10
1,1,0,0,1,1,1,1,0,10
1,0,1,0,1,1,1,1,0,10
1,1,1,0,1,1,1,1,0,10
1,0,0,1,1,1,1,1,0,2
1,1,0,1,1,1,1,1,0,2
1,0,1,1,1,1,1,1,0,17
1,1,1,1,1,1,1,1,0,9
1,0,0,0,0,0,0,0,1,5
1,1,0,0,0,0,0,0,1,13
1,0,1,0,0,0,0,0,1,6
1,1,1,0,0,0,0,0,1,6
1,0,0,1,0,0,0,0,1,14
1,1,0,1,0,0,0,0,1,14
1,0,1,1,0,0,0,0,1,14
1,1,1,1,0,0,0,0,1,14
1,0,0,0,1,0,0,0,1,0
1,1,0,0,1,0,0,0,1,6
1,0,1,0,1,0,0,0,1,7
1,1,1,0,1,0,0,0,1,14
1,0,0,1,1,0,0,0,1,8
1,1,0,1,1,0,0,0,1,7
1,0,1,1,1,0,0,0,1,15
1,1,1,1,1,0,0,0,1,7
1,0,0,0,0,1,0,0,1,11
1,1,0,0,0,1,0,0,1,5
1,0,1,0,0,1,0,0,1,6
1,1,1,0,0,1,0,0,1,6
1,0,0,1,0,1,0,0,1,9
1,1,0,1,0,1,0,0,1,14
1,0,1,1,0,1,0,0,1,15
1,1,1,1,0,1,0,0,1,14
1,0,0,0,1,1,0,0,1,2
1,1,0,0,1,1,0,0,1,0
1,0,1,0,1,1,0,0,1,16
1,1,1,0,1,1,0,0,1,7
1,0,0,1,1,1,0,0,1,9
1,1,0,1,1,1,0,0,1,8
1,0,1,1,1,1,0,0,1,16
1,1,1,1,1,1,0,0,1,15
1,0,0,0,0,0,1,0,1,4
1,1,0,0,0,0,1,0,1,12
1,0,1,0,0,0,1,0,1,5
1,1,1,0,0,0,1,0,1,13
1,0,0,1,0,0,1,0,1,4
1,1,0,1,0,0,1,0,1,13
1,0,1,1,0,0,1,0,1,14
1,1,1,1,0,0,1,0,1,14
1,0,0,0,1,0,1,0,1,3
1,1,0,0,1,0,1,0,1,12
1,0,1,0,1,0,1,0,1,0
1,1,1,0,1,0,1,0,1,6
1,0,0,1,1,0,1,0,1,17
1,1,0,1,1,0,1,0,1,7
1,0,1,1,1,0,1,0,1,8
1,1,1,1,1,0,1,0,1,7
1,0,0,0,0,1,1,0,1,11
1,1,0,0,0,1,1,0,1,4
1,0,1,0,0,1,1,0,1,11
1,1,1,0,0,1,1,0,1,5
1,0,0,1,0,1,1,0,1,10
1,1,0,1,0,1,1,0,1,4
1,0,1,1,0,1,1,0,1,9
1,1,1,1,0,1,1,0,1,14
1,0,0,0,1,1,1,0,1,10
1,1,0,0,1,1,1,0,1,3
1,0,1,0,1,1,1,0,1,2
1,1,1,0,1,1,1,0,1,0
1,0,0,1,1,1,1,0,1,17
1,1,0,1,1,1,1,0,1,17
1,0,1,1,1,1,1,0,1,9
1,1,1,1,1,1,1,0,1,8
1,0,0,0,0,0,0,1,1,12
1,1,0,0,0,0,0,1,1,5
1,0,1,0,0,0,0,1,1,13
1,1,1,0,0,0,0,1,1,13
1,0,0,1,0,0,0,1,1,5
1,1,0,1,0,0,0,1,1,13
1,0,1,1,0,0,0,1,1,6
1,1,1,1,0,0,0,1,1,6
1,0,0,0,1,0,0,1,1,4
1,1,0,0,1,0,0,1,1,5
1,0,1,0,1,0,0,1,1,13
1,1,1,0,1,0,0,1,1,13
1,0,0,1,1,0,0,1,1,0
1,1,0,1,1,0,0,1,1,6
1,0,1,1,1,0,0,1,1,7
1,1,1,1,1,0,0,1,1,14
1,0,0,0,0,1,0,1,1,11
1,1,0,0,0,1,0,1,1,12
1,0,1,0,0,1,0,1,1,12
1,1,1,0,0,1,0,1,1,13
1,0,0,1,0,1,0,1,1,11
1,1,0,1,0,1,0,1,1,5
1,0,1,1,0,1,0,1,1,6
1,1,1,1,0,1,0,1,1,6
1,0,0,0,1,1,0,1,1,3
1,1,0,0,1,1,0,1,1,4
1,0,1,0,1,1,0,1,1,3
1,1,1,0,1,1,0,1,1,13
1,0,0,1,1,1,0,1,1,2
1,1,0,1,1,1,0,1,1,0
1,0,1,1,1,1,0,1,1,16
1,1,1,1,1,1,0,1,1,7
1,0,0,0,0,0,1,1,1,4
1,1,0,0,0,0,1,1,1,12
1,0,1,0,0,0,1,1,1,12
1,1,1,0,0,0,1,1,1,5
1,0,0,1,0,0,1,1,1,4
1,1,0,1,0,0,1,1,1,12
1,0,1,1,0,0,1,1,1,5
1,1,1,1,0,0,1,1,1,13
1,0,0,0,1,0,1,1,1,11
1,1,0,0,1,0,1,1,1,12
1,0,1,0,1,0,1,1,1,4
1,1,1,0,1,0,1,1,1,5
1,0,0,1,1,0,1,1,1,3
1,1,0,1,1,0,1,1,1,12
1,0,1,1,1,0,1,1,1,0
1,1,1,1,1,0,1,1,1,6
1,0,0,0,0,1,1,1,1,11
1,1,0,0,0,1,1,1,1,4
1,0,1,0,0,1,1,1,1,11
1,1,1,0,0,1,1,1,1,12
1,0,0,1,0,1,1,1,1,11
1,1,0,1,0,1,1,1,1,4
1,0,1,1,0,1,1,1,1,11
1,1,1,1,0,1,1,1,1,5
1,0,0,0,1,1,1,1,1,3
1,1,0,0,1,1,1,1,1,11
1,0,1,0,1,1,1,1,1,3
1,1,1,0,1,1,1,1,1,4
1,0,0,1,1,1,1,1,1,10
1,1,0,1,1,1,1,1,1,3
1,0,1,1,1,1,1,1,1,2
1,1,1,1,1,1,1,1,1,0