Discord.js setGame () больше не работает

Я кодировал своего бота Discord с помощью Discord.JS около 2 месяцев и только недавно заметил, что мой бот не говорит, что он воспроизводит то, что я ему говорю. Когда я впервые написал бота, до недавнего времени он работал нормально. Теперь три моих раздорных бота не показывают свои игры.

Это код, который я использую:

const Discord = require("discord.js");
const bot = new Discord.Client();
bot.on("ready", () => {
  console.log("Ready");
  bot.user.setGame("Type !help");
}

person PMCJohn    schedule 27.08.2017    source источник


Ответы (5)


.setGame() сейчас устарел, но вы можете использовать .setPresence() или использовать .setActivity(), который имеет тот же формат и тот же формат, что и .setGame(). Бывший.

const Discord = require('discord.js');
const bot = new Discord.Client();
bot.user.setActivity('YouTube', { type: 'WATCHING' });

Здесь находится ссылка на документацию в если вы хотите заменить 'Watching' на что-то другое, например 'Playing'.

person NintendoZaedus    schedule 24.03.2018
comment
Спасибо! Но тип: part у меня не работает. Помогите, пожалуйста? - person Christoffer; 24.07.2018
comment
@ ChristofferHjärtström, убедитесь, что вы использовали все заглавные буквы, и вставьте их именно так, как я. Для ясности ознакомьтесь с документацией, которую я вложил. - person NintendoZaedus; 24.07.2018

setGame() устарел, и discord.js просит вас использовать setActivity().

const Discord = require("discord.js");
const bot = new Discord.Client();
bot.on("ready", () => {
  console.log("Ready");
  bot.user.setActivity("Type !help");
})

Надеюсь, это помогло.

person Pruina Tempestatis    schedule 29.04.2018

Метод setGame () перестал работать, вот что вы можете сделать:

  • обновить до последней версии 11.1-dev или
  • вместо этого используйте .setPresence({ game: { name: 'nameGoesHere', type: 0 } }); в качестве обходного пути

Источник: https://github.com/hydrabolt/discord.js/issues/1807#issuecomment-323578919

person LW001    schedule 27.08.2017

Вот краткий пример использования .setPresence, с которым связан LW001:

var Discord = require('discord.js');
var bot = new Discord.Client();

bot.on('ready', () => {
    bot.user.setStatus('available') // Can be 'available', 'idle', 'dnd', or 'invisible'
    bot.user.setPresence({
        game: {
            name: 'Type !help',
            type: 0
        }
    });
});

https://discord.js.org/#/docs/main/stable/class/ClientUser?scrollTo=setGame

person koubi    schedule 26.10.2017

setGame() устарел, используйте setActivity()

Пример:

bot.user.setActivity("Very good discord bot",  { type: 'WATCHING' })

Если вы хотите установить статус бота:

bot.user.setStatus('available') //You can set idle, dnd or invisible
person Kokosowiec    schedule 09.02.2021