Guilded — Chat for Gaming Communities

База знаний о хостинге и серверных технологиях Timeweb Community: Создаем бота для Discord (NodeJS + Docker). Опыт наших пользователей поможет разобраться с любым вопросом из IT-сферы.

Here are 181 public repositories matching this topic…

User friendly dashboard/tool for discord bot developpers to manage servers

  • Updated Jun 20, 2021
  • JavaScript

ghostybot

A feature-rich Discord bot with +200 commands for Discord servers. Economy, util, fun, music, admin and more! Built with Next.js and Discord.js

  • Updated Jul 1, 2021
  • TypeScript

Discord.js Economy bot using Quick.db (DJS V11)

  • Updated Mar 25, 2021
  • JavaScript

A boilerplate example bot with command handler and reloadable commands. Updated and Maintained by the Idiot’s Guide Community

  • Updated Jun 13, 2021
  • JavaScript

Misaki is Discord Bot designed for communities with commands ranging from gif based anime reactions, to head scratching trivia commands.

  • Updated Oct 18, 2018
  • JavaScript

RoboLiam

A multi-purpose Discord bot made with discord.js

  • Updated May 20, 2021
  • JavaScript

Easily Build a Discord Bot With No Code (App + API)

  • Updated Jun 12, 2021
  • TypeScript

An Open Source version of Cryptonix X and a basic frame for any discord.js bot

  • Updated May 21, 2021
  • JavaScript
glynnw

fcfs-bot

A Discord bot that enhances First Come, First Serve in voice channel waiting rooms.

  • Updated May 30, 2021
  • JavaScript

A multipurpose bot to cover all your needs.

  • Updated Nov 6, 2020
  • JavaScript

A Discord.js bot using MongoDB (npm package Mongoose) to create a bot multipurpose Discord.js

  • Updated Jun 30, 2021
  • JavaScript

discord.js modmail with rich features

  • Updated Jun 22, 2021
  • JavaScript

I dunno, another Discord bot that’s unique n’ stuff

  • Updated Jul 2, 2021
  • JavaScript

tutorial-bot

Discord.js v12 Basic Bot with Commands

  • Updated Oct 23, 2020
  • JavaScript

Gyromina

Gyromina, a multipurpose Discord bot with fun + function all in one

  • Updated Jul 2, 2021
  • JavaScript

automod-bot

  • Updated Jun 30, 2021
  • JavaScript

Bot

Simple multi-purpose Discord bot made with TypeScript

  • Updated Jun 23, 2021
  • TypeScript

MassDM, a bot to mass DM members of a Discord server.

  • Updated Jun 7, 2021
  • JavaScript

Discord.js Leveling system using Quick.db (DJS V11)

  • Updated Dec 19, 2020
  • JavaScript

A Open-Source Discord Bot coded in Discord.js made for beginners! Lots of Commands Included Such as Fun, Image Manipulation and Utility Command etc!

  • Updated Jul 2, 2021
  • JavaScript
  • Updated Jun 9, 2021
  • JavaScript

Discord.js Ticket bot using Quick.db (DJS V11)

  • Updated Apr 29, 2021
  • JavaScript

Helping servers grow exponentially with a simple solution. Make your server active and entertain your community with a simple solution — A unique discord bot, Star!

  • Updated Jun 30, 2021
  • JavaScript

An easy to use and customize discord music bot. Support YouTube, SoundCloud, and 700+ more sites

  • Updated Apr 30, 2021
  • JavaScript

Project-Zero

A multifunctional Discord Bot made on discord.js-commando framework.

  • Updated Jan 27, 2021
  • JavaScript

Lightweight Discord.js level system with rewards, based on Mee6’s level system.

  • Updated Sep 24, 2018
  • JavaScript

A welcomer bot for discord written in discord.js v12 very simple to use with code and deployment instructions

  • Updated Jun 28, 2021
  • JavaScript

Discord bot that takes care of nickname invite spammers

  • Updated Oct 7, 2020
  • JavaScript

I’m a discord bot that can generate a random Minesweeper game using spoiler tags, for anyone to play! Use the command «!minesweeper» or «!ms» to generate a game!

  • Updated Jan 19, 2021
  • JavaScript

Создание Discord-бота, используя библиотеку discord.js | Часть №1 +12

JavaScript, Из песочницы, Node.JS madrobots.png
AliExpress RU&CIS

Введение

В этой статье я подробно расскажу о том, как работать с библиотекой

discord.js

, создать своего Discord-бота, а также покажу несколько интересных и полезных команд.

Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая музыкой, системой экономики и распознаванием голоса ботом.

Начало работы

Если вы уже знакомы с приведёнными ниже материалами, — смело можете пролистать этот раздел.

Установка среды разработки

Для начала работы с кодом нам нужно установить среду разработки, это может быть:

  • Sublime Text
  • Notepad++
  • Atom
  • Brackets
  • InteliJ Idea
  • Eclipse
  • Visual Studio Code

… и так далее.

