Skip to content

rishang14/ludo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

80 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation


๐ŸŽฎ Real-Time Multiplayer Ludo Game

A fully server-authoritative, real-time multiplayer Ludo game built from scratch with a custom game engine, WebSocket networking, and Redis-backed state management.

๐ŸŽฅ Video Demos


๐Ÿง  Core Highlights

  • Designed a complete Ludo game engine with turn-based rules, dice logic, and move validation
  • Implemented real-time multiplayer sync using WebSockets with strict game-room isolation
  • Built server-authoritative gameplay to prevent cheating and invalid moves
  • Modeled board state and pawn state using optimized maps for O(1) lookups
  • Implemented pawn capture, safe cells, home logic, and finish rules accurately
  • Used Redis as a shared game-state store for fast reads and atomic updates
  • Designed secure join/exit flows with per-game and per-user access validation
  • Calculated movable pawns dynamically based on dice value and pawn state
  • Implemented turn locking, dice roll permissions, and move gating
  • Built a broadcast system to sync board updates to all players instantly
  • Structured backend with clear separation: Game Manager, WebSocket Gateway, Redis Layer
  • Built frontend using React + Zustand for deterministic state updates
  • Maintained stateless HTTP APIs alongside stateful WebSocket connections

๐Ÿ› ๏ธ Notes

Every line of logic, architecture, and game rules was written manually without using AI-generated code. UI details are intentionally omitted.


๐Ÿš€ Current Focus

  • Bot player logic
  • Match lifecycle management
  • Performance and edge-case polish

โ“ Am I Hireable?

If youโ€™re hiring for backend-heavy, real-time, WebSocket-driven systems โ€” yes. This project demonstrates system design, state management, networking, and production-oriented thinking.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages