Thread for your script-related questions

For scripts to aid with computation or simulation in cellular automata.
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

102564 wrote: November 1st, 2025, 3:58 pm Is it possible to make apgsearch not include sample soups when uploading to Catagolue?
In theory yes, but why? One of the main purposes of Catagolue is to store soups for each object that occurs in a census. It seems pointless to not want to upload sample soups.
Note that by running apgluxe with -t 1 as an argument, you can have it save a local log without uploading to Catagolue, which might serve a similar purpose to what you intend here.
User:PK22
Learning miscellaneous programming languages.
User avatar
I6_I6
Posts: 999
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Thread for your script-related questions

Post by I6_I6 »

Apologies if this isn't the right place for this post.
How do I tell Golly which folder to look in to find ruletables for RuleLoader? Where does Golly look in in the first place, so I can move my rules folder there?
It used to work fine when I had Golly 4.3 but stopped working after I changed to Golly 5.0.
I currently have the folder containing the .rule files in Desktop.
(I use macOS.)

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

I6_I6 wrote: November 2nd, 2025, 7:41 am Apologies if this isn't the right place for this post.
How do I tell Golly which folder to look in to find ruletables for RuleLoader? Where does Golly look in in the first place, so I can move my rules folder there?
It used to work fine when I had Golly 4.3 but stopped working after I changed to Golly 5.0.
I currently have the folder containing the .rule files in Desktop.
(I use macOS.)
The folder where Golly looks for rules should be stored globally, and set in the GollyPrefs file, which is used by all versions of Golly on a given computer. All of the rules that Golly 4.3 had access to should be avaliable by Golly 5.0, but if you need to change where Golly looks, find your GollyPrefs file. I don't know where it is on MacOS, but you could download a file finder to search for it, or run 'ls / -R > files.txt' to list all files on your system, then search through the output text file.
User:PK22
Learning miscellaneous programming languages.
102564
Posts: 29
Joined: October 27th, 2025, 6:32 pm

Re: Thread for your script-related questions

Post by 102564 »

Given the root, MD5, rule, symmetry, and soup ID of an example soup from a log saved by apgsearch, how do I find the actual soup?

Specifically, I'm trying to find the soup that is:
  • root k_L5mVxzcCcHGU
  • MD5 939b391f9323b349aa01eaf5706f1ca7
  • rule B2e3cijqy4c/S2-in3an4y
  • symmetry D4_x1
  • soup ID 9865409
This soup apparently produces a zz_EXPLOSIVE, but the haul didn't upload to Catagolue due to bad internet connection.
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

102564 wrote: November 3rd, 2025, 11:33 pm Given the root, MD5, rule, symmetry, and soup ID of an example soup from a log saved by apgsearch, how do I find the actual soup?

Specifically, I'm trying to find the soup that is:
  • root k_L5mVxzcCcHGU
  • MD5 939b391f9323b349aa01eaf5706f1ca7
  • rule B2e3cijqy4c/S2-in3an4y
  • symmetry D4_x1
  • soup ID 9865409
This soup apparently produces a zz_EXPLOSIVE, but the haul didn't upload to Catagolue due to bad internet connection.
To find a specific soup, go to this URL:

Code: Select all

https://catagolue.hatsya.com/hashsoup/<root>+<soup ID>/<rule>/<symmetry>
Note that <root>+<soup id> requires you to concatenation the two, and that <rule> needs to be in non-slashed form.
User:PK22
Learning miscellaneous programming languages.
102564
Posts: 29
Joined: October 27th, 2025, 6:32 pm

Re: Thread for your script-related questions

Post by 102564 »

Going to https://catagolue.hatsya.com/hashsoup/k ... an4y/D4_x1 gave me the following RLE, which seems to be wrong:

Code: Select all

 x = 16, y = 16, rule = d4_x1
