Проблема в ошибке "Valid intents must be provided for the client". Сообщение говорит о том, что необходимо указать действительные интенты для вашего бота. Вам нужно указать интенты, которые соответствуют функциональности вашего бота.
Добавьте в свой код перед строкой 2 следующую строку:
const { Intents } = require('discord.js');
После этого добавьте объект интентов в ваш конструктор Discord клиента, указав необходимые интенты. Например, если ваш бот будет отправлять сообщения, вам необходимо добавить интент GUILD_MESSAGES:
const bot = new Discord.Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
Вот полный исправленный код:
const Discord = require('discord.js');
const { Intents } = require('discord.js');
const bot = new Discord.Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
bot.on('ready', () => {
console.log('Запустился бот ' + bot.user.tag);
});
bot.login('токен бота');
Замените 'токен бота' на ваш токен бота и попробуйте запустить код снова. В консоли должно появиться сообщение "Запустился бот", а затем имя вашего бота.
На втором скриншоте тоже отсутствуют указанные выше интенты, что приводит к ошибке "Valid intents must be provided for the Client". Вот полный исправленный код:
const Discord = require('discord.js');
const { Intents } = require('discord.js');
const client = new Discord.Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}`);
});
client.on("message", msg => {
if (msg.content === "ping") {
msg.reply("pong");
}
});
client.login("токен бота");