Thread for your script-related questions

For scripts to aid with computation or simulation in cellular automata.
User avatar
Banananananan
Posts: 123
Joined: May 5th, 2024, 8:52 pm

Re: Thread for your script-related questions

Post by Banananananan » May 18th, 2024, 4:04 pm

am i supposed to use visual studio code for gfind because using the tutorial i cant find the rule thing.

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 10:53 am

i use chrome os and cant do that linux stuff everyone always talks about. are there any search programs that run in-browser and support isotropic rules?
just a blue creeper that occasionaly makes a post here or there

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » May 28th, 2024, 11:05 am

tommyaweosme wrote:
May 28th, 2024, 10:53 am
i use chrome os and cant do that linux stuff everyone always talks about. are there any search programs that run in-browser and support isotropic rules?
rLifeSrc can help you, but a bit slow due to being online.

If I have enough time, I would write a hybrid search program on Scratch called SLS (ScratchLifeSrc).
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 12:17 pm

b-engine wrote:
May 28th, 2024, 11:05 am
tommyaweosme wrote:
May 28th, 2024, 10:53 am
i use chrome os and cant do that linux stuff everyone always talks about. are there any search programs that run in-browser and support isotropic rules?
rLifeSrc can help you, but a bit slow due to being online.

If I have enough time, I would write a hybrid search program on Scratch called SLS (ScratchLifeSrc).
i cant do scratch
just a blue creeper that occasionaly makes a post here or there

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » May 28th, 2024, 7:32 pm

tommyaweosme wrote:
May 28th, 2024, 12:17 pm
i can't do scratch
Well, I can convert sb3 to html, and optionally uploading it online. (By the way, the "hybrid" means you can either search by soups, brute force or random catalysts.)
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 7:42 pm

neat! tysm
edit: you will want it to convert it to txt or else the forum engine thinks your suspicious activity
just a blue creeper that occasionaly makes a post here or there

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » May 28th, 2024, 7:46 pm

tommyaweosme wrote:
May 28th, 2024, 7:42 pm
neat! tysm
edit: you will want it to convert it to txt or else the forum engine thinks your suspicious activity
If so, I decide to upload the html online (maybe into a document in Google Docs or into a website).
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 7:49 pm

b-engine wrote:
May 28th, 2024, 7:46 pm
tommyaweosme wrote:
May 28th, 2024, 7:42 pm
neat! tysm
edit: you will want it to convert it to txt or else the forum engine thinks your suspicious activity
If so, I decide to upload the html online (maybe into a document in Google Docs or into a website).
google docs pls. and also you can share the txt through forums
just a blue creeper that occasionaly makes a post here or there

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » May 28th, 2024, 7:52 pm

tommyaweosme wrote:
May 28th, 2024, 7:49 pm
google docs pls. and also you can share the txt through forums
Played with Docs then I found no way to embed a html. I can share as gz through.
EDIT to prevent clutter: I know how to.
Last edited by b-engine on May 28th, 2024, 10:30 pm, edited 1 time in total.
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 10:30 pm

b-engine wrote:
May 28th, 2024, 7:52 pm
tommyaweosme wrote:
May 28th, 2024, 7:49 pm
google docs pls. and also you can share the txt through forums
Played with Docs then I found no way to embed a html. I can share as gz through.
just change the file extension to txt and share it on fourms
just a blue creeper that occasionaly makes a post here or there

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » May 28th, 2024, 10:37 pm

b-engine wrote:
May 28th, 2024, 11:05 am
tommyaweosme wrote:
May 28th, 2024, 10:53 am
i use chrome os and cant do that linux stuff everyone always talks about. are there any search programs that run in-browser and support isotropic rules?
rLifeSrc can help you, but a bit slow due to being online.
Perhaps tommyaweosme can run multiple RLS to achieve faster speed?
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 28th, 2024, 10:46 pm

no rls approval from parents yet. have to wait until tommorow
EDOT by tommyaweosme: approval! :3
just a blue creeper that occasionaly makes a post here or there

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » May 29th, 2024, 3:56 pm

rls isnt soup-search

i want scratchls pls
just a blue creeper that occasionaly makes a post here or there

vilc
Posts: 70
Joined: March 20th, 2024, 4:36 pm

Re: Thread for your script-related questions

Post by vilc » May 30th, 2024, 11:43 am

I would like to speedup my B3/S23 implementation for small bounded grids using optimal logic to compute the next cell state. The lifelib article on LifeWiki claims :
Tom Rokicki mentioned that Conway's Game of Life can be computed in 19 Boolean operations (amortized)
How can I perform this ? I guess the answer is in genera/b3s23life.py in lifelib, but I find the code quite difficult to read. A relevant extract might be this, from the abovementioned file (for CUDA) :

Code: Select all

#define ADVANCE_TILE_64(a, b, tmp, dst) {              \\
    uint64_cu al = ROTL64(a, 1);                       \\
    uint64_cu ar = ROTR64(a, 1);                       \\
    uint64_cu xor2 = al ^ ar;                          \\
    (dst)[threadIdx.x] = xor2 ^ a;                     \\
    __syncthreads();                                   \\
    uint64_cu uda = (dst)[u] & (dst)[d];               \\
    uint64_cu udx = (dst)[u] ^ (dst)[d];               \\
    uint64_cu sv = (xor2 & udx) | uda;                 \\
    uint64_cu pt8 = xor2 ^ udx;                        \\
    uint64_cu sh = al & ar;                            \\
    (tmp)[threadIdx.x] = sh | (a & xor2);              \\
    __syncthreads();                                   \\
    uint64_cu pt4 = ((tmp)[u] ^ (tmp)[d]) ^ (sh ^ sv); \\
    uint64_cu xc3 = ((tmp)[u] | (tmp)[d]) ^ (sh | sv); \\
    b = pt4 & xc3 & (pt8 | a);                         \\
}
What do "a", "b", "tmp" and "dst" refer to here and what is this mysterious "threadIdx.x" ? (I have no CUDA knowledge)

A more general question : have 19 operations been proven to be optimal, using logic functions NOT, OR, AND and XOR plus temporary storage ?

User avatar
tommyaweosme
Posts: 1139
Joined: January 15th, 2024, 9:37 am
Location: platformer mode
Contact:

Re: Thread for your script-related questions

Post by tommyaweosme » June 2nd, 2024, 12:54 pm

can i use my own key for catagolue without needing to use my google account? like #tommy ?
just a blue creeper that occasionaly makes a post here or there

User avatar
Tawal
Posts: 373
Joined: October 8th, 2023, 7:20 am

Re: Thread for your script-related questions

Post by Tawal » June 16th, 2024, 4:23 am

Hello,

It's about the place-edgeshooters.py from Goldtiger997

Any matters to run it.
But where is the full edge-shooters list ?

Thanks a lot :)
Alone we go faster … Together we go further …

Avatar's pattern
Possible uses found by Dave Green
Jormungant's explanation and uses

Currently investigating signal collisions … (stand by)

User avatar
TigerCub414
Posts: 13
Joined: March 25th, 2024, 9:51 pm

Re: Thread for your script-related questions

Post by TigerCub414 » June 23rd, 2024, 5:22 pm

Where can I download software that can make 1G seeds and slow salvo recipes and documentation on how to use it? I have a computer running Mac OS, so I need software that can natively run on it.

User avatar
dvgrn
Moderator
Posts: 10886
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn » June 23rd, 2024, 7:52 pm

TigerCub414 wrote:
June 23rd, 2024, 5:22 pm
Where can I download software that can make 1G seeds and slow salvo recipes and documentation on how to use it? I have a computer running Mac OS, so I need software that can natively run on it.
Golly works fine on a Mac.

The Python script that is farthest along at producing 1G seeds uses lifelib rather than Golly, though. There's a tutorial in the "See also" section of that LifeWiki lifelib link that might be of some help getting it installed. Ask questions here if you run into trouble (or maybe we'll make a dedicated "lifelib installation" thread or something).

