welniak / YAIoGoL

Yet Another Implementation of Game of Life

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About

Yet Another Implementation of Game of Life (YAIoGoL) is a simple implementation of Game of Life in Compose Multiplatform.

Screen.Recording.2024-01-25.at.16.24.42.mov

The game follows the classic rules.

Read more about the Game of Life: https://en.wikipedia.org/wiki/Conway's_Game_of_Life

How to run it

JVM: Clone the code and run the ./gradlew run task. Wasm: Clone the code and run the ./gradlew wasmJsRun task.

User manual

  1. Settings

    • Generation duration: pick how long each duratrion should last, can be adjusted while the game is running.
    • Grid size: pick the size of the grid; note that the grid is not wrapping around, the cells can't interact over the edges of the grid.
    • Randomize: pick a random initial state of the grid.
    • Clear grid: make all cells in the grid dead.
    • Reset view: reset the zoom and pan of the grid to the initial position.
    • Start: start the game from the current state of the grid.
    • Stop: stop the current game.
    • Pause: pause the current game.
  2. Controls

    • Left click on the cell to switch between live and dead states.
    • Hold the right mouse button and move the coursor to pan around the grid.
    • Use the scroll to zoom in and out the grid.

About

Yet Another Implementation of Game of Life

License:GNU General Public License v3.0


Languages

Language:Kotlin 99.5%Language:HTML 0.5%