Banco da guilda no Discord: como controlar o banco ou o inventário compartilhado
O jeito mais simples de controlar o banco da guilda no Discord é uma tabela que os membros atualizam com comandos de barra (slash commands). Assim, o que tem no banco, quem colocou e quem tirou fica registrado no servidor onde todo mundo já conversa. A maioria dos servidores começa com uma mensagem fixada que alguém edita na mão, uma planilha do Google Sheets com link num canal ou um bot de economia. Os três funcionam por um tempo. A mensagem fixada quebra quando duas pessoas editam na mesma noite. A planilha funciona até os membros pararem de abri-la, e muitos param, porque ela fica fora do Discord. Bots de economia tratam itens como coisas que as pessoas compram com pontos, o que é um trabalho diferente de "quem está com as nossas 40 barras de ferro".
Este guia monta um inventário que vive dentro do Discord: os membros registram e consultam itens com comandos de barra, e os admins veem a tabela inteira na web. Ele usa o CordBase, que é feito por nós, e leva uns cinco minutos.
O que você vai ter no final
- Um comando
/inventoryno seu servidor com as açõesadd,query,view,updateeleaderboard. - Colunas para o item, a quantidade, o dono, a raridade e anotações.
- Permissões por cargo para que membros comuns consultem, mas só oficiais mudem as quantidades.
- Uma tabela web que você pode exportar em CSV.
Passo 1: adicione o CordBase e instale o template
- Entre em cordbase.gg com o Discord e escolha seu servidor.
- Adicione o bot ao servidor quando o painel pedir.
- Abra a biblioteca de templates e instale o Controle de inventário. Ele vem com cinco colunas: item (texto, obrigatória), quantity (número, obrigatória), owner (membro, obrigatória), rarity (de Common a Legendary) e notes.
Se o seu servidor divide um estoque único de itens, em vez de controlar quem está com o quê, instale o Banco da guilda. Ele tem item, quantity, deposited by, category (materials, gear, consumables, currency) e date. O resto deste guia usa o Controle de inventário; os comandos funcionam do mesmo jeito no Banco da guilda, com os nomes de coluna dele.
O comando leva o nome da tabela, então o template te dá /inventory-tracker. Você pode encurtar isso na página de edição da tabela mudando o slug; este guia supõe que você renomeou para inventory.
Passo 2: restrinja quem pode editar
Tabelas novas deixam todo mundo fazer tudo, o que é ótimo para testar e péssimo para um banco da guilda. Nas permissões da tabela:
- Dê ao cargo que todos os membros têm (por exemplo,
@Member) leitura. Eles podem rodarquery,vieweleaderboard. - Dê ao cargo de oficial escrita, para que possam usar
addeupdate. - Deixe admin (excluir e edições em massa) para a liderança.
Assim que uma tabela tem qualquer cargo configurado, membros sem um desses cargos não conseguem usá-la.
Quem tem a permissão Administrador do Discord mantém acesso total de qualquer jeito.
Passo 3: registre itens pelo Discord
Adicionar uma linha fica assim:
/inventory add item:Iron Bar quantity:40 owner:@Mara rarity:Common
O Discord mostra cada coluna como uma opção, com o seletor de membros para owner e um menu para rarity, então ninguém digita "legendery".
Quando o estoque mudar, atualize a quantidade em vez de cadastrar a linha de novo. Comece a digitar na opção row, escolha o item na lista e defina a opção _mode, que decide o que acontece com os números:
/inventory update row:Iron Bar quantity:15 _mode:Decrement
Isso subtrai 15 da quantidade atual, seja ela qual for. Somar adiciona. Definir (o padrão) substitui o valor. Dois oficiais subtraindo ao mesmo tempo contam os dois, porque a mudança é aplicada como uma operação matemática sobre o valor guardado, e não como um "grave este número".
Passo 4: consulte
/inventory query owner:@Maralista tudo o que está com a Mara./inventory query item:ironencontra todas as linhas cujo item contém "iron", sem diferenciar maiúsculas e minúsculas./inventory query rarity:Legendary limit:25mostra até 25 itens lendários./inventory view row:Iron Bar(escolhido na lista) mostra uma linha completa, com quem a adicionou e quando./inventory leaderboard column:quantityranqueia os itens pelo estoque, do maior para o menor.
Os resultados do query mostram as linhas mais novas primeiro, e os filtros se combinam, então owner:@Mara rarity:Epic restringe aos itens épicos da Mara.
Passo 5: mantenha um histórico (opcional)
A tabela de inventário guarda o estado atual. Se você também quer um registro do que entrou e saiu, instale o Registro de loot ao lado (item, received by, source ou boss, rarity, date) e registre os drops lá. O plano Free tem duas tabelas, então inventário mais registro de loot cabe.
Quando outra coisa funciona melhor
Uma planilha ainda é a ferramenta certa se você precisa de fórmulas, gráficos ou muito cruzamento de dados, e ninguém se importa de sair do Discord para editar. O CordBase não tem fórmulas nem sincronização com o Google Sheets.
Se o seu "inventário" é na verdade uma economia virtual, com membros ganhando moedas e comprando itens numa loja, use um bot de economia como o UnbelievaBoat. O CordBase não roda uma loja nem paga moeda por conta própria.
O CordBase serve quando os dados são registros reais que importam para o servidor, e você quer que as pessoas atualizem pelo Discord sem dar a elas acesso de edição a uma planilha inteira.
Limites que vale conhecer
- Free: 2 tabelas, 100 linhas cada. O Pro (US$ 8/mês) aumenta para tabelas ilimitadas e 10.000 linhas por tabela, e adiciona edições em massa. Exportação em CSV/JSON está em todos os planos.
- Até 25 colunas por tabela.
- As tabelas são criadas na web; os membros não conseguem criar tabelas novas pelo Discord.
Perguntas frequentes
Os membros podem ver só os próprios itens?
Não como permissão. Quem tem acesso de leitura pode consultar a tabela inteira. Os membros podem filtrar as próprias linhas escolhendo a si mesmos na opção owner: /inventory query owner:@yourname.
Posso importar minha planilha atual?
Ainda não. Hoje o CordBase não tem importação de CSV, então as linhas existentes precisam ser adicionadas com /inventory add ou pelo painel. Todos os planos exportam em CSV e JSON.
O bot precisa ler mensagens?
Não. O CordBase só responde a comandos de barra e não pede o intent Message Content.