A versatile game engine supporting three classic board games: Snake & Ladder, Chess, and Ludo, implemented with Python and Pygame.
- Project Description
- Features
- Games Overview
- Data Structures Used
- Installation
- How to Play
- 👥 Team Members
- Submitted to
This project demonstrates advanced data structure implementation through three multiplayer turn-based games. Developed as part of our Data Structures course under the supervision of Eng. Moutair, it showcases:
- Queue-based turn management
- Complex move validation algorithms
- State preservation for undo/redo functionality
- Graphical user interface with Pygame
Key components include:
- Game state management
- Rule enforcement engines
- Interactive GUI
- Win condition detection
- Common Framework for all three games
- Turn Management using queues
- Undo/Redo functionality with stack
- Interactive GUI with Pygame
- Special Game Rules implemented (snakes/ladders, chess moves, ludo captures)
- Multiplayer Support (2-4 players depending on game)
Classic dice-based race to the top with:
- Random dice rolls
- Snake and ladder jumps
- 2-player turn system
Full chess implementation featuring:
- All piece movements
- Check/checkmate detection
- Piece capturing
- Undo functionality
Traditional Ludo with:
- 2-4 player support
- Token movement logic
- Safe zones and star jumps
- Token capturing
| Data Structure | Usage in Project |
|---|---|
| Queue | Player turn management |
| Stack | Undo/redo functionality |
| 2D Arrays | Board representations |
| Dictionaries | Snake/ladder mappings, piece positions |
| Graphs | Chess move validation |
| Object-Oriented | Game pieces and player management |
- Clone the repository:
git clone https://github.com/yourusername/multiplayer-game-engine.git
- Install dependencies:
pip install pygame numpy
- Run the desired game:
python snake_ladder.py python chess.py python ludo.py
- Snake & Ladder: Press spacebar to roll dice
- Chess: Click to select pieces and destinations
- Ludo: Click dice to roll, then click your token
| Member Name | Game Contribution | |
|---|---|---|
| Saif | Chess Engine | |
| Ziad | Snake & Ladder GUI | |
| Ibrahim | Snake & Ladder Engine | |
| Mohamed | Ludo Logic &GUI | |
| Jana | Connect4 Game |
- Dr. Eman Marzban & Eng. Mutair All rights reserved © 2025 to Team 07 - Systems & Biomedical Engineering, Cairo University (Class 2028)
