Attract and Repel

For discussion of other cellular automata.
wildmyron
Posts: 1545
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Attract and Repel

Post by wildmyron » August 19th, 2015, 1:38 am

SeanBP wrote:Also, bprentice found a discrepancy with how it should handle this pattern

Code: Select all

x = 3, y = 3, rule = Repel_D0
.A$.2A$A.A!
My rule should make this

Code: Select all

x = 5, y = 5, rule = Repel
.2A$2.A$4.A$.A$A!

But Repel in Golly makes this

Code: Select all

x = 5, y = 5, rule = Repel
.2A2$4.A2$A2.2A!
And Repel2 makes this

Code: Select all

x = 5, y = 5, rule = Repel2
.2A$.A$4.A2$A2.2A!
When I first read this I completely didn't see that there was something wrong and didn't follow up on it. Now it's obvious to me that my original rules didn't allow cells occupied by a moving particle to accept particles coming in to the cell. This seemed a pretty straightforward fix, so even though Scorbie has produced corrected rule files I thought I'd post my version of the corrected rules - even if only so that we can verify the two versions against each other. I also thought it would be worthwhile taking advantage of Golly's shared icons and color feature so I've changed the rule names to use '-' in place of '_' and appended 'S' to the original Repel rule which allows non-moving particles to remain stationary.

Perhaps we can decide on which naming convention to use before posting further patterns in the corrected rules in order to prevent potential confusion.

EDIT: Updated attachment with new rule files incorporating bug fix suggested by Scorbie. Also added a new rule: Repel-D1 which allows particles to remain stationary for one generation before dying. The behaviour is a mixture between Repel-S and Repel-D0, with similar small orthogonal and diagonal ships but also frequently exploding chaotically.
Attachments
Repel.zip
Updated Repel rules with shared colors and icons (25/8/2015)
(8.4 KiB) Downloaded 187 times
Last edited by wildmyron on August 25th, 2015, 1:53 am, edited 1 time in total.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Attract and Repel

Post by Scorbie » August 19th, 2015, 3:32 am

@wildmyron I first thought that too, but Sean's code doesn't allow cells to split in opposite directions, I think.

wildmyron
Posts: 1545
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Attract and Repel

Post by wildmyron » August 19th, 2015, 4:35 am

Now I'm really confused. :(
SeanBP wrote:Also, bprentice found a discrepancy with how it should handle this pattern

Code: Select all

x = 3, y = 3, rule = Repel_D0
.A$.2A$A.A!
My rule should make this

Code: Select all

x = 5, y = 5, rule = Repel
.2A$2.A$4.A$.A$A!
Reformatting this for clarity:

SeanBP's correction from above:

Code: Select all

.....      .**..
..*..      ..*..
..**.  ->  ....*
.*.*.      .*...
.....      *....
Original Repel rule (Repel_D0 is identical):

Code: Select all

.....      .**..
..*..      .....
..**.  ->  ....*
.*.*.      .....
.....      *..**
New rule Repel-S (Repel-D0 is identical)

Code: Select all

.....      .**..
..*..      ..*..
..**.  ->  ....*
.*.*.      .*...
.....      *..**
And "Attract and Repel" as implemented in bprentice's modified JavaSquareCell (using Repel states only):

Code: Select all

.....      .**..
..*..      ..*..
..**.  ->  ....*
.*.*.      .*...
.....      *..**
So the behaviour in Repel-S and Repel-D0 is now consistent with the Java implementation for this 5-bit pattern, but not with the correction as posted above.
Scorbie wrote:@wildmyron I first thought that too, but Sean's code doesn't allow cells to split in opposite directions, I think.
I'm not quite sure what you mean by opposite directions. Do you mean something like

Code: Select all

.*.  ->  *.*
where a particle splits to E/W or N/S? I'm not aware of any transitions where this occurs in the Golly rule tables I've posted. If it does please post an example pattern.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Attract and Repel

Post by Scorbie » August 19th, 2015, 9:59 am

wildmyron wrote:SeanBP's correction from above:
Sean said that he calculated that by hand, and he made a mistake during calculating the lower-right-most cell. He corrected it to:

Code: Select all

.....      .**..
..*..      ..*..
..**.  ->  ....*
.*.*.      .*...
.....      *..**
Which equals to Square Cell and Repel-S. Congrats!
wildmyron wrote:Scorbie wrote:
@wildmyron I first thought that too, but Sean's code doesn't allow cells to split in opposite directions, I think.

I'm not quite sure what you mean by opposite directions. Do you mean something like

Code: Select all

.*.  ->  *.*
where a particle splits to E/W or N/S?
Yeah, I meant that.
wildmyron wrote:I'm not aware of any transitions where this occurs in the Golly rule tables I've posted. If it does please post an example pattern.
I inspected the rule table and as you said, these states aren't used. I just assumed (wrong) that your rule wouldn't have any unused states. Well, I'll try your rule out. Congrats!

EDIT: I took a brief look at your rule transitions and they look identical to mine, I think.
By the way, wildmyron, did you use a script to generate that rule table?

EDIT2: Really like those shared rule things.
Last edited by Scorbie on August 19th, 2015, 10:36 am, edited 1 time in total.

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 19th, 2015, 10:12 am

OK, very sorry for the mass confusion I've caused. I found that squarecell and golly handled that pattern differently, so I tried doing it by hand, and I messed up. It looks like you all have it figured out now, so good job. I'm getting confused by my own rule...

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Attract and Repel

Post by Scorbie » August 21st, 2015, 12:55 pm

To everyone: I found a small bug in the current Repel implementation:
Generate this pattern:

Code: Select all

ooo
oo.
...
The center cell should behave the same as the following situation:

Code: Select all