Среда разработки выбирается по удобству использования и практичности, она у вас может быть любая, но мы рассмотрим её на примере Visual Studio Code, так как она является одной из самых приемлемых для новичков, а также для опытных программистов.

Для установки переходим по

этой

ссылке.

wqmclimilswdo-nsmq7y6xwtvme.png

Выбираем свою операционную систему и запускаем скачивание.

Установка среды выполнения

Для создания бота мы используем среду выполнения

node.js

. Для её установки нам необходимо перейти на

этот

сайт.

x3_v7nv1utkyecxtffkzeskru-u.png

На данный момент нас интересует

версия долгосрочной поддержки (LTS)

, скачиваем её.

Установка полезных расширений

В

Visual Studio Code

присутствует возможность устанавливать расширения.

Для этого, кликните по отмеченной ниже иконке.

gdicepm03demqesqz7ipb3fjk6o.png

В открывшемся окне вписываем название название/идентификатор нужного нам расширения, после чего устанавливаем его.

-kozweealobutd0ojcdoljqknye.png

Из

полезных

расширений могу отметить:

  1. Discord Presence — расширение, позволяющее отображать рабочую область и файл, в котором вы работаете в вашей игровой активности (функция работает только при использовании приложения Discord).

    Идентификатор расширения: icrawl.discord-vscode

    xzp5mgrdfyy8etswpgxta1vxa5u.png

  2. Code runner — расширение, с помощью которого предоставляется возможность запускать определённые фрагменты кода.
    Идентификатор расширения: formulahendry.code-runner

Создание бота

Теперь, когда вы установили все нужные компоненты, мы можем приступить к

созданию самого бота.

Здесь всё просто. Переходим на

портал разработчиков

и нажимаем на кнопку с надписью

«New Application»

— она находится в правом верхнем углу.

В открывшемся окне вписываем имя бота, после чего, нажимаем на кнопку с надписью

«Create»

.

3n1-hhikrwixv96nqavp2jyxccg.png

На этой странице мы можем изменить имя бота, загрузить для него иконку, заполнить описание.

Теперь наша задача — воплотить бота в жизнь. Для этого переходим во вкладку

«Bot»

.

ytgu6lr0pmu1o9wpkdbii9axd-u.png

Нажимаем на кнопку с надписью

«Add Bot»

и воплощаем бота в жизнь.

Поздравляю! Вы создали аккаунт для вашего бота. Теперь у него есть тег, токен, ник и иконка.

Подготовка к написанию кода

После создания аккаунта для бота, мы должны установить нужные пакеты и модули, чтобы в дальнейшем он корректно работал.

Первым делом создаём папку, после чего открываем её в VS Code

(Файл > Открыть папку)

/

(Ctrl + K Ctrl + O)

Далее нам нужно открыть терминал

(Терминал > Создать терминал)

/