booobooobbobbboo$
bboboobbbooobbbb$
oboboboooboobobb$
oobooobooobboboo$
ooobboobbobobbob$
bbobbbbbobbbbbbo$
booobbboboobbbbb$
oboobbobobbbobbb$
obboobbbbbobobbb$
oobobobbbboooboo$
oooooobboobbbobo$
oooooboobboobobb$
bbooooooboobbbbo$
obooobbobobobobo$
oobbboooboobbbbo$
bbooboobobboboob!
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

102564 wrote: November 4th, 2025, 1:41 pm Going to https://catagolue.hatsya.com/hashsoup/k ... an4y/D4_x1 gave me the following RLE, which seems to be wrong:

Code: Select all

 x = 16, y = 16, rule = d4_x1
booobooobbobbboo$
bboboobbbooobbbb$
oboboboooboobobb$
oobooobooobboboo$
ooobboobbobobbob$
bbobbbbbobbbbbbo$
booobbboboobbbbb$
oboobbobobbbobbb$
obboobbbbbobobbb$
oobobobbbboooboo$
oooooobboobbbobo$
oooooboobboobobb$
bbooooooboobbbbo$
obooobbobobobobo$
oobbboooboobbbbo$
bbooboobobboboob!
Sorry, wrong order. The correct order is:

Code: Select all

https://catagolue.hatsya.com/hashsoup/<symmetry>/<root>+<soup_num>/<rule>
Here is the RLE I got, but it doesn't seem to be a ZZ_EXPLOSIVE - it does produce a p48 which looks like it might be difficult to separate:

Code: Select all

x = 31, y = 31, rule = B2e3cijqy4c/S2-in3an4y
boobobobbobbbooobbbobbobobbooob$
obbobooboobbobboooobbbboooobobo$
obbbbbobbooboobobobbooobobooboo$
bobbbbobobbbboooboobbooboobbobo$
obbbboobboobbbbobbbobbbooobboob$
bobbooboboooboooobbooooooooobob$
ooooobobobobbbooooobobbbooooooo$
bbbbbobobbbbobbobbboobooboobbob$
bobobbobboobooboboobbbboboboobo$
oooboobboobooboobobooobbboboobb$
bbobooobobboobbobobbbobooobbobb$
bbbbbobbboobooobobobboboboobbbo$
boobbbbooooobbbbbbbobbobobbobob$
oboobobbobbobooooobbooobobbooob$
obboboobbobobooooobobbbboobbbob$
ooooooooooobbooboobbooooooooooo$
bobbboobbbbobooooobobobboobobbo$
booobbobooobbooooobobbobboboobo$
bobobbobobbobbbbbbbooooobbbboob$
obbboobobobboboboooboobbbobbbbb$
bbobbooobobbbobobboobbobooobobb$
bboobobbboooboboobooboobboobooo$
oboobobobbbboobobooboobbobbobob$
bobboobooboobbbobbobbbbobobbbbb$
ooooooobbbobooooobbbobobobooooo$
bobooooooooobbooooboooboboobbob$
boobbooobbbobbbobbbboobboobbbbo$
obobbooboobboobooobbbbobobbbbob$
ooboobobooobbobobooboobbobbbbbo$
oboboooobbbboooobbobbooboobobbo$
booobbobobbobbbooobbbobboboboob!
User:PK22
Learning miscellaneous programming languages.
User avatar
synperiplanar
Posts: 258
Joined: February 22nd, 2023, 4:01 pm
Location: Haha sometimes

Re: Thread for your script-related questions

Post by synperiplanar »

is it possible to pipe barrister or silk to apgluxe
WHAT A MOMENT
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

get_snackeTWO wrote: November 5th, 2025, 5:06 pm is it possible to pipe barrister or silk to apgluxe
I haven’t been able to get either of these programs working, but as a general rule, if a program prints RLEs to the command line, you can clone apgmera into the same directory as the executable program and pipe the RLEs by running the following:

Code: Select all

