Leveling & XP
Members earn XP from chatting, talking in voice, and getting reactions, level up automatically, and can customize a personal rank card.
Commands
XP & Levels
Levels use a fixed curve โ each level needs progressively more XP than the last:
| Level | XP to reach next level | Total XP to reach it |
|---|---|---|
| 1 | 155 | 100 |
| 2 | 220 | 255 |
| 3 | 295 | 475 |
| 5 | 475 | 1,150 |
| 10 | 1,100 | 4,675 |
Three Independent XP Sources
Each can be turned on/off separately, and each is tracked on your rank card:
| Source | Amount | Cooldown | Notes |
|---|---|---|---|
| Chat | 15โ25 XP per message (random) | 60 seconds per user | Bots excluded |
| Voice | 10 XP per minute | 60-second tick, plus a final partial-minute payout on leaving | Needs 2+ humans in the channel; self-deafened members earn nothing |
| Reaction | 5โ10 XP per reaction (random) | 30 seconds per reactorโauthor pair | Awarded to both the reactor and the message author; self-reactions and bot reactors don't count |
Multipliers
Two lists stack multiplicatively with each other and with any active vote/shop XP boost: role multipliers (e.g. a 2ร "Supporter" role) and channel multipliers (e.g. 0.5ร in an off-topic channel). If a member matches multiple role multipliers, whichever deviates furthest from 1ร wins.
XP-exempt channels and XP-exempt roles block earning entirely (all three sources) rather than just reducing the rate.
Level-Up Announcements
Post to a dedicated channel, or directly in whatever channel the member was chatting in. Message supports {user} {username} {level} {server}. "Only announce role rewards" limits announcements to level-ups that actually grant a new role, while XP/levels still apply silently the rest of the time.
Role Rewards
Assign roles per level from the dashboard. Two modes:
- Replace (default) โ a member only ever holds their single highest-earned reward role; lower reward roles are stripped as they level up.
- Stack โ every reward role they've earned accumulates.
"Keep roles/XP on leave" controls whether a leaving member's level data is wiped or preserved for if they come back.
Leaderboards
Beyond the on-demand /level leaderboard, two optional automatic modes exist, configurable independently:
| Mode | Behavior |
|---|---|
| Sticky Leaderboard | Reposts one pinned top-20 embed every time someone levels up, so it's always the newest message |
| Auto Leaderboard | Edits one message on a fixed timer (default every 5 minutes) regardless of level-up activity |
Rank Card
Shows avatar, display name, level, rank, an XP progress bar toward the next level, a Server Booster badge if currently boosting, and a 4-stat row of Total/Chat/Voice/React XP. Customize via /level card: border color, background color or image, font color, and an optional text outline color. Color fields accept a hex code with or without the leading #. A member's own customization always overrides the server-wide defaults an admin can set on the dashboard.
Backgrounds support animated GIFs, and Aegis renders a genuinely animated card, not just a static frame โ send one from Discord's built-in GIF picker, paste almost any direct image or GIF link (Discord CDN, Tenor, Giphy, and most other hosts all work), or upload a file directly. Uploads can be up to 20MB and 1920ร1080 (larger images auto-resize); very long or high-frame-count GIFs may fall back to a static image if they're too heavy to animate.
A card with no customized background or color gets a bundled animated circuit-trace background by default instead of a bare card, no setup required. Admins can turn this off server-wide with "Disable animated backgrounds" in Rank Card Settings on the dashboard, which forces every card to render as a still image regardless of whether its background is a GIF.
Importing Existing Levels
The dashboard supports importing level data from MEE6 or a generic CSV/JSON format, and manually setting/adding/removing/resetting an individual member's XP.