Jouer en ligne : https://apo1024.github.io/morpion/
Jeu de Morpion à deux joueurs sur une feuille quadrillée, d'après Game.md
et le croquis morpion.jpeg.
Le plus simple : double-cliquez sur index.html. Le jeu s'ouvre dans le
navigateur, sans installation et sans Internet.
Avec un petit serveur local (nécessite Node.js 18 ou plus) :
npm startpuis ouvrez http://localhost:8080. Pour jouer depuis un téléphone ou une
tablette sur le même Wi-Fi : npm run start:lan affiche l'adresse à ouvrir.
| Règle | Valeur |
|---|---|
| Feuille | au départ 10×10, 12×12, 14×14 ou 20×10 (200 carreaux au plus) |
| Feuille extensible | un coup joué à moins de 2 lignes d'un bord ajoute 3 lignes de ce côté, jusqu'à 2 000 lignes par côté ; la feuille défile au lieu de rétrécir (désactivable) |
| Joueurs | 2, plus un mode démo où l'ordinateur joue les deux côtés |
| Marques | joueur 1 : point noir ; joueur 2 : croix bleue, posés sur les intersections |
| Effacer | impossible : un coup joué est définitif |
| Manche | gagnée en alignant 5 marques (ligne, colonne ou diagonale) |
| Set | gagné en remportant 3 manches |
| Partie | gagnée en remportant 5 sets d'affilée ; perdre un set remet votre série à zéro |
Le premier joueur change à chaque manche. Une feuille pleine sans alignement donne une manche nulle. Les nombres de manches et de sets se règlent dans « Nouvelle partie ».
« Revoir les coups » met le jeu en pause et permet de revoir la manche en cours ou une manche précédente, coup par coup (boutons, curseur ou lecture automatique). Les coups sont numérotés. Avec « Montrer les occasions de gagner », chaque intersection où un joueur gagnerait en un coup est entourée en pointillé, à sa couleur. « Revenir au jeu » reprend la partie là où elle en était. Une capture prise pendant la relecture montre la position relue.
Clavier : cliquez sur le plateau (ou Tab), choisissez une intersection avec les flèches, puis jouez avec Entrée.
- Partager le lien : copie un lien court qui rouvre la partie telle
quelle (noms, scores, coups de la manche). Créez-le depuis la version en
ligne (https://apo1024.github.io/morpion/) pour que d'autres puissent
l'ouvrir : un lien créé depuis
index.htmloulocalhostne marche que sur cet ordinateur. Chaquegit pushmet la version en ligne à jour. - Capture : enregistre une image PNG du plateau avec les noms et les scores (ou ouvre le menu de partage sur téléphone).
La partie en cours est aussi gardée dans le navigateur : fermer la page ne la perd pas.
Morpion/
├── index.html la page (structure seulement)
├── css/styles.css la présentation
├── js/core/ la logique, sans affichage (testée sous Node)
│ ├── rules.js plateau, coups, alignements, manches, sets, partie
│ ├── ai.js le joueur automatique du mode démo
│ └── share.js encodage et vérification des liens de partage
├── js/ui/ l'affichage
│ ├── theme.js couleurs et mesures du plateau
│ ├── renderer.js dessin SVG, souris, toucher, clavier, capture
│ └── app.js contrôleur : relie tout, démo, partage, sauvegarde
├── tests/ tests automatiques (node:test)
├── server.js serveur local sans dépendance
├── Game.md le cahier des charges
└── morpion.jpeg le croquis
La logique (js/core) ne touche jamais à la page : on peut changer
l'apparence sans risquer les règles, et les règles se testent seules :
npm testAucune dépendance à installer : tout repose sur le navigateur et Node.js.