oo.
.o.
...
Which splits the cell to SE and S.
But neither Square Cell (which is based on Sean's original code) nor wildmyron's rule file implements this correctly. (No offense though.) I'll post the 256-liner "Phase 1" and the python script.
@wildmyron: I think it would be better if you change the 256 "Phase 1" to the following.

Code: Select all

1,0,0,0,0,0,0,0,0,1
1,0,0,0,0,0,0,0,1,6
1,0,0,0,0,0,0,1,0,7
1,0,0,0,0,0,0,1,1,24
1,0,0,0,0,0,1,0,0,8
1,0,0,0,0,0,1,0,1,7
1,0,0,0,0,0,1,1,0,30
1,0,0,0,0,0,1,1,1,7
1,0,0,0,0,1,0,0,0,9
1,0,0,0,0,1,0,0,1,35
1,0,0,0,0,1,0,1,0,8
1,0,0,0,0,1,0,1,1,7
1,0,0,0,0,1,1,0,0,37
1,0,0,0,0,1,1,0,1,8
1,0,0,0,0,1,1,1,0,8
1,0,0,0,0,1,1,1,1,30
1,0,0,0,1,0,0,0,0,2
1,0,0,0,1,0,0,0,1,1
1,0,0,0,1,0,0,1,0,20
1,0,0,0,1,0,0,1,1,7
1,0,0,0,1,0,1,0,0,9
1,0,0,0,1,0,1,0,1,8
1,0,0,0,1,0,1,1,0,8
1,0,0,0,1,0,1,1,1,30
1,0,0,0,1,1,0,0,0,31
1,0,0,0,1,1,0,0,1,9
1,0,0,0,1,1,0,1,0,9
1,0,0,0,1,1,0,1,1,8
1,0,0,0,1,1,1,0,0,9
1,0,0,0,1,1,1,0,1,37
1,0,0,0,1,1,1,1,0,37
1,0,0,0,1,1,1,1,1,8
1,0,0,1,0,0,0,0,0,3
1,0,0,1,0,0,0,0,1,17
1,0,0,1,0,0,0,1,0,1
1,0,0,1,0,0,0,1,1,6
1,0,0,1,0,0,1,0,0,26
1,0,0,1,0,0,1,0,1,1
1,0,0,1,0,0,1,1,0,8
1,0,0,1,0,0,1,1,1,7
1,0,0,1,0,1,0,0,0,2
1,0,0,1,0,1,0,0,1,1
1,0,0,1,0,1,0,1,0,9
1,0,0,1,0,1,0,1,1,35
1,0,0,1,0,1,1,0,0,9
1,0,0,1,0,1,1,0,1,20
1,0,0,1,0,1,1,1,0,37
1,0,0,1,0,1,1,1,1,8
1,0,0,1,1,0,0,0,0,10
1,0,0,1,1,0,0,0,1,3
1,0,0,1,1,0,0,1,0,2
1,0,0,1,1,0,0,1,1,1
1,0,0,1,1,0,1,0,0,2
1,0,0,1,1,0,1,0,1,26
1,0,0,1,1,0,1,1,0,9
1,0,0,1,1,0,1,1,1,8
1,0,0,1,1,1,0,0,0,2
1,0,0,1,1,1,0,0,1,2
1,0,0,1,1,1,0,1,0,31
1,0,0,1,1,1,0,1,1,9
1,0,0,1,1,1,1,0,0,31
1,0,0,1,1,1,1,0,1,9
1,0,0,1,1,1,1,1,0,9
1,0,0,1,1,1,1,1,1,37
1,0,1,0,0,0,0,0,0,4
1,0,1,0,0,0,0,0,1,5
1,0,1,0,0,0,0,1,0,22
1,0,1,0,0,0,0,1,1,6
1,0,1,0,0,0,1,0,0,1
1,0,1,0,0,0,1,0,1,6
1,0,1,0,0,0,1,1,0,7
1,0,1,0,0,0,1,1,1,24
1,0,1,0,0,1,0,0,0,33
1,0,1,0,0,1,0,0,1,1
1,0,1,0,0,1,0,1,0,1
1,0,1,0,0,1,0,1,1,28
1,0,1,0,0,1,1,0,0,9
1,0,1,0,0,1,1,0,1,35
1,0,1,0,0,1,1,1,0,8
1,0,1,0,0,1,1,1,1,7
1,0,1,0,1,0,0,0,0,3
1,0,1,0,1,0,0,0,1,4
1,0,1,0,1,0,0,1,0,1
1,0,1,0,1,0,0,1,1,22
1,0,1,0,1,0,1,0,0,2
1,0,1,0,1,0,1,0,1,1
1,0,1,0,1,0,1,1,0,20
1,0,1,0,1,0,1,1,1,7
1,0,1,0,1,1,0,0,0,2
1,0,1,0,1,1,0,0,1,33
1,0,1,0,1,1,0,1,0,26
1,0,1,0,1,1,0,1,1,1
1,0,1,0,1,1,1,0,0,31
1,0,1,0,1,1,1,0,1,9
1,0,1,0,1,1,1,1,0,9
1,0,1,0,1,1,1,1,1,8
1,0,1,1,0,0,0,0,0,12
1,0,1,1,0,0,0,0,1,4
1,0,1,1,0,0,0,1,0,4
1,0,1,1,0,0,0,1,1,5
1,0,1,1,0,0,1,0,0,3
1,0,1,1,0,0,1,0,1,17
1,0,1,1,0,0,1,1,0,1
1,0,1,1,0,0,1,1,1,6
1,0,1,1,0,1,0,0,0,3
1,0,1,1,0,1,0,0,1,13
1,0,1,1,0,1,0,1,0,33
1,0,1,1,0,1,0,1,1,1
1,0,1,1,0,1,1,0,0,2
1,0,1,1,0,1,1,0,1,1
1,0,1,1,0,1,1,1,0,9
1,0,1,1,0,1,1,1,1,35
1,0,1,1,1,0,0,0,0,3
1,0,1,1,1,0,0,0,1,12
1,0,1,1,1,0,0,1,0,3
1,0,1,1,1,0,0,1,1,4
1,0,1,1,1,0,1,0,0,10
1,0,1,1,1,0,1,0,1,3
1,0,1,1,1,0,1,1,0,2
1,0,1,1,1,0,1,1,1,1
1,0,1,1,1,1,0,0,0,10
1,0,1,1,1,1,0,0,1,3
1,0,1,1,1,1,0,1,0,2
1,0,1,1,1,1,0,1,1,33
1,0,1,1,1,1,1,0,0,2
1,0,1,1,1,1,1,0,1,2
1,0,1,1,1,1,1,1,0,31
1,0,1,1,1,1,1,1,1,9
1,1,0,0,0,0,0,0,0,5
1,1,0,0,0,0,0,0,1,19
1,1,0,0,0,0,0,1,0,6
1,1,0,0,0,0,0,1,1,6
1,1,0,0,0,0,1,0,0,28
1,1,0,0,0,0,1,0,1,6
1,1,0,0,0,0,1,1,0,7
1,1,0,0,0,0,1,1,1,24
1,1,0,0,0,1,0,0,0,1
1,1,0,0,0,1,0,0,1,6
1,1,0,0,0,1,0,1,0,7
1,1,0,0,0,1,0,1,1,24
1,1,0,0,0,1,1,0,0,8
1,1,0,0,0,1,1,0,1,7
1,1,0,0,0,1,1,1,0,30
1,1,0,0,0,1,1,1,1,7
1,1,0,0,1,0,0,0,0,13
1,1,0,0,1,0,0,0,1,5
1,1,0,0,1,0,0,1,0,1
1,1,0,0,1,0,0,1,1,6
1,1,0,0,1,0,1,0,0,1
1,1,0,0,1,0,1,0,1,28
1,1,0,0,1,0,1,1,0,35
1,1,0,0,1,0,1,1,1,7
1,1,0,0,1,1,0,0,0,2
1,1,0,0,1,1,0,0,1,1
1,1,0,0,1,1,0,1,0,20
1,1,0,0,1,1,0,1,1,7
1,1,0,0,1,1,1,0,0,9
1,1,0,0,1,1,1,0,1,8
1,1,0,0,1,1,1,1,0,8
1,1,0,0,1,1,1,1,1,30
1,1,0,1,0,0,0,0,0,4
1,1,0,1,0,0,0,0,1,5
1,1,0,1,0,0,0,1,0,5
1,1,0,1,0,0,0,1,1,19
1,1,0,1,0,0,1,0,0,1
1,1,0,1,0,0,1,0,1,22
1,1,0,1,0,0,1,1,0,28
1,1,0,1,0,0,1,1,1,6
1,1,0,1,0,1,0,0,0,3
1,1,0,1,0,1,0,0,1,17
1,1,0,1,0,1,0,1,0,1
1,1,0,1,0,1,0,1,1,6
1,1,0,1,0,1,1,0,0,26
1,1,0,1,0,1,1,0,1,1
1,1,0,1,0,1,1,1,0,8
1,1,0,1,0,1,1,1,1,7
1,1,0,1,1,0,0,0,0,3
1,1,0,1,1,0,0,0,1,4
1,1,0,1,1,0,0,1,0,13
1,1,0,1,1,0,0,1,1,5
1,1,0,1,1,0,1,0,0,33
1,1,0,1,1,0,1,0,1,1
1,1,0,1,1,0,1,1,0,1
1,1,0,1,1,0,1,1,1,28
1,1,0,1,1,1,0,0,0,10
1,1,0,1,1,1,0,0,1,3
1,1,0,1,1,1,0,1,0,2
1,1,0,1,1,1,0,1,1,1
1,1,0,1,1,1,1,0,0,2
1,1,0,1,1,1,1,0,1,26
1,1,0,1,1,1,1,1,0,9
1,1,0,1,1,1,1,1,1,8
1,1,1,0,0,0,0,0,0,15
1,1,1,0,0,0,0,0,1,5
1,1,1,0,0,0,0,1,0,5
1,1,1,0,0,0,0,1,1,19
1,1,1,0,0,0,1,0,0,5
1,1,1,0,0,0,1,0,1,19
1,1,1,0,0,0,1,1,0,6
1,1,1,0,0,0,1,1,1,6
1,1,1,0,0,1,0,0,0,4
1,1,1,0,0,1,0,0,1,5
1,1,1,0,0,1,0,1,0,22
1,1,1,0,0,1,0,1,1,6
1,1,1,0,0,1,1,0,0,1
1,1,1,0,0,1,1,0,1,6
1,1,1,0,0,1,1,1,0,7
1,1,1,0,0,1,1,1,1,24
1,1,1,0,1,0,0,0,0,4
1,1,1,0,1,0,0,0,1,15
1,1,1,0,1,0,0,1,0,17
1,1,1,0,1,0,0,1,1,5
1,1,1,0,1,0,1,0,0,13
1,1,1,0,1,0,1,0,1,5
1,1,1,0,1,0,1,1,0,1
1,1,1,0,1,0,1,1,1,6
1,1,1,0,1,1,0,0,0,3
1,1,1,0,1,1,0,0,1,4
1,1,1,0,1,1,0,1,0,1
1,1,1,0,1,1,0,1,1,22
1,1,1,0,1,1,1,0,0,2
1,1,1,0,1,1,1,0,1,1
1,1,1,0,1,1,1,1,0,20
1,1,1,0,1,1,1,1,1,7
1,1,1,1,0,0,0,0,0,4
1,1,1,1,0,0,0,0,1,15
1,1,1,1,0,0,0,1,0,15
1,1,1,1,0,0,0,1,1,5
1,1,1,1,0,0,1,0,0,4
1,1,1,1,0,0,1,0,1,5
1,1,1,1,0,0,1,1,0,5
1,1,1,1,0,0,1,1,1,19
1,1,1,1,0,1,0,0,0,12
1,1,1,1,0,1,0,0,1,4
1,1,1,1,0,1,0,1,0,4
1,1,1,1,0,1,0,1,1,5
1,1,1,1,0,1,1,0,0,3
1,1,1,1,0,1,1,0,1,17
1,1,1,1,0,1,1,1,0,1
1,1,1,1,0,1,1,1,1,6
1,1,1,1,1,0,0,0,0,12
1,1,1,1,1,0,0,0,1,4
1,1,1,1,1,0,0,1,0,4
1,1,1,1,1,0,0,1,1,15
1,1,1,1,1,0,1,0,0,3
1,1,1,1,1,0,1,0,1,4
1,1,1,1,1,0,1,1,0,13
1,1,1,1,1,0,1,1,1,5
1,1,1,1,1,1,0,0,0,3
1,1,1,1,1,1,0,0,1,12
1,1,1,1,1,1,0,1,0,3
1,1,1,1,1,1,0,1,1,4
1,1,1,1,1,1,1,0,0,10
1,1,1,1,1,1,1,0,1,3
1,1,1,1,1,1,1,1,0,2
1,1,1,1,1,1,1,1,1,1
@Sean I think your Java implementation would be better if you change the code as this python implementation( See function newstate; Line 42~ Line 80):

Code: Select all

nd, ned, ed, sed, sd, swd, wd, nwd = 0,1,2,3,4,5,6,7

statedict = {\
    ():1,\
    (nwd,):2,\
    (wd,):3,\
    (swd,):4,\
    (sd,):5,\
    (sed,):6,\
    (ed,):7,\
    (ned,):8,\
    (nd,):9,\
    (wd,nwd):10,\
    (swd,nwd):11,\
    (swd,wd):12,\
    (sd,nwd):13,\
    (sd,wd):14,\
    (sd,swd):15,\
    (sed,nwd):16,\
    (sed,wd):17,\
    (sed,swd):18,\
    (sed,sd):19,\
    (ed,nwd):20,\
    (ed,wd):21,\
    (ed,swd):22,\
    (ed,sd):23,\
    (ed,sed):24,\
    (ned,nwd):25,\
    (ned,wd):26,\
    (ned,swd):27,\
    (ned,sd):28,\
    (ned,sed):29,\
    (ned,ed):30,\
    (nd,nwd):31,\
    (nd,wd):32,\
    (nd,swd):33,\
    (nd,sd):34,\
    (nd,sed):35,\
    (nd,ed):36,\
    (nd,ned):37}

def newstate(n, ne, e, se, s, sw, w, nw):
    
    stable = False
    while not stable:
        stable = True
        if n==s==1:
            n=s=0; stable = False
        if ne==sw==1:
            ne=sw=0; stable = False
        if e==w==1:
            e=w=0; stable = False
        if se==nw==1:
            se=nw=0; stable = False
        
        n2=ne2=e2=se2=s2=sw2=w2=nw2=0     
        if n==e==1:
            n=e=0; ne2=1; stable = False
        if ne==se==1:
            ne=se=0; e2=1; stable = False
        if e==s==1:
            e=s=0; se2=1; stable = False
        if se==sw==1:
            se=sw=0; s2=1; stable = False
        if s==w==1:
            s=w=0; sw2=1; stable = False
        if sw==nw==1:
            sw=nw=0; w2=1; stable = False
        if w==n==1:
            w=n=0; nw2=1; stable = False
        if nw==ne==1:
            nw=ne=0; n2=1; stable = False
        n = n or n2
        ne = ne or ne2
        e = e or e2
        se = se or se2
        s = s or s2 
        sw = sw or sw2
        w = w or w2
        nw = nw or nw2
    
    push = []
    if s==1: push.append(nd)
    if sw==1: push.append(ned)
    if w==1: push.append(ed)
    if nw==1: push.append(sed)
    if n==1: push.append(sd)
    if ne==1: push.append(swd)
    if e==1: push.append(wd)
    if se==1: push.append(nwd)
    
    return statedict[tuple(push)]

for N in [0,1]:
    for NE in [0,1]:
        for E in [0,1]:
            for SE in [0,1]:
                for S in [0,1]:           
                    for SW in [0,1]:           
                        for W in [0,1]:
                            for NW in [0,1]:
                                print '1,{0},{1},{2},{3},{4},{5},{6},{7},{8}'\
                                    .format(N, NE, E, SE, S, SW, W, NW, newstate(N, NE, E, SE, S, SW, W, NW))

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 22nd, 2015, 12:00 pm

Oh, I didn't notice that! Thanks for pointing that out, I'll change it as soon as possible, which might be a while, because of college.
Last edited by SeanBP on August 26th, 2015, 9:13 am, edited 1 time in total.

wildmyron
Posts: 1545
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Attract and Repel

Post by wildmyron » August 25th, 2015, 12:09 am

Scorbie wrote:I took a brief look at your rule transitions and they look identical to mine, I think.
By the way, wildmyron, did you use a script to generate that rule table?
Scorbie wrote:To everyone: I found a small bug in the current Repel implementation:
Generate this pattern:

Code: Select all

ooo
oo.
...
The center cell should behave the same as the following situation:

Code: Select all

oo.
.o.
...
Which splits the cell to SE and S.
Sorry for delayed response. I did use a script which was basically a translation of the Java code for RepelSimplify() plus definition of neighbourhoods and some additional processing to generate a rule table from the results of running RepelSimplify(). I see that there's a bug in the original Java implementation due to the result being dependent on the order in which pairs of neighbours are processed. I used Matlab because it's something I have access to and am familiar with for this kind of manipulation. In case you're curious about the additional unused states: When I wrote the script I was uncertain how particle splits behaved, so I generated a correspondence between state values and all neighbourhoods which had one or two live neighbours. They are sorted by increasing number of live neighbours and then increasing value of the binary representation of the neighbourhood.

I was a bit reluctant to change the behaviour of the rule from SeanBP's original implementation without him doing so first, but seeing as there are no patterns published with the Repel-* rules and there clearly is a bug in the implementation I'll update the rule tables in the post above. There certainly are some patterns affected by the changes, but fortunately the replicator and the small orthogonal and diagonal ships seem to have the same behaviour.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 26th, 2015, 9:12 am

Thanks, this rule is getting more confusing than what I can keep up with. Thinking it over, my "simplifier" algorithm is probably more complicated than looking at this from a purely mathematical standpoint. I'll start working on a rule where the direction is determined by trigonometry. We can call this "RepelTrig" to separate it from the rest. Here's the math:

All eight neighbors around the cell will be treated as unit vectors with angles 0, 45, 90, 135, 189, 180, etc. The magnitude of the resultant vector is ignored, and the direction is the direction of push. If the angle of the resultant vector does not fall exactly on one of eight angles, it will be split into the smallest number of unit vectors whose resultant vector has the same direction. Again, magnitude is ignored. If this is the case, the cell will be split in the direction of these sub-vectors instead.

I think this is much more intuitive than my previous algorithm, and I hope it will have a similar behavior.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Attract and Repel

Post by Scorbie » August 26th, 2015, 10:02 am

Actually, Repel3 tried to simulate that behavior, and I think I can work on that when I have some free time (which will be around next week.) Although the rule becomes slightly less intuitive, I was interested in the Attract and Repel rule as it already has a collection of interesting things. Therefore I'd like to emulate, share , and explore your Attract and Repel rule first (after I have free time)

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 26th, 2015, 2:50 pm

SeanBP wrote:All eight neighbors around the cell will be treated as unit vectors with angles 0, 45, 90, 135, 189, 180, etc. The magnitude of the resultant vector is ignored, and the direction is the direction of push. If the angle of the resultant vector does not fall exactly on one of eight angles, it will be split into the smallest number of unit vectors whose resultant vector has the same direction. Again, magnitude is ignored. If this is the case, the cell will be split in the direction of these sub-vectors instead.
So, Repel3 with corner vectors at +-(sqrt(2)/2)?

Code: Select all

@RULE RepelTrig

@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 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}

