Aller au contenu
Accueil

2026, seulC++17 · console · zéro dépendance

laying_grass

Un jeu de placement de tuiles inspiré de « The Devil's Plan », écrit en C++17 pur : bibliothèque standard uniquement, jusqu'au parseur JSON.

Zéro dépendance, littéralement.

Le jeu lit ses 96 formes de tuiles dans un fichier JSON. Importer une bibliothèque pour lire un seul fichier aurait été plus rapide à écrire ; le parseur est écrit à la main. C'est la décision qui résume l'esprit du projet, et celle qui apprend le plus.

De deux à neuf joueurs, sur une grille de 20 × 20 ou de 30 × 30 selon l'effectif, neuf tours chacun. Les tuiles tournent et se retournent. Gagne celui qui possède le plus grand carré plein en fin de partie ; à égalité, le plus grand territoire départage.

Une partie en cours dans le terminal : la grille, les tuiles disponibles et le score des joueurs.
Une partie en cours, telle que le programme la dessine dans le terminal.

Architecture

L'architecture

Une séparation nette entre les règles, la validation des placements, les algorithmes et l'affichage. Game tient la logique, Validator décide si un coup est légal, Algorithms porte la recherche du plus grand carré et le calcul de connexité, Board gère la grille et les territoires. RAII, enum class, constexpr, STL : les outils du langage plutôt que des rustines.

Trois mécaniques de bonus s'ajoutent au placement : les coupons d'échange, qui laissent choisir parmi les cinq tuiles suivantes ; les pierres, qui bloquent un adversaire ; et l'annexion, qui prend une case du territoire d'en face.

Le dépôt est documenté à part : prise en main, architecture et décisions d'implémentation, règles détaillées, arborescence et dépendances entre modules.

Suite