Conway's Game of Life
![](../images/CGOL/CGOL_2.png)
This week I decided to re-create the famous Conway's Game of Life (CGOL) from scratch. To do this I decided to use the Processing IDE, since I had already had plenty of experience with it in ENGG1000. Processing also has the capability to connect to microcontrollers via serial communication, which I intend to use in the future.
To do so, I used "Visual Studio Code" as my IDE with a Processing extension, so that I could use the intelli-sense features available in VS Code. In the future I intend to create a separate project capable of displaying CGOL on a stand alone microcontroller, perhaps an LED lamp of sorts.
![](../images/CGOL/CGOL_3.png)
So how did I go? Well, good and bad. The simulation plays out perfectly, except for when simulating the border tiles of the playspace. I found that, rarely, my program misjudges whether a cell should live or die, due to the fact that any cell off-screen is counted as being dead. This issue seems to only affect sliders, making them become stable on the edge of the screen, when the intended behaviour is for them to slide off-screen and disappear.
To do so, I could make it so that there are simulated cells outside all edges on the playspace. (This solution will not remove the problem, but make it MUCH less likely to affect anything on-screen). Although, I have decided that this is too much of a change to implement as of now, as it would require a complete re-write of how I am currently displaying the playspace. Perhaps a project for another day.
This project of mine is available for download here if you are interested. This includes all code, as well as a compiled version of the program. Just make sure to install java! Feel free to play around with the code provided and change it to your liking.
![](../images/CGOL/CGOL.gif)