Thread for your script-related questions

For scripts to aid with computation or simulation in cellular automata.
User avatar
Anivec
Posts: 1984
Joined: January 28th, 2022, 7:18 pm
Location: In 4.3 miles, take a right onto Exit 54

Re: Thread for your script-related questions

Post by Anivec »

Out of curiosity, does there exist a GPU accelerated version of catforce, I’m assuming not because there is currently not mention of such a script. Is someone willing to make one if necessary?
User avatar
Banananananan
Posts: 236
Joined: May 5th, 2024, 8:52 pm

Re: Thread for your script-related questions

Post by Banananananan »

is there a python script of hacked apgsearch 1.x i can use in replit?
:oops:
User avatar
Vort
Posts: 248
Joined: May 14th, 2024, 6:35 am

Re: Thread for your script-related questions

Post by Vort »

I want to know, which guns in collection (in directory full of rle files) contain specific object (Rich's p16 for example).
Is there a program that allows to do such search?
If not, I plan to make one.

upd: Done.
Last edited by Vort on August 10th, 2024, 3:11 pm, edited 1 time in total.
User avatar
dvgrn
Moderator
Posts: 12023
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn »

Vort wrote: August 10th, 2024, 7:21 am I want to know, which guns in collection (in directory full of rle files) contain specific object (Rich's p16 for example).
Is there a program that allows to do such search?
If not, I plan to make one.
There's some Python code in this "recognizer" folder that could be adapted to do that task fairly well -- but not particularly quickly.

A much more efficient option would be lifelib's pattern-matching functionality. Documentation for some lifelib functions is still somewhat sparse and potentially puzzling, but there are code snippets like this one available that show how it works.
User avatar
aFewTrafficLights
Posts: 10
Joined: August 7th, 2024, 2:55 pm
Location: one or more TCP packets sent to your computer; recently moved from ConwayLife.com's servers.

Re: Thread for your script-related questions

Post by aFewTrafficLights »

for whatever reason, my ikpx2 script that i downloaded keeps outputting this error when i try to run "./recompile.sh" it outputs this error message:

Code: Select all

grep: warning: stray \ before -
Rule unspecified; assuming b3s23.
Updating submodules...
./recompile.sh: line 15: git: command not found
any help on this?
well i do not know what to put here so i guess i could put this here
User avatar
dvgrn
Moderator
Posts: 12023
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn »

aFewTrafficLights wrote: September 14th, 2024, 7:27 pm for whatever reason, my ikpx2 script that i downloaded keeps outputting this error when i try to run "./recompile.sh" it outputs this error message:

Code: Select all

grep: warning: stray \ before -
Rule unspecified; assuming b3s23.
Updating submodules...
./recompile.sh: line 15: git: command not found
any help on this?
The last line says that you don't have 'git' installed. Do you have git installed? If not, how did you download ikpx2?

If you downloaded ikpx2 by any other method than cloning the ikpx2 repository, then I'd recommend deleting everything and starting over and doing that. There isn't a specific LifeWiki tutorial on using Git to clone ikpx2, but it's the same process for any Git repo. See the notes in Tutorials/LLS but substitute the ikpx2 repository for the LLS one.

The ikpx2 quick start guide is maybe a little _too_ quick, since it doesn't mention starting by cloning the repo.

You'll need to have git and (based on a quick review of this thread) g++ installed, and then I think the submodule install will grab the rest of what you need. I haven't tried this recently, so maybe someone else can correct me. Really maybe the thing that will solve the most problems is

sudo apt-get install build-essential

... but you'll need to be able to follow the first few steps in the LSS tutorial before you'll have a Cygwin or WSL2 or other Linux-ish window open where that command will work.
User avatar
Vort
Posts: 248
Joined: May 14th, 2024, 6:35 am

Re: Thread for your script-related questions

Post by Vort »

confocaloid wrote: September 15th, 2024, 11:25 am... Please check Catagolue first, before posting, to see if the gun would be a bounding box area reduction. ...
It would be nice to press hotkey in Golly and after automatic gun verification, normalization and comparison with Catagolue, have option to upload result with one click.

However, I'm not sure if Python and Lua plugins in Golly have restrictions preventing contacting Catagolue.
User avatar
aFewTrafficLights
Posts: 10
Joined: August 7th, 2024, 2:55 pm
Location: one or more TCP packets sent to your computer; recently moved from ConwayLife.com's servers.

Re: Thread for your script-related questions

Post by aFewTrafficLights »

dvgrn wrote: September 15th, 2024, 6:35 am
aFewTrafficLights wrote: September 14th, 2024, 7:27 pm for whatever reason, my ikpx2 script that i downloaded keeps outputting this error when i try to run "./recompile.sh" it outputs this error message:

Code: Select all

grep: warning: stray \ before -
Rule unspecified; assuming b3s23.
Updating submodules...
./recompile.sh: line 15: git: command not found
any help on this?
The last line says that you don't have 'git' installed. Do you have git installed? If not, how did you download ikpx2?

If you downloaded ikpx2 by any other method than cloning the ikpx2 repository, then I'd recommend deleting everything and starting over and doing that. There isn't a specific LifeWiki tutorial on using Git to clone ikpx2, but it's the same process for any Git repo. See the notes in Tutorials/LLS but substitute the ikpx2 repository for the LLS one.

The ikpx2 quick start guide is maybe a little _too_ quick, since it doesn't mention starting by cloning the repo.

You'll need to have git and (based on a quick review of this thread) g++ installed, and then I think the submodule install will grab the rest of what you need. I haven't tried this recently, so maybe someone else can correct me. Really maybe the thing that will solve the most problems is

sudo apt-get install build-essential

... but you'll need to be able to follow the first few steps in the LSS tutorial before you'll have a Cygwin or WSL2 or other Linux-ish window open where that command will work.
I already had cygwin installed but i am missing many directories, such as sudo and git (look i did not think i needed them since I only wanted to use gfind and its variations). does running the "setup-x64_64" folder replace the cygwin I already installed or does it add on to the cygwin I already installed?
well i do not know what to put here so i guess i could put this here
User avatar
dvgrn
Moderator
Posts: 12023
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn »

aFewTrafficLights wrote: September 15th, 2024, 3:13 pm I already had cygwin installed but i am missing many directories, such as sudo and git (look i did not think i needed them since I only wanted to use gfind and its variations). does running the "setup-x64_64" folder replace the cygwin I already installed or does it add on to the cygwin I already installed?
It adds on. At least in my experience, when you run the installer you'll see things checked off if they're already installed, and the option to change what's checked and unchecked so the installer can do the relevant new installs/uninstalls.
User avatar
TigerCub414
Posts: 167
Joined: March 25th, 2024, 9:51 pm

Re: Thread for your script-related questions

Post by TigerCub414 »

How can gnf2seed.py be modified to remove separation of stages and have one stage that can be wider than 160 cells? I tried modifying it manually, but it doesn't work.

Code: Select all

x = 32, y = 32, rule = B3aijkr5j/S2aek3-acy4iz6c
8b3o$7bo2bo$7bo2bo$7b3o4$28b3o$28bo2bo$28bo2bo$29b3o11$3o$o2bo$o2bo$b
3o4$22b3o$21bo2bo$21bo2bo$21b3o!
User avatar
Tawal
Posts: 850
Joined: October 8th, 2023, 7:20 am
Location: Mælar

Re: Thread for your script-related questions

Post by Tawal »

I encounter a matter with Lifelib.
I can't make it work.
I read and apply the instructions for the installation, all is fine.
But I had at least 2 errors :
  • x.viewer() doesn't create a viewer
  • when I try x[20].population I get an error
Example :

Code: Select all

(Golly) tawal@Deb1:~/Term/Python/Golly$ python3
Python 3.11.2 (main, Aug 26 2024, 07:20:54) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import lifelib
>>> sess = lifelib.load_rules('b3s23')
>>> lt = sess.lifetree(n_layers=1, memory=1000)
>>> x = lt.pattern('''x = 12, y = 14, rule = B3/S23
... bo$2bo$3o2$6bo$6bobo$6b2o2$10b2o$6bo3b2o$5bobo$4bobo$4bo$3b2o!''')
>>> 
>>> x.viewer()
<IPython.core.display.HTML object>
<IPython.lib.display.IFrame object at 0x7f7dff160390>
>>> # There isn't any viewer !
>>> 
>>> x.population
22
>>> x[20].population
Instruction set SSE3 detected
Traceback (most recent call last):
  File "/home/tawal/Term/Python/Golly/lib/python3.11/site-packages/lifelib/pythlib/lowlevel.py", line 247, in <module>
    remote_load()
  File "/home/tawal/Term/Python/Golly/lib/python3.11/site-packages/lifelib/pythlib/lowlevel.py", line 160, in remote_load
    obj = pickle.load(stdin)
          ^^^^^^^^^^^^^^^^^^
EOFError: Ran out of input
Instruction non permise
(Golly) tawal@Deb1:~/Term/Python/Golly$
I need some help please. Thanks a lot.
Alone we go faster … Together we go further …
Avatar's pattern
My Sandbox
Bom-Bom
ℝ - ℕ = ℝ or ℕ ⊄ ℝ
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Thread for your script-related questions

Post by confocaloid »

edit: BTW there is a forum thread for lifelib: viewtopic.php?f=7&t=3588
Tawal wrote: October 14th, 2024, 7:08 amBut I had at least 2 errors :
The first of two errors is probably because you need IPython to be able to show viewers in an interactive session.
("probably" because I don't have IPython and didn't test these features myself.)
I just tried to run "x.viewer() myself, and in my case it fails (as expected), with the following error:

Code: Select all

ModuleNotFoundError: No module named 'IPython'
Second error seems more interesting. The line "Instruction non permise" at the end of your output suggests that maybe you have an old system which does not support an instruction, while lifelib expects that instruction to be available.

I was able to run the following:

Code: Select all

# git clone https://gitlab.com/apgoucher/lifelib.git
# python3
>>> import lifelib
>>> sess = lifelib.load_rules('b3s23')
>>> lt = sess.lifetree(n_layers = 1, memory = 1000)
>>> x = lt.pattern('''x = 12, y = 14, rule = B3/S23
... bo$2bo$3o2$6bo$6bobo$6b2o2$10b2o$6bo3b2o$5bobo$4bobo$4bo$3b2o!''')
>>> x.population
22
>>> x.bounding_box
[0, 0, 12, 14]
>>> x[20].population
Instruction set SSE4.2 detected
17
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
Tawal
Posts: 850
Joined: October 8th, 2023, 7:20 am
Location: Mælar

Re: Thread for your script-related questions

Post by Tawal »

Thanks for answering.
I encounter the same error (SSE3) when I tried to compile slmake/slparse.
I have to change my material …

I have a different question :
In Golly, is it possible to launch a Python 3 script with options and arguments (that the script can handle these) ?
Alone we go faster … Together we go further …
Avatar's pattern
My Sandbox
Bom-Bom
ℝ - ℕ = ℝ or ℕ ⊄ ℝ
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Thread for your script-related questions

Post by confocaloid »

Tawal wrote: October 15th, 2024, 5:37 am [...]
In Golly, is it possible to launch a Python 3 script with options and arguments (that the script can handle these) ?
If the script is running within Golly, then the usual "command-line arguments" are unlikely to be useful.

However, you can use instead the scripting commands listed in the Golly help, to get access to the environment (e.g. read/modify the pattern in the current layer, get/set the current layer name, etc.)
https://golly.sourceforge.io/Help/python.html#commands

In particular, functions g.getstring and g.query can be used to get some kind of interactive input from the user.
The functions g.note and g.warn can be used to let the user interrupt the script in the middle.

Alternatively, getclipstr/setclipstr can be used to pass data between the running script and the system clipboard. However, that can be problematic in practice, because the user may need/want to use the system clipboard for another purpose at the same time. If possible, it is better to avoid writing to the clipboard, and even better to avoid using the clipboard at all.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
Tawal
Posts: 850
Joined: October 8th, 2023, 7:20 am
Location: Mælar

Re: Thread for your script-related questions

Post by Tawal »

One more time thanks a lot for fast answering :)

Another question :
Does Golly use lifelib ?
If yes, why does it works in Golly and why I'm not able to make it work in a Python shell ?
(Instruction set detected SSE3 ==> Instruction non permise)
Alone we go faster … Together we go further …
Avatar's pattern
My Sandbox
Bom-Bom
ℝ - ℕ = ℝ or ℕ ⊄ ℝ
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Thread for your script-related questions

Post by confocaloid »

Tawal wrote: October 15th, 2024, 6:03 am Does Golly use lifelib ?
No. AFAIK (at least currently) the lifelib library and the Golly application are two mostly-independent projects. (There is some compatibility in terms of supported features / notations / data formats, but neither of two projects is part of the other.)

IIRC there were some discussions about whether or not it would make sense to integrate lifelib and Golly together.
I think that may be impractical, and maybe unnecessary. Golly is good for "interactive things" when the user works with some patterns. lifelib is good for automated/semiautomated tasks.
(I can imagine there could be yet another library, for use cases that are not covered by lifelib. For example better handling of toruses and other topologies different from the usual infinite plane, ability to work with many different CA in a single script without having to recompile, etc.)
rokicki wrote: April 19th, 2022, 11:50 am [...]
Implementing lifelib operations requires a hash cache of operation results which
gets into golly's memory limit code, not to mention there are at least two distinct
hashlife implementations in golly that would need separate implementations).

