Hierarquia de Cargos do Discord e Operações de Bot: Armadilha Comum
🔍 WiseChecker

Hierarquia de Cargos do Discord e Operações de Bot: Armadilha Comum

O sistema de permissões do Discord depende de uma hierarquia rígida de cargos. Quando um bot não consegue executar ações como atribuir cargos ou expulsar membros, a causa geralmente é um posicionamento incorreto do cargo. Muitos administradores de servidor acham que dar ao bot a permissão de Administrador é suficiente para ignorar todas as restrições. Isso não é verdade. O cargo mais alto do bot deve ficar acima do cargo mais alto do usuário alvo para que comandos de moderação específicos funcionem. Este artigo explica exatamente como a hierarquia afeta as operações do bot e como corrigir falhas de permissão passo a passo.

Principais Conclusões: Hierarquia de Cargos e Permissões do Bot no Discord

  • Configurações do Servidor > Cargos > arraste o cargo do bot acima dos cargos alvo: O cargo mais alto do bot deve estar posicionado acima de qualquer cargo que ele precise gerenciar.
  • O cargo do bot deve ter a permissão Gerenciar Cargos: Mesmo que o bot seja administrador, a permissão Gerenciar Cargos deve estar ativada explicitamente no cargo dele.
  • Configurações do Usuário > Avançado > Modo Desenvolvedor: Permite copiar IDs de usuários com clique direito para testar comandos do bot sem conflitos de hierarquia.

Por que a Hierarquia de Cargos do Discord Bloqueia Ações do Bot

O Discord usa um sistema de hierarquia de cargos onde os cargos são classificados por sua posição na lista Configurações do Servidor > Cargos. O cargo no topo da lista tem a classificação mais alta. Quando um bot tenta executar uma ação em um usuário, o Discord verifica a posição do cargo mais alto do bot em relação ao cargo mais alto do usuário alvo. Se o cargo do bot for inferior ou igual, a ação é negada.

Isso se aplica a todos os comandos de moderação: expulsar, banir, silenciar e atribuir cargos. Por exemplo, se um bot tem um cargo na posição 5 e um membro tem um cargo na posição 3, o bot não pode expulsar esse membro porque seu cargo é inferior. A mesma regra se aplica quando o bot tenta atribuir um cargo a si mesmo ou a outro usuário. O bot não pode atribuir um cargo que esteja posicionado no mesmo nível ou acima do seu próprio cargo mais alto.

Outro equívoco comum é que a permissão de Administrador ignora a verificação de hierarquia. Administrador concede acesso a todas as permissões, mas a verificação de hierarquia é separada. Mesmo com Administrador, um bot não pode agir sobre um usuário com um cargo mais alto. O cargo do bot ainda deve estar posicionado acima do cargo do usuário alvo.

Passos para Corrigir Falhas de Permissão do Bot Causadas pela Hierarquia de Cargos

  1. Abra as Configurações do Servidor
    Clique com o botão direito no ícone do seu servidor na barra lateral esquerda. Selecione Configurações do Servidor no menu de contexto.
  2. Navegue até a seção Cargos
    No menu esquerdo, em Gerenciamento de Usuários, clique em Cargos. Você verá uma lista de todos os cargos do servidor, ordenados do mais alto ao mais baixo.
  3. Localize o cargo do bot
    Encontre o cargo atribuído ao seu bot. Se você tiver vários cargos no bot, encontre o mais alto. O bot usa seu cargo mais alto para verificações de hierarquia.
  4. Arraste o cargo do bot para cima dos cargos alvo
    Clique e arraste o cargo do bot para cima na lista. Posicione-o acima de qualquer cargo que o bot precise gerenciar. Por exemplo, se o bot deve expulsar membros com o cargo Moderador, arraste o cargo do bot para cima de Moderador.
  5. Verifique a permissão Gerenciar Cargos
    Clique no nome do cargo do bot. Em Permissões Gerais, certifique-se de que a opção Gerenciar Cargos está ativada. Essa permissão permite que o bot atribua e remova cargos de outros usuários.
  6. Salve as alterações e teste
    Clique em Salvar Alterações na parte inferior. Use um comando de teste como !kick @Usuário ou !mute @Usuário para confirmar que o bot agora funciona em usuários com cargos inferiores.

Se o Bot do Discord Ainda Não Consegue Executar Ações Após a Correção

O cargo do bot ainda está abaixo de um cargo que precisa gerenciar

Verifique a lista de cargos novamente. O cargo do bot deve estar acima de todos os cargos que ele irá atribuir ou gerenciar. Se você tiver vários cargos, certifique-se de que o cargo do bot está no topo da lista. Arraste-o acima de todos os cargos, exceto o cargo padrão @everyone, que deve permanecer na parte inferior.

O bot não tem a permissão necessária no cargo

Mesmo com a hierarquia correta, o bot deve ter a permissão específica ativada. Para expulsar, a permissão Expulsar Membros deve estar no cargo do bot. Para banir, Banir Membros. Para silenciar, Silenciar Membros ou Colocar em Tempo Limite. Abra o cargo do bot e verifique cada permissão individualmente.

O bot está tentando atribuir um cargo mais alto que ele mesmo

Se o bot tenta atribuir um cargo que está posicionado no mesmo nível ou acima do seu próprio cargo mais alto, a ação falha. Por exemplo, se o cargo do bot está na posição 2 e o cargo Admin está na posição 1, o bot não pode atribuir o cargo Admin. Mova o cargo do bot para cima de qualquer cargo que ele precise atribuir.

O bot está usando um comando ou código desatualizado

Alguns comandos de bot mais antigos podem não verificar a hierarquia corretamente. Atualize o bot para a versão mais recente ou entre em contato com o desenvolvedor do bot. Verifique o servidor de suporte do bot para problemas conhecidos com comandos específicos.

Item Configuração Incorreta Configuração Correta
Posição do cargo do bot Abaixo do cargo Moderador Acima do cargo Moderador
Permissão Gerenciar Cargos Desativada Ativada
Cargo do bot e cargo do usuário alvo Posição igual Cargo do bot estritamente superior

Agora você entende exatamente como a hierarquia de cargos do Discord afeta as operações do bot. O cargo mais alto do bot deve estar posicionado acima de qualquer cargo que ele precise gerenciar ou atribuir. Verifique a permissão Gerenciar Cargos no cargo do bot e certifique-se de que está ativada. Como dica avançada, use o Modo Desenvolvedor para copiar IDs de usuários e testar comandos em usuários específicos sem se preocupar com conflitos de hierarquia. Essa abordagem economiza tempo ao depurar problemas de permissão.