Conceived in 2015, the XAYA Game Channels technology is finally here in Xayaships.
This is a major technological advancement for blockchain gaming and dapps. Game channels allow games to run securely off-chain in their own space and in near real time. This makes the blockchain much more scalable to support countless games and dapps with potential for millions of transactions per second (tps).
Game channels are described in “Game Channels for Trustless Off-Chain Interactions in Decentralized Virtual Worlds” in the peer-reviewed cryptocurrency journal “The Ledger”. Game channels are private channels for groups of players that run in parallel to the main chain. They allow for dispute resolution in a purely decentralised manner with no need for a trusted 3rd party or authority. While not precisely accurate, game channels can be thought of as individual payment channels for individual games.
The first iteration of game channels is in the Xayaships game (beta). Xayaships is a true blockchain game implementation of the classic naval combat Battleship board game. In it players seek to sink each others’ ships and win.
On-chain games, such as Taurion or Treat Fighter, process turns in blocks. The average block time for the XAYA blockchain is about 30 seconds. This means that players can make a “move” once every 30 seconds. For games such as Xayaships, this makes for very slow and tedious gameplay. That is, some games are simply not suited to on-chain gameplay and need faster processing of moves.
However, with game channels, gameplay is near real time. The greatest source of “slowness” is network latency, which can vary depending upon the individual players’ internet speeds and connections. For the vast majority of games that latency is perfectly acceptable for decent gameplay.
Xayaships demonstrates how game channels work and how players can enjoy effectively real time gameplay with each other.
Currently Xayaships has no front end GUI and players must play their games from a command prompt or terminal. However, a front end is in development.
The primary purpose of Xayaships is to demonstrate how game channels are a game changing technological breakthrough for true blockchain gaming.
Developers wishing to create scalable, interesting blockchain games can use the Xayaships code as a guide to implement game channels in their own games. Full source code for Xayaships is available in the libxayagame repository in the “ships” folder here.