НОВОЕ 📢 Ограниченное стартовое предложение: скидка до 70% на первый месяц для любой игры!Посмотреть тарифы

Как сделать Discord-бота на discord.js

Хостинг Discord-ботовUpdated Oct 23, 20263 min read

Файлы

Создайте эти файлы на своём компьютере.

package.json

{
  "name": "my-bot",
  "version": "1.0.0",
  "main": "index.js",
  "dependencies": {
    "discord.js": "^14.16.0"
  }
}

index.js

const { Client, GatewayIntentBits, REST, Routes, SlashCommandBuilder } = require('discord.js');

const token = process.env.DISCORD_TOKEN;
const client = new Client({ intents: [GatewayIntentBits.Guilds] });

const commands = [new SlashCommandBuilder().setName('ping').setDescription('Replies with pong')];

client.once('ready', async () => {
  const rest = new REST({ version: '10' }).setToken(token);
  await rest.put(Routes.applicationCommands(client.user.id), { body: commands.map(c => c.toJSON()) });
  console.log(`Logged in as ${client.user.tag}`);
});

client.on('interactionCreate', async (interaction) => {
  if (!interaction.isChatInputCommand()) return;
  if (interaction.commandName === 'ping') await interaction.reply('pong');
});

client.login(token);

Боту нужен только интент Guilds, поэтому включать привилегированные интенты не нужно.

Запустите бота на PlayNHost

  1. Откройте сервер бота в панели. Новый сервер для бота стартует как Node.js Bot.
  2. В Files загрузите index.js и package.json. Не загружайте node_modules: сервер установит пакеты сам.
  3. В Настройки, Настройки игры проверьте, что в поле Основной файл указан index.js, и вставьте токен в Токен Discord-бота.
  4. Откройте Console и запустите сервер. При первом запуске устанавливается discord.js, поэтому он длится чуть дольше. Когда вы увидите Logged in as ..., бот онлайн.
  5. В Discord введите /ping. Если команда не появляется, см. Discord-бот онлайн, но не отвечает.

Следующие шаги

Ваш сервер уже у другого хостинга? Перенесите его к нам

СОЗДАЙТЕ СВОЙ ИГРОВОЙ СЕРВЕР
ГОТОВЫ НАЧАТЬ?

Сэкономьте до 30% на вашем новом игровом сервере.
Премиальная производительность, мгновенная активация и непревзойдённая надёжность по лучшей цене.

ПОСЛЕДНИЕ БЛОГИ