aux,a1,a2,a3,a4,a5,a6,a7,a8,0

0,s,a2,a3,a4,a5,a6,a7,a8,1
0,a1,sw,a3,a4,a5,a6,a7,a8,1
0,a1,a2,w,a4,a5,a6,a7,a8,1
0,a1,a2,a3,nw,a5,a6,a7,a8,1
0,a1,a2,a3,a4,n,a6,a7,a8,1
0,a1,a2,a3,a4,a5,ne,a7,a8,1
0,a1,a2,a3,a4,a5,a6,e,a8,1
0,a1,a2,a3,a4,a5,a6,a7,se,1

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,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,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,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,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,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,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,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,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,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,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,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,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,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,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
More explosive, and lots more of the thickness-2 stripes agar. Also, smaller puffers:

Code: Select all

x = 3, y = 3, rule = RepelTrig
2A$2.A$2.A!
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 26th, 2015, 5:20 pm

@Blinker
That looks interesting, could you include it with the D0 rule? Applying the D0 rule to any of the Repel rules allows for very complex machines aside from puffers.

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 26th, 2015, 6:10 pm

RepelTrig_D0.rule here.

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
Last edited by BlinkerSpawn on August 29th, 2015, 8:44 am, edited 2 times in total.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 26th, 2015, 11:25 pm

Very interesting, the common spaceships in the previous versions are impossible, and are replaced by similar ones moving diagonally. Also, I found a couple space-fillers.

Code: Select all

x = 88, y = 130, rule = RepelTrig_D0
2$3.2A$2.A3.2A$2.A2.A3.A$5.A$3.2A2.2A2.2A.A.A2.2A2.2A2.2A2.2A10.2A2.
2A2.2A2.2A2.2A10.2A2.2A2.2A2.2A$2.A4.A.A7.A3.A3.A3.A3.A7.A3.A3.A3.A3.
A3.A7.A3.A3.A3.A3.A$2.A2.2A2.A4.A6.A3.A3.A3.A11.A.A.A3.A3.A3.A11.A3.A
3.A3.A$8.3A.A3.A2.A3.A2.2A23.A2.2A2.2A2.A4.A2.2A3.A2.2A$3.2A2.A2.A8.
2A2.A4.A3.A11.A6.2A3.A2.A2.A5.A2.2A2.A4.A3.A$2.A3.A3.A.3A4.2A3.2A4.A
22.A2.A13.A2.A2.2A$2.A2.2A9.A2.A2.A2.3A17.2A3.A2.A4.A2.A8.A2.2A5.A$6.
3A4.A2.A.A3.3A.A16.A3.A8.A2.A8.A8.A2.A$3.2A4.2A.3A.A2.A7.A2.A16.A.A2.
2A.A8.A3.A.3A$2.A3.2A2.A5.A5.A27.A2.A8.A2.3A4.3A2.A$2.A2.2A2.A9.A2.A
2.A.A16.A.A5.A$5.A6.A2.3A29.A.A16.A2.A$3.A4.5A2.A6.A24.A14.A2.A3.A3.A
$6.A5.2A4.2A5.A26.A10.A2.A$5.A2.A6.A3.2A24.2A2.A9.A2.A3.2A$8.A2.A10.A
2.A17.A19.A4.A$9.3A.A4.A2.A2.A15.2A.A3.3A$12.A.A2.A20.A5.A6.A$8.A6.A
19.A2.A2.2A2.A17.A4.A$8.A32.2A2.A.A$9.A.2A23.A.2A$15.2A2.A12.A6.A4.2A
3.A$8.A39.A$8.A27.2A4.A$9.A.A37.A$45.A3.A$8.A38.2A$8.A$9.A.A2$8.A$8.A
3.A$9.2A2$8.A2.A$8.A5.A26.A$9.A.A2.A2.A$11.A2.2A26.A$8.A9.A19.A3.A$8.
A3.3A3.A.A19.2A$9.3A$13.2A.A$8.A$8.A8.A$9.2A.3A.A2$8.A3.A2.A$8.A3.A$
9.2A11.A$14.2A.A$8.A3.A5.A.A2.A$8.A2.A.A3.2A.A2.2A2.A$9.A.A.A.2A3.A7.
A$16.A2.A$8.A2.A4.A2.A5.A2.A$8.A3.A2.A4.A28.2A$9.2A3.2A2.3A3.A2.2A18.
A3.A$11.A3.A2.A.A2.A27.A$8.A9.A$8.A3.3A3.A2.A2.A25.A$9.2A4.A$11.A3.A
2.A2.A$8.A2.A2.2A4.A.A$8.A3.A$9.2A3.A2.A$11.A6.2A.A$8.A2.A2.2A5.2A$8.
A6.A$9.A.2A3.A.A$18.2A2.A$8.A2.2A2.A4.A2.A$8.A4.2A5.A$9.2A2.A.A.A2.A
2$8.A3.A$8.A2.A2.2A.A2.A2.A$9.A.A.2A2.A$11.A8.A$8.A7.A$8.A3.A10.A.2A$
9.2A2.2A3.A4.A3.A$11.A3.2A10.A$8.A2.A8.A3.A$8.A4.A4.A7.A$9.A.A.A4.A
15.A2.A$12.A.3A20.A23.A$8.A2.2A$8.A4.A2.A.A19.A23.A$9.2A2.2A19.A3.A
19.A3.A$17.A18.2A22.2A$8.A2.2A$8.A5.A3.A$9.A.A2.A2.A2.A$11.A2.A.A$8.A
2.A$8.A3.A3.A$9.2A2.2A.A2.A$11.A$8.A2.A$8.A$9.A.2A2$8.A$8.A3.A$9.2A2$
8.A$8.A$9.A.A2$8.A$8.A3.A$9.2A$12.A$8.A$8.A$9.A.2A48.2A$59.A3.A$8.A
54.A$8.A3.A$9.2A51.A!

