Revamp your Discord server. Moderation, role management, logging and more, all in an easy to use, feature rich and bug free Discord bot!
/botinfo
Checks how many servers the bot is in./botsuggestion
Submits a suggestion directly to the bot's Discord server./bugreport
Submits a bug report directly to the bot's Discord server./discordserver
Sends an invite link to the bot's support server./invitelink
Sends the invite link for the bot./ping
Displays the bot's current latency in ms./serversettings
Sends current bot settings for this server.
/approved
Approves your profile picture or someone else's./blur
Blurs your profile picture or someone else's./dogfact
Sends a lovely dog fact./catfact
Same as dogfact, except it's for cats./contrast
Adds contrast effect to your profile picture or someone else's./deepfry
Add deepfried effect to your profile picture or someone else's./define
Looks up a term in the dictionary./nasanews
Looks up an astronomy-related term on NASA's Website and returns a fact about it./weather
Tells you information about the weather in a given location./yomomma
Sends a your mom joke to someone.
/avatar
Displays the avatar of a user./help
Displays a list of all available commands along with their usage./serverinfo
Displays information about the server you're in./userinfo
Displays information about a user's account account.
/addnote
Adds an admin note on someone's account. All staff members will be able to view this note./ban
Restricts a user's access to the server./baninfo
View details about a banned user./checknames
Check a member's previous nicknames./clear
Bulk deletes a certain amount of messages./delnote
Deletes a note from a user./delsuggestion
Deletes a suggestion./disablecmd
Disables a command from the server./editnote
Edits a note from a user./enablecmd
Enables a command from the server./kick
Kicks a user out of the server./mute
Restricts a user from sending messages./muteinfo
View details about a muted member./record
Displays how many punishments a user has ever received on the server./remindme
Sets a timer for a reminder./report
Submits a report to the staff's logs channel./serversuggestion
Submit a server suggestion./setlogschannel
Sets a custom channel where moderation logs will be sent./suggestion
Accept or decline a suggestion from your suggestion channel./suggestionchannel
Sets a channel for suggestions to be sent in./togglemsglogs
Toggles message logs on/off./unban
The username of the banned user./unmute
Removes a user's muted status earlier./viewnotes
Shows all notes linked to a user from this server./warn
Sends a warning message to a user.
/rolepicker
Creates a menu that automatically assigns roles to users that react to it./addroletorp
Adds a role option to an existent role picker./removerolefromrp
Removes a role option from an existent role picker./disablerp
Disables an existent role picker./enablerp
Enables a disabled role picker./giverole
Adds a role to a user./takerole
Removes a role from a user.
/setwelcomechannel
Sets a custom channel where newcommers will receive a welcome message./setleavechannel
Sets a custom channel where leaving members will be logged./welcomemessage
Sets a custom welcome message to be displayed when someone joins the server./leavemessage
Sets a custom good bye message for those leaving the server./welcomedm
Sets a custom welcome message that will be inboxed to new users./welcomerole
Sets a role to be assigned to new users when they join the server./togglewelcomemsg
Toggles welcome messages on/off./toggleleavemsg
Toggles leave messages on/off./togglewelcomedm
Toggles welcome DMs on/off.
It's a really useful and good bot. Easy to manage. I would recommend everyone to add this to their respective servers.
A really useful and easy to use bot.
You can invite my official bot running on the latest version from here.
This guide will cover all the steps needed to get a bot up and running from absolute scratch using my source code. If you stumble across any issues with setting it up, my Discord server is the right place to seek help. Please note though, I strongly advice that you have a decent understanding of JavaScript, Node.js and discord.js before diving into this.
-
Open your browser, go to Discord's Developer Portal, click on
New Application
and give your application a name. -
Click on the application you've just created and navigate into
Bot
. Here you can give your bot a username, description (that will show up in the About Me section) and an avatar. You want to make sure that theServer Members Intent
stays enabled. -
In order to have your bot join any servers, you have to create an invite link. The invite url will contain your bot's user ID (which you can copy from the
Application
menu). Simply replace[your_bot_id]
with your bot client ID you just copied in the template below, then use it to invite the bot.https://discord.com/oauth2/authorize?client_id=[your_bot_id]&permissions=268561494&scope=bot%20applications.commands
-
Before downloading the bot's source code, you must download and install Node.js on your computer.
-
You can now proceed to download the latest code. Scroll to the latest release and download the corresponding zip file, then extract it somewhere on your computer.
-
Navigate into the folder you've just extracted (which should contain all the code), right click and open a new terminal in the folder (my recommendation would be PowerShell 7 if you're a Windows user). Use the following command to install all the dependencies:
npm i
-
Go back to the
Developer Portal
into your browser and navigate intoBot
. Here you want to click onCopy
to copy your bot's token. This token is the password for your bot account, so you want to keep that as secure as possible in an environment variable. -
Open the code using your preferred text editor (I recommend sticking to Visual Studio Code). To speed this up, you can type
code.
in the terminal. -
With your text editor, navigate into the
.env
file and replaceyour_bot_token
with the token you just copied, then hit save.
-
The bot offers suggestions and bug reporting features. For those to work, you have to create 2 channels for suggestions and bug reports respectively.
-
Right click on the suggestions channel, then hit
Copy ID
. Replace thechangeme
in thesuggestionChId
field with the ID you copied. -
Repeat for the bug reports channel by editing the
bugChId
field. -
You can finally edit your
botInviteLink
,discordInviteLink
,topgg
,website
andgithub
fields with your own urls (or leave them empty). -
You can also edit the
package.json
file.
-
Here comes the trickier part, setting up a MongoDB database for the bot to store its data in. Start by registering an account at MongoDB.
-
Navigate to
Databases
, then hitCreate
. Select your prefered options (there are options for free tier clusters too). When you're done, clickCreate Cluster
. The creation process can take several minutes, so be patient. -
Once the cluster goes live, click on
Browse Collections
and hitCreate Database
. Here you have to create a database for each field in the.env
file (22 in total). You can start withbannedUsers
. The name of the database is up to you but make sure it's something suggestive as you'll need it later. You can now clickCreate
. -
Repeat for the remaining fields (
bns
,disabledCmds
,kks
,leaveMessages
,leaveChannels
,logChannels
,msgLogs
,mts
,mutedMembers
,names
,notes
,punishments
,reminders
,suggestionChannels
,toggleLeaveMsg
,toggleWelcomeDm
,toggleWelcomeMsg
,welcomeChannels
,welcomeDms
,welcomeMessages
,welcomeRoles
&wrns
). -
Go back to your cluster overview, click
Connect
and choose the second option. Here you have to chooseNode.js
and the2.2.12 or later
version. Copy the connection string. Replacedatabase_url
with the url you copied in all fields of the.env
. Replace<password>
with the password you set on your cluster. ReplacemyFirstDatabase
with the name of the database that you created for the corresponding field. There should be 25 databases in total, which equates to 25 connection strings.
-
In order for the weather command to work, you'll need to generate a key for the OpenWeatherMap API. Register an account there.
-
On the homepage, click on your username and go to
My API keys
. -
Input a name for your key and hit
Generate
. -
Copy the newly generated key, go to the
.env
file and replaceyour_open_weather_map_api_key
with it.
- At this point you're pretty much done. You can now run the following command in your terminal to start the bot. Remember to use it everytime you update the source code:
node .