Pattern viewer for forum threads

For discussion directly related to ConwayLife.com, such as requesting changes to how the forums or wiki function.
User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 9th, 2021, 5:12 pm

Help --> Themes only mentions HISTORYSTATES, despite AGESTATES being a valid command now:
Image

----

Just in case there was a misunderstanding of some sort earlier that made my intentions for its implementation unclear, I want to reiterate that an "alive, and has been since the very beginning" state would only require a single state to implement, not another 63, since the "background"/"dead, and has been since the very beginning" also only requires a single state. Unless there's something significant that I'm missing, there's little to no difference between the two, and just like how state 0 is always-dead with 1 through 63 ramping, state 64 would be always-alive with 65 through 127 ramping, balancing both of them out equally.

The following specifications would be needed for the Blues and Day themes:
muzik wrote:
August 5th, 2021, 10:04 am
Blues:
[Always dead] 0 0 0
[Newly dead] 0 0 255
[Long time since death] 0 0 47
[Always alive] 255 255 255
[Newly alive] 0 255 255
[Long time since birth] 240 240 240

Day:
[Always dead] 255 255 255
[Newly dead] 0 255 255
[Long time since death] 240 240 240
[Always alive] 0 0 0
[Newly alive] 0 0 255
[Long time since birth] 0 0 47
And with these settings, the following two patterns would appear identical within the boundaries both at the start and when evolved:
muzik wrote:
August 1st, 2021, 6:18 pm

Code: Select all

