Règles (board.py, positions) → IA (negamax, tout l'arbre) : coups légaux
IA (negamax, tout l'arbre) → Livre de coups (book.json) : calculé une fois
Livre de coups (book.json) → Fiche du site (JavaScript, sans Python)
Terminal (Python typé) → IA (negamax, tout l'arbre)
Tests (toutes les parties) → IA (negamax, tout l'arbre) : ne perd jamais
Jouer contre l'IA
L'IA joue les coups du livre calculé par le programme Python du projet : pour chacune des 5 478 positions, ses meilleurs coups. Au niveau imbattable, elle ne perd jamais.
Chargement du livre de coups…
Au clavier : les flèches déplacent la case active, Entrée ou Espace joue. Le niveau et le camp s'appliquent à la prochaine partie.
Technologies
Python
pytest
mypy
Qui fait quoi
Python
Le jeu et l'IA minimax qui ne perd jamais ; calcule aussi le livre de coups qu'utilise la fiche.
pytest
Prouve que l'IA est imbattable en essayant toutes les parties possibles.
mypy
Vérifie les types en mode strict, sur le code et sur les tests.