- Создание Discord-бота, используя библиотеку discord.js | Часть №1
- Введение
- Начало работы
- Создание бота
- Подготовка к написанию кода
- Написание кода
- Полезные и интересные команды
- Заключение
- Настройка бота на сервере в Discord
- Вариант 1: Программа для ПК
- Шаг 1: Использование команды помощи
- Шаг 2: Настройка роли
- Шаг 3: Добавление роли боту
- Шаг 4: Права бота на каналах
- Шаг 5: Параметры на официальном сайте
- Вариант 2: Мобильное приложение
- Шаг 1: Использование команды помощи
- Шаг 2: Настройка роли
- Шаг 3: Добавление роли
- Шаг 4: Права бота на каналах
Создание Discord-бота, используя библиотеку discord.js | Часть №1
Введение
В этой статье я подробно расскажу о том, как работать с библиотекой discord.js, создать своего Discord-бота, а также покажу несколько интересных и полезных команд.
Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая музыкой, системой экономики и распознаванием голоса ботом.
Начало работы
Если вы уже знакомы с приведёнными ниже материалами, — смело можете пролистать этот раздел.
Для начала работы с кодом нам нужно установить среду разработки, это может быть:
Среда разработки выбирается по удобству использования и практичности, она у вас может быть любая, но мы рассмотрим её на примере Visual Studio Code, так как она является одной из самых приемлемых для новичков, а также для опытных программистов.
Для установки переходим по этой ссылке.
Выбираем свою операционную систему и запускаем скачивание.
Для создания бота мы используем среду выполнения node.js. Для её установки нам необходимо перейти на этот сайт.
На данный момент нас интересует версия долгосрочной поддержки (LTS), скачиваем её.
В Visual Studio Code присутствует возможность устанавливать расширения.
Для этого, кликните по отмеченной ниже иконке.
В открывшемся окне вписываем название название/идентификатор нужного нам расширения, после чего устанавливаем его.
Из полезных расширений могу отметить:
- Discord Presence — расширение, позволяющее отображать рабочую область и файл, в котором вы работаете в вашей игровой активности (функция работает только при использовании приложения Discord).
Идентификатор расширения: icrawl.discord-vscode
Идентификатор расширения: formulahendry.code-runner
Создание бота
Теперь, когда вы установили все нужные компоненты, мы можем приступить к созданию самого бота.
Здесь всё просто. Переходим на портал разработчиков и нажимаем на кнопку с надписью «New Application» — она находится в правом верхнем углу.
В открывшемся окне вписываем имя бота, после чего, нажимаем на кнопку с надписью «Create».
На этой странице мы можем изменить имя бота, загрузить для него иконку, заполнить описание.
Теперь наша задача — воплотить бота в жизнь. Для этого переходим во вкладку «Bot».
Нажимаем на кнопку с надписью «Add Bot» и воплощаем бота в жизнь.
Поздравляю! Вы создали аккаунт для вашего бота. Теперь у него есть тег, токен, ник и иконка.
Подготовка к написанию кода
После создания аккаунта для бота, мы должны установить нужные пакеты и модули, чтобы в дальнейшем он корректно работал.
Первым делом создаём папку, после чего открываем её в VS Code (Файл > Открыть папку) / (Ctrl + K Ctrl + O)
Далее нам нужно открыть терминал (Терминал > Создать терминал) / (Ctrl + Shift + `)
Теперь мы должны создать файл с неким «описанием» нашего бота, сделаем это через терминал.
Вписываем данную строку в терминал и нажимаем Enter:
После каждой появившейся строки нажимаем Enter или вписываем свои значения.
Значения в этом файле можно будет изменить в любой момент.
Далее, мы должны поочерёдно вводить в терминал эти строки:
«Install» также можно сокращать в «I», но необязательно.
Итого, если вы следовали инструкциям и всё сделали правильно, в вашей папке должны были появиться 3 объекта:
Написание кода
Для того, чтобы наш бот появился в сети и мог реагировать на команды, нам нужно написать для него код.
Существует множество вариантов для его написания: используя один файл, два, несколько, и т.д
Мы рассмотрим вариант с двумя файлами, так как его использовать очень легко и удобно, но у каждого варианта есть свои недостатки — например, у этого недостатком является сложность в написании начального кода.
Но не волнуйтесь, весь код вам писать не придётся.
Для начала, нам нужно где-то хранить основные параметры и информацию о боте.
Мы можем сделать это двумя способами:
- Создать отдельный файл
- Записать всё в константы
Я не советую вам использовать второй вариант, так как в будущем вам придётся работать с большим объёмом информации, и такая запись будет доставлять неудобства.
Разберём хранение параметров в отдельном файле.
Итак, создаем файл config.json
Вставляем в него следующий код:
* Для получения токена зайдите на портал разработчиков, перейдите во вкладку «Bot» и скопируйте его.
* Самым распространённым среди разработчиков префиксом является !
Далее нам нужно создать файл bot.js и вставить в него данный код:
Теперь создаём файл comms.js, в нём будут сами команды.
В нём должен быть следующий код:
Чтобы добавить больше команд — просто объявляйте больше функций и добавляйте их в список, например:
И вот, мы вышли на финишную прямую!
Осталось всего ничего — запустить бота.
Для этого открываем терминал и вставляем в него следующую строку:
Готово! Бот запущен и вы можете им пользоваться, ура!
Чтобы пригласить бота на свой сервер, воспользуемся нам уже известным порталом разработчиков.
Перейдём во вкладку OAuth2, пролистаем чуть ниже, выберем «Bot» и отметим нужные боту привилегии.
Теперь осталось скопировать ссылку-приглашение и добавить бота на свой сервер.
Существует два способа:
- Заранее отметить нужные привилегии.
Для этого, сначала мы должны скопировать ссылку-приглашение.
После чего перейти в файл bot.js и вставить данную строчку кода сюда:
Итоговый код должен быть таким:
Отметить нужные привилегии в самом коде.
Повторяем процедуры из первого способа, но уже с другими строками кода:
Чтобы указать несколько привилегий, мы должны перечислить их в квадратных скобках, через запятую:
* Все привилегии указываются заглавными буквами
Список доступных привилегий:
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, поэтому лучше указать только те привилегии, которые бот действительно использует для корректной работы
Полезные и интересные команды
В предыдущем разделе я показал вам, как запустить бота и как писать для него команды.
Теперь я хочу поделиться с вами несколькими своими командами.
- !say — с помощью этой команды бот может повторить ваше сообщение.
!heads_or_tails — игра «Орёл или Решка».
!clear — удаление определённого количества сообщений.
!random_name — генерация случайного имени.
Не стоит пугаться большого кода, здесь всё предельно просто.
Заключение
Вот и подошла к концу первая часть обучения, как вы могли заметить, создать бота, используя библиотеку discord.js очень просто.
Итого, из этой статьи мы выяснили:
- Как установить нужные модули и пакеты
- Как установить среду разработки
- Как установить среду выполнения
- Как установить полезные расширения
- Как создать аккаунт для бота
- Как воплотить бота в жизнь
- Как запустить бота
- Как научить бота реагировать на команды
- Как пригласить бота на свой сервер
- Как писать код для работы команд
А также научились некоторым интересным и полезным командам.
Надеюсь, что вам понравилась моя статья и вы узнали из неё что-то новое.
Источник
Настройка бота на сервере в Discord
Если вы еще не добавили бота на сервер и не знаете, как правильно это сделать, прочитайте другой наш материал, где рассказывается как об официальных сайтах проектов, так и об открытых площадках, где они свободно распространяются.
Вариант 1: Программа для ПК
Управлять сервером более логично при помощи версии Discord для ПК, поскольку в ней вы найдете все доступные функции и упростите процесс добавления и настройки бота. Поэтому поговорим о данном варианте в первую очередь, детально разобрав каждый этап конфигурирования бота, если его изначальные параметры вас не устраивают.
Шаг 1: Использование команды помощи
Получить все необходимые сведения часто можно использованием стандартной команды помощи, поддерживаемой самим ботом. В ответном сообщении указывается список имеющихся команд и дополнительная документация, которая может пригодиться при работе с этим инструментом.
- Убедитесь в том, что необходимый бот отображается в списке участников сервера, означая его успешную авторизацию.
Введите в любом текстовом чате, где нет ограничений на отправку сообщений, команду +help или /help в зависимости от синтаксиса, который поддерживает бот.
После активации команды на экране появится блок с общими сведениями о том, как происходит взаимодействие с этим ботом.
Отображаемая вспомогательная информация зависит непосредственно от разработчиков ботов, поскольку они решают, что описывать пользователям. Дополнительные сведения всегда можно получить на официальном сайте или открытой площадке, откуда был загружен бот.
Шаг 2: Настройка роли
Каждому боту при авторизации присваивается своя роль с определенными правами для возможности внесения изменений на сервере, управления участниками или отправки сообщений. Некоторые боты по умолчанию не имеют требуемых прав, поэтому разработчики просят настраивать их самостоятельно, что происходит следующим образом:
- Нажмите по названию сервера для отображения его меню.
Перейдите к разделу «Роли».
Среди списка всех ролей найдите ту, название которой соответствует боту для настройки.
Если не хотите тратить время на поиск необходимых прав или же бот является универсальным, присвойте ему права администратора, активировав соответствующий переключатель.
Для обеспечения боту доступа к отправке сообщений надо включить «Отправлять сообщения» в блоке «Права текстовых каналов».
Точно таким же образом редактируются и все остальные разрешения, присутствующие в меню. Их активация осуществляется в соответствии с требованиями самого инструмента. Обычно если боту не хватает прав для выполнения конкретных действий, он отправляет личное сообщение с текстом ошибки, поэтому разобраться в предоставлении доступа не составит труда.
Шаг 3: Добавление роли боту
На определенных серверах дополнительно боту присваивается специфическая роль или же создатель предпочитает их все объединить в один список для простоты настройки. В этом случае действует такой же принцип, как и для обычных участников сервера.
- В блоке «Управление участниками» того же меню с настройками выберите раздел «Участники».
Отыщите бота для добавления роли и справа от его имени нажмите по значку с плюсом.
Появится список доступных на сервере ролей, среди которых и выберите требуемую. Если же их много, воспользуйтесь присутствующей функцией поиска.
Что касается добавления новых ролей на сервер, то получить полезную информацию по этому поводу вы можете в специальной инструкции на нашем сайте, щелкнув по следующему заголовку.
При необходимости можно удалить уже существующую по умолчанию роль бота, если она вам не требуется и вы хотите присвоить ему другие права.
Шаг 4: Права бота на каналах
Обычно права бота настраиваются через роль, а разрешения на голосовых или текстовых каналах подхватываются автоматически средством синхронизации. Однако иногда требуется установка параметров в виде исключения — например, когда всем ролям запрещено посылать сообщения на сервере, но там присутствует и бот, который должен функционировать. Для этого понадобится редактировать права самого канала.
- Наведите курсор мыши на требуемый канал и кликните по появившемуся значку шестеренки.
В новом окне через панель слева перейдите в раздел «Права доступа».
Сейчас роль бота не добавлена в список для настройки, поэтому нажмите по плюсу, чтобы самостоятельно указать ее.
В появившемся списке выберите роль или бота как участника, что в данном случае не имеет значения.
Ознакомьтесь с правами, большинство из которых соответствуют стандартным разрешениям для ролей. Отметьте галочками те, которые хотите предоставить, а крестиками — запретить. Если выбрана косая черта, значит, право синхронизируется с выбранной ролью.
Шаг 5: Параметры на официальном сайте
В завершение этого варианта рассмотрим дополнительные настройки ботов на их официальных сайтах. Подходит это только в тех случаях, когда инструмент является универсальным, поддерживает плагины и специфические параметры, как, например, популярный MEE6, которого мы и возьмем в качестве примера.
- Откройте главную страницу сайта бота и выполните авторизацию для определения добавленных серверов, затем перейдите в раздел с плагинами.
Там вы сможете узнать обо всех функциях, которые поддерживает бот, активировать их или отключить.
При настройке специфических команд, состоящих из пользовательского текста или картинок, куда относится приветственное сообщение для новых пользователей и другие похожие операции, необходимо заполнить специальную форму, после чего бот автоматически будет выполнять поставленную задачу.
Иногда в настройках бота можно сменить префикс для команд, если текущий вам непривычен, и выбрать язык для общения непосредственно на сервере.
Наличие определенных параметров зависит исключительно от типа бота и подхода разработчиков, и если вы не обнаружили подобных настроек, значит, для выбранного инструмента они недоступны.
Вариант 2: Мобильное приложение
Если с добавлением ботов на сервер в Discord через мобильное приложение часто возникают трудности, то вот их настройка обычно не вызывает никаких проблем, поскольку все действия по управлению стандартны и доступны как создателю, так и администратору сервера.
Шаг 1: Использование команды помощи
Начнем с получения общих сведений о взаимодействии с добавленным ботом, что производится путем ввода команды помощи. Она отображает информацию, заложенную разработчиками специально с целью рассказать юзерам больше о своем проекте.
- Перейдите на сервер и сделайте свайп влево для отображения списка участников.
Убедитесь в том, что необходимый бот прошел авторизацию и отображается в списке «В сети».
Вернитесь в любой текстовый чат без ограничений на отправку сообщений и введите стандартную команду, отвечающую за получение справки.
Ознакомьтесь с появившимся на экране блоком, чтобы подробнее узнать о синтаксисе и других особенностях функционирования бота.
Шаг 2: Настройка роли
Если вы читали Вариант 1 про настройку бота через программу на компьютере, то уже знаете, что каждому из них присваивается своя роль с определенными правами. При необходимости их редактирования можно использовать и мобильное приложение, о чем и пойдет речь в следующей инструкции.
- Тапните по названию сервера для открытия его меню.
В нем нажмите кнопку «Настройки».
Перейдите в раздел «Роли», который находится в блоке «Управление участниками».
Найдите роль с названием, соответствующим самому боту.
Вы можете изменить ее имя, добавить пользовательский цвет, выбрать расположение отдельно от списка со всеми участниками, что, кстати, часто используется, или запретить упоминание данной роли.
Ниже находится список со всеми правами. Многофункциональным ботам всегда присваивается «Администратор», чтобы у них не возникло проблем с доступом к каким-либо функциям сервера.
Все остальные присутствующие прав изменяйте по собственному желанию в соответствии с предназначением инструмента. Достаточно просто прочесть определение разрешения для понимания его действия.
Шаг 3: Добавление роли
Отдельно рассмотрим добавление роли для бота, если его стандартные права вас не устраивают или вы хотите объединить несколько участников для выполнения определенных задач на сервере. Управление ролями бота осуществляется точно так же, как бы это было и с другими пользователями.
- Снова перейдите в «Настройки сервера», но на этот раз выберите раздел «Участники».
Воспользуйтесь поиском или самостоятельно отыщите бота в списке, после чего сделайте тап по его учетной записи.
Отметьте галочкой роль, которую хотите ему присвоить. Учитывайте, что добавлять боту роль другого бота запрещено, поэтому на следующем скриншоте вы видите как неподходящие варианты помечены серым цветом.
Шаг 4: Права бота на каналах
Завершающий этап — редактирование разрешений для бота на текстовых и голосовых каналах сервера. Необходимость в реализации данной задачи появляется редко, но если все-таки возникнет, сделать это будет крайне просто, поскольку весь процесс точно такой же, как и для других участников сервера.
- Сделайте долгий тап по голосовому или текстовому каналу.
Из появившегося списка действий выберите пункт «Настроить канал».
Перейдите в раздел «Права доступа».
Нажмите по пункту «Добавить роль» или «Добавить участника».
В списке вариантов отыщите требуемого для настройки бота.
Ознакомьтесь с перечнем прав и установите для них значения в соответствии со своими предпочтениями.
Помимо этой статьи, на сайте еще 12333 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник