Cum sa faci propriul discord Bot
Discord are un excelent API pentru scrierea de roboți personalizați și o comunitate de bot foarte activă. Astăzi vom examina cum să începeți să vă creați propria dvs..
Veți avea nevoie de un program de cunoștințe de programare pentru a codifica un bot, deci nu este pentru toată lumea, dar din fericire există câteva module pentru limbile populare care fac foarte ușor de făcut. Vom folosi cea mai populară, discord.js.
Noțiuni de bază
Se îndreaptă spre portalul bot al lui Discord și creează o nouă aplicație.
Veți dori să notați codul clientului și secretul (pe care trebuie să păstrați un secret, bineînțeles). Cu toate acestea, nu este botul, ci doar "aplicația". Va trebui să adăugați botul în fila "Bot".
Faceți notă și de acest jeton și păstrați-i un secret. Nu, în nici un caz, să-i dai cheia lui Github. Botul tău va fi hacked aproape imediat.
Instalați Node.js și obțineți codificarea
Pentru a rula codul Javascript în afara unei pagini Web, aveți nevoie de Nod. Descărcați-l, instalați-l și asigurați-vă că funcționează într-un terminal (sau Command Prompt, deoarece toate acestea ar trebui să funcționeze pe sistemele Windows). Comanda implicită este "nod".
De asemenea, vă recomandăm să instalați instrumentul nodemon. Este o aplicație pentru linia de comandă care monitorizează codul botului dvs. și se repornește automat la modificări. Puteți să o instalați executând următoarea comandă:
npm i-g nodemon
Veți avea nevoie de un editor de text. Ați putea folosi doar notepad, dar vă recomandăm fie Atom, fie VSC.
Iată "Hello World":
const Discord = cer ('discord.js'); const client = nou Discord.Client (); client.on ('ready', () => console.log ('Logat ca $ client.user.tag!');); client.on ('mesaj', msg => if (msg.content === 'ping') msg.reply ('pong');); client.login ( 'jeton');
Acest cod este luat din exemplul discord.js. Haideți să-l distrugem.
- Primele două linii trebuie să configureze clientul. Linia un importă modulul într-un obiect numit "Discord", iar linia doi iniționează obiectul client.
-
client.on ( 'gata')
blocul se va declanșa când botul pornește. Aici, este doar configurat să-și scrie numele în terminal. -
client.on ( 'mesaj')
blocul se va declanșa de fiecare dată când un nou mesaj este postat pe orice canal. Desigur, va trebui să verificați conținutul mesajului, și asta estedacă
blocul nu. Dacă mesajul spune doar "ping", atunci va răspunde cu "Pong!" - Ultima linie se conectează cu jetonul din portalul bot. Evident, tokenul din captura de ecran aici este fals. Nu vă postați vreodată jetonul pe internet.
Copiați acest cod, lipiți-l în jetonul din partea de jos și salvați-l ca și cel index.js
într-un folder dedicat.
Cum să executați botul
Mergeți la terminalul dvs. și executați următoarea comandă:
nodemon - inspect index.js
Aceasta inițiază scriptul și, de asemenea, deschide programul de depanare Chrome, la care puteți accesând tastând crom: // inspecta /
în Omnibarul Chrome și deschiderea "devtools dedicate pentru Nod".
Acum ar trebui să spuneți doar "Conectat ca," dar aici am adăugat o linie care va loga toate obiectele de mesaj primite la consola:
Deci ce face obiectul acest mesaj? O mulțime de lucruri, de fapt:
Mai presus de toate, aveți informațiile despre autor și informațiile despre canal, pe care le puteți accesa cu msg.author și msg.channel. Vă recomandăm această metodă de înregistrare a obiectelor la nodurile Chrome node devtools și doar căutați în jur pentru a vedea ce face să funcționeze. Puteți găsi ceva interesant. Aici, de exemplu, log-ul înregistrează răspunsurile sale la consola, astfel încât răspunsurile botului declanșează client.on ( 'mesaj')
. Deci, am făcut un spambot:
Notă: Aveți grijă cu acest lucru, deoarece nu doriți să vă ocupați de recurs.
Cum se adaugă botul pe serverul tău
Această parte este mai greu decât ar trebui să fie. Trebuie să luați această adresă URL:
https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot
Înlocuiți CLIENTID cu codul de client al botului dvs., care se găsește în fila cu informații generale a paginii aplicației. Odată ce acest lucru este făcut, deși, puteți da link-ul prietenilor dvs. pentru a le adăuga bot pe serverele lor, de asemenea.
Bine, deci ce altceva pot să fac?
Dincolo de configurarea de bază, orice altceva se bazează în întregime pe dvs. Dar, acest lucru nu ar fi mult de un tutorial dacă am oprit la salut lume, așa că haideți să trecem peste o parte din documentație, astfel încât să aveți o idee mai bună despre ceea ce este posibil. Vă sugerez să citiți cât de mult puteți, deoarece este foarte bine documentat.
Mi-ar recomanda adăugarea console.log (client)
la începutul codului dvs. și să aruncați o privire asupra obiectului client din consola:
De aici, puteți învăța multe. Deoarece puteți adăuga un bot la mai multe servere simultan, serverele fac parte din breslelor
obiect de hartă. În acest obiect sunt Guild-urile individuale (care este numele API-ului pentru "server"), iar acele obiecte ale breslei au liste de canale care conțin toate informațiile și listele de mesaje. Aplicația API este foarte profundă și poate dura ceva timp pentru a învăța, dar cel puțin este ușor de configurat și de învățat.