LifeViewer: Difference between revisions

From LifeWiki
Jump to navigation Jump to search
No edit summary
 
(162 intermediate revisions by 10 users not shown)
Line 3: Line 3:
|url            = https://lazyslug.com/lifeviewer
|url            = https://lazyslug.com/lifeviewer
|purpose        = [[Conway's Game of Life|Life]] simulation
|purpose        = [[Conway's Game of Life|Life]] simulation
|createdby      = [[User:rowett|Chris Rowett]]
|createdby      = [[Chris Rowett]]
|platform        = HTML5 / Javascript
|platform        = HTML5 / Javascript
|image          = true
}}
}}
'''LifeViewer''' is a scriptable pattern viewer and editor used to simulate [[Life]] and a wide range of other 1D and 2D [[cellular automata]].
:''Not to be confused with the calendar app also called LifeViewer.''
'''LifeViewer''' is a free, [https://github.com/rowett/lifeviewer open-source], browser-based scriptable pattern viewer and editor used to simulate [[Life]] and a wide range of other 1D and 2D [[cellular automata]].
 
* If you are looking for script instructions, see [[LifeViewer/Scripts]]
* If you want instructions for using the user interface, see [[LifeViewer/User Interface]]
* If you want to use LifeViewer on your own site, see [[Tutorials/LifeViewer JavaScript plug-in]]


If you want to use LifeViewer on your own site then the latest release can be downloaded [http://lazyslug.com/lifeview/plugin/js/release/ here].


<div style="float: right;">{{LV:Viewer|
<div style="float: right;">{{LV:Viewer|
Line 32: Line 37:
#C [[ T 1100 X 0 Y 0 ZOOM 0.25 THEME CUSTOM ]]}}</div>
#C [[ T 1100 X 0 Y 0 ZOOM 0.25 THEME CUSTOM ]]}}</div>


==LifeViewer features==
== LifeViewer features ==
* Smooth non-integer zoom with anti-aliasing and rotation.
* Smooth non-integer zoom with anti-aliasing and rotation.
* Colour themes with cell history and longevity.
* Colour [[#Themes|themes]] with cell history and longevity.
* Square, hexagonal and triangular grids.
* Pseudo 3D layers and stars.
* Pseudo 3D layers and stars.
* Multiple ways to automatically track patterns with the camera as they evolve.
* Multiple ways to automatically track patterns with the camera as they evolve.
* Script language that allows many features to be customized including Waypoint animations.
* [[#Scripts|Script]] language that allows many features to be customized including Waypoint animations.
* Support for multiple embedded LifeViewers and/or a single popup LifeViewer.
* Support for multiple embedded LifeViewers and/or a single popup LifeViewer.
* Ability to step back to earlier generations for all patterns and reverse playback for reversible Margolus and PCA patterns.
* Ability to step back to earlier generations for all patterns and reverse playback for reversible Margolus and PCA patterns.
* Random pattern and rule generation.
* Random pattern and rule generation.
* Real time auto-scaling population graph.
* Real time auto-scaling [[LifeViewer/User_Interface#Population_Graph|population graph]].
* Pattern annotation with Labels, Arrows, Lines and Polygons.
* [[LifeViewer/Scripts#Annotations|Pattern annotation]] with Labels, Arrows, Lines and Polygons.
* Programatically pasting cells onto the grid at defined intervals (for example: glider injection).
* Programatically pasting cells onto the grid at defined intervals (for example: glider injection).
* Ability to build patterns from RLE recipes with transformations.
* Ability to build patterns from RLE recipes with transformations.
* Identification of oscillator and spaceship periods.
* [[#Pattern Identification|Identification]] of still life patterns, oscillator and spaceship periods.
* Automatic scaling for high DPI displays including smartphones and tablets.
* Automatic scaling for high DPI displays including smartphones and tablets.
* Editor with unlimitied undo/redo and multiple clipboards.
* Editor with unlimitied undo/redo and multiple clipboards.


==Rule support==
== Rule support ==
LifeViewer supports the following rule families:
 
=== Built-in rules ===
* 2-state [[Margolus]] rules.
* 2-state [[Margolus]] rules.
** Example: Critters (M15,14,13,3,11,5,6,1,7,9,10,2,12,4,8,0) {{LV:Viewer|x = 63, y = 34, rule = critters
* 2-state [[Totalistic Life-like cellular automaton|outer-totalistic Life-like cellular automata]] (from ranges 1 to 500, supporting a wide variety of pre-programmed neighbourhood families, as well as custom neighbourhoods and weighted neighbourhoods).
* 2-state [[isotropic non-totalistic cellular automata]] (for range-1 Moore and range-1 hexagonal).
* 2-state [[non-isotropic cellular automata]] (for range-1 Moore, hexagonal and von Neumann).
* [[Generations]] rules (as an extension of the outer-totalistic, non-totalistic and non-isotropic rulespaces).
* [[Alternating rule]]s.
* [[Partitioned cellular automata]] (PCA) rules.
* [https://mathworld.wolfram.com/ElementaryCellularAutomaton.html Elementary] cellular automata.
* [[LifeHistory|[R]History]] rules.
* [https://conwaylife.com/forums/viewtopic.php?f=7&t=4279#p88223 <nowiki>[R]Super</nowiki>] rules.
* [R]Investigator rules (a generalisation of [[Rule:StateInvestigator|StateInvestigator]]).
* [http://golly.sourceforge.net/Help/formats.html#rule RuleTable] rules (either inline or from a [[#Repository Rules|Rule Repository]]).
* Non-deterministic rules.
 
<div class="mw-collapsible mw-collapsed">
Click on "Expand" to the right to view example patterns for each rule family.
<div class="mw-collapsible-content">
: 2-state [[Margolus]] rules.
:: Example: Critters (M15,14,13,3,11,5,6,1,7,9,10,2,12,4,8,0) {{LV:Viewer|x = 63, y = 34, rule = critters
9$52bo9$48b2o$39bo$47bo2bo3$47bo$48bo$5bo31bo20bo$6bo31bo18bo$6bo31bo
9$52bo9$48b2o$39bo$47bo2bo3$47bo$48bo$5bo31bo20bo$6bo31bo18bo$6bo31bo
17bo$5bo31bo17bo!
17bo$5bo31bo17bo!
[[ RLE input o$bo$bo$o! PASTET EVERY 64 PASTE input 5 24 ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ RLE input o$bo$bo$o! PASTET EVERY 64 PASTE input 5 24 ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* 2-state [[Totalistic Life-like cellular automaton|Outer-totalistic Life-like cellular automata]] (from ranges 1 to 500, including [[Larger than Life]]).
: 2-state [[Totalistic Life-like cellular automaton|Outer-totalistic Life-like cellular automata]] (from ranges 1 to 500, including [[Larger than Life]]).
** Example: Soldier Bugs (R7,C2,M1,S65..114,B65..95,NM) {{LV:Viewer|x = 113, y = 113, rule = R7,C2,M1,S65..114,B65..95,NM
:: Example: Soldier Bugs (R7,C2,M1,S65..114,B65..95,NM) {{LV:Viewer|x = 113, y = 113, rule = R7,C2,M1,S65..114,B65..95,NM
49b4o$47b7o$46b10o$45b12o$45b13o19b2o$44b3o5b6o17b6o$22b3o19b3o5b6o16b
49b4o$47b7o$46b10o$45b12o$45b13o19b2o$44b3o5b6o17b6o$22b3o19b3o5b6o16b
9o$20b7o17b3o5b6o15b11o$19b9o16b3o5b6o14b3ob9o$18b12o15b3o2b8o14b3o4b
9o$20b7o17b3o5b6o15b11o$19b9o16b3o5b6o14b3ob9o$18b12o15b3o2b8o14b3o4b
Line 78: Line 104:
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* 2-state [[non-totalistic Life-like cellular automata|Isotropic non-totalistic Life-like cellular automata]] (for range-1 Moore and range-1 hexagonal).
: 2-state [[non-totalistic cellular automata|Isotropic non-totalistic cellular automata]] (for range-1 Moore and range-1 hexagonal).
** Example: Just Friends (B2-a/S12) {{LV:Viewer|x = 65, y = 74, rule = B2-a/S12
:: Example: Just Friends (B2-a/S12) {{LV:Viewer|x = 65, y = 74, rule = B2-a/S12
63bo$63bo4$61bo$64bo$59bobo2bo46$18bo$19b2o12$4bo$4bo4$2bo$5bo$obo2bo!
63bo$63bo4$61bo$64bo$59bobo2bo46$18bo$19b2o12$4bo$4bo4$2bo$5bo$obo2bo!
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* 2-state [[Non-isotropic Life-like cellular automata]] (for range-1 Moore, hexagonal and von Neumann).
: 2-state [[Non-isotropic cellular automata]] (for range-1 Moore, hexagonal and von Neumann).
** Example: MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA {{LV:Viewer|x = 1, y = 1, rule = MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA:T80,40
:: Example: MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA {{LV:Viewer|x = 1, y = 1, rule = MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA:T80,40
o!
o!
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [[Generations]] rules (as an extension of the outer-totalistic, non-totalistic and non-isotropic rulespaces).
: [[Generations]] rules (as an extension of the outer-totalistic, non-totalistic and non-isotropic rulespaces).
** Example: Fireworks (2,13,21) {{LV:Viewer|x = 200, y = 100, rule = 2/13/21:T200,100
:: Example: Fireworks (2,13,21) {{LV:Viewer|x = 200, y = 100, rule = 2/13/21:T200,100
#C Fireworks
#C Fireworks
#C An admirably beautiful rule by John Elliott
#C An admirably beautiful rule by John Elliott
Line 95: Line 121:
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
</td><td></td><td>
</td><td></td><td>
* [[Alternating rule|Alternating]] rules.
: [[Alternating rule|Alternating]] rules.
** Example: alternlife (B13/S012345678|B/S15) {{LV:Viewer|x = 21, y = 9, rule = alternlife  
:: Example: alternlife (B13/S012345678|B/S15) {{LV:Viewer|x = 21, y = 9, rule = alternlife  
3.A13.A2$.2A15.2A2$A19.A4$9.A!
3.A13.A2$.2A15.2A2$A19.A4$9.A!
[[ ZOOM 12 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 12 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [[Partitioned cellular automata]] (PCA) rules.
: [[Partitioned cellular automata]] (PCA) rules.
** Example: PCA_4 (2PCA4,0,2,4,12,8,5,9,7,1,6,10,11,3,13,14,15) {{LV:Viewer|x = 49, y = 29, rule = PCA_4
:: Example: PCA_4 (2PCA4,0,2,4,12,8,5,9,7,1,6,10,11,3,13,14,15) {{LV:Viewer|x = 49, y = 29, rule = PCA_4
AB45.AB$HD45.HD24$21.A20.D$20.E$AB19.B20.F4.AB$HD39.D5.HD!
AB45.AB$HD45.HD24$21.A20.D$20.E$AB19.B20.F4.AB$HD39.D5.HD!
[[ STEP 20 ZOOM 6 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ STEP 20 ZOOM 6 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [[Weighted]] rules.
: [[Weighted]] rules.
** Example: R2,C2,S2-3,B4,7-8,NW0010001210120210121000100 {{LV:Viewer|x = 9, y = 9, rule = R2,C2,S2,3,B4,7,8,NW0010001210120210121000100:T80,40
:: Example: R2,C2,S2-3,B4,7-8,NW0010001210120210121000100 {{LV:Viewer|x = 9, y = 9, rule = R2,C2,S2,3,B4,7,8,NW0010001210120210121000100:T80,40
3A6.$3A6.$2A.A3.A.$2.A5.A$9.$9.$9.$2.A6.$3.A5.!
3A6.$3A6.$2A.A3.A.$2.A5.A$9.$9.$9.$2.A6.$3.A5.!
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [https://mathworld.wolfram.com/ElementaryCellularAutomaton.html Elementary] cellular automata (even numbers only).
: [https://mathworld.wolfram.com/ElementaryCellularAutomaton.html Elementary] cellular automata.
** Example: Wolfram 30 (W30) {{LV:Viewer|x = 1, y = 1, rule = W30:P100,40
:: Example: Wolfram 30 (W30) {{LV:Viewer|x = 1, y = 1, rule = W30:P100,40
o!
o!
#CXRLE Pos=0,-20
#CXRLE Pos=0,-20
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [[LifeHistory|[R]History]] rules.
: [[LifeHistory|[R]History]] rules.
** Example: LifeHistory {{LV:Viewer|x = 457, y = 155, rule = LifeHistory
:: Example: LifeHistory {{LV:Viewer|x = 457, y = 155, rule = LifeHistory
59.3B64.B125.B$58.BFBF2B60.4BF122.3B$58.6BF.B.F.F.B.F.F.B.F.F.B.F.F.B
59.3B64.B125.B$58.BFBF2B60.4BF122.3B$58.6BF.B.F.F.B.F.F.B.F.F.B.F.F.B
.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F7B5.BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.
.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F7B5.BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.
Line 224: Line 250:
[[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [https://www.conwaylife.com/forums/viewtopic.php?f=7&t=4279#p88223 <nowiki>[R]Super</nowiki>] rules.
: [https://conwaylife.com/forums/viewtopic.php?f=7&t=4279#p88223 <nowiki>[R]Super</nowiki>] rules.
** Example: LifeSuper {{LV:Viewer|x = 312, y = 156, rule = LifeSuper:T312,156
:: Example: LifeSuper {{LV:Viewer|x = 312, y = 156, rule = LifeSuper:T312,156
69.M.M6.M.M49.2Q.Q6.Q3.3Q117.S.2S2.S.S2.2S.S10.U.2U2.U.U2.2U.U$20.2O.
69.M.M6.M.M49.2Q.Q6.Q3.3Q117.S.2S2.S.S2.2S.S10.U.2U2.U.U2.2U.U$20.2O.
2O2.2O.2O39.M6.M44.2Q5.Q.Q8.3Q4.Q85.2O34.S.S22.U.U$20.2O2.O2.O2.2O36.
2O2.2O.2O39.M6.M44.2Q5.Q.Q8.3Q4.Q85.2O34.S.S22.U.U$20.2O2.O2.O2.2O36.
Line 391: Line 417:
[[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


* [http://golly.sourceforge.net/Help/formats.html#rule RuleTable] rules from a [https://conwaylife.com/wiki/Special:AllPages?namespace=3794 repository].
: [R]Investigator rules.
** Example: Byl-loop {{LV:Viewer|x = 5, y = 5, rule = Byl-Loop:P200,100
:: Example: B3S23Investigator {{LV:Viewer|x = 98, y = 57, rule = B3S23Investigator
35.R26.R$35.E26.E8$51.E$25.E20.E25.E$24.E21.E7.C18.E$23.E28.EBDE18.E$
45.CE5.2E$21.CD2.DE43.2ED2.DC$19.E3.DE18.C22.E3.D3ED3.E$42.EDBE4.ER
13.3E3.E$44.2E15.E3.D2.E2.D14.C.ECB$13.C30.ED3.E12.E3.E3.D.E11.CE.D2.
E$8.D4.D30.E3.E14.E2.D2E.C13.D.E.D$7.E4.D2.E28.D2.E17.D16.E2.D3.E$12.
E3.E28.D19.C15.E3.E$12.ED3.E27.C21.E12.E3.DE$13.E10.2E39.2DE4.2E10.E
6.E$11.E12.ED3.E34.3E.E3.DE$5.E17.2E3.E4.DE28.ED4.E3.2E17.E$10.E4.E7.
CD2.E3.CD2.DE24.ED2.DC3.E2.DC7.E4.E$14.E10.D46.D10.E$9.E3.E11.CE5.2E
19.E10.2E5.EC11.E3.E$26.D5.D.E14.E3.D9.E.D5.D$DA8.ECD2.DE9.ED3.DE2.E
14.E3.2E6.E2.ED3.DE9.ED2.DCE8.AD$DA11.DE4.2A6.CD.DC19.E2.DE10.CD.DC6.
2A4.ED11.AD$18.E.A2.C.E4.C22.D13.C.C4.C2.A.E$4.E6.E5.ED6.D2.E.E7.2A
13.2C3.2A7.E11.DE5.E6.E$5.E4.ED5.DE4D.E6.E5.E.A2.C12.C2.A.E5.E8.4DED
5.DE4.E$10.2ED3.DE.4EB.C6.E4.D22.D4.E8.B3E2.ED3.D2E$6.E3.DECD.DEC2.DE
2.E8.E3.E4D14.4DE3.E8.E6.CED.DCED3.E$7.E3.E.2E4.E5.C11.5EB12.B5E11.C
10.2E.E3.E$8.E2.D.CD5.D.EC.D4.ED2.DCE2D21.D.CD2.DE4.D2.ED6.DC.D2.E$
10.D.2E.DC3.E3.D2.E4.ED26.D3.DE4.E2.D3.E3.CD.2E.D$10.CE3.E4.E2.2E3.E
5.2E24.E.2E5.E3.2E7.E3.EC$10.E5.E7.ED3.E3.E25.C4.E3.E3.DE7.E5.E$10.D
5.D2.E4.2E6.E5.E26.E6.2E4.E2.D5.D$10.ED3.DE2.D3.E2.E4.E6.DE26.E4.E2.E
3.D2.ED3.DE$11.CD.DC2.E3.E4.E7.E3.EDEC11.CEDE4.E7.E4.E3.E2.CD.DC$12.C
.CE2.D2.E7.CD2.DE6.DE2.C5.C2.ED7.ED2.DC7.E2.D2.EC.C$16.2E.D11.D3E7.D
2.D5.D2.D8.E.ED11.D.2E$12.E5.EC10.E2.EDE7.ED7.DE7.EDE2.2E10.CE5.E$12.
D5.D4.EDE2.EDE2.E.DC.E3.DECE.E.E.ECED3.E.CD.E2.EDE2.EDE5.D5.D$12.ED3.
DEDE.C2.DC.E.DC4.DC3.DCE9.ECD3.CD4.CD.E.CD5.EDED3.DE$12.CED.DC2.DC2E
2.D4.D8.DE2.2D5.2D2.ED8.D4.D5.CD2.CD.DEC$15.3E3.D5.E4.E3.DC2.D4.ED3.D
E4.D2.CD3.E4.E4.ECD3.3E$15.DC5.E3.D4.D3.DC3.C4.CED.DC5.C3.CD3.D4.D10.
CD$13.CD6.D.E.DC3.DC.EDE12.3E10.EDE.CD3.CD3.CD6.DC$20.DC.EDE2.EDE17.D
C16.EDE2.EDE2.CD$18.EDE25.CD29.EDE$49.A!
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY Y -9 LOOP 900 ]]}}
 
: [http://golly.sourceforge.net/Help/formats.html#rule RuleTable] rules from a [https://conwaylife.com/wiki/Special:AllPages?namespace=3794 repository].
:: Example: Byl-loop {{LV:Viewer|x = 5, y = 5, rule = Byl-Loop:P200,100
3.C$4.B2$B$.C!
3.C$4.B2$B$.C!
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}
[[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]}}


==Grid and neighbourhood support==
: Non-deterministic rules.
* square grid:
:: Example: Non-deterministic Soldier Bugs {{LV:Viewer|x = 113, y = 113, rule = R7,C2,S64-113,B65-95,P100,#,#
** outer-totalistic:
49b4o$47b7o$46b10o$45b12o$45b13o19b2o$44b3o5b6o17b6o$22b3o19b3o5b6o16b
*** [[Moore neighbourhood|Moore]]
9o$20b7o17b3o5b6o15b11o$19b9o16b3o5b6o14b3ob9o$18b12o15b3o2b8o14b3o4b
*** [[von Neumann neighbourhood|von Neumann]]
7o$18b13o14b12o14b3o6b6o$17b5o3b6o15b10o15b3o6b6o$17b2o7b5o16b7o17b3o
*** circular
6b6o$17b2o7b5o18b3o20b3obo2b7o$17b3o5b6o41b13o$17b3o2b9o42b11o$18b3ob
*** cross
8o44b8o$19b10o46b6o16b5o$20b7o50b2o17b8o$21b5o69b4o2b4o$94b3o4b5o$93b
*** L2
3o5b5o$93b5o4b5o$93b5o4b5o$93b5o4b5o$93b6o2b5o$94b12o$9b5o81b10o$8b7o
*** saltire
80b9o$7b9o80b8o$6b10o81b6o$6b11o$5b13o$5b5o3b5o$4b5o5b5o$4b5o5b5o$5b4o
*** star
4b5o$5b3o6b4o$6b4o3b4o$7b9o$8b7o$10b3o3$104b4o$102b8o$101b10o$100b4o4b
*** checkerboard
4o$100b3o5b4o$99b4o5b5o$99b5o4b5o$99b5o4b5o$100b13o$100b12o$101b10o$4b
*** hash
6o91b10o$3b8o91b8o$2b10o91b6o$2b10o$b12o$13o$5o4b5o$5o4b5o$5o5b4o$b4o
5b3o$b4o4b4o$2b10o$3b8o$5b4o3$100b3o$98b7o$97b9o$96b4o3b4o$95b4o6b3o$
95b5o4b4o$94b5o5b5o$94b5o5b5o$95b5o3b5o$95b13o$96b11o$10b6o81b10o$9b8o
80b9o$9b9o80b7o$8b10o81b5o$7b12o$7b5o2b6o$6b5o4b5o$6b5o4b5o$6b5o4b5o$
7b5o5b3o$7b5o4b3o$8b4o2b4o69b5o$9b8o17b2o50b7o$11b5o16b6o46b10o$31b8o
44b8ob3o$29b11o42b9o2b3o$28b13o41b6o5b3o$27b7o2bob3o20b3o18b5o7b2o$27b
6o6b3o17b7o16b5o7b2o$27b6o6b3o15b10o15b6o3b5o$27b6o6b3o14b12o14b13o$27b
7o4b3o14b8o2b3o15b12o$28b9ob3o14b6o5b3o16b9o$29b11o15b6o5b3o17b7o$30b
9o16b6o5b3o19b3o$32b6o17b6o5b3o$34b2o19b13o$56b12o$57b10o$59b7o$60b4o!
[[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY RANDSEED 1695741111763 LOOP 1000 ]]}}
</div>
</div>
 
Native support for [[BSFKL]], [[Extended Generations]] and [[deficient]] rules is also planned.<ref name="post68678" /><ref name="post68691" /><ref name="post86409" /> Support for 1D totalistic rules and multiple neighbourhoods rules may also be planned.<ref name="post84188" /><ref name="post75775" />
 
=== Repository Rules ===
LifeViewer can load rules from the [https://conwaylife.com/wiki/Special:AllPages?namespace=3794 Rule:] namespace here on LifeWiki.
The rules must be in [http://golly.sourceforge.net/Help/formats.html#rule RuleTable] format. LifeViewer supports both @TABLE and @TREE
format rules. Typically @TREE rules run much faster so if possible ensure there is an @TREE version of the rule before the @TABLE
version (if present).
 
=== Inline Rules ===
If LifeViewer does not recognize the rule specified in the pattern header then it will first search the pattern comments after the pattern to see
if there is an inline rule definition. This must be in [http://golly.sourceforge.net/Help/formats.html#rule RuleTable] format. If there is no inline
rule then it will attempt to retrieve the rule from the Rule Repository.
 
=== Aliases ===
LifeViewer contains a large list of alias names for particular rules. This list of rule name aliases can be found by clicking the Aliases button under Help.
 
== Grid and neighbourhood support ==
LifeViewer supports many different neighbourhoods on square, hexagonal or triangular grids.
<div class="mw-collapsible mw-collapsed">
Click on "Expand" to the right to view the full list of supported neighbourhoods per grid type.
<div class="mw-collapsible-content">
* [[square tiling]]:
** outer-totalistic:
*** [[Moore neighbourhood|Moore]]
*** [[von Neumann neighbourhood|von Neumann]]
*** circular
*** cross
*** L2
*** saltire
*** star
*** checkerboard
*** aligned checkerboard
*** hash
*** custom (CoordCA)
*** custom (CoordCA)
** non-totalistic
*** Gaussian
*** custom weighted
*** far corners/edges
** non-totalistic R1 Moore
** non-isotropic
** non-isotropic
** Margolus
** Margolus
** PCA
** PCA
** Weighted
* hexagonal or offset-square grid: {{LV:Viewer|x = 50, y = 136, rule = B2/S34H
* hexagonal or offset-square grid: {{LV:Viewer|x = 50, y = 136, rule = B2/S34H
$24bo$22bo$24bo$22b3o$25bo$23b3o$25bobo$25bobo$24b2o$22bo5bo$23bo$27b
$24bo$22bo$24bo$22b3o$25bo$23b3o$25bobo$25bobo$24b2o$22bo5bo$23bo$27b
Line 424: Line 527:
*** asterisk
*** asterisk
*** custom (CoordCA)
*** custom (CoordCA)
*** custom weighted
** non-totalistic
** non-totalistic
** non-isotropic
** non-isotropic
Line 435: Line 539:
*** triangular inner
*** triangular inner
*** triangular outer
*** triangular outer
*** triangular biohazard
*** triangular radiation
*** custom (CoordCA)
*** custom (CoordCA)
*** custom weighted
</div></div>


===[[Bounded grid]] types===
=== [[Bounded grid]] types ===
LifeViewer supports patterns on "unbounded" grids (maximum 16384x16384 in size) and the following bounded grid types:
* Plane
* Plane
* Cylinder (with optional shift)
* Cylinder (with optional shift)
Line 443: Line 552:
* Klein-bottle (with optional shift)
* Klein-bottle (with optional shift)
* Cross-surface
* Cross-surface
* Sphere
* Sphere (either diagonal)
For range 2+ neighbourhoods only Plane, and Torus (without shift) are supported.
For range 2+ neighbourhoods, hexagonal, triangular, PCA and Margolus rules only Plane and Torus (without shift) are supported.
 
== User Interface ==
{{main|LifeViewer/User Interface}}


Native support for [[BSFKL]], [[Extended Generations]] and [[deficient]] rules is also planned.<ref name="post68678" /><ref name="post68691" /><ref name="post86409" /> Support for 1D totalistic rules may also be planned.<ref name="post84188" />
== Themes ==
Themes are used to define the colours of cells, the background and the grid lines for 2-state and Generations patterns. Some Themes also specify whether major grid lines are used and if so on what interval.


===Aliases===
Themes are primarily used to provide a visual representation of cell history and longevity.
The current list of rule name aliases can be found by clicking the Aliases button under Help.


==Keyboard commands==
The default Theme is "Blues"
but this can be changed by clicking Theme in the Settings menu or with the THEME script command.


A visual map of keyboard shortcuts is shown below:
{{LV:Viewer|x = 3, y = 3, rule = Life
3o$2bo$bo!
[[ AUTOSTART THUMBNAIL GRID STOP 128 ZOOM 8 X 32 Y -31 HEIGHT 560 ]]}}


[[File:hotkeys.png|1024px]]
=== Grid ===
Some Themes define specific GridLine colours for standard and Major GridLines and also the major GridLine interval.


==Playback controls==
GRID: grid line colour<br />
<table border=1 cellspacing=0 width=500><tr>
GRIDMAJOR: major grid line colour and interval
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Enter</td><td>toggle play / pause</td></tr><tr>
<td>Space</td><td>pause / next generation</td></tr><tr>
<td>B</td><td>pause / previous generation</td></tr><tr>
<td>Backspace</td><td>pause / previous generation</td></tr><tr>
<td>Tab</td><td>pause / next step</td></tr><tr>
<td>Shift Tab</td><td>pause / previous step</td></tr><tr>
<td>Esc</td><td>pause if playing</td></tr><tr>
<td>R</td><td>reset to generation 0</td></tr><tr>
<td>-</td><td>decrease generation speed</td></tr><tr>
<td>+</td><td>increase generation speed</td></tr><tr>
<td>Shift -</td><td>minimum generation speed</td></tr><tr>
<td>Shift +</td><td>maximum generation speed</td></tr><tr>
<td>D</td><td>decrease step size</td></tr><tr>
<td>E</td><td>increase step size</td></tr><tr>
<td>Shift D</td><td>minimum step size</td></tr><tr>
<td>Shift E</td><td>maximum step size</td></tr><tr>
<td>0</td><td>reset step and speed</td></tr><tr>
<td>Alt T</td><td>toggle throttling</td></tr><tr>
<td>W</td><td>toggle waypoint playback and loop</td></tr><tr>
<td>Shift P</td><td>toggle just loop</td></tr><tr>
<td>Alt O</td><td>toggle autostart</td></tr><tr>
</table>


==Multi-Viewer controls==
=== Two-state Themes ===
For two-state Themes there are five colours that are used for defining the cell colours:
<table border=1 cellspacing=0 width=500><tr>
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Shift R</td><td>reset all LifeViewers to generation 0</td></tr><tr>
<td>BACKGROUND</td><td>cell never occupied</td></tr><tr>
<td>Z</td><td>stop playback in all other LifeViewers</td></tr><tr>
<td>ALIVE</td><td>cell just born</td></tr><tr>
<td>Shift Z</td><td>stop playback in all LifeViewers</td></tr>
<td>ALIVERAMP</td><td>cell alive for at least AGESTATES generations (default 63)</td></tr>
<td>DEAD</td><td>cell just died</td></tr>
<td>DEADRAMP</td><td>cell dead for at least HISTORYSTATES generations (default 63)</td></tr>
</table>
</table>
New cells are drawn in the ALIVE colour.


==Camera controls==
If cells stay alive they fade from the ALIVE colour to the ALIVERAMP colour over the next AGESTATES (default 63) generations. This provides a visual representation of cell longevity.
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>V</td><td>restore saved camera position</td></tr><tr>
<td>Shift V</td><td>save current camera position</td></tr><tr>
<td>F</td><td>fit pattern to display</td></tr><tr>
<td>Shift F</td><td>toggle autofit</td></tr><tr>
<td>Shift H</td><td>toggle autofit history mode</td></tr><tr>
<td>Ctrl F</td><td>fit selection to display</td></tr><tr>
<td>Ctrl M</td><td>center pattern on display</td></tr><tr>
<td>[</td><td>zoom out</td></tr><tr>
<td>]</td><td>zoom in</td></tr><tr>
<td>Shift [</td><td>halve zoom</td></tr><tr>
<td>Shift ]</td><td>double zoom</td></tr><tr>
<td>1</td><td>1x zoom</td></tr><tr>
<td>2</td><td>2x zoom</td></tr><tr>
<td>4</td><td>4x zoom</td></tr><tr>
<td>8</td><td>8x zoom</td></tr><tr>
<td>6</td><td>16x zoom</td></tr><tr>
<td>3</td><td>32x zoom</td></tr><tr>
<td>Shift 3</td><td>64x zoom</td></tr><tr>
<td>Shift 1</td><td>integer zoom</td></tr><tr>
<td>Shift 2</td><td>-2x zoom</td></tr><tr>
<td>Shift 4</td><td>-4x zoom</td></tr><tr>
<td>Shift 8</td><td>-8x zoom</td></tr><tr>
<td>Shift 6</td><td>-16x zoom</td></tr><tr>
<td>Left</td><td>pan left</td></tr><tr>
<td>Right</td><td>pan right</td></tr><tr>
<td>Up</td><td>pan up</td></tr><tr>
<td>Down</td><td>pan down</td></tr><tr>
<td>Shift Left</td><td>pan north west</td></tr><tr>
<td>Shift Right</td><td>pan south east</td></tr><tr>
<td>Shift Up</td><td>pan north east</td></tr><tr>
<td>Shift Down</td><td>pan south west</td></tr><tr>
<td><</td><td>rotate left</td></tr><tr>
<td>></td><td>rotate right</td></tr><tr>
<td>Shift <</td><td>rotate left 90 degrees</td></tr><tr>
<td>Shift ></td><td>rotate right 90 degrees</td></tr><tr>
<td>5</td><td>reset angle</td></tr>
</table>


==View controls==
Cells are drawn in the DEAD colour when they die.
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Q</td><td>increase number of layers</td></tr><tr>
<td>A</td><td>decrease number of layers</td></tr><tr>
<td>P</td><td>increase layer depth</td></tr><tr>
<td>L</td><td>decrease layer depth</td></tr><tr>
<td>C</td><td>next colour theme</td></tr><tr>
<td>Shift C</td><td>previous colour theme</td></tr><tr>
<td>Alt C</td><td>default theme</td></tr>
</table>


==Display controls==
If they stay dead they fade from the DEAD colour to the DEADRAMP colour over the next HISTORYSTATES (default 63) generations. This provides a visual representation of cell history.
<table border=1 cellspacing=0 width=500><tr>
<div class="mw-collapsible mw-collapsed">
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
Click on "Expand" to the right to see the definitions of the available two-state Themes.
<td>G</td><td>toggle generation statistics</td></tr><tr>
<div class="mw-collapsible-content">
<td>Shift G</td><td>toggle generation display mode</td></tr><tr>
{| class="wikitable"
<td>Y</td><td>toggle population graph</td></tr><tr>
! Mono
<td>Shift Y</td><td>toggle graph lines</td></tr><tr>
|-
<td>7</td><td>decrease graph opacity</td></tr><tr>
| BACKGROUND
<td>9</td><td>increase graph opacity</td></tr><tr>
| 0
<td>Shift W</td><td>toggle performance warning</td></tr><tr>
| 0
<td>/</td><td>toggle cell type for hex and triangular grids</td></tr><tr>
| 0
<td>T</td><td>toggle timing information</td></tr><tr>
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
<td>Shift T</td><td>toggle extended timing information</td></tr><tr>
| Black
<td>I</td><td>toggle pattern and engine information</td></tr><tr>
|-
<td>Shift I</td><td>toggle information bar</td></tr><tr>
| ALIVE
<td>Ctrl Q</td><td>toggle cell anti-aliasing</td></tr><tr>
| 255
<td>Alt B</td><td>toggle cell borders</td></tr><tr>
| 255
<td>X</td><td>toggle gridlines</td></tr><tr>
<td>Shift X</td><td>toggle major gridlines</td></tr><tr>
<td>Ctrl G</td><td>toggle auto gridlines</td></tr><tr>
<td>Alt G</td><td>convert pattern to [Rule]Super</td></tr><tr>
<td>Alt H</td><td>convert pattern to [Rule]History</td></tr><tr>
<td>Alt J</td><td>convert pattern to [Rule]Standard</td></tr><tr>
<td>Ctrl L</td><td>toggle kill escaping gliders</td></tr><tr>
<td>S</td><td>toggle stars</td></tr><tr>
<td>O</td><td>open screenshot in separate window</td></tr><tr>
<td>Shift O</td><td>open population graph in separate window</td></tr><tr>
<td>Shift U</td><td>toggle UI</td></tr>
<td>Alt W</td><td>toggle rainbow mode</td></tr>
</table>
 
==Pattern controls==
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Alt N</td><td>new pattern</td></tr><tr>
<td>Alt R</td><td>change rule</td></tr><tr>
<td>Ctrl O</td><td>open original or last saved pattern</td></tr><tr>
<td>Ctrl+Shift O</td><td>open clipboard as pattern</td></tr><tr>
<td>Ctrl S</td><td>save pattern</td></tr><tr>
<td>Alt Z</td><td>randomize pattern and rule</td></tr><tr>
<td>Ctrl+Alt Z</td><td>randomize pattern only</td></tr><tr>
<td>F6</td><td>toggle oscillator and spaceship identification</td></tr><tr>
<td>Ctrl+F6</td><td>fast identification</td></tr>
</table>
 
==External clipboard controls==
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Alt S</td><td>toggle sync cut and copy with external clipboard</td></tr><tr>
<td>Ctrl+Shift C</td><td>copy original pattern</td></tr><tr>
<td>Ctrl C</td><td>copy current selection</td></tr><tr>
<td>Ctrl+Alt C</td><td>copy current selection with comments</td></tr><tr>
<td>Ctrl+Shift X</td><td>cut original pattern</td></tr><tr>
<td>Ctrl X</td><td>cut current selection</td></tr><tr>
<td>Ctrl+Alt X</td><td>cut current selection with comments</td></tr><tr>
<td>Ctrl J</td><td>copy rule definition</td></tr><tr>
<td>K</td><td>copy camera position</td></tr><tr>
<td>Shift K</td><td>copy camera position and view</td></tr>
</table>
 
==Edit controls==
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>F1</td><td>toggle draw/pan mode</td></tr><tr>
<td>F2</td><td>draw mode</td></tr><tr>
<td>Shift F2</td><td>toggle smart drawing</td></tr><tr>
<td>F3</td><td>pick mode</td></tr><tr>
<td>F4</td><td>select mode</td></tr><tr>
<td>F5</td><td>pan mode</td></tr><tr>
<td>Ctrl A</td><td>select all</td></tr><tr>
<td>Shift A</td><td>shrink selection</td></tr><tr>
<td>Alt A</td><td>toggle auto-shrink selection</td></tr><tr>
<td>Ctrl C</td><td>copy</td></tr><tr>
<td>Ctrl I</td><td>invert selection</td></tr><tr>
<td>Ctrl K</td><td>remove selection</td></tr><tr>
<td>Ctrl V</td><td>paste</td></tr><tr>
<td>Ctrl+Shift V</td><td>paste to selection</td></tr><tr>
<td>Ctrl X</td><td>cut</td></tr><tr>
<td>Ctrl Y</td><td>redo edit</td></tr><tr>
<td>Ctrl Z</td><td>undo edit</td></tr><tr>
<td>Ctrl+Shift Z</td><td>redo edit</td></tr><tr>
<td>Ctrl Space</td><td>advance selection</td></tr><tr>
<td>Shift Space</td><td>advance outside</td></tr><tr>
<td>Shift L</td><td>cycle paste location</td></tr><tr>
<td>Shift M</td><td>cycle paste mode</td></tr><tr>
<td>Shift 5</td><td>random fill</td></tr><tr>
<td>Alt K</td><td>pick cell state to replace with drawing state</td></tr><tr>
<td>Ctrl+Alt K</td><td>clear current drawing state cells</td></tr><tr>
<td>Del</td><td>clear cells in selection</td></tr><tr>
<td>Shift Del</td><td>clear outside selection</td></tr><tr>
<td>></td><td>rotate selection clockwise</td></tr><tr>
<td><</td><td>rotate selection counter-clockwise</td></tr><tr>
<td>Alt X</td><td>flip selection horizontally</td></tr><tr>
<td>Alt Y</td><td>flip selection vertically</td></tr><tr>
<td>Alt Left</td><td>nudge selection 1 cell left</td></tr><tr>
<td>Alt Right</td><td>nudge selection 1 cell right</td></tr><tr>
<td>Alt Up</td><td>nudge selection 1 cell up</td></tr><tr>
<td>Alt Down</td><td>nudge selection 1 cell down</td></tr><tr>
<td>Esc</td><td>hide paste</td></tr><tr>
<td>Enter</td><td>perform paste</td></tr><tr>
<td>Ctrl 0</td><td>select state 0 for drawing</td></tr><tr>
<td>Ctrl 1</td><td>select state 1 for drawing</td></tr><tr>
<td>Alt 0</td><td>make clipboard 0 active</td></tr><tr>
<td>Alt 1</td><td>make clipboard 1 active</td></tr><tr>
<td>Alt 2</td><td>make clipboard 2 active</td></tr><tr>
<td>Alt 3</td><td>make clipboard 3 active</td></tr><tr>
<td>Alt 4</td><td>make clipboard 4 active</td></tr><tr>
<td>Alt 5</td><td>make clipboard 5 active</td></tr><tr>
<td>Alt 6</td><td>make clipboard 6 active</td></tr><tr>
<td>Alt 7</td><td>make clipboard 7 active</td></tr><tr>
<td>Alt 8</td><td>make clipboard 8 active</td></tr><tr>
<td>Alt 9</td><td>make clipboard 9 active</td></tr>
</table>
 
==Help controls==
<td><table border=1 cellspacing=0 width=500><tr></td></tr><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>Up</td><td>scroll up one line</td></tr><tr>
<td>Down</td><td>scroll down one line</td></tr><tr>
<td>Page Up</td><td>scroll up one page</td></tr><tr>
<td>Page Down</td><td>scroll down one page</td></tr><tr>
<td>Shift Page Up</td><td>scroll up one section</td></tr><tr>
<td>Shift Page Down</td><td>scroll down one section</td></tr><tr>
<td>Home</td><td>go to first help page</td></tr><tr>
<td>End</td><td>go to last help page</td></tr>
</table>
 
==Themes==
Themes are used to provide a visual representation of cell history and longevity and also define grid colours.
 
===Grid===
GRID: grid line colour<br />
GRIDMAJOR: major grid line colour and interval
 
===Two-state Themes===
BACKGROUND: cell never occupied<br />
ALIVE: cell just born<br />
ALIVERAMP: cell alive for several generations<br />
DEAD: cell just died<br />
DEADRAMP: cell dead for several generations
 
There are 63 (AGESTATES) states from ALIVE to ALIVERAMP.<br />
There are 63 (HISTORYSTATES) states from DEAD to DEADRAMP.
 
{| class="wikitable"
| Mono
|-
| BACKGROUND
| 0
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
|-
| ALIVE
| 255
| 255
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 708: Line 618:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| Blues
! Blues
|-
|-
| BACKGROUND
| BACKGROUND
Line 716: Line 627:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 722: Line 634:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 728: Line 641:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 734: Line 648:
| 255
| 255
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| Blue
|-
|-
| DEADRAMP
| DEADRAMP
Line 740: Line 655:
| 47
| 47
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Fire
! Fire
|-
|-
| BACKGROUND
| BACKGROUND
Line 748: Line 664:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 754: Line 671:
| 0
| 0
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 760: Line 678:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DEAD
| DEAD
Line 766: Line 685:
| 0
| 0
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 772: Line 692:
| 0
| 0
| style="background-color:#200000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#200000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Poison
! Poison
|-
|-
| BACKGROUND
| BACKGROUND
Line 780: Line 701:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 786: Line 708:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 792: Line 715:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 798: Line 722:
| 0
| 0
| style="background-color:#008000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#008000;" | &nbsp;&nbsp;&nbsp;
| Green
|-
|-
| DEADRAMP
| DEADRAMP
Line 804: Line 729:
| 0
| 0
| style="background-color:#001800;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#001800;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Yellow
! Yellow
|-
|-
| BACKGROUND
| BACKGROUND
Line 812: Line 738:
| 128
| 128
| style="background-color:#002080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#002080;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 818: Line 745:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 824: Line 752:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 830: Line 759:
| 128
| 128
| style="background-color:#800080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#800080;" | &nbsp;&nbsp;&nbsp;
| Purple
|-
|-
| DEADRAMP
| DEADRAMP
Line 836: Line 766:
| 0
| 0
| style="background-color:#002f00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#002f00;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Gray
! Gray
|-
|-
| BACKGROUND
| BACKGROUND
Line 844: Line 775:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 850: Line 782:
| 176
| 176
| style="background-color:#b0b0b0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#b0b0b0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 856: Line 789:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 862: Line 796:
| 104
| 104
| style="background-color:#686868;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#686868;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 868: Line 803:
| 16
| 16
| style="background-color:#101010;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#101010;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Inverse
! Inverse
|-
|-
| BACKGROUND
| BACKGROUND
Line 876: Line 812:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 882: Line 819:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DEAD
| DEAD
Line 888: Line 826:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| Day
! Day
|-
|-
| BACKGROUND
| BACKGROUND
Line 896: Line 835:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 902: Line 842:
| 255
| 255
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| Blue
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 908: Line 849:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DEAD
| DEAD
Line 914: Line 856:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DEADRAMP
| DEADRAMP
Line 920: Line 863:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Occupied
! Occupied
|-
|-
| BACKGROUND
| BACKGROUND
Line 928: Line 872:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 934: Line 879:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 940: Line 886:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
! Red
|-
|-
| BACKGROUND
| BACKGROUND
Line 946: Line 895:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 952: Line 902:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 958: Line 909:
| 0
| 0
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| LifeHistory
! LifeHistory
|-
|-
| BACKGROUND
| BACKGROUND
Line 966: Line 918:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 972: Line 925:
| 0
| 0
| style="background-color:#00f000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00f000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 978: Line 932:
| 16
| 16
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 984: Line 939:
| 160
| 160
| style="background-color:#0000a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 990: Line 946:
| 96
| 96
| style="background-color:#000060;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000060;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Generations
! Generations
|-
|-
| BACKGROUND
| BACKGROUND
Line 998: Line 955:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,004: Line 962:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 1,010: Line 969:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 1,016: Line 976:
| 0
| 0
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| Red
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,022: Line 983:
| 0
| 0
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Golly
! Golly
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,030: Line 992:
| 48
| 48
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,036: Line 999:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 1,042: Line 1,006:
| 48
| 48
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRID
| GRID
Line 1,048: Line 1,013:
| 80
| 80
| style="background-color:#505050;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#505050;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,054: Line 1,020:
| 112
| 112
| style="background-color:#707070;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#707070;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 10
| 10
|-
|-
| MCell
! MCell
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,065: Line 1,032:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,071: Line 1,039:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DEAD
| DEAD
Line 1,077: Line 1,046:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| GRID
| GRID
Line 1,083: Line 1,053:
| 0
| 0
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,089: Line 1,060:
| 1
| 1
| style="background-color:#630301;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#630301;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 5
| 5
|-
|-
| Catagolue
! Catagolue
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,100: Line 1,072:
| 238
| 238
| style="background-color:#c0ffee;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0ffee;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,106: Line 1,079:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DEAD
| DEAD
Line 1,112: Line 1,086:
| 204
| 204
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRID
| GRID
Line 1,118: Line 1,093:
| 204
| 204
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,124: Line 1,100:
| 204
| 204
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 0
| 0
|-
|-
| Caterer
! Caterer
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,135: Line 1,112:
| 62
| 62
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,141: Line 1,119:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 1,147: Line 1,126:
| 62
| 62
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRID
| GRID
Line 1,153: Line 1,133:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,159: Line 1,140:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 0
| 0
|-
|-
| Life32
! Life32
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,170: Line 1,152:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,176: Line 1,159:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DEAD
| DEAD
Line 1,182: Line 1,166:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| GRID
| GRID
Line 1,188: Line 1,173:
| 192
| 192
| style="background-color:#c0c0c0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0c0c0;" | &nbsp;&nbsp;&nbsp;
| Silver
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,194: Line 1,180:
| 128
| 128
| style="background-color:#808080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#808080;" | &nbsp;&nbsp;&nbsp;
| Gray
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 5
| 5
|-
|-
| Margolus
! Margolus
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,205: Line 1,192:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,211: Line 1,199:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 1,217: Line 1,206:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 1,223: Line 1,213:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,229: Line 1,220:
| 47
| 47
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRID
| GRID
Line 1,235: Line 1,227:
| 255
| 255
| style="background-color:#2020ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#2020ff;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,241: Line 1,234:
| 128
| 128
| style="background-color:#404080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#404080;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
| 2
| 2
|-
|-
| PCA
! PCA
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,252: Line 1,246:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,258: Line 1,253:
| 176
| 176
| style="background-color:#b0b0b0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#b0b0b0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVERAMP
| ALIVERAMP
Line 1,264: Line 1,260:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,270: Line 1,267:
| 64
| 64
| style="background-color:#404040;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#404040;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,276: Line 1,274:
| 24
| 24
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Book
! Book
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,284: Line 1,283:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,290: Line 1,290:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DEAD
| DEAD
Line 1,296: Line 1,297:
| 255
| 255
| style="background-color:#c0dcff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0dcff;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,302: Line 1,304:
| 192
| 192
| style="background-color:#ffdcc0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffdcc0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRID
| GRID
Line 1,308: Line 1,311:
| 192
| 192
| style="background-color:#c0c0c0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0c0c0;" | &nbsp;&nbsp;&nbsp;
| Silver
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,314: Line 1,318:
| 209
| 209
| style="background-color:#d1d1d1;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#d1d1d1;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| GRIDMAJOR
| GRIDMAJOR
Line 1,319: Line 1,324:
|-
|-
|}
|}
</div>
</div>
=== Multi-state Themes ===
Multi-state Themes are used for Generations rules and there are six colours that are used for defining the cell colours:
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Key</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>BACKGROUND</td><td>cell never occupied</td></tr><tr>
<td>ALIVE</td><td>cell alive</td></tr><tr>
<td>DYING</td><td>cell just started dying</td></tr>
<td>DYINGRAMP</td><td>cell about to die</td></tr>
<td>DEAD</td><td>cell just died</td></tr>
<td>DEADRAMP</td><td>cell dead for at least HISTORYSTATES generations (default 63)</td></tr>
</table>
New cells are drawn in the ALIVE colour.


===Multi-state Themes===
Cells are drawn in the DYING colour when they start to die. They then fade to the DYINGRAMP colour over the number of generations defined in the rule.
BACKGROUND: cell never occupied<br />
ALIVE: cell alive<br />
DYING: cell just starting dying<br />
DYINGRAMP: cell about to die<br />
DEAD: cell just died<br />
DEADRAMP: cell dead for several generations


Rule defines states from DYING to DYINGRAMP<br />
Once cells reach the DYINGRAMP colour then on the next generation they die and become the DEAD colour.
63 (HISTORYSTATES) states from DEAD to DEADRAMP
 
If they stay dead they fade from the DEAD colour to the DEADRAMP colour over the next HISTORYSTATES (default 63) generations. This provides a visual representation of cell history.
 
<div class="mw-collapsible mw-collapsed">
Click on "Expand" to the right to see the definitions of the available multi-state Themes.
<div class="mw-collapsible-content">


{| class="wikitable"
{| class="wikitable"
| Mono
! Mono
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,339: Line 1,358:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,345: Line 1,365:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DYING
| DYING
Line 1,351: Line 1,372:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,357: Line 1,379:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DEAD
| DEAD
Line 1,363: Line 1,386:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| Blues
! Blues
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,371: Line 1,395:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,377: Line 1,402:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DYING
| DYING
Line 1,383: Line 1,409:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,389: Line 1,416:
| 255
| 255
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| Blue
|-
|-
| DEAD
| DEAD
Line 1,395: Line 1,423:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,401: Line 1,430:
| 47
| 47
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Fire
! Fire
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,409: Line 1,439:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,415: Line 1,446:
| 0
| 0
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,421: Line 1,453:
| 0
| 0
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff9000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,427: Line 1,460:
| 0
| 0
| style="background-color:#f00000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f00000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,433: Line 1,467:
| 0
| 0
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,439: Line 1,474:
| 0
| 0
| style="background-color:#200000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#200000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Poison
! Poison
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,447: Line 1,483:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,453: Line 1,490:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DYING
| DYING
Line 1,459: Line 1,497:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,465: Line 1,504:
| 0
| 0
| style="background-color:#00c000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00c000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,471: Line 1,511:
| 0
| 0
| style="background-color:#008000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#008000;" | &nbsp;&nbsp;&nbsp;
| Green
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,477: Line 1,518:
| 0
| 0
| style="background-color:#001800;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#001800;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Yellow
! Yellow
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,485: Line 1,527:
| 128
| 128
| style="background-color:#002080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#002080;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,491: Line 1,534:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYING
| DYING
Line 1,497: Line 1,541:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,503: Line 1,548:
| 64
| 64
| style="background-color:#c04040;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c04040;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,509: Line 1,555:
| 128
| 128
| style="background-color:#800080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#800080;" | &nbsp;&nbsp;&nbsp;
| Purple
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,515: Line 1,562:
| 0
| 0
| style="background-color:#002f00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#002f00;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Gray
! Gray
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,523: Line 1,571:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,529: Line 1,578:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,535: Line 1,585:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,541: Line 1,592:
| 160
| 160
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,547: Line 1,599:
| 104
| 104
| style="background-color:#686868;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#686868;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,553: Line 1,606:
| 16
| 16
| style="background-color:#101010;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#101010;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Inverse
! Inverse
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,561: Line 1,615:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,567: Line 1,622:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DYING
| DYING
Line 1,573: Line 1,629:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,579: Line 1,636:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DEAD
| DEAD
Line 1,585: Line 1,643:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| Day
! Day
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,593: Line 1,652:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,599: Line 1,659:
| 255
| 255
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| Blue
|-
|-
| DYING
| DYING
Line 1,605: Line 1,666:
| 255
| 255
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000ff;" | &nbsp;&nbsp;&nbsp;
| Blue
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,611: Line 1,673:
| 255
| 255
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ffff;" | &nbsp;&nbsp;&nbsp;
| Aqua
|-
|-
| DEAD
| DEAD
Line 1,617: Line 1,680:
| 192
| 192
| style="background-color:#00c0c0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00c0c0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,623: Line 1,687:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Occupied
! Occupied
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,631: Line 1,696:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,637: Line 1,703:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,643: Line 1,710:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,649: Line 1,717:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Red
! Red
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,657: Line 1,726:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,663: Line 1,733:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| DYING
| DYING
Line 1,669: Line 1,740:
| 160
| 160
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,675: Line 1,747:
| 0
| 0
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a00000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| LifeHistory
! LifeHistory
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,683: Line 1,756:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,689: Line 1,763:
| 16
| 16
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,695: Line 1,770:
| 16
| 16
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#10ff10;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,701: Line 1,777:
| 160
| 160
| style="background-color:#0080a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0080a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,707: Line 1,784:
| 160
| 160
| style="background-color:#0000a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#0000a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,713: Line 1,791:
| 96
| 96
| style="background-color:#000060;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000060;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Generations
! Generations
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,721: Line 1,800:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,727: Line 1,807:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYING
| DYING
Line 1,733: Line 1,814:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,739: Line 1,821:
| 0
| 0
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| Red
|-
|-
| DEAD
| DEAD
Line 1,745: Line 1,828:
| 0
| 0
| style="background-color:#800000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#800000;" | &nbsp;&nbsp;&nbsp;
| Maroon
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,751: Line 1,835:
| 0
| 0
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#400000;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Golly
! Golly
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,759: Line 1,844:
| 48
| 48
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,765: Line 1,851:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYING
| DYING
Line 1,771: Line 1,858:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,777: Line 1,865:
| 0
| 0
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff0000;" | &nbsp;&nbsp;&nbsp;
| Red
|-
|-
| DEAD
| DEAD
Line 1,783: Line 1,872:
| 48
| 48
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#303030;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| MCell
! MCell
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,791: Line 1,881:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,797: Line 1,888:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYING
| DYING
Line 1,803: Line 1,895:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,809: Line 1,902:
| 0
| 0
| style="background-color:#00ff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00ff00;" | &nbsp;&nbsp;&nbsp;
| Lime
|-
|-
| DEAD
| DEAD
Line 1,815: Line 1,909:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| Catagolue
! Catagolue
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,823: Line 1,918:
| 238
| 238
| style="background-color:#c0ffee;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0ffee;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,829: Line 1,925:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DYING
| DYING
Line 1,835: Line 1,932:
| 2
| 2
| style="background-color:#028102;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#028102;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,841: Line 1,939:
| 139
| 139
| style="background-color:#60c08b;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#60c08b;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,847: Line 1,946:
| 204
| 204
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0ddcc;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Caterer
! Caterer
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,855: Line 1,955:
| 62
| 62
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| ALIVE
| ALIVE
Line 1,861: Line 1,962:
| 0
| 0
| style="background-color:#ffaa00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffaa00;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,867: Line 1,969:
| 0
| 0
| style="background-color:#ffaa00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffaa00;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,873: Line 1,976:
| 0
| 0
| style="background-color:#ff5500;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ff5500;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,879: Line 1,983:
| 62
| 62
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#36393e;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Life32
! Life32
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,887: Line 1,992:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,893: Line 1,999:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DYING
| DYING
Line 1,899: Line 2,006:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,905: Line 2,013:
| 64
| 64
| style="background-color:#000040;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000040;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,911: Line 2,020:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| Margolus
! Margolus
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,919: Line 2,029:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,925: Line 2,036:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYING
| DYING
Line 1,931: Line 2,043:
| 0
| 0
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffff00;" | &nbsp;&nbsp;&nbsp;
| Yellow
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,937: Line 2,050:
| 128
| 128
| style="background-color:#404080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#404080;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,943: Line 2,057:
| 128
| 128
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000080;" | &nbsp;&nbsp;&nbsp;
| Navy
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,949: Line 2,064:
| 47
| 47
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#00002f;" | &nbsp;&nbsp;&nbsp;
|
|-
! PCA
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,955: Line 2,073:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| ALIVE
| ALIVE
Line 1,961: Line 2,080:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYING
| DYING
Line 1,967: Line 2,087:
| 240
| 240
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#f0f0f0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 1,973: Line 2,094:
| 160
| 160
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#a0a0a0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 1,979: Line 2,101:
| 64
| 64
| style="background-color:#404040;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#404040;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 1,985: Line 2,108:
| 24
| 24
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| Book
! Book
|-
|-
| BACKGROUND
| BACKGROUND
Line 1,993: Line 2,117:
| 255
| 255
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffffff;" | &nbsp;&nbsp;&nbsp;
| White
|-
|-
| ALIVE
| ALIVE
Line 1,999: Line 2,124:
| 0
| 0
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#000000;" | &nbsp;&nbsp;&nbsp;
| Black
|-
|-
| DYING
| DYING
Line 2,005: Line 2,131:
| 128
| 128
| style="background-color:#808080;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#808080;" | &nbsp;&nbsp;&nbsp;
| Gray
|-
|-
| DYINGRAMP
| DYINGRAMP
Line 2,011: Line 2,138:
| 24
| 24
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#181818;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEAD
| DEAD
Line 2,017: Line 2,145:
| 255
| 255
| style="background-color:#c0dcff;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#c0dcff;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
| DEADRAMP
| DEADRAMP
Line 2,023: Line 2,152:
| 192
| 192
| style="background-color:#ffdcc0;" | &nbsp;&nbsp;&nbsp;
| style="background-color:#ffdcc0;" | &nbsp;&nbsp;&nbsp;
|
|-
|-
|}
|}
</div>
</div>


==Scripts==
== Pattern Identification ==
Scripts must be embedded in pattern comments. Commands must be surrounded by whitespace.
LifeViewer is able to identify [[spaceships]], [[oscillators]] and [[still-life]] patterns. For oscillators it can display a table and graphical [[map]] of periods and frequencies per cell.


For example loading the following pattern into LifeViewer will start playback automatically (AUTOSTART) and then stop at generation 30 (STOP 30).
[[File:Identify-results.png]]
<nowiki>
[[File:Identify-table.png]]
#C [[ AUTOSTART STOP 30 ]]
x = 3, y = 3, rule = Life
o$
obo$
2o!
</nowiki>


It's also valid to have script commands after the RLE since this is also treated as comments.
[[File:Identify-map.png]]
<nowiki>
x = 3, y = 3, rule = Life
o$
obo$
2o!
[[
  ANGLE 30
  GPS 5
  AUTOSTART
  THEME Fire
]]
</nowiki>


<nowiki>
== Scripts ==
Only text surrounded by [[ and ]] is interpreted as script commands.
{{main|LifeViewer/Scripts}}
</nowiki>
LifeViewer supports a large number of script commands than can be used to control playback, the camera, labels and annotations, colours and many other aspects.
<nowiki>
#C An example [[ ZOOM 16 ]] with camera settings [[ X -4 Y 5 ]]
#C and [[ GRID ]] grid lines.
x = 3, y = 3, rule = Life
o$
obo$
2o!
</nowiki>


===Parameter conventions===
== Info ==
<table border=1 cellspacing=0 width=500><tr>
LifeViewer engine information and details about the currently loaded pattern can be found by pressing 'I', or clicking the Info button under Help.
<td bgcolor=#c0c0c0>Parameter</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
 
<td>A|B</td><td>either A or B</td></tr><tr>
== Planned features ==
<td>(A)</td><td>A is optional</td></tr><tr>
The following features and functionalities are planned for future builds of LifeViewer:
<td>A*</td><td>zero or more A</td></tr><tr>
* Theme support for [R]Super<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129493#p129493</ref>
<td>A+</td><td>one or more A</td></tr><tr>
<td><1..3></td><td>integer range</td></tr><tr>
<td><1.0..3.0></td><td>decimal range</td></tr>
</table>


===General===
== Possible future features ==
<table border=1 cellspacing=0 width=500><tr>
<div class="mw-collapsible mw-collapsed">
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
Click on "Expand" to the right to view the list of other requested features that ''may'' appear at some stage.
<td>[[</td><td>start script section</td></tr><tr>
<div class="mw-collapsible-content">
<td>]]</td><td>end script section</td></tr><tr>
=== Rules ===
<td>SUPPRESS</td><td>suppress overwrite warning</td></tr>
* Native support for [[BSFKL]] rules<ref name="rulespaces1">https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=86409#p86409</ref>
</table>
* Native support for [[Extended Generations]]<ref name="rulespaces1"/>
* Native support for 1D totalistic rules<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=84188#p84188</ref>
* Native support for higher-range Margolus rules<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=82121#p82121</ref>
* Native support for one-dimensional rules with a range greater than 2<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=82283#p82283</ref>
* Native support for alternating rules with more than 3 constituent rules<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129157#p129157</ref>


===Playback===
=== Non-square grids/selections ===
<table border=1 cellspacing=0 width=500><tr>
* Diagonal/von Neumann-like selections<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=70959#p70959</ref>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
* Selection shapes which are more useful for hexagonal and triangular grids<ref name="hextri1">https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=78941#p78941</ref><ref name="hextri2">https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=80331#p80331</ref><ref name="hextri3">https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=87226#p87226</ref>
<td>AUTOSTART (OFF)</td><td>start play automatically</td></tr><tr>
* Selection flip/rotate transformations for hexagonal and triangular grids<ref name="hextri2"/>
<td>LOOP <1..>|OFF</td><td>loop at generation</td></tr><tr>
* Directions of spaceships on hexagonal and triangular grids from Identify<ref>https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=84510#p84510</ref>
<td>STOP <1..>|OFF</td><td>stop at generation</td></tr><tr>
* Calculating the mod of oscillators and spaceships on hexagonal and triangular grids in Identify<ref name="hextri3"/>
<td>GPS <1..60></td><td>set steps per second</td></tr><tr>
<td>STEP <1..64></td><td>set generations per step</td></tr><tr>
<td>HARDRESET</td><td>always use hard reset</td></tr><tr>
<td>VIEWONLY</td><td>disable playback</td></tr><tr>
<td>NOSTEPBACK</td><td>disable step back</td></tr><tr>
<td>NOREPORT</td><td>disable stop messages</td></tr><tr>
<td>NOPERFWARNING</td><td>disable performance warning</td></tr><tr>
<td>NOTHROTTLE</td><td>disable playback throttling</td></tr><tr>
<td>EXCLUSIVEPLAY</td><td>starting playback pauses others</td></tr><tr>
<td>IGNOREEXCLUSIVE</td><td>ignore other pause requests</td></tr>
</table>


===Camera===
=== [R]Super/[R]History ===
<table border=1 cellspacing=0 width=500><tr>
* KILLGLIDERS functionality in [R]Super<ref name="Apr2021">https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129156&hilit=backlog#p129156</ref>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
* Support for pasting in [R]History/[R]Super-exclusive cells<ref>https://conwaylife.com/forums/viewtopic.php?p=93893#p93893</ref>
<td>ANGLE <0..359></td><td>set camera angle</td></tr><tr>
* Selection inversion support for [R]History and [R]Super<ref name="Apr2021"/>
<td>X <-4096..4096></td><td>set camera x position</td></tr><tr>
</div>
<td>Y <-4096..4096></td><td>set camera y position</td></tr><tr>
</div>
<td>ZOOM <-16.0..64.0></td><td>set camera zoom</td></tr><tr>
<td>Z</td><td>same as ZOOM</td></tr><tr>
<td>AUTOFIT (OFF)</td><td>fit pattern to display</td></tr><tr>
<td>HISTORYFIT (OFF)</td><td>autofit uses pattern history</td></tr><tr>
<td>STATE1FIT (OFF)</td><td>autofit only uses state 1</td></tr><tr>
<td>TRACK X Y</td><td>camera tracking</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;X</td><td>horizontal speed cells/gen</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;Y</td><td>vertical speed cells/gen</td></tr><tr>
<td>TRACKBOX E S W N</td><td>camera box tracking</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;E</td><td>east edge speed cells/gen</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;S</td><td>south edge speed cells/gen</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;W</td><td>west edge speed cells/gen</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;N</td><td>north edge speed cells/gen</td></tr><tr>
<td>TRACKLOOP P X Y</td><td>camera tracking with loop</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;P</td><td>period</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;X</td><td>horizontal speed cells/gen</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;Y</td><td>vertical speed cells/gen</td></tr>
</table>


===Waypoints===
== Known bugs ==
<table border=1 cellspacing=0 width=500><tr>
{{main|LifeViewer/Known bugs}}
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>T <0..></td><td>waypoint at generation</td></tr><tr>
<td>PAUSE <0.0..></td><td>pause for time</td></tr><tr>
<td>LINEAR ALL|X|Y|ZOOM</td><td>linear motion</td></tr><tr>
<td>BEZIER ALL|X|Y|ZOOM</td><td>bezier motion (default)</td></tr><tr>
<td>TIME</td><td>save timing at waypoint start</td></tr>
</table>


===Points of interest===
== References ==
<table border=1 cellspacing=0 width=500><tr>
<references>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<ref name="post68678">{{LinkForumThread
<td>POI</td><td>define point of interest</td></tr><tr>
|format = ref
<td>POIT <0..></td><td>start POI at generation</td></tr><tr>
|title  = Re: Pattern viewer for forum threads
<td>POIRESET</td><td>reset generation at POI</td></tr><tr>
|p      = 68678
<td>POIPLAY</td><td>start playback at POI</td></tr><tr>
|author = Chris Rowett
<td>POISTOP</td><td>stop playback at POI</td></tr><tr>
|date  = January 26, 2019
<td>POITRANS <0..200></td><td>set POI transition speed</td></tr><tr>
}}</ref>
<td>&nbsp;&nbsp;&nbsp;<command>|ALL INITIAL</td><td>use initial value for POI</td></tr><tr>
<ref name="post68691">{{LinkForumThread
<td>&nbsp;&nbsp;&nbsp;"<string>"</td><td>define message</td></tr>
|format = ref
<td>POIADDLABELS</td><td>add Labels as POIs</td></tr><tr>
|title  = Re: Pattern viewer for forum threads
</table>
|p      = 68691
 
|author = Chris Rowett
===Annotations===
|date  = January 26, 2019
<table border=1 cellspacing=0 width=500><tr>
}}</ref>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<ref name="post86409">{{LinkForumThread
<td>LABEL X Y ZOOM</td><td>define label at position</td></tr><tr>
|format = ref
<td>&nbsp;&nbsp;&nbsp;(MAXZOOM) (FIXED)</td><td>... zoom range and fixed position</td></tr><tr>
|title  = Re: Pattern viewer for forum threads
<td>&nbsp;&nbsp;&nbsp;"<string>"</td><td>... label text</td></tr><tr>
|p      = 86409
<td>LABELSIZE <4..128></td><td>define label font size</td></tr><tr>
|author = Chris Rowett
<td>&nbsp;&nbsp;&nbsp;(FIXED)</td><td>... optionally fix size</td></tr><tr>
|date  = December 20, 2019
<td>LABELALPHA <0.0..1.0></td><td>define label font alpha</td></tr><tr>
}}</ref>
<td>LABELT <0..> <0..> <0..></td><td>generation range / fade</td></tr><tr>
<ref name="post84188">{{LinkForumThread
<td>LABELANGLE <0..359></td><td>label angle</td></tr><tr>
|format = ref
<td>&nbsp;&nbsp;&nbsp;(FIXED)</td><td>... optionally fix angle</td></tr><tr>
|title  = Re: Pattern viewer for forum threads
<td>LABELTARGET X Y D|OFF</td><td>label target and distance</td></tr><tr>
|p      = 84188
<td>LABELTRACK DX DY|FIXED</td><td>label move per generation</td></tr><tr>
|author = Chris Rowett
<td>ARROW X1 Y1 X2 Y2 ZOOM</td><td>define arrow at position</td></tr><tr>
|date  = October 15, 2019
<td>&nbsp;&nbsp;&nbsp;(MAXZOOM) (FIXED)</td><td>... zoom range and fix position</td></tr><tr>
}}</ref>
<td>ARROWSIZE <1..64> <0.0..1.0></td><td>line width and head multiple</td></tr><tr>
<ref name="post75775">{{LinkForumThread
<td>ARROWALPHA <0.0..1.0></td><td>define arrow alpha</td></tr><tr>
|format = ref
<td>ARROWT <0..> <0..> <0..></td><td>generation range / fade</td></tr><tr>
|title = Re: Pattern viewer for forum threads
<td>ARROWANGLE <0..359></td><td>arrow angle</td></tr><tr>
|p      = 75775
<td>&nbsp;&nbsp;&nbsp;(FIXED)</td><td>... optionally fix angle</td></tr><tr>
|author = Chris Rowett
<td>ARROWTARGET X Y D|OFF</td><td>arrow target and distance</td></tr><tr>
|date  = May 6, 2019
<td>ARROWTRACK DX DY|FIXED</td><td>arrow move per generation</td></tr><tr>
}}</ref>
<td>POLYLINE X1 Y1 X2 Y2 .. ZOOM</td><td>define outline polygon</td></tr><tr>
</references>
<td>&nbsp;&nbsp;&nbsp;(MAXZOOM) (FIXED)</td><td>... zoom range and fix position</td></tr><tr>
<td>POLYFILL X1 Y1 X2 Y2 .. ZOOM</td><td>define filled polygon</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(MAXZOOM) (FIXED)</td><td>... zoom range and fix position</td></tr><tr>
<td>POLYSIZE <1..64></td><td>line width</td></tr><tr>
<td>POLYALPHA <0.0..1.0></td><td>define polygon alpha</td></tr><tr>
<td>POLYT <0..> <0..> <0..></td><td>generation range / fade</td></tr><tr>
<td>POLYANGLE <0..359></td><td>polygon angle</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(FIXED)</td><td>... optionally fix angle</td></tr><tr>
<td>POLYTARGET X Y D|OFF</td><td>polygon target and distance</td></tr>
</table>
 
===Display===
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>WIDTH <560..4096></td><td>set LifeViewer width</td></tr><tr>
<td>HEIGHT <240..4096></td><td>set LifeViewer height</td></tr><tr>
<td>POPUPWIDTH <560..4096></td><td>set popup width</td></tr><tr>
<td>POPUPHEIGHT <240..4096></td><td>set popup height</td></tr><tr>
<td>TITLE "<string>"</td><td>set popup window title</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#B</td><td>program build number</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#N</td><td>pattern name</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#O</td><td>pattern originator</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#R</td><td>rule name</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#A</td><td>rule alias</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#T</td><td>program title</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;#0..9</td><td>saved timing as average fps</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;##</td><td># symbol</td></tr><tr>
<td>LAYERS <1..10></td><td>set number of layers</td></tr><tr>
<td>DEPTH <0.0..10.0></td><td>set layer depth</td></tr><tr>
<td>GRID (OFF)</td><td>display gridlines</td></tr><tr>
<td>GRIDMAJOR <0..16></td><td>set major grid line interval</td></tr><tr>
<td>AGESTATES <0..63></td><td>number of age states to draw</td></tr><tr>
<td>HISTORYSTATES <0..63></td><td>number of history states to draw</td></tr><tr>
<td>STARS (OFF)</td><td>display stars</td></tr><tr>
<td>HEXCELLS</td><td>hexagonal cells for hexagonal grid</td></tr><tr>
<td>TRIANGULARCELLS</td><td>triangular cells for triangular grid</td></tr><tr>
<td>SQUARECELLS</td><td>square cells for hexagonal or triangular grid</td></tr><tr>
<td>CELLBORDERS</td><td>display cell borders</td></tr><tr>
<td>NOGUI</td><td>disable menus and hotkeys</td></tr><tr>
<td>AUTOHIDEGUI</td><td>hide menus during playback</td></tr><tr>
<td>SHOWTIMING</td><td>show timing information</td></tr><tr>
<td>EXTENDEDTIMING</td><td>extended timing information</td></tr><tr>
<td>SHOWGENSTATS</td><td>show generation statistics</td></tr><tr>
<td>SHOWINFOBAR</td><td>show information bar</td></tr>
<td>RAINBOW</td><td>use rainbow colours</td></tr>
</table>
 
===Thumbnails===
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>THUMBNAIL (OFF)</td><td>start at 1/4 size</td></tr><tr>
<td>THUMBSIZE <2..4></td><td>set thumbnail divisor</td></tr><tr>
<td>THUMBLAUNCH (OFF)</td><td>thumbnail launches viewer</td></tr><tr>
<td>THUMBZOOM <-16.0..64.0></td><td>set thumbnail zoom</td></tr><tr>
<td>THUMBSTART</td><td>start playback on thumbnail expand</td></tr>
</table>


===Population Graph===
== External links ==
<table border=1 cellspacing=0 width=500><tr>
* [https://lazyslug.com/lifeview/plugin/version.txt Release notes]
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
* [https://lazyslug.com/lifeviewer/ LifeViewer homepage]
<td>GRAPH</td><td>display population graph</td></tr><tr>
* [https://lazyslug.com/lifeview/plugin/ LifeViewer files]
<td>GRAPHOPACITY <0.0..1.0></td><td>population graph opacity</td></tr><tr>
{{LinkLexicon|lex_l.htm#lifeviewer}}
<td>GRAPHPOINTS</td><td>population graph use points</td></tr><tr>
<td>NOGRAPH</td><td>disable population graph</td></tr>
</table>


===Colours===
=== Forum threads ===
<table border=1 cellspacing=0 width=500><tr>
* {{LinkForumThread|f=7|t=1026|title=LifeViewer - Life simulator in HTML5}}
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
* {{LinkForumThread|f=3|t=1622|title=Pattern viewer for forum threads}}
<td>THEME <0..19>|name</td><td>set theme</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;name = CUSTOM</td><td>set custom theme</td></tr><tr>
<td>COLOR BACKGROUND R G B</td><td>set theme background</td></tr><tr>
<td>COLOR ALIVE R G B</td><td>set theme alive color</td></tr><tr>
<td>COLOR ALIVERAMP R G B</td><td>set theme alive ramp</td></tr><tr>
<td>COLOR DEAD R G B</td><td>set theme dead color</td></tr><tr>
<td>COLOR DEADRAMP R G B</td><td>set theme dead ramp</td></tr><tr>
<td>COLOR DYING R G B</td><td>set theme dying color</td></tr><tr>
<td>COLOR DYINGRAMP R G B</td><td>set theme dying ramp</td></tr><tr>
<td>COLOR BOUNDARY R G B</td><td>set boundary color</td></tr><tr>
<td>COLOR <0..1> R G B</td><td>set state color</td></tr><tr>
<td>COLOR BOUNDED R G B</td><td>set bounded color</td></tr><tr>
<td>COLOR SELECT R G B</td><td>set select color</td></tr><tr>
<td>COLOR PASTE R G B</td><td>set paste color</td></tr><tr>
<td>COLOR ADVANCE R G B</td><td>set advance color</td></tr><tr>
<td>COLOR GRID R G B</td><td>set grid color</td></tr><tr>
<td>COLOR GRIDMAJOR R G B</td><td>set grid major color</td></tr><tr>
<td>COLOR STARS R G B</td><td>set star color</td></tr><tr>
<td>COLOR TEXT R G B</td><td>set waypoint message color</td></tr><tr>
<td>COLOR ERROR R G B</td><td>set error message color</td></tr><tr>
<td>COLOR GRAPHBG R G B</td><td>set graph background color</td></tr><tr>
<td>COLOR GRAPHAXIS R G B</td><td>set graph axis color</td></tr><tr>
<td>COLOR GRAPHALIVE R G B</td><td>set graph alive color</td></tr><tr>
<td>COLOR GRAPHBIRTH R G B</td><td>set graph birth color</td></tr><tr>
<td>COLOR GRAPHDEATH R G B</td><td>set graph death color</td></tr><tr>
<td>COLOR LABEL R G B</td><td>set label text color</td></tr><tr>
<td>COLOR ARROW R G B</td><td>set arrow line color</td></tr><tr>
<td>COLOR POLY R G B</td><td>set polygon color</td></tr><tr>
<td>COLOR UIFOREGROUND R G B</td><td>set UI foreground color</td></tr><tr>
<td>COLOR UIBACKGROUND R G B</td><td>set UI background color</td></tr><tr>
<td>COLOR UIHIGHLIGHT R G B</td><td>set UI highlight text color</td></tr><tr>
<td>COLOR UISELECT R G B</td><td>set UI selected color</td></tr><tr>
<td>COLOR UILOCKED R G B</td><td>set UI locked color</td></tr><tr>
<td>COLOR UIBORDER R G B</td><td>set UI border color</td></tr><tr>
<td>COLOUR</td><td>same as COLOR</td></tr>
</table>


===Pattern===
{{CatagolueNavbox}}
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>XOFFSET <-4096..4096></td><td>set pattern x offset</td></tr><tr>
<td>YOFFSET <-4096..4096></td><td>set pattern y offset</td></tr><tr>
<td>DELETERANGE <1..16></td><td>set boundary delete range</td></tr><tr>
<td>NOCOPY</td><td>disable pattern source copy</td></tr><tr>
<td>NOSOURCE</td><td>hide pattern source</td></tr><tr>
<td>MAXGRIDSIZE <9..14></td><td>set maximum grid size 2^n</td></tr><tr>
<td>RECIPE name X Y (<1..>)+</td><td>create a named recipe</td></tr><tr>
<td>RLE name rle</td><td>create a named rle</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(X Y) (TRANS)</td><td>... X Y and transformation</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;IDENTITY</td><td>identity</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;FLIP</td><td>flip</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;FLIPX</td><td>flip X</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;FLIPY</td><td>flip Y</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;SWAPXY</td><td>swap X and Y</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;SWAPXYFLIP</td><td>swap X and Y and flip</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;RCW</td><td>rotate clockwise</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;RCCW</td><td>rotate counter-clockwise</td></tr><tr>
<td>PASTE name|rle (X Y)</td><td>paste rle at optional X Y</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(TRANS)</td><td>... optional transformation</td></tr><tr>
<td>PASTET <0..></td><td>set paste generation</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(recipe|<1..>+)*</td><td>... optional delta list</td></tr><tr>
<td>PASTET EVERY <1..></td><td>set paste interval</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;(<0..> (<1..>))</td><td>... optional start and end</td></tr><tr>
<td>PASTEDELTA X Y</td><td>set position delta for PASTET EVERY</td></tr><tr>
<td>PASTEMODE <0..15>|mode</td><td>set paste mode</td></tr><tr>
<td></td><td> &nbsp;0 0000  ZERO<br />
&nbsp;1  0001  AND<br />
&nbsp;2  0010  0010<br />
&nbsp;3  0011  X|COPY<br />
&nbsp;4  0100  DIFF<br />
&nbsp;5  0101  Y<br />
&nbsp;6  0110  XOR<br />
&nbsp;7  0111  OR<br />
&nbsp;8  1000  NOR<br />
&nbsp;9  1001  XNOR<br />
10  1010  NOTY<br />
11  1011  1011<br />
12  1100  NOTX<br />
13  1101  1101<br />
14  1110  NAND<br />
15  1111  ONE</td></tr><tr>
<td>KILLGLIDERS</td><td>suppress escaping gliders</td></tr>
</table>
 
===Randomize===
<table border=1 cellspacing=0 width=500><tr>
<td bgcolor=#c0c0c0>Command</td><td bgcolor=#c0c0c0>Description</td></tr><tr>
<td>RANDOMIZE</td><td>create random pattern</td></tr><tr>
<td>RANDSEED <string></td><td>set random seed</td></tr><tr>
<td>RANDWIDTH <1..1024></td><td>set random pattern width</td></tr><tr>
<td>RANDHEIGHT <1..1024></td><td>set random pattern height</td></tr><tr>
<td>RANDFILL <1..100></td><td>set random pattern fill percentage</td></tr><tr>
<td>RANDCHANCE FIXED</td><td>keep rule fixed</td></tr><tr>
<td>RANDCHANCE <item> <0..100></td><td>set percentage chance for <item></td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;ALL</td><td>all conditions</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;B</td><td>all birth conditions</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;S</td><td>all survival conditions</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;B<0..n></td><td>specified birth condition</td></tr><tr>
<td>&nbsp;&nbsp;&nbsp;S<0..n></td><td>specified survival condition</td></tr>
</table>
 
==Colours==
 
The following names can be used in place of R G B.  For example: [[ COLOUR ALIVE Green ]]
{| class="wikitable"
| AliceBlue
| 240
| 248
| 255
| style="background-color:#f0f8ff;" | &nbsp;&nbsp;&nbsp;
|-
| AntiqueWhite
| 250
| 235
| 215
| style="background-color:#faebd7;" |
|-
| Aqua
| 0
| 255
| 255
| style="background-color:#00ffff;" |
|-
| Aquamarine
| 127
| 255
| 212
| style="background-color:#7fffd4;" |
|-
| Azure
| 240
| 255
| 255
| style="background-color:#f0ffff;" |
|-
| Beige
| 245
| 245
| 220
| style="background-color:#f5f5dc;" |
|-
| Bisque
| 255
| 228
| 196
| style="background-color:#ffe4c4;" |
|-
| Black
| 0
| 0
| 0
| style="background-color:#000000;" |
|-
| BlanchedAlmond
| 255
| 235
| 205
| style="background-color:#ffebcd;" |
|-
| Blue
| 0
| 0
| 255
| style="background-color:#0000ff;" |
|-
| BlueViolet
| 138
| 43
| 226
| style="background-color:#8a2be2;" |
|-
| Brown
| 165
| 42
| 42
| style="background-color:#a52a2a;" |
|-
| BurlyWood
| 222
| 184
| 135
| style="background-color:#deb887;" |
|-
| CadetBlue
| 95
| 158
| 160
| style="background-color:#5f9ea0;" |
|-
| Chartreuse
| 127
| 255
| 0
| style="background-color:#7fff00;" |
|-
| Chocolate
| 210
| 105
| 30
| style="background-color:#d2691e;" |
|-
| Coral
| 255
| 127
| 80
| style="background-color:#ff7f50;" |
|-
| CornflowerBlue
| 100
| 149
| 237
| style="background-color:#6495ed;" |
|-
| Cornsilk
| 255
| 248
| 220
| style="background-color:#fff8dc;" |
|-
| Crimson
| 220
| 20
| 60
| style="background-color:#dc143c;" |
|-
| Cyan
| 0
| 255
| 255
| style="background-color:#00ffff;" |
|-
| DarkBlue
| 0
| 0
| 139
| style="background-color:#00008b;" |
|-
| DarkCyan
| 0
| 139
| 139
| style="background-color:#008b8b;" |
|-
| DarkGoldenRod
| 184
| 134
| 11
| style="background-color:#b8860b;" |
|-
| DarkGray
| 169
| 169
| 169
| style="background-color:#a9a9a9;" |
|-
| DarkGreen
| 0
| 100
| 0
| style="background-color:#006400;" |
|-
| DarkKhaki
| 189
| 183
| 107
| style="background-color:#bdb76b;" |
|-
| DarkMagenta
| 139
| 0
| 139
| style="background-color:#8b008b;" |
|-
| DarkOliveGreen
| 85
| 107
| 47
| style="background-color:#556b2f;" |
|-
| DarkOrange
| 255
| 140
| 0
| style="background-color:#ff8c00;" |
|-
| DarkOrchid
| 153
| 50
| 204
| style="background-color:#9932cc;" |
|-
| DarkRed
| 139
| 0
| 0
| style="background-color:#8b0000;" |
|-
| DarkSalmon
| 233
| 150
| 122
| style="background-color:#e9967a;" |
|-
| DarkSeaGreen
| 143
| 188
| 143
| style="background-color:#8fbc8f;" |
|-
| DarkSlateBlue
| 72
| 61
| 139
| style="background-color:#483d8b;" |
|-
| DarkSlateGray
| 47
| 79
| 79
| style="background-color:#2f4f4f;" |
|-
| DarkTurquoise
| 0
| 206
| 209
| style="background-color:#00ced1;" |
|-
| DarkViolet
| 148
| 0
| 211
| style="background-color:#9400d3;" |
|-
| DeepPink
| 255
| 20
| 147
| style="background-color:#ff1493;" |
|-
| DeepSkyBlue
| 0
| 191
| 255
| style="background-color:#00bfff;" |
|-
| DimGray
| 105
| 105
| 105
| style="background-color:#696969;" |
|-
| DodgerBlue
| 30
| 144
| 255
| style="background-color:#1e90ff;" |
|-
| FireBrick
| 178
| 34
| 34
| style="background-color:#b22222;" |
|-
| FloralWhite
| 255
| 250
| 240
| style="background-color:#fffaf0;" |
|-
| ForestGreen
| 34
| 139
| 34
| style="background-color:#228b22;" |
|-
| Fuchsia
| 255
| 0
| 255
| style="background-color:#ff00ff;" |
|-
| Gainsboro
| 220
| 220
| 220
| style="background-color:#dcdcdc;" |
|-
| GhostWhite
| 248
| 248
| 255
| style="background-color:#f8f8ff;" |
|-
| Gold
| 255
| 215
| 0
| style="background-color:#ffd700;" |
|-
| GoldenRod
| 218
| 165
| 32
| style="background-color:#daa520;" |
|-
| Gray
| 128
| 128
| 128
| style="background-color:#808080;" |
|-
| Green
| 0
| 128
| 0
| style="background-color:#008000;" |
|-
| GreenYellow
| 173
| 255
| 47
| style="background-color:#adff2f;" |
|-
| HoneyDew
| 240
| 255
| 240
| style="background-color:#f0fff0;" |
|-
| HotPink
| 255
| 105
| 180
| style="background-color:#ff69b4;" |
|-
| IndianRed
| 205
| 92
| 92
| style="background-color:#cd5c5c;" |
|-
| Indigo
| 75
| 0
| 130
| style="background-color:#4b0082;" |
|-
| Ivory
| 255
| 255
| 240
| style="background-color:#fffff0;" |
|-
| Khaki
| 240
| 230
| 140
| style="background-color:#f0e68c;" |
|-
| Lavender
| 230
| 230
| 250
| style="background-color:#e6e6fa;" |
|-
| LavenderBlush
| 255
| 240
| 245
| style="background-color:#fff0f5;" |
|-
| LawnGreen
| 124
| 252
| 0
| style="background-color:#7cfc00;" |
|-
| LemonChiffon
| 255
| 250
| 205
| style="background-color:#fffacd;" |
|-
| LightBlue
| 173
| 216
| 230
| style="background-color:#add8e6;" |
|-
| LightCoral
| 240
| 128
| 128
| style="background-color:#f08080;" |
|-
| LightCyan
| 224
| 255
| 255
| style="background-color:#e0ffff;" |
|-
| LightGoldenRodYellow
| 250
| 250
| 210
| style="background-color:#fafad2;" |
|-
| LightGray
| 211
| 211
| 211
| style="background-color:#d3d3d3;" |
|-
| LightGreen
| 144
| 238
| 144
| style="background-color:#90ee90;" |
|-
| LightPink
| 255
| 182
| 193
| style="background-color:#ffb6c1;" |
|-
| LightSalmon
| 255
| 160
| 122
| style="background-color:#ffa07a;" |
|-
| LightSeaGreen
| 32
| 178
| 170
| style="background-color:#20b2aa;" |
|-
| LightSkyBlue
| 135
| 206
| 250
| style="background-color:#87cefa;" |
|-
| LightSlateGray
| 119
| 136
| 153
| style="background-color:#778899;" |
|-
| LightSteelBlue
| 176
| 196
| 222
| style="background-color:#b0c4de;" |
|-
| LightYellow
| 255
| 255
| 224
| style="background-color:#ffffe0;" |
|-
| Lime
| 0
| 255
| 0
| style="background-color:#00ff00;" |
|-
| LimeGreen
| 50
| 205
| 50
| style="background-color:#32cd32;" |
|-
| Linen
| 250
| 240
| 230
| style="background-color:#faf0e6;" |
|-
| Magenta
| 255
| 0
| 255
| style="background-color:#ff00ff;" |
|-
| Maroon
| 128
| 0
| 0
| style="background-color:#800000;" |
|-
| MediumAquaMarine
| 102
| 205
| 170
| style="background-color:#66cdaa;" |
|-
| MediumBlue
| 0
| 0
| 205
| style="background-color:#0000cd;" |
|-
| MediumOrchid
| 186
| 85
| 211
| style="background-color:#ba55d3;" |
|-
| MediumPurple
| 147
| 112
| 219
| style="background-color:#9370db;" |
|-
| MediumSeaGreen
| 60
| 179
| 113
| style="background-color:#3cb371;" |
|-
| MediumSlateBlue
| 123
| 104
| 238
| style="background-color:#7b68ee;" |
|-
| MediumSpringGreen
| 0
| 250
| 154
| style="background-color:#00fa9a;" |
|-
| MediumTurquoise
| 72
| 209
| 204
| style="background-color:#48d1cc;" |
|-
| MediumVioletRed
| 199
| 21
| 133
| style="background-color:#c71585;" |
|-
| MidnightBlue
| 25
| 25
| 112
| style="background-color:#191970;" |
|-
| MintCream
| 245
| 255
| 250
| style="background-color:#f5fffa;" |
|-
| MistyRose
| 255
| 228
| 225
| style="background-color:#ffe4e1;" |
|-
| Moccasin
| 255
| 228
| 181
| style="background-color:#ffe4b5;" |
|-
| NavajoWhite
| 255
| 222
| 173
| style="background-color:#ffdead;" |
|-
| Navy
| 0
| 0
| 128
| style="background-color:#000080;" |
|-
| OldLace
| 253
| 245
| 230
| style="background-color:#fdf5e6;" |
|-
| Olive
| 128
| 128
| 0
| style="background-color:#808000;" |
|-
| OliveDrab
| 107
| 142
| 35
| style="background-color:#6b8e23;" |
|-
| Orange
| 255
| 165
| 0
| style="background-color:#ffa500;" |
|-
| OrangeRed
| 255
| 69
| 0
| style="background-color:#ff4500;" |
|-
| Orchid
| 218
| 112
| 214
| style="background-color:#da70d6;" |
|-
| PaleGoldenRod
| 238
| 232
| 170
| style="background-color:#eee8aa;" |
|-
| PaleGreen
| 152
| 251
| 152
| style="background-color:#98fb98;" |
|-
| PaleTurquoise
| 175
| 238
| 238
| style="background-color:#afeeee;" |
|-
| PaleVioletRed
| 219
| 112
| 147
| style="background-color:#db7093;" |
|-
| PapayaWhip
| 255
| 239
| 213
| style="background-color:#ffefd5;" |
|-
| PeachPuff
| 255
| 218
| 185
| style="background-color:#ffdab9;" |
|-
| Peru
| 205
| 133
| 63
| style="background-color:#cd853f;" |
|-
| Pink
| 255
| 192
| 203
| style="background-color:#ffc0cb;" |
|-
| Plum
| 221
| 160
| 221
| style="background-color:#dda0dd;" |
|-
| PowderBlue
| 176
| 224
| 230
| style="background-color:#b0e0e6;" |
|-
| Purple
| 128
| 0
| 128
| style="background-color:#800080;" |
|-
| RebeccaPurple
| 102
| 51
| 153
| style="background-color:#663399;" |
|-
| Red
| 255
| 0
| 0
| style="background-color:#ff0000;" |
|-
| RosyBrown
| 188
| 143
| 143
| style="background-color:#bc8f8f;" |
|-
| RoyalBlue
| 65
| 105
| 225
| style="background-color:#4169e1;" |
|-
| SaddleBrown
| 139
| 69
| 19
| style="background-color:#8b4513;" |
|-
| Salmon
| 250
| 128
| 114
| style="background-color:#fa8072;" |
|-
| SandyBrown
| 244
| 164
| 96
| style="background-color:#f4a460;" |
|-
| SeaGreen
| 46
| 139
| 87
| style="background-color:#2e8b57;" |
|-
| SeaShell
| 255
| 245
| 238
| style="background-color:#fff5ee;" |
|-
| Sienna
| 160
| 82
| 45
| style="background-color:#a0522d;" |
|-
| Silver
| 192
| 192
| 192
| style="background-color:#c0c0c0;" |
|-
| SkyBlue
| 135
| 206
| 235
| style="background-color:#87ceeb;" |
|-
| SlateBlue
| 106
| 90
| 205
| style="background-color:#6a5acd;" |
|-
| SlateGray
| 112
| 128
| 144
| style="background-color:#708090;" |
|-
| Snow
| 255
| 250
| 250
| style="background-color:#fffafa;" |
|-
| SpringGreen
| 0
| 255
| 127
| style="background-color:#00ff7f;" |
|-
| SteelBlue
| 70
| 130
| 180
| style="background-color:#4682b4;" |
|-
| Tan
| 210
| 180
| 140
| style="background-color:#d2b48c;" |
|-
| Teal
| 0
| 128
| 128
| style="background-color:#008080;" |
|-
| Thistle
| 216
| 191
| 216
| style="background-color:#d8bfd8;" |
|-
| Tomato
| 255
| 99
| 71
| style="background-color:#ff6347;" |
|-
| Turquoise
| 64
| 224
| 208
| style="background-color:#40e0d0;" |
|-
| Violet
| 238
| 130
| 238
| style="background-color:#ee82ee;" |
|-
| Wheat
| 245
| 222
| 179
| style="background-color:#f5deb3;" |
|-
| White
| 255
| 255
| 255
| style="background-color:#ffffff;" |
|-
| WhiteSmoke
| 245
| 245
| 245
| style="background-color:#f5f5f5;" |
|-
| Yellow
| 255
| 255
| 0
| style="background-color:#ffff00;" |
|-
| YellowGreen
| 154
| 205
| 50
| style="background-color:#9acd32;" |
|-
|}
 
==Info==
LifeViewer engine information and details about the currently loaded pattern can be found by pressing 'I', or clicking the Info button under Help.
 
==References==
<references>
<ref name="post68678">{{LinkForumThread
|format = ref
|title  = Re: Pattern viewer for forum threads
|p      = 68678
|author = Chris Rowett
|date  = January 26, 2019
}}</ref>
<ref name="post68691">{{LinkForumThread
|format = ref
|title  = Re: Pattern viewer for forum threads
|p      = 68691
|author = Chris Rowett
|date  = January 26, 2019
}}</ref>
<ref name="post86409">{{LinkForumThread
|format = ref
|title  = Re: Pattern viewer for forum threads
|p      = 86409
|author = Chris Rowett
|date  = December 20, 2019
}}</ref>
<ref name="post84188">{{LinkForumThread
|format = ref
|title  = Re: Pattern viewer for forum threads
|p      = 84188
|author = Chris Rowett
|date  = October 15, 2019
}}</ref>
</references>
 
==External links==
* [https://lazyslug.com/lifeview/plugin/version.txt Release notes]
* [https://lazyslug.com/lifeview/ LifeViewer homepage]
* [https://lazyslug.com/lifeview/plugin/ LifeViewer files]
{{LinkLexicon|lex_l.htm#lifeviewer}}  


===Forum threads===
[[Category:Simulation software]]
{{LinkForumThread|f=7|t=1026|title=LifeViewer - Life simulator in HTML5}}
{{LinkForumThread|f=3|t=1622|title=Pattern viewer for forum threads}}

Latest revision as of 18:35, 24 February 2025

LifeViewer
LifeViewer image
Homepage Click here
Purpose Life simulation
Created by Chris Rowett
Platform HTML5 / Javascript
Not to be confused with the calendar app also called LifeViewer.

LifeViewer is a free, open-source, browser-based scriptable pattern viewer and editor used to simulate Life and a wide range of other 1D and 2D cellular automata.


x=59, y = 7, rule = B3/S23 o5b5ob5ob5obo3bob5ob5obobobob5ob4o$o7bo3bo5bo5bo3bo3bo3bo5bobobobo5bo 3bo$o7bo3bo5bo5bo3bo3bo3bo5bobobobo5bo3bo$o7bo3b3o3b3o3bo3bo3bo3b3o3bo bobob3o3b4o$o7bo3bo5bo5bo3bo3bo3bo5bobobobo5bo3bo$o7bo3bo5bo6bobo4bo3b o5bobobobo5bo3bo$5ob5obo5b5o3bo3b5ob5o2bobo2b5obo3bo! #C [[ IGNOREEXCLUSIVE ]] #C [[ COLOUR DEAD 0 0 0 COLOUR ALIVE 0 0 0 ]] #C [[ LOOP 1101 STARS NOSTEPBACK ]] #C [[ AUTOSTART X -90 Y 60 LAYERS 6 ZOOM 4 DEPTH 3 ]] #C [[ PAUSE 3 X 90 Y -60 ANGLE 20 THEME 0 ]] #C [[ PAUSE 1.5 X 90 Y 60 ANGLE 340 ZOOM 6 ]] #C [[ PAUSE 1.5 X 0 Y 0 ANGLE 0 THEME 3 ZOOM 4 ]] #C [[ PAUSE 1 X 0 DEPTH 0.2 ZOOM 6 THEME 4 ]] #C [[ T 1 THEME 7 ]] #C [[ T 400 ZOOM 5 X 5 Y -10 THEME 2 ]] #C [[ T 450 DEPTH 5 ]] #C [[ T 560 X -155 Y 127 DEPTH 0.5 ]] #C [[ T 950 X -242 Y 214 ANGLE 20 ]] #C [[ T 1050 DEPTH 0 ANGLE 0 AUTOFIT "#T" ]] #C [[ T 1100 X 0 Y 0 ZOOM 0.25 THEME CUSTOM ]]

LifeViewer features

  • Smooth non-integer zoom with anti-aliasing and rotation.
  • Colour themes with cell history and longevity.
  • Square, hexagonal and triangular grids.
  • Pseudo 3D layers and stars.
  • Multiple ways to automatically track patterns with the camera as they evolve.
  • Script language that allows many features to be customized including Waypoint animations.
  • Support for multiple embedded LifeViewers and/or a single popup LifeViewer.
  • Ability to step back to earlier generations for all patterns and reverse playback for reversible Margolus and PCA patterns.
  • Random pattern and rule generation.
  • Real time auto-scaling population graph.
  • Pattern annotation with Labels, Arrows, Lines and Polygons.
  • Programatically pasting cells onto the grid at defined intervals (for example: glider injection).
  • Ability to build patterns from RLE recipes with transformations.
  • Identification of still life patterns, oscillator and spaceship periods.
  • Automatic scaling for high DPI displays including smartphones and tablets.
  • Editor with unlimitied undo/redo and multiple clipboards.

Rule support

LifeViewer supports the following rule families:

Built-in rules

Click on "Expand" to the right to view example patterns for each rule family.

2-state Margolus rules.
Example: Critters (M15,14,13,3,11,5,6,1,7,9,10,2,12,4,8,0)
x=63, y = 34, rule = critters 9$52bo9$48b2o$39bo$47bo2bo3$47bo$48bo$5bo31bo20bo$6bo31bo18bo$6bo31bo 17bo$5bo31bo17bo! [[ RLE input o$bo$bo$o! PASTET EVERY 64 PASTE input 5 24 ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
2-state Outer-totalistic Life-like cellular automata (from ranges 1 to 500, including Larger than Life).
Example: Soldier Bugs (R7,C2,M1,S65..114,B65..95,NM)
x=113, y = 113, rule = R7,C2,M1,S65..114,B65..95,NM 49b4o$47b7o$46b10o$45b12o$45b13o19b2o$44b3o5b6o17b6o$22b3o19b3o5b6o16b 9o$20b7o17b3o5b6o15b11o$19b9o16b3o5b6o14b3ob9o$18b12o15b3o2b8o14b3o4b 7o$18b13o14b12o14b3o6b6o$17b5o3b6o15b10o15b3o6b6o$17b2o7b5o16b7o17b3o 6b6o$17b2o7b5o18b3o20b3obo2b7o$17b3o5b6o41b13o$17b3o2b9o42b11o$18b3ob 8o44b8o$19b10o46b6o16b5o$20b7o50b2o17b8o$21b5o69b4o2b4o$94b3o4b5o$93b 3o5b5o$93b5o4b5o$93b5o4b5o$93b5o4b5o$93b6o2b5o$94b12o$9b5o81b10o$8b7o 80b9o$7b9o80b8o$6b10o81b6o$6b11o$5b13o$5b5o3b5o$4b5o5b5o$4b5o5b5o$5b4o 4b5o$5b3o6b4o$6b4o3b4o$7b9o$8b7o$10b3o3$104b4o$102b8o$101b10o$100b4o4b 4o$100b3o5b4o$99b4o5b5o$99b5o4b5o$99b5o4b5o$100b13o$100b12o$101b10o$4b 6o91b10o$3b8o91b8o$2b10o91b6o$2b10o$b12o$13o$5o4b5o$5o4b5o$5o5b4o$b4o 5b3o$b4o4b4o$2b10o$3b8o$5b4o3$100b3o$98b7o$97b9o$96b4o3b4o$95b4o6b3o$ 95b5o4b4o$94b5o5b5o$94b5o5b5o$95b5o3b5o$95b13o$96b11o$10b6o81b10o$9b8o 80b9o$9b9o80b7o$8b10o81b5o$7b12o$7b5o2b6o$6b5o4b5o$6b5o4b5o$6b5o4b5o$ 7b5o5b3o$7b5o4b3o$8b4o2b4o69b5o$9b8o17b2o50b7o$11b5o16b6o46b10o$31b8o 44b8ob3o$29b11o42b9o2b3o$28b13o41b6o5b3o$27b7o2bob3o20b3o18b5o7b2o$27b 6o6b3o17b7o16b5o7b2o$27b6o6b3o15b10o15b6o3b5o$27b6o6b3o14b12o14b13o$27b 7o4b3o14b8o2b3o15b12o$28b9ob3o14b6o5b3o16b9o$29b11o15b6o5b3o17b7o$30b 9o16b6o5b3o19b3o$32b6o17b6o5b3o$34b2o19b13o$56b12o$57b10o$59b7o$60b4o! [[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
2-state Isotropic non-totalistic cellular automata (for range-1 Moore and range-1 hexagonal).
Example: Just Friends (B2-a/S12)
x=65, y = 74, rule = B2-a/S12 63bo$63bo4$61bo$64bo$59bobo2bo46$18bo$19b2o12$4bo$4bo4$2bo$5bo$obo2bo! [[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
2-state Non-isotropic cellular automata (for range-1 Moore, hexagonal and von Neumann).
Example: MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA
x=1, y = 1, rule = MAP//8IAN1+KYD/9QAA/f8AAOu/AQD38wAI//8IgP39Akrn/wAB/78DAP/+AAD/ugAA//sQCN3+AIDfvwhD//sAQA:T80,40 o! [[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Generations rules (as an extension of the outer-totalistic, non-totalistic and non-isotropic rulespaces).
Example: Fireworks (2,13,21)
x=200, y = 100, rule = 2/13/21:T200,100 #C Fireworks #C An admirably beautiful rule by John Elliott 88.A6$A58$61.A24$107.A11$37.A! [[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Alternating rules.
Example: alternlife (B13/S012345678|B/S15)
x=21, y = 9, rule = alternlife 3.A13.A2$.2A15.2A2$A19.A4$9.A! [[ ZOOM 12 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Partitioned cellular automata (PCA) rules.
Example: PCA_4 (2PCA4,0,2,4,12,8,5,9,7,1,6,10,11,3,13,14,15)
x=49, y = 29, rule = PCA_4 AB45.AB$HD45.HD24$21.A20.D$20.E$AB19.B20.F4.AB$HD39.D5.HD! [[ STEP 20 ZOOM 6 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Weighted rules.
Example: R2,C2,S2-3,B4,7-8,NW0010001210120210121000100
x=9, y = 9, rule = R2,C2,S2,3,B4,7,8,NW0010001210120210121000100:T80,40 3A6.$3A6.$2A.A3.A.$2.A5.A$9.$9.$9.$2.A6.$3.A5.! [[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Elementary cellular automata.
Example: Wolfram 30 (W30)
x=1, y = 1, rule = W30:P100,40 o! #CXRLE Pos=0,-20 [[ ZOOM 4 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
[R]History rules.
Example: LifeHistory
x=457, y = 155, rule = LifeHistory 59.3B64.B125.B$58.BFBF2B60.4BF122.3B$58.6BF.B.F.F.B.F.F.B.F.F.B.F.F.B .F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F7B5.BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F. B.F.F.B.F.F.B.FBF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F .F.B.F.F.B.F.F3BFBF.2B2F2.3B$57.F10B.5B.5B.A4B.5B.5B.5B.26BF2BF133B$ 57.24B2A2BA129BA33B2A19B$56.23BA3B2A63B3A63BABA32B4A17B$55.F23BABA67B 2A66BA30BABA2BA16B$56.23BA3B2A63B3A63BABA31BAB4A14BF3B63.F3.BF$57.24B 2A2BA129BA33B4A20B3.B59.5B$56.12B.5B.5B.A4B.5B.5B.5B.28BF116BA23B.B2C 57.6B$57.7BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B. F.F7BF3.F2B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F .B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.FBF.2BFBF3BFBF8B3A8B2C 57.7B$58.6B61.7B125.10BA7B.B57.8B$56.F.5B.F59.9B125.7B3A7B58.10B$57. 7B61.7B125.15B61.10B$56.9B59.F.5B.F123.4B.5BA6B60.11B$57.7B61.7B123. 4B2.3B3A5B61.11B$56.F7BF59.F7BF121.4B3.B3A7B61.11B$57.7B61.7B121.4B3. 3B2A2B.3B55.F.B.F.2F11B$56.F.5B.F59.9B119.4B3.8B2.F43.B.F.F.B4.BF.6BA BA9B2A32B2A32B2A32B2A6B$57.7B61.7B119.4B3.8B44.23BA2BA7B4A30B4A30B4A 30B4A6BF$56.9B59.F.5B.F117.4B3.9B42.F24BA3BA6B2AB2A29B2AB2A29B2AB2A 29B2AB2A5B$57.7B61.7B117.4B3.4B.6B42.28BA8B2A32B2A32B2A32B2A6B$56.F7B F59.F7BF115.4B3.4B.7B42.24BA3BA117B$57.7B61.7B115.4B3.4B2.6B44.23BA2B A5B$56.F.5B.F59.9B113.4B3.4B3.6B47.7B.2B.F2.6B3A6B$57.7B61.2B3A2B113. 4B3.4B4.6B46.9B.F2.BF.B.F.F9B$56.9B59.F.5B.F111.4B3.4B4.8B46.7B13.F8B $57.7B61.2ABAB2A111.4B3.4B6.8B45.6B.F13.8B$56.F7BF59.FBA3BABF109.4B3. 4B6.9B45.F2BA3B14.8B$57.7B61.2BABA2B109.4B3.4B7.9B46.B3AB14.9B$56.F. 5B.F59.3BABA3B107.4B3.4B8.10B44.B2ABAB14.8B$57.7B61.BA3BAB107.4B3.4B 9.5B2A3B42.F2.5B14.8B$56.9B59.F.5B.F105.4B3.4B10.5B2A4B28.B6.F6.7B.F 11.10B$57.7B61.7B105.4B3.4B11.11B27.5BF.2B3.B.9B12.11B$56.F7BF59.F7BF 103.4B3.4B12.12BA.2A21.24B14.8B$57.7B61.7B103.4B3.4B15.8B2.2A.A19.26B 14.7B$56.F.5B.F59.9B101.4B2.5B16.7B26.F25B14.7B$18.3B4.B31.7B61.7B 101.4B3.4B17.5B29.24BF13.8B$17.BFBF6BF28.9B59.F.5B.F99.2A2B3.4B18.5B 30.23B14.6B$17.6B.5B28.7B61.7B99.2B2A3.4B18.6B31.8B2.B.F10B14.5B$16.F 13BF25.F7BF59.F7BF97.2BAB3.4B19.7B2.4B23.10B6.B.6BF12.F.4B$16.4BA12B 24.7B61.7B97.4B3.4B19.F7BF6BF21.9B9.5B16.F.B$15.4B2A5BA5BFB22.F.5B.F 59.9B95.4B3.4B21.14B21.11B5.3B2ABA6B$14.F3BA9BA5B23.7B61.7B95.4B3.4B 21.F14B20.7BA2BF2B4.4B3A6B$14.5B2A3BA3BA3BFB22.9B59.F7BF93.4B3.4B23. 15B19.6B3A4B4.2BF2BA7B$13.7BA12B24.7B61.7B93.4B3.4B23.16B19.6BAB2A3B 5.11B$14.11B2A6B23.F7BF59.F7BF91.4B3.4B25.15B24.5B9.9B$14.B.7BF7B.B 24.7B61.7B91.4B3.4B25.F14B23.F6B.B6.10B$14.19B23.F.5B.F59.9B89.4B3.4B 27.9B.3B25.10BF.B2.8B$14.20B23.BA3BAB61.7B89.4B3.4B27.F7BF31.23B$13.B F18B23.3BABA3B59.F7BF87.4B3.4B27.10B30.F24B$13.19BF24.2BABA2B61.7B87. 4B3.4B29.9B30.25BF$13.BF17B24.FBA3BABF59.F7BF85.4B3.4B31.7B31.25B$14. 17B26.2ABAB2A61.7B85.4B3.4B31.F7BF30.BA22B$16.F13BF25.F.5B.F59.9B83. 4B3.4B33.7B31.BA7B.B3.2B.F5B$18.5B.6B27.2B3A2B61.7B83.4B3.4B33.F7BF 31.BA5B6.F6.B$19.F6BFBFB26.9B59.F7BF81.4B3.4B35.7B32.5B2.F$21.B4.3B 28.7B61.7B81.4B3.4B35.9B32.3B$56.F7BF59.F7BF79.4B3.BA2B37.7B34.F$57. 7B61.7B79.4B3.2A2B37.F7BF$56.F.5B.F59.9B77.4B3.2B2A39.7B$57.7B61.7B 77.4B3.4B39.F7BF$56.9B59.F7BF75.4B3.4B41.7B$57.7B61.7B75.4B3.4B41.9B$ 56.F7BF59.F7BF73.4B3.4B43.7B$57.7B61.7B46.F2B2A2BF19.4B3.4B43.F3BA3BF $56.F.5B.F59.9B45.3B2A2B19.4B3.4B45.2B3A2B$57.7B61.7B46.8B.F15.4B3.4B 45.FB5ABF$56.9B59.F7BF43.12B14.4B3.4B47.BA3BAB$57.7B61.8B42.F13B12.4B 3.4B47.2A5B2A$56.F7BF.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F .F.B.F.F.B.F9B38.3B.13BF10.4B3.4B49.BA3BA2B$55.11B.5B.5B.5B.5B.5B.5B. 4BA.5B.5B.13B37.5B.11B11.4B3.4B49.FBA3BABF$55.48BA2B2A27B37.5B.8B2.F 9.4B3.4B50.8B$54.BF48B2A3BA24B40.13B10.4B3.4B52.F6B$54.53BABA23BF41. 8B.4B8.4B3.4B53.6BF64.F$54.BF48B2A3BA23B43.7B2.4B6.4B3.4B54.7BF.B.F.F .B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F2.B.3B$55.48BA2B 2A24B45.5B.F2.4B4.4B3.4B55.F10B.5B.5B.5B.5B.5B.5B.5B.5B.5B2.7BF$57.F 7B2.5B.5B.5B.5B.5B.5B.4BA.5B.5B.10BF45.4B6.4B2.4B3.4B56.33B2A42B$59. 3B.B2.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F7B 45.4B7.8B3.4B56.33BABA41BFB$60.F64.F6B44.4B9.6B3.4B56.F32B2A45B$125. 6BF43.4B11.4B3.4B57.34BABA41BFB$125.8B41.4B11.6B.4B57.36B2A42B$124.F 7BF40.4B11.11B59.13B.5B.5B.5B.5B.5B.5B.5B.5B.5B.11B$124.8B40.4B11.4B 2.5B60.9BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F. F7BF$124.9B38.4B11.4B4.5B60.8B61.7B$125.7B38.4B11.2A2B6.4B60.F7BF59. 9B$124.F7BF36.4B11.2B2A8.4B12.B47.7B61.7B$125.7B36.4B11.2BAB10.4B10. 3B45.9B59.F.5B.F$124.F7BF34.4B11.4B12.4B9.3B46.7B61.7B$125.7B34.4B11. 4B14.4B7.4B45.F7BF59.F7BF$124.9B32.4B11.4B16.4B5.4B.F45.7B61.7B$125. 7B32.4B11.4B18.4B3.4B.3B43.F7BF59.9B$124.F7BF30.4B11.4B20.9B.6B42.7B 61.7B$125.7B30.4B11.4B22.15BF40.9B59.F.5B.F$25.F98.F2BABA2BF28.4B11. 4B24.15B41.7B61.7B$125.2B3A2B28.4B11.4B26.16B38.F7BF59.F7BF$124.3B3A 3B26.4B11.4B29.10B2A2B39.7B61.7B$20.F104.7B26.4B11.4B31.9B2A2B38.F7BF 59.9B$124.F7BF24.4B11.4B31.F2.11B39.7B61.7B$125.7B24.4B11.4B34.11B39. 9B59.F.5B.F$124.F.5B.F22.4B11.4B34.9B.F41.7B61.7B$125.7B22.4B11.4B34. 3AB.4B43.F7BF59.F7BF$124.9B20.4B11.4B34.3BA2.4BF43.7B61.7B$31.F92.10B 18.4B11.4B34.3BA2.F.2B44.F7BF59.9B$124.F7BF18.4B11.4B34.4B5.F46.7B61. 7B$125.7B18.4B11.4B34.4B52.9B59.F.5B.F$20.F9.2A92.F.5B.F16.4B11.4B34. 4B54.7B61.7B$30.2A93.7B16.4B11.4B34.4B54.F7BF59.F3BA3BF$124.9B14.4B 11.4B34.4B56.7B61.2B3A2B$75.F49.7B14.4B11.4B34.4B56.F7BF59.2BA3BA2B$ 7.F23.F35.F56.F7BF12.4B11.B2DB34.4B58.7B61.B2AB2AB$2.F17.3A101.8B12. 4B11.2B2D34.4B58.9B59.F.5B.F$22.A6.F94.F7BF10.4B11.4B34.4B60.7B61.7B$ F20.A2.F42.2A9.F46.7B10.4B11.4B34.4B60.F7BF59.F7BF$67.2A55.9B8.4B11. 4B21.B12.4B62.7B61.7B$119.2B4.7B8.4B11.4B21.3B10.4B62.F.5B.F59.9B$2A 116.5B2F7BF3B3.4B11.4B22.3B9.4B64.B2AB2AB61.7B$2A9.F55.F11.F38.24B11. 4B23.4B7.4B64.2BA3BA2B59.F.5B.F$117.24B11.4B23.F.4B5.4B66.2B3A2B61.7B $69.F13.F33.23B11.4B23.3B.4B3.4B66.F3BA3BF59.F7BF$F117.21B11.4B22.6B. 9B68.7B61.7B$73.F11.F31.23B9.4B22.F15B68.F.5B.F59.9B$118.21B9.4B23. 15B70.7B61.7B$80.A38.19B9.4B22.16B70.9B59.F.5B.F$81.A2.2A37.B.10B11. 4B23.2B2A10B73.7B61.7B$74.F4.3A2.2A40.8B11.4B24.2B2A9B73.F7BF59.F7BF$ 11.F115.6B11.4B25.11B2.F73.7B61.7B$11.F115.5B11.4B27.11B74.F.5B.F59. 9B$85.F41.6B9.4B29.F.9B74.7B61.7B$126.8B7.4B33.4B.4B72.9B59.F.5B.F$ 125.4B.5B6.4B21.D.D8.F4B2.4B72.7B61.7B$124.4B4.4B2.F.5B19.D5.D8.2B.F 2.4B70.F7BF59.F7BF$123.4B6.4B2.BA5B34.F5.4B70.7B61.7B$79.F42.4B8.4B.A B2A4B16.D3.C3.D15.4B68.F.5B.F59.9B$121.4B10.4BA3BA4B18.2C19.5B35.3B 30.7B61.7B$120.4B9.F2.4BA3B.5B13.D2.C.C2.D17.4B32.7B27.9B59.F.5B.F$ 119.4B11.7BA3B.5B39.4B30.10B26.7B61.7B$118.4B10.F2BA6BA3B.3B14.D5.D 20.4B.F.F.B.F.F.B.F.F.B.F.F.B.F3.12B23.F7BF59.F7BF$118.3B12.B3A9BF19. D.D23.28B3.14B23.7B61.7B$118.2B14.AB3A7B43.B2.4BA3BA36BF21.F.5B.F59. 9B$118.B15.F.B2A6B43.2AB.3BA4BA36BF22.7B61.7B$137.BA6B43.2A6B2A39B22. 9B59.F.5B.F$136.F2BA3BF45.2B.3BA4BA38B21.7B61.6B$137.BA3B50.4BA3BA23B 4.11BF.B.F.F.B.F.F.A.F3.F7BF.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B. F.F.B.F.F.B.F.F.B.F7B$138.A3B50.28B10.13B.5B.3BA4BF28B.5B.5B.5B.5B.5B .5B.12B$191.BF2B.F.F.B.F.F.B.F.F.B.F.F.B.F9.21B2AB2A44B2A33B$229.21B 2A48BABA33B$229.20B3A50B2A32BF$230.20B2A48BABA33B$229.F21B2AB2A44B2A 33B$230.7B.5B.5B.3BA3BF2BF26B.5B.5B.5B.5B.5B.5B.10BF$229.7BF2.F.B.F.F .B.F.F.A.FB5.7BF.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F.F.B.F. F.B.F6B$230.5B28.F4B60.2BFBFB$231.3B31.B64.3B$232.B.F! [[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
[R]Super rules.
Example: LifeSuper
x=312, y = 156, rule = LifeSuper:T312,156 69.M.M6.M.M49.2Q.Q6.Q3.3Q117.S.2S2.S.S2.2S.S10.U.2U2.U.U2.2U.U$20.2O. 2O2.2O.2O39.M6.M44.2Q5.Q.Q8.3Q4.Q85.2O34.S.S22.U.U$20.2O2.O2.O2.2O36. 2M10.2M41.2Q17.2Q3.Q85.4O28.S11.S12.U11.U$21.2O2.2O2.2O94.Q106.2O2.2O 28.S2.S3.S2.S14.U2.U3.U2.U$21.O8.O201.O4.O28.4S3.4S14.4U3.4U$19.2O10. 2O23.G36.A8.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A35.2O30.S3.S.S3.S14. U3.U.U3.U$51.3A2.G.G32.A.A6.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A .A5.A.A5.A.A5.A.A5.A.A33.O4.O30.S.S.S.S18.U.U.U.U$18.O14.O21.G.G34.A. A3.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A 29.O4.O28.S3.S.S3.S14.U3.U.U3.U$18.O2.O8.O2.O23.G34.A3.A.A7.A7.A7.A7. A7.A7.A7.A7.A7.A7.A7.A7.A7.A24.O14.O26.S3.S20.U3.U$18.O14.O170.A21.O. O4.O2.O4.O.O20.2S.S7.S.2S10.2U.U7.U.2U$19.O.O8.O.O61.2A133.O3.4O3.O 23.2S11.2S10.2U11.2U$21.O8.O70.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A 6.2A3.G16.O16.O19.S15.S8.U15.U$22.O6.O65.A5.A.A5.A.A5.A.A5.A.A5.A.A5. A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A10.2G16.2O10.2O20.S2.S11.S2.S6. U2.U11.U2.U3.A$21.3O4.3O66.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A. A5.A.A5.A.A5.A.A5.A.A5.A.A4.2G17.3O10.3O22.S11.S12.U11.U6.A$22.2O4.2O 67.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A8.G21.O4.O24.S.S3.S5.S3.S. S6.U.U3.U5.U3.U.U3.A$19.2O10.2O197.2O.O2.O.2O27.2S5.2S16.2U5.2U$19.3O 3.2O3.3O41.W11.A14.I9.K14.M103.2O2.2O2.2O27.S2.S.S2.S16.U2.U.U2.U$20. 2O3.2O3.2O28.pA12.W.W9.A.A12.I.I7.K.K12.M.M102.2O6.2O27.3S3.3S16.3U3. 3U$21.O3.2O3.O25.2pA.2pA12.W10.2A13.2I8.2K13.2M105.2O.2O.2O29.S.S.S.S 18.U.U.U.U$20.3O6.3O23.pA3.pA6.3W4.W3.W7.A.A12.I9.K.K12.M105.2O.2O.2O 29.2S3.2S18.2U3.2U$55.pA3.pA6.2W2.W4.W.W7.2A12.I.I8.2K7.2M4.3M5.M$54. pA3.pA9.3W.2W.2W11.A10.I13.K14.M2.M.M.M$20.3O6.3O20.3pA.pA.pA7.W2.W.W .3W8.A2.A5.A4.I10.K2.K4.2M2.M2.3M2.M.M.2M94.3O6.3O$19.5O4.5O16.pA2.2pA 3.2pA6.W4.W5.W6.A8.A.A3.I.I7.K7.M6.3M102.O3.O4.O3.O$18.O5.O2.O5.O14.pA .pA3.2pA9.W4.W5.W5.2A7.2A5.I2.I5.2K6.2M4.2M108.O6.O$19.O3.O4.O3.O14.pA 2.pA3.pA4.pA6.W2.W.W.3W7.A8.A14.K.K6.M4.3M104.2O10.2O$48.pA.pA3.2pA2. pA9.3W.2W.2W6.3A5.A.A4.3I5.2K8.3M$49.pA2.2pA.pA.pA8.2W2.W4.W.W6.A6.A 6.2I17.M$52.2pA12.3W4.W3.W8.A2.2A2.A6.I6.K11.M160.2W$54.2pA17.W10.2A 2.3A2.A4.2I7.K.K7.2M159.2W2.2W$55.pA17.W.W8.2A3.3A7.I.I5.K.K7.2M158.W $74.W11.A13.I7.K10.M154.4W5.W$274.W$12.G97.A36.A5.A6.A12.A11.A88.W.W 4.3W$11.G2.G22.2S53.11P8.2A.3A.3A3.A3.A3.A13.A.A3.A.A3.A.A5.3A2.A2.A 3.3A2.A2.A3.3A.3A.2A4.2A11.2A27.3W26.2W3.2W3.W$11.G2.G22.S4.2S46.15P 4.2A12.3A.3A.3A5.A4.3A.A3.A2.A3.A.A3.3A3.A2.A2.3A3.A2.A2.3A7.A3.A2.A 6.A3.A.A31.2W5.W19.2W3.W.W$13.G24.S.S2.S16.46P5.A10.A.4A.4A.A3.A.A2.A 4.2A3.A.A3.A12.A11.A14.A.3A2.3A3.A.A5.A30.2W5.W17.W7.W$42.S3.2S12.P 29.15P17.2A9.A.A2.A.A2.A.2A3.A3.A45.A3.2A3.A.A2.A6.A36.W17.W2.W2.W6.W $39.S5.S.S12.P31.11P12.3A5.A3.3A.A2.A2.2A.2A.A.A.2A8.A43.2A3.4A.A.2A. 2A2.2A25.W31.3W.2W2.3W3.W$41.S.S6.2S8.P59.3A4.A.A.3A4.A4.2A4.2A3.A.2A 5.2A3.2A3.2A3.2A3.2A3.2A3.2A3.3A.A.2A3.A.A2.A.A30.W3.3W23.W15.2W3.W2. 2W.W$37.S.S5.S5.S8.P59.A4.3A.A8.A.2A2.A3.A.A.2A2.A.2A.2A3.2A3.2A3.2A 3.2A3.2A3.2A3.2A.2A4.2A.A3.A3.A.4A25.W6.W22.2W.2W.2W3.4W2.W3.W3.W3.2W $37.2S3.S5.S.S3.2S4.P63.A3.A.2A7.A3.3A.A.A2.A4.A3.2A3.2A3.2A3.2A3.2A 3.2A3.2A3.2A5.2A.A.A.3A3.2A.A2.A28.W2.2W28.4W.W.4W3.W3.W3.2W$44.S.S6. S.S4.P63.2A2.A2.A8.2A3.A.A2.A5.2A5.2A3.2A3.2A3.2A3.2A3.2A3.2A3.2A4.A 7.4A5.2A30.W.W23.3W4.W.W5.W8.2W.W$40.S.S5.S11.62P7.2A4.3A4.2A.A.2A.A. A3.A47.A9.A71.W.W.2W3.W$45.S5.S.S20.P46.P20.A.2A.A2.A.2A4.A42.2A.A.A 14.2A26.2W34.2W3.W.W.W5.3W$14.2W3.W18.S.S6.S.S6.2S16.P46.P26.2A7.2A 28.2A13.A2.2A13.A.A26.2W4.2W28.2W2.W.2W.W5.W2.2W3.2W$3.4W7.2W2.W2.W 15.S5.S.S5.S5.S16.P46.P40.A24.A9.2A.A.A4.2A46.2W30.W.W4.3W5.2W2.W$W2. W4.W2.W2.W.W.W18.2S9.S5.S.S17.P46.P11.3A9.A5.A10.A25.A.A5.A.A.2A5.A6. A3.A.A29.W41.2W3.2W4.W.W$.W.W.W2.W.W.W3.W.W2.W4.W14.S.S6.S.S7.30P31.P 23.A5.A10.A7.A6.A13.A.A.A12.A.A.A.A34.W.W4.W38.3W3.W2.4W3.W$.W.3W2.W. W4.W.2W.2W4.3W12.2S3.S.S5.S5.30P6.26P15.3A5.A4.2A17.2A6.2A5.3A3.2A.2A 21.A.A3.A25.W2.W3.W.W48.W2.W.W$.3W2.2W2.W.2W4.W5.W2.4W14.S5.S8.3P4X3P 3X3P.3P.2P5.2P6.P52.A18.3A6.3A4.A25.A11.A24.W2.W3.W2.W40.3W5.2W3.W$W 10.3W.W2.2W4.2W2.W3.2W11.2S6.S.S4.2PX6PX3PX2P.3P.2P.6P6.P44.3A3.A2.A 2.3A4.2A7.2A6.2A6.A28.A3.A3.A30.W2.W48.W4.2W$.3W9.4W.W.3W6.2W.2W3.2W 10.S.S8.2PX6PX3PX2P2.2P.2P.6P6.P50.A3.A.A6.A.A7.A6.A17.A6.A5.2A2.A.A 32.W2.W55.2W$.3W10.W3.W2.2W3.W2.W3.W3.W.W9.2S4.S.S2.2PX2P2X2PX3PX2P.P .P.2P3.4P6.P50.A4.A8.3A30.2A6.2A9.A.A2.2A29.2W2.W2.W53.W$.3W3.W11.4W 2.4W.2W.3W.W.W16.2S2.2PX3PX2PX3PX2P.2P2.2P.6P6.P65.2A29.3A6.3A4.A3.A 8.A32.2W53.W$7W27.3W23.2PX3PX2PX3PX2P.3P.2P.6P6.48P5.3A8.A.A31.2A6.2A 13.A4.A$3.W.W17.7W2.W.3W23.3P3X4P3X3P.3P.2P5.2P54.P10.2A2.A.A33.A6.A 6.A.A10.A26.3W$6.W16.W2.W33.30P53.P11.A.A2.A14.3A4.2A29.A.A.A.A30.2W 3.3W$6.W24.W28.30P54.P11.4A13.A8.A.A22.A.A3.A33.2W7.2W$60.30P53.P13. 2A6.3A5.A4.A40.A.A25.3W3.2W$60.30P54.P29.A2.A.A3.2A.A14.3A.A.A14.A25. W.W2.3W$60.30P5.O47.P17.3A5.3A4.A2.A16.A24.2A26.2W3.W.W$19.VRTVRTVRTV RTVRTVRTVRTVRTVRTVRTVRTVR6.3P3.4P3.4P3X3PX3PX2P5.O.O46.P32.2A.2A4.A.A 5.2A6.A.A2.A5.A41.2W54.Q$19.T34.T5.2P.3P.2P.3P.2PX3PX2PX3PX2P3.O5.O 43.P21.3A11.A2.A13.2A3.A4.A104.Q$.Q17.V34.V5.2P.6P.3P.2PX3PX2P2X2PX2P 9.O.O42.P34.A.A2.A3.A.A4.A5.2A3.A4.A.3A6.A27.2W58.Q$2.2Q2.Q12.V34.R5. 3P3.3P.3P.2PX3PX2PXPXPX2P2.2O9.O39.P25.3A8.A32.2A.A5.A25.W.2W4.2W$6.Q 12.V34.R5.6P.2P.3P.2PX3PX2PX2P2X2P13.O.O38.P36.2A.A5.A.A8.2A3.A6.A.2A 5.A25.W5.W.2W51.Q.Q$.Q4.Q12.V34.R5.2P.3P.2P.3P.2PX3PX2PX3PX2P4.O5.O6. O35.P29.3A7.A6.A2.A.2A.A.A.A3.A7.3A.A29.W5.W54.Q.Q$9.3Q7.V3.27V4.R5. 3P3.4P3.4P3X3PX3PX2P10.O6.O.O34.P47.2A.2A.2A6.A41.W2.W2.W54.Q$19.V3.V 25.V4.R5.30P4.2O4.O10.O31.P33.3A36.A32.2W3.W2.W$14.Q4.V3.V25.V4.R5. 30P21.O.O30.P45.A64.2W52.Q$14.Q4.V3.V25.V4.R5.30P3.O4.O4.2O2.2O6.O27. P37.3A6.A4.A26.A86.Q$9.2Q3.Q4.V3.V25.V4.T5.30P8.O4.O2.O.O6.O.O26.P45. A2.A.A26.A27.2W57.Q$3.4Q.Q10.V3.7V14.6V4.T5.30P2.2O4.O5.O14.O23.P41. 3A6.A.A3.A10.2A.2A6.A25.W.2W4.2W$Q3.2Q13.V9.V14.V9.T52.O11.O.O22.P49. A5.A.A7.A2.2A.A31.W5.W.2W$Q4.Q5.Q7.V9.V14.V9.T39.O.O6.O.O2.O3.2O9.O 19.P45.3A7.A.A4.A3.A4.2A5.A25.W5.W$.Q8.2Q7.V9.V14.V9.T41.O6.2O2.2O3.O 3.2O5.O.O18.P56.A2.A.A4.A3.A6.A25.W2.W2.W$9.3Q7.V9.V14.V9.T43.O.O12.O .O.O9.O15.P49.3A9.A.A2.2A4.A5.A26.2W3.W2.W$.Q9.Q7.V9.V14.V9.T45.O26.O .O14.P60.A4.A.2A2.A38.2W$.3Q15.V.9V14.9V2T47.O.O6.O.O.O8.O6.O11.P53. 3A11.2A.2A4.A$.2Q8.Q92.O6.2O3.O5.2O7.O.O10.P74.A.A26.W.2W6.W$.Q5.Q4.Q 93.O.O6.2O7.2O17.P57.3A44.W.W7.W$7.2Q3.Q95.O14.O10.2O8.P28.4Q40.A3.2A 26.W8.W$4.Q.4Q29.G70.O.O7.O7.O9.O4.X28.5Q28.3A3.A4.A5.A26.2W$2.2Q10.Q 22.G.G72.O5.O.O5.O.O5.O4.2O3.X24.Q.Q4.2Q33.A.A3.A.A29.2W3.W3.W50.A$ 14.Q23.G.G73.O.O5.O.O5.O.O4.2O4.X24.4Q38.A.A6.2A28.2W3.W3.W50.A$14.Q 23.G77.O7.O7.O6.O4.X22.2Q2.Q5.Q34.A41.W3.W50.A$143.X24.Q.Q3.3Q$144.X 24.3Q.3Q.Q73.pA17.pA$143.X25.3Q.2Q4.Q70.pA.pA15.pA.pA$144.X26.3Q3.2Q 70.2pA16.2pA$143.X29.Q.2Q.Q4.Q66.pA18.pA$144.X27.6Q4.2Q3.2Q60.pA.pA 15.2pA$143.X27.Q9.Q4.3Q6.3Q51.pA17.3pA$142.X28.2Q4.2Q.4Q.Q3.Q.3Q2.Q2. 3Q46.pA$95.3X.7X2.X2.12X6.3X3.7X30.Q3.3Q.Q4.2Q.2Q6.Q51.pA.pA2.2pA12.pA 2.pA$94.X3.2X2.X2.X.X.X.X2.X2.2X9.X3.X2.X38.Q7.Q5.2Q7.Q.3Q46.pA3.pA7. 2pA5.pA.pA$93.X8.X3.X3.X3.X3.X14.X.X38.Q5.Q3.2Q.3Q5.3Q51.3pA4.2pA2.pA 6.pA$93.X8.X3.X3.X3.X3.X14.X.X50.Q.2Q4.4Q53.2pA.pA.pA.pA2.pA6.pA$93.X 8.X3.X3.X3.X3.X14.X.X43.Q.3Q.2Q.Q5.Q3.Q11.2Q8.2Q30.2pA3.4pA7.pA.pA$ 94.X7.X3.X3.X3.X3.X14.X.X44.Q.Q.2Q2.4Q4.Q2.Q9.3Q7.Q2.4Q43.pA$95.2X5.X 3.5X3.X3.3X12.X.4X48.Q4.Q4.Q3.Q4.Q2.Q2.2Q.Q.Q.2Q.Q.2Q26.2pA3.4pA7.2pA $97.X4.X3.X3.X3.X3.X13.X6.X50.3Q5.Q2.Q2.2Q.Q.Q.Q.2Q.Q5.Q.Q.2Q4.Q18.2pA .pA.pA.pA2.pA$98.X3.X3.X3.X3.X3.X12.X8.X49.5Q7.Q2.Q.Q3.Q2.Q.Q.2Q2.Q.Q .2Q3.2Q16.3pA4.2pA2.pA6.pA2.pA$98.X3.X3.X3.X3.X3.X11.X9.X52.Q5.3Q5.Q. Q.3Q.2Q2.Q2.Q3.Q3.Q17.pA3.pA7.2pA4.pA$98.X3.X3.X3.X3.X3.X10.X10.X52.Q 5.Q4.2Q11.Q3.2Q.Q.2Q.3Q.Q4.2Q8.pA.pA2.2pA10.2pA$93.X3.X4.X3.X3.X3.X3. X9.X6.X3.X60.Q3.Q4.Q12.Q.Q.Q.2Q.Q2.4Q2.Q2.2Q3.pA17.pA$94.3X5.X3.X3.X 3.X3.4X6.7X.3X67.Q3.Q8.2Q2.2Q4.Q.2Q10.Q.Q3.pA16.3pA$122.6X77.Q5.2Q12. 2Q.Q2.6Q.2Q3.Q5.pA.pA15.pA$206.Q4.2Q13.4Q6.3Q4.Q6.pA18.pA$207.Q.Q19. 6Q4.2Q.Q6.2pA16.2pA$211.2Q16.Q2.Q.Q6.Q8.pA.pA14.2pA$251.pA17.pA2$.pA 12.pA80.E7.E70.G134.pA$pA.pA4.2pA.pA3.pA7.O6.O21.2K.2K10.M16.M11.E.E 5.E.E69.2G.3G3.G2.G7.2G4.3G105.pA$.2pA4.pA.2pA3.pA6.O.O4.O.O30.M3.2M 16.2M3.M4.E5.E.E5.E65.2G9.G2.G6.4G8.G102.pA$21.O.O4.O.O21.K.K6.M.2M. 2M14.2M.2M.M10.E7.E.E65.G6.2G.2G.2G3.G4.G7.G$.4pA3.3pA10.O.O4.O.O7.3I .3I7.K.K6.M2.2M18.2M2.M3.2E17.E72.G2.G4.2G4.2G6.G56.2S.2S7.2S.2S8.2O. 2O7.2O.2O$pA4.pA.pA3.pA.2pA6.O.O4.O.O7.I5.I4.2K.K.K.2K11.M10.M30.E.E 70.G2.G4.2G4.2G9.3G51.S.4S5.4S.S8.O.4O5.4O.O4.2pA$pA3.2pA.pA3.pA.pA6. 2O.2O2.2O.2O8.I.I7.2K3.2K37.E.E7.E10.E66.2G.2G.2G3.G4.G63.S6.S3.S6.S 6.O6.O3.O6.O4.pA$pA.2pA.pA.pA.pA.pA.pA25.2I.2I23.M.3M.M2.M.3M.M13.E5. E.E10.E.E66.G2.G6.4G7.3G55.S4.S5.S4.S3.2A3.O4.O5.O4.O5.pA$pA4.pA.pA3. pA.2pA7.2O4.2O8.I5.I22.M2.2M.M2.M.2M2.M15.E.E5.E.E10.E64.G2.G7.2G66.S 15.S3.2A3.O15.O4.2pA$.4pA3.3pA11.8O40.2M.M2.M.2M11.3E6.E7.E10.E.E68.G 10.2G14.3G44.S13.S10.O13.O$20.O2.O.2O.O2.O6.I5.I5.2K3.2K53.E.E10.E66. G9.G2.G6.4G8.G40.S15.S8.O15.O$.4pA3.3pA9.3O6.3O7.2I.2I5.2K.K.K.2K37.E 5.E10.E10.E.E64.G8.G4.G4.G.2G.G7.G40.S2.2S.2S.2S.2S2.S8.O2.2O.2O.2O. 2O2.O$pA4.pA.pA3.pA.2pA5.O10.O8.I.I9.K.K40.E5.E5.2E5.E.E10.E65.3G2.G 6.G3.2G2.2G7.G43.2S.2S.2S.2S14.2O.2O.2O.2O7.2pA$pA2.pA.pA.pA3.pA.pA6. O10.O6.I5.I7.K.K16.M6.M16.2E3.2E5.E8.E10.E.E68.G6.G3.2G2.2G52.S7.S16. O7.O9.pA$pA3.2pA.2pA2.pA.pA5.O12.O5.3I.3I25.M.6M.M30.E7.E.E10.E67.G4. G4.G.2G.G52.S.S3.S.S16.O.O3.O.O9.pA$pA.pA2.pA.pA.pA.pA.2pA5.O10.O19. 2K.2K14.2M6.2M11.3E2.2E.2E2.3E3.2E9.E10.E.E66.G2.G6.4G7.3G43.S2.S.S2. S16.O2.O.O2.O8.2pA$.4pA3.3pA9.2O8.2O42.2M17.E.E.E.E.E.E18.E.E10.E65. 2G64.S2.S.S2.S16.O2.O.O2.O$19.2O10.2O18.2K.2K17.4M18.2E3.2E22.E10.E.E 68.G61.S.S.S.S18.O.O.O.O$3.2pA3.3pA2.2pA4.2O.O6.O.2O39.2M2.2M31.E.E.E 12.E.E10.E66.G9.G2.G47.2S.S.S.2S16.2O.O.O.2O$pA.pA2.pA.pA.pA.pA2.pA5. O.2O4.2O.O20.K.K40.2E3.2E7.E.E.E5.E8.E10.E.E64.G8.G.2G.G43.S.S.S.S.S. S.S.S10.O.O.O.O.O.O.O.O7.pA$pA.4pA.2pA.2pA.pA6.O2.O4.O2.O6.3I.3I7.K.K 38.E.E.E.E.E.E5.E3.E3.2E2.E8.E.E76.3G4.G2.G43.4S2.2S.2S2.4S8.4O2.2O. 2O2.4O$2.pA2.pA.pA.pA.pA.2pA6.3O.2O.3O7.I5.I4.2K.K.K.2K14.2M2.2M13.3E 2.2E.2E2.3E4.E.E8.E.E8.E9.2E72.G2.G42.S2.2S.S.S.S.S.2S2.S6.O2.2O.O.O. O.O.2O2.O5.pA$pA2.2pA3.3pA10.3O.2O.3O9.I.I7.2K3.2K15.2M2.2M31.E3.E5.E 3.E10.E.E9.E68.G.2G.G40.2S3.3S.S.S.3S3.2S.2pA.2O3.3O.O.O.3O3.2O4.pA$ 21.2O6.2O8.2I.2I27.2M4.2M16.2E3.2E7.E.E.E9.E3.3E6.E5.E4.2E67.G2.G41. 2S.S2.S2.S.S2.S2.S.2S.2pA.2O.O2.O2.O.O2.O2.O.2O$6.7pA11.4O10.I5.I27.M .2M.M17.E5.E7.E.E.E5.3E6.3E7.E.E4.2E99.3A13.S.S3.2S3.2S3.S.S6.O.O3.2O 3.2O3.O.O$6.pA2.pA2.pA6.2O4.2O4.2O39.2M2.2M17.E5.E38.E6.E114.3S13.3S 6.3O13.3O$22.2O4.2O$125.Q142.3S.3S18.3O.3O$19.2O.2O4.2O.2O34.2M12.2M 40.2Q17.2Q3.Q122.S.S22.O.O$19.2O.2O4.2O.2O33.3M4.M2.M4.3M39.2Q5.Q.Q8. 3Q4.Q118.S2.S.S2.S16.O2.O.O2.O$19.2O.2O4.2O.2O34.M.M3.M2.M3.M.M47.2Q. Q6.Q3.3Q119.S9.S14.O9.O$68.2M3.M2.M3.2M42.3Q.Q10.2Q.Q.2Q.Q3.Q9.Q104.S 2.S3.S2.S14.O2.O3.O2.O$69.2M8.2M43.Q2.2Q11.Q.Q6.3Q8.2Q103.S2.S5.S2.S 12.O2.O5.O2.O$71.M6.M49.Q10.3Q2.Q4.Q2.2Q.Q.2Q.Q73.2O$68.M2.8M2.M38.Q. 2Q.Q10.Q.2Q.Q8.Q3.3Q3.Q71.O4.O26.S2.S7.S2.S10.O2.O7.O2.O$68.M3.2M2.2M 3.M37.Q.2Q.5Q5.2Q4.6Q4.Q2.2Q5.Q70.O6.O26.2S.S5.S.2S12.2O.O5.O.2O$118. 2Q.2Q11.2Q18.2Q4.Q69.O8.O25.2S.2S3.2S.2S12.2O.2O3.2O.2O$73.M2.M42.Q. 2Q.5Q5.2Q4.6Q4.Q2.2Q5.Q69.2O.4O.2O27.2S.S.S.2S16.2O.O.O.2O$22.O6.O42. M4.M42.Q.2Q.Q10.Q.2Q.Q8.Q3.3Q3.Q$20.2O.2O2.2O.2O41.4M51.Q10.3Q2.Q4.Q 2.2Q.Q.2Q.Q107.S.S.S.S18.O.O.O.O$71.M6.M45.Q2.2Q11.Q.Q6.3Q8.2Q70.2O2. 2O26.S4.S3.S4.S10.O4.O3.O4.O$69.3M6.3M43.3Q.Q10.2Q.Q.2Q.Q3.Q9.Q70.2O 2.2O25.2S3.S.S.S.S3.2S8.2O3.O.O.O.O3.2O! [[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
[R]Investigator rules.
Example: B3S23Investigator
x=98, y = 57, rule = B3S23Investigator 35.R26.R$35.E26.E8$51.E$25.E20.E25.E$24.E21.E7.C18.E$23.E28.EBDE18.E$ 45.CE5.2E$21.CD2.DE43.2ED2.DC$19.E3.DE18.C22.E3.D3ED3.E$42.EDBE4.ER 13.3E3.E$44.2E15.E3.D2.E2.D14.C.ECB$13.C30.ED3.E12.E3.E3.D.E11.CE.D2. E$8.D4.D30.E3.E14.E2.D2E.C13.D.E.D$7.E4.D2.E28.D2.E17.D16.E2.D3.E$12. E3.E28.D19.C15.E3.E$12.ED3.E27.C21.E12.E3.DE$13.E10.2E39.2DE4.2E10.E 6.E$11.E12.ED3.E34.3E.E3.DE$5.E17.2E3.E4.DE28.ED4.E3.2E17.E$10.E4.E7. CD2.E3.CD2.DE24.ED2.DC3.E2.DC7.E4.E$14.E10.D46.D10.E$9.E3.E11.CE5.2E 19.E10.2E5.EC11.E3.E$26.D5.D.E14.E3.D9.E.D5.D$DA8.ECD2.DE9.ED3.DE2.E 14.E3.2E6.E2.ED3.DE9.ED2.DCE8.AD$DA11.DE4.2A6.CD.DC19.E2.DE10.CD.DC6. 2A4.ED11.AD$18.E.A2.C.E4.C22.D13.C.C4.C2.A.E$4.E6.E5.ED6.D2.E.E7.2A 13.2C3.2A7.E11.DE5.E6.E$5.E4.ED5.DE4D.E6.E5.E.A2.C12.C2.A.E5.E8.4DED 5.DE4.E$10.2ED3.DE.4EB.C6.E4.D22.D4.E8.B3E2.ED3.D2E$6.E3.DECD.DEC2.DE 2.E8.E3.E4D14.4DE3.E8.E6.CED.DCED3.E$7.E3.E.2E4.E5.C11.5EB12.B5E11.C 10.2E.E3.E$8.E2.D.CD5.D.EC.D4.ED2.DCE2D21.D.CD2.DE4.D2.ED6.DC.D2.E$ 10.D.2E.DC3.E3.D2.E4.ED26.D3.DE4.E2.D3.E3.CD.2E.D$10.CE3.E4.E2.2E3.E 5.2E24.E.2E5.E3.2E7.E3.EC$10.E5.E7.ED3.E3.E25.C4.E3.E3.DE7.E5.E$10.D 5.D2.E4.2E6.E5.E26.E6.2E4.E2.D5.D$10.ED3.DE2.D3.E2.E4.E6.DE26.E4.E2.E 3.D2.ED3.DE$11.CD.DC2.E3.E4.E7.E3.EDEC11.CEDE4.E7.E4.E3.E2.CD.DC$12.C .CE2.D2.E7.CD2.DE6.DE2.C5.C2.ED7.ED2.DC7.E2.D2.EC.C$16.2E.D11.D3E7.D 2.D5.D2.D8.E.ED11.D.2E$12.E5.EC10.E2.EDE7.ED7.DE7.EDE2.2E10.CE5.E$12. D5.D4.EDE2.EDE2.E.DC.E3.DECE.E.E.ECED3.E.CD.E2.EDE2.EDE5.D5.D$12.ED3. DEDE.C2.DC.E.DC4.DC3.DCE9.ECD3.CD4.CD.E.CD5.EDED3.DE$12.CED.DC2.DC2E 2.D4.D8.DE2.2D5.2D2.ED8.D4.D5.CD2.CD.DEC$15.3E3.D5.E4.E3.DC2.D4.ED3.D E4.D2.CD3.E4.E4.ECD3.3E$15.DC5.E3.D4.D3.DC3.C4.CED.DC5.C3.CD3.D4.D10. CD$13.CD6.D.E.DC3.DC.EDE12.3E10.EDE.CD3.CD3.CD6.DC$20.DC.EDE2.EDE17.D C16.EDE2.EDE2.CD$18.EDE25.CD29.EDE$49.A! [[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY Y -9 LOOP 900 ]]
RuleTable rules from a repository.
Example: Byl-loop
x=5, y = 5, rule = Byl-Loop:P200,100 3.C$4.B2$B$.C! [[ ZOOM 2 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
Non-deterministic rules.
Example: Non-deterministic Soldier Bugs
x=113, y = 113, rule = R7,C2,S64-113,B65-95,P100,#,# 49b4o$47b7o$46b10o$45b12o$45b13o19b2o$44b3o5b6o17b6o$22b3o19b3o5b6o16b 9o$20b7o17b3o5b6o15b11o$19b9o16b3o5b6o14b3ob9o$18b12o15b3o2b8o14b3o4b 7o$18b13o14b12o14b3o6b6o$17b5o3b6o15b10o15b3o6b6o$17b2o7b5o16b7o17b3o 6b6o$17b2o7b5o18b3o20b3obo2b7o$17b3o5b6o41b13o$17b3o2b9o42b11o$18b3ob 8o44b8o$19b10o46b6o16b5o$20b7o50b2o17b8o$21b5o69b4o2b4o$94b3o4b5o$93b 3o5b5o$93b5o4b5o$93b5o4b5o$93b5o4b5o$93b6o2b5o$94b12o$9b5o81b10o$8b7o 80b9o$7b9o80b8o$6b10o81b6o$6b11o$5b13o$5b5o3b5o$4b5o5b5o$4b5o5b5o$5b4o 4b5o$5b3o6b4o$6b4o3b4o$7b9o$8b7o$10b3o3$104b4o$102b8o$101b10o$100b4o4b 4o$100b3o5b4o$99b4o5b5o$99b5o4b5o$99b5o4b5o$100b13o$100b12o$101b10o$4b 6o91b10o$3b8o91b8o$2b10o91b6o$2b10o$b12o$13o$5o4b5o$5o4b5o$5o5b4o$b4o 5b3o$b4o4b4o$2b10o$3b8o$5b4o3$100b3o$98b7o$97b9o$96b4o3b4o$95b4o6b3o$ 95b5o4b4o$94b5o5b5o$94b5o5b5o$95b5o3b5o$95b13o$96b11o$10b6o81b10o$9b8o 80b9o$9b9o80b7o$8b10o81b5o$7b12o$7b5o2b6o$6b5o4b5o$6b5o4b5o$6b5o4b5o$ 7b5o5b3o$7b5o4b3o$8b4o2b4o69b5o$9b8o17b2o50b7o$11b5o16b6o46b10o$31b8o 44b8ob3o$29b11o42b9o2b3o$28b13o41b6o5b3o$27b7o2bob3o20b3o18b5o7b2o$27b 6o6b3o17b7o16b5o7b2o$27b6o6b3o15b10o15b6o3b5o$27b6o6b3o14b12o14b13o$27b 7o4b3o14b8o2b3o15b12o$28b9ob3o14b6o5b3o16b9o$29b11o15b6o5b3o17b7o$30b 9o16b6o5b3o19b3o$32b6o17b6o5b3o$34b2o19b13o$56b12o$57b10o$59b7o$60b4o! [[ ZOOM 1 THUMBNAIL THUMBSTART EXCLUSIVEPLAY RANDSEED 1695741111763 LOOP 1000 ]]

Native support for BSFKL, Extended Generations and deficient rules is also planned.[1][2][3] Support for 1D totalistic rules and multiple neighbourhoods rules may also be planned.[4][5]

Repository Rules

LifeViewer can load rules from the Rule: namespace here on LifeWiki. The rules must be in RuleTable format. LifeViewer supports both @TABLE and @TREE format rules. Typically @TREE rules run much faster so if possible ensure there is an @TREE version of the rule before the @TABLE version (if present).

Inline Rules

If LifeViewer does not recognize the rule specified in the pattern header then it will first search the pattern comments after the pattern to see if there is an inline rule definition. This must be in RuleTable format. If there is no inline rule then it will attempt to retrieve the rule from the Rule Repository.

Aliases

LifeViewer contains a large list of alias names for particular rules. This list of rule name aliases can be found by clicking the Aliases button under Help.

Grid and neighbourhood support

LifeViewer supports many different neighbourhoods on square, hexagonal or triangular grids.

Click on "Expand" to the right to view the full list of supported neighbourhoods per grid type.

  • square tiling:
    • outer-totalistic:
      • Moore
      • von Neumann
      • circular
      • cross
      • L2
      • saltire
      • star
      • checkerboard
      • aligned checkerboard
      • hash
      • custom (CoordCA)
      • Gaussian
      • custom weighted
      • far corners/edges
    • non-totalistic R1 Moore
    • non-isotropic
    • Margolus
    • PCA
  • hexagonal or offset-square grid:
    x=50, y = 136, rule = B2/S34H $24bo$22bo$24bo$22b3o$25bo$23b3o$25bobo$25bobo$24b2o$22bo5bo$23bo$27b 2o$27bo$23bo$25b2obo$23bo2bobo$25bob3o$21bo2bob3o$22b3o3b2o$21bo2bob2o $26bobo$23b2o2bo$24b2o3bo$25b2obo$27bo! [[ TRACK -0.25 0.5 GPS 15 GRID ZOOM 8 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
    • outer totalistic:
      • hexagonal
      • tripod
      • asterisk
      • custom (CoordCA)
      • custom weighted
    • non-totalistic
    • non-isotropic
  • triangular grid:
    x=8, y = 6, rule = B456/S34L bo3bo$bo4bo$b2o4bo$2bo5bo$2bo5bo$3b2ob2o! [[ TRACK 1/6 1/6 GPS 8 GRID ZOOM 16 THUMBNAIL THUMBSTART EXCLUSIVEPLAY ]]
    • outer totalistic:
      • triangular Moore
      • triangular edges
      • triangular vertices
      • triangular inner
      • triangular outer
      • triangular biohazard
      • triangular radiation
      • custom (CoordCA)
      • custom weighted

LifeViewer supports patterns on "unbounded" grids (maximum 16384x16384 in size) and the following bounded grid types:

  • Plane
  • Cylinder (with optional shift)
  • Torus (with optional shift)
  • Klein-bottle (with optional shift)
  • Cross-surface
  • Sphere (either diagonal)

For range 2+ neighbourhoods, hexagonal, triangular, PCA and Margolus rules only Plane and Torus (without shift) are supported.

User Interface

Main article: LifeViewer/User Interface

Themes

Themes are used to define the colours of cells, the background and the grid lines for 2-state and Generations patterns. Some Themes also specify whether major grid lines are used and if so on what interval.

Themes are primarily used to provide a visual representation of cell history and longevity.

The default Theme is "Blues" but this can be changed by clicking Theme in the Settings menu or with the THEME script command.

x=3, y = 3, rule = Life 3o$2bo$bo! [[ AUTOSTART THUMBNAIL GRID STOP 128 ZOOM 8 X 32 Y -31 HEIGHT 560 ]]

Grid

Some Themes define specific GridLine colours for standard and Major GridLines and also the major GridLine interval.

GRID: grid line colour
GRIDMAJOR: major grid line colour and interval

Two-state Themes

For two-state Themes there are five colours that are used for defining the cell colours:

KeyDescription
BACKGROUNDcell never occupied
ALIVEcell just born
ALIVERAMPcell alive for at least AGESTATES generations (default 63)
DEADcell just died
DEADRAMPcell dead for at least HISTORYSTATES generations (default 63)

New cells are drawn in the ALIVE colour.

If cells stay alive they fade from the ALIVE colour to the ALIVERAMP colour over the next AGESTATES (default 63) generations. This provides a visual representation of cell longevity.

Cells are drawn in the DEAD colour when they die.

If they stay dead they fade from the DEAD colour to the DEADRAMP colour over the next HISTORYSTATES (default 63) generations. This provides a visual representation of cell history.

Click on "Expand" to the right to see the definitions of the available two-state Themes.

Mono
BACKGROUND 0 0 0     Black
ALIVE 255 255 255     White
DEAD 0 0 0     Black
Blues
BACKGROUND 0 0 0     Black
ALIVE 0 255 255     Aqua
ALIVERAMP 255 255 255     White
DEAD 0 0 255     Blue
DEADRAMP 0 0 47    
Fire
BACKGROUND 0 0 0     Black
ALIVE 255 144 0    
ALIVERAMP 255 255 0     Yellow
DEAD 160 0 0    
DEADRAMP 32 0 0    
Poison
BACKGROUND 0 0 0     Black
ALIVE 0 255 255     Aqua
ALIVERAMP 255 255 255     White
DEAD 0 128 0     Green
DEADRAMP 0 24 0    
Yellow
BACKGROUND 0 32 128    
ALIVE 255 255 0     Yellow
ALIVERAMP 255 255 255     White
DEAD 128 0 128     Purple
DEADRAMP 0 47 0    
Gray
BACKGROUND 0 0 0     Black
ALIVE 176 176 176    
ALIVERAMP 240 240 240    
DEAD 104 104 104    
DEADRAMP 16 16 16    
Inverse
BACKGROUND 255 255 255     White
ALIVE 0 0 0     Black
DEAD 255 255 255     White
Day
BACKGROUND 255 255 255     White
ALIVE 0 0 255     Blue
ALIVERAMP 0 0 0     Black
DEAD 0 255 255     Aqua
DEADRAMP 240 240 240    
Occupied
BACKGROUND 0 0 0     Black
ALIVE 240 240 240    
DEAD 240 240 240    
Red
BACKGROUND 0 0 0     Black
ALIVE 240 240 240    
DEAD 160 0 0    
LifeHistory
BACKGROUND 0 0 0     Black
ALIVE 0 240 0    
ALIVERAMP 16 255 16    
DEAD 0 0 160    
DEADRAMP 0 0 96    
Generations
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
ALIVERAMP 255 255 255     White
DEAD 255 0 0     Red
DEADRAMP 64 0 0    
Golly
BACKGROUND 48 48 48    
ALIVE 255 255 255     White
DEAD 48 48 48    
GRID 80 80 80    
GRIDMAJOR 112 112 112    
GRIDMAJOR 10
MCell
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
DEAD 0 0 0     Black
GRID 64 0 0    
GRIDMAJOR 99 3 1    
GRIDMAJOR 5
Catagolue
BACKGROUND 192 255 238    
ALIVE 0 0 0     Black
DEAD 160 221 204    
GRID 160 221 204    
GRIDMAJOR 160 221 204    
GRIDMAJOR 0
Caterer
BACKGROUND 54 57 62    
ALIVE 255 255 255     White
DEAD 54 57 62    
GRID 0 0 0     Black
GRIDMAJOR 0 0 0     Black
GRIDMAJOR 0
Life32
BACKGROUND 255 255 255     White
ALIVE 0 0 128     Navy
DEAD 255 255 255     White
GRID 192 192 192     Silver
GRIDMAJOR 128 128 128     Gray
GRIDMAJOR 5
Margolus
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
ALIVERAMP 255 255 255     White
DEAD 0 0 128     Navy
DEADRAMP 0 0 47    
GRID 32 32 255    
GRIDMAJOR 64 64 128    
GRIDMAJOR 2
PCA
BACKGROUND 0 0 0     Black
ALIVE 176 176 176    
ALIVERAMP 240 240 240    
DEAD 64 64 64    
DEADRAMP 24 24 24    
Book
BACKGROUND 255 255 255     White
ALIVE 0 0 0     Black
DEAD 192 220 255    
DEADRAMP 255 220 192    
GRID 192 192 192     Silver
GRIDMAJOR 209 209 209    
GRIDMAJOR 0

Multi-state Themes

Multi-state Themes are used for Generations rules and there are six colours that are used for defining the cell colours:

KeyDescription
BACKGROUNDcell never occupied
ALIVEcell alive
DYINGcell just started dying
DYINGRAMPcell about to die
DEADcell just died
DEADRAMPcell dead for at least HISTORYSTATES generations (default 63)

New cells are drawn in the ALIVE colour.

Cells are drawn in the DYING colour when they start to die. They then fade to the DYINGRAMP colour over the number of generations defined in the rule.

Once cells reach the DYINGRAMP colour then on the next generation they die and become the DEAD colour.

If they stay dead they fade from the DEAD colour to the DEADRAMP colour over the next HISTORYSTATES (default 63) generations. This provides a visual representation of cell history.

Click on "Expand" to the right to see the definitions of the available multi-state Themes.

Mono
BACKGROUND 0 0 0     Black
ALIVE 255 255 255     White
DYING 255 255 255     White
DYINGRAMP 0 0 0     Black
DEAD 0 0 0     Black
Blues
BACKGROUND 0 0 0     Black
ALIVE 0 255 255     Aqua
DYING 0 255 255     Aqua
DYINGRAMP 0 0 255     Blue
DEAD 0 0 128     Navy
DEADRAMP 0 0 47    
Fire
BACKGROUND 0 0 0     Black
ALIVE 255 144 0    
DYING 255 144 0    
DYINGRAMP 240 0 0    
DEAD 160 0 0    
DEADRAMP 32 0 0    
Poison
BACKGROUND 0 0 0     Black
ALIVE 0 255 255     Aqua
DYING 0 255 255     Aqua
DYINGRAMP 0 192 0    
DEAD 0 128 0     Green
DEADRAMP 0 24 0    
Yellow
BACKGROUND 0 32 128    
ALIVE 255 255 0     Yellow
DYING 255 255 0     Yellow
DYINGRAMP 192 64 64    
DEAD 128 0 128     Purple
DEADRAMP 0 47 0    
Gray
BACKGROUND 0 0 0     Black
ALIVE 240 240 240    
DYING 240 240 240    
DYINGRAMP 160 160 160    
DEAD 104 104 104    
DEADRAMP 16 16 16    
Inverse
BACKGROUND 255 255 255     White
ALIVE 0 0 0     Black
DYING 0 0 0     Black
DYINGRAMP 255 255 255     White
DEAD 255 255 255     White
Day
BACKGROUND 255 255 255     White
ALIVE 0 0 255     Blue
DYING 0 0 255     Blue
DYINGRAMP 0 255 255     Aqua
DEAD 0 192 192    
DEADRAMP 240 240 240    
Occupied
BACKGROUND 0 0 0     Black
ALIVE 240 240 240    
DYING 240 240 240    
DEAD 240 240 240    
Red
BACKGROUND 0 0 0     Black
ALIVE 255 255 255     White
DYING 160 160 160    
DEAD 160 0 0    
LifeHistory
BACKGROUND 0 0 0     Black
ALIVE 16 255 16    
DYING 16 255 16    
DYINGRAMP 0 128 160    
DEAD 0 0 160    
DEADRAMP 0 0 96    
Generations
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
DYING 255 255 0     Yellow
DYINGRAMP 255 0 0     Red
DEAD 128 0 0     Maroon
DEADRAMP 64 0 0    
Golly
BACKGROUND 48 48 48    
ALIVE 255 255 0     Yellow
DYING 255 255 0     Yellow
DYINGRAMP 255 0 0     Red
DEAD 48 48 48    
MCell
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
DYING 255 255 0     Yellow
DYINGRAMP 0 255 0     Lime
DEAD 0 0 0     Black
Catagolue
BACKGROUND 192 255 238    
ALIVE 0 0 0     Black
DYING 2 129 2    
DYINGRAMP 96 192 139    
DEAD 160 221 204    
Caterer
BACKGROUND 54 57 62    
ALIVE 255 170 0    
DYING 255 170 0    
DYINGRAMP 255 85 0    
DEAD 54 57 62    
Life32
BACKGROUND 255 255 255     White
ALIVE 0 0 128     Navy
DYING 0 0 128     Navy
DYINGRAMP 0 0 64    
DEAD 255 255 255     White
Margolus
BACKGROUND 0 0 0     Black
ALIVE 255 255 0     Yellow
DYING 255 255 0     Yellow
DYINGRAMP 64 64 128    
DEAD 0 0 128     Navy
DEADRAMP 0 0 47    
PCA
BACKGROUND 0 0 0     Black
ALIVE 240 240 240    
DYING 240 240 240    
DYINGRAMP 160 160 160    
DEAD 64 64 64    
DEADRAMP 24 24 24    
Book
BACKGROUND 255 255 255     White
ALIVE 0 0 0     Black
DYING 128 128 128     Gray
DYINGRAMP 24 24 24    
DEAD 192 220 255    
DEADRAMP 255 220 192    

Pattern Identification

LifeViewer is able to identify spaceships, oscillators and still-life patterns. For oscillators it can display a table and graphical map of periods and frequencies per cell.

Scripts

Main article: LifeViewer/Scripts

LifeViewer supports a large number of script commands than can be used to control playback, the camera, labels and annotations, colours and many other aspects.

Info

LifeViewer engine information and details about the currently loaded pattern can be found by pressing 'I', or clicking the Info button under Help.

Planned features

The following features and functionalities are planned for future builds of LifeViewer:

  • Theme support for [R]Super[6]

Possible future features

Click on "Expand" to the right to view the list of other requested features that may appear at some stage.

Rules

  • Native support for BSFKL rules[7]
  • Native support for Extended Generations[7]
  • Native support for 1D totalistic rules[8]
  • Native support for higher-range Margolus rules[9]
  • Native support for one-dimensional rules with a range greater than 2[10]
  • Native support for alternating rules with more than 3 constituent rules[11]

Non-square grids/selections

  • Diagonal/von Neumann-like selections[12]
  • Selection shapes which are more useful for hexagonal and triangular grids[13][14][15]
  • Selection flip/rotate transformations for hexagonal and triangular grids[14]
  • Directions of spaceships on hexagonal and triangular grids from Identify[16]
  • Calculating the mod of oscillators and spaceships on hexagonal and triangular grids in Identify[15]

[R]Super/[R]History

  • KILLGLIDERS functionality in [R]Super[17]
  • Support for pasting in [R]History/[R]Super-exclusive cells[18]
  • Selection inversion support for [R]History and [R]Super[17]

Known bugs

Main article: LifeViewer/Known bugs

References

  1. ↑ Chris Rowett (January 26, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  2. ↑ Chris Rowett (January 26, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  3. ↑ Chris Rowett (December 20, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  4. ↑ Chris Rowett (October 15, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  5. ↑ Chris Rowett (May 6, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  6. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129493#p129493
  7. ↑ 7.0 7.1 https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=86409#p86409
  8. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=84188#p84188
  9. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=82121#p82121
  10. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=82283#p82283
  11. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129157#p129157
  12. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=70959#p70959
  13. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=78941#p78941
  14. ↑ 14.0 14.1 https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=80331#p80331
  15. ↑ 15.0 15.1 https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=87226#p87226
  16. ↑ https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=84510#p84510
  17. ↑ 17.0 17.1 https://conwaylife.com/forums/viewtopic.php?f=3&t=1622&p=129156&hilit=backlog#p129156
  18. ↑ https://conwaylife.com/forums/viewtopic.php?p=93893#p93893

Forum threads