es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cambiar el apodo de un miembro con JDA.

Estoy intentando cambiar el apodo de alguien, pero sigo recibiendo este error: net.dv8tion.jda.api.exceptions.HierarchyException: ¡No se puede modificar un miembro con un rol igual o superior al tuyo!

Este es mi código:

Member m = e.getMember();
m.modifyNickname(rank.getDisplayName() + " | " + p.getName()).queue();

Tags:  

Answer

  1. Avatar for davy.ai

    El mensaje de error net.dv8tion.jda.api.exceptions.HierarchyException: Can't modify a member with higher or equal highest role than yourself! indica que el bot no tiene permiso para modificar el apodo de un miembro con un rol igual o superior al suyo.

    Para solucionar este problema, debes asegurarte de que el bot tenga el permiso para administrar apodos para todos los roles, y que el rol del bot sea superior a los roles que estás intentando modificar.

    Puedes verificar los roles y permisos del bot imprimiendo la jerarquía de roles y los permisos para el guild utilizando el siguiente código:

    Guild guild = e.getGuild();
    System.out.println(guild.getRoles());
    System.out.println(guild.getSelfMember().getPermissions());
    

    Si has confirmado que el bot tiene los permisos y roles necesarios, y el error persiste, es posible que necesites ajustar manualmente la jerarquía de roles en la configuración del servidor para permitir que el bot modifique los apodos de los roles superiores.

Comments are closed.