Hogyan készítsd el a saját szégyent Bot

Tartalomjegyzék:

Hogyan készítsd el a saját szégyent Bot
Hogyan készítsd el a saját szégyent Bot

Videó: Hogyan készítsd el a saját szégyent Bot

Videó: Hogyan készítsd el a saját szégyent Bot
Videó: Add fingerprint gesture to any phone with out ROOT (Tap to lock, Swipe actions) - YouTube 2024, Lehet
Anonim
A Discordnak kiváló API-ja van az egyéni botok írására, és egy nagyon aktív bot közösségre. Ma megnézzük, hogyan kezdjük el a saját készítését.
A Discordnak kiváló API-ja van az egyéni botok írására, és egy nagyon aktív bot közösségre. Ma megnézzük, hogyan kezdjük el a saját készítését.

Szükséged lesz egy kis programozási ismeretre a bot kódolására, így nem mindenkinek, de szerencsére vannak olyan modulok a népszerű nyelvek számára, amelyek nagyon könnyűek. A legnépszerűbb, a discord.js-et használjuk.

Elkezdeni

Vezesse át a Discord bot botját, és hozzon létre egy új alkalmazást.

Érdemes megjegyezni az Ügyfél azonosítóját és titkát (természetesen titokban kell tartania). Ez azonban nem a bot, hanem az "Alkalmazás". A botot a "Bot" fül alatt kell hozzáadni.
Érdemes megjegyezni az Ügyfél azonosítóját és titkát (természetesen titokban kell tartania). Ez azonban nem a bot, hanem az "Alkalmazás". A botot a "Bot" fül alatt kell hozzáadni.
Jegyezd fel ezt a jelképet is, és tartsd titokban. Ne tegye semmilyen körülmények között ezt a kulcsot Githubnak. A botot szinte azonnal feltörik.
Jegyezd fel ezt a jelképet is, és tartsd titokban. Ne tegye semmilyen körülmények között ezt a kulcsot Githubnak. A botot szinte azonnal feltörik.

Telepítse a Node.js és a Get Coding alkalmazást

Ha a Javascript-kódot egy weboldalon kívül kívánja futtatni, akkor Node-ot kell megadnia. Töltse le, telepítse, és győződjön meg róla, hogy működik egy terminálon (vagy parancssorban, mert mindeznek Windows rendszereken kell működnie). Az alapértelmezett parancs "csomópont".

Javasoljuk továbbá a nodemon eszköz telepítését is. Ez egy parancssori alkalmazás, amely figyeli a botod kódját, és automatikusan újraindul a változtatásokon. A következő parancs futtatásával telepíthető:

npm i -g nodemon

Szüksége lesz szövegszerkesztőre. Csak jegyzettömböt használhat, de javasoljuk Atom vagy VSC.

Itt van a "Hello World":

Image
Image

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');

Ez a kód a discord.js példából származik. Letöröljük.

  • Az első két sor az ügyfél beállítása. Az 1. vonal importálja a modult egy "Discord" nevű objektumnak, és a 2. sor inicializálja az ügyfélobjektumot.
  • A

    client.on('ready')

    blokk fog lőni, amikor a bot elindul. Itt csak úgy van beállítva, hogy beírja a nevét a terminálnak.

  • A

    client.on('message')

    A blokk minden alkalommal bekapcsol, amikor egy új üzenetet küld minden csatornára. Természetesen ellenőrizni kell az üzenet tartalmát, és ez az, amit a

    if

    blokk nem. Ha az üzenet csak azt mondja, hogy "ping", akkor válaszol a "Pong!"

  • Az utolsó sor a bot-portálhoz tartozó tokennel jelentkezik be. Nyilvánvaló, hogy a képernyőn látható jelzés hamis. Soha ne tedd közzé a tokenet az interneten.

Másolja le ezt a kódot, illessze be a token aljára, és mentse el

index.js