x = 100, y = 100, rule = Bosco's Rule:T100
2o2b2o2bob4o2bobo3bo5b2obo2b4obo2bo5b3o6b3o2b6ob3ob2ob2obo4b2ob2obobo
2bobobo$bo2bo7b2o2bo4bobobo3b2o2bo2bob2obob2o2bo3b2obo4bobob5obob3o2b
5o3bo10b3obo$2ob4obob3o4bob2ob7o2b2o4b6obo2b2o3b2obob2obob5o2b5o3b3ob
obobobob4o5bo$b2o2b2obo2bo4b2ob3o4bo4bobob2o2b2ob2o2b4o5bob2o4b4o2bo2b
2obobobob4o3bo4bo3bo$3bo6bo3bobo3bo3bo2b2obo2b2obo2b2obo2b2ob4o2b2o2b
5ob6o2b2ob3ob2obo2bob3ob3obo2bo$bob3o2b2o3bob4o3b2o2b3obo3b2o2bo2b2o3b
o2bobobo3bo2bo2b2o6b4ob7o3bobo3bo2bo2bo$2b2o4b6o2b3o5b4ob7ob3ob2obo2b
4obo3bo3bob2o2bo5bo9b8obo3bobo$4o3bo2bo6b5o3b4ob5o2bob2o2b4o3b2o2bobo
b3ob2o3bob3ob5obo6b3o4bo5bo$o2bobobobob2o3bob2ob2ob2ob3ob2ob4ob3o2bob
o2bobo2bobo3b3ob3ob2ob2o3b2obobob4ob3o2b2o2b2o$3obob4o5bob2o2b3o4bo4b
3obob5ob2ob5o4b5ob3obo6b6ob2o3bo2b2ob2o3b2o$bob3o2bob2ob5obo2bo2bo3bo
b4ob2o2bob2o2b2ob3obobobob6ob6obob2ob2o3b2obo2bo2bo2b3o$ob2obobob2ob2o
b2obobo2bo2bo2b6o2bobo7bo4b3ob8o3bobo8bob3o2b6o4b4o$o2b3obo2bo3bo2bo4b
o2b2o2bob4o4b5o10bobob4o2b7o2bobo6bo5bo2b2o4b3o$2b2ob2o2bo3bo2bobo9b4o
2bo2b3o2bo3b2ob2obobo8b3o2b3o4b2obobobobo2b2o2bobobo$4o2bobob2obob2ob
o3bo5b2ob2obo2b6obobob3obo2b3o3b2o2bo2bo5bo3b2obobo2b2obo3bob2o$b4ob2o
2bobo2b5ob2obo5b2obo2b5o4b3o2b2o3b5o4bo2bobo3b5ob5o6b2ob4o$8o5bo3b4ob
o4bob2o3b2obo4bo2b2obo3bobob5ob3o2b4o3bob8ob2o4b4obo2bo$2obo2b2o4bo3b
obobobobo4b2o2b4ob4ob3o5b2obo4b2o2bob4o2bobob3o3bo2b2o5bo2bo2b2o$4b4o
b2ob2obo2bo5b4ob2ob2o2b2o2bo3b2o3b3obob2ob3ob2ob2o3bobob2ob2obo2b2o2b
2ob2ob2obob2o$2ob6obo2bob3ob3o2b2o2bob3o2b4o2b3obobob3o2b11obo2b3o2b2o
b2o3bo2b3o2b3o$3ob5ob2o2bobob3o3bobobo8b2obo3b5o2bob2o6b3o2b3ob2o2b2o
2bo12bo2bob4o$b2o2b2o2bob4o2b3obo3b2o3bob6ob5obob3o3b2o2bo2bob3o2bo2b
2o2bobobo4b2o5bo2bo2b3o$2ob3o2b3ob7o2b4ob2o5bo4b6ob2ob3o3bo3bo2bo6bo3b
o2bobob4ob2ob6o2bobo$ob4o3bobo3bobo2bobo2b3o2b2o2bobo2b5o2bo2b2ob7obo
2bo3b5o3b2o2bo2bo2bob2ob4ob4o$3bo2b2o4bo10b2o2bobo3b2obobobo5bobob2ob
5o8b7o4b2ob2obo4b2obob5o$3b3o3bob2ob3o2b2ob4obo3bobo2bo2b3ob4o6bo2b2o
2b4obob3ob2o2bo4bob4obo3b4obob2o$b4ob3o2b4o2b4o8b2o3bo3b3obob2ob4o2b2o
b3o3b2obo2b6o3bo3bob4obo2b2o2b2obo$2obob2obo2bo2b3o4b2o2b5o3b2o2bobob
obo2b2obo5b3ob2o2bo2b2o6bo2bo2bob2o6b2o2bo2bo$2b2o2bobob2ob2o3b2ob2o3b
o4b6obobo2b2o3bobob4ob2o3bo3bo2b3obob5o3bobobo4bo2b2ob2o$ob2o2bob4obo
bobo2bob3obobob2ob4o2bob2obo4bo2b2ob6obo2bob2o3bobobo2bobob5o3b2obobo
b2o$ob2o2bobobobo5bo2b3o5bob2o2bobob2obo5bobob4o2bo6bo4b3o2bobobob2ob
obobob4o4b2o$b2o2bo2b3obo3b6o3bo2bo2b3obo2bo3bob3o3b2ob2obo2bo2b2o3bo
3b5o3b2o3bo2b2ob3o4b2o$2o4bob2o2b2o2b3o2b2obob2o4b3o3bobo4bobobobo4bo
2b7obo2b2ob4o2b2obo2bobobobo4bobo$bobobo2b2o3bo5bo2b3o3b2ob3obo4bob2o
5b2o4b2obob3o5b3obo2b4ob2o4b2o3b4obo$2bo2b3obobobob2ob4o2bo3b4o5bobo4b
obobob6obob5o3b5o3bo4bobo2bob2o2b2obo2bobo$2obob2o3b2o2bob2o3bobobo4b
5obob2o4bo4b4o2bob4ob2o4bobob2obo4b3obobob2obob2o2b2o$2b3ob2obobo4bo2b
ob2ob3obobo4b3obob2ob2o4b3ob3obo3bobob2obo2b3o2bo2bo3b2o2b3ob2o5bo$bo
2b5o5b2obobo2bob8o4b5o4bobobob6ob3ob2o3b3ob2obo2bo3bobobo2b3ob2o2bob2o
$4bobobobob4ob3ob2ob4o3b2ob3o3b2obob6o3b4o3bo5b5o2b4o2bo2bo2b5obobo$2o
b2ob3o2b2o2b2obo3bob3o6bo3bob2o2bo3b3obo6b6o5b4ob2obo2bobo4b2o2bo2bob
2obo$ob3ob2obo2bo3b2obo2bo2bob2o3bo2b3ob2obobo2b3obo2bo2b3o8b3obo3bo2b
o3bob2ob2o2b2o5bo$bo4b3o2b2o6b2ob3ob2o2bob2ob3obobo2bob3ob2obobo7b2ob
o3b4ob2ob2ob4o2b3ob3ob3o$5bob3obob4obo2bob2o7b2obo4bob2obo5b2o2bobo2b
3obo3b5ob2ob5ob2obo3bob4ob3o$2bob4o4bo3bo2b5o4b5ob6o2bob2ob3ob2o2b3ob
3ob2obobobo5bo5bo2bo2bo2b2o3bo2bo$bobobob2o4b3ob2ob3ob2obo4b2o2bo2b8o
b3ob4ob2o2b2ob2ob3ob2ob2o3bob3obo2bo2bobob3o$ob4o2bo4bo3b2o4bo2bobob3o
b2obo2bo2b2o3bobob4o2b3obob2o2bo2bobob2ob2o2b3obob5o3bo$2bobo2bob4o2b
2o2b2o4bo2b2ob4ob5o2bo5bobo2bobobobo2b5o2bob6o3bob2o2b2o3b3obobo$3ob3o
4b2obo7b4ob5o4b2o3b2o3b4o2b4obob2o3b2ob2o3bob3o5b2ob2obob10o$o2b2ob5o
3bo6bob4ob2ob3ob4obo2bobo2b5o6bobo4b4ob2o2b3ob2ob4o4bob3ob4o$2b5o5b3o
4b7o2bobo2b2ob5ob6obo3bo2b3o9bobobo3bob4obobob2ob4o3b2o$o2bob3o4b2obo
2b3o3bo4bob2o4bob3o2b2obo3bo3b5o2b3ob2obob3obo2bo2b2o3bobob3o3b2o$o5b
ob3obo2bobo13bo3bobo2bobo2bob3o4bo6bo2b2obob4o2b4ob3obobo3b2obobo$obo
bo2b3o2b2o3b6o3b2ob6ob3o2bo2b3o2b7obobo5bo2bo3bo3bobo3bobo2b4obob4obo
$bob2obo2b3obobo2bobobob2ob3ob3o2bobobo3b2o3bo3bob2o2bo2bo2bobo2b4obo
bobo3b2o4bob2obob4o$o2b2o3b3obob3o3b2obob3o3b2ob3obo3bo2bobo2b2ob2ob4o
bob3obobobo5b2o2bob8obob2o$o7b2o2bo2bobo3bo6b2o3b4o3bo2bob2o4b5o2b6ob
2obo4bo2bobo5bobo3b2obo$2bob2o4b3o2bo4b4o2b2o2bo2bo2b4o2b2ob2o3b3o4bo
2b3obo2b3obo2bo4bo5b2o7b3ob2o$3b3obo2bobo3b2o4bo2bob3o3b2obob3obo3b2o
bob2ob2ob2obobob3o2b3obobo3bo3b2o5bob2ob3o$2b2obo2b2ob6o2bobobo2b2ob4o
5b5o2bo3bob4o6bo3bob2ob2ob2obo4bo2b2o2bobobobo3b2o$b3obo2bob3o4bobob2o
bo2b3o3b4obobo2b9ob3ob4o2bo2b2o3b2obob5o3bo3b3ob2o2bo$o5b2obo5bobob2o
2bob2o2bob3o2b2o6b2o7b2obobo2b5obob2o3b2o2bob2ob7ob3ob2o$o2b2o2b2obo2b
4ob2obo3b3ob2obo2b6o3b2obo3b4o7bo2bo2bob3o3b5ob2o6bobob2o2bo$2bobo3b2o
b3obob2o2bobo3bo3bobob2obob2o3b3o2b2obobobob4o3bob6o2b4obob2o3b2o3bo2b
o2bo$2obobo3b6o3bob2ob2o2bo3b5o3bob2obo2b2o3bo2bob2obobo2b3obo2bob6ob
2obob2obo2b3obo2bo$b2o2b4o4b5ob2ob2obo2b2o4b4obo4bobo2bobobobo2bobobo
b3o8bobo3b2o12bo2b2o$ob2ob2ob2obo3b3o2bo2b2o2bob2ob3ob2obo2b2ob4o4b2o
b2o2bob4o2bo2b2obo2bo3bob8ob3ob2o$3o5bo7b2o2b2o3b3o3bobob2ob2obobo3b4o
2b2obobobo3b6o2b2o3b3o2b3o4b4o5b2o$b4obo4b2o2bob2ob4o4bob2o2b2o6bo4b2o
3bob8o2b4o3b2ob4o3b3o2bob4obo2bo2bo$o2bo3b2obo3bob3o2bobo3b2obo3bo3bo
bobobo2bo2bob3obo2b2o2b5obo2b2obob2ob4ob2obob2o2b2o3bo$bob2obob2o4b2o
bobo2bo3b6o3bobo3bo2b4ob3obo4b2ob2ob2obo2b6o2bo2bobobo3b4obob2o$obob3o
4b2obo2b2o3b2o2b4o6bo2b3o2b2o2b3o3b2o2bob2ob2o2bobob2o3b3obo4b6o5bob2o
$o3bo3bo4bo2bob3ob3obob4o3b6o4b4ob3o3b2o2b2o2bo2b2o3b4obobobob4obo7bo
bo$b7o6b6o2bo2bobo2b2ob2o2b3ob3o2b3obobo2b4o3b2obobobo3bo3b5o2b2ob4ob
ob2ob2o$o2b2ob3o2b3o4bob3obobo2b4obo2b5ob2o3bo3b2obob2ob8o2bo2b3ob3o2b
2o2b4o5b2obo$bo2b2o2b2obo5bo2b5o2b3obob2o2b2ob2o2b2o2bob4obo7bo2b6o2b
ob5ob3o2bo3b2obo3b2o$bobobobo2bob2o4b2ob5o3b6o5bo2bob3ob4o2b2ob5obo2b
o2bobobob6o2b2obo5b2ob4o$4bobo3bobo5b2o4bo3bobobobo3bo2b2ob2o3b4ob3ob
obob5o3bo5b4obo3b2o2b2obob2ob3o$bo3bo2b4o2b3ob5ob4obo4b2o2bo2bo3b3obo
bobo2bob2o2b2o3bo2bobobob3obo3bob2obobobo2b2obo$3o6b5o3b3obo2bobo2bob
obobo4bobo2b3o2b4o2bob6o8bobo3b2o10b2o2bo2bo$bo2bo4bobob2obo4bo7b3o2b
o3b2ob2ob2ob2obo2b3o2b2obo2bobo2bob2ob4obobo8bobobobo2bo$5b3o2b3o2bo4b
7o2b7obob3obob3obo4bo3bo5bob2ob7obo2b3obo7bobob4o$3b3ob3o3bo3b7o2bobo
3bobo2b2ob3o2b2o2b4o3bo3b2ob2o3bob6o3b3ob2o2bo2bob2ob5o$bo4bobo2bobob
2obob2ob3o2b4o4bob3obob4o3b2o2b2o3b3obo2b3o3b2ob3obob5o4b4obob2o$bo2b
2o4b2obob2o2b3o3bob2o3bo2b3ob3ob2o2b4o2bob3o2bob2obob2o4bo4b2o2bo2bob
o8bobo$2o2bo2b2ob4o3b2o2bobo2b3obob3o2b5ob3obobo2bo3bob2obobo2bo3b3o2b
2o2bo5bo2b2obo2b4obo$4obobobob2o2b2o2b3ob5o3b2o2b3ob3o3bob3obobo3bo4b
ob3o2b3o2b2o4bo3b3o2bo4bo2bobo$2ob3o3b2ob5o4bob6ob2ob2ob2obo2bo3bo3bo
2b4o2b3o2b2o3bobob3o2b3ob3ob4o3bo4bo$3ob2o3b2ob2ob2o2bo3bo2bobobob3ob
ob5obob3obob3o3b4o3b3obobob2ob2o5bo3b4obob5o$2b4ob2ob2o5bo2b3obobo3bo
4bo2b2o2b5o4bo3bobo3bo2b4obobo4b4o5bob3obo3b2obo$ob2ob3obobo4b3obobob
obob2obobo5b4obobo2bo2b5obob6obo3b3o6bobobob2o3b2o4bo$o2b3o2bo4bo3bo4b
2ob2o2b2ob4o4b5ob3obob4obob3obob4o10bo3bo3b5obo3bobo$2o2bo2bobo2bo2bo
b2ob9o2bo2bo2bo3b3o2bo2bob2obob3ob2o4bob2o4bobo2b8o4bob3o3bo$2o2bo4b3o
b2obo2b2obob2ob4o2bobobob5obo2b2o3bo2b3ob8o2bo3bo2bo4b3o3bo3b2obob3o$
2bo6bobob2obo3bo7b2o2b2o2b3o2bo2b2o3bo2b3o4b3o2b3ob2obo6bobo2b4o3b3ob
2obobo$b2o2b3obo2b2o3bo2bo4b2ob6ob2o2b2ob7o2bo2bob2obob4o2bobob2obob2o
5b4ob3obo2b3o$b2ob2o2bo6bo5bob2obob5o6bo2bo2b2obo3b3obo2b2o3b2o3b7ob4o
2b2ob2obob2o5bo$3o2b2o3bo2bob2obo2bo3b2o2bo2bo2bo3b2o2b4ob2ob2o2bo3bo
2bob3o2b3o3bob3obo3bob2obobob3obo$3bobob6o4b3obob5o4b4o3b4ob3o2bob4ob
o2bob4o2bo2b5obob6obo2b3obobob2o$3obo3b6ob5o6bo10b2obobob4ob2o4b4o2bo
2b2obo3b4ob2ob2o2b3ob2o3b4o2b2o$o3b2ob3ob2o3b2o2b4ob2ob3obo3bo5b2o2b3o
2bobob2o2b2o2bobob2o2bob5obo2b2ob2ob7ob2obo!

