Skip to main content
Guias
GuiasRolesBasics

Cargos e permissões no Discord: por que seu bot não consegue dar aquele cargo

A hierarquia de cargos é o motivo mais comum de algo não funcionar no Discord. Entenda uma vez e economize horas de investigação.

Publicado em por AlphaCloud4 min de leitura

Existe uma situação pela qual todo dono de servidor passa um dia: um bot deveria dar um cargo e não dá. O bot tem Administrador. A configuração está salva. Mesmo assim, nada acontece.

A causa quase sempre é a mesma, e não tem nada a ver com permissões.

Dois sistemas, não um

O Discord decide em duas etapas separadas se alguém pode fazer algo:

  1. A permissão. Esse cargo pode gerenciar cargos?
  2. A posição. Esse cargo está alto o bastante para mexer no cargo de destino?

A maioria das pessoas só conhece a primeira etapa. É na segunda que dá errado.

A regra em uma frase

Um membro, bot incluído, só pode dar e remover cargos que estão abaixo do seu próprio cargo mais alto. E só pode moderar membros cujo cargo mais alto está abaixo do seu.

Isso vale mesmo com Administrador. Administrador sobrepõe permissões, não a hierarquia. Um bot com Administrador cujo cargo está no fim da lista não consegue fazer praticamente nada.

Um exemplo

Sua lista de cargos está assim, de cima para baixo:

Owner
Administrator
Moderator
AlphaCloud          <- the bot's role
Verified
Member

O que o bot consegue fazer:

  • Dar e remover Verified e Member
  • Moderar membros cujo cargo mais alto é Verified ou Member

O que o bot não consegue fazer:

  • Dar Moderator, porque esse cargo está acima dele
  • Expulsar, banir ou renomear um moderador
  • Mexer num administrador

Se você quer que o bot consiga dar o cargo de moderador, precisa arrastar o cargo dele para cima de Moderator. Não o contrário.

O conselho prático

Coloque o cargo do bot logo abaixo do seu cargo mais alto da equipe. Assim:

Owner
Administrator
AlphaCloud          <- here
Moderator
Verified
Member

Assim o bot pode gerenciar tudo abaixo da liderança sem conseguir mexer na própria liderança. Isso é quase sempre exatamente o que você quer.

Você muda a ordem em Configurações do servidor, Cargos, arrastando.

Três casos especiais que continuam não funcionando

Mesmo com uma hierarquia perfeita, há três coisas que o Discord nunca permite a um bot:

Renomear ou moderar o dono do servidor. O dono fica fora da hierarquia. Nenhum cargo e nenhuma permissão mudam isso.

Editar cargos na mesma posição. Dois cargos na mesma altura não podem mexer um no outro. Precisa estar realmente acima, não no mesmo nível.

Dar o cargo @everyone. Todo mundo o tem automaticamente, ele não pode ser atribuído.

Permissões de canal vencem as do servidor

O segundo caso mais comum: pelo cargo, o bot pode enviar mensagens, mas não envia em exatamente um canal.

O Discord permite exceções por canal às permissões do servidor. Se Enviar mensagens estiver negado explicitamente num canal para @everyone ou para um dos cargos do bot, isso vence, não importa o que o cargo do servidor diga.

Você pode conferir isso direto: configurações do canal, Permissões, e lá em cima selecione o bot em Ver permissões de. O Discord mostra exatamente o que ele pode fazer naquele canal.

Qual permissão para quê

Se você prefere não dar Administrador geral a um bot, esta é a lista realista:

Tarefa Permissão
Dar cargos Gerenciar cargos
Tickets, canais temporários Gerenciar canais
Apagar spam Gerenciar mensagens
Silenciar Castigar membros
Remover Expulsar membros, Banir membros
Mover para o canal AFK Mover membros
Prefixar apelidos Gerenciar apelidos
Saber quem disparou uma ação Ver registro de auditoria

Administrador continua sendo a escolha pragmática se você usa muitas funções. Não porque seja mais seguro, mas porque senão cada função nova te manda caçar a única permissão que falta. De qualquer forma, a hierarquia continua sendo a alavanca mais importante.

A versão curta para resolver problemas

Quando algo não funciona, siga estas quatro perguntas em ordem:

  1. O cargo do bot está acima do cargo em questão?
  2. O cargo do bot está acima do membro em questão?
  3. O bot tem a permissão correspondente no nível do servidor?
  4. Essa permissão está negada explicitamente neste canal?

Em nove de cada dez casos é a pergunta 1 ou 2.

Mais artigos