Cómo crear tu propio bot de Discord

Cómo crear tu propio bot de Discord

Discordia tiene una gran API para escribir bots personalizados y una muy activa comunidad de robots. Hoy vamos a ver cómo empezar a crear el tuyo propio.

Necesitará un poco de conocimiento de programación para codificar un bot, por lo que no es para todos, pero afortunadamente hay módulos para lenguajes populares que lo hacen muy fácil de hacer. Usaremos los más populares, discord.js.

Comenzar

Ir a la discordia portal de roboty cree una nueva aplicación.

Querrá escribir el ID del cliente y el secreto (que, por supuesto, debe mantener en secreto). Sin embargo, este no es el bot, solo la «Aplicación». Deberá agregar el bot en la pestaña «Bot».

También escriba esta ficha y manténgala en secreto. No valide esta clave en Github bajo ninguna circunstancia. Su bot será pirateado casi de inmediato.

Instale Node.js y obtenga la codificación

Para ejecutar código JavaScript fuera de una página web, debe Nodo. Descárguelo, instálelo y asegúrese de que funcione en una terminal (o en un símbolo del sistema, ya que todo esto debería funcionar en los sistemas Windows). El comando predeterminado es «nodo».

También le recomendamos que instale la herramienta nodemon. Es una aplicación de línea de comandos que monitorea el código de su bot y se reinicia automáticamente cuando se cambia. Puede instalarlo ejecutando el siguiente comando:

npm i -g nodemon

Necesitará un editor de texto. Puedes usar el Bloc de notas, pero te recomendamos Átomo Dónde CSV.

Aquí está nuestro «Hola mundo»:

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');

Este código se toma de discord.js Ejemplo. Vamos a analizarlo.

  • Las dos primeras líneas se utilizan para configurar el cliente. La primera línea importa el módulo en un objeto llamado «Discord» y la segunda línea inicializa el objeto cliente.
  • los client.on('ready') El bloqueo se activará cuando se inicie el bot. Aquí solo está configurado para registrar su nombre en la terminal.
  • los client.on('message') El bloque se activará cada vez que se publique un nuevo mensaje en cualquier canal. Por supuesto, tendrás que comprobar el contenido del mensaje, y eso es lo que if bloque hecho. Si el mensaje simplemente dice «ping», responderá con «¡Pong!» «
  • La última línea se conecta con el token del portal de bots. Obviamente, el token en la captura de pantalla aquí es incorrecto. Nunca publique su token en Internet.

Copie este código, pegue su token en la parte inferior y guárdelo como index.js en una carpeta dedicada.

Cómo ejecutar el bot

Vaya a su terminal y ejecute el siguiente comando:

nodemon --inspect index.js

Esto inicia el script y también inicia el depurador de Chrome, al que puede acceder escribiendo chrome://inspect/ en Omnibar de Chrome, luego abriendo «devtools dedicados para Node».

Ahora debería decir «Conectado como «, pero aquí agregué una línea que registrará todos los objetos de mensaje recibidos en la consola:

Entonces, ¿qué constituye este objeto de mensaje? De hecho, muchas cosas:

Específicamente, tiene la información del autor y la información del canal, a la que puede acceder con msg.author y msg.channel. Recomiendo este método de registro de objetos en Chrome Node Developer Tools, y simplemente mire a su alrededor para ver qué lo hace funcionar. Puedes encontrar algo interesante. Aquí, por ejemplo, el bot registra sus respuestas en la consola, para que se activen las respuestas del bot. client.on('message'). Entonces creé un spambot:

Nota: tenga cuidado con esto, ya que realmente no quiere lidiar con la recursividad.

Cómo agregar el bot a su servidor

Esta parte es más difícil de lo que debería ser. Tienes que tomar esta url:

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

Y reemplace CLIENTID con el ID de cliente de su bot, que se puede encontrar en la pestaña Información general del página de aplicación. Una vez hecho esto, puede dar el enlace a sus amigos para que también agreguen el bot a sus servidores.

Muy bien, ¿qué más puedo hacer?

Más allá de la configuración básica, todo lo demás depende completamente de usted. Pero, realmente no sería un tutorial si nos detuviéramos en hola mundo, así que repasemos algunos de los Documentación, para que tenga una mejor idea de lo que es posible. Le sugiero que lea todo lo que pueda, ya que está muy bien documentado.

Recomendaría agregar console.log(client) al comienzo de su código y mirando el objeto cliente en la consola:

A partir de ahí se puede aprender mucho. Dado que puede agregar un bot a más de un servidor a la vez, los servidores son parte del Guilds objeto de tarjeta. En este objeto está el individuo Gremios (que es el nombre de API para «servidor») y estos objetos del gremio tienen listas de canales que contienen toda la información y listas de mensajes. La API es muy detallada y puede llevar un tiempo aprenderla, pero al menos es fácil de configurar y comenzar a aprender.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas