This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Leveling — XP, Ränge & Leaderboard
GrumpyLeveling vergibt XP für Nachrichten und Voice-Aktivität, zeigt Rang-Karten an und kann beim Level-Up automatisch Rollen vergeben.
Aktivierung
In configs/config.yml:
addons:
leveling: true
channels:
levelup: "" # "" = gleicher Kanal, "dm" = DM, oder Channel-ID
Beim ersten Start wird configs/modules/leveling.yml erzeugt.
leveling.yml
enabled: true
messageXp:
enabled: true
min: 15 # Min XP pro Nachricht
max: 25 # Max XP pro Nachricht
cooldownSeconds: 60 # Cooldown zwischen XP-Awards pro User
ignoredChannels: [] # Channel-IDs ohne XP
voiceXp:
enabled: true
xpPerMinute: 2 # XP pro Minute im Voice-Channel
excludedChannels: [] # Ausgeschlossene Voice-Channels (z.B. AFK)
levelUp:
channel: "" # "" = Kanal der Nachricht | "dm" | Channel-ID
# Fallback: channels.levelup in config.yml
message: "🎉 {user} hat **Level {level}** erreicht!"
# Placeholders: {user}, {level}, {xp}
roleRewards: []
# Rollen-Belohnungen bei bestimmten Levels, z.B.:
# - level: 5
# roleId: "123456789"
# - level: 10
# roleId: "987654321"
stackRoles: true # true = alle Level-Rollen behalten
# false = nur höchste aktuelle Level-Rolle
accentColor: "#5865F2" # Akzentfarbe für Rang-Karten und Level-Up-Karten
XP-Formel
GrumpyLeveling verwendet die MEE6-kompatible Formel:
XP für Level n → n+1 = 5 × n² + 50 × n + 100
| Level | XP für diesen Level | Gesamt-XP |
|---|---|---|
| 0 → 1 | 100 XP | 100 XP |
| 1 → 2 | 155 XP | 255 XP |
| 5 → 6 | 475 XP | 1.700 XP |
| 10 → 11 | 1.100 XP | 5.500 XP |
| 20 → 21 | 3.100 XP | 27.200 XP |
Nur totalXp wird gespeichert — Level und Fortschritt werden immer daraus berechnet.
Voice-XP
Alle 60 Sekunden scannt der Bot alle Voice-Channels und vergibt xpPerMinute XP an berechtigte Mitglieder.
Berechtigt: User ist im Voice-Channel + mind. 1 weiterer nicht-Bot-User + nicht server-gemutet + nicht gedeafened.
Level-Up Karte
Beim Level-Up postet der Bot automatisch eine Canvas-Karte (900×300 px):
╔══════════════════════════════════════════════════════╗
║ ⬆ LEVEL UP! ║
║ [Avatar] Username ║
║ Level 12 ║
║ ████████░░ 2450 / 3050 XP ║
╚══════════════════════════════════════════════════════╝
- Gleicher Stil wie die Rang-Karte (
/rank) - Akzentfarbe aus
accentColorinleveling.yml - Fallback auf Text-only wenn Avatar-Fetch fehlschlägt
Kanal-Priorität: levelUp.channel in leveling.yml → channels.levelup in config.yml → gleicher Kanal wie Trigger-Nachricht
Commands
/rank [@user]
Zeigt die Canvas-Rang-Karte (900×280 px) mit:
- Rundes Avatar mit Akzent-Glow-Ring
- Username, Level, Server-Rang (#N)
- XP-Fortschrittsbalken
/rank
/rank @Jonas
/leaderboard [page]
XP-Rangliste des Servers — 10 User pro Seite mit ◀▶-Navigation. Zeigt Level und Gesamt-XP.
/xp give|take|set|reset @user [amount]
Admin-Verwaltung der XP. Löst Level-Up-Karte aus wenn nötig.
| Subcommand | Beschreibung |
|---|---|
give @user 500 |
500 XP hinzufügen |
take @user 200 |
200 XP abziehen (min. 0) |
set @user 5000 |
Total-XP auf 5000 setzen |
reset @user |
Alles auf 0 zurücksetzen |
Berechtigung: Manage Guild
Rollen-Belohnungen
In leveling.yml können Rollen bei bestimmten Levels automatisch vergeben werden:
roleRewards:
- level: 5
roleId: "1234567890" # Rolle "Aktiv"
- level: 10
roleId: "9876543210" # Rolle "Veteran"
- level: 25
roleId: "1122334455" # Rolle "Legend"
stackRoles: true # User behält alle Rollen (empfohlen)
# false = bei Level 10 wird Rolle Level 5 entfernt
Der Bot benötigt
Manage Rolesund seine Rolle muss in der Hierarchie über den Belohnungsrollen stehen.
GrumpyCore Wiki
⚙️ Setup
🔧 Core-Module
🆕 Neue Module
💬 Commands
👥 Staff
GrumpyCore Wiki (English)
⚙️ Setup
🔧 Core Modules
🆕 New Modules
💬 Commands
👥 Staff