egy dedikált mappában.

Hogyan kell futtatni a botot?

Vezesse át a terminálját, és futtassa a következő parancsot:
Vezesse át a terminálját, és futtassa a következő parancsot:

nodemon --inspect index.js

Ez elindítja a szkriptet, és fel is szerzi a Chrome hibakeresőt, amelyet a gépeléssel elérhet

chrome://inspect/

a Chrome Omnibárjába, majd megnyitja a "dedikált devtools for Node" -ot.

Most csak azt mondja: "be van jelentkezve , "De itt hozzáadtam egy sort, amely a konzolhoz kapott összes üzenetobjektumot naplózza:

Tehát mi alkotja ezt az üzenet objektumot? Rengeteg dolog, valójában:
Tehát mi alkotja ezt az üzenet objektumot? Rengeteg dolog, valójában:
Legfőképp megvan a szerzői információ és a csatorna információ, melyeket az msg.author és msg.channel segítségével érhet el. Ajánlom ezt a módszert az objektumok naplózására a Chrome Csomópont devtooljaihoz, és csak vigyázok arra, hogy lássam, mi működik. Találhatsz valami érdekeset. Itt például a bot beírja válaszaira a konzolt, így a bot válaszait kiváltja
Legfőképp megvan a szerzői információ és a csatorna információ, melyeket az msg.author és msg.channel segítségével érhet el. Ajánlom ezt a módszert az objektumok naplózására a Chrome Csomópont devtooljaihoz, és csak vigyázok arra, hogy lássam, mi működik. Találhatsz valami érdekeset. Itt például a bot beírja válaszaira a konzolt, így a bot válaszait kiváltja

client.on('message')

. Tehát egy spambotot készítettem:

Image
Image

jegyzet: Vigyázz, mert nem igazán akarsz foglalkozni a rekurzióval.

Hogyan lehet hozzáadni a botot a kiszolgálóhoz?

Ez a rész keményebb, mint amilyennek lennie kellene. Ezt az URL-t kell átvenni:
Ez a rész keményebb, mint amilyennek lennie kellene. Ezt az URL-t kell átvenni:

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

És helyezze a CLIENTID-et a bot ügyfél-azonosítójával, amely megtalálható az alkalmazás oldal általános információs lapján. Miután ez megtörtént, megadhatod a barátainak a linket, hogy hozzáadják a botot a szervereikhez is.

Rendben, akkor mit tehetek?

Az alapbeállításon túlmenően, bármi mást tenned kell. De ez nem lenne sok a bemutató, ha megálltunk a hello világban, szóval menjünk át néhány dokumentációra, így jobb ötlete van a lehetséges lehetőségekről. Javaslom, hogy olvassa el annyit, amennyit csak tud, mivel nagyon jól dokumentált.
Az alapbeállításon túlmenően, bármi mást tenned kell. De ez nem lenne sok a bemutató, ha megálltunk a hello világban, szóval menjünk át néhány dokumentációra, így jobb ötlete van a lehetséges lehetőségekről. Javaslom, hogy olvassa el annyit, amennyit csak tud, mivel nagyon jól dokumentált.

Azt javaslom, hogy adjunk hozzá

console.log(client)

a kód megkezdéséhez, és nézze meg az ügyfélobjektumot a konzolban:

Innen sokat tanulhat. Mivel egyszerre több szervert is felvehet egy botra, a szerverek a
Innen sokat tanulhat. Mivel egyszerre több szervert is felvehet egy botra, a szerverek a

Guilds

térkép objektum. Ebben a objektumban az egyes céhek (az API neve a "kiszolgálónak"), és azok a céhek objektumok tartalmaznak csatornalistákat, amelyek tartalmazzák az összes információt és üzenetlistát. Az API nagyon mély, és eltarthat egy ideig a tanuláshoz, de legalább könnyű beállítani és elkezdeni a tanulást.

Ajánlott: