← Tous les projets
Jeux
Othello
Réécriture d'un jeu de mes études : moteur en C (règles, IA minimax alpha-bêta), jouable dans le navigateur en WebAssembly.
Terminé
Sprint S17-S18 · 8 points
En bref, sans jargon pour les non-informaticiensLire le résuméRefermer
- Ce que c'est
- Le jeu d'Othello contre l'ordinateur, jouable dans la page.
- À quoi ça sert
- Un jeu de mes études, réécrit de zéro avec les méthodes d'un projet professionnel : tests automatiques, versions pour plusieurs systèmes.
- Ce que ça montre
- Un adversaire artificiel qui anticipe plusieurs coups à l'avance, et un programme rapide dont chaque règle est vérifiée.
Comment les morceaux tiennent ensemble
- Perft (nombres de référence) → Moteur (C, deux bitboards) : vérifie les règles
- IA (negamax alpha-bêta) → Moteur (C, deux bitboards)
- Moteur (C, deux bitboards) → WebAssembly (Emscripten, 4,5 Ko) : compilés par Emscripten
- WebAssembly (Emscripten, 4,5 Ko) → Fiche du site (souris, toucher, clavier) : partie, annulation
Jouer contre l'IA
Le moteur et l'IA en C du projet, compilés en WebAssembly (4,5 Ko), tournent dans votre navigateur. Les points marquent les coups possibles.
Chargement du moteur…
Au clavier : les flèches déplacent la case active, Entrée ou Espace joue. Le niveau et la couleur s'appliquent à la prochaine partie.
Technologies
Qui fait quoi
- C
- Le moteur (plateau en deux entiers de 64 bits, coups calculés par décalages de bits) et l'IA alpha-bêta.
- CMake
- Compilation et tests sous GCC, MSVC et Clang, avertissements en erreurs, avec ASan et UBSan.
- Emscripten
- Compile le moteur et l'IA en WebAssembly : on joue contre l'IA sur la fiche.
- Unity
- Les tests du plateau (perft jusqu'à 8 coups, comparé aux valeurs publiées) et de l'IA.
Definition of Done
- Code relu, diff par diff
- Tests unitaires et d'intégration verts
- CI verte sur Linux, Windows et macOS si compilé
- README, REVIEW.md et DECISIONS.md à jour
- Textes en français et en anglais
- Démo déployée et testée sur mobile