Follow the instructions carefully: I can tell you from experience that it's possible to get the installation of lifelib royally messed up, in a way that's not easy to undo!

Very similarly, the "classic" program for creating slow salvos is called slmake. There's a tutorial link in that wiki article, too.

Tutorials can always be improved, so if you run into puzzling parts of the instructions, please feel free to ask for help, and then maybe suggest improvements to those areas.

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » June 29th, 2024, 7:04 am

How to use RuleTableToTree.py? I made a .rule file, but it wants me to select .table file instead. What's .table file? I can't get it to work.
Last edited by b-engine on July 2nd, 2024, 8:19 am, edited 1 time in total.
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
dvgrn
Moderator
Posts: 10886
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn » June 29th, 2024, 8:01 am

b-engine wrote:
June 29th, 2024, 7:04 am
How to use RuleTableToTree.lua? I made a .rule file, but it wants me to select .table file instead. What's .table file? I can't get it to work.
A .table file contains just the @TABLE section of a .rule file -- see https://golly.sourceforge.io/Help/formats.html#deprecated.

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » June 29th, 2024, 8:30 am

dvgrn wrote:
June 29th, 2024, 8:01 am
A .table file contains just the @TABLE section of a .rule file -- see https://golly.sourceforge.io/Help/formats.html#deprecated.
I removed every text from the .table file, but it still doesn't work. Anything else to consider?
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » July 2nd, 2024, 8:19 am

b-engine wrote:
June 29th, 2024, 7:04 am
How to use RuleTableToTree.py? I made a .rule file, but it wants me to select .table file instead. What's .table file? I can't get it to work.
I couldn't get RuleTableToTree to work anyway. Any modification tailored for .rule files?
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
dvgrn
Moderator
Posts: 10886
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn » July 2nd, 2024, 10:48 am

b-engine wrote:
June 29th, 2024, 8:30 am
I removed every text from the .table file, but it still doesn't work. Anything else to consider?
It's a lot easier to solve this kind of thing if you quote your actual .table file text. Otherwise we're just guessing about what exactly you did, and often our assumptions will be different from your assumptions.

One way to read your statement that you "removed every text", for example, would be that you took out the specifications of number of states and neighborhood. If you read the ReadRuleTable.py code in the glife module, you can see that it expects to read and return that information.

Conversely, you might have left in the @TABLE line. The code wouldn't expect that to be there, so it might try to read it as a transition, which might fail (not sure). It would be helpful if your description of what's going wrong could be a lot more specific than just "still doesn't work".

User avatar
b-engine
Posts: 1932
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on earth

Re: Thread for your script-related questions

Post by b-engine » July 3rd, 2024, 5:37 am

dvgrn wrote:
July 2nd, 2024, 10:48 am
b-engine wrote:
June 29th, 2024, 8:30 am
I removed every text from the .table file, but it still doesn't work. Anything else to consider?
It's a lot easier to solve this kind of thing if you quote your actual .table file text. Otherwise we're just guessing about what exactly you did, and often our assumptions will be different from your assumptions.

One way to read your statement that you "removed every text", for example, would be that you took out the specifications of number of states and neighborhood. If you read the ReadRuleTable.py code in the glife module, you can see that it expects to read and return that information.

Conversely, you might have left in the @TABLE line. The code wouldn't expect that to be there, so it might try to read it as a transition, which might fail (not sure). It would be helpful if your description of what's going wrong could be a lot more specific than just "still doesn't work".
The original ruletable was this:

Code: Select all

@RULE B+Univ
@TABLE
n_states:8
neighborhood:Moore
symmetries:rotate4reflect
# v1.0
Var w={0,1} # Empty and blue
Var w1=w
Var w2=w
Var a={0,1,2,3,4,5,6,7} # All cells
Var a1=a
Var a2=a
Var a3=a
Var a4=a
Var a5=a
Var a6=a
Var a7=a
Var b={0,1,3,5} # Sheath-type
Var b1=b
Var b2=b
Var b3=b
Var b4=b
Var b5=b
Var b6=b
Var b7=b
Var c={0,1,2,4,5,6,7} # All cells except red
Var c1=c
Var c2=c
Var c3=c
Var c4=c
Var c5=c
Var c6=c
Var c7=c
var s={2,4,6,7} # Signal heads