Code: Select all

x = 31, y = 30, rule = RepelTrig_D0
3$4.2A$3.A3.A.2A2.2A2.2A2.2A2.2A2.2A$3.A3.A3.A3.A3.A3.A3.A$5.2A2.A.A
3.A3.A3.A3.A$4.A3.A$7.2A3.A.A.A.A3.A.A.A3.A$4.A.A3.A.A6.A7.A$6.A4.A3.
A3.A7.A$9.A$6.2A.A2.A5.A5.A.A$6.A2.A2.A2.A5.A2.A2.A$27.A$10.A10.A$6.A
2.A14.A.A$27.A$24.A2.A2$26.A$24.A2.A$27.A2$21.A2.A3.A$24.A3.A$26.2A!

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 27th, 2015, 10:49 am

8 "glider" synthesis of a growing ship:

Code: Select all

x = 43, y = 45, rule = RepelTrig_D0
6.A$6.A$4.2A4$13.A6.A$13.A6.A$14.2A5.2A$11.A$11.A$9.2A2$6.2A$8.A$8.A
19$41.2A$40.A$40.A4$2A$2.A$2.A38.2A$40.A$40.A!
There were more syntheses but a bug was fixed in the rule and the change caused them to not work.
Last edited by BlinkerSpawn on August 29th, 2015, 8:49 am, edited 2 times in total.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

