Time for those long-awaited reports:
PCA patterns seem to just crash LifeViewer outright when cells approach the edge of the grid. Previously they would jitter back and forth just before it, but never actually die (and Identify would never resolve, but there would still be a usable Cancel button). Neither of these are the expected behaviour.
Code: Select all
x = 10, y = 2, rule = 2PCA4,0,4,8,3,1,10,6,7,2,9,5,11,12,13,14,15
IC2.HBH.IC$LF6.LF!
[[ THEME LifeHistory MAXGRIDSIZE 9 ZOOM 1 ]]
Also, for the following pattern, when manually stepping forward, it would correctly increment by 64 generations from 0 --> 64, 64 --> 128 and 128 --> 192. However, it would then step to generation 317 (if I remember correctly) instead of generation 256, and there was some other odd behaviour I didn't take a note of. It now freezes the viewer again when trying to step beyond generation 192 since it goes to a point where PCA cells would hit the boundary.
Code: Select all
x = 9, y = 5, rule = PCA_1
20o!
[[ SHOWGENSTATS MAXGRIDSIZE 9 ZOOM -1.5 STEP 64 ]]
If we run any of these patterns to a point where it crashes, close the crashed viewer, and open another viewer, it'll do a step of whatever the step size is set to immediately after loading.
----
When testing a similar pattern to the pattern at the top in a Margolus rule, I found a way to reproduce the previously-reported Margolus pulsating effect to an
absurd degree. I've put multiple content warnings in the test pattern below since this effect is very very very very very very very very very very not nice to look at.
Code: Select all
x = 5, y = 11, rule = M0,4,8,3,1,5,6,7,2,9,10,11,12,13,14,15
$2o$2o4$bo2bo3$2o$2o!
[[ GRID MAXGRIDSIZE 14 AUTOFIT STARS COLOR TEXT Lime T 0 "Disclaimer: this is very uncomfortable.\nPotential motion sickness/seizure risk!" PAUSE 3 "Playback commencing in 3 seconds..." T 4 "" ]]
Here's a pattern in Seeds, where this horrid effect does not occur:
Code: Select all
x = 4, y = 7, rule = B2/S
o$bo3$o2bo2$b2o!
[[ GRID AUTOFIT STARS MAXGRIDSIZE 14 ]]
----
PCA patterns also appear to be interacting incorrectly with some bounded grids. PCA_4 is a population conserving rule, so I'd expect that the population in the following pattern would remain constant, but it does not.
Code: Select all
x = 10, y = 5, rule = 2PCA4,0,2,4,12,8,5,9,7,1,6,10,11,3,13,14,15:S10
A4$9.D!
[[ GRID ]]
There is the possibility that bounded grids like the sphere aren't getting the memo about the fact that cell states are meant to be rotated (or diagonally flipped? Is there an important distinction to be made in this context?) when they pass through the boundary, and just copy the cell states verbatim without respect to the fact that they should be rotated into other corresponding states. Here's a more direct test case for that example - I'd expect that for the bottom example, the spaceship should remateralize on the right just like it does in Seeds:
Code: Select all
#CXRLE Pos=-5,-5
x = 4, y = 3, rule = B2/S:S20
3bo$o$b2o!
[[ GRID ]]
Code: Select all
#CXRLE Pos=-5,-5
x = 4, y = 3, rule = PCA_1:S20
3bo$o$b2o!
[[ GRID ]]
----
For the following Margolus bounded grid pattern, if we draw a cell in the top right and/or bottom left. save the pattern, and then load the pattern, there will be no remaining cells inside of the grid, but despite this, no "New Pattern" message will be displayed.
Code: Select all
x = 2, y = 2, rule = M0,2,8,3,1,5,6,7,4,9,10,11,12,13,14,15:T2
!
If we draw a cell at the top left, then save it and load it, the pattern will show no alive cells, but the T menu will say there is one. Select All seems to imply it's in the bottom right of the boundary cells, but the select offset bug might mean it thinks said cell is actually somewhere else. A cell drawn in the bottom right will stay in the bottom right if the pattern is saved and loaded.
It's also very easy to see that for Margolus patterns, bounded grids are very discentered, even more so than normal 2-state rules:
In general, for Margolus patterns, the top row of cells and left row of cells seem to get deleted in a bounded grid for some reason. Here's a larger bounded grid for testing purposes: manually select the entirety of this grid, use the Invert function to fill it with cells, optionally draw something at the very bottom right to confirm that the top and left rows are truly deleted rather than the entire pattern just being moved down and to the right, and then Save Pattern and reload it.
Code: Select all
x = 0, y = 0, rule = M0,2,8,3,1,5,6,7,4,9,10,11,12,13,14,15:T20
!
This covers pretty much all of the major issues so far that I know of. I'll try to add any more issues I end up encountering below.
EDIT 1: It seems like custom PCA colors persist into other patterns again that don't have a theme explicitly defined (or they explicitly define the PCA theme), and they also don't go away if you switch from the custom theme to a PCA theme either. They even overwrite the values shown in Help > Themes!
Code: Select all
x = 14, y = 2, rule = PCA_4
ABCDEFGHIJKLMN$ABCDEFGHIJKLMN!
Code: Select all
x = 14, y = 2, rule = PCA_4
ABCDEFGHIJKLMN$ABCDEFGHIJKLMN!
[[ THEME PCA ]]
Code: Select all
x = 14, y = 2, rule = PCA_4
ABCDEFGHIJKLMN$ABCDEFGHIJKLMN!
[[ THEME Blues ]]
Code: Select all
x = 11, y = 11, rule = 2PCA4,0,4,8,3,1,10,6,7,2,9,5,11,12,13,14,15
I9AC$HI7ACB$2HI5AC2B$3HI3AC3B$4HIAC4B$5HO5B$4HLDF4B$3HL3DF3B$2HL5DF2B
$HL7DFB$L9DF!
[[ COLOR N White COLOR E White COLOR S White COLOR W White ]]
Code: Select all
x = 14, y = 2, rule = PCA_4
ABCDEFGHIJKLMN$ABCDEFGHIJKLMN!
[[ COLOR BACKGROUND 0 0 0 COLOR DEAD 0 0 127 COLOR DEADRAMP 0 0 47
COLOR N 96 0 128
COLOR E 0 104 128
COLOR S 0 0 255
COLOR W 128 128 192
COLOR NE 64 64 128
COLOR ES 0 64 192
COLOR SW 72 72 200
COLOR NW 96 64 128
COLOR NS 64 0 192
COLOR EW 64 104 128
COLOR ESW 43 64 149
COLOR NSW 85 43 170
COLOR NEW 85 85 128
COLOR NES 48 48 176
COLOR NESW 64 64 160 ]]
EDIT 2: For patterns that die out with paste commands yet to be executed, "Empty Pattern" is displayed instead of "Life ended at" - although since "Life ended at" is meant to not display in normal playback if future paste commands exist I'm not sure what the behaviour here should be:
Code: Select all
x = 1, y = 1, rule = B3/S23
3bo2bo$3bo2bo$2b6o$10o$2b6o$2b6o$10o$2b6o$3bo2bo$3bo2bo!
Code: Select all
x = 1, y = 1, rule = B3/S23
3bo2bo$3bo2bo$2b6o$10o$2b6o$2b6o$10o$2b6o$3bo2bo$3bo2bo!
[[ PASTET EVERY 12 12 PASTE 3bo2bo$3bo2bo$2b6o$10o$2b6o$2b6o$10o$2b6o$3bo2bo$3bo2bo! 0 0 ]]
EDIT 3: The population graph inconsistently occludes Identify results. The initial Identify table appears on top of it, the period table's "Oscillator period X" header appears on top of it but the rest of the table does not, and every part of the period map and its key is hidden behind the graph.
Code: Select all
x = 123, y = 135, rule = B3/S23
5b2o$5b2o6$26b2o$25bobo$24b3o12bo$4b3o8b2o6b3o8b2o3b4o$3bo3bo7b2o7b3o8b2o3b4o
$2bo5bo16bobo2b2obob2o3bo2bo5b2o$2bo5bo17b2o2b2obobo4b4o5b2o$5bo26b2obo3b4o$
3bo3bo31bo$4b3o$5bo$25bo$23b2o$2b3o19b2o$2b3o$bo3bo$9bobo$2o3b2o3b2o$10bo5$
17bo$18b2o$17b2o2$3b2o$3b2o4$42bo$40b3o$39bo$20b2o17b2o$20bo$21b3o$23bo23$54b
obo$55b2o$55bo45$111b2o6b2o$110bo2bo4bo2bo$109b6o2b6o$110bo2bo4bo2bo$111b2o6b
2o8$104b3o$104bobo$104b3o$104b3o$104b3o$104b3o$104bobo$104b3o!
[[ GRAPH ]]
EDIT 4: For the horrible Margolus zoom bug mentioned earlier, toggling the WAYPT button after it starts demonstrating the bug grays out the autofit button.