A protocol for creating off-chain turn-based games which can be verified and validated for use on-chain.
Gamechain is a framework and open protocol for creating gameplay which can be verified and matched to it’s players
The framework allows developers to code once, and in turn produce a product which can be played and verified without extra work.
Due to the nature of signed actors, wallet owners can sign wallets which act on their behalf, allowing gameplay actions to move quickly and without interruptions.
Implementations must be hosted on IPFS in order to create CIDs which are recorded into the gameplay outcomes; this allows developers to make games which do not have active validators during gameplay.
Visit https://ipfs.io/ipfs/QmWJk78DUQXcS8jrqKjMb88mMbp32Q9QJuNxmE7UXa6eU7/ to play an example checkers game and see how it works!
The framework uses two controllers which each feed the game commands into the implemented game interface.
The framework has integrated wallet ownership which allows developers to easily create games using signed actors to skip signing on each command.
During gameplay a receipt is formed out of commands signed by the enacting actor. Developers create their own commands to build and verify the gameplay outcomes.
All receipts begin with actor information and content CID versioning in order to identify where the game is played, and who are the players.
See the design diagram on how the framework is laid out: https://github.com/JaegarSarauer/GameChain/blob/main/Game_Receipt_High-Level_Design.png?raw=true
Visit this repo for an example on how the framework is implemented: https://github.com/JaegarSarauer/Checkers-GameChain