Discordia ha un'eccellente API per la scrittura di bot personalizzati e un file comunità bot . Oggi daremo un'occhiata a come iniziare a crearne uno tuo.
Avrai bisogno di un po 'di conoscenza di programmazione per codificare un bot, quindi non è per tutti, ma fortunatamente ci sono alcuni moduli per linguaggi popolari che lo rendono molto facile da fare. Utilizzeremo il più popolare, discord.js .
RELAZIONATO: Come creare, configurare e gestire il tuo server Discord
Iniziare
Vai a Discord's portale bot e creare una nuova applicazione.
Ti consigliamo di prendere nota dell'ID cliente e del segreto (che dovresti mantenere segreto, ovviamente). Tuttavia, questo non è il bot, solo l '"Applicazione". Dovrai aggiungere il bot nella scheda "Bot".
Prendi nota anche di questo segno e mantienilo segreto. Non eseguire in alcun caso il commit di questa chiave su Github. Il tuo bot verrà violato quasi immediatamente.
Installa Node.js e ottieni codice
Per eseguire il codice Javascript al di fuori di una pagina web, è necessario Nodo . Scaricalo, installalo e assicurati che funzioni in un terminale (o prompt dei comandi, poiché tutto ciò dovrebbe funzionare su sistemi Windows). Il comando predefinito è "node".
Si consiglia inoltre di installare lo strumento nodemon. È un'app a riga di comando che monitora il codice del tuo bot e si riavvia automaticamente in caso di modifiche. Puoi installarlo eseguendo il seguente comando:
npm e -g nodemon
Avrai bisogno di un editor di testo. Potresti semplicemente usare il blocco note, ma ti consigliamo di farlo Atom o VSC .
Ecco il nostro "Hello World":
const Discord = require ('discord.js');
const client = nuovo Discord.Client ();
client.on ('ready', () => {
console.log(`Logged in as ${client.user.tag}! `);
});
client.on ('messaggio', msg => {
if (msg.content === 'ping') {
msg.reply('pong');
}
});
client.login ('token');
Questo codice è tratto da discord.js esempio. Analizziamolo.
- Le prime due righe servono per configurare il client. La riga uno importa il modulo in un oggetto chiamato "Discord" e la riga due inizializza l'oggetto client.
-
Il
client.on ('ready')il blocco si attiverà all'avvio del bot. Qui, è solo configurato per registrare il suo nome sul terminale. -
Il
client.on ('messaggio')il blocco verrà attivato ogni volta che un nuovo messaggio viene inviato a qualsiasi canale. Ovviamente, dovrai controllare il contenuto del messaggio e questo è ciò cheSeil blocco fa. Se il messaggio dice solo "ping", risponderà con "Pong!" - L'ultima riga accede con il token dal portale del bot. Ovviamente, il token nello screenshot qui è falso. Non pubblicare mai il tuo token su Internet.
Copia questo codice, incolla il tuo token in basso e salvalo come
index.js
in una cartella dedicata.
Come eseguire il Bot
Vai al tuo terminale ed esegui il seguente comando:
nodemon --inspect index.js
Questo avvia lo script e attiva anche il debugger di Chrome, a cui puoi accedere digitando
chrome: // ispeziona /
in Omnibar di Chrome e quindi aprire "devtools dedicati per Node".
Ora, dovrebbe solo dire "Accesso eseguito come <bot-name>", ma qui ho aggiunto una riga che registrerà tutti gli oggetti messaggio ricevuti sulla console:
Quindi cosa compone questo oggetto messaggio? Molte cose, in realtà:
In particolare, hai le informazioni sull'autore e le informazioni sul canale, a cui puoi accedere con msg.author e msg.channel. Consiglio questo metodo per registrare gli oggetti nei devtools del nodo Chrome e guardarsi intorno per vedere cosa lo fa funzionare. Potresti trovare qualcosa di interessante. Qui, ad esempio, il bot registra le sue risposte sulla console, quindi le risposte del bot si attivano
client.on ('messaggio')
. Quindi, ho fatto uno spambot:
Nota : Fai attenzione, perché non vuoi davvero occuparti della ricorsione.
Come aggiungere il bot al tuo server
Questa parte è più difficile di quanto dovrebbe essere. Devi prendere questo URL:
https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot
E sostituisci CLIENTID con l'ID client del tuo bot, che si trova nella scheda delle informazioni generali del file pagina dell'applicazione . Una volta fatto questo, puoi fornire il link ai tuoi amici per far sì che anche loro aggiungano il bot ai loro server.
Va bene, quindi che altro posso fare?
Oltre alla configurazione di base, tutto il resto dipende interamente da te. Ma questo non sarebbe un gran tutorial se ci fermassimo a hello world, quindi esaminiamo alcuni dei documentazione , in modo da avere un'idea migliore di ciò che è possibile. Ti suggerisco di leggere il più possibile, poiché è molto ben documentato.
Consiglierei di aggiungere
console.log(client)
all'inizio del codice e dare un'occhiata all'oggetto client nella console:
Da qui puoi imparare molto. Poiché puoi aggiungere un bot a più server contemporaneamente, i server fanno parte di
Gilde
oggetto mappa. In quell'oggetto c'è l'individuo
Gilde
(che è il nome dell'API per "server") e quegli oggetti di gilda hanno elenchi di canali che contengono tutte le informazioni e gli elenchi di messaggi. L'API è molto profonda e potrebbe richiedere del tempo per imparare, ma almeno è facile da configurare e iniziare a imparare.