I don't think Golly needs to be everything; I think having additional tools like
lifelib and lifeviewer that have a different "take" on things and excel in different
ways is healthy. But if just smashing together macrocell tiles (as the above code
would do) is useful, that's pretty easy to implement.
calcyman wrote: April 19th, 2022, 3:30 pm
dvgrn wrote: April 19th, 2022, 12:09 pm Yup, no point in trying to duplicate lifelib, but there are occasional macrocell-related things that I'd like to be able to do in a Golly script, and mccopy() would take care of a fairly good fraction of them.
It's also worth noting that they're not two mutually exclusive worlds where you need to decide between one or the other: a Golly script is just a Python script, and it can import lifelib just like any other script. You can move a universe from Golly to lifelib, and vice-versa, by using temporary macrocell files.
[...]
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
TigerCub414
Posts: 167
Joined: March 25th, 2024, 9:51 pm

Re: Thread for your script-related questions

Post by TigerCub414 »

How can gnf2seed.py be modified to remove separation of stages and have one stage that can be wider than 160 cells? I tried modifying it manually, but it doesn't work.
Okay, I should've been more concise. I tried to run gnf2seed.py with this pattern:

Code: Select all

x = 287, y = 267, rule = B3/S23
95bo$96b2o$95b2o161bobo$48bo210b2o$49bo209bo$47b3o162bo$210bobo$211b2o
4$26bo$24bobo162bo$25b2o163bo$188b3o$179bo$177bobo$121bo56b2o$122b2o$
121b2o161bobo$285b2o$285bo$87bo$88b2o$87b2o161bobo$251b2o$166bo84bo$
167bo$165b3o7$2bo$obo$b2o$66bobo$67b2o161bo$67bo163b2o$230b2o56$78bo$
79b2o$78b2o4$216bo$217b2o$216b2o8$108bobo$109b2o$109bo8$241bobo$242b2o
$242bo21$272bo$273b2o$272b2o4$144b3o$146bo$145bo13$114b2o$113bobo$115b
o58$102b3o$104bo$103bo13$123b2o$122bobo$124bo3$157b2o$156bobo$158bo4$
61bo$61b2o$60bobo6$83b2o$84b2o$83bo$131b2o$130bobo$132bo!
The script outputs the following text:

Code: Select all

[[-7, 9], [-6, 176], 'xs12_253zy14a53', 'xs7_25ac']
[[-5, 41], [-12, 159], 'xs13_696zy14aic', 'xs8_35ac']
[[0, -3], [-8, 142], 'xs12_256woka4', 'xs8_35ac']
[[-3, -8], [-8, 125], 'xs13_2552zwca52', 'xs7_25ac']
[[-7, 9], [-6, 180], 'xs12_253zy14a53', 'xs7_25ac']
[[-10, 75], [2, 211], 'xs12_4a96zy54a6', 'xs8_35ac']
[[-3, 40], [-6, 162], 'xs13_35a4y0696', 'xs7_25ac']
[[-3, -8], [-8, 129], 'xs13_2552zwca52', 'xs7_25ac']
[[-3, -2], [-17, 152], 'xs12_4a96zy5256', 'xs7_25ac']
[[-10, 75], [3, 231], 'xs12_4a96zy54a6', 'xs7_25ac']
[[0, -3], [-7, 142], 'xs12_256woka4', 'xs7_25ac']
[[-3, -8], [-9, 125], 'xs13_2552zwca52', 'xs8_35ac']
[[-3, -2], [-17, 148], 'xs12_4a96zy5256', 'xs7_25ac']
[[-10, 75], [3, 219], 'xs12_4a96zy54a6', 'xs7_25ac']
[[0, -3], [-7, 154], 'xs12_256woka4', 'xs7_25ac']
[[-2, 55], [-15, 257], 'xs15_w6996zo8z0113', 'xs7_25ac']
[[-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072]]
2 stages collected.
#CLL state-numbering golly
x = 1, y = 1, rule = B3/S23
b!

