← Retour aux projets

Werewolf Gaming Platform

MoonCall est une adaptation web multijoueur des Loups-Garous de Thiercelieux, jouable directement dans le navigateur sans installation ni création de compte. Un narrateur vocal anime la partie en lisant à voix haute chaque changement de phase, et le jeu implémente sept rôles (Loup-Garou, Villageois, Voyante, Sorcière, Petite Fille, Cupidon, Chasseur) avec leurs mécaniques propres, de la révélation des rôles jusqu'à la victoire d'un camp.

Fonctionnalités clés

  • Parties multijoueurs en temps réel via Socket.IO, avec code de partie à 5 lettres
  • Narrateur vocal automatique à chaque changement de phase (Web Speech API)
  • Sept rôles jouables : Loup-Garou, Villageois, Voyante, Sorcière, Petite Fille, Cupidon, Chasseur
  • Configuration de la partie par le Host (nombre de loups, activation Voyante/Sorcière)
  • Anti-triche côté serveur : une seule inspection de la Voyante autorisée par nuit
  • Mécaniques dédiées : espionnage de la Petite Fille, couple de Cupidon avec mort en chaîne et troisième camp, tir immédiat du Chasseur à sa mort
  • Persistance de partie après rafraîchissement de page (rejoin automatique)
  • Détection automatique de la victoire d'un camp, y compris après les morts nocturnes
  • Gestion du lobby par le Host (expulsion d'un joueur, redémarrage de partie)

Stack technique

Next.js
Framework React utilisé pour l'interface et le routage de l'application.
Socket.IO
Communication en temps réel entre les joueurs (phases, votes) via WebSockets.
Tailwind CSS 4
Style de l'interface utilisateur.
TypeScript (tsx)
Langage utilisé pour la logique des phases, des rôles et des votes.
Web Speech API
Synthèse vocale native du navigateur utilisée pour le narrateur.
Coolify
Déploiement et hébergement de l'application.

🎮 Comment jouer

Créer une partie

  1. Ouvre l'application et clique sur "Créer une partie"
  2. Saisis ton prénom — tu deviens automatiquement le Host
  3. Partage le code à 5 lettres affiché à l'écran avec tes amis

Rejoindre une partie

  1. Clique sur "Rejoindre une partie"
  2. Saisis le code reçu et ton prénom
  3. Attends que le Host lance la partie

Déroulement d'une manche

  1. Révélation des rôles
  2. 🌙 Nuit — Les Loups votent leur victime
  3. 🔮 Nuit — La Voyante inspecte un joueur
  4. 🧪 Nuit — La Sorcière utilise ses potions
  5. ☀️ Réveil — Le village apprend les morts de la nuit
  6. 🗳️ Vote du jour — Le village vote pour éliminer un suspect
  7. 📋 Résultat — L'éliminé révèle son identité

Conditions de victoire

  • Villageois — Éliminer tous les loups-garous
  • Loups-Garous — Être en nombre égal ou supérieur aux villageois en vie

🐺 Rôles disponibles

🐺

Loup-Garou

Chaque nuit, désignez une victime avec les autres loups. Votre but : éliminer tous les villageois.

👨

Villageois

Chaque jour, débattez et votez pour éliminer un loup-garou. Votre but : trouver les loups.

🔮

Voyante

Chaque nuit, découvrez le rôle secret d'un joueur. Guidez les villageois sans vous trahir.

🧪

Sorcière

Vous possédez une potion de vie et une potion de mort. Chacune, une seule fois par partie.

👧

Petite Fille

Pendant que les loups choisissent leur victime, vous espionnez leurs votes et voyez leur identité.

💘

Cupidon

Au début de la première nuit, désignez deux joueurs comme amoureux. S'ils sont les deux derniers en vie, ils gagnent ensemble.

🏹

Chasseur

Quand vous mourez, vous emportez un joueur de votre choix dans la tombe.