Page 1 of 1

Transistoric - a new circuit rule

Posted: December 14th, 2019, 3:26 pm
by EvinZL
Rule table:

Code: Select all

@RULE Transistoric
********************************
**** COMPILED FROM NUTSHELL ****
****         v0.5.8         ****
********************************
0: dead
1: wire
2: tail
3: head
4: splitter
5: splitter tail
6: splitter head
7: semiconductor N
8: semiconductor N tail
9: semiconductor N charge
10: semiconductor N head
11: semiconductor P
12: semiconductor P tail
13: semiconductor P charge
14: semiconductor P head


@TABLE
neighborhood: vonNeumann
symmetries: rotate4reflect
n_states: 15

var any.0 = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14}
var any.1 = any.0
var any.2 = any.0
var any.3 = any.0
var head.0 = {10,3,6,14}
var head.1 = head.0
var tail.0 = {8,2,12,5}
var wire.0 = {1,11,4,7}
var wire.1 = wire.0
var wire.2 = wire.0
var scharge.0 = {9,13}
var _a0.0 = {0,1,2,3,4,5,6,7,8,9,10,11,12,14}
var _a0.1 = _a0.0
var _a0.2 = _a0.0

1, 0, head.0, wire.0, wire.1, 3
1, 0, head.0, head.1, wire.0, 3
1, head.0, wire.0, head.1, wire.1, 3
1, head.0, wire.0, wire.1, wire.2, 3
7, any.0, any.1, any.2, head.0, 9
11, any.0, any.1, any.2, head.0, 13
tail.0, any.0, any.1, any.2, scharge.0, tail.0
7, 13, _a0.0, _a0.1, _a0.2, 8
9, 11, any.0, any.1, any.2, 10
13, 7, any.0, 8, any.1, 11
9, 0, wire.0, 0, wire.1, 10
13, 0, wire.0, 0, wire.1, 14
11, 9, any.0, any.1, any.2, 14
9, 13, any.0, any.1, any.2, 10
13, 1, any.0, 10, any.1, 11
7, 13, any.0, wire.0, any.1, 10
1, any.0, any.1, any.2, head.0, 3
4, any.0, any.1, any.2, head.0, 6
7, any.0, any.1, any.2, head.0, 10
11, any.0, any.1, any.2, head.0, 14
3, any.0, any.1, any.2, any.3, 2
6, any.0, any.1, any.2, any.3, 5
10, any.0, any.1, any.2, any.3, 8
14, any.0, any.1, any.2, any.3, 12
2, any.0, any.1, any.2, any.3, 1
5, any.0, any.1, any.2, any.3, 4
8, any.0, any.1, any.2, any.3, 7
12, any.0, any.1, any.2, any.3, 11

@COLORS
0 0 0 0
1 255 127 0
2 127 127 127
3 255 255 255
4 255 255 0
5 255 255 85
6 255 255 170
7 0 0 255
8 64 64 255
9 128 128 255
10 192 192 255
11 255 0 0
12 255 64 64
13 255 128 128
14 255 192 192
Unlike WireWorld, Transistoric has logic conditions to determine the center cell of an intersection, and uses the vonNeumann neighborhood. In order to force splitting, there are special splitter cells. Semiconductors are also a key part, to make diodes, delays, and transistors. Signals do not wait in Transistoric.

Currently, semiconductors are only used for few purposes and don't live up to their full potential.
nutshell

Discord Chat

Re: Transistoric - a new circuit rule

Posted: December 14th, 2019, 3:33 pm
by Moosey
Do you have any demo patterns with both PNPs and NPNs?

Also, are things like this supposed to happen?

Code: Select all

x = 15, y = 12, rule = Transistoric
C8AGKG2AC$10.A$10.A$10.A$10.A3$5.3AKGKG2AC$10.A$10.A$10.A$10.A!

Code: Select all

#C two problems: the signal gets stuck, and this looks more like a PNP than an NPN
x = 21, y = 8, rule = Transistoric
5ABCAGKG10A$9.A$9.A$9.A$9.A$9.A$9.A$9.A!

Re: Transistoric - a new circuit rule

Posted: December 14th, 2019, 5:06 pm
by EvinZL
That's what I'm trying to do.
Nutshell edited to fix diode-jam.

Also, Transistoric doesn't have NPNs yet.

Official Transistoric gist