#CLL state-numbering golly
x = 63, y = 1833, rule = B3/S23
61bo$61b2o$60bobo1796$48bo$49bo$47b3o6$26bo$24bobo$25b2o22$2bo$obo
$b2o!

Traceback (most recent call last):
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 470, in <module>
    main()
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 456, in main
    stages = load_stages()
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 423, in load_stages
    assert(False)
AssertionError
It shows that the reaction is split into two stages, which is what I'm trying to avoid. So in the script, I changed line 408

Code: Select all

x = gnf[-160:, :]
to

Code: Select all

x = gnf
I thought this was going to remove separation of stages and build an actual seed, but it resulted in an error. This was the output:

Code: Select all

[[-7, 9], [-6, 176], 'xs12_253zy14a53', 'xs7_25ac']
[[-5, 41], [-12, 159], 'xs13_696zy14aic', 'xs8_35ac']
[[0, -3], [-8, 142], 'xs12_256woka4', 'xs8_35ac']
[[-3, -8], [-8, 125], 'xs13_2552zwca52', 'xs7_25ac']
[[-7, 9], [-6, 180], 'xs12_253zy14a53', 'xs7_25ac']
[[-10, 75], [2, 211], 'xs12_4a96zy54a6', 'xs8_35ac']
[[-3, 40], [-6, 162], 'xs13_35a4y0696', 'xs7_25ac']
[[-3, -8], [-8, 129], 'xs13_2552zwca52', 'xs7_25ac']
[[-3, -2], [-17, 152], 'xs12_4a96zy5256', 'xs7_25ac']
[[-10, 75], [3, 231], 'xs12_4a96zy54a6', 'xs7_25ac']
[[0, -3], [-7, 142], 'xs12_256woka4', 'xs7_25ac']
[[-3, -8], [-9, 125], 'xs13_2552zwca52', 'xs8_35ac']
[[-3, -2], [-17, 148], 'xs12_4a96zy5256', 'xs7_25ac']
[[-10, 75], [3, 219], 'xs12_4a96zy54a6', 'xs7_25ac']
[[0, -3], [-7, 154], 'xs12_256woka4', 'xs7_25ac']
[[-2, 55], [-15, 257], 'xs15_w6996zo8z0113', 'xs7_25ac']
[[-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072], [-176, 3072]]
1 stages collected.
28 gliders involved.
Traceback (most recent call last):
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 470, in <module>
    main()
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 460, in main
    octo.add_stage(s[1])
  File "C:\Users\andro\Documents\programs\gnf2seed.py", line 329, in add_stage
    s, desired = try_dist(ub)
