in

Comment créer votre propre robot Discord

Discorde a une excellente API pour écrire des bots personnalisés, et un très actif communauté de robots. Aujourd’hui, nous allons voir comment commencer à créer le vôtre.

Vous aurez besoin d’un peu de connaissances en programmation pour coder un bot, donc ce n’est pas pour tout le monde, mais heureusement, il existe des modules pour les langages populaires qui le rendent très facile à faire. Nous utiliserons le plus populaire, discord.js.

Commencer

Rendez-vous chez Discord portail botet créez une nouvelle application.

Vous voudrez noter l’ID client et le secret (que vous devriez garder secrets, bien sûr). Cependant, ce n’est pas le bot, juste «l’application». Vous devrez ajouter le bot sous l’onglet « Bot ».

Notez également ce jeton et gardez-le secret. Ne confiez en aucun cas cette clé à Github. Votre bot sera piraté presque immédiatement.

Installez Node.js et obtenez le codage

Pour exécuter du code Javascript en dehors d’une page Web, vous devez Nœud. Téléchargez-le, installez-le et assurez-vous qu’il fonctionne dans un terminal (ou une invite de commande, car tout cela devrait fonctionner sur les systèmes Windows). La commande par défaut est «nœud».

Nous vous recommandons également d’installer l’outil nodemon. C’est une application de ligne de commande qui surveille le code de votre bot et redémarre automatiquement en cas de modifications. Vous pouvez l’installer en exécutant la commande suivante:

npm i -g nodemon

Vous aurez besoin d’un éditeur de texte. Vous pouvez simplement utiliser le bloc-notes, mais nous vous recommandons soit Atome ou VSC.

Voici notre « Hello World »:

const Discord = require('discord.js');
 const client = new Discord.Client();

client.on('ready', () => {
 console.log(`Logged in as ${client.user.tag}!`);
 });

client.on('message', msg => {
 if (msg.content === 'ping') {
 msg.reply('pong');
 }
 });

client.login('token');

Ce code est tiré du discord.js exemple. Décomposons-le.

  • Les deux premières lignes servent à configurer le client. La première ligne importe le module dans un objet appelé «Discord» et la deuxième ligne initialise l’objet client.
  • le client.on('ready') block se déclenchera au démarrage du bot. Ici, il est simplement configuré pour enregistrer son nom sur le terminal.
  • le client.on('message') block se déclenchera à chaque fois qu’un nouveau message est publié sur n’importe quel canal. Bien sûr, vous devrez vérifier le contenu du message, et c’est ce que le if bloc fait. Si le message dit simplement « ping », il répondra par « Pong! »
  • La dernière ligne se connecte avec le jeton du portail du bot. De toute évidence, le jeton dans la capture d’écran ici est faux. Ne publiez jamais votre jeton sur Internet.

Copiez ce code, collez votre jeton en bas et enregistrez-le sous index.js dans un dossier dédié.

Comment exécuter le bot

Rendez-vous sur votre terminal et exécutez la commande suivante:

nodemon --inspect index.js

Cela démarre le script et déclenche également le débogueur Chrome, auquel vous pouvez accéder en tapant chrome://inspect/ dans Omnibar de Chrome, puis en ouvrant des «outils de développement dédiés pour Node».

Maintenant, il devrait simplement dire «Connecté en tant que », mais j’ai ajouté ici une ligne qui enregistrera tous les objets de message reçus sur la console:

Alors, qu’est-ce qui compose cet objet de message? Beaucoup de choses, en fait:

Plus particulièrement, vous avez les informations sur l’auteur et les informations sur la chaîne, auxquelles vous pouvez accéder avec msg.author et msg.channel. Je recommande cette méthode de journalisation des objets dans les outils de développement Chrome Node, et je regarde simplement autour de vous pour voir ce qui le fait fonctionner. Vous pouvez trouver quelque chose d’intéressant. Ici, par exemple, le bot enregistre ses réponses sur la console, de sorte que les réponses du bot se déclenchent client.on('message'). Alors, j’ai fait un spambot:

: Soyez prudent avec cela, car vous ne voulez pas vraiment gérer la récursivité.

Comment ajouter le bot à votre serveur

Cette partie est plus difficile qu’elle ne devrait l’être. Vous devez prendre cette URL:

https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot

Et remplacez CLIENTID par l’ID client de votre bot, qui se trouve dans l’onglet Informations générales du page d’application. Une fois que cela est fait, vous pouvez donner le lien à vos amis pour qu’ils ajoutent également le bot à leurs serveurs.

Très bien, alors que puis-je faire d’autre?

Au-delà de la configuration de base, tout le reste dépend entièrement de vous. Mais ce ne serait pas vraiment un tutoriel si nous nous arrêtions à hello world, alors passons en revue quelques-uns des Documentation, vous avez donc une meilleure idée de ce qui est possible. Je vous suggère de lire le plus possible, car il est très bien documenté.

Je recommanderais d’ajouter console.log(client) au début de votre code, et jetez un œil à l’objet client dans la console:

De là, vous pouvez apprendre beaucoup. Comme vous pouvez ajouter un bot à plusieurs serveurs à la fois, les serveurs font partie de la Guilds objet de la carte. Dans cet objet se trouvent l’individu Guildes (qui est le nom de l’API pour «serveur») et ces objets de guilde ont des listes de canaux qui contiennent toutes les informations et listes de messages. L’API est très approfondie et peut prendre un certain temps à apprendre, mais au moins, elle est facile à configurer et à commencer à apprendre.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Le bloc-notes ne passe pas au magasin de Windows 10 après tout

Le bloc-notes ne passe pas au magasin de Windows 10 après tout

À quoi servent-ils exactement?

À quoi servent-ils exactement?