wildmyron
Posts: 1545
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Attract and Repel

Post by wildmyron » August 27th, 2015, 11:00 am

Unfortunately, it seems that both the two RepelTrig rules as well as Repel2 and Repel3 suffer from the same bug that my original Repel rule also suffered from - occupied cells in which a different particle is moving in to remain empty. I solved this with two changes to phase 2:

1) The "aux,a1,a2,a3,a4,a5,a6,a7,a8,0" transition should be at the end of phase 2, and
2) The phase two transitions should be of the form a0, ... ,1 where a0={0,aux}

I also put phase 2 after phase 1 but I don't believe this is necessary for correct operation of the rule.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 29th, 2015, 2:15 am

Can someone post the Repel rules with the bug fix? I'm afraid I'm too much of a novice to know how to add in the changes. Actually, could someone post a list of all versions of Repel, with a comment of what makes each of them unique? I will edit my first post to include them. So many different versions are buzzing around, we need to get organized.

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 29th, 2015, 8:41 am

Edited the post with the .rule file to implement bugfix.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
Aieou
Posts: 8
Joined: August 30th, 2015, 6:31 am

Re: Attract and Repel

Post by Aieou » August 30th, 2015, 7:47 pm

This rule sort of reminds me of this:
http://www.srm.org.uk/papers/comprepel.pdf
Except without fixed elements and with splitting added.

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 30th, 2015, 9:49 pm

Aieou wrote:This rule sort of reminds me of this:
http://www.srm.org.uk/papers/comprepel.pdf
Except without fixed elements and with splitting added.
Is this rule being emulated correctly?

Code: Select all

@RULE RepelWire

@TABLE
n_states:8
neighborhood:vonNeumann
symmetries:none

var t = {1,2}
var a1 = {0,1,2,3,4,5,6,7}
var a2 = a1
var a3 = a1
var a4 = a1
var w = {4,5,6,7}

1,t,0,0,0,6
1,0,t,0,0,7
1,0,0,t,0,4
1,0,0,0,t,5
1,a1,a2,a3,a4,3
0,6,a2,a3,a4,1
0,a1,7,a3,a4,1
0,a1,a2,4,a4,1
0,a1,a2,a3,5,1
3,a1,a2,a3,a4,1
w,a1,a2,a3,a4,0

@COLORS
1 255 127 0
2 0 0 255
3 230 115 0
4 255 255 0
5 255 255 0
6 255 255 0
7 255 255 0
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » August 31st, 2015, 4:51 pm

Interesting, it seems like someone thought of a similar idea. The idea of fixed cells seems helpful, especially for constructing machines. Although, I'm unclear how the rule deals with cells getting pushed not directly onto one of the eight squares without splitting.

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Attract and Repel

Post by BlinkerSpawn » August 31st, 2015, 5:09 pm

SeanBP wrote:Interesting, it seems like someone thought of a similar idea. The idea of fixed cells seems helpful, especially for constructing machines. Although, I'm unclear how the rule deals with cells getting pushed not directly onto one of the eight squares without splitting.
Any cell that would be pushed in multiple directions doesn't move.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Attract and Repel

Post by Saka » September 3rd, 2015, 5:59 am

Weird stuff:
1. Growing ship

Code: Select all

x = 45, y = 55, rule = RepelTrig_D0
12$37.HJ$39.NJ$41.K$34.PC.HD2.F$35.M2$31.PC.HD.HD$32.M2$28.PC.HD.HD$
29.M2$25.PC.HD.HD$26.M2$22.PC.HD.HD$23.M2$19.PC.HD.HD$20.M2$16.PC.HD.
HD$17.M2$13.PC.HD.HD$14.M2$10.PC.HD.HD$11.M2$2.B4.PC.HD.HD$2.F5.M2$4.
PC.HD.HD$5.M2$7.HD!
2. weird grey-rake thing:

Code: Select all

x = 59, y = 49, rule = RepelTrig_D0
5$24.QD$22.QM$20.QM$18.QM4.QD$16.QM4.QM$14.QM4.QM$12.QM4.QM4.QD$11.P
4.QM4.QM$11.F2.ID4.QM$14.H2.QCM4.QD$12.B.GEGM4.QD$12.F6.H.GM$24.QD.HJ
$14.H2.D4.QM5.E2.B$19.ICM10.L2.B$19.N4.ICIBCD.G2.G.E$24.N2.F2$20.HD
10.H.D.HD$24.C2.B$23.H3.F2.I2.B2.Q$24.E6.D.I2.H2D$27.B2.G2.GL.N$27.F
10.C$31.C4.HM$29.HM3.Q4.Q$34.GL3.GL$37.HM7.C$45.G$43.C3.QD$42.P3.P$
42.F3.QK$45.ONE3$43.C2.C7.C$42.G2.P6.HM$45.F9.B$55.L$42.HD9.HM!
3.Strange rake:

Code: Select all

x = 57, y = 23, rule = RepelTrig_D0
23.B$23.F29.HD$11.H.D$16.B.PBCD29.J3.C$19.F30.IL2.G$9.Q.D34.I2.ON5.B$
8.G35.C2.K3.K4.L$16.I2.C23.P7.O2.HM$13.B2.HDGE23.O3.O4.K$8.2QC2.I2.G
27.HJ2.ND2.F$7.G.NE2.PC.L5.B8.C2.B10.NL$4.B7.G.NM2.H.D.F7.G3.F7.PJ5.H
D$4.O3.I34.HK$5.NJ2.E.B3.B3.B3.B3.B3.B3.B3.B3.OL$3.B3.K3.L3.L3.L3.L3.
L3.L3.L3.L3.F2.HD$B2.O3.F.HM2.HM2.HM2.HM2.HM2.HM2.HM2.HM2.PC$O3.ND36.
E$.ND39.O$43.ND2$38.B$38.O$39.ND!
4. Very large smoke:

Code: Select all

x = 28, y = 29, rule = RepelTrig_D0
7$20.HJ$18.I3.NJ$19.HJ3.K$16.QD2.GK2.F$15.G5.F$9.IK7.Q3.NJ$9.O3.B4.G.
J3.K$10.D4.PBD2.GK2.F$9.P3.F2.M4.F$5.HD2.I5.P2.B3.2D$9.HD.I2.F2.F.ID$
6.HD.N3.D6.N$12.G2.H2.D$7.B12.B$16.C3.F$7.F2.B$14.G$10.F$6.HD5.HD2$
10.PC$11.M!
5. Can someone tell me what this is?

Code: Select all

x = 54, y = 60, rule = RepelTrig_D0
22.C2.C$21.G2.G2$20.B2.B$26.Q2.I$20.I2.B2.QK2.D8.HJ$20.GEGFEGNE.P6.HD
3.K$29.F11.F$18.B$18.B.Q6BJ.QJ9.B$17.O2FN6FMFNME.D2.HD2.F$3.I$.C2.E$G
15.Q16BJ$2.H12.GN16FMEJ$36.E2$4.QBQ27BC.PC$2.I.M.N27FE2.M$2.N$35.J$6.
P2BQ24BQJ$7.F.N25FML2$37.J$7.HD6.IBQ17BJID$15.F.N17FM.M2.B$14.G25.F2$
17.I3BQ13BJ.QJ$17.O.M.N13FMFNMEJ$18.G22.E$19.K$19.F.H.IQ14BJ2.B$24.N
14FML.F$20.PC$21.M$26.H3.IQ9BJ$22.I8.NM8FML$23.E7.N$43.J$32.IJ3BQ4BQK
$32.OM.F.N5FE$33.M2$35.I2.IJBQBJ.QJ$36.E.GM.NF2M.ND2.B$46.N3.O$51.D$
38.B3.IC4.D.G$38.I3.G$38.GED4.Q4.H.D$42.F2.P2K$45.GM2.QD2.B$42.B5.B4.
L$42.F4.OE2.QM$50.P$50.L2.B$48.HM3.L$51.HM!

User avatar
SeanBP
Posts: 34
Joined: December 2nd, 2014, 12:49 am

Re: Attract and Repel

Post by SeanBP » September 3rd, 2015, 10:14 am

Saka wrote: 5. Can someone tell me what this is?

Code: Select all

x = 54, y = 60, rule = RepelTrig_D0
22.C2.C$21.G2.G2$20.B2.B$26.Q2.I$20.I2.B2.QK2.D8.HJ$20.GEGFEGNE.P6.HD
3.K$29.F11.F$18.B$18.B.Q6BJ.QJ9.B$17.O2FN6FMFNME.D2.HD2.F$3.I$.C2.E$G
15.Q16BJ$2.H12.GN16FMEJ$36.E2$4.QBQ27BC.PC$2.I.M.N27FE2.M$2.N$35.J$6.
P2BQ24BQJ$7.F.N25FML2$37.J$7.HD6.IBQ17BJID$15.F.N17FM.M2.B$14.G25.F2$
17.I3BQ13BJ.QJ$17.O.M.N13FMFNMEJ$18.G22.E$19.K$19.F.H.IQ14BJ2.B$24.N
14FML.F$20.PC$21.M$26.H3.IQ9BJ$22.I8.NM8FML$23.E7.N$43.J$32.IJ3BQ4BQK
$32.OM.F.N5FE$33.M2$35.I2.IJBQBJ.QJ$36.E.GM.NF2M.ND2.B$46.N3.O$51.D$
38.B3.IC4.D.G$38.I3.G$38.GED4.Q4.H.D$42.F2.P2K$45.GM2.QD2.B$42.B5.B4.
L$42.F4.OE2.QM$50.P$50.L2.B$48.HM3.L$51.HM!
It looks like a really complicated puffer, but I'm not sure if is permanent. At one point, it almost starts making more of itself.

Code: Select all