TypeError: cannot unpack non-iterable NoneType object
Even though I'm familiar with Python, I have no idea what went wrong there.
By the way, the reason I want this to work is to make a seed for a p80 HWSS backrake that I need for my self-constructing spaceship project:

Code: Select all

x = 401, y = 267, rule = B3/S23
95bo$96b2o$95b2o161bobo$48bo210b2o$49bo209bo$47b3o162bo$210bobo$211b2o
4$26bo$24bobo162bo$25b2o163bo$188b3o$179bo$177bobo$121bo56b2o$122b2o$
121b2o161bobo$285b2o$285bo$87bo$88b2o$87b2o161bobo$251b2o$166bo84bo$
167bo$165b3o7$2bo$obo$b2o$66bobo$67b2o161bo$67bo163b2o$230b2o19$158bo$
157bobo$83b2o28b2o42bobo$83b2o28b2o43bo2$156bo3b2o$155bobo2b2o$155b2o
16bo$83b2o28b2o57bobo$77b2o4b2o22b2o4b2o57b2o$77b2o28b2o2$149b2o$150bo
$142bo4bo6b2o$141bobo3b2o5bobo$141bobo12bo$142bo13b2o2$140bo3b2o$139bo
bo2b2o$100b2o25b2o10b2o$99bo2bo15b2o6bo2bo$100bobo15b2o7bobo$101bo26bo
$107bo26bo$106bobo24bobo$106bobo24bobo$95b2o10bo10b2o2b2o10bo$95b2o15b
2o4b2o2b2o$112b2o$138b2o$138bobo$95b2o25b2o15bo$95b2o25b2o$115b2o$115b
obo$78bo37bo$79b2o$78b2o4$216bo$77b2o138b2o$77b2o137b2o5$77b2o$71b2o4b
2o$71b2o$108bobo$109b2o$109bo4$99b2o$98bobo$99bo16b2o$115bobo$116bo
124bobo$242b2o140bo$242bo140bobo$309b2o28b2o42bobo$309b2o28b2o43bo2$
382bo3b2o$381bobo2b2o$297bo83b2o16bo$296bobo10b2o28b2o57bobo$296bobo4b
2o4b2o22b2o4b2o57b2o$297bo5b2o28b2o2$295bo3b2o74b2o$294bobo2b2o75bo$
294b2o72bo4bo6b2o$367bobo3b2o5bobo$155bo211bobo12bo$154bobo211bo13b2o$
138bo16b2o$137bobo226bo3b2o$138b2o225bobo2b2o$326b2o25b2o10b2o$272bo
52bo2bo15b2o6bo2bo$273b2o14bo36bobo15b2o7bobo$272b2o14bobo36bo26bo$
288bobo42bo26bo$289bo42bobo24bobo$302b2o28bobo24bobo$144b3o140bo3b2o8b
o2bo16b2o10bo10b2o2b2o10bo$146bo139bobo2b2o9bobo16b2o15b2o4b2o2b2o$
145bo140b2o15bo34b2o$309bo54b2o$308bobo53bobo$308bobo10b2o25b2o15bo$
297b2o10bo11b2o25b2o$297b2o42b2o$341bobo$313b2o27bo$313bobo$297b2o15bo
$297b2o2$155bo$114b2o38bobo$113bobo38b2o$115bo18b2o25b2o$134b2o25b2o
15bo$177bobo$177b2o$151b2o$134b2o15b2o4b2o2b2o$134b2o10bo10b2o2b2o10bo
$145bobo24bobo$145bobo24bobo$146bo26bo$140bo26bo$139bobo15b2o7bobo$
138bo2bo15b2o6bo2bo$139b2o25b2o10b2o$178bobo2b2o$179bo3b2o$297b2o$181b
o13b2o99bobo$180bobo12bo101bo$180bobo3b2o5bobo$181bo4b2o5b2o$188b2o$
188b2o2$116b2o28b2o$116b2o4b2o22b2o4b2o57b2o$122b2o28b2o57bobo99b2o$
194b2o16bo99bobo$194bobo2b2o112bo$195bo3b2o2$122b2o28b2o43bo$122b2o28b
2o42bobo127b2o$196bobo126bobo$197bo128bo24$102b3o$104bo$103bo13$123b2o
$122bobo$124bo3$157b2o$156bobo$158bo4$61bo$61b2o$60bobo6$83b2o$84b2o$
83bo$131b2o$130bobo$132bo!
Any help will be appreciated.
Last edited by TigerCub414 on November 21st, 2024, 7:34 pm, edited 1 time in total.

