Ce bot Discord permet de gérer la whitelist et le contrôle d'un serveur Minecraft hébergé sur un VPS. https://valloic.dev/work
Go to file
2025-10-21 02:13:56 +02:00
src Push structure 2025-10-21 02:13:56 +02:00
.env Push structure 2025-10-21 02:13:56 +02:00
.gitignore Push structure 2025-10-21 02:13:56 +02:00
emojis.json Push structure 2025-10-21 02:13:56 +02:00
package.json Push structure 2025-10-21 02:13:56 +02:00
README.md Push structure 2025-10-21 02:13:56 +02:00
start.js Push structure 2025-10-21 02:13:56 +02:00

Bot Discord - Accès Serveur Minecraft

Ce bot Discord permet de gérer automatiquement les demandes d'accès à un serveur Minecraft via un système de whitelist.

Fonctionnalités

🎮 Système de demande d'accès

  • Message automatique avec bouton pour demander l'accès
  • Modal pour saisir le pseudo Minecraft
  • Vérification automatique si le joueur est déjà whitelisté
  • Envoi de la demande au canal staff avec boutons Accept/Refuse

⚙️ Commandes administrateur

  • /minecraft list - Affiche la liste des joueurs whitelistés
  • /minecraft add <pseudo> - Ajoute un joueur à la whitelist
  • /minecraft remove <pseudo> - Retire un joueur de la whitelist
  • /minecraft status - Affiche le statut du serveur Minecraft
  • /setup-access - Envoie le message de demande d'accès

Installation

  1. Cloner le projet et installer les dépendances :
npm install
  1. Configurer le fichier .env : Assurez-vous que votre fichier .env contient toutes les variables nécessaires :
TOKEN=votre_token_bot_discord
CLIENT_ID=id_du_bot
OWNER_ID=votre_id_discord

SUPPORT_SERVER_ID=id_du_serveur_discord
CHANNEL_REQUEST_ACCESS_ID=id_canal_demandes_publiques
CHANNEL_ACCESS_STAFF_REQUESTS_ID=id_canal_staff_demandes

ROLE_WAITER_ID=id_role_attente
ROLE_VERIFIED_ID=id_role_verifie
ROLE_ADMIN_ID=id_role_admin

MINECRAFT_SERVER_IP=adresse:port
MINECRAFT_WHITELIST_PATH=/chemin/vers/whitelist.json
  1. Lancer le bot :
npm start

Pour le développement :

npm run dev

Structure du projet

├── start.js                           # Point d'entrée principal
├── src/
│   ├── commands/
│   │   ├── minecraft.js               # Commandes /minecraft
│   │   └── setup-access.js            # Commande /setup-access
│   ├── events/
│   │   └── ready.js                   # Événement de démarrage
│   ├── handlers/
│   │   ├── commandHandler.js          # Chargeur de commandes
│   │   ├── eventHandler.js            # Chargeur d'événements
│   │   └── interactionHandler.js      # Gestionnaire d'interactions
│   └── utils/
│       ├── accessRequestManager.js    # Gestionnaire de demandes d'accès
│       ├── minecraftServer.js         # Utilitaires serveur Minecraft
│       └── whitelistManager.js        # Gestionnaire de whitelist

Utilisation

Configuration initiale

  1. Inviter le bot sur votre serveur avec les permissions nécessaires
  2. Utiliser /setup-access dans le canal où vous voulez le message de demande d'accès
  3. Configurer les rôles dans votre serveur Discord selon les IDs dans le .env

Workflow des demandes

  1. Utilisateur : Clique sur le bouton "Demander l'accès"
  2. Utilisateur : Remplit le modal avec son pseudo Minecraft
  3. Système : Vérifie si le joueur est déjà whitelisté
  4. Système : Envoie la demande au canal staff
  5. Staff : Clique sur "Accepter" ou "Refuser"
  6. Système : Ajoute le joueur à la whitelist (si accepté) et notifie l'utilisateur

Commandes administrateur

Seul l'OWNER_ID peut utiliser les commandes /minecraft :

  • Lister les joueurs : /minecraft list
  • Ajouter un joueur : /minecraft add pseudo:NomDuJoueur
  • Retirer un joueur : /minecraft remove pseudo:NomDuJoueur
  • Status du serveur : /minecraft status

Permissions requises

Le bot a besoin des permissions Discord suivantes :

  • Send Messages - Envoyer des messages
  • Use Slash Commands - Utiliser les commandes slash
  • Embed Links - Incorporer des liens
  • Manage Messages - Gérer les messages
  • Read Message History - Lire l'historique des messages

Notes importantes

  • Le fichier whitelist.json doit être accessible en lecture/écriture
  • Le serveur Minecraft doit être accessible pour la vérification du statut
  • Les IDs Discord dans le .env doivent être valides
  • Le bot vérifie automatiquement les pseudos via l'API Mojang

Dépannage

Le bot ne répond pas aux commandes

  • Vérifiez que le TOKEN est correct
  • Vérifiez que les permissions sont accordées
  • Consultez les logs dans la console

Erreurs de whitelist

  • Vérifiez le chemin vers whitelist.json
  • Vérifiez les permissions de fichier
  • Assurez-vous que le format JSON est valide

Problèmes de serveur Minecraft

  • Vérifiez que l'adresse IP et le port sont corrects
  • Assurez-vous que le serveur est en ligne
  • Vérifiez les paramètres du pare-feu