Fixed in build 1289, thanks.muzik wrote: March 17th, 2025, 12:01 pm When viewing the table of periods or the cell period maps, something appears to be eating a lot of performance for unknown reasons.
Yes. I'll put it on the list...
Fixed in build 1289, thanks.muzik wrote: March 17th, 2025, 12:01 pm When viewing the table of periods or the cell period maps, something appears to be eating a lot of performance for unknown reasons.
Yes. I'll put it on the list...
When will the neighbour count colours be made customizable so I can change how it looks (and propose colour schemes for themes)?
After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.muzik wrote: March 17th, 2025, 12:01 pmCurrently running the 5-state shuttle to see if it can be correctly identified.
Code: Select all
x = 54, y = 2, rule = MarBlocks-5-rep
o49bobo$bo48bo2bo!Code: Select all
x = 54, y = 2, rule = MarBlocks-5-rep
A3.B.C.C.C.A.D.A3.C.B3.C.C.A3.D.D.B.C3.C.B.C.C.A$.A2.B.C.C.C.A.D.A3.C
.B3.C.C.A3.D.D.B.C3.C.B.C.C2.A!Code: Select all
x = 3, y = 3, rule = B3/S23
o$obo$2o!Code: Select all
x = 7, y = 8, rule = B2/S34H
2bo$4bo$2bo3bo$2bo$3bo$o2bo$bo$3bo!Me too. At that many generations it's using 30 bits and the hash is only 32 bits so will likely need widening.muzik wrote: March 18th, 2025, 2:36 am After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.
Fixed in build 1290, thanks.
No, fixed.muzik wrote: March 18th, 2025, 3:45 am Are TitleBG, TitleFG, etc. supposed to appear in Help > Info > UI for embedded viewers, since they don't use any of these colours?
I assume this can be done dynamically as the number of required bits increases? Would there be any performance benefit to, say, starting out with 16 and increasing that to 32 if this is considered to be required?
I've further improved the hash algorithm in build 1291. Identify is now up to nearly 2B generations and still going...muzik wrote: March 18th, 2025, 2:36 am After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.
For timescales such as this it may be worth reducing the bounding box as much as possible. Using plane boundaries may improve things (unless bounded-cells cost more to draw to the point where it slows things down more than the decreased bounding box size would increase speed):rowett wrote: March 19th, 2025, 9:45 amI've further improved the hash algorithm in build 1291. Identify is now up to nearly 2B generations and still going...muzik wrote: March 18th, 2025, 2:36 am After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.
Code: Select all
x = 48, y = 2, rule = MarBlocks-5-rep:P48,2
47.A$47.A!Code: Select all
x = 48, y = 1, rule = Fredkin_mod5_vonNeumann:P48,1
47.A!
[[ COLOR 1 128 255 128 COLOR 2 128 128 255 COLOR 3 255 128 128 COLOR 4 255 255 128 ]]Yes. Identify is now effectively unlimited.muzik wrote: March 15th, 2025, 8:29 am Has the Identify period limit of 2^22 / 10^7 been intentionally removed?
Fixed in build 1291, thanks.muzik wrote: March 15th, 2025, 8:29 am All of this aside, things seem to perform smoothly until 100 million generations or so, after which things get choppy
Code: Select all
x = 7, y = 7, rule = B3/S23
2o$o2b2o$5bo$bobobo$bo3b2o$2b3o$4bo!
[[ COLOR ALIVE Red COLOR ALIVERAMP Lime ]]Code: Select all
x = 21, y = 21, rule = M0,4,1,3,8,5,6,11,2,9,10,14,12,7,13,15:T20,20
$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o$b19o
$b19o$b19o$b19o$b19o$b19o!
[[ SHADER Neighbour ]]Code: Select all
x = 9, y = 17, rule = B36-in7e/S23
4bo$4bo$4bo2$3o3b3o2$4bo$4bo$4bo2$3b3o2$bo5bo$bo5bo$bo5bo2$3b3o!
[[ SHADER Neighbour AUTOSTART ZOOM 16 GPS 12 TRACK 0 -7/34 ]]Code: Select all
x = 10, y = 10, rule = B/S
2o6b2o$2o6b2o7$2o6b2o$2o6b2o!
[[ STARTFROM 1 ]]Code: Select all
x = 10, y = 10, rule = M0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2o6b2o$2o6b2o7$2o6b2o$2o6b2o!
[[ STARTFROM 1 ]]Code: Select all
x = 5, y = 4, rule = B3/S23-ijn4a
bo2bo$o$o3bo$4o!Code: Select all
x = 2, y = 2, rule = B3/S23
2o$2o!
[[ AUTOIDENTIFY ]]Code: Select all
x = 2, y = 2, rule = B/S:T20
!
[[ PASTEDELTA -1 0 PASTET EVERY 1 PASTE o! 0 0 ]]Code: Select all
x = 1, y = 1, rule = B1234/S01234V:T10,10
!
[[ PASTEDELTA -1 0 PASTET EVERY 1 PASTE o! 0 0 STARTFROM 128 ZOOM 8 MAXGRIDSIZE 9 ]]Code: Select all
x = 1, y = 1, rule = R1,C2,S0-4,B1-4,NN:T10,10
!
[[ PASTEDELTA -1 0 PASTET EVERY 1 PASTE o! 0 0 STARTFROM 128 ZOOM 8 MAXGRIDSIZE 9 ]]Code: Select all
x = 1, y = 1, rule = B1234/S01234V:K10+1,10
o!Code: Select all
x = 1, y = 1, rule = B1234/S01234V:K10,10+1
o!Code: Select all
#C [[ AUTOFIT ]]
x = 50, y = 50, rule = AntiLife-RuleLoader:T50
50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o
$50o$50o$50o$50o$50o$50o$24o2b24o$24o2b24o$50o$50o$50o$50o$50o$50o$50o
$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o$50o!
@RULE AntiLife-RuleLoader
@TABLE
n_states:2
neighborhood:Moore
symmetries:permute
0,0,0,0,0,0,0,0,0,1
0,0,0,0,0,0,0,0,1,1
0,0,0,0,0,0,0,1,1,1
0,0,0,0,0,0,1,1,1,1
0,0,0,0,0,1,1,1,1,1
0,0,1,1,1,1,1,1,1,1
0,1,1,1,1,1,1,1,1,1
1,0,0,0,1,1,1,1,1,0Code: Select all
x = 1, y = 1, rule = LifeRLB0
!Now 5.3B...rowett wrote: March 19th, 2025, 9:45 amI've further improved the hash algorithm in build 1291. Identify is now up to nearly 2B generations and still going...muzik wrote: March 18th, 2025, 2:36 am After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.
Code: Select all
x = 1, y = 1, rule = B1234/S0123V:T10,10
!
[[ PASTEDELTA -1 0 PASTET EVERY 1 PASTE o! 0 0 STARTFROM 128 ZOOM 8 MAXGRIDSIZE 9 ]]Code: Select all
x = 1, y = 1, rule = B123/S0123LE:T10,10
!
[[ PASTEDELTA -1 0 PASTET EVERY 2 1 PASTE o! 0 0 ZOOM 8 MAXGRIDSIZE 9 AUTOSTART STOP 19 STEP 19 ]]Code: Select all
x = 2, y = 2, rule = B123/S0123LE:T10,10
$bo!
[[ STARTFROM 10 ]]Code: Select all
#CXRLE Pos=192,192
x = 20, y = 20, rule = B3/S23:T20,20
o!Code: Select all
x = 1, y = 1, rule = B3/S23
o!
[[ TRACK 2 2 PASTEDELTA 2 2 PASTET EVERY 1 0 PASTE 5bo$5bo$5bo$5bo$5bo$6o! ]]Code: Select all
x = 1, y = 1, rule = R1,C2,S,B3
!
[[ MAXGRIDSIZE 9 X -255 PASTE o$o$o$o$o$o! -253 -6 AUTOSTART STOP 256 LOOP 257 ]]Code: Select all
x = 1, y = 1, rule = R1,C2,S2-3,B3
!
[[ PASTEMODE XOR PASTET EVERY 1 PASTEDELTA 1 0 PASTE o! 0 0 PASTE o! 0 0 AUTOSTART STOP 256 ]]Code: Select all
x = 10, y = 10, rule = horriblestrobe:T10
10o$10o$10o$10o$10o$10o$10o$10o$10o$10o!
@RULE horriblestrobe
@TABLE
n_states:2
neighborhood:Moore
symmetries:permute
0,0,0,0,0,0,0,0,0,1
1,1,1,1,1,1,1,1,1,0Code: Select all
x = 7, y = 5, rule = B2in3/S123a
bo$o4bo$bo3bo$bo4bo$5bo!
[[ AUTOIDENTIFY ]]Before this accident happens: can a prompt be displayed when trying to close a tab or browser window in which Identify is happening?
It may be a good idea to assume "nothing identified" as soon as some nonzero cells are deleted due to hitting the edge. That means the actual pattern would evolve differently on the (infinite) square tiling, and how exactly it would evolve cannot be determined by trying to evolve the damaged version further.muzik wrote: March 19th, 2025, 6:36 pm Since we no longer have an upper limit for periods: in what cases is "Nothing Identified" supposed to appear? [...]
As in the following? I can't think of an example for the third that wouldn't also count under PASTE and such, as non-deterministic rules can't use Identify in the first place.
Code: Select all
x = 3, y = 3, rule = B3/S23
o$obo$2o!
[[ RLE hugecube 9o$9o$9o$9o$9o$9o$9o$9o$9o! PASTET 13 PASTE hugecube 120 120 ]]Code: Select all
x = 19, y = 18, rule = B3/S23
11$14b3o$13b2o3bo$10b2ob3o2bo$10b2o3bo2bo$10bo2bo2b2o$8bo2bo2b2o$12b4o
!
[[
PASTET EVERY 152 38 PASTE o! 0 8
PASTET EVERY 152 76 PASTE o! 8 0
PASTET EVERY 152 114 PASTE o! 16 8
PASTET EVERY 152 PASTE o! 8 16
]]Code: Select all
x = 124, y = 9, rule = B3aceiy4ekqrty5cijn6ck78/S2c3-y4cejkqt5i6cei7c8
b2o$2o$42bo$34b3o4b3o70b3o5bo$34b3o3b5o69b3o4b3o$34b3o4b3o70b3o5bo$42b
o$2o$b2o!
[[ MAXGRIDSIZE 9 AUTOIDENTIFY ]]In such cases, I expect there would be often annoying differences of different kinds between what happens in the "theoretical partial completion" and what happens in an actual completion. The spark would be different, there would be massive sparkers added affecting the output of Identify, there could be a different arrangement of hassled objects that is considered to be a variant/completion of the same idea, and so on, and so forth.muzik wrote: March 19th, 2025, 8:50 pm [...] I don't think blocking Identify for every instance of pasting is a good idea, though, since there are valid uses for it in theoretical partial completions that can be used to demonstrate expected functionality, such as this block-and-glider sequence hassler: [...]
Is there a way I can dedicate more computer resources to LifeViewer (presumably an offline downloaded version) as to hopefully increase Identify's speed and obtain a result faster?rowett wrote: March 19th, 2025, 4:44 pmNow 5.3B...rowett wrote: March 19th, 2025, 9:45 amI've further improved the hash algorithm in build 1291. Identify is now up to nearly 2B generations and still going...muzik wrote: March 18th, 2025, 2:36 am After 650 million generations, it claims this is a period 336,128 oscillator, of which I'm also skeptical.
Code: Select all
x = 5, y = 4, rule = B3/S23:k20
bo2bo$o$o3bo$4o!Code: Select all
x = 5, y = 4, rule = Life-RuleLoader:k20
bo2bo$o$o3bo$4o!Code: Select all
x = 5, y = 4, rule = B3/S23:T20,20-1
bo2bo$o$o3bo$4o!Code: Select all
x = 5, y = 4, rule = B3/S23:T20,20+19
bo2bo$o$o3bo$4o!Code: Select all
x = 5, y = 4, rule = B3/S23:T20,20-10
bo2bo$o$o3bo$4o!Code: Select all
x = 5, y = 4, rule = B3/S23:T20,20+10
bo2bo$o$o3bo$4o!Code: Select all
x = 4, y = 2, rule = B2/S
o2bo$b2o!
[[ LAYERS 10 HISTORYSTATES 1 GRID COLOR DEADRAMP White ]]Code: Select all
#C changing the theme will not adjust TRACKLOOP length, causing visual grid jumping
x = 3, y = 3, rule = B3/S23
bo$o$3o!
[[ AUTOSTART THEME Margolus GRID TRACKLOOP 4 -1/4 1/4 GPS 5 ]]Code: Select all
#C Basic shader is not used, despite BACKGROUND = DEAD = DEADRAMP and AGESTATES 0
x = 1, y = 1, rule = W4
o!
[[ COLOR DEAD Black COLOR DEADRAMP Black AGESTATES 0 LAYERS 10 STARTFROM 64 X 32 Y 32 ZOOM 4 THUMBNAIL THUMBSIZE 4 WIDTH 600 HEIGHT 600 ]]Code: Select all
#C AUTOFIT will focus on living cells during playback, but zoom out to fit history cells when paused
x = 3, y = 4, rule = /2/3
BA$.BA$.BA$BA!
[[ AUTOFIT AUTOSTART STOP 100 ]]Code: Select all
#C Identify with Kill Gliders will cause history cells to be added to the bounding box
x = 153, y = 21, rule = LifeHistory
120.2A5.2A$B119.2A5.2A2$124.2A$124.2A5$142.2A.2A$141.A5.A$141.A6.A2.2A
$141.3A3.A3.2A$146.A!
[[ KILLGLIDERS AUTOIDENTIFY ]]Code: Select all
#C [R]History states are ignored when fitting a hexagonal pattern
x = 20, y = 17, rule = B2/S34HHistory
11.F$4.8D$4.9D$4.10D$4.11D$4.12D$4A13D$4A14D$4A15DF$.4A14D$2.4A13D$7.
12D$8.11D$9.10D$10.9D$11.8D$19.F!Code: Select all
#C Select All works as expected, but Shrink Selection proceeds to exclude two cells
x = 3, y = 4, rule = R1,C3,S,B2
BA$.BA$.BA$BA!
[[ MAXGRIDSIZE 9 STARTFROM 253 X 255 PASTET 253 PASTE o! 250 -2 ]]This seems to happen even if we set HISTORYSTATES to 0. LifeViewer Standard still works correctly and has no such trail.muzik wrote: March 20th, 2025, 3:51 amFound another difference in Pro: if we run this with WASM Engine off, the trail of history cells flattens out very quickly, but if we run it with WASM Engine on, they take a long time to collapse (as though HISTORYSTATES was 63 / unspecified). In both cases, there should only be one history state, at the lowest level (rather than the 3 in Standard and 63 in Pro).Code: Select all
x = 4, y = 2, rule = B2/S o2bo$b2o! [[ LAYERS 10 HISTORYSTATES 1 GRID COLOR DEADRAMP White ]]
Code: Select all
x = 4, y = 4, rule = B367/S23
bobo$o2bo$b3o$2bo!
[[ STARTFROM 32 HISTORYSTATES 0 LAYERS 10 GRID ZOOM 16 ]]Code: Select all
x = 4, y = 4, rule = R1,C2,S2-3,B3,6-7
bobo$o2bo$b3o$2bo!
[[ STARTFROM 32 HISTORYSTATES 0 LAYERS 10 GRID ZOOM 16 ]]Code: Select all
x = 1, y = 1, rule = R500,C2,S,B1,NM
o!
[[ ZOOM -16 MAXGRIDSIZE 14 SHADER Basic THEME Mono AUTOIDENTIFY ]]Fixed, thanks.muzik wrote: March 19th, 2025, 6:36 pm Selection mismatch bugs still happen for cases such as the following.
No, but I've been considering copying a checkpoint to the clipboard every so often.muzik wrote: March 19th, 2025, 6:36 pm Before this accident happens: can a prompt be displayed when trying to close a tab or browser window in which Identify is happening?
No.muzik wrote: March 20th, 2025, 3:51 am Is there a way I can dedicate more computer resources to LifeViewer (presumably an offline downloaded version) as to hopefully increase Identify's speed and obtain a result faster?
Fixed, thanks.muzik wrote: March 20th, 2025, 3:51 am If we Save Pattern, the bounded grid on the first pattern is converted to the canonical format K20,20*, but the second is left as is.
No. Other than making things canonical it's unexpected to have them changed.muzik wrote: March 20th, 2025, 3:51 am It may be worth converting these two to the same thing when saving patterns, as they're functionally identical
Fixed. (No, it's way too expensive).muzik wrote: March 19th, 2025, 3:44 pm Very surprised I never found the following exploit before now. (Can we get "ability to draw outside of bounded grid" in LifeViewer Ultra, by any chance?)
Code: Select all
#CXRLE Pos=-238,-238
x = 4, y = 4, rule = B2a3i/S
2b2o2$o$o!
[[ MAXGRIDSIZE 9 ZOOM 8 ]]Code: Select all
x = 12, y = 12, rule = B2/S:S20
o10bo$bo2bo2bo2bo2$5b2o7$bo8bo$o10bo!Fixed, thanks.muzik wrote: March 20th, 2025, 10:09 am Identifying the first pattern will block identification of the second pattern:
According to this post we could be here for a while: the upper bound for the period is 238 trillion (though it's more likely to be a factor of this).
Code: Select all
#CXRLE Gen=999999999900
x = 3, y = 3, rule = B3/S23
o$obo$2o!
[[ AUTOSTART SHOWGENSTATS TRACK -1/4 1/4 LABEL 1 -3 32 "#I" LABELTRACK -1/4 1/4 ]]This still appears to happen in build 1297.
Code: Select all
x = 1, y = 1, rule = R500,C2,S,B1:P13383
o!
[[ MAXGRIDSIZE 14 SHOWTIMING EXTENDEDTIMING HISTORYSTATES 0 AGESTATES 0 AUTOIDENTIFY ]]Code: Select all
x = 1, y = 1, rule = R1,C2,S,B:P12000
b!
[[ MAXGRIDSIZE 14 ]]