I have found a flaw in my rule table for EightPedestriansConversion which prevents converters from having the property I intended for them, of converting compatible basiclife patterns without disrupting them. Here is a new rule without the flaw:
Code: Select all
@RULE EightPedestriansConversionV2
0 dead
1 Basic Life (patterns that stay made only of this are honeylife/conway compatible. Patterns that work in one but not the other will cause conversion.)
2 EightLife (patterns that stay made only of this are eightlife/conway compatible. Patterns that work in one but not the other will create plague.)
3 basic -> eightlife converter (turns basiclife cells near it into eightlife cells.)
4 pedestrian life (patterns that stay made only of this are pedestrianlife/conway compatible. Patterns that work in one but not the other will create plague.)
5 basic -> pedestrian converter (turns basiclife cells near it into pedestrianlife cells.)
6 plague (spreads to and wipes out anything except basiclife or dead cells)
@TABLE
n_states:7
neighborhood:Moore
symmetries:permute
var anya = {0,1,2,3,4,5,6}
var anyb = anya
var anyc = anya
var anyd = anya
var anye = anya
var anyf = anya
var anyg = anya
var anyh = anya
var anyi = anya
var livea = {1,2,4}
var liveb = livea
var livec = livea
var lived = livea
var livee = livea
var livef = livea
var liveg = livea
var liveh = livea
var elivea = {1,2}
var eliveb = elivea
var elivec = elivea
var elived = elivea
var elivee = elivea
var elivef = elivea
var eliveg = elivea
var eliveh = elivea
var plivea = {1,4}
var pliveb = plivea
var plivec = plivea
var plived = plivea
var plivee = plivea
var plivef = plivea
var pliveg = plivea
var pliveh = plivea
var plivei = plivea
var deada = {0,3,5,6}
var deadb = deada
var deadc = deada
var deadd = deada
var deade = deada
var deadf = deada
var deadg = deada
var deadh = deada
var nbla = {2,3,4,5,6} #nbl - not basic life
var nblb = nbla
var nblc = nbla
var nbld = nbla
var nble = nbla
var nblf = nbla
var nblg = nbla
var nblh = nbla
var pia = {2,3,4,5} # pi - plague infectable
var pib = pia
var pic = pia
var pid = pia
var pie = pia
var pif = pia
var pig = pia
var pih = pia
var elifea = {2,3}
var elifeb = elifea
var elifec = elifea
var elifed = elifea
var elifee = elifea
var elifef = elifea
var elifeg = elifea
var elifeh = elifea
var plifea = {4,5}
var plifeb = plifea
var plifec = plifea
var plifed = plifea
var plifee = plifea
var plifef = plifea
var plifeg = plifea
var plifeh = plifea
var plifei = plifea
#conversion initiation
0,elivea,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,3
plivea,pliveb,plivec,plived,plivee,plivef,pliveg,pliveh,plivei,5
#plague creation
elivea,2,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,6
2,elivea,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,6
0,plivea,pliveb,plivec,plived,plivee,plivef,pliveg,pliveh,6
#plague spreading
pia,6,anya,anyb,anyc,anyd,anye,anyf,anyg,6
anya,6,pia,anyb,anyc,anyd,anye,anyf,anyg,6
anya,6,nbla,nblb,nblc,nbld,nble,anyb,anyc,6
#basiclife birth
deada,1,1,1,deadb,deadc,deadd,deade,deadf,1
deada,1,6,livea,liveb,deadb,deadc,deadd,deade,1
6,1,livea,liveb,deada,deadb,deadc,deadd,deade,1
deada,1,3,5,livea,liveb,deadb,deadc,deadd,1
3,1,5,livea,liveb,deadb,deadc,deadd,deade,1
5,1,3,livea,liveb,deadb,deadc,deadd,deade,1
#plague survival
6,2,anya,anyb,anyc,anyd,anye,anyf,anyg,6
6,3,anya,anyb,anyc,anyd,anye,anyf,anyg,6
6,4,anya,anyb,anyc,anyd,anye,anyf,anyg,6
6,5,anya,anyb,anyc,anyd,anye,anyf,anyg,6
6,nbla,nblb,nblc,nbld,nble,anya,anyb,anyc,6
#nonbasic births
3,elivea,livea,liveb,deada,deadb,deadc,deadd,deade,2
5,plivea,livea,liveb,deada,deadb,deadc,deadd,deade,4
0,1,1,livea,deada,deadb,deadc,deadd,deade,livea
0,1,livea,livea,deada,deadb,deadc,deadd,deade,livea
0,livea,livea,livea,deada,deadb,deadc,deadd,deade,livea
#converter spreading to dead cells
0,3,elifea,elifeb,elifec,elifed,elifee,anya,anyb,3
0,5,plifea,plifeb,plifec,plifed,plifee,anya,anyb,5
0,3,5,anya,anyb,anyc,anyd,anye,anyf,0
0,3,1,anya,anyb,anyc,anyd,anye,anyf,3
0,5,1,anya,anyb,anyc,anyd,anye,anyf,5
#converter survival
3,elifea,elifeb,elifec,elifed,elifee,elifef,anya,anyb,3
5,plifea,plifeb,plifec,plifed,plifee,plifef,anya,anyb,5
#converters converting
1,3,5,livea,liveb,deadb,deadc,deadd,deade,1
1,3,livea,liveb,deada,deadb,deadc,deadd,deade,2
1,3,livea,liveb,livec,deada,deadb,deadc,deadd,2
1,5,livea,liveb,deada,deadb,deadc,deadd,deade,4
1,5,livea,liveb,livec,deada,deadb,deadc,deadd,4
#survival
1,2,4,anya,deada,deadb,deadc,deadd,deade,1
1,2,livea,anya,deada,deadb,deadc,deadd,deade,2
1,4,livea,anya,deada,deadb,deadc,deadd,deade,4
1,1,1,anya,deada,deadb,deadc,deadd,deade,1
2,elivea,eliveb,elivec,deada,deadb,deadc,deadd,deade,2
2,elivea,eliveb,deada,deadb,deadc,deadd,deade,deadf,2
4,plivea,pliveb,plivec,deada,deadb,deadc,deadd,deade,4
4,plivea,pliveb,deada,deadb,deadc,deadd,deade,deadf,4
#dying conversion
livea,3,5,anya,anyb,anyc,anyd,anye,anyf,0
livea,3,anya,anyb,anyc,anyd,anye,anyf,anyg,3
livea,5,anya,anyb,anyc,anyd,anye,anyf,anyg,5
#death
anya,anyb,anyc,anyd,anye,anyf,anyg,anyh,anyi,0
@COLORS
0 000 000 000 black
1 064 180 255 blue
2 255 000 000 red
3 255 255 000 yellow
4 180 000 255 purple
5 127 127 127 grey
6 000 255 000 green
And a demonstration of the difference:
Code: Select all
x = 36, y = 9, rule = EightPedestriansConversion
22.A$21.A.A$10.A8.2A3.A9.2A$10.4A5.2A3.A9.2A$2A9.4AE3.2A3.A$2A9.A2.A
6.A.A$5.A5.4A7.A$5.A4.4A$10.A!
Code: Select all
x = 36, y = 9, rule = EightPedestriansConversionV2
22.A$21.A.A$10.A8.2A3.A9.2A$10.4A5.2A3.A9.2A$2A9.4AE3.2A3.A$2A9.A2.A
6.A.A$5.A5.4A7.A$5.A4.4A$10.A!
Edit: Another interesting rule, a simpler combination of EightKillers and KillerPedestrian, though it lacks the nondisruptive conversion property.
Code: Select all
@RULE EightPedestriansCycle
0 dead
1 plife 1
2 elife 1
3 plife 2
4 elife 2
5 plague (spreads to and wipes out live cells)
@TABLE
n_states:6
neighborhood:Moore
symmetries:permute
var anya = {0,1,2,3,4,5}
var anyb = anya
var anyc = anya
var anyd = anya
var anye = anya
var anyf = anya
var anyg = anya
var anyh = anya
var anyi = anya
var livea = {1,2,3,4}
var liveb = livea
var livec = livea
var lived = livea
var livee = livea
var livef = livea
var liveg = livea
var liveh = livea
var nza = {1,2,3,4,5} #nz - non-zero
var nzb = nza
var nzc = nza
var nzd = nza
var nze = nza
var nzf = nza
var nzg = nza
var nzh = nza
#conversion initiation
0,1,1,1,1,1,1,1,1,2
2,2,2,2,2,2,2,2,2,3
0,3,3,3,3,3,3,3,3,4
4,4,4,4,4,4,4,4,4,1
#plague creation
anya,1,2,3,anyb,anyc,anyd,anye,anyf,5
anya,1,2,4,anyb,anyc,anyd,anye,anyf,5
anya,1,3,4,anyb,anyc,anyd,anye,anyf,5
anya,2,3,4,anyb,anyc,anyd,anye,anyf,5
#plague spreading
livea,5,anya,anyb,anyc,anyd,anye,anyf,anyg,5
anya,5,livea,anyb,anyc,anyd,anye,anyf,anyg,5
anya,5,nza,nzb,nzc,nzd,nze,anyb,anyc,5
#birth
0,livea,livea,livea,0,0,0,0,0,livea
0,1,2,anyb,anyc,anyd,anye,anyf,anyg,2
0,2,3,anyb,anyc,anyd,anye,anyf,anyg,3
0,3,4,anyb,anyc,anyd,anye,anyf,anyg,4
0,4,1,anyb,anyc,anyd,anye,anyf,anyg,1
#plague survival
5,livea,anya,anyb,anyc,anyd,anye,anyf,anyg,5
5,nza,nzb,nzc,nzd,nze,anya,anyb,anyc,5
#survival
livea,livea,livea,livea,0,0,0,0,0,livea
livea,livea,livea,0,0,0,0,0,0,livea
1,2,anyb,anyc,anyd,anye,anyf,anyg,anyh,2
2,3,anyb,anyc,anyd,anye,anyf,anyg,anyh,3
3,4,anyb,anyc,anyd,anye,anyf,anyg,anyh,4
4,1,anyb,anyc,anyd,anye,anyf,anyg,anyh,1
2,1,anyb,anyc,anyd,anye,anyf,anyg,anyh,2
3,2,anyb,anyc,anyd,anye,anyf,anyg,anyh,3
4,3,anyb,anyc,anyd,anye,anyf,anyg,anyh,4
1,4,anyb,anyc,anyd,anye,anyf,anyg,anyh,1
#death
anya,anyb,anyc,anyd,anye,anyf,anyg,anyh,anyi,0
@COLORS
0 000 000 000 black
1 064 180 255 blue
2 255 000 000 red
3 255 255 000 yellow
4 127 127 127 grey
5 000 255 000 green
Edit2:
Found another flaw in EightPedestriansConversion, V1 and V2 were both treating some cgol-only patterns as PedestrianLife compatible.
Code: Select all
n_states:7
neighborhood:Moore
symmetries:permute
var anya = {0,1,2,3,4,5,6}
var anyb = anya
var anyc = anya
var anyd = anya
var anye = anya
var anyf = anya
var anyg = anya
var anyh = anya
var anyi = anya
var livea = {1,2,4}
var liveb = livea
var livec = livea
var lived = livea
var livee = livea
var livef = livea
var liveg = livea
var liveh = livea
var elivea = {1,2}
var eliveb = elivea
var elivec = elivea
var elived = elivea
var elivee = elivea
var elivef = elivea
var eliveg = elivea
var eliveh = elivea
var plivea = {1,4}
var pliveb = plivea
var plivec = plivea
var plived = plivea
var plivee = plivea
var plivef = plivea
var pliveg = plivea
var pliveh = plivea
var plivei = plivea
var deada = {0,3,5,6}
var deadb = deada
var deadc = deada
var deadd = deada
var deade = deada
var deadf = deada
var deadg = deada
var deadh = deada
var nbla = {2,3,4,5,6} #nbl - not basic life
var nblb = nbla
var nblc = nbla
var nbld = nbla
var nble = nbla
var nblf = nbla
var nblg = nbla
var nblh = nbla
var pia = {2,3,4,5} # pi - plague infectable
var pib = pia
var pic = pia
var pid = pia
var pie = pia
var pif = pia
var pig = pia
var pih = pia
var elifea = {2,3}
var elifeb = elifea
var elifec = elifea
var elifed = elifea
var elifee = elifea
var elifef = elifea
var elifeg = elifea
var elifeh = elifea
var plifea = {4,5}
var plifeb = plifea
var plifec = plifea
var plifed = plifea
var plifee = plifea
var plifef = plifea
var plifeg = plifea
var plifeh = plifea
var plifei = plifea
#plague survival
6,pia,anya,anyb,anyc,anyd,anye,anyf,anyg,6
6,nbla,nblb,nblc,nbld,nble,anya,anyb,anyc,6
#conversion initiation
deada,elivea,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,3
plivea,pliveb,plivec,plived,plivee,plivef,pliveg,pliveh,plivei,5
#plague creation
elivea,2,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,6
2,elivea,eliveb,elivec,elived,elivee,elivef,eliveg,eliveh,6
deada,plivea,pliveb,plivec,plived,plivee,plivef,pliveg,pliveh,6
#plague spreading
pia,6,anya,anyb,anyc,anyd,anye,anyf,anyg,6
anya,6,pia,anyb,anyc,anyd,anye,anyf,anyg,6
anya,6,nbla,nblb,nblc,nbld,nble,anyb,anyc,6
#basiclife birth
deada,1,1,1,deadb,deadc,deadd,deade,deadf,1
deada,1,6,livea,liveb,deadb,deadc,deadd,deade,1
6,1,livea,liveb,deada,deadb,deadc,deadd,deade,1
deada,1,3,5,livea,liveb,deadb,deadc,deadd,1
3,1,5,livea,liveb,deadb,deadc,deadd,deade,1
5,1,3,livea,liveb,deadb,deadc,deadd,deade,1
#nonbasic births
3,elivea,livea,liveb,deada,deadb,deadc,deadd,deade,2
5,plivea,livea,liveb,deada,deadb,deadc,deadd,deade,4
0,1,1,livea,deada,deadb,deadc,deadd,deade,livea
0,1,livea,livea,deada,deadb,deadc,deadd,deade,livea
0,livea,livea,livea,deada,deadb,deadc,deadd,deade,livea
#converter spreading to dead cells
0,3,elifea,elifeb,elifec,elifed,elifee,anya,anyb,3
0,5,plifea,plifeb,plifec,plifed,plifee,anya,anyb,5
0,3,5,anya,anyb,anyc,anyd,anye,anyf,0
0,3,1,anya,anyb,anyc,anyd,anye,anyf,3
0,5,1,anya,anyb,anyc,anyd,anye,anyf,5
#converter survival
3,elifea,elifeb,elifec,elifed,elifee,elifef,anya,anyb,3
5,plifea,plifeb,plifec,plifed,plifee,plifef,anya,anyb,5
#converters converting
1,3,5,livea,liveb,deadb,deadc,deadd,deade,1
1,3,livea,liveb,deada,deadb,deadc,deadd,deade,2
1,3,livea,liveb,livec,deada,deadb,deadc,deadd,2
1,5,livea,liveb,deada,deadb,deadc,deadd,deade,4
1,5,livea,liveb,livec,deada,deadb,deadc,deadd,4
#survival
1,2,4,anya,deada,deadb,deadc,deadd,deade,1
1,2,livea,anya,deada,deadb,deadc,deadd,deade,2
1,4,livea,anya,deada,deadb,deadc,deadd,deade,4
1,1,1,anya,deada,deadb,deadc,deadd,deade,1
2,elivea,eliveb,elivec,deada,deadb,deadc,deadd,deade,2
2,elivea,eliveb,deada,deadb,deadc,deadd,deade,deadf,2
4,plivea,pliveb,plivec,deada,deadb,deadc,deadd,deade,4
4,plivea,pliveb,deada,deadb,deadc,deadd,deade,deadf,4
#dying conversion
livea,3,5,anya,anyb,anyc,anyd,anye,anyf,0
livea,3,anya,anyb,anyc,anyd,anye,anyf,anyg,3
livea,5,anya,anyb,anyc,anyd,anye,anyf,anyg,5
#death
anya,anyb,anyc,anyd,anye,anyf,anyg,anyh,anyi,0
A shame to lose this simple switch engine synthesis, but it explains why it hadn't shown up in KillerPedestrian yet.
Code: Select all
x = 22, y = 16, rule = EightPedestriansConversionV2
2.A$A.A17.A$.2A12.A.A.A$16.2A.3A$16.A9$7.3A$9.A$8.A!
Code: Select all
x = 22, y = 16, rule = EightPedestriansConversionV3
2.A$A.A17.A$.2A12.A.A.A$16.2A.3A$16.A9$7.3A$9.A$8.A!
Code: Select all
x = 22, y = 16, rule = KillerPedestrian
2.A$A.A17.A$.2A12.A.A.A$16.2A.3A$16.A9$7.3A$9.A$8.A!
Edit3:
A simple all-blue gun in EightPedestriansCycle which fires yellow gliders with period 1260:
Code: Select all
x = 115, y = 149, rule = EightPedestriansCycle
109.2A$109.2A3$109.A$108.A.A$107.A3.A$107.5A$106.2A3.2A$107.5A$108.3A
$109.A4$110.A$107.2A$107.3A$108.2A$108.A$107.A.A$107.2A3$108.2A.A.2A
2$101.A6.A5.A$99.2A$100.2A7.2A.2A$111.A3$25.A$25.A.A$8.2A18.2A4.2A56.
A.A16.2A$6.A3.A17.2A4.2A56.2A17.2A$2A3.A5.A16.2A63.A$2A2.2A.A3.A8.A4.
A.A$5.A5.A9.A3.A$6.A3.A5.A2.3A$8.2A$86.A$84.2A$85.2A2$28.A$26.A.A$27.
2A2$77.A.A$77.2A$78.A$35.A$36.A$34.3A2$71.A$69.2A$70.2A2$43.A$41.A.A$
42.2A2$62.A.A$62.2A$63.A$50.A$51.A$49.3A14$80.A$78.3A$77.A$77.2A5$71.
2A$70.A.A$72.A6$63.3A$65.A$19.2A43.A$18.A.A$18.A$17.2A2$56.2A$55.A.A$
57.A5$31.2A$31.2A15.3A$50.A$49.A5$31.3A7.2A$30.A3.A5.A.A$42.A$29.A5.A
$29.2A3.2A3$34.2A$34.A.A$36.A$35.2A$32.A$32.A2.A$32.A3$31.2A.A.2A2$
31.A5.A2$32.2A.2A$34.A5$33.2A$33.2A!
"Human beings, five hundred years after the Scientific Revolution, are only just starting to match their wits against the billion-year heritage of biology." -- E. Yudkowsky