WireWorld-Follow

For discussion of other cellular automata.
Post Reply
MarkJ
Posts: 31
Joined: October 22nd, 2010, 5:57 am

WireWorld-Follow

Post by MarkJ » May 11th, 2020, 2:28 pm

I made a toy WireWorld variant where I could mark one photon with a different color and see where it ends up in the circuit. Useful for debugging. Just stick an F at the end of the name in the rule selection dialog to start following. Remove the F and marked photons just revert to Wire (because that's the last state in WW).

Marked head overrules normal head so it doesn't get lost in the first gate it encounters. It's not water-tight though, as some gates (like inverters and AND gates) use one input just to block another photon.

Code: Select all

@RULE WireWorldF
A WireWorld variant called WireWorld-Follow, where a photon can be marked to be followed through the circuit.

@NAMES
0 Background
1 Head
2 Tail
3 Wire
4 Marked head

@COLORS
0   0   0   0
1 255 255 255
2 144 128 112
3 144  90  45
4  96 160 255

@TABLE
n_states: 5
neighborhood: Moore
symmetries: permute

var a={0,1,2,3,4}
var b=a
var c=a
var d=a
var e=a
var f=a
var g=a
var h=a

var Q={4,1}
var R=Q
var S=Q

3 Q,R,S,d,e,f,g,h 3 #Three or more photons don't propagate
3 Q,b,c,d,e,f,g,h Q #... fewer photons propagate
Q a,b,c,d,e,f,g,h 2 #Photon -> tail
2 a,b,c,d,e,f,g,h 3 #Tail -> wire

Code: Select all

x = 15, y = 31, rule = WireWorldF
A5C$6.C$5.8C$6.C$D5C3$5.2C$4.C2.3C$D3C2.C3.C$6.C.C.C$5.5C$6.C.C.5C$A
3C2.C$4.2C2$5.2C$4.C2.3C$A3C2.C3.C$6.C.C.C$5.5C$6.C.C.5C$D3C2.C$4.2C
3$8.AC$7.B2.C$5.C.B2C$D6C$5.C.8C!
[edit] updated rule (same functionality differently formulated) with help of RedstoneBoi and Hactar's help.

Post Reply