Table des matières
Comment ça marche?
Prérequis
- Node.js et NPM (nous recommandons la dernière version LTS)
- Un éditeur de code (Visual Studio Code ou un autre)
- Un peu de connaissances en développement JavaScript ou TypeScript
- Oui, juste ça
Créer son bot
Créez un nouveau projet Node.js et NPM:
npm init
Installez le core du Artibot:
npm i artibot
Nous vous recommandons aussi nodemon pour faciliter le développement de votre bot:
npm i nodemon --save-dev
Mettez votre projet en mode ESM (au lieu de commonjs). Ajoutez cette ligne dans votre package.json:
{
...
"type": "module",
...
}
Créez votre fichier index.js où sera le code principal de votre bot:
// Importer le core Artibot
import Artibot from "artibot";
// Créer une nouvelle instance de bot
// Ça s'occupe tout seul de la partie avec Discord.js!
const artibot = new Artibot({
ownerId: "votre ID Discord",
testGuildId: "ID de votre serveur de test",
botName: "Nom de votre bot",
lang: "fr", // Pour que votre bot et les plugins soient en français
prefix: "!"
// Suite de la configuration...
// Vous en découvrirez plus loin dans ce guide ou dans la documentation.
});
// Démarrer le bot
artibot.login({ token: "token de bot Discord: https://discord.com/developers/applications" });
Vous devez maintenant inviter votre bot dans votre serveur. Remplacez le client_id dans l’URL suivante par celui de votre bot:
https://discord.com/api/oauth2/authorize?client_id=12345789123456789&permissions=8&scope=bot%20applications.commands
Une fois que votre bot a bien rejoint votre serveur, démarrez-le:
node index.js
Ou avec nodemon:
nodemon index.js
Votre bot est maintenant en ligne!
Bien-sûr, puisque aucun plugin n’est installé il n’y a pas encore de fonctionnalités intéressantes. Vous découvrirez plus bas dans le guide comment ajouter des plugins!
Les plugins
Plusieurs plugins open-source sont disponibles, vous pouvez donc les installer et les utiliser facilement!
Vous pouvez aussi développer vos propres plugins pour personnaliser votre bot et même les publier par la suite si vous le voulez!
Prenons par exemple le plugin Giveaways, disponible pour tous et très simple à utiliser.
Installez-le comme vous feriez avec n’importe quel module NPM:
npm i artibot-giveaways
Modifiez votre code de lancement pour ajouter un plugin (ou module, si vous préférez les apperler comme ça):
// Importer le core Artibot
import Artibot from "artibot";
// Importer le module Giveaways
import artibotGiveaways from "artibot-giveaways";
// Créer une nouvelle instance de bot
const artibot = new Artibot({
// Configuration de votre bot
});
// Ajouter le plugin au Artibot avant le démarrage
artibot.registerModule(artibotGiveaways);
// Démarrer le bot
artibot.login({ token: "token de bot Discord: https://discord.com/developers/applications" });
Aussi simple que ça!
Certains modules peuvent avoir une configuration (facultative ou obligatoire, au choix du développeur). Prenons par exemple le module Welcome, qui a une configuration assez complexe:
npm i artibot-welcome
Modifiez votre index.js:
// Importer le core Artibot
import Artibot from "artibot";
// Importer le module Giveaways
import artibotGiveaways from "artibot-giveaways";
// Importer le module Welcome
import artibotWelcome from "artibot-welcome";
// Créer une nouvelle instance de bot
const artibot = new Artibot({
// Configuration
});
// Ajouter le plugin Giveaways
artibot.registerModule(artibotGiveaways);
// Ajouter le plugin Welcome, qui a besoin d'une configuration
artibot.registerModule(artibotWelcome, {
// Configuration du module
// Voir la documentation du module pour comprendre mieux!
servers: {
"784679956717240391": {
welcome: {
activate: true,
channel: "877932737850404935",
showProfilePicture: true,
showMemberCount: true
},
farewell: {
activate: true,
channel: "877932737850404935",
showProfilePicture: false,
showMemberCount: false
}
}
}
});
// Démarrer le bot
artibot.login({ token: "token de bot Discord: https://discord.com/developers/applications" });
Un peu plus complexe car vous devez comprendre la configuration du module mais ça reste assez simple.