Domača » kako » Kako narediti svojo lastno nesoglasje Bot

    Kako narediti svojo lastno nesoglasje Bot

    Discord ima odličen API za pisanje robotov po meri in zelo aktivno skupnost botov. Danes si bomo ogledali, kako začeti izdelovati svoje.

    Potrebovali boste malo znanja programiranja za kodiranje bot, tako da ni za vsakogar, ampak na srečo obstaja nekaj modulov za priljubljene jezike, zaradi katerih je zelo enostavno. Uporabili bomo najbolj priljubljeno, discord.js.

    Kako začeti

    Nadaljujte na portal Bot diska in ustvarite novo aplikacijo.

    Želeli boste zabeležiti ID stranke in skrivnost (seveda morate imeti skrivnost). Vendar, to ni bot, samo "Application". Boste morali dodati bot pod "Bot" zanka.

    Zapišite si tudi ta žeton in ga pustite v skrivnosti. V nobenem primeru ne zavezujte tega ključa Githubu. Vaš bot bo skoraj takoj vdrl.

    Namestite Node.js in Get Coding

    Če želite zagnati Javascript kodo izven spletne strani, potrebujete Node. Prenesite ga, namestite in se prepričajte, da deluje v terminalu (ali Command Prompt, saj bi vse to moralo delovati na sistemih Windows). Privzeti ukaz je »vozlišče«.

    Priporočamo tudi namestitev orodja nodemon. To je aplikacija v ukazni vrstici, ki spremlja kodo vašega bot-a in se samodejno znova zažene ob spremembah. Namestite ga lahko z izvajanjem naslednjega ukaza:

    npm i -g nodemon

    Potrebujete urejevalnik besedila. Uporabite lahko samo beležko, vendar priporočamo Atom ali VSC.

    Tukaj je naš »Hello World«:

    const Discord = require ('discord.js'); const client = novo Discord.Client (); client.on ('ready', () => console.log ('Prijavljen kot $ client.user.tag!');); client.on ('message', msg => if (msg.content === 'ping') msg.reply ('pong');); client.login ('žeton');

    Ta koda je vzeta iz primera discord.js. Razgradimo.

    • Prvi dve vrstici sta konfiguracija odjemalca. Prva vrstica uvozi modul v objekt, imenovan »Discord«, in linija 2 inicializira odjemalski objekt.
    • The client.on ('pripravljen') blok bo streljal, ko se bo bot zagnal. Tukaj je samo konfiguriran tako, da zabeleži svoje ime v terminal.
    • The client.on ("sporočilo") Blok bo sprožil vsakič, ko bo novo sporočilo poslano na kateri koli kanal. Seveda boste morali preveriti vsebino sporočila in to je tisto, kar če blok. Če je v sporočilu samo ping, potem bo odgovoril s pongom!
    • Zadnja vrstica se prijavi z logotipom iz bot-portala. Očitno je žeton na posnetku tukaj ponaredek. Nikoli ne objavljajte svojega žetona na internetu.

    Kopirajte to kodo, prilepite jo na dno in jo shranite kot index.js v namenski mapi.

    Kako zagnati bot

    Nadaljujte do terminala in zaženite naslednji ukaz:

    nodemon --inspect index.js

    To zažene skript in sproži brskalnik Chrome, do katerega lahko dostopate s tipkanjem chrome: // inspect /  v Chrome Omnibar in nato odprete »namenski devtools za Node«.

    Zdaj pa bi moral samo reči »Logged as as«, vendar sem tukaj dodal vrstico, ki bo zabeležila vse predmete sporočil, ki so bili prejeti v konzolo:

    Torej, kaj sestavlja ta objekt sporočila? Veliko stvari, pravzaprav:

    Predvsem, imate avtorja info in kanal info, ki jih lahko dostopate s msg.author in msg.channel. Priporočam ta način prijavljanja objektov v Devtools za Chromovo vozlišče in samo gledam okoli, da vidim, zakaj deluje. Morda boste našli nekaj zanimivega. Tukaj na primer bot zabeleži svoje odgovore na ukazno mizo, zato se botovi odgovori sprožijo client.on ("sporočilo"). Torej, naredil sem spambot:

    Opomba: Bodite previdni pri tem, saj se res ne želite ukvarjati z rekurzijo.

    Kako dodati Bot na vaš strežnik

    Ta del je težji, kot bi moral biti. Vzeti morate ta URL:

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

    CLIENTID zamenjajte z ID-jem odjemalca bot-a, ki ga najdete na zavihku s splošnimi informacijami na strani aplikacije. Ko je to storjeno, pa lahko, dajo povezavo do svojih prijateljev, da jih dodate bot na svoje strežnike, kot tudi.

    V redu, kaj lahko storim??

    Poleg osnovne nastavitve je vse ostalo v celoti odvisno od vas. Ampak, to ne bi bilo veliko vaje, če bi se ustavili na pozdravnem svetu, zato preglejmo nekaj dokumentacije, da boste bolje razumeli, kaj je mogoče. Predlagam vam, da preberete toliko, kot lahko, saj je zelo dobro dokumentirana.

    Priporočam dodajanje console.log (odjemalec) na začetek vaše kode in pogled na objekt odjemalca v konzoli:

    Od tu se lahko veliko naučite. Ker lahko dodate bot na več strežnikov hkrati, so strežniki del Cehov predmet zemljevida. V tem objektu so posamezni cehovi (to je ime API-ja za »strežnik«) in ti cehovski objekti imajo sezname kanalov, ki vsebujejo vse informacije in sezname sporočil. API je zelo globok in lahko traja nekaj časa, da se naučijo, vendar je vsaj enostavno nastaviti in začeti učiti.