(Ctrl + Shift + `)

f6utpxkzpphmqnxzszq6wf2igve.png

Теперь мы должны создать файл с неким «описанием» нашего бота, сделаем это через терминал.

Вписываем данную строку в терминал и нажимаем Enter:

npm init

После каждой появившейся строки нажимаем Enter или вписываем свои значения.

Значения в этом файле можно будет изменить в любой момент.

Далее, мы должны поочерёдно вводить в терминал эти строки:

npm install
npm install discord.js
«Install»

также можно сокращать в «I», но необязательно.

Итого, если вы следовали инструкциям и всё сделали правильно, в вашей папке должны были появиться 3 объекта:

w0swkcf20rdsrahi3jyxpepur4o.png

Написание кода

Об удобстве написания кода

Для того, чтобы наш бот появился в сети и мог реагировать на команды, нам нужно написать для него код.

Существует множество вариантов для его написания: используя один файл, два, несколько, и т.д

Мы рассмотрим вариант с двумя файлами, так как его использовать очень легко и удобно, но у каждого варианта есть свои недостатки — например, у этого недостатком является сложность в написании начального кода.

Но не волнуйтесь, весь код вам писать не придётся.

О хранении данных

Для начала, нам нужно где-то хранить основные параметры и информацию о боте.

Мы можем сделать это двумя способами:

  1. Создать отдельный файл
  2. Записать всё в константы

Я не советую вам использовать второй вариант, так как в будущем вам придётся работать с большим объёмом информации, и такая запись будет доставлять неудобства.

Разберём хранение параметров в отдельном файле.

Итак, создаем файл

config.json

Вставляем в него следующий код:

{ «token» : «Ваш_токен», «prefix» : «Ваш_префикс»}
*

Для получения токена зайдите на

портал разработчиков

, перейдите во вкладку

«Bot»

и скопируйте его.

pj6epiqfg0fnhjbx8yu5ncn7ev0.png

*

Самым распространённым среди разработчиков префиксом является

!

Далее нам нужно создать файл

bot.js

и вставить в него данный код:

const Discord = require(‘discord.js’); // Подключаем библиотеку discord.jsconst robot = new Discord.Client(); // Объявляем, что robot — ботconst comms = require(«./comms.js»); // Подключаем файл с командами для ботаconst fs = require(‘fs’); // Подключаем родной модуль файловой системы node.js let config = require(‘./config.json’); // Подключаем файл с параметрами и информациейlet token = config.token; // «Вытаскиваем» из него токенlet prefix = config.prefix; // «Вытаскиваем» из него префиксrobot.on(«ready», function(){ /* Бот при запуске должен отправить в терминал сообщение «[Имя бота] запустился!» */ console.log(robot.user.username + » запустился!»);});robot.on(‘message’, (msg) => { // Реагирование на сообщения if(msg.author.username != robot.user.username && msg.author.discriminator != robot.user.discriminator){ var comm = msg.content.trim()+» «; var ok = false; var comm_name = comm.slice(0, comm.indexOf(» «)); var messArr = comm.split(» «); for(comm_count in comms.comms){ var comm2 = prefix + comms.comms[comm_count].name; if(comm2 == comm_name){ comms.comms[comm_count].out(robot, msg, messArr); } } } });robot.login(token); // Авторизация бота

Теперь создаём файл

comms.js

, в нём будут сами команды.

В нём должен быть следующий код:

const config = require(‘./config.json’); // Подключаем файл с параметрами и информациейconst Discord = require(‘discord.js’); // Подключаем библиотеку discord.jsconst prefix = config.prefix; // «Вытаскиваем» префикс// Команды // function test(robot, mess , args) { mess.channel.send(‘Test!’) } // Список комманд //var comms_list = [ {name: «test», out: test, about: «Тестовая команда»}];// Name — название команды, на которую будет реагировать бот// Out — название функции с командой// About — описание команды module.exports.comms = comms_list;

Чтобы добавить больше команд — просто объявляйте больше функций и добавляйте их в список, например:

const config = require(‘./config.json’);const Discord = require(‘discord.js’);const prefix = config.prefix;const versions = config.versions;// Команды // function test(robot, mess, args) { mess.channel.send(«Тест!») } function hello(robot, mess, args) { mess.reply(«Привет!») } // Список комманд //var comms_list = [ {name: «test», out: test, about: «Тестовая команда»}, {name: «hello», out: hello, about: «Команда для приветствия!»}}module.exports.comms = comms_list;

И вот, мы вышли на финишную прямую!

Осталось всего ничего — запустить бота.

Для этого открываем терминал и вставляем в него следующую строку:

node bot.js
fmpdxevmkqddh0ta9na7nlkvvrg.png

Готово! Бот запущен и вы можете им пользоваться, ура!

Чтобы пригласить бота на свой сервер, воспользуемся нам уже известным

порталом разработчиков

.

Перейдём во вкладку OAuth2, пролистаем чуть ниже, выберем

«Bot»

и отметим нужные боту привилегии.

Теперь осталось скопировать ссылку-приглашение и добавить бота на свой сервер.

a076lqe-lqbbgia5ceumhbvqp_a.png

Как вывести ссылку-приглашение в терминал, при запуске бота?

Существует два способа:

  1. Заранее отметить нужные привилегии.

    Для этого, сначала мы должны скопировать ссылку-приглашение.
    После чего перейти в файл bot.js и вставить данную строчку кода сюда:

    robot.on(«ready», function(){ console.log(robot.user.username + » запустился!»); console.log(«Ссылка-приглашение») // << //})
    Итоговый код должен быть таким:

    const Discord = require(‘discord.js’); const robot = new Discord.Client();var comms = require(«./comms.js»);const fs = require(‘fs’);let config = require(‘./config.json’);let token = config.token;let prefix = config.prefix; robot.on(«ready», function(){ console.log(robot.user.username + » запустился!»); console.log(«Ссылка-приглашение»)})robot.on(‘message’, (msg) => { if(msg.author.username != robot.user.username && msg.author.discriminator != robot.user.discriminator){ var comm = msg.content.trim()+» «; var ok = false; var comm_name = comm.slice(0, comm.indexOf(» «)); var messArr = comm.split(» «); for(comm_count in comms.comms){ var comm2 = prefix + comms.comms[comm_count].name; if(comm2 == comm_name){ comms.comms[comm_count].out(robot, msg, messArr); } } } });robot.login(token) robot.login(token);

  2. Отметить нужные привилегии в самом коде.

    Повторяем процедуры из первого способа, но уже с другими строками кода:

    robot.on(«ready», function(){ console.log(robot.user.username + » запустился!»); robot.generateInvite([«ADMINISTRATOR»]).then((link) => { // < // console.log(link); // < //})})
    Итоговый код:

    const Discord = require(‘discord.js’); const robot = new Discord.Client();var comms = require(«./comms.js»);const fs = require(‘fs’);let config = require(‘./config.json’);let token = config.token;let prefix = config.prefix;robot.on(«ready», function(){ console.log(robot.user.username + » запустился!»); robot.generateInvite([«ADMINISTRATOR»]).then((link) => { console.log(link);})})robot.on(‘message’, (msg) => { if(msg.author.username != robot.user.username && msg.author.discriminator != robot.user.discriminator){ var comm = msg.content.trim()+» «; var ok = false; var comm_name = comm.slice(0, comm.indexOf(» «)); var messArr = comm.split(» «); for(comm_count in comms.comms){ var comm2 = prefix + comms.comms[comm_count].name; if(comm2 == comm_name){ comms.comms[comm_count].out(robot, msg, messArr); } } } }); robot.login(token);
    Чтобы указать несколько привилегий, мы должны перечислить их в квадратных скобках, через запятую:

    robot.generateInvite([‘KICK_MEMBERS’, ‘BAN_MEMBERS’, ‘SEND_MESSAGES’]).then((link) => { console.log(link);
    * Все привилегии указываются заглавными буквами

    Список доступных привилегий:

    ADMINISTRATOR
    CREATE_INSTANT_INVITE
    KICK_MEMBERS
    BAN_MEMBERS
    MANAGE_CHANNELS
    MANAGE_GUILD
    ADD_REACTIONS
    VIEW_AUDIT_LOG
    PRIORITY_SPEAKER
    STREAM
    VIEW_CHANNEL
    SEND_MESSAGES
    SEND_TTS_MESSAGES
    MANAGE_MESSAGES
    EMBED_LINKS
    ATTACH_FILES
    READ_MESSAGE_HISTORY
    MENTION_EVERYONE
    USE_EXTERNAL_EMOJIS
    VIEW_GUILD_INSIGHTS
    CONNECT
    SPEAK
    MUTE_MEMBERS
    DEAFEN_MEMBERS
    MOVE_MEMBERS
    USE_VAD
    CHANGE_NICKNAME
    MANAGE_NICKNAMES
    MANAGE_ROLES
    MANAGE_WEBHOOKS
    MANAGE_EMOJIS

    Я не советую вам из привилегий выбирать только ADMINISTRATOR, поэтому лучше указать только те привилегии, которые бот действительно использует для корректной работы

Полезные и интересные команды

В предыдущем разделе я показал вам, как запустить бота и как писать для него команды.

Теперь я хочу поделиться с вами несколькими своими командами.

  1. !say — с помощью этой команды бот может повторить ваше сообщение.

    fm8llskc-cbsg3gif9hmaxys4ri.gif

    Код:

    if(!mess.member.hasPermission(«MANAGE_MESSAGES»)) return mess.channel.send(«У вас нет прав»); /* Если у исполнителя команды нету привилегии MANGAGE_MESSAGES, он не сможет её использовать */ let robotmessage = args = mess.content.split(‘ ‘); // Пробелы между словами args.shift(); args = args.join(‘ ‘); mess.delete().catch(); // Удаление сообщения пользователя после отправки mess.channel.send(robotmessage).then(mess.channel.send(mess.author)) /* Отправление в чат сообщения бота */

  2. !heads_or_tails — игра «Орёл или Решка».

    6ks6yqqnrk6qqmzp5g-unzt2esy.gif

    Код:

    mess.channel.send(‘Монета подбрасывается…’) var random = Math.floor(Math.random() * 4); // Объявление переменной random — она вычисляет случайное число от 1 до 3 if (random == 1) { // Если вычислено число 1, то выпадает орёл. mess.channel.send(‘:full_moon: Орёл!’) } else if (random == 2) { // Если вычислено число 2, то выпадает решка. mess.channel.send(‘:new_moon: Решка!’) } else if (random == 3) { // Если вычислено число 3, то монета падает ребром. mess.channel.send(‘:last_quarter_moon: Монета упала ребром!’) }

  3. !clear — удаление определённого количества сообщений.

    i15iottgoiontzoxz_gu3jhhg34.gif

    Код:

    const arggs = mess.content.split(‘ ‘).slice(1); // Все аргументы за именем команды с префиксом const amount = arggs.join(‘ ‘); // Количество сообщений, которые должны быть удалены if (!amount) return mess.channel.send(‘Вы не указали, сколько сообщений нужно удалить!’); // Проверка, задан ли параметр количества if (isNaN(amount)) return mess.channel.send(‘Это не число!’); // Проверка, является ли числом ввод пользователя if (amount > 100) return mess.channel.send(‘Вы не можете удалить 100 сообщений за раз’); // Проверка, является ли ввод пользователя числом больше 100 if (amount < 1) return mess.channel.send(‘Вы должны ввести число больше чем 1’); // Проверка, является ли ввод пользователя числом меньше 1 async function delete_messages() { // Объявление асинхронной функции await mess.channel.messages.fetch({ limit: amount }).then(messages => { mess.channel.bulkDelete(messages) mess.channel.send(`Удалено ${amount} сообщений!`) })}; delete_messages(); // Вызов асинхронной функции

  4. !random_name — генерация случайного имени.

    b3edowvg82-bvppu-yfmomswbv8.gif

    Не стоит пугаться большого кода, здесь всё предельно просто.

    Код:

    var name = new Array( // Объявление массива name и занесение в него большого количества имён ‘Абрам’,’ Аваз’,’ Аввакум’,’ Август’,’ Августин’, ‘ Авдей’,’ Авраам’,’ Автандил’,’ Агап’,’ Агафон’, ‘ Аггей’,’ Адам’,’ Адис’,’ Адольф’,’ Адриан’, ‘ Азамат’,’ Айдар’,’ Айнур’,’ Айрат’,’ Аким’, ‘ Алан’,’ Алей’,’ Александр’,’ Алексей’,’ Али’, ‘ Альберт’,’ Альфред’,’ Амадей’,’ Амадеус’, ‘ Амаяк’,’ Амвросий’,’ Ананий’,’ Анастасий’, ‘ Анатолий’,’ Анвар’,’ Ангел’,’ Андоим’,’ Андрей’, ‘ Аникита’,’ Антон’,’ Арам’,’ Арий’,’ Аристарх’, ‘ Аркадий’,’ Арман’,’ Арно’,’ Арнольд’,’ Арон’,’ Арсен’, ‘ Арсений’,’ Арслан’,’ Артем’,’ Артемий’,’ Артур’,’ Архип’ ,’ Аскар’,’ Аскольд’,’ Аслан’,’ Афанасий’,’ Ахмет’,’ Ашот’ ,’ Бальтазар’,’ Бежен’,’ Бенедикт’,’ Берек’,’ Бернард’, ‘ Бертран’,’ Богдан’,’ Болеслав’,’ Борис’,’ Бронислав’, ‘ Булат’,’ Вадим’,’ Валентин’,’ Валерий’,’ Вальтер’, ‘ Варфоломей’,’ Василий’,’ Вацлав’,’ Велизар’,’ Венедикт’,’ Вениамин’,’ Викентий’,’ Виктор’,’ Вилли’,’ Вильгельм’,’ Виссарион’,’ Виталий’,’ Витольд’,’ Владимир’,’ Владислав’,’ Владлен’,’ Володар’,’ Вольдемар’,’ Всеволод’,’ Вячеслав’,’ Гавриил’,’ Галактион’,’ Гарри’,’ Гастон’,’ Гаяс’,’ Гевор’,’ Геннадий’,’ Генрих’,’ Георгий’,’ Геракл’,’ Геральд’,’ Герасим’,’ Герман’,’ Глеб’,’ Гордей’,’ Гордон’,’ Горислав’,’ Градимир’,’ Григорий’,’ Гурий’,’ Густав’,’ Давид’,’ Дамир’,’ Даниил’,’ Даниэль’,’ Данияр’,’ Дарий’,’ Дементий’,’ Демид’,’ Демосфен’,’ Демьян’,’ Денис’,’ Джамал’,’ Джордан’,’ Дмитрий’,’ Добрыня’,’ Дональд’,’ Донат’,’ Дорофей’,’ Евгений’,’ Евграф’,’ Евдоким’,’ Евсевий’,’ Евсей’,’ Евстафий’,’ Егор’,’ Елеазар’,’ Елисей’,’ Емельян’,’ Еремей’,’ Ермолай’,’ Ерофей’,’ Ефим’,’ Ефрем’,’ Жан’,’ Ждан’,’ Жорж’,’ Захар’,’ Зиновий’,’ Ибрагим’,’ Иван’,’ Игнатий’,’ Игорь’,’ Илларион’,’ Ильдар’,’ Ильнар’,’ Ильнур’,’ Илья’,’ Ильяс’,’ Иннокентий’,’ Иоанн’,’ Иосиф’,’ Ипполит’,’ Искандер’,’ Ислам’,’ Камиль’,’ Карим’,’ Карл’,’ Кирилл’,’ Клим’,’ Кондрат’,’ Константин’,’ Корней’,’ Кузьма’,’ Лавр’,’ Лаврентий’,’ Лев’,’ Леон’,’ Леонид’,’ Леонтий’,’ Леопольд’,’ Лука’,’ Лукьян’,’ Любим’,’ Макар’,’ Максим’,’ Максимилиан’,’ Марат’,’ Марк’,’ Марсель’,’ Мартин’,’ Матвей’,’ Мирон’,’ Мирослав’,’ Митрофан’,’ Михаил’,’ Михей’,’ Мишель’,’ Мстислав’,’ Мурат’,’ Муслим’,’ Назар’,’Абрам’,’ Аваз’,’ Аввакум’,’ Август’,’ Августин’,’ Авдей’,’ Авраам’,’ Автандил’,’ Агап’,’ Агафон’,’ Аггей’,’ Адам’,’ Адис’,’ Адольф’,’ Адриан’,’ Азамат’,’ Айдар’,’ Айнур’,’ Айрат’,’ Аким’,’ Алан’,’ Алей’,’ Александр’, ‘ Алексей’,’ Али’,’ Альберт’,’ Альфред’,’ Амадей’,’ Амадеус’,’ Амаяк’,’ Амвросий’,’ Ананий’,’ Анастасий’,’ Анатолий’,’ Анвар’,’ Ангел’,’ Андоим’,’ Андрей’,’ Аникита’,’ Антон’,’ Арам’,’ Арий’,’ Аристарх’,’ Аркадий’,’ Арман’,’ Арно’,’ Арнольд’,’ Арон’,’ Арсен’,’ Арсений’,’ Арслан’,’ Артем’,’ Артемий’,’ Артур’,’ Архип’,’ Аскар’,’ Аскольд’,’ Аслан’,’ Афанасий’,’ Ахмет’,’ Ашот’,’ Бальтазар’,’ Бежен’,’ Бенедикт’,’ Берек’,’ Бернард’,’ Бертран’,’ Богдан’,’ Болеслав’,’ Борис’,’ Бронислав’,’ Булат’,’ Вадим’,’ Валентин’,’ Валерий’,’ Вальтер’,’ Варфоломей’,’ Василий’,’ Вацлав’,’ Велизар’,’ Венедикт’,’ Вениамин’,’ Викентий’,’ Виктор’,’ Вилли’,’ Вильгельм’,’ Виссарион’,’ Виталий’,’ Витольд’,’ Владимир’,’ Владислав’,’ Владлен’,’ Володар’,’ Вольдемар’,’ Всеволод’,’ Вячеслав’,’ Гавриил’,’ Галактион’,’ Гарри’,’ Гастон’, ‘ Гаяс’,’ Гевор’,’ Геннадий’,’ Генрих’,’ Георгий’,’ Геракл’, ‘ Геральд’,’ Герасим’,’ Герман’,’ Глеб’,’ Гордей’,’ Гордон’, ‘ Горислав’,’ Градимир’,’ Григорий’,’ Гурий’,’ Густав’, ‘ Давид’,’ Дамир’,’ Даниил’,’ Даниэль’,’ Данияр’, ‘ Дарий’,’ Дементий’,’ Демид’,’ Демосфен’, ‘ Демьян’,’ Денис’,’ Джамал’,’ Джордан’,’ Дмитрий’,’ Добрыня’, ‘ Дональд’,’ Донат’,’ Дорофей’,’ Евгений’,’ Евграф’,’ Евдоким’,’ Евсевий’,’ Евсей’,’ Евстафий’,’ Егор’,’ Елеазар’,’ Елисей’,’ Емельян’,’ Еремей’,’ Ермолай’,’ Ерофей’,’ Ефим’,’ Ефрем’,’ Жан’,’ Ждан’,’ Жорж’,’ Захар’,’ Зиновий’,’ Ибрагим’,’ Иван’,’ Игнатий’,’ Игорь’,’ Илларион’,’ Ильдар’,’ Ильнар’,’ Ильнур’,’ Илья’,’ Ильяс’,’ Иннокентий’,’ Иоанн’,’ Иосиф’,’ Ипполит’,’ Искандер’,’ Ислам’,’ Камиль’,’ Карим’,’ Карл’,’ Кирилл’,’ Клим’,’ Кондрат’,’ Константин’,’ Корней’,’ Кузьма’,’ Лавр’,’ Лаврентий’,’ Лев’,’ Леон’,’ Леонид’,’ Леонтий’,’ Леопольд’,’ Лука’,’ Лукьян’,’ Любим’,’ Макар’,’ Максим’,’ Максимилиан’,’ Марат’,’ Марк’,’ Марсель’,’ Мартин’,’ Матвей’,’ Мирон’,’ Мирослав’,’ Митрофан’,’ Михаил’,’ Михей’,’ Мишель’,’ Мстислав’,’ Мурат’, ‘ Муслим’,’ Назар’ ); var RandElement = name[Math.floor(Math.random()*(name.length))]; // Выбор случайного элемента из массива mess.channel.send(RandElement) // Отправка сообщения со случайным элементом из массива в чат

Заключение

Вот и подошла к концу первая часть обучения, как вы могли заметить, создать бота, используя библиотеку

discord.js

очень просто.

Итого, из этой статьи мы выяснили:

  • Как установить нужные модули и пакеты
  • Как установить среду разработки
  • Как установить среду выполнения
  • Как установить полезные расширения
  • Как создать аккаунт для бота
  • Как воплотить бота в жизнь
  • Как запустить бота
  • Как научить бота реагировать на команды
  • Как пригласить бота на свой сервер
  • Как писать код для работы команд

А также научились некоторым интересным и полезным командам.

Надеюсь, что вам понравилась моя статья и вы узнали из неё что-то новое.

Я постарался объяснить всё максимально доходчиво и подробно.

Следующую часть обучения я планирую сделать об использовании аргументов, а также покажу вам команды для модерации

(!kick, !ban, !warn, !mute и т.д)

.

Сайты для самостоятельного изучения

  • Основная документация discord.js
  • Документация discord.js №2
  • Руководство discord.js
  • Руководство discord.js №2

Установка discord-бота

Создаем новое приложение на портале разработки discord.

Переходим на портал и нажимаем на “new application”.

Затем вводим название приложения и нажимаем на кнопку “create”.

Затем переходим на вкладку бот и нажимаем на “add bot”.

Бот создан! Теперь можно перейти к добавлению его на сервер.

Добавление бота на сервер

Добавляем созданный бот с помощью генератора OAuth2 URL.

Для этого переходим на страницу OAuth2 и выбираем бота в панели scope.

Затем выбираем необходимые разрешения для проигрывания музыки и чтения сообщений.

Теперь копируем сгенерированный URL и вставляем его в браузер.

Затем выбираем сервер, на который хотим добавить URL и нажимаем на кнопку “authorize”.

Spice up your Discord experience with our diverse range of Discord bots

Bots

Servers

Top Music Moderation New Bots Explore Tags
discord_v2.1225443.svg

You must be logged in to upvote bots! Login

Discord Fortnite

Discord Fortnite

  • MysticOverBot

    ONLINE 110 Servers

    MysticOverBot

    top.gg

    A multi-purpose bot with features like memes, music, moderation and more!

    Promoted

    ViewInvite

  • Spixx

    ONLINE 1,448 Servers

    Spixx

    top.gg

    Spixx includes a large range of commands for everyone to enjoy! Ranging from Currency, Image, Roleplay & More!! Try them out for your self<3

    Promoted

    ViewInvite

  • Rumble Royale

    top.gg

    465 ONLINE N/A

    Rumble Royale

    Rumble Royale is a battle royale bot; every player will be put into a game where they fight against each other till there is only one winner

    Game, Roleplay

    View Invite

  • EpicFreeGames

    top.gg

    222 ONLINE 49,140 Servers

    EpicFreeGames

    Get the latest free games at the Epic Games store. Useful Epic Games discord Bot to give your gaming server more activity!

    epic games, Fortnite

    View Invite

  • Carl-bot

    top.gg

    207 ONLINE 3,195,947 Servers

    Carl-bot

    Custom commands, reaction role assignment, twitch, starboard, polls, levels, moderation, logging, timers, announcements, Dashboard

    Role Management, Moderation

    View Invite

  • Mia

    top.gg

    96 ONLINE N/A

    Mia

    Hola! soy Mia, un bot de Fortnite — Salvar el Mundo — Battle Royale.

    battle royale, Fortnite

    View Invite

  • Wolf Bot 2.0

    top.gg

    90 ONLINE 638 Servers

    Wolf Bot 2.0

    A fun discord bot. With many options for you to use.

    Fortnite, Fun

    View Invite

  • Yunite

    top.gg

    84 ONLINE 91,118 Servers

    Yunite

    A custom game matchmaking, verification and creative bot for Fortnite with additional multi-purpose features

    Fortnite, Game

    View Invite

  • KassBot

    top.gg

    69 ONLINE 2 Servers

    KassBot

    KassBot Bot es un bot de discord diseñado para moderacón y brindar información amplia sobre Fortnite.

    Moderation, Fortnite

    View Invite

  • MP TV FN BOT

    top.gg

    67 ONLINE N/A

    MP TV FN BOT

    Der FORTNITE Bot!Ein Mehrzweckbot, der viel Spaß und nützliche Befehle hat

    Fortnite, Fun

    View Invite

  • Elo by Anddy

    top.gg

    57 ONLINE 377 Servers

    Elo by Anddy

    Easily make elo matchmakings for any game — such as cs:go, fortnite, rocket league and more — with player’s individual stats tracking

    Game, Leveling

    View Invite

  • Icarus

    top.gg

    37 ONLINE 11,215 Servers

    Icarus

    HD Music, Playlists, React Role, Starboard, Giveaways, Anime Searching, Image Generation, Advanced Settings, Currency, Games, & More!

    Anime, Economy

    View Invite

  • I_am_Bot

    top.gg

    33 ONLINE N/A

    I_am_Bot

    I_am clan official stick prefix with many commands prefix: —

    Moderation, Music

    View Invite

  • iFBR

    top.gg

    31 ONLINE N/A

    iFBR

    Fortnite information bot with Cosmetic Information, Custom Icon Generation, News, Item Shop, Challenges and Much More!

    Fortnite, Game

    View Invite

  • Mushroom

    top.gg

    28 ONLINE 6,766 Servers

    Mushroom

    Real game questing + currency bot for your Discord, supporting 1000+ games. Featuring pets, profiles, happy hours, group quests and more!

    Fun, Economy

    View Invite

  • Fortnite Competitive Helper

    top.gg

    25 ONLINE N/A

    Fortnite Competitive Helper

    Discord bot that gives full info about fortnite competetive events and even has an option to get their live rank at the event.

    Fortnite

    View Invite

top.gg

Создание проекта

Переходим к созданию проекта с использованием терминала.

Для начала создаем директорию и переходим в нее, используя две следующие команды:

mkdir musicbot && cd musicbot

Затем создаем модули проекта с помощью команды npm init. После введения команды будут заданы несколько вопросов. Ответьте на них и продолжайте.

Создаем два файла, в которых мы будем работать.

touch index.js && touch config.json

Теперь откройте проект в текстовом редакторе. Я использую VS Code и открываю его с помощью следующей команды:

code.

Подготовка сервера

В качестве площадки для размещения бота я использую VDS под управлением операционной системы Ubuntu 18.04. Вы можете разместить бота и на других дистрибутивах, убедившись в том, что в них установлены нужные пакеты.

Команды для установки в Ubuntu 18.04:

sudo apt updatesudo apt install docker npm

Если вы используете другой дистрибутив, то установка необходимых пакетов может отличаться. Вы можете найти инструкцию для конкретного дистрибутива в документации или в поисковике.

Improve this page

Add a description, image, and links to the discord-js-bot topic page so that developers can more easily learn about it.

Curate this topic

Files

TypeNameLatest commit messageCommit timeimgAdd files via upload7 months agoREADME.mdUpdate README.md2 months agoconfig.jsonУЛУЧШЕНИЕ 200IQ ЫЫЫЫ8 months agoindex.jsUpdate index.js8 months agopackage.jsonПример package.json8 months agostart.batCreate start.bat8 months agostart.shАналог start.bat только для linux8 months ago

Как создать бота в Дискорд на Python

Еще один способ — сделать Дискорд бота на Python. Общий алгоритм действий следующий:

  1. Установите текстовый редактор.
  2. Подготовьте Python 3.4.2+ и Pip3 (менеджер пакетов, необходимый для установки библиотек).
  3. Создайте пустой файл с названием, к примеру, chatbot.py.
  4. Откройте его с помощью текстового редактора и вставьте код. Для его написания необходимо владеть языком Python.
  5. Пример кода — gist.github.com/Tetraquark/911eb07052be10f0bb1323adb4056f86.
  6. Поменяйте значение переменной DISCORD_BOT_TOKEN, где нужно сохранить токен бота. Для получения информации перейдите по ссылке discord.com/developers/applications, выберите нужный бот Дискорд или создайте новый, а после жмите на clich to reveal, где откроется токен приложения. Занести его в переменную DISCORD_BOT_TOKEN.
  7. Сохраните файл и запустите бот Дискорд.

Для выполнения указанной выше работы необходимо обладать определенным набором знаний.

Список команд

Используемые источники:

  • https://discordik.ru/boty/fortnite/

Для этой статьи работает наш еженедельный конкурс комментаторов.
Оставьте ваш комментарий в форме ниже и автору лучшего комментария за неделю (самого полезного по нашему мнению) мы подарим приз — iPhone XR 128Gb.
Чтобы мы могли связаться с вами обязательно при отправке комментария укажите ваш e-mail.
Результаты вы сможете узнать на этой странице через неделю.

Создание Docker-контейнера

Теперь в рабочей директории нам нужно создать Dockerfile, который будет содержать инструкции для сборки образа, на основе которого будет запущен контейнер. В него мы запишем:

FROM node:14WORKDIR /home/my-discord-botCOPY package*.json ./RUN npm installCOPY . .EXPOSE 8080CMD [«node», «app.js»]

Создадим файл .dockerignore и запишем туда несколько локальных файлов, которые будут игнорироваться:

node_modulesnpm-debug.log

Соберем образ и запустим на его основе контейнер:

docker build -t authorname/my-discrod-botdocker run -p 42150:8080 -d authorname/my-discrod-bot

Вместо “authorname” можно ввести имя пользователя, от которого создается бот, и через “/” указать имя бота.

Проверим, что контейнер запустился, специальной командой:

docker ps 9fbaf1176c7a authorname/my-discrod-bot «docker-entrypoint.s…» 6 seconds ago Up 4 seconds 0.0.0.0:42150->8080/tcp pensive_carson

Применение Discord Bot Maker

Как вариант, можно создать бота с помощью Discord Bot Maker. Это мощный инструмент, позволяющий сделать помощника, умеющего отправлять файлы, генерировать и отправлять сообщения, манипулировать эмодзи, редактировать изображения и т. д.

Чтобы создать Дискорд-бота, сделайте следующее:

  1. Скачайте и установите утилиту.
  2. Жмите на кнопку создания бота.
  3. Установите необходимые команды.
  4. Сохраните и запустите bot для Дискорд

Процесс создания интуитивно понятен, поэтому не будем останавливаться на нем подробнее.

Документация

https://discord.js.org/#/docs/main/stable/class/Message — Список всех методов для сообщения. И вообще очень полезный сайт с подробной документацией.

Если есть вопросы — можете зайди ко мне в дискорд сервер и задать его.
https://discord.gg/6uRxTGE

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: