LuckPerms: Ränge und Rechte richtig einrichten
LuckPerms regelt auf einem Minecraft-Server, wer was darf, und arbeitet mit vier Bausteinen: Benutzern, Gruppen, Permission-Nodes und Contexts. Die Faustregel lautet: Rechte setzt du auf Gruppen und nicht auf einzelne Spieler, und du lässt Gruppen voneinander erben, damit jede Node nur an einer Stelle steht. Ein Aufbau mit fünf Rängen (default, mitglied, vip, moderator und admin) steht mit dem Webeditor in kurzer Zeit, und wenn etwas nicht funktioniert, findest du die Ursache fast immer mit /lp user <name> info und /lp user <name> permission check <node>.
Wie ist LuckPerms aufgebaut?
Eine Permission ist nichts weiter als eine Textzeile, eine Node, die ein Plugin prüft, bevor es etwas ausführt. Fordert jemand /home bei EssentialsX an, schaut EssentialsX nach, ob dieser Spieler essentials.home auf true stehen hat. LuckPerms ist die Verwaltung, die diese Antwort liefert: Jedes Plugin legt selbst fest, welche Nodes es kennt, LuckPerms nur, wer sie hat.
Du verwaltest zwei Arten von Inhabern. Ein Benutzer ist ein Spieler, intern über die UUID gespeichert, damit eine Namensänderung nichts kaputt macht. Eine Gruppe ist eine Sammlung von Nodes, in die du Benutzer steckst. Jeder, der joint, landet automatisch in default; diese Gruppe kannst du nicht löschen, und sie ist der Platz für alles, was wirklich jeder darf.
Zwei Dinge stellst du sofort richtig ein: Weight und Meta. Weight bestimmt die Reihenfolge bei Konflikten und die Sortierung in der Tab-Liste (/lp group vip setweight 20). Meta ist alles, was kein Ja oder Nein ist, zum Beispiel ein Prefix: /lp group vip meta setprefix 20 "&6[VIP] &f". Dieses Prefix taucht im Chat erst über ein Chat-Plugin auf, meistens EssentialsX Chat mit Vault.
Was ist Vererbung, und warum spart sie dir Stunden?
Vererbung bedeutet, dass eine Gruppe eine andere Gruppe als Parent hat und alles daraus übernimmt. Du setzt sie mit /lp group vip parent add mitglied. Willst du später, dass jedes zahlende Mitglied /back bekommt, setzt du diese Node ein einziges Mal in der passenden Gruppe statt einzeln in vier Gruppen.
Bei einem Konflikt gelten zwei Regeln. Eine Node, die du direkt auf eine Gruppe setzt, gewinnt gegen dieselbe Node, die über einen Parent hereinkommt. Kommen zwei Parents mit gegensätzlichen Werten, gewinnt der Parent mit der höheren Weight. So nimmst du gezielt etwas zurück: /lp group vip permission set essentials.tpahere false entfernt diesen Befehl bei vip, obwohl er in mitglied aktiv ist.
Der Nachteil: Fehler wandern mit. Setzt du etwas Gefährliches in default, hat es dein kompletter Server innerhalb einer Sekunde. Teste Änderungen an default deshalb mit einem zweiten Account.
Wie sieht ein funktionierender Rang-Aufbau aus?
Die folgende Struktur passt für die meisten Survival- und SMP-Server, egal ob du nach unserer Anleitung zum Erstellen eines Minecraft-Servers gerade erst anfängst oder einen bestehenden Aufbau aufräumst. Moderator erbt bewusst von default und nicht von vip, damit Spender-Vorteile nicht automatisch bei deinem Team landen.
| Gruppe | Erbt von | Weight | Typische Nodes |
|---|---|---|---|
| default | keine | 0 | essentials.spawn, essentials.msg, essentials.rules |
| mitglied | default | 10 | essentials.home, essentials.sethome, essentials.tpa |
| vip | mitglied | 20 | essentials.hat, essentials.nick, essentials.back |
| moderator | default | 50 | essentials.kick, essentials.mute, coreprotect.inspect, coreprotect.rollback |
| admin | moderator | 100 | essentials.ban, worldedit.*, luckperms.editor |
Diese Nodes stammen aus EssentialsX, CoreProtect und WorldEdit; welche du brauchst, hängt von deinen Plugins ab, siehe dazu unsere Übersicht der besten Minecraft-Plugins. So baust du vip von null auf:
/lp creategroup vip/lp group vip parent add mitglied— vip bekommt alles von mitglied und über mitglied auch alles von default./lp group vip setweight 20— höher als mitglied, niedriger als moderator./lp group vip permission set essentials.nick true— pro Node wiederholen./lp group vip meta setprefix 20 "&6[VIP] &f"/lp user Steve parent add vip, oderparent set vip, um seine bestehenden Gruppen zu ersetzen.
Tracks: befördern, ohne nachzudenken
Ein Track ist eine geordnete Leiter aus Gruppen. Erstelle ihn mit /lp createtrack spieler und fülle ihn mit /lp track spieler append default, danach append mitglied und append vip. Anschließend schiebst du jemanden mit /lp user Steve promote spieler eine Stufe nach oben und mit demote wieder nach unten, ohne dir zu merken, welche Gruppe als Nächstes kommt. Spielzeit- und Spenden-Plugins rufen genau das auf. Halte Team-Ränge aus diesem Track heraus: Du willst nicht, dass jemand von vip zu moderator durchrutscht.
Was sind Contexts, und wann brauchst du sie?
Ein Context ist eine Bedingung, unter der eine Permission gilt; in der Praxis nutzt du world und server. Mit /lp group bauteam permission set worldedit.* true world=kreativ darf diese Gruppe WorldEdit in deiner Kreativwelt einsetzen und sonst nirgends. Mit server=lobby beschränkst du eine Node auf einen einzelnen Server im Netzwerk.
Dafür müssen zwei Dinge stimmen: Jeder Backend-Server hat einen eigenen Namen in der server:-Einstellung der Config, und alle Server teilen sich dieselbe Datenbank. Auf einem einzelnen Server mit nur einer Welt brauchst du keine Contexts; setze sie erst ein, wenn es wirklich nötig ist, denn sie machen die Fehlersuche schwieriger.
Warum gibst du niemandem *?
Die Node * gibt alles, samt Nodes von Plugins, die du erst nächsten Monat installierst, und Nodes, die gerade als Ausnahme gedacht sind. Denk an Bypass-Rechte, mit denen jemand quer durch WorldGuard-Regionen baut, an /lp selbst, womit er sich noch mehr geben kann, und an Befehle, die den Server stoppen oder mit einer einzigen WorldEdit-Auswahl eine halbe Welt löschen. Ein gehackter Moderator-Account reicht dann, um deine Map zu verlieren.
Dasselbe gilt für op: Operatoren überspringen bei vielen Plugins die Rechteprüfung komplett, wodurch LuckPerms dich nicht mehr schützen kann. Die Regel lautet also: deop alle, dich selbst eingeschlossen, und regle alles über Gruppen. Sorg aber dafür, dass du als Hintertür jederzeit an die Konsole kommst; im Pterodactyl-Panel, das beim Minecraft-Hosting von MC-Node standardmäßig dabei ist, steckt sie im Browser. Willst du als Besitzer breiten Zugriff, gib pro Plugin eine Wildcard wie worldedit.*, mit CoreProtect daneben, um Fehler rückgängig zu machen.
Lohnt sich der Webeditor?
Ja, er ist mit Abstand die größte Zeitersparnis, die LuckPerms bietet. Tipp /lp editor in der Konsole oder im Chat ein, öffne den Link, den du zurückbekommst, und du siehst deine komplette Rechtestruktur als bearbeitbare Übersicht: Gruppen nebeneinander, Nodes anhaken oder ziehen, dazu Parents, Weights und Contexts in derselben Ansicht. Bestätigst du deine Änderungen im Editor, bekommst du einen /lp applyedits <code>-Befehl zurück, den du im Server einfügst; erst dann ändert sich wirklich etwas. Fünfzig Nodes auf fünf Gruppen zu verteilen, kostet so ein paar Minuten statt einer halben Stunde Tipparbeit.
Zwei Warnungen. Der Link ist eine geheime Adresse zu deinen Rechtedaten, poste ihn also nicht in einen öffentlichen Discord-Kanal. Und arbeite nicht in zwei Browser-Tabs gleichzeitig, weil du sonst deine eigenen Änderungen überschreibst. Für eine Sicherung nutzt du /lp export backup, das eine Datei im LuckPerms-Ordner ablegt, die du mit /lp import wieder einspielst.
Wie findest du den Fehler bei einer Permission, die nicht greift?
Arbeite dich von oben nach unten durch, dann hast du es meistens innerhalb von vier Schritten gefunden.
/lp user Steve info— zeigt die primäre Gruppe, alle Parents, das Prefix und die Nodes, die direkt auf dem Spieler liegen. Meistens steckt der Fehler schon hier: Der Spieler ist in einer anderen Gruppe als gedacht./lp user Steve permission check essentials.home— liefert nicht nur true oder false, sondern auch, woher dieser Wert stammt./lp verbose on— du siehst live, welche Nodes tatsächlich geprüft werden, sobald jemand den Befehl versucht, inklusive Tippfehlern und Nodes, die anders heißen als angenommen. Schalte es mit/lp verbose offwieder aus: Auf einem vollen Server ist das ein Wasserfall.- Stimmt die Node und es klappt trotzdem nicht, schau außerhalb von LuckPerms: Ist der Spieler op, steht ein WorldGuard-Flag im Weg, oder hat das Plugin einen eigenen Schalter in seiner Config?
Die Klassiker, die du so ans Licht holst: ein zweites Rechte-Plugin, das noch mitläuft, ein false weiter oben in der Kette, ein vergessener Context und eine Node, die in einer neueren Plugin-Version umbenannt wurde.
Wo findest du die Nodes eines Plugins?
Nahezu jedes Plugin dokumentiert seine Rechte an drei Stellen: im Wiki des Projekts, auf der Downloadseite bei SpigotMC oder Modrinth und in der Datei plugin.yml in der JAR. Letztere ist die zuverlässigste Quelle, wenn die Dokumentation hinterherhinkt: Eine JAR ist einfach eine ZIP-Datei, du kannst sie also öffnen und plugin.yml lesen, mit den Befehlen, ihrer Node und dem Standardwert darin. Dynamisch aufgebaute Nodes wie essentials.sethome.multiple.<gruppe> stehen dort nicht; die holst du dir aus der Dokumentation oder aus /lp verbose.
Häufige Fragen
Funktioniert LuckPerms nur auf Paper und Spigot? Nein. LuckPerms wird neben Bukkit, Spigot, Paper und Purpur auch für Fabric, Forge und NeoForge, Sponge sowie für die Proxys Velocity und BungeeCord veröffentlicht. Auf einem Modpack-Server läuft es also ebenfalls, auch wenn Mods ihre Rechte oft weniger sauber dokumentieren und manche komplett auf den op-Status zurückfallen.
Brauche ich Vault neben LuckPerms? Für LuckPerms selbst nicht. Vault ist die Klebeschicht, mit der andere Plugins deine Ränge und Prefixe auslesen, zum Beispiel ein Chat-Plugin, das [VIP] vor deinen Namen setzt. Taucht dein Prefix nirgends auf, fehlt meistens Vault oder ein Chat-Plugin, nicht die Permission.
Wo speichert LuckPerms meine Ränge? Standardmäßig in einer Dateidatenbank im Ordner plugins/LuckPerms, was für einen einzelnen Server völlig reicht. Betreibst du mehrere Server hinter einem Proxy, stell LuckPerms auf MySQL oder MariaDB um, damit alle Server dieselben Daten lesen und eine Beförderung überall gleichzeitig gilt.
Kostet LuckPerms Leistung? Kaum; eine Rechteprüfung wird aus dem Arbeitsspeicher beantwortet. Siehst du trotzdem Lag, miss zuerst mit spark, woher er kommt, statt an deinen Rechten zu schrauben; in unserem Artikel zum Optimieren deines Minecraft-Servers steht, wie du das angehst.
Kann ich von einem älteren Rechte-Plugin umsteigen? Ja, LuckPerms bringt Migrationsbefehle für Vorgänger wie GroupManager und PermissionsEx mit. Entferne das alte Plugin danach auch wirklich: Zwei Rechte-Plugins gleichzeitig führen zu unvorhersehbaren Ergebnissen und gehören zu den am schwersten nachvollziehbaren Störungen.