Releases: suranwarnakulasooriya/Game_of_Life
Game of Life v.2.1.0
Changes
- Redid how neighbor indices are computed, increasing computation speed by 2x and reducing a few dozen lines.
Game of Life v2.0.0
CHANGES
- Reworked the program to work only in the terminal (replaced pygame with curses), still functions in fundamentally the same way, just lighter on resources.
- Added ability to press r to generate random noise.
- There is no longer anything to directly configure in the file itself. The grid dimensions are determined by the terminal window (with a minimum of 20x20).
TODO
- Allow user to input exact terminal dimensions (and possibly frame rate) seamlessly.
- Convert the program to a binary, allowing dimensions as arguments
Game of Life v1.1.0
Changed the method to render the live cells from looping over the entire grid to looping over the list of live cells.
Game of Life v1.0.0
First "official release", with some updates from the pre-release version. Updating cells on click has been patched to be faster than before by dividing the mouse position by the cell size to find the cell directly instead of testing every possible cell that the mouse could be on. The algorithm that computes the next state of the grid has been reworked. The original algorithm looped over every cell, however, this is unnecessary since the only cells that have a possibility of changing are the currently alive cells and their neighbors. The new algorithm loops over only these cells. This allows computation to scale linearly with the number of live cells instead of exponentially with the size of the grid like the old algorithm. The framerate of the program is now much more consistent despite changes in grid size.