Code: Select all

x = 32, y = 32, rule = B3aijkr5j/S2aek3-acy4iz6c
8b3o$7bo2bo$7bo2bo$7b3o4$28b3o$28bo2bo$28bo2bo$29b3o11$3o$o2bo$o2bo$b
3o4$22b3o$21bo2bo$21bo2bo$21b3o!
User avatar
dvgrn
Moderator
Posts: 12023
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Thread for your script-related questions

Post by dvgrn »

I don't immediately know the answer to the gnf2seed question -- maybe someone else can help with that.

However, if your ultimate goal is a one-glider seed for that HWSS backrake, it seems like gnf2seed might produce an unnecessarily large messy solution anyway.

You're very close to having three copies of the same sub-rake activation there. How about completing the 1-glider seed for one of the p80 glider forerakes, then use that same seed twice, and then modify it slightly to produce the p80 glider backrake? Then you'll have reduced the problem to building a one-glider seed for the three activation gliders.

How familiar are you with the splitter and turner collections, and how to use the current arcane rating system to find one that works for a given purpose? E.g., there's a walkthrough here, the collection of rated turners can be found here, and splitter categories are here -- don't know if any of that will be useful.

Is the spacing of the component parts important, or would a seed for a more compact version of the backrake be preferable, like

Code: Select all