git clone https://gitlab.com/apgmera/apgoucher
./apgmera/recompile.sh <arguments>
./<program_name> <arguments> | ./apgluxe <arguments>
User:PK22
Learning miscellaneous programming languages.
User avatar
Katrina
Posts: 161
Joined: September 26th, 2024, 3:23 am

Re: Thread for your script-related questions

Post by Katrina »

Would it be possible to make a database for slmake with any INT rule?
102564
Posts: 29
Joined: October 27th, 2025, 6:32 pm

Re: Thread for your script-related questions

Post by 102564 »

How could I search a rule like B3ai4cet5c6c7c/S2a3-kqr4eqt5i6cei78? There are a lot of high-period oscillators, but the rule is explosive. (It does stabilize on a torus.) Normal apgsearch can't work because of the explosiveness. apgspaceinvaders works pretty quickly, but because almost every soup will either explode or settle down nearly immediately into blocks and preblocks, it is very limited in what it can find. I also tried making a stdin symmetry with soups like the following, and apgsearch can find some oscillators, but it is very slow (~4 soups/second) and often logs "Failed to detect periodic behavior!". Blocks are indestructible, so the stdin soup cannot explode. The example soup turns into a p794.

Code: Select all

x = 50, y = 50, rule = b3ai4cet5c6c7cs2a3-kqr4eqt5i6cei78
2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o$2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o5$2o46b2o$2o46b2o5$2o46b2o$2o46b2o4$20b2o5bo$2o15bo2bob4o3b2obo15b2o$2o15bo5bobo2bo2bo16b2o$17bo4bobobobo2bo$17bob5ob2ob2o2bo$17b2o2bob3ob3o$19b2o3b5o2bo$2o15bobob9ob2o15b2o$2o16b2o2bo2b2obo19b2o$19b2ob6ob4o$19bo4bo2b3o2bo$19bo5b5ob2o$18b2ob2ob2o3bobo$2o15b2ob2o6bob2o16b2o$2o15bob2ob3o2b3obo16b2o$17bobob3ob5o2bo4$2o46b2o$2o46b2o5$2o46b2o$2o46b2o5$2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o$2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o4b2o!
p460 from manual searching:

Code: Select all

x = 62, y = 31, rule = B3ai4cet5c6c7c/S2a3-kqr4eqt5i6cei78
43b2o$43b2o5$24b2o$25bo2$23b3o$34b2o$24bo9bo2$16b2o6bo6b2o$16b2o5b3o5b
2o27b2o$24bo36bo2$60b2o$60b2o$2o$o2$20b2o5b2o14b2o$20b2o5b2o14b2o$6b2o
27bo$6bo27b2o3$26bo$25b2o25bo$52b2o!
PK22 wrote: November 4th, 2025, 1:56 pm Here is the RLE I got, but it doesn't seem to be a ZZ_EXPLOSIVE - it does produce a p48 which looks like it might be difficult to separate:

Code: Select all

x = 31, y = 31, rule = B2e3cijqy4c/S2-in3an4y
boobobobbobbbooobbbobbobobbooob$
obbobooboobbobboooobbbboooobobo$
obbbbbobbooboobobobbooobobooboo$
bobbbbobobbbboooboobbooboobbobo$
obbbboobboobbbbobbbobbbooobboob$
bobbooboboooboooobbooooooooobob$
ooooobobobobbbooooobobbbooooooo$
bbbbbobobbbbobbobbboobooboobbob$
bobobbobboobooboboobbbboboboobo$
oooboobboobooboobobooobbboboobb$
bbobooobobboobbobobbbobooobbobb$
bbbbbobbboobooobobobboboboobbbo$
boobbbbooooobbbbbbbobbobobbobob$
oboobobbobbobooooobbooobobbooob$
obboboobbobobooooobobbbboobbbob$
ooooooooooobbooboobbooooooooooo$
bobbboobbbbobooooobobobboobobbo$
booobbobooobbooooobobbobboboobo$
bobobbobobbobbbbbbbooooobbbboob$
obbboobobobboboboooboobbbobbbbb$
bbobbooobobbbobobboobbobooobobb$
bboobobbboooboboobooboobboobooo$
oboobobobbbboobobooboobbobbobob$
bobboobooboobbbobbobbbbobobbbbb$
ooooooobbbobooooobbbobobobooooo$
bobooooooooobbooooboooboboobbob$
boobbooobbbobbbobbbboobboobbbbo$
obobbooboobboobooobbbbobobbbbob$
ooboobobooobbobobooboobbobbbbbo$
oboboooobbbboooobbobbooboobobbo$
booobbobobbobbbooobbbobboboboob!
That's strange - apgsearch running B2e3cijqy4c/S2-in3an4y has successfully separated thousands of different oscillators which are composed of interacting copies of the common p12, p24, and/or p48 (as well as duoplets/blocks). Also, long-lasting soups seem to be very rare in B2e3cijqy4c/S2-in3an4y, so the periodicity should've been detected, just as it has been in very many other soups.

