Plaintext

The plaintext file format is a recent ASCII file format that is similar to Life 1.05 in that it stores patterns simply by representing dead and alive cells by different characters and "drawing" the pattern with those characters. The particulars of the plaintext file format described here are based on the format used by Edwin Martin's Game of Life program, which uses the .cells file extension.

Description of format

The first line is a header line, which has the form

!Name: Something

where "Something" is the name of the pattern described by the file. This is followed by optional "!" lines that describe the pattern. For example:

!This is a really cool pattern.
!It was first discovered by Some Guy.

It seems as though the convention is to add one final "!" line with nothing else on it before the pattern itself, but this is optional.

To store the pattern itself, a "." is used to represent a dead cell, while an "O" (capital o) is used to represent an alive cell. This choice of characters was derived from the visual format used on Stephen Silver's Life Lexicon.

Because this file format was created much more recently than other similar file formats (such as Life 1.05), there is no restriction on the number of characters per line.

Variants

Some variations of the plaintext format exists,[1] which were results of older manual encoding and should be corrected. For example, trailing dead cells are sometimes omitted on a line, and lines containing only dead cells are sometimes left completely blank.

Some programs use "*" instead of "O" (only one case in the pattern collection).

Examples

The following is a glider in plaintext format:

!Name: Glider
!
.O.
..O
OOO

The following is the Gosper glider gun in plaintext format:

!Name: Gosper glider gun
!
........................O...........
......................O.O...........
............OO......OO............OO
...........O...O....OO............OO
OO........O.....O...OO..............
OO........O...O.OO....O.O...........
..........O.....O.......O...........
...........O...O....................
............OO......................

gollark: It doesn't actually know exactly when births happen, and possibly can't due to light speed lag or whatever, so it just approximates.
gollark: Actually, I have a machine which automatically names all babies in existence for you.
gollark: What if local and global variables (and indeed those in ANY scope) stored in a hash table which can be modified and accessed by your code?
gollark: Idea: what if `strlen` hash function?
gollark: I MIGHT be.

References

  1. HubTou (May 1, 2020). Re: LifeWiki Trusted Account Request Thread - Post requests here (discussion thread) at the ConwayLife.com forums
This article is issued from Conwaylife. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.