Bot type
Discord leveling bot maker
Your own XP curve, cooldown and rewards. Rank and leaderboard commands included.
Levels keep chatty communities active. The rules matter: how much XP a message gives, how long the cooldown is, what a level costs and which roles are given at which level. Ready-made bots have their own curves. In a custom bot you choose all of it.
Describe your rules and BotsMaker writes the XP system, the commands and the role rewards, with the numbers in a config file so you can tune them later.
Example description
A leveling bot: members get 15 to 25 XP per message with a 60 second cooldown. /rank shows level and XP as an embed with a progress bar, /leaderboard shows the top 10, and a role is given at level 5 and level 10. Save data in a JSON file.
Commands and parts
/rank [member]level, XP and progress to the next level/leaderboardtop 10 members by XP/setlevelrole level rolerole reward for a levelmessageCreate (event)adds XP with a cooldown
XP, cooldowns and the level curve
A typical setup gives a random amount of XP once per minute per member, so that spamming does not help. The XP needed for a level grows with the level, for example 100 times the level squared. You can ask for any formula in the description.
The Message Content intent
A bot that counts messages must receive them, and that needs the privileged Message Content intent. Switch it on in the Developer Portal. The bot does not store message text, only the member id and the XP.
Role rewards
At a given level the bot gives a role. As with any role action, the bot role must be higher than the reward roles in the server role list. Roles from earlier levels can be removed if you want only the highest.
Data and fairness
Levels are kept in a JSON file written safely, and you can ask for a command that resets or edits a member. Ignore bots and certain channels by naming them in the description.
Questions
Is there a rank image card?⌄
Embeds with a progress bar are generated by default. Image cards need an image library, which BotsMaker does not use, so the bot stays easy to install.
How many servers can it handle?⌄
A JSON file is fine for small and medium servers. A very busy server should move to a database later.
Can I stop members from farming XP?⌄
The cooldown is the main protection. You can also ask for minimum message length and for ignored channels.
Related guides
- How to make a Discord bot with AI, without coding7 min read
- Create a Discord bot token and invite link, step by step6 min read
- Discord slash commands explained: how bots receive them7 min read