Page 33 of 240
Re: Thread for basic questions
Posted: December 30th, 2017, 3:04 pm
by gameoflifemaniac
Oh, this wasn't what I thought. Nevermind...
Anyway, what does each of the button colors on Catagolue mean?
Re: Thread for basic questions
Posted: December 30th, 2017, 4:41 pm
by Majestas32
AforAmpere wrote:What are the speed limits for spaceships in B0 rules? Orthogonal is C. I think, but I am not sure that the diagonal speed limit is 3c/4, but what about oblique?
I saw a post about that before but can't find it now
Re: Thread for basic questions
Posted: December 30th, 2017, 6:22 pm
by AforAmpere
Majestas32 wrote:AforAmpere wrote:What are the speed limits for spaceships in B0 rules? Orthogonal is C. I think, but I am not sure that the diagonal speed limit is 3c/4, but what about oblique?
I saw a post about that before but can't find it now
Well, I thought about it for a bit, this pattern should determine the speed limit, as this expands the fastest possible in all directions, while only half the generations use B1c, to allow spaceships.
Code: Select all
x = 1, y = 1, rule = B02e3cjr4a5ay6i7c8/S2ak3acei4cjkrtyz5acijy6aek7e
o!
This shows the diagonal speed limit is 3c/4, and says that (2,1)c/2 is theoretically possible. I hope my logic makes sense. Interestingly, it seems that all slopes greater than 2 have a max speed of (m,n)c/m. I don't know what the formula for the other slopes is though.
Re: Thread for basic questions
Posted: December 31st, 2017, 1:37 am
by Majestas32
3(m,n)c/2(m+n). Which leads to another question: what's the knightship speed limit in rules where the diagonal speed limit is c/3 (like movostill 3)?
Re: Thread for basic questions
Posted: December 31st, 2017, 8:51 am
by Gamedziner
Majestas32 wrote:3(m,n)c/2(m+n). Which leads to another question: what's the knightship speed limit in rules where the diagonal speed limit is c/3 (like movostill 3)?
Hold on. If m=n, then the case reduces to a diagonal, or 3(m,m)c/2(m+m). Consider the ship with a diagonal speed of c/3 (the diagonal speed limit). Then 3(m,m)c/2(2m)=c/3.
3(m,m)c/4m=c/3
9(m,m)c/4m=c
9(m,m)c=4mc
9(m(1,1))c=4mc
9m(1,1)c=4mc
(1,1)c=(4/9)c
(1,1)=4/9 (contradiction)
Re: Thread for basic questions
Posted: December 31st, 2017, 9:35 am
by AforAmpere
Gamedziner wrote:
3(m,m)c/4m=c/3
9(m,m)c/4m=c
9(m,m)c=4mc
9(m(1,1))c=4mc
9m(1,1)c=4mc
(1,1)c=(4/9)c
(1,1)=4/9 (contradiction)
You can’t apply the formula to that, the formula only applies to the B0 rules.
Re: Thread for basic questions
Posted: December 31st, 2017, 1:43 pm
by gameoflifemaniac
How to add a LifeViewer window on a LifeWiki page?
Re: Thread for basic questions
Posted: December 31st, 2017, 2:43 pm
by BlinkerSpawn
gameoflifemaniac wrote:How to add a LifeViewer window on a LifeWiki page?
You could always do what I did and steal one from a page that already has one.