x = 155, y = 82, rule = B3/S23
39b3o$26b2o10b5o$23b3ob2o9b3ob2o$23b5o13b2o$24b3o$91b4o$90bo3bo$45b2o
26b3o18bo$44bo2bo17b3o4bob2o14bo2bo$44bobo16b2o2bo4bo2bo3bo$45bo15bo4b
2o4bob2obo2bo8bo$61bo3bo7bo2b2o3bo7b3o$61bo2b2o8b2obo4bo5bo3bo$76b2o5b
5o4bo$78bo5b4obob2o$80bo2bob2o3bo$81bo5bobo2$81b4o$34b2o37bo6b6o5b4o$
30b4ob2o34bo3bo4b4ob2o3bo3bo$30b6o40bo7b2o8bo$31b4o36bo4bo13bo2bo$72b
5o$3b2o10bo$3ob2o7bobo68b3o$5o9b2o67b5o13b2o$b3o79b3ob2o9b3ob2o$86b2o
10b5o$99b3o48bo2bo$154bo$150bo3bo$112b2o37b4o$111bo2bo$111bobo17bo9bo
$112bo17bob2o7b2o$130bob2o2b2o3bo7b2o$78b2o48bob4o2b2o10b2ob2o$10bo65b
2ob2o47b3o18bo2bo$10b2o64b4o69bo2bo$9bobo19bo45b2o71b2o$30b2o$30bobo$
91b4o55bo2bo$77bo12b6o48b2o8bo$76bobo11b4ob2o43b4ob2o3bo3bo$75bo3bo14b
2o36b5o3b6o5b4o$76bob2o51bo4bo4b4o$78b2o56bo$131bo3bo$83b2o48bo$79b4o
b2o$60b2o17b6o$59b4o17b4o$59b2ob2o$61b2o2$86b2o5b2o$30bo52b3ob2o2bo4b
o6b2o$30b2o10b6o35b5o9bo4b4o$29bobo9bo5bo36b3o4bo5bo4b2ob2o$47bo44b6o
6b2o$41bo4bo$43b2o3$102b2o$81b2o5b2o7bo5b2o$81b2o4b4o6bo4b2o$83bobob2o
bo7bo3bo$65bo17bob2o4b5o$64bobo17bo$64bo2bo35b2o$65b2o35b4o$102b2ob2o
$51bo52b2o$49bo3bo$35b5o14bo$34bo4bo9bo4bo$39bo10b5o$34bo3bo$36bo!
?
Citation needed
Posts: 698
Joined: April 1st, 2021, 1:03 am