Code: Select all

x = 100, y = 100, rule = R5,C2,S0-74,87-120,B0-62,88-120,NM:T100
2b2o2b2obo4b2obob3ob5o2bob2o4bob2ob5o3b6o3b2o6bo3bo2bo2bob4o2bo2bobob
2obobo$ob2ob7o2b2ob4obobob3o2b2ob2obo2bobo2b2ob3o2bob4obobo5bobo3b2o5b
3ob10o3bo$2bo4bobo3b4obo2bo7b2o2b4o6bob2o2b3o2bobo2bobo5b2o5b3o3bobob
obobo4b5obo$o2b2o2bob2ob4o2bo3b4ob4obobo2b2o2bo2b2o4b5obo2b4o4b2ob2o2b
obobobo4b3ob4ob3ob2o$3ob6ob3obob3ob3ob2o2bob2o2bob2o2bob2o2bo4b2o2b2o
5bo6b2o2bo3bo2bob2obo3bo3bob2obo$obo3b2o2b3obo4b3o2b2o3bob3o2b2ob2o2b
3ob2obobob3ob2ob2o2b6o4bo7b3obob3ob2ob2obo$2o2b4o6b2o3b5o4bo7bo3bo2bo
b2o4bob3ob3obo2b2ob5ob9o8bob3obob2o$4b3ob2ob6o5b3o4bo5b2obo2b2o4b3o2b
2obobo3bo2b3obo3bo5bob6o3b4ob5o$b2obobobobo2b3obo2bo2bo2bo3bo2bo4bo3b
2obob2obob2obob3o3bo3bo2bo2b3o2bobobo4bo3b2o2b2o2bo$3bobo4b5obo2b2o3b
4ob4o3bobo5bo2bo5b4o5bo3bob6o6bo2b3ob2o2bo2b3o2bo$obo3b2obo2bo5bob2ob
2ob3obo4bo2b2obo2b2o2bo3bobobobo6bo6bobo2bo2b3o2bob2ob2ob2o3b2o$bo2bo
bobo2bo2bo2bobob2ob2ob2o6b2obob7ob4o3bo8b3obob8obo3b2o6b4o4bo$b2o3bob
2ob3ob2ob4ob2o2b2obo4b4o5b10obobo4b2o7b2obob6ob5ob2o2b4o$2o2bo2b2ob3o
b2obob9o4b2ob2o3b2ob3o2bo2bobob8o3b2o3b4o2bobobobob2o2b2obobob4o$4b2o
bobo2bobo2bob3ob5o2bo2bob2o6bobobo3bob2o3b3o2b2ob2ob5ob3o2bobob2o2bob
3obo2b3o$o4bo2b2obob2o5bo2bob5o2bob2o5b4o3b2o2b3o5b4ob2obob3o5bo5b6o2b
o4b3o$8b5ob3o4bob4obo2b3o2bob4ob2o2bob3obobo5bo3b2o4b3obo8bo2b4o4bob2o
$2bob2o2b4ob3obobobobob4o2b2o4bo4bo3b5o2bob4o2b2obo4b2obobo3b3ob2o2b5o
b2ob2o2bo$4o4bo2bo2bob2ob5o4bo2bo2b2o2b2ob3o2b3o3bobo2bo3bo2bo2b3obob
o2bo2bob2o2b2o2bo2bo2bobo$2bo6bob2obo3bo3b2o2b2obo3b2o4b2o3bobobo3b2o
11bob2o3b2o2bo2b3ob2o3b2o3b7o$3bo5bo2b2obobo3b3obobob8o2bob3o5b2obo2b
6o3b2o3bo2b2o2b2ob12ob2obo$o2b2o2b2obo4b2o3bob3o2b3obo6bo5bobo3b3o2b2o
b2obo3b2ob2o2b2obobob4o2b5ob2ob2o3bo$2bo3b2o3bo7b2o4bo2b5ob4o6bo2bo3b
3ob3ob2ob6ob3ob2obobo4bo2bo6b2obob2o$bo4b3obob3obob2obob2o3b2o2b2obob
2o5b2ob2o2bo7bob2ob3o5b3o2b2ob2ob2obo2bo4bo4bo$3ob2o2b4ob10o2b2obob3o
2bobobob5obobo2bo5b8o7b4o2bo2bob4o2bobo5b2o$3o3b3obo2bo3b2o2bo4bob3ob
ob2ob2o3bo4b6ob2o2b2o4bobo3bo2b2ob4obo4bob3o4bobo$o4bo3b2o4b2o4b8o2b3o
b3o3bobo2bo4b2o2bo3b3o2bob2o6b3ob3obo4bob2o2b2o2bobo$2bobo2bob2ob2o3b
4o2b2o5b3o2b2obobobob2o2bob5o3bo2b2ob2o2b6ob2ob2obo2b6o2b2ob2ob2o$2o2b
2obobo2bo2b3o2bo2b3ob4o6bobob2o2b3obobo4bo2b3ob3ob2o3bobo5b3obobob4ob
2o2bo$bo2b2obo4bobobob2obo3bobobo2bo4b2obo2bob4ob2o2bo6bob2obo2b3obob
ob2obobo5b3o2bobobo$bo2b2obobobob5ob2o3b5obo2b2obobo2bob5obobo4b2ob6o
b4o3b2obobobo2bobobobo4b4o$o2b2ob2o3bob3o6b3ob2ob2o3bob2ob3obo3b3o2bo
2bob2ob2o2b3ob3o5b3o2b3ob2o2bo3b4o2bo$2b4obo2b2o2b2o3b2o2bobo2b4o3b3o
bob4obobobob4ob2o7bob2o2bo4b2o2bob2obobobob4obobo$obobob2o2b3ob5ob2o3b
3o2bo3bob4obo2b5o2b4o2bobo3b5o3bob2o4bo2b4o2b3o4bob3o$2ob2o3bobobobo2b
o4b2ob3o4b5obob4obobobo6bobo5b3o5b3ob4obob2obo2b2o2bob2obo$2bobo2b3o2b
2obo2b3obobob4o5bobo2b4ob4o4b2obo4bo2b4obobo2bob4o3bobobo2bobo2b2o2bo
$2o3bo2bobob4ob2obo2bo3bobob4o3bobo2bo2b4o3bo3bob3obobo2bob2o3b2ob2ob
3o2b2o3bo2b5o$ob2o5b5o2bobob2obo8b4o5b4obobobo6bo3bo2b3o3bo2bob2ob3ob
obob2o3bo2b2obo$4obobobobo4bo3bo2bo4b3o2bo3b3o2bobo6b3o4b3ob5o5b2o4b2o
b2ob2o5bobob5o$2bo2bo3b2o2b2o2bob3obo3b6ob3obo2b2ob3o3bob6o6b5o4bo2bo
b2obob4o2b2ob2obo2bo$bo3bo2bob2ob3o2bob2ob2obo2b3ob2o3bo2bobob2o3bob2o
b2o3b8o3bob3ob2ob3obo2bo2b2o2b5o$ob4o3b2o2b6o2bo3bo2b2obo2bo3bobob2ob
o3bo2bobob7o2bob3o4bo2bo2bo4b2o3bo3bo3b2o$5obo3bobo4bob2obo2b7o2bob4o
bo2bob5o2b2obob2o3bob3o5bo2bo5bo2bob3obo4bo$2obo4b4ob3ob2o5b4o5bo6b2o
bo2bo3bo2b2o3bo3bo2bobobob5ob5ob2ob2ob2o2b3ob2o$obobobo2b4o3bo2bo3bo2b
ob4o2b2ob2o8bo3bo4bo2b2o2bo2bo3bo2bo2b3obo3bob2ob2obobo3b2o$bo4b2ob4o
b3o2b4ob2obobo3bo2bob2ob2o2b3obobo4b2o3bobo2b2ob2obobo2bo2b2o3bobo5b3o
b3o$2obob2obo4b2o2b2o2b4ob2o2bo4bo5b2ob5obob2obobobob2o5b2obo6b3obo2b
2o2b3o3bobobo$3bo3b4o2bob7o4bo5b4o2b3o2b3o4b2o4bobo2b3o2bo2b3obo3b5o2b
o2bobo$b2o2bo5b3ob6obo4bo2bo3bo4bob2obob2o5b6obob4o4bo2b2o3bo2bo4b4ob
o3bo$2o5b5o3b4o7b2obob2o2bo5bo6bob3ob2o3b9obobob3obo4bobobo2bo4b3o2bo
$b2obo3b4o2bob2o3b3ob4obo2b4obo3b2o2bob3ob3o5b2o3bo2bobo3bob2ob2o2b3o
bobo3b3o2b2o$b5obo3bob2obob13ob3obob2obob2obo3b4ob6ob2o2bobo4b2o4bo3b
obob3o2bobob4o$bobob2o3b2o2b3o6b3o2bo6bo3b2ob2o3b2o7bobob5ob2ob3ob3ob
ob3obob2o4bobo4bo$obo2bob2o3bobob2obobobo2bo3bo3b2obobob3o2b3ob3obo2b
2ob2ob2obob2o4bobobob3o2b4obo2bobo$b2o2b3o3bobo3b3o2bobo3b3o2bo3bob3o
b2obob2o2bo2bo4bobo3bobobob5o2b2obo8bobo2b4o$b7o2b2ob2obob3ob6o2b3o4b
3ob2obo2b4o5b2o6bo2bob4ob2obob5obob3o2bob6o$2obo2b4o3b2ob4o4b2o2b2ob2o
b2o4b2o2bo2b3o3b4ob2o3bob2o3bob2ob4ob5o2b7o3bo$3o3bob2obob3o2b4ob2obo
3b3o2bobo3bob3o2bobo2bo2bo2bobobo3b2o3bobob3ob3o2b5obo2bo3b2o$2o2bob2o
2bo6b2obobob2o2bo4b5o5b2ob3obo4b6ob3obo2bo2bo2bob4ob2o2b2obobobob3o$o
3bob2obo3b4obobo2bob2o3b3o4bobob2o9bo3bo4b2ob2o2b3o2bobo5b3ob3o3bo2b2o
b3o$b5o2bob5obobo2b2obo2b2obo3b2o2b6o2b7o2bobob2o5bobo2b3o2b2obo2bo7b
o3bo2b3o$b2o2b2o2bob2o4bo2bob3o3bo2bob2o6b3o2bob3o4b7ob2ob2obo3b3o5bo
2b6obobo2b2obo$2obob3o2bo3bobo2b2obob3ob3obobo2bobo2b3o3b2o2bobobobo4b
3obo6b2o4bobo2b3o2b3ob2ob2o$2bobob3o6b3obo2bo2b2ob3o5b3obo2bob2o2b3ob
2obo2bobob2o3bob2obo6bo2bobo2bob2o3bob2o$o2b2o4b4o5bo2bo2bob2o2b4o4bo
b4obob2obobobob2obobobo3b8obob3o2b12ob2o$bo2bo2bo2bob3o3b2ob2o2b2obo2b
o3bo2bob2o2bo4b4o2bo2b2obo4b2ob2o2bob2ob3obo8bo3bo2b2o$3b5ob7o2b2o2b3o
3b3obobo2bo2bobob3o4b2o2bobobob3o6b2o2b3o3b2o3b4o4b5o$o4bob4o2b2obo2b
o4b4obo2b2o2b6ob4o2b3obo8b2o4b3o2bo4b3o3b2obo4bob2ob2o$b2ob3o2bob3obo
3b2obob3o2bob3ob3obobobob2ob2obo3bob2o2b2o5bob2o2bobo2bo4bo2bobo2b2o2b
3o$obo2bobo2b4o2bobob2ob3o6b3obob3ob2o4bo3bob4o2bo2bo2bob2o6b2ob2obob
ob3o4bobo2b2o$bobo3b4o2bob2o2b3o2b2o4b6ob2o3b2o2b2o3b3o2b2obo2bo2b2ob
obo2b3o3bob4o6b5obo$b3ob3ob4ob2obo3bo3bobo4b3o6b4o4bo3b3o2b2o2b2ob2o2b
3o4bobobobo4bob7obobo$o7b6o6b2ob2obob2o2bo2b2o3bo3b2o3bobob2o4b3o2bob
obob3ob3o5b2o2bo4bobo2bo2bo$b2o2bo3b2o3b4obo3bobob2o4bob2o5bo2b3ob3o2b
obo2bo8b2ob2o3bo3b2o2b2o4b5o2bobo$ob2o2b2o2bob5ob2o5b2o3bobo2b2o2bo2b
2o2b2obo4bob7ob2o6b2obo5bo3b2ob3o2bob3o$obobobob2obo2b4o2bo5b3o6b5ob2o
bo3bo4b2o2bo5bob2ob2obobobo6b2o2bob5o2bo$4obob3obob5o2b4ob3obobobob3o
b2o2bo2b3o4bo3bobobo5b3ob5o4bob3o2b2o2bobo2bo$ob3ob2o4b2o3bo5bo4bob4o
2b2ob2ob3o3bobobob2obo2b2o2b3ob2obobobo3bob3obo2bobobob2o2bo$3b6o5b3o
3bob2obob2obobobob4obob2o3b2o4b2obo6b8obob3o2b10o2b2ob2ob2o$ob2ob4obo
bo2bob4ob7o3b2ob3o2bo2bo2bo2bob2o3b2o2bob2obob2obo2bo4bobob8obobobob2o
$5o3b2o3b2ob4o7b2o7bobo3bobo3bob4ob3ob5obo2bo7bob2o3bob7obobo$3o3bo3b
3ob3o7b2obob3obob2o2bo3b2o2b2o4b3ob3o2bo2b3obo6b3o3bo2b2ob2obo2bo$ob4o
bob2obobo2bobo2bo3b2o4b4obo3bobo4b3o2b2o2b3o3bob2o3b3o2bo3bobo5b4o4bo
bo$ob2o2b4o2bobo2b2o3b3obo2b3ob2o3bo3bo2b2o4b2obo3b2obo2bobo2b4ob4o2b
2ob2obob8obobo$2b2ob2o2bo4b3o2b2obob2o3bobo3b2o5bo3bobob2ob3obo2bobob
2ob3o3b2o2b2ob5ob2o2bob2o4bo$4bobobobo2b2o2b2o3bo5b3o2b2o3bo3b3obo3bo
bob3ob4obo3b2o3b2o2b4ob3o3b2ob4ob2obo$2bo3b3o2bo5b4obo6bo2bo2bo2bob2o
b3ob3ob2o4b2o3b2o2b3obobo3b2o3bo3bo4b3ob4obo$3bo2b3o2bo2bo2b2ob3ob2ob
obobo3bobo5bobo3bobo3b3o4b3o3bobobo2bo2b5ob3o4bobo5bo$2o4bo2bo2b5ob2o
3bobob3ob4ob2o2b2o5b4ob3obob3ob2o4bobob4o4b5obo3bob3o2bobo$bo2bo3bobo
b4o3bobobobobo2bobob5o4bobob2ob2o5bobo6bob3o3b6obobobo2b3o2b4ob2o$b2o
3b2ob4ob3ob4o2bo2b2o2bo4b4o5bo3bobo4bobo3bobo4b10ob3ob3o5bob3obo$2b2o
b2obob2ob2obo2bo9b2ob2ob2ob3o3b2ob2obo2bobo3bo2b4obo2b4obob2o8b4obo3b
3o$2b2ob4o3bo2bob2o2bobo2bo4b2obobobo5bob2o2b3ob2o3bo8b2ob3ob2ob4o3b3o
b3o2bobo$2ob6obobo2bob3ob7o2b2o2b2o3b2ob2o2b3ob2o3b4o3b2o3bo2bob6obob
2o4b3o3bo2bobo$o2b2o3bob2o2b3ob2ob4o2bo6bo2b2o2bo7b2ob2obo2bobo4b2obo
bo2bobo2b5o4bo3bob2o3b2o$o2bo2b2ob6ob5obo2bobo5b6ob2ob2o2bob3o3bob2o2b
3o2b3o7bo4b2o2bo2bobo2b5obo$3b2o2b3ob2obo2bob2ob3o2b2ob2ob2ob3o2b2o4b
o2bo2b2ob3ob2obo3b2o3b3obo3bob3obo2bobobo3bobo$3obobo6b4o3bobo5b4o4b3o
4bo3b2obo4bob2obo4b2ob2o5bobo6bob2o3bobobo2b2o$3bob3o6bo5b6ob10o2bobo
bo4bo2b4o4b2ob2o2bob3o4bo2bo2b2o3bo2b3o4b2o$b3o2bo3bo2b3o2b2o4bo2bo3b
ob3ob5o2b2o3b2obobo2b2o2b2obobo2b2obo5bob2o2bo2bo7bo2bo!
[[ THEME Day ]]

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 10th, 2021, 11:46 am

