Tutorials/Contributing to 5S
|This article is a stub. You can help LifeWiki by expanding it.|
Do you want to find really cool spaceships in unexplored, alien rules? Well now you can!
What is 5S?
5S or SSSSS, which stands for "Smallest SpaceShips Supporting Specific Speeds", is a project which aims to find the smallest spaceship (in cell count) for every speed, as the name suggests. To do this, contributors mainly use two pieces of software: LLS and searchRule-matchPatt2.py. In this article, we will only go over matchPatt2.py, as a tutorial for LLS already exists and can be found here.
You can find the current collection on the wiki at LifeWiki:Smallest Spaceships Supporting Specific Speeds, although the most up to date collection can be found on the 5S official Google Drive folder. The forum thread for the project can also be found here.
Things You Will Need
To run searchRule-matchPatt2.py, you will need to download the following files:
- The latest version of Golly
- Python 2.7
- searchRule-matchPatt2.py from the 5S Google Drive folder
- sss.py, also from the 5S Google Drive folder
- Diagonal ships.sss.txt, Oblique ships.sss.txt, and Orthogonal ships.sss.txt, all from the 5S Google Drive folder
Once you have downloaded those files, go ahead and put them in the same folder.
How to Use
First, you'll need to open Golly, as this script is made to run from within Golly.
Next, you'll need what's called the target pattern and a gen constraint, the way searchRule-matchPatt2.py works is by taking a target pattern and the gen constraint, running the target pattern for a number of gens (the gen constraint), getting the set of rules where the pattern evolves the same way for the number of gens, and then searching those rules for spaceships (or oscillators).
To input a target pattern, simply open or draw the target pattern in Golly. It is better if the target pattern is a spaceship, but other patterns can work alright as well. An example of a target pattern is this B-Heptomino spaceship:
x = 4, y = 3, rule = B3-cnqy4ejz5ekr6n8/S2-i3-ay4-ajkqw5-iqy6c7
You can find target patterns from the current 5S collection. Look for a small (3-10 cells, preferably 3) high-period ship. Or, look for B-Heptomino ships on the forums. B-Heptomino ships tend to give many results.
Once you have the target pattern, simply run searchRule-matchPatt2.py from within Golly, which you can do by going to Files -> Run script... in Golly. The script will ask you for a gen constraint; depending on the ship's period, the gen constraint could be anything less than the period. A good range for gen constraints is 15-20 gens, again, depending on the period of the ship.
searchRule-matchPatt2.py will (by default) create a text file named matchPatt2-test.txt in the same folder as all the other files which contains the results of your search.
Before You Search
Before you start searching for cool spaceships in alien rules, make sure that no one else has done the exact same search as you by reading the 5S forum thread. People there might specify the seed they used, which you can change. To change the seed, go to line 69 of searchRule-matchPatt2.py and just change the number there.
Picking Out Interesting Ships