Skip to content
This repository has been archived by the owner on Dec 1, 2024. It is now read-only.

leomelki/LoupGarou

Repository files navigation

⚠️ Ce projet n'est plus maintenu, n'hesitez pas le forker ou à participer aux forks déjà existant. Voir cette issue. ⚠️

Table des matières

À propos

Le mode Loup-Garou est un mode inspiré du jeu de société Les Loups-Garous de Thiercelieux reprenant son fonctionnement ainsi que sa manière d'être joué, à la seule différence qu'aucun maître du jeu n'est requis, le déroulement de chaque partie étant entièrement automatisé :

  • Déroulement de la partie automatisé
  • Rôles du jeu de base, et nouveaux rôles
  • Utilisable sur n'importe quelle map

Jouer facilement

Un serveur est mis à votre disposition pour vous permettre de jouer au LoupGarou rapidement et facilement entre amis ou avec des inconnus. Vous avez juste à créer une partie et y inviter vos amis, ou à rejoindre des parties publiques.

IP: lg.leomelki.fr Version: 1.9.4

Installation

Dépendances requises

Installation classique

Minecraft 1.15.1 est requis.
Pour installer le plug-in, merci de suivre les étapes suivantes:

  • Téléchargez Spigot 1.15.1 et lancez une fois le serveur
  • Dans le dossier plugins, insérez ProtocolLib et LoupGarou.jar
  • Redémarrez votre serveur puis donnez vous les permissions administrateur (/op <votre_pseudo> dans la console)
  • Allez sur la map et ajoutez les points de spawn sur chaque dalle /lg addSpawn
  • Connectez-vous au serveur et choisissez les rôles à utiliser avec /lg roles set <ROLE> <MONTANT>
    • ⚠️ Il faut qu'il y ait autant de places dans les rôles que de joueur pour lancer une partie
  • Vous pouvez démarrer la partie avec /lg start <pseudo>
    • ⚠️ N'oubliez pas de mettre votre pseudo. Exemple : /lg start leomelki

Lien des releases : Cliquez ici

Installation avec docker (Alternative)

Vous devez avoir installé docker et docker-compose sur votre machine

Installation du serveur

docker-compose up -d --build

Démarage du serveur

Vous devez exécuter la commande suivante à chaque redémarage de votre machine avant de pouvoir continuer

docker-compose up -d

Ainsi, vous pouvez lancer le serveur en utilisant la commande suivante :

docker-compose exec loup-garou java -jar spigot.jar

Les fichiers relatifs à minecraft se situeront dans le dossier minecraft_data

Tip : Il faut accepter les conditions d'utilisations de Mojang en modifiant le fichier minecraft_data/eula.txt

Commandes

/lg roles : Retourne la liste des rôles dans la partie
/lg roles set <ID> <MONTANT> : Définit le nombre de joueurs pour un certain rôle
/lg addSpawn : Ajoute un point de spawn (emplacement de joueur)
/lg start <PSEUDO> : Lance la partie
/lg end <PSEUDO> : Arrête une partie
/lg reloadConfig : Recharge la configuration
/lg joinAll : À utiliser après avoir changé les rôles

Crédits

Aide

Par soucis de temps, nous ne pouvons pas faire de support au cas par cas, mais vous pouvez rejoindre notre serveur Discord pour trouver de l'aide auprès de la communauté.

Questions fréquentes

  • Que faire en cas de problème d'affichage (votes bloqués au dessus des têtes, etc...) ?

Cela arrive après avoir reload au cours d'une partie, tous les joueurs qui ont ce problème doivent se déconnecter et se reconnecter.

  • Pourquoi la partie ne se lance pas ?

Il faut taper la commande /lg start <PSEUDO> en mettant le pseudo d'un des joueurs qui sera présent dans la partie. Si cela ne fonctionne toujours pas, c'est parce qu'il n'y a pas suffisamment de rôles pour le nombre de joueurs, il doit y avoir le même nombre de rôles qu'il y aura de joueurs dans la partie. N'oubliez pas de taper /lg joinAll après avoir modifié la liste des rôles.

  • J'ai mal placés mes spawns ou je veux utiliser une nouvelle map, comment faire ?

Il suffit d'ouvrir le fichier plugins\LoupGarou\config.yml et de supprimer les points de spawn.

  • Puis-je mettre plusieurs fois le même rôle dans une seule partie ?

Cela est possible pour les rôles Loup-Garou, Villageois et Chasseur. D'autres rôles peuvent aussi marcher mais n'ont pas été testés avec plusieurs joueurs ayant ce rôle dans une seule partie. C'est à vos risques et périls.

  • Le tour du loup noir (ou tout autre type de loup garou) ne passe pas.

Il vous faut au minimum un loup garou normal lorsque vous mettez d'autres types de loups dans la partie.

Indications pour les développeurs

Ce plugin LoupGarou ayant été modifié de nombreuses fois, parfois dans des timings tendus, le code n'est pas très propre. Aussi, il n'est pas documenté.

Vous devez utiliser Lombok et Maven pour modifier ce projet. Vous devez aussi installer la repository Spigot avec BuildTools.

Cependant, si l'envie vous prend de modifier ou d'utiliser le code ici présent en partie, ou dans sa totalité, merci de créditer Leomelki et Shytoos. Une utilisation commerciale est cependant interdite. Merci de vous référer aux informations de license

Ajouter des rôles

Ce plugin de Loup-Garou est organisé autour d'un système d'événements, disponibles dans le package fr.leomelki.loupgarou.events.
N'ayant pas le temps de les documenter, vous devriez comprendre vous-même quand ils sont appelés.

Pour vous aider à créer des rôles, copiez des rôles ayant déjà été créés pour ainsi les modifier.

⚠️ Ce projet a été créé de façon à ce que les rôles soient (presque) totalement indépendants du reste du code (LGGame, LGPlayer...).
Merci de garder cela en tête lors du développement de nouveaux rôles : utilisez un maximum les évènements et, s'il en manque, créez-les !

Quelques classes utiles

LGGame : Contient le coeur du jeu, à modifier le minimum possible !
LGPlayer : Classe utilisée pour intéragir avec les joueurs et stocker leurs données, à modifier le minimum possible !
LGVote : Système gérant les votes.
RoleSort: Classement de l'apparition des rôles durant la nuit.

Publier un rôle

Si vous arrivez à créer un rôle, je vous invite à faire une demande de publication dans cette repo afin de les faire partager à l'ensemble de la communauté !

License

License Logo (CC BY-NC)

Creative Commons BY-NC (https://creativecommons.org/licenses/by-nc/4.0/)

Informations légales : https://creativecommons.org/licenses/by-nc/4.0/legalcode