← Retour aux projets
Projet réseau & Web · Multijoueur LAN

Local-Games — Jeux Multijoueur en Réseau Local

Suite de jeux de société classiques (Yahtzee, Morpion) conçue pour être déployée sur un réseau local d'entreprise ou domestique : parties synchronisées en temps réel via WebSockets, zéro dépendance cloud et latence réseau inférieure à 5 ms.

Échanger sur cette réalisation

🎯 1. Contexte & Problématique

Mettre en pratique la synchronisation d'événements temps réel bidirectionnels entre plusieurs navigateurs clients sans passer par un serveur cloud externe, dans un environnement réseau local isolé ou hors-ligne.

🧭 2. Objectifs techniques

  • Développer un serveur de jeu léger gérant des salons de parties simultanés
  • Implémenter la synchronisation des lancers de dés et tours de jeu via WebSockets
  • Créer une interface web adaptative responsive sans framework lourd
  • Conteneuriser l'application sous Docker avec reverse proxy Nginx

🛠️ 3. Architecture & Réalisations

Backend événementiel Node.js gérant la machine à états de chaque partie, persistance en mémoire vive pour des temps de réponse instantanés et diffusion des événements en temps réel vers tous les clients connectés.

💼 4. Rôle & Contributions

  • Modélisation de l'algorithme des règles officielles du Yahtzee (combinaisons, totaux, bonus)
  • Gestion des messages WebSockets (connexion, déconnexion, passage de tour, synchronisation)
  • Développement de l'interface graphique interactive avec animations de dés
  • Packaging sous Docker Compose pour un lancement en 1 clic sur n'importe quel poste du sous-réseau

⚡ 5. Stack technologique

Node.js WebSockets (Socket.io/ws) Nginx JavaScript vanilla Docker LAN Networking

⚖️ 6. Décisions techniques

Architecture en mémoire vive : L'absence de base de données relationnelle élimine les temps de latence d'écriture disque pour privilégier une réactivité maximale propice aux interactions de jeu.

📊 7. Résultats

Parties stables et synchronisées, testées avec succès sur maquette réseau local avec plusieurs participants simultanés depuis des ordinateurs et smartphones.

💡 8. Apprentissages clés

Maîtrise de la gestion d'états distribués, de la résilience aux pertes de paquets sur liaison Wi-Fi/Ethernet et du protocole WebSocket.

🎓 Compétences Bloc 1 associées

✓ B1.3 - Présence en ligne & Web (WebSockets temps réel) ✓ B1.5 - Mettre à disposition un service (Déploiement LAN)