0,s,1,5,1,0,1,5,1,7 # Color changer
0,7,1,5,5,0,5,5,1,4
0,4,1,5,5,0,5,5,1,2
0,2,1,5,5,0,5,5,1,6

5,0,5,0,5,0,0,0,0,3 # T-ship
0,5,0,5,0,5,0,0,0,3
0,0,5,3,5,0,0,0,0,3
3,0,5,3,5,0,0,0,0,3
3,5,0,0,0,5,0,0,0,3

0,2,5,0,0,0,0,0,0,1 # Make FIRE elbow
1,s,5,0,a,a1,a2,a3,a4,0 # Delete blue after FIRE
0,0,5,4,3,0,0,0,0,5 # Switch magenta
0,5,5,7,3,0,0,0,0,7 # Make new elbow usable
5,1,0,0,6,5,a,a1,a2,5
5,4,5,0,0,0,0,0,a,0 # Kill magenta after switch
0,0,3,2,5,0,0,0,0,3 # Make new hand
0,4,5,0,0,0,0,0,0,5 # Make DO elbow
0,0,3,s,5,0,a,a1,a2,s # Signal make turn on elbow
0,5,a,0,6,0,a1,a2,a3,5 # Pull magenta
5,0,5,7,3,a,a1,a2,a3,5 # Keep magenta after making abnew magenta
5,7,5,c,a1,a2,a3,a4,a5,0 # Kill magenta after creating one using cyan
5,5,6,3,0,0,a,a1,a2,0 # Kill magenta in FIRE elbow
0,6,5,5,0,1,a,a1,a2,6 # Keep white in FIRE elbow
0,6,5,5,0,a,a1,a2,a3,0 # Kill white after pulling
5,5,0,0,6,5,a,a1,a2,5 # Keep magenta if there's a cell next to to it
5,5,6,0,1,a,a1,a2,a3,5 # Keep magenta in FIRE elbow
5,5,6,0,a,a1,a2,a3,a4,0 # Kill magenta
0,7,5,0,0,0,0,0,0,3 # Push action from Sticky
0,3,3,5,a3,a,a1,a2,0,5 # Add magenta
5,3,3,0,a,a1,a2,0,0,0 # Kill magenta
0,s,c,a,a1,a2,a3,a4,c1,s # Signal propagation
0,s,3,a,a1,a2,a3,a4,1,s # Signal splits
0,s,3,1,a,a1,a2,1,a3,s # Signal splits
s,a,a1,a2,a3,a4,a5,a6,a7,3 # Red always decay from head
3,a,a1,a2,a3,a4,a5,a6,a7,0 # Red always die
@NAMES
0 Empty
1 Sheath
2 FIRE/MKARM
3 Signal tail
4 DO/SWITCH
5 Hand/elbow
6 PULL/CLEAR
7 PUSH/ADD
@COLORS
1 0 0 255
2 0 255 0
3 255 0 0
4 255 255 0
5 255 0 255
6 255 255 255
7 0 255 255
The error after attempting to upload the @TABLE section of it gives:

Code: Select all

Wrong number of entries on line: Var w={0,1} (expected 10)
b-rules100th post: 18 November 2023 1000th post: 8 March 2024 10000th post:

User avatar
dvgrn
Moderator
Posts: 10886
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn » July 3rd, 2024, 7:18 am

b-engine wrote:
July 3rd, 2024, 5:37 am
The error after attempting to upload the @TABLE section of it gives:

Code: Select all

Wrong number of entries on line: Var w={0,1} (expected 10)
RuleTableToTree.py supports variables, but "Var" isn't standard syntax. Try changing all of those to "var". Apparently Golly does automatic conversion to lowercase, but nobody thought to include that in RuleTableToTree.py.

Code: Select all

        elif line[0:4]=='var ':
            line = line[4:] # strip var keyword

Post Reply