Holo бот дискорд команды

Обновлено: 06.07.2024

Начнём. Ссылка на мой youtube канал.

Discord bot туториал. Туториал по созданию ботов для дискорда на node.js используя discord.js.

Creation date : 06.12.2019

Давайте начнём создание бота. Если у вас установлена node.js, то пропустите сделающие 2 строчки. Заходим на сайт node.js, скачиваем, устанавливаем. Скриншотов процесса установки нету, тк переустанавливать node.js нету желания. Но там всё интуитивно понятно.

Создание файлов, инициализация проекта, установка библиотек.

Создаём папку bot. Желательно не использовать кирилицу, юникод и т. п. в названии. Сразу же создаём файл index.js или bot.js. Это не несёт особого смысла. Можно назвать как угодно, но принятно index.js / bot.js. Это будет главный файл бота, т.е. первым запускается, в нём основной код бота. Далее открываем консоль / терминал если у вас linux. Для быстрого открытия консоли на windows можно нажать WIN + R, ввести cmd. Далее переходим в папку бота, думаю как это сделать через консоль всем понятно. Пишим : npm init - инициализация проекта. Жмём enter до конца. Если ошибка в package name, то напишите bot. npm i discord.js - установка библиотеки discord.js.

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

Если очень слабый компьюер можете поставить notepad++, но это для постоянной основы не самый хороший вариант. Лично я использую Atom.

Вы можете зарегистрировать его на сайте discord developers. Жмём кнопку "New Application". Вводим название бота. Жмём "Create". Переходим во вкладку "Bot", нажимаем "Add Bot", затем "Yes, do it!" Находим строку "token", немного ниже есть кнопка "Copy", нажимаем. Теперь в вашем буфере обмена есть токен бота.

Создадим первый код. Пишем :

Открываем консоль, переходим в папку проекта и пишем :

в зависимости от названия файла. Если у вас windows, то вы можете создать файл start.bat с текстом

Если линукс, то вы можете создать файл start.sh

Это будет запускать бота. Далее я не буду говорить про запуск. Делайте это сами.

Создаем файл config.json с конфигурацией нашего бота.

В начале кода бота напишем :

Еще вы можете создать конфиг прямо в коде бота.

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

Давайте залогируем тег автора.

Также можно писать не

.startsWith проверят начинается ли строка с символов в аргументах.

Также даже начинающим программистам будет очень полезна в боте команда !eval для выполнения кода не пиша его в коде бота, т.е. вы пишите !eval какой-то код и бот выполняет этот код.
Я нашёл хороший туториал по этой команде на github. Рекомендую ознакомиться и взять себе команду в код бота. Принцип её работы мы разберём позже. Тык.

Image alt

Это называется RichEmbed (Embed). Давайте отправим простой эмбед похожий на данный. (Картинка ниже)

Image alt

Для этого создадим новую команду !ping .

В Embed есть много различных параметров, вы можете прочесть их далее, либо посмотреть на оффициальном сайте discord.js

Давайте сделаем команду для получения информации о пользователе. Команда взята из моего бота. Будем использовать библиотеку moment.js , устанавливаем npm i moment.js

Image alt

Мой дискорд сервер!

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

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Holo is a Discord statistics bot that tracks user emoji usage. Holo is capable of tracking emojis from both messages and message reactions.

Current and relevant server emojis make for happy users!

$count [@mention] [all|server|default]
@mention
Filter user. If omitted, defaults to include all server members.
e.g. $count @Miku all
all|server|default
Filter emojis by type and list emojis by count in descending order.
e.g. $count all

$rate [@mention] [all|server|default]
@mention
Filter user. If omitted, defaults to include all server members.
e.g. $rate @Miku all
all|server|default
Filter emojis by type and list emojis by count per day in descending order. e.g. $rate all

$recommend
Recommend unused emojis for removal by finding the intersection between the 10 lowest results of the count and rate commands.

$users [:emoji:]
:emoji:
List emoji users by count in descending order.
e.g. $users 🤔

Holo requires you to host her yourself! Read the following for setup instructions.

The following instructions assume you are signed in with a Google account.

Be aware that Firebase has a generous free plan for hobbyists but exceeding certain limits will stop your service for the month. If you're using Holo on a small server, you have almost nothing to worry about.

  1. On the sidebar, click the gear icon and go to Project settings .
  2. Go to the SERVICE ACCOUNTS tab and click the GENERATE NEW PRIVATE KEY button. This will download a unique file containing Firebase Admin credentials.
  3. Rename the file to serviceAccountKey.json .

Keep this serviceAccountKey.json credentials file private!

Discord Bot Setup

The following instructions assume you are signed in with a Discord account.

Keep your Discord bot token and any file containing it private!

reaction_timeout (in milliseconds) is how long Holo looks at each message for user reactions. Keep it somewhere between 15000 and 30000 for optimal performance.

pager_timeout (in milliseconds) is how long Holo looks at each command message for pagination. Keep it somewhere between 30000 and 60000 for optimal duration.

prefix is your preferred command prefix. If omitted, commands can be used by mentioning the bot in place of the command prefix. e.g. @Holo ping

owner_id is your Discord account ID. Navigate to User Settings and under the Appearance tab, enable Developer Mode . Right-click your name to open up the context menu which will display the option to Copy ID .

Читайте также: