If-Koubou

Kuinka tehdä oman kiistely Bot

Kuinka tehdä oman kiistely Bot (Miten)

Discordilla on erinomainen käyttöliittymä kirjojen muokkaamiseen ja erittäin aktiivinen bot-yhteisö. Tänään tarkastelemme, miten pääset alkuun tehdä omia.

Tarvitset vähän ohjelmointitietoa bottien koodaamiseksi, joten se ei ole kaikille, mutta onneksi on joitain suosittujen kielten moduuleja, jotka tekevät siitä erittäin helppoa. Käytämme suosituinta, discord.js.

Päästä alkuun

Päätä Discordin bot-portaaliin ja luo uusi sovellus.

Haluat tehdä merkinnän asiakastunnuksesta ja salaisuudesta (joka tietenkin pitää pitää salaisuus). Tämä ei kuitenkaan ole botti, vain "Sovellus". Sinun on lisättävä bot boksin "Bot" -välilehdessä.

Merkitse myös tämä merkki ja säilytä se salaisena. Älkää missään tapauksessa sitouduta tätä avainta Githubiin. Sinun bot on hakkeroitu melkein heti.

Asenna Node.js ja Get Coding

Jos haluat käyttää JavaScript-koodia verkkosivun ulkopuolella, tarvitset solmua. Lataa se, asenna se ja varmista, että se toimii terminaalissa (tai komentokehote, sillä kaikki tämä pitäisi toimia Windows-järjestelmissä). Oletuskomento on "solmu".

Suosittelemme myös nodemon-työkalun asentamista. Se on komentorivisovellus, joka tarkkailee botin koodia ja käynnistyy automaattisesti muutosten yhteydessä. Voit asentaa sen suorittamalla seuraavan komennon:

npm i-g nodemonia

Tarvitset tekstieditorin. Voisit käyttää vain muistilappua, mutta suosittelemme joko Atomia tai VSC: tä.

Tässä on "Hello World":

const Discord = vaatii ('discord.js'); const client = uusi Discord.Client (); client.on ('valmis', () => console.log ('kirjautunut sisään $ client.user.tag!);); client.on ('message', msg => if (msg.content === 'ping') msg.reply ('pong');); client.login ( 'token');

Tämä koodi on otettu esimerkistä discord.js. Let's break it down.

  • Ensimmäiset kaksi riviä ovat asiakkaan määrittäminen. Rivillä yksi tuodaan moduuli kohteeksi nimeltä "Discord" ja rivillä 2 alustetaan asiakasobjekti.
  • client.on (ready) lohko sammuu, kun bot käynnistyy. Tässä se on vain määritetty kirjaamaan sen nimen päätelaitteelle.
  • client.on ( 'viesti') lohko sammuu aina, kun uusi viesti lähetetään mihin tahansa kanavaan. Tietenkin, sinun täytyy tarkistaa viestin sisältö, ja se on mitä jos estää. Jos viesti vain sanoo "ping", se vastaa "Pong!"
  • Viimeinen rivi kirjautuu sisään botssiportin osoitekirjalla. Ilmeisesti kuvassa oleva kuvake on väärennös. Älä koskaan lähetä osoitekirjaasi internetissä.

Kopioi tämä koodi, liitä se alhaalla olevaan tunnukseen ja tallenna se nimellä index.js omassa kansiossa.

Miten Bot toimii

Päätä päätteelle ja suorita seuraava komento:

nodemon - inspect index.js

Tämä käynnistää käsikirjoituksen ja käynnistää myös Chromen virheenkorjausohjelman, jonka avulla voit kirjoittaa kirjoittamalla chrome: // tarkastaa / osaksi Chromen Omnibar ja avaamalla "omistettu devtools Node."

Nyt sen pitäisi vain sanoa "kirjautunut sisään", mutta tässä olen lisännyt rivin, joka kirjaa kaikki konsoliin saapuneet viestiesineet:

Joten mikä muodostaa tämän viestin objektin? Paljon kamaa, itse asiassa:

Etenkin, sinulla on tekijän tiedot ja kanavan tiedot, joita voit käyttää msg.author ja msg.channel. Suosittelen tätä menetelmää kohteiden kirjaamisessa Chromen solmuprojekteihin ja katselemalla ympärille nähdäksesi, mikä tekee siitä toimivan. Saatat löytää jotain mielenkiintoista. Tässä esimerkiksi bot kirjaa vastauksensa konsoliin, joten bottien vastaukset käynnistyvät client.on ( 'viesti'). Joten tein spambotin:

Huomautus: Ole varovainen, sillä et todellakaan halua käsitellä rekursiota.

Miten lisätä Bot palvelimelle

Tämä osa on vaikeampaa kuin sen pitäisi olla. Sinun on otettava tämä URL:

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

Voit myös korvata CLIENTIDin sovellustosivun yleistietojen välilehdestä löytyvän asiakastunnuksesi. Kun tämä on kuitenkin tehty, voit antaa linkin ystävillesi, jotta he voivat lisätä botin palvelimiinsa.

Okei, niin mitä muuta voin tehdä?

Perusasetusten lisäksi jokin muu on täysin sinun. Mutta tämä ei olisi paljon opetusohjelmaa, jos pysähdymme hello-maailmaan, joten siirrymme joitain dokumentaatioon, joten sinulla on parempi käsitys siitä, mikä on mahdollista. Ehdotan, että voit lukea niin paljon kuin voit, koska se on hyvin dokumentoitu.

Suosittelisin lisäämään console.log (asiakas) koodin alkuun ja katsot konsolissa olevaa asiakaskohua:

Täältä voit oppia paljon. Koska voit lisätä botti useisiin palvelimiin kerralla, palvelimet ovat osa killat karttaobjektin. Tässä kohteessa ovat yksittäiset kuntat (joka on API: n nimi "palvelimelle") ja niillä on kaikki kanavaluettelot, jotka sisältävät kaikki tiedot ja viestiluettelot. Sovellusliittymä on hyvin syvä, ja voi kestää jonkin aikaa oppia, mutta ainakin se on helppo perustaa ja aloittaa oppiminen.