Bot do Discord para colecionar Pokémon. Pokémons aparecem automaticamente no servidor em intervalos aleatórios — seja rápido para capturar antes dos seus amigos!
- Spawn automático com intervalo aleatório (20–60 min)
- Pokémons lendários com 5% de chance e despawn de 5 minutos
- Pokémons shiny com chance de 1/4096 (igual aos jogos)
- Embeds coloridos pelo tipo do Pokémon
- Notificação de cargo para spawns especiais (lendário/shiny)
- Despawn automático com edição do embed
- Anti-race condition na captura (transação atômica no banco)
| Comando | Descrição |
|---|---|
/capturar |
Captura o Pokémon selvagem atual |
/pokedex |
Veja sua coleção (ou de outro jogador) com paginação |
/perfil |
Card com ranking, stats e Pokémon favorito |
/favoritar <pokemon> |
Define seu Pokémon favorito |
/ranking |
Top 10 colecionadores do servidor |
/trocar @usuario <meu> <deles> |
Propõe uma troca real entre dois jogadores |
/help |
Guia interativo para novos jogadores |
/spawn |
Força um spawn (admin only) |
- Node.js + discord.js v14
- PostgreSQL (via
pg) - PokéAPI — dados e imagens dos Pokémons
- Node.js 18+
- PostgreSQL
- Bot criado no Discord Developer Portal
git clone <repo>
cd dc-pokemon
npm installCopie .env.example para .env e preencha:
DISCORD_TOKEN= # Token do bot
DISCORD_CLIENT_ID= # ID da aplicação
DISCORD_GUILD_ID= # ID do servidor
DATABASE_URL= # postgresql://localhost/dc_pokemon
SPAWN_CHANNEL_ID= # Canal onde os Pokémons vão aparecer
ADMIN_IDS= # IDs separados por vírgula (para /spawn)
NOTIFY_ROLE_ID= # Cargo mencionado em spawns especiaiscreatedb dc_pokemonO schema é aplicado automaticamente na inicialização do bot.
npm run deploynpm startNo Discord Developer Portal, vá em OAuth2 → URL Generator e selecione os scopes:
botapplications.commands
Permissões necessárias:
- Send Messages
- Embed Links
- Read Message History