I've been doing some thinking pertaining to triangular rules on bounded grids recently, and noticed something which may require attention. Currently, triangular bounded grids require that the dimensions of such a bounded grid be even by even as to permit logical connections. However, this really only makes sense for toroidal bounded grids, as Klein bottle bounded grids flip the pattern when a boundary is reached. Flipping a pattern on a triangular grid also switches the parity of the triangles, resulting in a connection that makes no sense for the twisted edge:
Code: Select all
x = 4, y = 2, rule = B4/S456L:T24,24
4o$4o!
Code: Select all
x = 4, y = 2, rule = B4/S456L:K24,24*
4o$4o!
Code: Select all
x = 4, y = 2, rule = B4/S456L:K24*,24
4o$4o!
Code: Select all
x = 4, y = 2, rule = B4/S456L:C24,24
4o$4o!
(Also, the spaceship doesn't appear to be able to cross the boundary on either of the Klein bottle grids, which seems like a bug to me since one of them should work.)
So to my understanding:
- the torus bounded grid should still require even by even boundaries
- Klein bottle bounded grids should require an odd size on the twisted edge, and an even size on the non-twisted edge
- cross surface bounded grids should be odd by odd
- plane bounded grids probably shouldn't have side length parity restrictions due to not having any connections
- and sphere bounded grids should probably be disabled for triangular and hexagonal grids, since they involve 90 degree rotations which are meaningless on said grids.
Of course, many of these flaws arise from the fact that we're using rectangular bounded grids for rules which are inherently not rectangular, but that's a whole different can of worms. I have
a dedicated thread on issues that arise with hexagonal and triangular emulation on square grids and what could be done to solve them, so input on that thread would be appreciated if you have anything to add.
----
On the topic of bounded grids, would it be possible to allow for a * to be appended to the sphere bounded grid to flip the equatorial diagonal? There are currently two different connection types a sphere can have, only one of which is supported. Here are some test cases:
Normal sphere, barberpole wick should be continuous:
Code: Select all
x = 30, y = 30, rule = B3/S23:S30
bo2$bobo2$3bobo23bo2$5bobo2$7bobo2$9bobo2$11bobo2$13bobo2$15bobo2$17bo
bo2$19bobo2$21bobo2$o22bobo$o$o24bobo2$4bo22bobo$4bo!
Normal sphere, barberpole wick should die:
Code: Select all
x = 30, y = 30, rule = B3/S23:S30
28bo2$26bobo2$o23bobo2$22bobo2$20bobo2$18bobo2$16bobo2$14bobo2$12bobo
2$10bobo2$8bobo2$6bobo2$4bobo22bo$29bo$2bobo24bo2$obo22bo$25bo!
Flipped sphere, barberpole wick should be continuous:
Code: Select all
x = 30, y = 30, rule = B3/S23:S30*
28bo2$26bobo2$o23bobo2$22bobo2$20bobo2$18bobo2$16bobo2$14bobo2$12bobo
2$10bobo2$8bobo2$6bobo2$4bobo22bo$29bo$2bobo24bo2$obo22bo$25bo!
Flipped sphere, barberpole wick should die:
Code: Select all
x = 30, y = 30, rule = B3/S23:S30*
bo2$bobo2$3bobo23bo2$5bobo2$7bobo2$9bobo2$11bobo2$13bobo2$15bobo2$17bo
bo2$19bobo2$21bobo2$o22bobo$o$o24bobo2$4bo22bobo$4bo!