Back to projects

Simple Client-Server 2D Multiplayer

A Go-based 2D multiplayer prototype focused on low-latency movement, concurrent client handling, and real-time state broadcasting.

GolangUDPDocker
Simple Client-Server 2D Multiplayer project cover
Repository
zainokta/client-server-multiplayer
Protocol
UDP
Primary language
Go
License
MIT

This project simulates a simple multiplayer game server where multiple clients can move avatars in a shared 2D space. The README includes local run, Docker, and server test instructions.

The implementation centers on UDP networking, goroutine-based client handling, packet sequencing, disconnect monitoring, movement broadcasts, client prediction, and interpolation concepts.

  • Designed around UDP for low-latency game-state updates.
  • Supports multiple spawned clients for multiplayer simulation.
  • Includes client-side prediction and interpolation concepts.
  • Documents future paths like auth, persistence, consensus, and dead reckoning.