Leveling
XP for talking and for time in voice, with level roles and leaderboards.
Replace [prefix] with your server's prefix.
Turning It On
// Syntax
[prefix]level enable
// Example
;level enable
Needs Manage Server. From then on members earn XP for talking; voice XP is a separate switch.
;level disable // asks for confirmation, keeps nothing
How XP Works
| Per message | 15 – 25 XP, at random |
| Cooldown | 60 seconds per member |
To leave level n | 5n² + 50n + 100 XP |
The cooldown is what stops spam from being a strategy: one message a minute earns the same as fifty. The formula means each level takes longer than the last — level 1 needs 155 XP, level 10 needs 1,100, level 50 needs 15,100.
Voice LevelsA second XP track for time spent in voice channels.Checking Levels
;rank // your rank card
;rank @member
;level // the same as an embed
;level leaderboard

The Level Up Message
// Syntax
[prefix]level message [text]
// Example
;level message Good job, {user}! You reached **Level {level}**
;level variables // what you can put in it
;level test // send yourself a preview
;level channel #levels
Without a channel the message goes to wherever the member levelled up. Setting one collects them all in one place, which is the polite option for a busy server.
The message accepts full embed code, so a level up can be a proper embed rather than a line of text.
Adjusting and Resetting
// Syntax
[prefix]level set [member] [level]
// Example
;level set @member 20
;level reset @member // one member back to zero
;level reset // everyone, with a confirmation
;level config // every setting at a glance
Ignoring
Not every channel should count. Bot spam and command channels usually shouldn't:
;level ignore channel #bot-commands
;level ignore user @member
;level ignore role @Muted
;level ignore list
;level ignore remove #bot-commands
Ignoring a role stops everyone holding it from earning XP anywhere. It's meant for punishment roles — using it on a normal member role quietly switches leveling off for most of your server.