Edit: 2c/4 from rlifesrc

Code: Select all

x = 5, y = 11, rule = B3ai4cet5c6c7c/S2a3-kqr4eqt5i6cei78
bobo$5o$bo2$bo$b4o$bo2$bo$5o$bobo!
User avatar
synperiplanar
Posts: 258
Joined: February 22nd, 2023, 4:01 pm
Location: Haha sometimes

Re: Thread for your script-related questions

Post by synperiplanar »

this happened when trying to run make on barrister

Code: Select all

In file included from Barrister.cpp:12:
./LifeStableState.hpp:833:12: warning: unused variable 'result' [-Wunused-variable]
  833 |       auto result = SynchroniseStateKnownColumn(c);
      |            ^~~~~~
In file included from Barrister.cpp:13:
./LifeUnknownState.hpp:144:43: warning: unused parameter 'stable' [-Wunused-parameter]
  144 |   void SanityCheck(const LifeStableState &stable) {
      |                                           ^
./LifeUnknownState.hpp:215:14: warning: unused variable 'on3' [-Wunused-variable]
  215 |     uint64_t on3 = stateCount.bit3[i];
      |              ^~~
./LifeUnknownState.hpp:216:14: warning: unused variable 'on2' [-Wunused-variable]
  216 |     uint64_t on2 = stateCount.bit2[i];
      |              ^~~
./LifeUnknownState.hpp:217:14: warning: unused variable 'on1' [-Wunused-variable]
  217 |     uint64_t on1 = stateCount.bit1[i];
      |              ^~~
./LifeUnknownState.hpp:218:14: warning: unused variable 'on0' [-Wunused-variable]
  218 |     uint64_t on0 = stateCount.bit0[i];
      |              ^~~
./LifeUnknownState.hpp:220:14: warning: unused variable 'unk3' [-Wunused-variable]
  220 |     uint64_t unk3 = unknownCount.bit3[s][i];
      |              ^~~~
./LifeUnknownState.hpp:221:14: warning: unused variable 'unk2' [-Wunused-variable]
  221 |     uint64_t unk2 = unknownCount.bit2[s][i];
      |              ^~~~
./LifeUnknownState.hpp:222:14: warning: unused variable 'unk1' [-Wunused-variable]
  222 |     uint64_t unk1 = unknownCount.bit1[s][i];
      |              ^~~~
./LifeUnknownState.hpp:223:14: warning: unused variable 'unk0' [-Wunused-variable]
  223 |     uint64_t unk0 = unknownCount.bit0[s][i];
      |              ^~~~
./LifeUnknownState.hpp:265:12: warning: unused variable 'stateon' [-Wunused-variable]
  265 |   uint64_t stateon = state[i];
      |            ^~~~~~~
./LifeUnknownState.hpp:266:12: warning: unused variable 'stateunk' [-Wunused-variable]
  266 |   uint64_t stateunk = unknown[i];
      |            ^~~~~~~~
./LifeUnknownState.hpp:267:12: warning: unused variable 'stateunkstable' [-Wunused-variable]
  267 |   uint64_t stateunkstable = unknownStable[i];
      |            ^~~~~~~~~~~~~~
./LifeUnknownState.hpp:271:12: warning: unused variable 'stable_on' [-Wunused-variable]
  271 |   uint64_t stable_on = stable.state[i];
      |            ^~~~~~~~~
./LifeUnknownState.hpp:272:12: warning: unused variable 'stable_unknown' [-Wunused-variable]
  272 |   uint64_t stable_unknown = stable.unknown[i];
      |            ^~~~~~~~~~~~~~
./LifeUnknownState.hpp:358:14: warning: unused variable 'on3' [-Wunused-variable]
  358 |     uint64_t on3 = state3[i-1];
      |              ^~~
./LifeUnknownState.hpp:370:14: warning: unused variable 'stable_on' [-Wunused-variable]
  370 |     uint64_t stable_on = nearbyStableState[i];
      |              ^~~~~~~~~
./LifeUnknownState.hpp:371:14: warning: unused variable 'stable_unknown' [-Wunused-variable]
  371 |     uint64_t stable_unknown = nearbyStableUnknown[i];
      |              ^~~~~~~~~~~~~~
In file included from Barrister.cpp:14:
./RotorDescription.hpp:26:13: warning: enumeration values 'NORESULT', 'STABLE', and 'OTHER' not handled in switch [-Wswitch]
   26 |     switch (type) {
      |             ^~~~
./RotorDescription.hpp:51:48: warning: unused parameter 'resType' [-Wunused-parameter]
   51 |                                      RotorType resType) {
      |                                                ^
./RotorDescription.hpp:86:13: warning: 8 enumeration values not handled in switch: 'ReflectAcrossXEven', 'ReflectAcrossYEven', 'Rotate90Even'... [-Wswitch]
   86 |     switch (transf) {
      |             ^~~~~~
Barrister.cpp:300:22: warning: unused parameter 'everActive' [-Wunused-parameter]
  300 |     const LifeState &everActive,
      |                      ^
Barrister.cpp:301:51: warning: unused parameter 'activeTimer' [-Wunused-parameter]
  301 |     const LifeCountdown<maxCellActiveWindowGens> &activeTimer,
      |                                                   ^
Barrister.cpp:302:51: warning: unused parameter 'streakTimer' [-Wunused-parameter]
  302 |     const LifeCountdown<maxCellActiveStreakGens> &streakTimer)
      |                                                   ^
24 warnings generated.
/usr/bin/ld: Warning: grouped short command line options are deprecated: -stack_size
/usr/bin/ld: Error: unable to disambiguate: -stack_size (did you mean --stack_size ?)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:20: Barrister] Error 
how fix
WHAT A MOMENT
User avatar
hth3
Posts: 362
Joined: February 15th, 2025, 10:04 am
Location: The Sun

Re: Thread for your script-related questions

Post by hth3 »

Why do I need a Google account for a Catagolue PAYOSHA256 key? I can't create another Google account (it forces me to enter my phone number, and I tried, but it doesn't work), and I don't want to use my personal account. Can't I just create an account with email and password? Is there a reason?
Can't trust someone who misspells typset as typeset.
Contribute to CheckerLife!
Oppose KOSA now, save the internet!
The Sandboxer Sandbox (Discord server)
RIP Unname New Web
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 »

