Conway's game of life is a 0 player game based on a self generating automata that self generates based on a set of rules. We adapted it to mobile devices that allows players to create/kill cells. It is based on a distributed system where players can arbitrarily join an existing game and propagate their effects to the ongoing game.

The actual game runs in the server and all events on mobile devices are propagated to it via web socket based communication. The changes are broadcast-ed to all the connected users.

The server side is written in python and runs on a django instance that uses channels to establish a mutliuser-chat based protocol. The events on android are sent to the server and server projects the game at a rate of 10FPS. This means each second the game state is updated 10 times and the state is broadcast-ed to the connected devices.

On the client side, we used LiveData architecture provided by android to optimally render about 10^3 image views/second.

Share this project: