Discord.js setGame() not working anymore

42.6k Views Asked by At

I have been coding my Discord bot using Discord.JS for about 2 months now and I've just recently noticed that my bot isn't saying that it's playing what I'm telling it. When I first coded the bot up until recently it worked just fine. Now the 3 discord bots I have aren't showing their games.

This is the code I'm using:

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

There are 5 best solutions below

2
On BEST ANSWER

.setGame() is deprecated now but you could use .setPresence() or you could use the .setActivity() which is the same thing and format as the .setGame(). Ex.

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

Here is a link to the documentation in case you wanted to change 'Watching' to something else like 'Playing'.

0
On

The setGame() Method has stopped working, here's what you can do:

  • update to latest 11.1-dev or
  • use .setPresence({ game: { name: 'nameGoesHere', type: 0 } }); as a workaround instead

Source: https://github.com/hydrabolt/discord.js/issues/1807#issuecomment-323578919

0
On

setgame is depreciated use setActivity instead

example:

client.user.setActivity('activity here')

Or:

client.user.setActivity('activity here', {type: "WATCHING"})

type can be WATCHING, LISTENING, PLAYING or STREAMING

if streaming you need to add this below the setActivity code

url: "twitch.tv/urtwitchusername",
0
On

setGame() is now deprecated, and discord.js asks you to use setActivity().

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

Hope this helped.

0
On

Here's a short example of using the .setPresence that LW001 linked to:

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