hth3 wrote: November 10th, 2025, 3:08 pm Why do I need a Google account for a Catagolue PAYOSHA256 key? I can't create another Google account (it forces me to enter my phone number, and I tried, but it doesn't work), and I don't want to use my personal account. Can't I just create an account with email and password? Is there a reason?
payosha256 stands for "payment over SHA256". Since it's "payment", security is a big concern. Therefore an account is needed for security reasons.
Catagolue can't just replace the payosha256 system.
User avatar
hth3
Posts: 362
Joined: February 15th, 2025, 10:04 am
Location: The Sun

Re: Thread for your script-related questions

Post by hth3 »

b-engine wrote: November 10th, 2025, 6:22 pm
hth3 wrote: November 10th, 2025, 3:08 pm Why do I need a Google account for a Catagolue PAYOSHA256 key? I can't create another Google account (it forces me to enter my phone number, and I tried, but it doesn't work), and I don't want to use my personal account. Can't I just create an account with email and password? Is there a reason?
payosha256 stands for "payment over SHA256". Since it's "payment", security is a big concern. Therefore an account is needed for security reasons.
Catagolue can't just replace the payosha256 system.
Can't it just use a CAPTCHA and send a verification email? That pretty much suffices for security. Most sites do that.
Also, you need to pay to use Catagolue non-anonymously?
Can't trust someone who misspells typset as typeset.
Contribute to CheckerLife!
Oppose KOSA now, save the internet!
The Sandboxer Sandbox (Discord server)
RIP Unname New Web
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 »

