Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

283
Vistas
El comando Discord.js mod bot ban no funciona

El comando de prohibición de mi bot de Discord no funciona y actualmente me está dando este error. Mi identificación de roles es 853527575317708820 No sé qué estoy haciendo mal, así que por favor ayúdenme

Aquí está el comando:

 Server is ready. TigerShark Community#3557 Has logged in (node:204) UnhandledPromiseRejectiontarning: DiscordAPTError: T AEE RS user_id: Value "<@!856413967595012127>" is not snowflake. at RequestHandler.execute (/home/Tunner/TSC/node_modules/di scoxd. js/src/rest/RequestHandler. js:154:13) at processTicksAndRejections (internal/process/task §5:97:5) :! at async RequestHandler.push (/home/zunner/TSC/node /discord. js/s1c/rest/RequestHandler. js:39:14)

Aquí está mi código:

 module.exports = { name: 'ban', description: "Used to ban members from a server", async execute(client, message, args, Discord) { if (!(message.member.roles.cache.some(r => r.id === "853527575317708820"))) return let reason; const user = await client.users.fetch(args[0]) if (!args[1]) { reason = "Not specified" } else { reason = args[1] } const embed = new Discord.MessageEmbed() .setTitle(`${user.username} was banned!`) .setDescription(`${user.username} was banned by ${message.author.username} for: ${reason}`) .setColor("#f0db4f") .setFooter("Ban Command") .setTimestamp() message.channel.send(embed) message.guild.members.ban(user) } }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Su comando tiene pocos problemas.

La primera es que no permite banear usuarios con comando si se menciona al usuario, solo permite banear por ID de usuario. Para arreglar eso simplemente haz:

 const user = message.mentions.members.first() || await client.users.fetch(args[0])

También debe agregar verificar si se encuentra el usuario, así que justo después de declarar el valor para user

 const user = message.mentions.members.first() || await client.users.fetch(args[0]) if(!user) return message.reply(`No user found`);

Ahora, si permite prohibir tanto las menciones como las ID de usuario, puede haber un valor de user diferente. Así que recomiendo editar su incrustación también a algo como:

 const embed = new Discord.MessageEmbed() .setTitle(`${user.user.username} was banned!`) .setDescription(`${user.user.username} was banned by ${message.author.username} for: ${reason}`) .setColor("#f0db4f") .setFooter("Ban Command") .setTimestamp()

Esto debería solucionar la mayoría de sus problemas, le recomiendo que si algo no está undefined en el futuro o si encuentra algún error en su código. Haga algo de depuración enviando mensajes a la consola console.log(variable) o console.log("This works?")

about 4 years ago · Juan Pablo Isaza Denunciar

0

si está usando discord.js v12, puede hacer lo que dijo la otra respuesta y obtener al usuario mencionando message.mentions.members.first() pero si está usando v13 eso ya no funcionará

la razón por la que da ese error es porque necesita recuperar al usuario solo por su ID, por lo que puede hacer esto client.users.fetch(args[0].replace('<@!', '').replace('>', '')) para eliminar el <@! y > (prefijo de mención) de él.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda