Corvusbot is a specialized Discord bot designed for the Corvus Coasters server.
🎯 Automated Welcome System
- Greets new members with personalized welcome messages
- Generates custom welcome cards with member avatars
- Displays current member count
- Sends helpful DMs to new members with rules and introduction channel links
🤖 Other features
- AI powered greeting detection ads a wave reaction to greetings.
- Simple to use moderation commands
Join the Corvus Coasters Discord to connect with other theme park enthusiasts – and don’t forget to check out the Corvus YouTube channel!
If you need any help dm me Discorduser: theminemat
- Node.js (v14 or higher)
- Discord Application & Bot Token
- Access to Discord server with appropriate permissions
-
Clone the repository
git clone https://github.com/Theminemat/Corvusbot.git cd Corvusbot -
Install dependencies
npm install discord.js dotenv node-fetch
-
Environment Configuration Create a
.envfile in the root directory:TOKEN=your_discord_bot_token_here GEMINI_API_KEY=your_gemini_api_key_here
You can get an free gemini api key here: https://aistudio.google.com/app/apikey
-
Discord Bot Setup
- Create a new application at Discord Developer Portal
- Create a bot user and copy the token
- Enable the following bot permissions:
Send MessagesEmbed LinksRead Message HistoryAdd ReactionsModerate MembersBan Members
- Enable the following privileged gateway intents:
Server Members IntentMessage Content Intent
-
Invite Bot to Server Generate an invite link with the required permissions and add the bot to your Discord server.
-
Start the bot
node index.js
-
Verify Operation
- Check console for "✅ Bot started as [BotName]" message
- Test by having a new member join the Discord server
- Welcome message should appear in the designated welcome channel
- Test AI greeting detection by sending messages with greetings
- Verify moderation commands work with appropriate permissions
The bot is configured to send welcome messages to a specific channel. Update the WELCOME_CHANNEL_ID and MAIN_GUILD_ID in index.js:
const WELCOME_CHANNEL_ID = 'your_channel_id_here';
const MAIN_GUILD_ID = 'your_server_id_here';Configure the verified role ID for the role-based messaging system:
const VERIFIED_ROLE_ID = 'your_verified_role_id_here';Whitelist specific users for moderation commands by updating the WHITELISTED_USERS array:
const WHITELISTED_USERS = ['user_id_1', 'user_id_2'];The welcome card background and styling can be modified by updating the imageUrl parameters in the code.
- Runtime: Node.js
- Main Library: Discord.js v14
- External APIs:
- Popcat.xyz (for welcome card generation)
- Google Gemini API (for AI-powered greeting detection)
- Environment: Supports dotenv for configuration management
GatewayIntentBits.GuildsGatewayIntentBits.GuildMembersGatewayIntentBits.GuildMessagesGatewayIntentBits.MessageContentGatewayIntentBits.DirectMessages
- Discord server administrator permissions
- Node.js runtime environment
- Valid Discord bot token
This bot is specifically designed for the Corvus Coasters community. For bug reports or suggestions that fit the scope of the Corvus Discord:
- Open an issue on this repository
- Submit pull requests for approved changes
This project is developed for the Corvus Coasters Discord. You are free to modify and use the bot for your own server as described above. Please link to this repo if you do.
Made by theminemat