Battle Tanks is a a P2P Distributed Battle Royale game written in Go with validation of player actions.


  • A Peer-to-peer network architecture
  • A centralized server for game discovery
  • Flooding protocol for dissemination of all actions
  • Uses client side prediction to validate every action of every player
  • Berkeley Algorithm for Clock Synchronization to prevent network congestion by old packets.
  • Uses Distributed KV store for stat collection
  • Open-ended class project for CPSC 416

More info at