hth3 wrote: November 11th, 2025, 8:23 am Can't it just use a CAPTCHA and send a verification email? That pretty much suffices for security. Most sites do that.
Catagolue can't switch to another method or else thousands of accounts will fail.
hth3 wrote: November 11th, 2025, 8:23 am Also, you need to pay to use Catagolue non-anonymously?
No, even though payosha256 was (maybe) meant for payments. Cellular automata community never make profit.
User avatar
hth3
Posts: 362
Joined: February 15th, 2025, 10:04 am
Location: The Sun

Re: Thread for your script-related questions

Post by hth3 »

b-engine wrote: November 11th, 2025, 9:33 am
hth3 wrote: November 11th, 2025, 8:23 am Can't it just use a CAPTCHA and send a verification email? That pretty much suffices for security. Most sites do that.
Catagolue can't switch to another method or else thousands of accounts will fail.
I didn't say it needs to switch, just make it so you can either sign up with Google or email+CAPTCHA. I didn't say to completely ditch Google, --->I<--- (and probably a few other people) just want to use it without Google.
Can't trust someone who misspells typset as typeset.
Contribute to CheckerLife!
Oppose KOSA now, save the internet!
The Sandboxer Sandbox (Discord server)
RIP Unname New Web
102564
Posts: 29
Joined: October 27th, 2025, 6:32 pm

Re: Thread for your script-related questions

Post by 102564 »

How can I find example soups in inflated symmetries, given the root, soup number, rule, and symmetry? Specifically, I'm looking for soup 79 in b3ai4cet5c6c7cs2a3-kqr4eqt5i6cei78/iD2_+1, and the haul root is k_PaUnKuiRbQKB. The soup apparently produces the object yl40_1_6_08409c1b373d45ce0ab51b06366f6445, which is the only yl I have gotten from apgsearching any symmetry of the rule. Going to https://catagolue.hatsya.com/hashsoup/i ... qt5i6cei78 gave me the following URL, which is not in the iD2_+1 symmetry and produces a 117-tick diehard instead:

Code: Select all

x = 16, y = 16, rule = B3ai4cet5c6c7c/S2a3-kqr4eqt5i6cei78
ooooboobobbbbbbo$
oboobbboboobbobb$
bboobbooooboobob$
bobbbooboobobobo$
bbbbobboobbobobo$
bbbbboobooboooob$
ooooobooobobbobo$
obobbobbboobbobo$
obbobooboooobbob$
oobobooobobobobb$
bobboooooooobooo$
oooobbooooboobbo$
bobbbbobbbbooboo$
obboboobobooobbo$
ooboobbobobboboo$
boobbooboooooboo!
Sidenote: why does apgsearch keep getting stuck while searching b3ai4cet5c6c7cs2a3-kqr4eqt5i6cei78/iD2_+1? I already modified it to reject soups whose populations rise above 4000 (which should eliminate soups that result in explosions). It also gets stuck while searching D4_+2 and a few other symmetries, though not as quickly, with the 4000 population modification, and it searches D2_+1, D4_+1, and D8_1 without getting stuck.
User avatar
I6_I6
Posts: 999
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Thread for your script-related questions

