Difference between revisions of "LifeWiki:Pattern pages"

From LifeWiki
Jump to navigation Jump to search
m (→‎References: minor rewording)
m (→‎Pattern pages: howto in a nutshell: we're not putting viewerconfig in RLE namespace, so these instructions can be simplified a bit)
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
:'' "LW:PATTERNS" and "LW:PP" redirect here.''
:'' "LW:PATTERNS" and "LW:PP" redirect here.''


{{outdated}}
Pattern pages are pages within [[LifeWiki:About|LifeWiki]] that describe specific [[pattern]]s of interest in [[Conway's Game of Life]] and related [[cellular automata]].
Pattern pages are pages within [[LifeWiki:About|LifeWiki]] that describe specific [[pattern]]s of interest in [[Conway's Game of Life]] and related [[cellular automata]].


Line 22: Line 23:
|-
|-
| discoverer
| discoverer
| ''(optional)'' The name of the person who first discovered the pattern. Only list one name even if the pattern was found by multiple people.
| ''(optional)'' The name of the person who first discovered the pattern. If the pattern was found by multiple people, each individual name should be passed to the ''discoverer2'', ''discoverer3'', ''discoverer4'', or ''discoverer5'' parameters.
| discoverer=David Bell
| discoverer=David Bell
|-
|-
Line 36: Line 37:
| ''(optional)'' The height (y-dimension) of the pattern's [[bounding box]].
| ''(optional)'' The height (y-dimension) of the pattern's [[bounding box]].
| by=12
| by=12
|-
| fc
| ''(optional)'' The [[frequency class]] of the pattern, rounded to one decimal digit. Not all pattern templates currently support this parameter.
| fc=21.5
|-
|-
| c
| c
Line 44: Line 49:
| ''(optional)'' Whether or not there is an animated image available for the pattern. Not available for the Stilllife template. Omit this parameter if there is no such image.
| ''(optional)'' Whether or not there is an animated image available for the pattern. Not available for the Stilllife template. Omit this parameter if there is no such image.
| animated=true
| animated=true
|-
| life105
| ''(optional)'' Whether or not there is a [[Life 1.05]] pattern file available for download for this pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded.
| life105=true
|-
| life106
| ''(optional)'' Whether or not there is a [[Life 1.06]] pattern file available for download for this pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded.
| life106=true
|-
|-
| mc
| mc
Line 62: Line 59:
|-
|-
| rle
| rle
| ''(optional)'' Whether or not there is a [[Run Length Encoded]] pattern file available for download for this pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded. Also controls whether or not the ''Manipulate via Java'' link appears in the sidebar for the pattern.
| ''(optional)'' Whether or not there is a [[Run Length Encoded]] pattern file available for download for this pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded. Also controls whether or not LifeViewer looks for the pattern in the RLE: namespace and provides an image or animation for the pattern.
| rle=true
| rle=true
|-
|-
Line 80: Line 77:
| ''(optional)'' Whether or not there is a [[Run Length Encoded]] pattern file available for the [[glider synthesis]] of the pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded. Enter synthesisRLE=true if that pattern ''has'' been uploaded.
| ''(optional)'' Whether or not there is a [[Run Length Encoded]] pattern file available for the [[glider synthesis]] of the pattern. See [[#Pattern files|Pattern files]]. Omit this parameter if the file has not been uploaded. Enter synthesisRLE=true if that pattern ''has'' been uploaded.
| synthesisRLE=true
| synthesisRLE=true
|-
| rulemin
| ''(optional)'' The minimal rule (in "B/S" notation) under which the pattern will function as described.
| rulemin=B/S2
|-
|-
| rulemax
| rulemax
| ''(optional)'' The maximal rule (in "B/S" notation) that the pattern will function as described under.  
| ''(optional)'' The maximal rule (in "B/S" notation) under which the pattern will function as described.  
| rulemax=B35678/S23678
| rulemax=B35678/S23678
|-
| rulemin
| ''(optional)'' The minimal rule (in "B/S" notation) that the pattern will function as described under.
| rulemin=B/S2
|-
|-
| rulespecial
| rulespecial
| ''(optional)'' Any particularly notable rules that the pattern functions as described under.  
| ''(optional)'' Any particularly notable rules under which the pattern functions as described.  
| rulespecial=[[Conway's Game of Life|Conway Life]], [[HighLife]]
| rulespecial=[[Conway's Game of Life|Conway Life]], [[HighLife]]
|-
| isorulemin
| ''(optional)'' The minimal [[isotropic non-totalistic]] rule (in "B/S" notation) under which the pattern will function as described.
| isorulemin=B3-a/S23
|-
| isorulemax
| ''(optional)'' The maximal [[isotropic non-totalistic]] rule (in "B/S" notation) under which the pattern will function as described.
| isorulemax=B3/S234ce
|-
| apgcode
| ''(optional)'' The [[apgcode]] representation of the pattern, used by [[apgsearch]] and [[Catagolue]].
| apgcode=xs19_4aar0rbzx121
|-
| niemiecid
| ''(optional)'' The ID of the pattern in [[Mark Niemiec]]'s [[glider synthesis]] [http://conwaylife.com/ref/mniemiec/lifepage.htm database].
| niemiecid=19.11763
|-
| pentadecathlonid
| ''(optional)'' The ID of the pattern in [[Heinrich Koenig]]'s [http://pentadecathlon.com/objects/objects.php Game of Life Object Catalogs].
| pentadecathlonid=5P4H1V1.1
|-
| eppsteinid
| ''(optional)'' The numerical ID of the pattern in [[David Eppstein]]'s [http://fano.ics.uci.edu/ca/ spaceship database].
| eppsteinid=115
|}
|}


==Pattern files==
==Pattern files==
Users of the LifeWiki are able to create and edit articles and upload and edit images on the LifeWiki as they see fit, but the one action that can only be performed by the site administrator, [[User:Nathaniel|Nathaniel Johnston]], is uploading pattern files (the files in [[Life 1.05]], [[Life 1.06]], [[plaintext]] and [[RLE]] format that are downloadable from most pattern pages, as well as the [[macrocell]] and .zip archive files available on some pattern pages) to the LifeWiki. The reason for this restriction is twofold. First, it is for security reasons as people download and execute those files on their harddrive so the last thing we want is someone uploading a virus or some such malicious thing. Second, the server that LifeWiki is run on simply doesn't like automatic uploads of files in strange file formats.
Users of the LifeWiki are able to create and edit articles and upload and edit images on the LifeWiki as they see fit.  One action that can only be performed by the site administrator or other LifeWiki moderators is uploading pattern files.  These are the files in [[RLE]] and [[plaintext]] format that are downloadable from most pattern pages, as well as the [[macrocell]], compressed RLE and macrocell, and .zip archive files available on some pattern pages) to the LifeWiki. The reason for this restriction is twofold. First, it is for security reasons as people download and execute those files on their hard drive so the last thing we want is someone uploading a virus or some such malicious thing. Second, the server that LifeWiki is run on simply doesn't like automatic uploads of files in strange file formats.


If you have just created a pattern page or have found a pattern page that does not contain downloadable pattern files, send an e-mail to '''[mailto:support@conwaylife.com support@conwaylife.com]''' that contains a link to the pattern page in LifeWiki and some way to load the pattern (e.g. attach to the e-mail the pattern in RLE format).
If you have found a pattern page that does not contain downloadable pattern files, check if its '''RLE:{pname} page''' exists (example: http://conwaylife.com/wiki/RLE:Glider):
* If the page exists, it will most likely be picked up at some point by an [[LifeWiki:Tiki_bar/Archive/2018#Semi-automated_collection_of_raw_RLE|automated script]] by [[User:Dvgrn|Dvgrn]], so no further action is needed
* If the page does not exist, create it according to the [[#Pattern files|Pattern files]] section below, and it will get picked up by the automated script
* If you have further questions, check the "automated script" link above, or the [http://conwaylife.com/forums/viewtopic.php?t=2298 "Pages with invalid RLE files" thread] in the forums


Note that some patterns will not have all file types uploaded. For example, [[catacryst]] does not have a downloadable plaintext file, as it would be extremely large (and would likely lock up any program trying to read the file).
Note that some patterns will not have all file types uploaded. For example, [[catacryst]] does not have a downloadable plaintext file, as it would be extremely large (and would likely lock up any program trying to read the file).


==User-created patterns==
==User-created patterns==
Although LifeWiki hopes to expand and catalogue everything there is to know about the [[Conway's Game of Life|Game of Life]], users are generally discouraged from adding patterns that they themselves constructed, in order to avoid a potential conflict of interest. There are of course exceptions, such as when the constructed pattern is of clear [[LifeWiki:Notability|notability]].
Although LifeWiki hopes to expand and catalogue everything there is to know about the [[Conway's Game of Life|Game of Life]], users are generally discouraged from adding patterns that they themselves constructed, or names that they themselves invented for existing patterns, in order to avoid a potential conflict of interest. There are of course exceptions, such as when the constructed pattern is of clear [[LifeWiki:Notability|notability]].


== Pattern pages : howto in a nutshell ==
== Pattern pages: howto in a nutshell ==


* Collect data and pics first. Make a check list like the one below.
* Collect data and pics first. Make a checklist like the one below.
* Upload files and create the pattern page
* Decide on a name and pname that has not already been used (see above)
* Begin with the pattern infobox
* Use Golly to create standard RLE text. '''File > Save Extended RLE''' should not be checked.
* Add some standard text
* Type in the LifeWiki search bar:  RLE:{pname} (replace {pname} with your chosen pname)
* Add See also and References paragraphs when needed
* A link should appear to allow you to '''create RLE:{pname}'''.
* Preview before saving page, check it and save
* Click the link and paste in the pattern's RLE from Golly
* Ask for an .rle upload
* Type the name of the pattern in the LifeWiki search bar
* A link should appear to allow you to '''create {name}'''.
* Click the link to create the pattern page (see above)
* Begin with the pattern infobox, or another infobox template as appropriate
* Add "rle = true" as one of the infobox parameters, so that LifeViewer will display the pattern in the infobox (see note below)
* Add text describing the pattern
* Add See Also, References, and External Links paragraphs when needed
* Preview before saving page
* If LifeViewer default view is not ideal, add '''viewerconfig= #C [<nowiki />[ {commands} ]]''' to improve view
* Preview pattern page again, check it and save
* Click any red image links to upload image files
* Repeat above as needed for any secondary illustrations in the article body, outside the infobox, using an embedded viewer. See [[Template:EmbedViewer]] for details.


'''Note:'''  the "rle = true" parameter will also create a link in the '''Pattern files''' section of the infobox, to a location on the conwaylife.com server where the RLE will be uploaded.  This link will not work immediately, but the pattern you created in the RLE namespace will automatically be transferred to the server at regular intervals.  See the "Pattern files" section above for details.


=== Check list ===
=== Checklist ===
{| class="wikitable" style="text-align:left"
{| class="wikitable" style="text-align:left"
!A!!B
!A!!B
|-
|-
|pattern basics || name, type [, date of discovery, by whom]
|pattern basics || name, type [, date of discovery, by whom]
|-
|pname || choose a lowercase name with no spaces, not already used
|-
|-
|specific type template || still life, oscillator ...
|specific type template || still life, oscillator ...
|-
|-
|standard .png image || create it in ''Conwaylife''
|standard .png image || create it using a screenshot of ''LifeViewer''
|-
|standard animated .gif image for an oscillator, &c. ||create it using '''giffer.lua'''
|-
|standard .rle file || create it in Golly
|-
|-
|standard animated .gif image for an oscillator, &c. ||create it in Conwaylife
|LifeViewer config for pattern || preview using '''viewerconfig=''' and '''rle=''' on pattern page
|-
|-
|standard .rle file || create it in Conwaylife
|raw RLE || create in RLE: namespace -- '''RLE:{pname}
|-
|-
|numeric information ||cells, box [, period, heat ...]
|numeric information || find with the following tools if appropriate:
*[http://entropymine.com/jason/life/oscillizer/ Oscillizer]: bx, by, c, v, sv, h, rulemin, and rulemax (oscillators only)
*[http://www.conwaylife.com/scripts/download.php?f=getallrules.py getallrules.py]: rulemin and rulemax (any pattern)
*[https://pastebin.com/UPQVTvuN isorule.py]: isorulemin and isorulemax (any pattern)
*[http://www.conwaylife.com/forums/viewtopic.php?f=9&t=2032&start=0#p27202 This script]: apgcode (still lifes, oscillators, and spaceships only)
**If you get an error saying "string index out of range," try using [http://www.conwaylife.com/forums/viewtopic.php?p=36188#p36188 this variant] which supports [[apgcode#Adapting apgcodes to larger patterns|"greedy" apgcodes]] for larger patterns; make sure to add the <tt>format=extended</tt> parameter to the [[Template:LinkCatagolue|LinkCatagolue]] template in the "External links" section if you do this.
<!--
|-
|-
|text to be ''mailed'' for a .rle upload request || see ''References'' below
|text to be ''mailed'' for a .rle upload request || see ''References'' below
-->
|}
|}


=== References ===
=== References ===
Line 145: Line 193:
|template contents example ||<nowiki>{{Oscillator|name=Tea chest|pname=teachest|p=76  |c=76  |bx=76  |by=76  |h=76 |animated=yes |discoverer=Mohawk Indian |discoveryear=1776}}</nowiki>   
|template contents example ||<nowiki>{{Oscillator|name=Tea chest|pname=teachest|p=76  |c=76  |bx=76  |by=76  |h=76 |animated=yes |discoverer=Mohawk Indian |discoveryear=1776}}</nowiki>   
|-
|-
|standard text ||<nowiki>'''Tea chest''' was found by [[:Category:Patterns found by Mohawk Indian| Mohawk Indian ]] in [[:Category:Patterns found in 1776|1776]].</nowiki>   
|standard text ||<nowiki>'''Tea chest''' was found by [[Mohawk Indian]] in {{year|1776}}.</nowiki>   
|-
|-
|conwaylife page ||http://www.conwaylife.com/
|conwaylife page ||http://www.conwaylife.com/
<!--
|-
|-
|mail ||mailto:support@conwaylife.com  
|mail ||mailto:support@conwaylife.com  
Line 153: Line 202:
|request example (<nowiki>[ A | B ]</nowiki> denotes a choice)||<nowiki>Please upload the attached file xxxx.rle for the [ extant [[xxxx]] | to be created xxxx ] pattern page.</nowiki>
|request example (<nowiki>[ A | B ]</nowiki> denotes a choice)||<nowiki>Please upload the attached file xxxx.rle for the [ extant [[xxxx]] | to be created xxxx ] pattern page.</nowiki>
|-
|-
-->
|}
|}


{{ContributeNavbox}}
{{ContributeNavbox}}

Revision as of 20:50, 8 July 2019

"LW:PATTERNS" and "LW:PP" redirect here.
This article contains outdated information. You can help LifeWiki by updating it.


Pattern pages are pages within LifeWiki that describe specific patterns of interest in Conway's Game of Life and related cellular automata.

Pattern templates

A pattern template should be included at the top of every single page describing a specific pattern. The available pattern templates are listed below. When none of the templates match the type of pattern that the page is about, the general pattern template should be used.

In addition to any of the template-specific parameters listed on those template pages (such as s for speed in Template:Spaceship), all pattern templates have access to the following parameters. If the value of a particular parameter is unknown to you or if you are not completely sure what a particular parameter does, it is best to omit it completely. To learn how to use these templates and parameters, it is likely best to view the source code of an existing pattern page by clicking on the "Edit" button at the top of it.

Parameter Description Example
name (required) The name of the pattern being described. name=17c/45 reaction
pname (required) The name of the pattern being described, but converted to lowercase and with all non-alphanumeric characters and spaces removed. pname=17c45reaction
discoverer (optional) The name of the person who first discovered the pattern. If the pattern was found by multiple people, each individual name should be passed to the discoverer2, discoverer3, discoverer4, or discoverer5 parameters. discoverer=David Bell
discoveryear (optional) The year in which the pattern was first discovered. discoveryear=1970
bx (optional) The width (x-dimension) of the pattern's bounding box. bx=8
by (optional) The height (y-dimension) of the pattern's bounding box. by=12
fc (optional) The frequency class of the pattern, rounded to one decimal digit. Not all pattern templates currently support this parameter. fc=21.5
c (optional) The number of live cells in the pattern. c=45
animated (optional) Whether or not there is an animated image available for the pattern. Not available for the Stilllife template. Omit this parameter if there is no such image. animated=true
mc (optional) Whether or not there is a Macrocell pattern file available for download for this pattern. See Pattern files. Omit this parameter if the file has not been uploaded. mc=true
plaintext (optional) Whether or not there is a plaintext pattern file available for download for this pattern. See Pattern files. Omit this parameter if the file has not been uploaded. plaintext=true
rle (optional) Whether or not there is a Run Length Encoded pattern file available for download for this pattern. See Pattern files. Omit this parameter if the file has not been uploaded. Also controls whether or not LifeViewer looks for the pattern in the RLE: namespace and provides an image or animation for the pattern. rle=true
zip (optional) Whether or not there is a .zip archive containing a pattern file (or multiple pattern files) available for download for this pattern. Omit this parameter if the file has not been uploaded. zip=true
nofile (optional) Whether or not pattern files have been purposely omitted and do not need to be added to the page (e.g., if the pattern file would be exceedingly large) nofile=true
synthesis (optional) The minimum known number of gliders with which the pattern can be constructed via glider synthesis. Enter synthesis=0 if it is known that the pattern can not be constructed in this way. Omit this parameter if it is unknown whether or not the pattern can be constructed via glider synthesis. synthesis=2
synthesisRLE (optional) Whether or not there is a Run Length Encoded pattern file available for the glider synthesis of the pattern. See Pattern files. Omit this parameter if the file has not been uploaded. Enter synthesisRLE=true if that pattern has been uploaded. synthesisRLE=true
rulemin (optional) The minimal rule (in "B/S" notation) under which the pattern will function as described. rulemin=B/S2
rulemax (optional) The maximal rule (in "B/S" notation) under which the pattern will function as described. rulemax=B35678/S23678
rulespecial (optional) Any particularly notable rules under which the pattern functions as described. rulespecial=Conway Life, HighLife
isorulemin (optional) The minimal isotropic non-totalistic rule (in "B/S" notation) under which the pattern will function as described. isorulemin=B3-a/S23
isorulemax (optional) The maximal isotropic non-totalistic rule (in "B/S" notation) under which the pattern will function as described. isorulemax=B3/S234ce
apgcode (optional) The apgcode representation of the pattern, used by apgsearch and Catagolue. apgcode=xs19_4aar0rbzx121
niemiecid (optional) The ID of the pattern in Mark Niemiec's glider synthesis database. niemiecid=19.11763
pentadecathlonid (optional) The ID of the pattern in Heinrich Koenig's Game of Life Object Catalogs. pentadecathlonid=5P4H1V1.1
eppsteinid (optional) The numerical ID of the pattern in David Eppstein's spaceship database. eppsteinid=115

Pattern files

Users of the LifeWiki are able to create and edit articles and upload and edit images on the LifeWiki as they see fit. One action that can only be performed by the site administrator or other LifeWiki moderators is uploading pattern files. These are the files in RLE and plaintext format that are downloadable from most pattern pages, as well as the macrocell, compressed RLE and macrocell, and .zip archive files available on some pattern pages) to the LifeWiki. The reason for this restriction is twofold. First, it is for security reasons as people download and execute those files on their hard drive so the last thing we want is someone uploading a virus or some such malicious thing. Second, the server that LifeWiki is run on simply doesn't like automatic uploads of files in strange file formats.

If you have found a pattern page that does not contain downloadable pattern files, check if its RLE:{pname} page exists (example: http://conwaylife.com/wiki/RLE:Glider):

  • If the page exists, it will most likely be picked up at some point by an automated script by Dvgrn, so no further action is needed
  • If the page does not exist, create it according to the Pattern files section below, and it will get picked up by the automated script
  • If you have further questions, check the "automated script" link above, or the "Pages with invalid RLE files" thread in the forums

Note that some patterns will not have all file types uploaded. For example, catacryst does not have a downloadable plaintext file, as it would be extremely large (and would likely lock up any program trying to read the file).

User-created patterns

Although LifeWiki hopes to expand and catalogue everything there is to know about the Game of Life, users are generally discouraged from adding patterns that they themselves constructed, or names that they themselves invented for existing patterns, in order to avoid a potential conflict of interest. There are of course exceptions, such as when the constructed pattern is of clear notability.

Pattern pages: howto in a nutshell

  • Collect data and pics first. Make a checklist like the one below.
  • Decide on a name and pname that has not already been used (see above)
  • Use Golly to create standard RLE text. File > Save Extended RLE should not be checked.
  • Type in the LifeWiki search bar: RLE:{pname} (replace {pname} with your chosen pname)
  • A link should appear to allow you to create RLE:{pname}.
  • Click the link and paste in the pattern's RLE from Golly
  • Type the name of the pattern in the LifeWiki search bar
  • A link should appear to allow you to create {name}.
  • Click the link to create the pattern page (see above)
  • Begin with the pattern infobox, or another infobox template as appropriate
  • Add "rle = true" as one of the infobox parameters, so that LifeViewer will display the pattern in the infobox (see note below)
  • Add text describing the pattern
  • Add See Also, References, and External Links paragraphs when needed
  • Preview before saving page
  • If LifeViewer default view is not ideal, add viewerconfig= #C [[ {commands} ]] to improve view
  • Preview pattern page again, check it and save
  • Click any red image links to upload image files
  • Repeat above as needed for any secondary illustrations in the article body, outside the infobox, using an embedded viewer. See Template:EmbedViewer for details.

Note: the "rle = true" parameter will also create a link in the Pattern files section of the infobox, to a location on the conwaylife.com server where the RLE will be uploaded. This link will not work immediately, but the pattern you created in the RLE namespace will automatically be transferred to the server at regular intervals. See the "Pattern files" section above for details.

Checklist

A B
pattern basics name, type [, date of discovery, by whom]
pname choose a lowercase name with no spaces, not already used
specific type template still life, oscillator ...
standard .png image create it using a screenshot of LifeViewer
standard animated .gif image for an oscillator, &c. create it using giffer.lua
standard .rle file create it in Golly
LifeViewer config for pattern preview using viewerconfig= and rle= on pattern page
raw RLE create in RLE: namespace -- RLE:{pname}
numeric information find with the following tools if appropriate:
  • Oscillizer: bx, by, c, v, sv, h, rulemin, and rulemax (oscillators only)
  • getallrules.py: rulemin and rulemax (any pattern)
  • isorule.py: isorulemin and isorulemax (any pattern)
  • This script: apgcode (still lifes, oscillators, and spaceships only)
    • If you get an error saying "string index out of range," try using this variant which supports "greedy" apgcodes for larger patterns; make sure to add the format=extended parameter to the LinkCatagolue template in the "External links" section if you do this.

References

A B
upload Special:Upload
list of templates (infoboxes) LifeWiki:Pattern pages : this page
template contents example {{Oscillator|name=Tea chest|pname=teachest|p=76 |c=76 |bx=76 |by=76 |h=76 |animated=yes |discoverer=Mohawk Indian |discoveryear=1776}}
standard text '''Tea chest''' was found by [[Mohawk Indian]] in {{year|1776}}.
conwaylife page http://www.conwaylife.com/