O Discord tem uma API excelente para escrever bots personalizados e uma comunidade de bots muito ativa . Hoje vamos dar uma olhada em como começar a fazer o seu.
Você precisará de um pouco de conhecimento de programação para codificar um bot, então não é para todos, mas felizmente existem alguns módulos para linguagens populares que o tornam muito fácil de fazer. Estaremos usando o mais popular, discord.js .
Índice
Vá até o portal de bots do Discord e crie um novo aplicativo.
Você desejará anotar o ID do cliente e o segredo (que você deve manter em segredo, é claro). No entanto, este não é o bot, apenas o “Aplicativo”. Você terá que adicionar o bot na guia “Bot”.
Anote este token também e mantenha-o em segredo. Em nenhuma circunstância, envie esta chave ao Github. Seu bot será hackeado quase imediatamente.
Para executar o código Javascript fora de uma página da web, você precisa do Node . Baixe, instale e verifique se ele funciona em um terminal (ou Prompt de Comando, pois tudo isso deve funcionar em sistemas Windows). O comando padrão é “nó”.
Também recomendamos a instalação da ferramenta nodemon. É um aplicativo de linha de comando que monitora o código do seu bot e reinicia automaticamente nas alterações. Você pode instalá-lo executando o seguinte comando:
npm i -g nodemon
Você precisará de um editor de texto. Você pode apenas usar o bloco de notas, mas recomendamos Atom ou VSC .
Este é o nosso “Hello World”:
const Discord = require ('discord.js'); cliente const = novo Discord.Client (); client.on ('pronto', () => { console.log (`Conectado como $ {client.user.tag}!`); }); client.on ('mensagem', msg => { if (msg.content === 'ping') { msg.reply ('pong'); } }); client.login ('token');
Este código é retirado do exemplo discord.js . Vamos decompô-lo.
client.on('ready')
bloco irá disparar quando o bot for inicializado. Aqui, ele apenas está configurado para registrar seu nome no terminal.client.on('message')
bloqueio será disparado sempre que uma nova mensagem for postada em qualquer canal. Claro, você precisará verificar o conteúdo da mensagem, e é isso que o if
bloco faz. Se a mensagem disser apenas “ping”, ela responderá com “Pong!”Copie este código, cole seu token na parte inferior e salve-o como index.js
em uma pasta dedicada.
Vá até o seu terminal e execute o seguinte comando:
nodemon --inspect index.js
Isso inicia o script e também ativa o depurador do Chrome, que você pode acessar digitando chrome://inspect/
no Omnibar do Chrome e abrindo “devtools dedicados para Node”.
Agora, deve apenas dizer “Logged in as <bot-name>,” mas aqui eu adicionei uma linha que irá registrar todos os objetos de mensagem recebidos no console:
Então, o que constitui esse objeto de mensagem? Muitas coisas, na verdade:
Mais notavelmente, você tem as informações do autor e do canal, que podem ser acessadas com msg.author e msg.channel. Eu recomendo este método de registrar objetos para os devtools do Chrome Node, e apenas dar uma olhada para ver o que o faz funcionar. Você pode encontrar algo interessante. Aqui, por exemplo, o bot registra suas respostas no console, para que as respostas do bot sejam acionadas client.on('message')
. Então, eu fiz um spambot:
Nota : Tenha cuidado com isso, pois você realmente não deseja lidar com a recursão.
Esta parte é mais difícil do que deveria ser. Você deve pegar este URL:
https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot
E substitua CLIENTID pelo ID de cliente do seu bot, encontrado na guia de informações gerais da página do aplicativo . Assim que isso for feito, você pode fornecer o link para seus amigos para que eles adicionem o bot a seus servidores também.
Além da configuração básica, tudo o mais depende de você. Mas, isso não seria muito de um tutorial se parássemos em hello world, então vamos revisar um pouco da documentação , para que você tenha uma ideia melhor do que é possível. Eu sugiro que você leia o máximo que puder, pois está muito bem documentado.
Eu recomendaria adicionar console.log(client)
ao início do seu código e dar uma olhada no objeto cliente no console:
A partir daqui, você pode aprender muito. Como você pode adicionar um bot a vários servidores ao mesmo tempo, os servidores fazem parte do Guilds
objeto de mapa. Nesse objeto estão as Guilds individuais (que é o nome da API para “servidor”) e esses objetos de guild têm listas de canais que contêm todas as informações e listas de mensagens. A API é muito profunda e pode demorar um pouco para ser aprendida, mas pelo menos é fácil de configurar e começar a aprender.
Muitos aplicativos de limpeza estão disponíveis para Windows ao longo dos anos, mas hoje em…
Seu PlayStation 4 está congelado? Seus jogos favoritos continuam travando? Reiniciar seu PS4 pode resolver…
A popularidade das mensagens de texto significou aprender uma forma totalmente nova de comunicação. Você…
A foto dos "Pilares da Criação" tirada pelo Telescópio Espacial Hubble é uma das fotos…
O Proton Drive saiu de seu estágio beta há algumas semanas, mas o aplicativo real…
Para ver suas fotos mais de perto ou para uma edição precisa , você pode…