The naming of states in the "none" rule correspond to that of a Generations rule, which doesn't really make sense since none isn't exactly a Generations rule. Can be seen when mousing over cells as well as in Help > Info > Pattern.

Code: Select all

x = 16, y = 16, rule = none:P16,16
.ABCDEFGHIJKLMNO$PQRSTUVWXpApBpCpDpEpFpG$pHpIpJpKpLpMpNpOpPpQpRpSpTpU
pVpW$pXqAqBqCqDqEqFqGqHqIqJqKqLqMqNqO$qPqQqRqSqTqUqVqWqXrArBrCrDrErFrG
$rHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrW$rXsAsBsCsDsEsFsGsHsIsJsKsLsMsNsO$sP
sQsRsSsTsUsVsWsXtAtBtCtDtEtFtG$tHtItJtKtLtMtNtOtPtQtRtStTtUtVtW$tXuAuB
uCuDuEuFuGuHuIuJuKuLuMuNuO$uPuQuRuSuTuUuVuWuXvAvBvCvDvEvFvG$vHvIvJvKvL
vMvNvOvPvQvRvSvTvUvVvW$vXwAwBwCwDwEwFwGwHwIwJwKwLwMwNwO$wPwQwRwSwTwUwV
wWwXxAxBxCxDxExFxG$xHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxW$xXyAyByCyDyEyFyGyH
yIyJyKyLyMyNyO!
In addition, as a result of this, many of the three digit cases tend to have their full names cut off if the resulting string is too long, which is easily noticeable in the negative quadrants (see state 99 vs. state 100).

Could all the states in the none rule instead have their names be changed to be their state number in hexadecimal instead, from 00 to FF? This effectively solves both problems: the states are no longer erroneously labelled as Generations states, and since a state's name will always have 2 characters, it shouldn't get cut off either. (The only problem I can see with this is that assigning states colors may cause a conflict with decimal numbering - perhaps it'd be better to prefix them with 0x instead, which will double the length, but should still be short enough to prevent cutoffs.)

Another thing I noticed, likely also a result of this pseudo-Generations treatment, is that the layers option makes higher states taller. Not sure if this is intended, though.

Yet another is that Help > Info > Pattern lists the neighbourhood as Moore, despite the fact that since there isn't any evolution going on there effectively is no neighbourhood.

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 10th, 2021, 11:51 am

Hello LifeViewer users!

I'm considering merging the steps per second and generations per step controls.

At the moment there are two controls:
lvspeed.png
lvspeed.png (6.13 KiB) Viewed 1438 times

The left hand one sets how many steps per second LifeViewer processes.
The right hand one sets how many generations are processed each step.

The default is that during playback LifeViewer advances one generation 60 times per second.

Having separate controls does mean that you can, for example, tell LifeViewer you want it to advance 10 generations once a second [1/s, x10] as opposed to advancing 1 generation every 10th of a second [10/s, x1]. However I'm not sure the former is helpful or often used.

So for simplicity I'd like to create a single control that goes from 1 generation a second up to 3840 (64 x 60) generations per second, the default being 60 generations per second as now.

Thoughts?

hotdogPi
Posts: 942
Joined: August 12th, 2020, 8:22 pm

Re: Pattern viewer for forum threads

Post by hotdogPi » December 10th, 2021, 11:56 am

I support the change, even though it will eliminate the backwards object trolls.
User:HotdogPi/My discoveries

Periods discovered: 5-16,⑱,⑳G,㉑G,㉒㉔㉕,㉗-㉛,㉜SG,㉟,㊱,㊳S,㊵㊷㊹㊺㊽㊿,54G,55G,56,57G,60,62-66,70,72,74S,75,76S,80,84,90,96,100,102S,108,110,114G,116,117G,120,126G,128S,138,147,154,156,196S,217,486,576

S: SKOP
G: gun

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 10th, 2021, 11:59 am

rowett wrote:
December 10th, 2021, 11:51 am
So for simplicity I'd like to create a single control that goes from 1 generation a second up to 3840 (64 x 60) generations per second, the default being 60 generations per second as now.

Thoughts?
Would both still be independently configurable from a more advanced menu and/or script commands?

Chris857
Posts: 23
Joined: June 10th, 2020, 11:26 pm

Re: Pattern viewer for forum threads

Post by Chris857 » December 10th, 2021, 12:20 pm

rowett wrote:
December 10th, 2021, 11:51 am
Hello LifeViewer users!

I'm considering merging the steps per second and generations per step controls.
One way I use it, when looking at things like spaceships or oscillators (or partials), is to set the generations per step to the period of the thing and then I can step forward or backward once and see that is does follow that period (or for a partial, see how much fails). Doesn't sound like that would still work with the proposed change.

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 10th, 2021, 12:46 pm

Chris857 wrote:
December 10th, 2021, 12:20 pm
One way I use it, when looking at things like spaceships or oscillators (or partials), is to set the generations per step to the period of the thing and then I can step forward or backward once and see that is does follow that period (or for a partial, see how much fails). Doesn't sound like that would still work with the proposed change.
I use the step control for similar reasons. I'm mainly after removing steps per second < 60 for generations per step > x1.
If I have the control display 1/s -> 59/s -> 1x -> 64x as you move it left to right then I think it retains what you need.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 10th, 2021, 12:50 pm

Could a demonstration build featuring this change be provided such that we can test out this new system in action?

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 10th, 2021, 12:54 pm

muzik wrote:
December 10th, 2021, 11:59 am
Would both still be independently configurable from a more advanced menu and/or script commands?
The plan would be to keep the existing [[ GPS ]] and [[ STEP ]] script commands. Under the new proposal setting a [[ GPS ]] of < 60/s would also set [[ STEP ]] to 1x, and setting [[ STEP ]] to > 1x would also set [[ GPS ]] to 60/s. I don't imagine there are many scripts out there where this will cause an issue.

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 10th, 2021, 12:57 pm

muzik wrote:
December 10th, 2021, 12:50 pm
Could a demonstration build featuring this change be provided such that we can test out this new system in action?
Yes. I'll post it to my website first for testing and feedback before it gets unleashed on the forums and Wiki.

There are several changes being worked on that will need thorough testing:
  • This speed control simplification
  • Ability to scale the X and Y size of the grid independently as the pattern grows (reduces memory consumption for many patterns)
  • Moving to a fixed timestep model to remove the janks that occur every N simulation steps

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 10th, 2021, 4:56 pm

Not sure why this single cell flashes:

Code: Select all

x = 2, y = 2, rule = B3/S23
o!
[[ STARTFROM 1000000 ]]
Cancelling the startfrom then reversing back to the start seems to take a lot of memory.

The time counter in the T menu seems to increase oddly for empty patterns: (would not be surprised if these increases correspond perfectly to frames which would cause the aforementioned jolting and flickering)

Code: Select all

x = 2, y = 2, rule = B3/S23
b!
I found those three above bugs while creating a demonstration for the following bug: from high starting generations, opening the T menu and then pressing the step back button after arriving at that generation will give you an elapsed time of NaN seconds.

Code: Select all

x = 2, y = 2, rule = B3/S23
2o$2o!
[[ STARTFROM 1000000 ]]
In some rulespaces, Select All on bounded grids selects everything, including the usually non-selectable border cells, which it probably shouldn't.

Code: Select all

x = 2, y = 2, rule = B3/S23:P12,12
2o$2o!

Code: Select all

x = 2, y = 2, rule = R1,C2,S2-3,B3:P12,12
2o$2o!
And Select All doesn't seem too fond of any of the cells in the none rule, aside from state 1:

Code: Select all

x = 16, y = 16, rule = none:P16,16
.ABCDEFGHIJKLMNO$PQRSTUVWXpApBpCpDpEpFpG$pHpIpJpKpLpMpNpOpPpQpRpSpTpU
pVpW$pXqAqBqCqDqEqFqGqHqIqJqKqLqMqNqO$qPqQqRqSqTqUqVqWqXrArBrCrDrErFrG
$rHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrW$rXsAsBsCsDsEsFsGsHsIsJsKsLsMsNsO$sP
sQsRsSsTsUsVsWsXtAtBtCtDtEtFtG$tHtItJtKtLtMtNtOtPtQtRtStTtUtVtW$tXuAuB
uCuDuEuFuGuHuIuJuKuLuMuNuO$uPuQuRuSuTuUuVuWuXvAvBvCvDvEvFvG$vHvIvJvKvL
vMvNvOvPvQvRvSvTvUvVvW$vXwAwBwCwDwEwFwGwHwIwJwKwLwMwNwO$wPwQwRwSwTwUwV
wWwXxAxBxCxDxExFxG$xHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxW$xXyAyByCyDyEyFyGyH
yIyJyKyLyMyNyO!

Code: Select all

x = 16, y = 16, rule = none:P16,16
..BCDEFGHIJKLMNO$PQRSTUVWXpApBpCpDpEpFpG$pHpIpJpKpLpMpNpOpPpQpRpSpTpU
pVpW$pXqAqBqCqDqEqFqGqHqIqJqKqLqMqNqO$qPqQqRqSqTqUqVqWqXrArBrCrDrErFrG
$rHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrW$rXsAsBsCsDsEsFsGsHsIsJsKsLsMsNsO$sP
sQsRsSsTsUsVsWsXtAtBtCtDtEtFtG$tHtItJtKtLtMtNtOtPtQtRtStTtUtVtW$tXuAuB
uCuDuEuFuGuHuIuJuKuLuMuNuO$uPuQuRuSuTuUuVuWuXvAvBvCvDvEvFvG$vHvIvJvKvL
vMvNvOvPvQvRvSvTvUvVvW$vXwAwBwCwDwEwFwGwHwIwJwKwLwMwNwO$wPwQwRwSwTwUwV
wWwXxAxBxCxDxExFxG$xHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxW$xXyAyByCyDyEyFyGyH
yIyJyKyLyMyNyO!
Back on the topic of bounded grids, mousing over one of the border cells will always say it's dead (or dying 1 in the case of the none rule), rather than saying "boundary" as they're called in script commands as well as Help -> Info -> Colors. (Would it be a better choice to have the edges of bounded grids render like they do in Golly, as well as the edges of "non-bounded" LifeViewer grids, where the outside is entirely a solid color?)

The following error message doesn't make much sense, as non-numeric theme names are also acceptable:

Code: Select all

x = 4, y = 4, rule = B3/S23
4o$o2bo$o2bo$4o!
[[ THEME String ]]
To finish this off with a suggestion: most translucent UI elements can have their RGB colors customized. Would it be possible to support RGBA customization such that their translucency level can optionally be modified with scripts as well? This would affect UI button backgrounds, highlighted buttons, selected buttons, cell selections, pasted selections and advanced selections, as well as the red FPS flashing if customization of that becomes possible.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 11th, 2021, 9:48 pm

Patterns on bounded grids don't appear to be centered correctly upon first opening the viewer:

Code: Select all

x = 0, y = 0, rule = B3/S23
2o$2o!
[[ GRID ]]

Code: Select all

x = 0, y = 0, rule = B3/S23:T8,8
2o$2o!
[[ GRID ]]

Code: Select all

x = 0, y = 0, rule = B3/S23
10o$o8bo$o8bo$o8bo$o3b2o3bo$o3b2o3bo$o8bo$o8bo$o8bo$10o!
[[ GRID ]]
I also noticed that gridmajor's position doesn't seem to be fixed like it is in Golly. In the latter, the major grid lines will intersect at the bottom-left corner of a cell at (0,0). However, opening each of the three viewers above and finding (0,0) in each pattern will lead to a different cell for each of them, none of which have gridmajor at their bottom left. The only thing consistent between the three of these patterns is roughly where the major grid lines are when the pattern is opened. I'd expect that the GRIDMAJOR lines would always start from the bottom left half of the cell at (0,0) as to line up with Golly.

When these two equivalent patterns are deleted by the world border, the T menu keeps insisting that 12 cells are alive in the former for all eternity. In the latter, it only states that 12 cells are alive in the exact generation where all are killed, but unlike in the former case (which is deleted 4 generations later for some reason, despite the fact that these, again, should be equivalent), this results in the reporting of the pattern's death to be delayed by one generation, since it actually dies in generation 119. In both of these cases, the

Code: Select all

#CXRLE Pos=-600,-600
x = 5, y = 4, rule = B3/S23
bo$o$o3bo$4o!
[[ MAXGRIDSIZE 9 THEME Red STARTFROM 115 ZOOM 8 X -240 Y -192 GPS 2 SHOWGENSTATS ]]

Code: Select all

#CXRLE Pos=-600,-600
x = 5, y = 4, rule = R1,C2,S2-3,B3
bo$o$o3bo$4o!
[[ MAXGRIDSIZE 9 THEME Red STARTFROM 115 ZOOM 8 X -240 Y -192 GPS 2 SHOWGENSTATS ]]
The birth and death counts for these also don't line up properly, in a very similar vein to what was reported in this post. (Perhaps it would be a good idea to have a separate "killings" counter for KILLGLIDERS, boundary pattern deletions and other artificial actions, to separate it from "deaths" that arise from normal pattern evolution, to alleviate confusion? This could also allow for how many gliders that have escaped from a pattern to be calculated, as you'd just have to divide it by 5, and anything that isn't a multiple of 5 would indicate some escaping exotic spaceship.) In addition, after death, Select All selects a 1x1 region near the origin.

Selections seem to behave very oddly with custom CXRLE values, with areas outside of the boundary being selectable (if impossible to move) and areas within it being off-limits (even if they can be moved into it):

Code: Select all

#CXRLE Pos=-250,-250
x = 0, y = 0, rule = B3/S23
2o$2o!
[[ MAXGRIDSIZE 9 ZOOM 1 ]]

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 12th, 2021, 5:45 am

muzik wrote:
December 9th, 2021, 5:12 pm
Just in case there was a misunderstanding of some sort earlier that made my intentions for its implementation unclear, I want to reiterate that an "alive, and has been since the very beginning" state would only require a single state to implement, not another 63, since the "background"/"dead, and has been since the very beginning" also only requires a single state. Unless there's something significant that I'm missing, there's little to no difference between the two, and just like how state 0 is always-dead with 1 through 63 ramping, state 64 would be always-alive with 65 through 127 ramping, balancing both of them out equally.
For two-state patterns when cells are born they start at 64 (born) and if they stay alive then over the next 63 generations ramp up to 127 (alive for at least 63 generations).

For your question we're talking about the specific case when T=0 (i.e. on pattern load).

On pattern load dead cells are set to 0 (never been alive) and live cells are set to 64 (born). I could have arbitrarily decided that on pattern load live cells are set to 127 (alive for at least 63 generations). However the intention is that the cell history and longevity are for the current session and the big bang in this case starts at T=0.

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 12th, 2021, 6:34 am

muzik wrote:
December 10th, 2021, 4:56 pm
Not sure why this single cell flashes
Fixed in the next build, thanks.
muzik wrote:
December 10th, 2021, 4:56 pm
Cancelling the startfrom then reversing back to the start seems to take a lot of memory.
How are you measuring this?
muzik wrote:
December 10th, 2021, 4:56 pm
...from high starting generations, opening the T menu and then pressing the step back button after arriving at that generation will give you an elapsed time of NaN seconds.
Fixed in the next build, thanks.
muzik wrote:
December 10th, 2021, 4:56 pm
In some rulespaces, Select All on bounded grids selects everything, including the usually non-selectable border cells, which it probably shouldn't.
Fixed in the next build, thanks.
muzik wrote:
December 10th, 2021, 4:56 pm
And Select All doesn't seem too fond of any of the cells in the none rule, aside from state 1
Yes there are many things not implemented on the none rule. Most of it is on the backlog.
muzik wrote:
December 10th, 2021, 4:56 pm
Back on the topic of bounded grids, mousing over one of the border cells will always say it's dead (or dying 1 in the case of the none rule), rather than saying "boundary"
Fixed in the next build, thanks.
muzik wrote:
December 10th, 2021, 4:56 pm
Would it be a better choice to have the edges of bounded grids render like they do in Golly, as well as the edges of "non-bounded" LifeViewer grids, where the outside is entirely a solid color?
No.
muzik wrote:
December 10th, 2021, 4:56 pm
The following error message doesn't make much sense, as non-numeric theme names are also acceptable
Fixed in the next build, thanks.
muzik wrote:
December 10th, 2021, 4:56 pm
To finish this off with a suggestion: most translucent UI elements can have their RGB colors customized. Would it be possible to support RGBA customization such that their translucency level can optionally be modified with scripts as well? This would affect UI button backgrounds, highlighted buttons, selected buttons, cell selections, pasted selections and advanced selections, as well as the red FPS flashing if customization of that becomes possible.
Yes it's possible. I'll put it on the backlog.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 12th, 2021, 1:21 pm

rowett wrote:
December 12th, 2021, 6:34 am
muzik wrote:
December 10th, 2021, 4:56 pm
Cancelling the startfrom then reversing back to the start seems to take a lot of memory.
How are you measuring this?
The massive frame drops I get when hitting the reset button, as well as the viewer's tendency to freeze every few seconds after the fact, seem to imply it strongly enough. Help > Memory > In Use also seems to be a hundred times greater than a newly opened empty pattern after refreshing (150M as opposed to 1.3M).

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 12th, 2021, 1:44 pm

Bounded grids in Golly allow for straight lines to be drawn against the edge if the drawing started within the bounds and is dragged outside of it, causing a straight line to be drawn against the boundary. (Attempting to start drawing outside of the boundary displays an error message.) This does not happen in LifeViewer (drawing just doesn't happen once the pencil is out of bounds) but is something I find somewhat useful. Can it be ported?

Code: Select all

x = 2, y = 2, rule = B3/S23:T20,20
2o$2o!
----

When nudging a selection on a bounded grid, once it reaches the edge of said grid, movement is forbidden. Could it instead be made to interact with that side of the grid like actual cells would (e.g. on a torus, the selection would start to move to the opposite side)?

----

In conjunction with this:
muzik wrote:
December 8th, 2021, 2:45 pm
Can 2-state random fill be made to use the state currently selected for drawing, rather than only using the final state?

Code: Select all

#C Quick template for Select All
x = 20, y = 20, rule = Fredkin_mod6_vonNeumann
A19$19.A!
could the state currently selected for drawing also be made visible and able to be changed in the select menu?

----

Like was stated earlier with bounded grid cells not displaying BOUNDED when moused over, cells outside of "unbounded" bounds don't display BOUNDARY either. Could this also be done?

Code: Select all

#CXRLE Pos=-600,-600
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 8 X -240 Y -240 GRID ]]
Another thing I noticed is that the grid appears over out of bounds areas, which is another thing inconsistent with Golly's rendering in which it just appears solid color.

