Avrai bisogno di un po 'di conoscenza della programmazione per codificare un bot, quindi non è per tutti, ma per fortuna ci sono alcuni moduli per le lingue popolari che lo rendono molto facile da fare. Useremo il più popolare, discord.js.
Iniziare
Vai al portale bot di Discord e crea una nuova applicazione.
Installa Node.js e ottieni la codifica
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 è "nodo".
Si consiglia inoltre di installare lo strumento nodemon. È una app a linea di comando che controlla il codice del tuo bot e si riavvia automaticamente alle modifiche. Puoi installarlo eseguendo il seguente comando:
npm i -g nodemon
Avrai bisogno di un editor di testo. Potresti semplicemente usare il blocco note, ma raccomandiamo Atom o VSC.
Ecco il nostro "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');
Questo codice è preso dall'esempio discord.js. Scopriamolo.
- Le prime due righe sono per configurare il client. La prima linea 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('message')
il blocco si attiva ogni volta che un nuovo messaggio viene pubblicato su qualsiasi canale. Ovviamente, dovrai controllare il contenuto del messaggio, e questo è ciò che il
if
il blocco fa. Se il messaggio dice solo "ping", allora risponderà con "Pong!"
- L'ultima linea accede con il token dal portale bot. Ovviamente, il token nello screenshot qui è falso. Non pubblicare mai il tuo token su Internet.
Copia questo codice, incolla il token in basso e salvalo come
index.js
in una cartella dedicata.
Come eseguire il Bot
nodemon --inspect index.js
Questo avvia lo script e attiva anche il debugger di Chrome, a cui puoi accedere digitando
chrome://inspect/
in Omnibar di Chrome e poi aprendo "devtools dedicati per Nodo".
Ora, dovrebbe solo dire "Connesso come
client.on('message')
. Quindi, ho creato uno spambot:
Nota: Stai attento con questo, perché non vuoi davvero affrontare la ricorsione.
Come aggiungere il Bot al tuo server
https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot
E sostituire CLIENTID con l'ID client del proprio bot, trovato nella scheda delle informazioni generali della pagina dell'applicazione. Una volta fatto questo, puoi dare il link ai tuoi amici per fare in modo che aggiungano il bot ai loro server.
Bene, quindi che altro posso fare?
Consiglierei di aggiungere
console.log(client)
all'inizio del codice e dando un'occhiata all'oggetto client nella console:
Guilds
oggetto della mappa. In quell'oggetto ci sono le singole Gilde (che è il nome dell'API per "server") e quegli oggetti gilda hanno liste di canali che contengono tutte le informazioni e gli elenchi di messaggi. L'API è molto profonda e potrebbe richiedere del tempo per apprendere, ma almeno è facile da configurare e iniziare a imparare.