Hur du Gör Din Egen Oenighet Bot

0
529

Oenighet har ett utmärkt API för att skriva egna robotar, och en mycket aktiv bot gemenskapen. Idag ska vi ta en titt på hur man kan komma igång med att göra din egen.

Du kommer att behöva lite kunskap om programmering för att koda en bot, så det är inte för alla, men som tur är finns det några moduler för populära språk som gör det mycket lätt att göra. Vi kommer att använda den mest populära, discord.js.

RELATERAT: Hur man Skapar, Ställa in och Hantera Dina Oenighet Server

Komma Igång

Chef över till Osämja bot portal, och skapa en ny ansökan.

Du vill göra en anteckning av Kund-ID och secret (som du bör hålla en hemlighet, naturligtvis). Detta är dock inte bot, bara de “Program”. Du måste lägga till bot under “Bot” – fliken.

Göra en anteckning om detta token, och hålla det hemligt. Inte, under några omständigheter, begå den här tangenten för att Github. Din bot kommer att vara hackat nästan omedelbart.

Installera Node.js och Få Kodning

Att köra Javascript-kod utanför en webbsida, behöver du Nod. Ladda hem den, installera det och se till att det fungerar i en terminal (eller Kommandotolken, som allt detta ska fungera på Windows-system). Standard kommandot är “node.”

Vi rekommenderar även att du installerar nodemon verktyg. Det är ett kommando app som övervakar din bot kod och startar automatiskt på förändringar. Du kan installera det genom att köra följande kommando:

npm i-g nodemon

Du behöver en texteditor. Du kan bara använda anteckningar, men vi rekommenderar antingen en Atom eller en VSC.

Här är vår “Hello World”:

const Oenighet = require(‘discord.js’);
const klienten = new Disharmoni.Klienten();

klient.(‘klar’, () => {
konsolen.log(`Inloggad som ${klient.användaren.tag}!`);
});

klient.på (“meddelande”, msg => {
om (msg.innehåll === ‘ping’) {
msg.svar(‘pong’);
}
});

klient.logga in(‘token’);

Denna kod är tagna från discord.js exempel. Låt oss bryta ner det.

  • De två första raderna är att konfigurera klienten. Linje ett import-modulen i ett objekt som kallas “Oenighet”, och linje två initierar klienten objekt.
  • Klienten.till (“ready”) block kommer eld när bot startar upp. Här är det bara konfigureras för att logga in dess namn till terminalen.
  • Klienten.på (“meddelande”) block kommer att skjuta varje gång ett nytt meddelande skickas till någon kanal. Naturligtvis, du kommer att behöva för att kontrollera innehållet i meddelandet, och det är vad om blocket gör. Om meddelandet bara säger “ping”, då det kommer att svara med “Pong!”
  • Den sista raden loggar in med token från bot-portalen. Självklart, den token i skärmdumpen här är falska. Behöver inte ens skicka dina marker på internet.

Kopiera denna kod och klistra in i din token i botten, och spara den som index.js i en särskild mapp.

Hur man Kör Bot

Chef över till din terminal och kör följande kommando:

nodemon –inspektera index.js

Detta startar manus, och även eldar upp Chrome debugger, som du kan nå genom att skriva chrome://inspektera/ i Chrome Omnibar och sedan öppna “dedikerad devtools för Noden.”

Nu är det bara att säga “du är Inloggad som <bot-namn>”, men här jag har lagt till en linje som kommer att logga alla meddelande objekt som fått till konsolen:

Så vad gör detta meddelande objekt? En massa saker, faktiskt:

Framför allt, du har författaren info och kanal info, som du kan komma med msg.författaren och msg.kanalen. Jag rekommenderar denna metod för att logga objekt till Chrome Node devtools, och bara tittar runt för att se vad som gör det att fungera. Du kan hitta något intressant. Här, till exempel, bot loggar in sina svar till konsolen, så det bot svar utlösa klient.på (“meddelande”). Så, jag gjorde en spambot:

Obs: var försiktig med detta, som du egentligen inte vill ta itu med rekursion.

Hur man Lägger till en Bot till Din Server

Denna del är svårare än det borde vara. Du måste ta den här URL-adressen:

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

Och ersätta CLIENTID med din bot kund-ID, som finns på fliken allmän information i ansökan sida. När detta är gjort men kan du ge länken till dina vänner för att få dem att lägga till bot för deras servrar.

Okej, Så Vad Annat Kan Jag Göra?

Utöver grundläggande inställningar, något annat är helt upp till dig. Men, skulle det inte vara mycket av en handledning om vi slutade på hej världen, så låt oss gå igenom några av dokumentation, så att du har en bättre idé om vad som är möjligt. Jag föreslår att du läser igenom så mycket som du kan, eftersom det är mycket väl dokumenterat.

Jag skulle rekommendera att lägga till konsolen.log(klient) till början av din kod, och ta en titt på kundens objekt i konsolen:

Här kan du lära dig en hel del. Sedan kan du lägga till en bot till flera servrar på en gång, servrar är en del av Gillen objekt på kartan. I objektet finns det enskilda Gillen (som är API: s namn för “server”) och de guild objekt har kanal listor som innehåller all info och listor över meddelanden. API är mycket djupt, och det kan ta ett tag att lära sig, men det är åtminstone lätt att sätta upp och få igång lärande.