Re: Thread for basic questions
Posted: December 31st, 2017, 4:32 pm
by toroidalet
Majestas32 wrote:what's the knightship speed limit in rules where the diagonal speed limit is c/3
Take a look at B2-a345678/S012345678 (I stole this proof from somewhere but I don't remember):
Since it has
all birth (and survival, but that's not too important) conditions except the ones which allow for faster-than-c/3d, the edges of the octagon advance at the fastest possible speed. To see the speed, we're going to look at the edge.

- Screen Shot 2017-12-31 at 12.38.41 PM.png (12.05 KiB) Viewed 7966 times
Notice that it takes 1 generation for the selected cell to "travel" west and 2 for it to travel north. As a result, the lowest (theoretically) possible period for (a,b) is min(2a+b,a+2b) (The speed is (a,b)c/(min(2a+b,a+2b))). [citation needed]
Re: Thread for basic questions
Posted: December 31st, 2017, 4:53 pm
by Majestas32
So then it's:
(a,b)c/a, a>=2b, B0
3(a,b)c/(2a+2b), b<a<2b, B0
(a,b)c/(a+b), B2a
(a,b)c/(2a+b), B2e; S4w; S5a (sometimes)
(a,b)c/(2a+2b), all other rules with B3a and B2c/B3i
?
Where a > b.
But what's the deal with those rules where no ships from c/2 to c/3 are possible?
Re: Thread for basic questions
Posted: December 31st, 2017, 5:18 pm
by praosylen
Majestas32 wrote:(a,b)c/(2a+b), S4w
(a,b)c/(2a+2b), ~B2a/~S4w
It's more complicated than that: B2e (for most but not all other transitions) and S5a (for sufficient other transitions) also allow (a,b)c/(2a+b) speeds.
Re: Thread for basic questions
Posted: December 31st, 2017, 5:39 pm
by AforAmpere
We need to figure out some sort of system this works on. I also think (2,1)c/4 is not possible in rules with C/3 diagonal at the speed limit, (2,1)c/5 seems to be that limit.
Re: Thread for basic questions
Posted: December 31st, 2017, 8:49 pm
by Majestas32
It's actually the max not min for the denominator so (2,1)c/5 is the limit
Re: Thread for basic questions
Posted: January 1st, 2018, 8:02 am
by Apple Bottom
gameoflifemaniac wrote:How to add a LifeViewer window on a LifeWiki page?
Template:EmbedViewer might be helpful. If you need more flexibility, you can also use LV:Viewer directly and add the appropriate styling.
Re: Thread for basic questions
Posted: January 1st, 2018, 6:32 pm
by Rhombic
How can we look for both a small engineered and an elementary statorless gun in CGoL?
It seems more than feasible enough in both cases!
Re: Thread for basic questions
Posted: January 1st, 2018, 7:09 pm
by praosylen
Rhombic wrote:How can we look for both a small engineered and an elementary statorless gun in CGoL?
It seems more than feasible enough in both cases!
The original form of the
P45 glider gun might be what you're looking for -- it's kind of borderline between elementary and engineered, but statorless in any case.
Also, on an unrelated note, I've been thinking that it might be worthwhile to have a yearly competition modeled off of Pattern of the Year, but for other cellular automata -- it seems like OCAs are a major component of what's going on on these forums that doesn't get enough recognition. I'm kind of curious what everyone else thinks about that. Maybe like an "OCA Pattern of the Year" or "Rule of the Year" competition, or combined into "OCA Development of the Year"?
Re: Thread for basic questions
Posted: January 1st, 2018, 8:40 pm
by Majestas32
A for awesome wrote:Also, on an unrelated note, I've been thinking that it might be worthwhile to have a yearly competition modeled off of Pattern of the Year, but for other cellular automata -- it seems like OCAs are a major component of what's going on on these forums that doesn't get enough recognition. I'm kind of curious what everyone else thinks about that. Maybe like an "OCA Pattern of the Year" or "Rule of the Year" competition, or combined into "OCA Development of the Year"?
I vote in favor of that (personally I'd nominate AbhpzTa's adjustable spaceship rule)
Re: Thread for basic questions
Posted: January 1st, 2018, 9:21 pm
by AforAmpere
A for awesome wrote:Also, on an unrelated note, I've been thinking that it might be worthwhile to have a yearly competition modeled off of Pattern of the Year, but for other cellular automata -- it seems like OCAs are a major component of what's going on on these forums that doesn't get enough recognition. I'm kind of curious what everyone else thinks about that. Maybe like an "OCA Pattern of the Year" or "Rule of the Year" competition, or combined into "OCA Development of the Year"?
I agree with that idea as well, it would show all the other progress in these forums.
Re: Thread for basic questions
Posted: January 5th, 2018, 9:25 am
by gameoflifemaniac
What's the longest lasting 16x16 die hard known?
EDIT:
Code: Select all
local g = golly()
local selection = g.getselrect()
while ( true ) do
g.new("")
g.select(selection)
g.randfill(50)
g.run(10000)
if tonumber(g.getpop()) == 0 then
g.reset()
count = 0
while ( true ) do
g.run(1)
count = count+1
if tonumber(g.getpop()) == 0 then
if count > 15 then
break
end
else
break
end
end
end
end
g.reset()
g.show("Found "..count.."-generation diehard")
This script should stop if and only if it finds a diehard that lasts more than 15 generations. But it doesn't work.
Re: Thread for basic questions
Posted: January 5th, 2018, 3:23 pm
by dvgrn
gameoflifemaniac wrote:What's the longest lasting 16x16 die hard known?
No idea. If
Catagolue paid attention to these things, I'm sure some really impressive 16x16s would have showed up by now. But paying attention would have slowed apgsearch down a lot, meaning fewer results in other areas.
So I guess we should start with
simeks' various diehard finds. Or do you mean it has to be 16x16? I guess that's trivial, unless it has to look like a random soup --
Code: Select all
#C simeks' 538-tick diehard
x = 16, y = 16, rule = B3/S23
b5o$bob3o$2bo$2o$b4o$2bob2o10$15bo!
#C [[ AUTOFIT HISTORYFIT ]]
gameoflifemaniac wrote:EDIT: ... This script should stop if and only if it finds a diehard that lasts more than 15 generations. But it doesn't work.
Good work there, you've almost got it. The "if count > 15 then break end else break end" is a clue. Basically, you're not doing anything different if your count test succeeds. Also, you're only breaking out of the inner while loop, but there's no way for the program to know that it should break out of the outer while loop.
If you want to stop after the first find, here's one way:
Code: Select all
local g = golly()
local selection = g.getselrect()
while ( true ) do
g.new("")
g.select(selection)
g.randfill(50)
g.run(10000)
if tonumber(g.getpop()) == 0 then
g.reset()
count = 0
while ( true ) do
g.run(1)
count = count+1
if tonumber(g.getpop()) == 0 then
g.show("Found "..count.."-generation diehard")
if count > 15 then
g.reset()
g.exit()
else
break
end
end
end
end
end
Works for me now:
Code: Select all
x = 16, y = 16, rule = B3/S23
o2bobo3b2o3bo$3b3obob4obo$bo3b3o2b2o$o3b5obo3b2o$2b3o3b2obo$bob7o2bob
2o$o2b5obob3o$bobob11o$2b2o4b3ob3o$obobobo2bo5bo$2obob2ob3ob3o$obob2o
4bobo2bo$2ob2obob3ob3o$2b3o3b2obob2o$3b4o2bo2b2o$b3o2bo2b4o!
If you want to record the pattern somewhere and keep searching, looking for a better "best", then add a "bestsofar" variable, and check
if bestsofar<count then bestsofar=count end
and so forth, saving the starting pattern to another variable, or maybe a separate layer so you can interrupt the script at any time without losing anything.
Re: Thread for basic questions
Posted: January 5th, 2018, 5:34 pm
by _zM
dvgrn wrote: snip...
Code: Select all
local g = golly()
local selection = g.getselrect()
while ( true ) do
g.new("")
g.select(selection)
g.randfill(50)
g.run(10000)
if tonumber(g.getpop()) == 0 then
g.reset()
count = 0
while ( true ) do
g.run(1)
count = count+1
if tonumber(g.getpop()) == 0 then
g.show("Found "..count.."-generation diehard")
if count > 15 then
g.reset()
g.exit()
else
break
end
end
end
end
end
...
284 generations already:
Code: Select all
x = 16, y = 16, rule = B3/S23
obo2b3o4bo2bo$b6o6bo$3bob2o2bobob2o$bo2bo2bo2bo2bobo$4ob2obo2bo2b2o$4b
2ob2obo4bo$6bo3b4obo$2bobob2o3b3o$bob4o2bo2b2obo$7b3ob5o$6b3obo3bo$o2b
ob2obo4b3o$bobobo6b2obo$2o2bobob4ob3o$o2b3obob3o2bo$3obo2b8o!
Updating for further results.
Re: Thread for basic questions
Posted: January 5th, 2018, 7:57 pm
by AforAmpere
I downloaded gsearch, and I set it up so it works, but how do I know when the search finishes?
Re: Thread for basic questions
Posted: January 5th, 2018, 10:26 pm
by dani
I posted this in CatForce discussion but I think it should probably be here:
I'm really sorry to necrobump this thread, but I'm running the example 1.in and it returns with no 1.rle and no console output. What's going on? I'm not very skilled in C. If you need it, here is the example 1.in:
Code: Select all
max-gen 100
start-gen 1
num-catalyst 3
stable-interval 10
search-area -8 -8 16 16
pat 2bo$bobo$o3bo$o3bo$o3bo$bobo$2bo! -3 -4
filter 24 b2o$obo$bo 5 -3
filter 30 3o$3o! -9 2
fit-in-width-height 20 3
cat 2o$2o 60 0 0 .
cat 2b2o$3bo$3o$o 10 -2 -2 *
output 1.rle
full-report full.rle
Re: Thread for basic questions
Posted: January 5th, 2018, 10:31 pm
by dvgrn
_zM wrote:284 generations already...
321 ticks, turns into the standard 7-bit diehard, and is a 200th cousin to T=337 of diehard658 in Golly's Patterns/Life/Miscellaneous:
Code: Select all
x = 58, y = 42, rule = B3/S23
13bobo$2bo10b2ob2o$bobo3b2o4b2obo$o2bo3bo7bo$bobo3bobo$2bo3b3ob2o$10b
2o7$14b2o$13bo2bo$14b2o6$20bo$19bobo$20bobo$21b2o2$42bobo2b2o2bob2o2bo
$42b10o2bo$42b2o2b2ob2obob4o$10b2o30b2ob2ob4o2b4o$9bo2bo31bob4obobobob
o$10b2o30bo4b2ob2ob2o2bo$44bo2b4obo2b2o$42b2o2b3o3b2o$42bo5bo4b2ob2o$
42bobob2ob3obobobo$42b3o2b2o2bobobo$42b3ob3o4b2ob2o$43bobo2b2ob3ob3o$
44b2o3b4o2bobo$45b6o3b2o$42bob2o3b2obobobo!
Re: Thread for basic questions
Posted: January 6th, 2018, 12:36 pm
by gameoflifemaniac
What does each button color on Catagolue mean?
EDIT: OK, I figured out how my script can detect *WSS.
Code: Select all
local g = golly()
g.new("")
g.select({0,0,16,16})
g.randfill(50)
g.run(50000)
g.select({-13000,-13000,26000,26000})
g.cut()
if tonumber(g.getpop()) > 0 then
g.show("Orthogonal spaceship detected!")
g.fit()
end
g.paste(-13000,-13000,"or")
g.setmag(1)
g.select({0,0,16,16})
It cuts the selection where gliders can be and checks if there are any remaining spaceships.
Can someone tell me if it works? *WSS are so rare.
EDIT 2: Oh, it works.