Post by I6_I6 »

What's the best way to search for sparkers in rlifesrc?

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
yaochen2
Posts: 52
Joined: September 5th, 2018, 11:48 pm

Re: Thread for your script-related questions

Post by yaochen2 »

Just wondering, but how do i use CATforce to find oscillators, including symmetric ones? It's too confusing for me. Also how do you use LLS to find catalysts?

Code: Select all

x = 7, y = 7, rule = B2cek3-cjk4cjkq5ijn6i7e8/S1c2-an3q4aqt5ejn6ei
o$obo$o2$5bo2$4b3o!
User avatar
PK22
Posts: 612
Joined: January 25th, 2025, 11:38 am
Location: United Kingdom
Contact:

Re: Thread for your script-related questions

Post by PK22 »

How can I compile a slow-salvo recipe into a single-channel recipe that uses a 0-degree elbow?
EDIT: Yes, I meant a 0-degree elbow.
Last edited by PK22 on November 21st, 2025, 7:05 pm, edited 1 time in total.
User:PK22
Learning miscellaneous programming languages.
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 »

PK22 wrote: November 21st, 2025, 5:35 pm How can I compile a slow-salvo recipe into a single-channel recipe that uses a 0hd elbow?
Do you mean a zero-degree elbow? A 0hd elbow is a now-ancient piece of technology found almost nowhere except in the old 0hd Demonoid (and now the Thessalonic Demonoid I suppose).

This was such old information that it had completely fallen out of my head, but the LifeWiki slsparse tutorial says under "More Features" that

"If a sufficiently narrow metacluster is in the construction danger zone, with the required construction gliders no farther to the side than +/-107hd from the single-channel lane, then slsparse will automatically generate a 0-degree elbow and produce the required gliders directly instead of using Snarkmaker / Snarkbreaker pairs."

If you're lucky, then simply feeding slsparse a sufficiently narrow slow salvo will create a zero-degree-elbow recipe. I seem to remember I've seen some highly unexpected behavior from slsparse in cases like these sometimes, but that was quite a few years and versions ago.

If that doesn't work, I always used to compile them semi-manually, with the help of a fairly simple script -- compile-0-degree-recipe.py.
Sokwe
Moderator
Posts: 3375
Joined: July 9th, 2009, 2:44 pm

Re: Thread for your script-related questions

Post by Sokwe »

yaochen2 wrote: November 21st, 2025, 4:18 am how do you use LLS to find catalysts?
If you're asking how to find periodic catalysts, I gave a brief tutorial here. For stable catalysts I recommend other search programs such as barrister or silk, but this method can also be used to find limited stable catalysts with LLS.

Also, I moved your post to the script-related questions thread.
-Matthias Merzenich
User avatar
ThePlayzr
Posts: 788
Joined: April 19th, 2025, 1:33 am
Location: Australia
Contact:

Re: Thread for your script-related questions

Post by ThePlayzr »

are there any search programs that can run searches for high-period oscillators (p9 at the very least, p13 would be good and I would hope for and be really happy if there is p17+) in non-totalistic rules?
Please visit my rules (found on my wiki page) and contribute!
User:ThePlayzr
I have LLS and qfind.
My avatar is the 80th most common pattern, and I have the 80th most posts on the forums.
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 »

ThePlayzr wrote: November 29th, 2025, 3:22 am are there any search programs that can run searches for high-period oscillators (p9 at the very least, p13 would be good and I would hope for and be really happy if there is p17+) in non-totalistic rules?
Even if there's one, you'd need a supercomputer or at least three gaming computers to do such search; the search space is simply too large.
Post Reply