NOVO 📢 Oferta de lançamento limitada: até 70% de desconto no seu primeiro mês, em todos os jogos!Ver planos

Como hospedar o Bastion, um bot do Discord tudo em um

Hospedagem de bot do DiscordUpdated Oct 29, 20267 min read

O Bastion é um bot do Discord tudo em um: moderação e automoderação, níveis, mensagens de boas-vindas, starboard, sorteios, enquetes, música, jogos e mais. O banco de dados MongoDB dele roda dentro do seu servidor, ao lado do bot, por isso ele precisa de um plano com pelo menos 2 GB de memória. Da sua parte, ele só precisa do token do bot e de três intents ligados.

  1. No Discord Developer Portal, crie o bot, copie o token dele e, na página Bot, ligue Presence Intent, Server Members Intent e Message Content Intent.
  2. No painel, faça o servidor rodar o Bastion (Mudar o que roda).
  3. Cole o token no card Configurar seu bot, na Visão geral, e convide o bot.
  4. Clique em Iniciar bot. O Bastion publica os slash commands dele e fica online.

Cada etapa em detalhe abaixo.

Antes de começar

  • Crie o bot e copie o token dele: Como criar um bot do Discord e obter o token.
  • Na página Bot do aplicativo, ligue os três intents privilegiados e clique em Save Changes: o Bastion pede ao Discord Server Members, Presence e Message Content quando faz login.
  • Seu plano precisa ter 2 GB de memória ou mais. Em um plano menor o Bastion não é oferecido: suba de plano em Meu plano, Mudar de plano.

1. Faça o servidor rodar o Bastion

  1. Abra o seu servidor no painel. Na Visão geral, no card Configurar seu bot, clique na etapa O que roda. Ela diz "Este bot roda Bastion." quando o tipo já está certo.
  2. Se não estiver, clique em Mudar o que roda, escolha Bastion, clique em Próxima etapa, marque a confirmação e clique em Mudar o tipo de servidor. A instalação compila o Bastion, então leva alguns minutos.

2. Conecte ao Discord

  1. Etapa Conectar ao Discord: cole o token em Cole o token do seu bot, clique em Conectar e depois em Sim, continuar se o nome e a foto forem do seu bot.
  2. Etapa Permissões: a tabela Intents privilegiados marca Server Members, Message Content e Presence como Necessário para o Bastion. Cada um precisa mostrar Ligado. Depois de mudá-los no Portal, clique em Verificar de novo.
  3. Em Link de convite, clique em Adicionar a um servidor do Discord. O link já pede as permissões de texto de sempre, Conectar, Falar e Usar detecção de voz para a música, e Expulsar membros, Banir membros, Castigar membros e Gerenciar cargos para a moderação. Já convidou o bot antes com menos permissões? Clique de novo e escolha o mesmo servidor: o Discord atualiza as permissões do bot.

O card de configuração na Visão geral, na etapa Permissões do Bastion, com Server Members, Message Content e Presence marcados como Necessário para o Bastion.

3. Inicie

  1. Clique em Iniciar bot no card de configuração, ou em Iniciar no Console. Depois das linhas de início do MongoDB, o console mostra:
[PlayNHost] Publishing Bastion's slash commands to Discord
[PlayNHost] Slash commands published
[PlayNHost] Starting your bot
  1. No seu servidor do Discord, digite / para ver os comandos do Bastion, como /poll e /giveaway.

Você não precisa preencher nada em Código, Configurações para iniciar: Bot Client ID (optional) é lido do token.

Configurações

Na aba Bot, em Código, o card Configurações tem estas opções. Clique em Salvar depois de uma mudança e reinicie o bot.

ConfiguraçãoPadrãoO que faz
Bot Client ID (optional)vazioO Client ID do seu aplicativo. Vazio, ele é lido do token.
Your Discord user ID (optional)vazioFaz de você um dono do bot.
MongoDB addressmongodb://127.0.0.1:27017/bastionDeixe como está para usar o banco de dados dentro do seu servidor.
Publicar comandos ao iniciartrueRegistra os slash commands do Bastion no Discord a cada início.
Music activitytrueMostra a música que está tocando como atividade do bot.
Relay direct messagesfalseEncaminha para o dono as mensagens diretas que o bot recebe.
Unsafe modefalsePermite os comandos exec e eval, que executam código no seu servidor. Deixe desligado, a menos que só você seja dono do bot.

A aba Bot, seção Código, com o card Configurações do Bastion listando as sete opções nos valores padrão.

Todo o resto, como as chaves de API dos comandos de busca e de IA do Bastion, fica no settings.yaml, em Files. Edite-o com o bot parado e depois inicie.

Linhas do console que você pode ver

[PlayNHost] Bastion is not set up yet: it needs your Discord bot token.

Cole o token na aba Bot, em Discord, e depois clique em Iniciar.

[PlayNHost] The commands could not be published (...). Bastion starts anyway; the full log is .pnh/publish-commands.log.

O Discord recusou a lista de comandos, na maioria das vezes porque o token está errado. Abra o .pnh/publish-commands.log em Files para ver o motivo completo. Se for problema de token: clique em Reset Token no Portal e cole o novo com Substituir token.

[PlayNHost] Bastion is not installed. Reinstall it on the Bot page, Code, then press Start.

Os arquivos do bot estão faltando. Clique em Reinstalar no card Reinstalar, em Código, confirme e depois clique em Iniciar quando terminar.

Bom saber

  • Memória: o MongoDB e o Bastion dividem o plano, então a memória de JavaScript do Bastion é limitada à metade do seu plano, deixando espaço para o banco de dados. Acompanhe o card Uso na Visão geral: De quanta RAM um bot do Discord precisa?
  • O banco de dados fica na pasta mongodb, em Files, então um backup do servidor o inclui: Como criar, baixar e restaurar backups.
  • A versão é fixa no Bastion v10.16.0, a release mais nova que roda no Node.js 20 do servidor. Reinstalar, em Código, compila-o de novo e mantém o settings.yaml e o banco de dados.
  • O que a música do Bastion consegue tocar depende do que cada site permite: Bot de música do Discord não toca: soluções.

Todas as opções de todos os bots prontos: Como mudar as configurações de um bot pronto.

Seu bot já está em outro lugar? Traga-o para nós

NOSSOS ÚLTIMOS ARTIGOS