----

Rotating hexagonal selections seems to have a chance of duplicating the contents elsewhere:

Code: Select all

x = 19, y = 23, rule = B/S0123456H
14bo$13b2o$12b4o$11b5o$10b7o$9b8o$8b10o$7b11o$6b13o$5b13o$4b13o$3b13o$
2b13o$b13o$13o$b11o$b10o$2b8o$2b7o$3b5o$3b4o$4b2o$4bo!
[[ ZOOM 8 ]]

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 12th, 2021, 4:45 pm

CXRLE only seems to be able to place a pattern so close to the grid boundary, after which case it caps off at a given value (192 in this case). Is this intended? It makes testing grid boundary stuff a tad more irritating than it should:

Code: Select all

#CXRLE Pos=-150,-150
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]

Code: Select all

#CXRLE Pos=-191,-191
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]

Code: Select all

#CXRLE Pos=-192,-192
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]

Code: Select all

#CXRLE Pos=-193,-193
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]

Code: Select all

#CXRLE Pos=-200,-200
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]

Code: Select all

#CXRLE Pos=-600,-600
x = 5, y = 4, rule = none
10o!
[[ MAXGRIDSIZE 9 ZOOM 4 X -200 Y -200 GRID ]]
Weird [R]History bug: If you cut/copy a pattern with gray cells such as what is provided below, then paste it elsewhere, running it will have alive cells pass through the gray cells as if they were marked cells (at least, the gray cells which get pasted into areas that weren't occupied from the selection that was cut from). This only works for that one play session - pausing and playing again will make it work as normal, as will restarting. (EDIT4: Rotation also allows for this bug to be seen.)

Code: Select all

x = 33, y = 4, rule = B2/SHistory
.F14.A14.F$F13.A17.F$14.A$.F14.A14.F!
And triangular cells don't seem to be properly aligned to where their rectangular variants are. Note how the SQUARECELLS case appears centered properly with AUTOFIT, but the normal triangular grid does not (also try manually switching Use Rectangles inside the viewer and note how the triangle and rectangle don't align as well as they should, or zooming out on the triangular grid and note that the cell seems to move sideways when surpassing 4.0):

