Carcassonne ()

Carcassonne

Full recreation of the Carcassonne board game in C++, from scratch, with no external libraries at all, including the rendering engine. Grade: 20/20 A+ with commendation.

Solo university project at UTC. The constraint: no external libraries at all, not even for graphics. The interesting problem A Carcassonne board grows every turn, in every direction, and its final size is unknown at startup. A fixed grid is impossible: it needed custom data structures that could expand without copying everything. What's implemented • Tile placement and legal-position detection • Scoring zone detection: cities, roads, fields, monasteries • Meeple placement detection and highlighting of valid options • Multi-layer rendering in pure C++, with no graphics library • Camera control and multiplayer support The scoring algorithms are the real difficulty: a city or field can span an arbitrary number of tiles, and you must know at any moment whether the zone is closed.

Authors: Ilian A2Z

Tags

  • Academic
  • Games

Technologies

  • C/C++
  • OpenGL

Resources