A Discord bot for managing raid absences and other utility functions.
- Raid absence management
- Multi-server support
- MongoDB data persistence
- Express health check endpoints
- Node.js 22.x or higher
- MongoDB database
- Discord Bot Token
- Go to Discord Developer Portal
- Create a new application
- Go to "Bot" section and create a bot
- Copy the bot token
- Copy the Application ID from "General Information"
When inviting the bot to servers, ensure it has these permissions:
Send MessagesUse Slash CommandsRead Message HistoryEmbed Links
- Copy
.env.exampleto.env - Fill in your values:
DISCORD_TOKEN=your_bot_token_here
CLIENT_ID=your_application_id_here
MONGO_URI=mongodb://localhost:27017/discordbot
PORT=8080
npm installnpm run deploynpm startFor development with hot reload:
npm run dev/absent- Mark an absence for raid dates/absentlist- View absence list/absentremove- Remove your own absence/absentremoveadmin- Admin command to remove any absence
- Make sure commands are deployed:
npm run deploy - Check bot permissions in the server
- Verify bot token and client ID are correct
- Check MongoDB connection
- Global commands can take up to 1 hour to appear
- For testing, use
npm run devwhich deploys to a specific guild instantly
- Ensure MongoDB is running and accessible
- Check MONGO_URI in your .env file