Re: Thread for your script-related questions

Post by Citation needed »

Is there a script that can convert LifeViewer Pattern to Animated GIF or vice versa?
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Thread for your script-related questions

Post by confocaloid »

search.php?keywords=pattern+animated+gif
Citation needed wrote: October 27th, 2024, 6:55 pm Is there a script that can convert LifeViewer Pattern to Animated GIF or vice versa?
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
Aleph
Posts: 2277
Joined: February 18th, 2021, 11:18 am

Re: Thread for your script-related questions

Post by Aleph »

Do we have a way to display pattern distributions for different symmetries? I am curious about what "index fossils" exist across various symmetries. These are the two that come to mind right now: the top one produces an xs96 that is about 50 times as common in 1x256X2+1 as in D4_+1, and the bottom one produces an xs18 that is about a million times as common in i2x128 as in C1. There are likely more that no one has noticed yet.

Code: Select all

x = 45, y = 20, rule = B3/S23
3o3b4ob5o2b4ob4o2b5ob4o3b3o16$6b4o2b4o2b4o2b2o$6b4o2b4o2b4o2b2o$2o2b
14o4b2o$2o2b14o4b2o!
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Thread for your script-related questions

Post by confocaloid »

wwei47 wrote: November 3rd, 2024, 12:42 am Do we have a way to display pattern distributions for different symmetries? [...]
Do you mean something like this?

Code: Select all

https://catagolue.hatsya.com/textcensus/b3s23/D2_x
Instead of requesting an entire census, you can request just one tabulation:

Code: Select all

https://catagolue.hatsya.com/textcensus/b3s23/D2_x/xs50
WhiteHawk
Posts: 1376
Joined: July 10th, 2024, 5:34 pm

Re: Thread for your script-related questions

Post by WhiteHawk »

I want to start searching, probably starting with oscillators.

What program(s) should I start with downloading to begin searching, or at least where could I find the steps?
Currently working to improve Life's guns and work on updating SKOPs and Isotropic rules most similar to B3/S23 to Life standards. Will get software to begin searches eventually.

Pseudastur albicollis
User avatar
b-engine
Posts: 3762
Joined: October 26th, 2023, 4:11 am
Location: Somewhere on where Earth At
Contact:

Re: Thread for your script-related questions

Post by b-engine »

WhiteHawk wrote: November 6th, 2024, 10:19 am I want to start searching, probably starting with oscillators.

What program(s) should I start with downloading to begin searching, or at least where could I find the steps?
If you're using Windows, WinLifeSearch would be a great option. It's easy to download and use, and in fact the first search program I ever used.
hotdogPi
Moderator
Posts: 2267
Joined: August 12th, 2020, 8:22 pm

Re: Thread for your script-related questions

Post by hotdogPi »

There's also CatForce and its relatives, if you want high periods. There's still stuff to find; there are several periods where we don't have any good sparkers, such as 17, and sparkers of certain types of periods 13 (for 39 and possibly 26), 14, 18, and 35 would find guns of missing periods.
User:HotdogPi/My discoveries

Periods discovered:

All evens ≤128 except 52,58,78,82,92,94,98,104,118,122

5-15,㉕-㉛,㉟㊺,51,63,65,73,75
1㊳㊵㊹㊼㊽,54,56,72,74,80,90,92
217,240,300,486,576

Guns: 20,21,32,54,55,57,114,117,124,126
SKOPs: 32,74,76,102,196
Post Reply