Code: Select all

x = 1, y = 1, rule = noneL
o!
[[ AUTOFIT GRID ]]

Code: Select all

x = 1, y = 1, rule = noneL
o!
[[ AUTOFIT GRID SQUARECELLS ]]
Drawing on a hexagonal grid seems slightly flawed. It might be tricky to get this to happen, but try drawing on the right side of this cell - it may end up drawing the cell to its right instead of deleting the cell instead.

Code: Select all

x = 1, y = 1, rule = B/S0123456H
o!
[[ AUTOFIT GRID ]]

Code: Select all

x = 1, y = 1, rule = B/S0123456H
o!
[[ AUTOFIT GRID SQUARECELLS ]]
Normal square grid for comparison, in which this bug is not present:

Code: Select all

x = 1, y = 1, rule = B/S012345678
o!
[[ AUTOFIT GRID ]]
And a triangular grid to test the edits mentioned below:

Code: Select all

x = 1, y = 1, rule = B/S0123456789XYZL
o!
[[ AUTOFIT GRID ]]

Code: Select all

x = 1, y = 1, rule = B/S0123456789XYZL
o!
[[ AUTOFIT GRID SQUARECELLS ]]
EDIT: A closely related problem I found: drawing on the triangular grid works fine normally, but when rectangles are used for it, it still assumes triangular geometry, so drawing doesn't align with the rectangles as you'd expect.

EDIT2: And on a note related to that, drawing on a hex grid seems to always assume the offset square grid geometry, such that drawing inside the top or bottom region of that one central hexagonal cell I provided will modify cells above/below it instead.

EDIT3: Everything I said above also seems to apply to selections. And it applies to coordinates as well, but that's a different subject.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 12th, 2021, 10:54 pm

Quick recap of some stuff:

Hotkeys Without In-Viewer Buttons
- Copy Neighbourhood (CtrlB)
- [R]Super (AltG)
- [R]History (AltH)
- [R]Standard (AltJ)
- Advance Selection (CtrlSpace)
- Advance Outside (ShiftSpace)
- Random Pattern Fixed Rule (CtrlAltZ)
- Paste To Selection (CtrlShiftV)
- Copy Selection With Comments (CtrlShiftC)
- Copy Original Pattern (CtrlAltC)
- Open Clipboard As Pattern (CtrlShiftO)
- Clear Drawing State Cells (CtrlAltK)
- Integer Zoom (Shift1)

In-Viewer Buttons Without Hotkeys
- Random Fill Density
- Individual Themes
- Draw With States 10+

Viewer Elements Without Customisable Colors
- Permanently cyan text (help menus, hotkeys, VIEWONLY)
- Red FPS box flashing
- "Click to control" text - both colors
- Error message from invalid patterns (as opposed to invalid scripts)
- White text (e.g. Life ended at, Reset, Play) (it seems that All cells are dead is customizable via waypoint, intended?)
- Snow

----

The mouseover description for the Select option for clearing [R]History and [R]Super cells seems to count everything past the first [ (of [R]) as being part of the hotkey and therefore highlights it as cyan.

Code: Select all

x = 16, y = 16, rule = LifeHistory
3.2A8.A$3.2A8.A.A$13.2A4$4.2D$2.6D$.8D$.8D5.2A$10D4.2A$10D$.8D$.8D$2.
6D$4.2D!
[[ KILLGLIDERS ]]

Code: Select all

x = 17, y = 17, rule = LifeSuper
6P$P4.P$P.2A.P$P.2A.P$P4.P$P$P7.A.A$P.2H4.2A$P.HD5.A$P.HD$P.HD$P.HD8.
5P$P.HD12.P$P.H6DH3.2A.P$P.8H3.2A.P$2P14.P$17P!
When a triangular rule uses rectangular cells, normal selections conform to this, but pastes and advances still appear triangular for whatever reason. (This is another way to see the aforementioned offset triangles have from rectangles if you enable GRID.)

Code: Select all

x = 3, y = 2, rule = B/S0123456789XYZL
3o$3o!
[[ SQUARECELLS GRID ]]
Hexagons seem to work fine in both cases.

Doing this with the none rule and zoomed out more than 4.0 has some weird effects - the cell seems highly vertically offset and the color may not be accurate, and when zoomed out more than -1.0x the contents of that paste box seem to disappear:

Code: Select all

x = 3, y = 2, rule = none
3o$3o!
[[ SQUARECELLS GRID ]]
----

The LifeViewer window on this page has a text box that can be used for importing and exporting patterns, which is useful for mobile devices where the in-viewer functionalities for this do not work. Could this page also be made to include a text box that custom neighbourhoods can be exported to, and a region in which viewer-generated images and graphs can be saved to? A way to create a popup viewer on that page would also be helpful.

----

On the topic of mobile, the paste option is rather unfriendly. When you hit the paste button, the pattern will immediately be placed in that position when the touch is released, meaning there's no way to really move the pasted selection around much once you've touched the screen. Could a dedicated (possibly touch exclusive) button be added which completes the paste instead?

----

The bottom-left selection options in Super differ from that of History for reasons unknown. The latter has a 2-state random fill option, as well as an extra gap which pushes random fill density to the left for no apparent reason. [R]Super also seems to be treated more like a custom rule than an extension of LifeHistory in that aspect - random fill will use all states rather than just state 2 (and the 2-state fill uses state 25, which is completely useless for a random fill).

Code: Select all

x = 10, y = 10, rule = LifeHistory
5A5C$4ABD4C$3ABDBD3C$2ABDBDBD2C$ABDBDBDBDC$FDBDBDBDBE$2FDBDBDB2E$3FDB
DB3E$4FDB4E$5F5E!

Code: Select all

x = 10, y = 10, rule = LifeSuper
5A5C$4ABD4C$3ABDBD3C$2ABDBDBD2C$ABDBDBDBDC$FDBDBDBDBE$2FDBDBDB2E$3FDB
DB3E$4FDB4E$5F5E!
I also want to mention that [R]History states are capitalized differently from other cell states, which doesn't happen elsewhere from what I can see. See Help > Info > Theme to see this in action. [R]Super also seems subject to this.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 13th, 2021, 12:19 am

Something about LifeViewer (possibly related to embedded/thumbnail viewers) seems to be causing repeated crashes on Safari in iOS 15:
https://www.conwaylife.com/forums/viewt ... 212#p39212
https://lazyslug.com/lifeview/plugin/autofit.html

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 14th, 2021, 4:24 am

muzik wrote:
December 13th, 2021, 12:19 am
Something about LifeViewer (possibly related to embedded/thumbnail viewers) seems to be causing repeated crashes on Safari in iOS 15:
https://www.conwaylife.com/forums/viewt ... 212#p39212
https://lazyslug.com/lifeview/plugin/autofit.html
See here.

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 14th, 2021, 8:19 am

How exactly is the "advance" option intended to work? Every time I try to use it, the non-zero contents of the selection appear to turn red, and switching to draw or pan mode deletes everything that was selected. Is it still an early prototype functionality that isn't fully developed (hence why there's currently no in-viewer button for it)?

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 15th, 2021, 1:25 pm

muzik wrote:
December 14th, 2021, 8:19 am
How exactly is the "advance" option intended to work?
  1. Make a selection
  2. Press [Control-SPACE] to advance the pattern in the selection
  3. At this point the cells in the selection are lifted above the grid and will evolve without impacting the pattern below
  4. Repeat step 2 as many times as required
  5. Press [Return] to drop the evolved pattern onto the grid below or [Escape] to cancel the evolution and revert to before the evolution began

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 16th, 2021, 6:30 pm

It seems as though killgliders stops working properly for this pattern after 14000 or so generations:

Code: Select all

x = 16, y = 16, rule = B38/S23
bob4o2b2o2bo$2b3ob3ob6o$2b4ob4o4bo$bo2bo4b3o2bo$2obob3o2b2o2bo$o8b2o2b
obo$3ob2ob4ob2o$2o2b3o5bo$2o7b2ob2o$ob5o3b6o$5bo3b6o$2b2ob2ob3ob3o$ob
2obo2b3obo$bob3ob2o2bo$3o2bob4obobo$b4o3b6o!
[[ KILLGLIDERS THEME Mono ZOOM -8 AUTOSTART STEP 64 ]]

User avatar
muzik
Posts: 4586
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Pattern viewer for forum threads

Post by muzik » December 17th, 2021, 1:24 pm

As of the iOS 15.2 update I also seem to be getting much, much slower frame rates, which I'm not sure is fixable - it's not common to get anything above 30fps anymore.

User avatar
rowett
Moderator
Posts: 2638
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Pattern viewer for forum threads

Post by rowett » December 19th, 2021, 1:49 pm

muzik wrote:
December 17th, 2021, 1:24 pm
As of the iOS 15.2 update I also seem to be getting much, much slower frame rates, which I'm not sure is fixable - it's not common to get anything above 30fps anymore.
In general if LifeViewer was working, an update to the browser happened, and then bad things happen to LifeViewer, then it's most likely the browser causing the problem.

Post Reply