๐น๏ธ Xonix Game โ Data Structures Project
A fully-featured C++ arcade-style game developed from scratch as part of the Data Structures Course at FAST University Islamabad. Showcasing custom implementations of core data structures integrated into engaging gameplay with SFML.
๐ฏ Project Goals
- Apply core Data Structures concepts in a real-world game setting
- Build a custom backend for user handling, scoring, matchmaking, and gameplay
- Showcase modular, clean, and well-documented C++ code
- Create a multi-mode game with persistent data and social features
๐งฉ Features
- ๐ฎ Classic Xonix Gameplay โ Draw lines to capture territory and avoid enemies
- ๐งโ๐คโ๐ง Single & Multiplayer Modes โ Solo play or local two-player co-op
- ๐ Login & Registration System โ Secure, file-based authentication
- ๐ Scoring & Bonuses โ Multipliers, rewards, and power-ups
- ๐ค Player Profiles โ Username, points, history, inventory, themes
- ๐ค Friend System โ Requests handled with linked lists
- ๐ Leaderboard โ Top 10 players tracked with a Min-Heap
- ๐ค Matchmaking โ Priority Queue for score-based pairing
- ๐ช Game Room Simulation โ Queue-based player pairing
- ๐พ Save & Load Game โ Persistent game states with resume capability
- ๐จ Inventory & Themes โ Custom themes managed with an AVL Tree
๐งฑ Data Structures Implemented
Feature | Data Structure |
---|---|
Game Board | 2D Array |
Player & Enemies | Dynamic Array |
Friend System | Linked List |
Fast Player Lookup | Hash Table |
Leaderboard | Min-Heap |
Matchmaking | Priority Queue |
Game Room | Queue |
Themes / Inventory | AVL Tree |
Game Save / Load | Linked List + File I/O |
๐ ๏ธ Built With
- ๐ป Language: C++
- ๐จ Graphics: SFML (Simple and Fast Multimedia Library)
- ๐ Persistence: File handling (structured text files)
- ๐ง Custom Data Structures: Implemented from scratch (no STL)
๐ How to Run
- ๐ฅ Download or clone the repository
- ๐ Extract the folder and open the
.sln
file in Visual Studio - ๐ง Set configuration to Release Mode
- โถ๏ธ Build and Run the project
- ๐งฉ Ensure SFML is properly linked (already configured in the solution)
๐ฆ Repository
๐ View on GitHub
Academic Project โ Developed at FAST University Islamabad. Donโt forget to โญ the repo if you like it ๐