Un bot Discord complet développé avec Node.js et discord.js (v14). Il inclut un système de modération avancé avec logs, un système de niveaux (XP), des mini-jeux comme le Blackjack, et un module de vote pour les assemblées générales.
/ban: Bannir un membre définitivement (avec DM automatique et Logs)./kick: Expulser un membre./mute: Exclure temporairement un membre (Timeout) avec gestion du temps (10m,1h,1j)./warn: Système d'avertissements.- Automatisme : Au bout de 3 warns, le membre est banni automatiquement.
/clear: Nettoyage de salon.quantite: Supprime un nombre précis de messages.tout: Nuke le salon (clone et supprime l'original pour un nettoyage parfait).
- Logs : Système de logs configurable via
/setlogspour garder une trace de toutes les sanctions.
- Gain d'XP : Gain d'XP aléatoire à chaque message (avec anti-spam de 1 minute).
- Level Up : Annonce automatique dans le salon
#botslors du passage de niveau (tous les 5 niveaux). /rank: Affiche une carte de profil avec le niveau, l'XP et une barre de progression.
/blackjack: Un jeu de Blackjack complet et interactif avec boutons.- Supporte les actions : Tirer, Rester, Doubler et Split (séparer les paires).
- Gestion intelligente des As (1 ou 11).
/ping: Affiche la latence réelle du bot.
/ag: Gestion des votes pour Assemblée Générale.demarrer: Lance un vote avec boutons (Pour, Contre, Neutre).arreter: Clôture le vote et génère un rapport nominatif dans les logs (qui a voté quoi).
- Node.js (Version 16.9.0 ou supérieure requise pour discord.js v14).
- Un Token de Bot Discord (via le Developer Portal).
-
Cloner le projet (ou télécharger les fichiers) :
git clone [https://github.com/votre-pseudo/nom-du-repo.git](https://github.com/votre-pseudo/nom-du-repo.git) cd nom-du-repo -
Installer les dépendances :
npm install
Cela installera principalement
discord.jsetdotenv. -
Configuration :
- Créez un fichier
.envà la racine du projet. - Ajoutez votre token dedans :
TOKEN=VOTRE_TOKEN_ICI
- (Optionnel) Vérifiez le fichier
src/config.jspour les autres réglages.
- Créez un fichier
-
Lancer le bot :
node index.js
Ce bot utilise un système de stockage local en JSON pour plus de simplicité (pas besoin de base de données SQL). Les fichiers suivants seront créés automatiquement au premier lancement :
logs.json: Sauvegarde l'ID du salon des logs par serveur.warns.json: Stocke le nombre d'avertissements par utilisateur.levels.json: Sauvegarde l'XP et le niveau des utilisateurs.votes.json: Stocke les votes en cours pour la commande/ag.
| Commande | Description | Permission Requise |
|---|---|---|
/ban [membre] [raison] |
Bannir un utilisateur | Ban Members |
/kick [membre] [raison] |
Expulser un utilisateur | Kick Members |
/mute [membre] [temps] [raison] |
Mute temporaire (Timeout) | Moderate Members |
/warn [membre] [raison] |
Avertir (Ban au 3ème) | Ban Members |
/clear quantite [nombre] |
Supprimer X messages | Manage Messages |
/clear tout |
Réinitialiser le salon (Nuke) | Manage Channels |
/setlogs [salon] |
Définir le salon des logs | Manage Guild |
/ag demarrer [sujet] |
Lancer un vote d'AG | Administrator |
/ag arreter [id_message] |
Clôturer un vote d'AG | Administrator |
/blackjack |
Jouer aux cartes | Aucune |
/rank [membre] |
Voir son niveau | Aucune |
/ping |
Voir la latence | Aucune |
- Intents : Assurez-vous d'avoir activé les "Message Content Intent", "Server Members Intent" et "Presence Intent" sur le portail développeur Discord pour que le système de niveaux et de bienvenue fonctionne correctement.
- Logs : Si vous supprimez un salon configuré pour les logs, pensez à refaire la commande
/setlogsdans un nouveau salon.