Board Game Center

Core Engineering
Software Development
Board Game Center

Tech Stack

C++
OOP
CMake

Description

The Board Game Center is a robust, cross-platform terminal application engineered entirely in C++. It unifies 13 distinct board game variants into a single, cohesive framework.

The architecture is deeply rooted in advanced Object-Oriented Programming principles. By utilizing templated base classes for boards, players, and UIs, the system ensures maximum code reusability and a strict separation of concerns.

Key technical implementations include the Factory design pattern for dynamic game instantiation, and a sophisticated AI system capable of multiple difficulty levels, enabling seamless Human vs. AI and AI vs. AI match-ups.

  • Engineered a scalable C++ framework supporting 13 unique game variants using templated base classes.
  • Implemented the Factory and Strategy design patterns to dynamically instantiate games and handle various player types (Human, Random, AI).
  • Designed a modular architecture with strict separation between game logic, state management, and user interface.
  • Developed an interactive, colorized console UI with robust move validation and automated win/loss/draw detection.
  • Integrated multiple AI difficulty levels, supporting complex game states and automated AI vs. AI simulations.

Page Info

Main Menu & Player Setup

Interactive console interface featuring ANSI color codes, game variant selection, and dynamic configuration for different player types.

/projects/boardgames/games-main-menu.png/projects/boardgames/setup-players.png/projects/boardgames/computer-level-menu.png

Gameplay & AI Integration

Live gameplay sessions demonstrating Human vs. AI and AI vs. AI matches with intelligent move validation.

/projects/boardgames/me-vs-hardComputer_ai.png/projects/boardgames/hardComputer_ai-vs-easyComputer_random.png

    Mohammad Abdulhakim - Software Engineer | Aspiring AI Engineer