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.
Reaction Roles — Self-Service Rollen-Panels
GrumpyReactionRoles ermöglicht es Mitgliedern, sich Rollen selbst zu vergeben — per Button oder Dropdown-Menü, ohne einen Mod fragen zu müssen. Admins richten einmalig Panels ein, User klicken einfach.
Aktivierung
In configs/config.yml:
addons:
reactionroles: true
Beim ersten Start wird configs/modules/reactionroles.yml erzeugt.
reactionroles.yml
enabled: true
defaultColor: "#5865F2" # Standard-Farbe für neue Panels
Setup-Workflow
Ein Panel besteht aus mehreren Gruppen — jede Gruppe ist eine Button-Zeile oder ein Dropdown. Jede Gruppe enthält Rollen-Einträge.
Panel
└── Gruppe 1 (z.B. Buttons, max 1 Wahl → Farb-Rollen)
│ ├── Blau-Rolle
│ ├── Rot-Rolle
│ └── Grün-Rolle
└── Gruppe 2 (z.B. Dropdown, unbegrenzt → Ping-Rollen)
├── @Events-Ping
└── @Updates-Ping
Schritt 1 — Panel erstellen
/reactionrole panel create #kanal Wähle deine Rollen
Schritt 2 — Gruppe hinzufügen
/reactionrole group add <panel-id> buttons label:"Farb-Rollen" max:1
style:buttons(Buttons) oderselect(Dropdown)max:0= unbegrenzt ·1= Exklusiv-Wahl (alte Rolle wird automatisch entfernt) ·2–25= Multi-Selectrequired-role: User braucht diese Rolle um die Gruppe zu nutzen (optional)placeholder: Dropdown-Platzhaltertext
Schritt 3 — Rollen hinzufügen
/reactionrole role add <panel-id> <group-id> @Blaue-Rolle label:"💙 Blau"
/reactionrole role add <panel-id> <group-id> @Rote-Rolle label:"❤️ Rot" emoji:"❤️"
Schritt 4 — Deployen
/reactionrole panel deploy <panel-id>
Das Panel wird in den konfigurierten Kanal gepostet. Wenn die Nachricht gelöscht wird, einfach erneut /reactionrole panel deploy ausführen — postet automatisch neu.
Commands-Übersicht
| Command | Beschreibung | Berechtigung |
|---|---|---|
/reactionrole panel create |
Panel erstellen | Manage Roles |
/reactionrole panel deploy |
Panel posten / aktualisieren | Manage Roles |
/reactionrole panel delete |
Panel löschen | Manage Roles |
/reactionrole panel list |
Alle Panels anzeigen | Manage Roles |
/reactionrole panel info |
Panel-Details | Manage Roles |
/reactionrole group add |
Gruppe hinzufügen | Manage Roles |
/reactionrole group remove |
Gruppe entfernen | Manage Roles |
/reactionrole role add |
Rolle zur Gruppe hinzufügen | Manage Roles |
/reactionrole role remove |
Rolle entfernen | Manage Roles |
Alle Subcommands haben Autocomplete für Panel-ID und Gruppe-ID.
Limits
| Was | Limit |
|---|---|
| Gruppen pro Panel | 5 (Discord: max 5 Action Rows) |
| Buttons pro Gruppe | 25 (5 Rows × 5 Buttons) |
| Optionen pro Dropdown | 25 |
| Panels pro Server | Unbegrenzt |
Sicherheit
- Rollen-Validierung: Button-CustomIDs werden gegen die DB validiert — manipulierte Klicks mit fremden Rollen-IDs werden abgelehnt.
- Per-User-Lock: Doppel-Klick-Schutz verhindert Race Conditions bei
maxSelections. - Hierarchie-Check: Bot kann keine Rollen vergeben, die höher als seine eigene Höchst-Rolle sind.
- Guild-Ownership: Alle Subcommands prüfen, dass das Panel zum eigenen Server gehört.
GrumpyCore Wiki
⚙️ Setup
🔧 Core-Module
🆕 Neue Module
💬 Commands
👥 Staff
GrumpyCore Wiki (English)
⚙️ Setup
🔧 Core Modules
🆕 New Modules
💬 Commands
👥 Staff