x = 148, y = 149, rule = RepelTrig_D0
32$14.2A$13.A3.2A$13.A2.A3.A$16.A$14.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.
2A2.2A2.2A2.2A2.2A38.2A2.2A2.2A2.2A2.2A2.2A$13.A4.A.A3.A3.A3.A3.A3.A
3.A3.A3.A3.A3.A3.A35.A3.A3.A3.A3.A3.A3.A$13.A2.2A2.A3.A3.A.A.3A.A3.A
3.A3.A3.A3.A3.A3.A39.2A2.A3.A3.A3.A3.A$19.3A3.3A.2A5.2A3.2A2.A55.A6.
2A3.2A2.A$14.2A2.A2.A2.A.A7.2A6.A2.A.A3.A3.A3.A3.A39.A4.A2.A2.A2.A.3A
.A$13.A3.A3.3A2.2A2.2A.A.A4.A62.2A.2A3.A11.A$13.A2.2A2.2A5.A2.2A2.2A
2.A2.A2.A56.A3.A3.A.A.2A2.A$16.A.2A4.A.4A3.A.A3.A2.A52.A6.2A.2A4.A5.A
.A$14.2A2.A4.2A4.A5.2A.A60.2A.A3.A2.A4.A.A$13.A4.4A.2A5.4A2.A65.A7.2A
$13.A2.2A2.A2.A2.2A.5A3.A.A2.A51.A3.A4.A2.A4.A.2A$16.A2.A.A.A5.A3.A2.
A58.A2.5A5.A7.A$14.A4.A13.A2.A67.2A.6A$14.A4.A3.A.7A.A4.A54.2A.A4.A6.
A4.A$15.A2.2A5.A2.A.5A.A51.A2.A4.A11.A$19.A.A3.A2.A42.2A26.A.4A2.A5.A
$21.2A.A3.A10.A30.A3.A12.A3.3A.A10.A2.A$15.A3.A2.4A2.A.7A33.A23.2A4.A
9.A2.A$16.A2.2A3.10A.A46.A2.A10.A2.2A.2A$24.A46.A6.A3.A2.A.8A4.A$14.
2A2.2A.2A.A10.A38.A2.A16.2A4.A$13.A3.A3.A2.12A46.A3.2A2.2A2.2A4.A.2A$
13.A9.A3.8A3.2A4.A3.A3.A20.A.2A.A.A2.A3.A2.2A2.2A2.A$17.A3.3A3.A6.A.A
12.A22.A9.2A2.2A3.A2.2A2.A$14.2A8.A2.A6.3A.A2.2A6.A19.A9.A2.A.3A4.A2.
2A2.3A$13.A3.A2.A4.A2.5A.A3.A3.A.A.2A21.A2.8A3.A3.3A.5A2.A$13.A3.A3.
2A.2A4.A6.16A18.A2.8A.A.A5.A3.A2.A$15.2A.A2.A6.A.A2.4A33.A9.A3.A10.A
2.A.A$14.A3.2A.A48.2A9.A.3A2.A.6A2.A$13.2A6.A.A5.5A3.15A.A12.A4.A.7A.
A2.2A2.2A.A.A.A$13.A2.2A3.A5.A4.A.2A.A.14A19.A.8A2.2A2.A9.A$16.A2.3A.
A3.A37.A.A2.A.A7.2A2.2A2.A5.3A$14.A.A12.2A.2A2.A.A15.A25.2A2.2A2.2A2.
A$13.A2.A16.A2.A.15A.2A7.A2.2A.6A.3A5.2A2.2A2.A$19.5A.A.2A.A2.A4.A2.
15A.A5.A8.3A2.A3.A2.2A2.2A3.2A3.A$16.A2.A10.A3.5A3.A24.A5.3A.A2.2A2.
2A2.2A$20.A2.A3.A2.2A2.A2.5A18.A5.5A3.A2.3A5.A3.2A$20.A4.A.A2.A2.2A2.
2A2.16A.A6.2A3.3A.A2.A6.2A2.2A$20.A3.A2.A2.A6.2A2.2A.14A2.A.2A2.2A2.
2A8.A9.2A$21.2A8.A2.A2.2A2.2A2.A16.2A2.2A2.A3.2A.2A3.A2.2A.A3.A$34.A
2.2A2.2A2.A16.A3.2A2.2A2.2A16.A$32.A4.24A.2A2.2A2.2A8.A4.A$31.A2.A.A
4.A3.16A.2A2.2A2.2A2.A2.3A2.A.2A3.A.A$31.A2.A27.2A2.2A2.2A2.2A16.A$
14.2A15.A5.2A.7A15.2A2.2A2.2A2.2A.A2.A$13.A3.2A18.24A.2A2.2A2.A4.A3.A
2.2A10.A$13.A2.A3.A26.17A2.2A2.2A7.A2.A6.A.2A2.A2.A$16.A3.A2.A8.2A29.
A2.2A2.A3.A23.A$14.2A2.A.A.A.2A6.16A18.2A2.2A12.A4.A2.A2.A$13.A4.A22.
A.4A.17A.2A2.2A3.A.A.2A.A.A4.A2.A2.A$13.A2.2A4.A25.A3.3A.18A.2A.8A5.
7A.A$19.A2.A2.2A.2A3.9A6.2A2.A45.A$14.2A2.2A2.A5.5A.13A.5A$13.A3.A3.
2A8.A11.2A.3A3.22A.A.10A3.6A.A3.A$13.A2.2A4.4A.A15.2A2.A7.45A.2A$16.
2A.7A.19A.6A2.A$14.2A.A19.A.A6.2A2.3A.A46.A$13.A18.A2.A15.A2.46A.2A$
13.A2.17A2.A.A2.6A.A3.A2.49A$17.A2.2A6.A3.A2.A.A.2A3.A5.A$14.A.2A2.2A
2.A3.A3.A2.A3.A4.A2.2A.6A48.2A$16.2A6.A.A3.3A2.A3.3A.A2.A3.A3.49A.A$
19.A.A2.A2.A.A2.A2.A2.2A2.2A2.A4.A2.A2.49A$18.3A.A.A2.A.A2.A2.A2.2A2.
2A2.7A$18.A3.A4.A.A5.A2.A5.A7.2A.2A.A48.A$23.4A2.A2.2A.A2.2A.2A3.A5.A
5.48A.A$19.2A.A3.A8.A2.A8.6A6.50A.A$26.A2.A2.A2.A2.A4.A.A2.2A2.2A.3A
52.A$30.A2.A.A2.2A.2A.2A2.2A2.2A2.2A52.A$25.A12.A6.A2.2A2.2A2.2A.51A.
A$25.A3.A5.A2.2A.A2.2A2.2A2.2A2.2A2.49A$26.2A2.A2.A.A3.3A2.2A2.2A2.2A
2.2A2.A$41.A2.2A2.2A2.2A2.2A2.A50.A$40.2A2.2A2.2A2.2A2.2A2.48A2.A$44.
2A2.2A2.2A2.2A2.A.44A.A2.A$40.2A2.2A2.2A2.2A2.2A2.A$45.A2.2A2.2A2.2A
2.A$41.2A.2A2.2A2.2A2.2A2.A.44A.A$44.2A2.2A2.2A2.2A2.A.26A.A$40.A6.3A
2.2A2.2A46.A$49.A2.2A2.2A2.A$53.A2.2A2.A.26A$37.A2.A2.A8.2A2.2A2.A7.A
.15A$47.A5.A2.2A2.A4.A20.A$53.A2.2A2.A$34.2A.A2.A2.A9.A2.A11.A.14A$
50.A2.A2.2A13.A.8A.A$37.A20.A23.A$28.A2.2A.2A.4A7.A2.A.A2.A13.2A$50.
3A18.A.8A$27.A6.A.A36.2A$27.A3.2A.3A2.A8.A4.A21.A3.A$28.2A20.A2.A$31.
A3.A2.A$31.A3.A$32.2A!


These giant triangle-shaped space ships appear pretty often, I'm officially calling them star destroyers.

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Attract and Repel

Post by Saka » September 5th, 2015, 6:45 am

Two "nonstandard" diagonal ships:

Code: Select all

x = 7, y = 7, rule = RepelTrig_D0
2.HD$6.B$B2.B2.L$F.H.DM$3.F$3.L$.HM!

Code: Select all

x = 7, y = 7, rule = RepelTrig_D0
2.HD2$B2.B2.B$F2.F2.L$5.P$5.L$3.HM!
EDIT:
Take a look at this star destroyer:

Code: Select all

x = 60, y = 54, rule = RepelTrig_D0
34A.2A$.A.34A.A$.A36.A2$3.34A.A.A$3.34A.A$4.A$40.A$5.33A2.A$5.2A.31A.
A$41.A$6.A$6.A.30A.2A2.A$6.2A2.A.30A.A$10.A$43.A$12.32A$19.A.22A.A$
11.A2.A2$20.23A.A$18.A2.A.22A2$21.A24.A$21.A2.22A$22.A2.A.21A$25.A$
24.A2.A$24.A3.18A.A$34.13A$26.2A2.A$48.A$35.12A.2A$29.A5.2A.10A.A$49.
A$36.A$36.A.10A.A$38.2A2.A.9A$55.A$53.A$42.A.8A2.A$43.A2.A2.3A2.A2.A$
42.A11.A$49.2A3.A$46.A2.A2.3A3.A$42.A2.A3.A2.3A3.A$47.A5.A2.A$49.A.2A
2.2A2.A$51.A2.A4.A$47.A3.A2.A2.2A$56.A$52.A3.A2.A$54.2A3.A$57.2A!
It makes a grid of spaceships, then fires out spaceships that can just BARELY make their way through the triangular grid of gliders, and some use sparks to "consume" other gliders, but there are ones the don't make it out, I'm calling this particular one the "Natural Selection/Evolutionary Star destroyer"

Post Reply