• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

[PEX] Weitere Gruppen und Ränge einpflegen - Beispiel: Teamränge

SilberRegen

Workaholic
Mitglied seit
23 März 2012
Beiträge
890
Alter
28
Minecraft
SilberRegen
HINWEIS: Pex ist veraltet und die offizielle Version nicht mehr sicher.
Server die Pex benutzen können zum Absturz gebracht werden.


Meine Empfehlung: Luckperms

=====================================================================


Ziel: Weitere Gruppen in eine bestehende, sichere Permissionstruktur einarbeiten


Schwierigkeit: ➊➋➌➃➄ | Zeitfaktor: ~ ½ Std. (Mit Datei aus vorherigem Tutorial)
Andere Tutorials: Permissions sicher einrichten|Vorhandene permissions.yml entrümpeln

Voraussetzungen:
In diesem Tutorial wird es hauptsächlich darum gehen, wie man neue Gruppen und Rangleitern (in PEX: "ladders") in seine vorhandene Struktur einpflegt.
Die beschränkt sich natürlich nicht nur auf Gruppen für Teammitglieder.

Andere Beispiele wären Rangleitern für PvP, Towny, Factions, Prison, Voting oder die genauso beliebten wie dubiosen Paidränge á la Premium/VIP/UltimateHD/Whatever, um einige Beispiele zu nennen. "Lasst eurer Fantasie freien lauf."

Für dieses Tutorial werde ich zwei neue Gruppen für eine neue Teamrangleiter in die permissions.yml aus dem ersten Tutorial zu sicheren Rängen einbauen.
Die entstehende Datei findet ihr im Anhang des Tutorials.
____________________________________________________________________________________________________

Zur Erinnerung: Das Setup, sowie die Änderungen (in Fett) die in diesem Tutorial hinzukommen.

Unser Szenario:
  • Spigotserver, Version 1.12.1
  • Modus: Survival, keine Commandblocks
  • 3 Welten: world, world_nether, world_the_end
  • 2 Plugins: PermissionsEx, Modifyworld
  • 5 Gruppen: Gast, Spieler, Supporter, Moderator, Administrator
  • ohne Whitelist
  • ohne mySQL-Datenbank (Permissions werden als Flatfile gespeichert)
Wer soll was können?
Die Rollen unserer vorhandenen Gruppen sind verteilt und bekannt.
Unsere Neuzugänge, die Gruppen "Supporter" und "Moderator", sollen klassische Teamränge bilden, die die Drecksarbeit erledigen der Leitung des Servers (dem Administrator) unter die Arme greifen sollen. Die Permissions, die sie dafür bekommen, ergeben sich aus den Aufgaben, die sie übernehmen sollen.

Auf unserem sehr simplen Tutorialserver sind dies: Spieler freischalten, Spieler bannen und ggf. einfache "Debug"-Arbeit
Was sie nicht können sollen: Die von der Serverleitung gesetzten Spielregeln verändern oder umgehen.

Für unseren Tutorialserver hätte eine "Helfergruppe" sicher gereicht, da wir kaum Plugins haben und wenige Aufgaben, die wir delegieren können.
Realistisch gesehen haben aber die meisten Server mehr als eine Teamgruppe und daher lege ich hier zwei Gruppen an.

"Supporter" soll unsere Einstiegsgruppe darstellen, die wir mit der Freischaltung der Spieler betrauen und "Moderator" soll eine Gruppe sein, der wir soweit vertrauen, dass sie Fällen von bösen Cheatern eingreifen kann. Dafür erhält sie anders als "Supporter" Rechte, die ausnutzbar sind, aber dazu später mehr.

____________________________________________________________________________________________________


HINWEIS: Änderungen an Permissions sollten niemals im laufendem Serverbetrieb stattfinden.
Bitte nehmt dafür einen lokalen Testserver oder schaltet die Whitelist an für die Zeit in der ihr daran arbeitet.

Schritt 1 - vorhandene Permissionsstruktur sichten

Wenn ich mich konsequent an das halten würde, was ich so schreibe, wäre dies eine Sache gewesen, die direkt im ersten Tutorial hätte Anwendung finden müssen.
Aber wie heißt es so schön: "do as I say, not as I do" - und ich durfte prompt feststellen, dass ich tatsächlich eine Permission in der Administratorgruppe übersehen habe. Die Datei wurde natürlich bereits nachgebessert.

Der Punkt ist: Es hilft enorm sich eine übersichtliche Darstellung aller Permissions anzulegen, wie es im Entrümpelungstutorial gezeigt wurde.
Die holen wir nun nach und nachdem wir unsere Permissions in Reih und Glied gebracht haben, sieht dies in etwas so aus. (Die angeklickte Permission ist übrigens die Vergessene)


____________________________________________________________________________________________________

Schritt 2 - Die Strukturen anpassen

Unsere neuen Gruppen müssen nun in die Vererbungsreihenfolge eingebunden werden, damit wir ihnen nicht alle Permissions neu setzen müssen.
Dafür überlegen wir kurz, wie die neue Reihenfolge aussieht. Diese hat nichts mit /pex promote am Hut!
  • gast → spieler → supporter → moderator → admin
Die Beförderung findet nämlich unabhängig von der Vererbung auf einer neuen Rangleiter für alle Teamgruppen statt.
Auf diese "ladder" werden nur die "Helfergruppen" gesetzt, nicht die Administratoren. Dadurch verhindern wir, dass Spieler aus Versehen in einen Teamrang befördert werden und das wir aus Versehen unseren Lakaien freundlichen Helfern Administratorrechte geben. Dies soll weiterhin nur über die Konsole möglich sein.

Wie in vorigen Tutorials erklärt, ist es vorteilhaft, alle Bezeichnungen, die in Befehlen auftauchen kurz, klein und ohne Sonderzeichen zu schreiben.

Unsere Gruppen schreiben wir nach dieser aufgestellten Regel klein und unsere Leiter nennen wir "team".
Die Befehle um Spieler auf diese Leiter zu setzen lauten entsprechend (Ingamevariante mit / davor):
Code:
## Um einen Spieler zum Supporter zu machen:
/pex user <Spielername> group add supporter

## supporter → moderator
/pex promote <Spielername> team

## moderator → supporter
/pex demote <Spielername> team

## Um einem Spieler den Teamrang zu entziehen: (je nach Gruppe in der er sich befindet)
/pex user <Spielername> group remove supporter
oder
/pex user <Spielername> group remove moderator

Per Konsolenbefehl legen wir die neuen Gruppen an und führen alle notwendigen Änderungen durch.

Die Permissions bearbeiten wir später mit Notepad++, aber um Fehler beim Anlegen neuer Gruppen zu vermeiden ist es sinnvoll, die permissions.yml so weit wie möglich vorzubereiten.
Code:
pex group supporter create
pex group supporter prefix Supporter
pex group supporter rank 200 team
pex group supporter parents set spieler

pex group moderator create
pex group moderator prefix Moderator
pex group moderator rank 100 team
pex group moderator parents set supporter

pex group admin parents set moderator
In der permissions.yml sehen die neuen Gruppen so aus:


Wir planen, die Permissions später mit Notepad++ einzufügen.
Daher kann es eine gute Idee sein eine "Platzhalterpermission" zu vergeben, damit in der Datei der Abschnitt "permissions:" für alle Gruppen vorhanden ist und nicht kopiert werden muss. Wir nennen unsere Permission stumpf "platzhalter" - so erkennt man direkt dass es keine echte Permission ist und selbst, wenn wir vergessen sie rauszunehmen würde es im Spiel keine Konsequenzen nach sich ziehen.
(Warum "minecraft.command.op" ein schlechter Platzhalter wäre, kann man sich denken)
Code:
pex group supporter add platzhalter
pex group moderator add platzhalter

Wer sich etwas sicherer in seiner Editierarbeit ist, kann diesen Schritt natürlich überspringen.

____________________________________________________________________________________________________

Schritt 3 - Alles vorbereiten zum Ändern

In unsere hübsche Tabelle nehmen nehmen wir nun die beiden Gruppen auf und aktualisieren die Informationen in der Kopfzeile.


Jetzt überlegen wir uns, welche Berechtigungen aus der Administratorgruppe unsere "supporter" und unsere "moderatoren" für ihre Arbeit benötigen und welche nur unsere "moderatoren".

Ich habe das ganze mal wieder sehr paranoid ausgelegt und erlaube "supporter" tatsächlich nur Gäste freizuschalten, die Plugins und Hilfe anzusehen und den Kompass zum lokalisieren von Spielern zu benutzen. Für ihre Arbeit, "Gäste freischalten" ist das absolut ausreichend.

"moderator" erhält zusätzlich die Aufgabe die bösen Cheater vom Server zu werfen. Dafür erhalten sie die Möglichkeit "/gamemode" zu nutzen, sich zu teleportieren und Spieler zu bannen, die Ärger machen.

! Hinweis: Mit unserem Serversetup hat ein Moderator nun Rechte, die ausnutzbar sind und für Ärger sorgen können.
Kurzzeitig durch bannen von Spielern (auch Admins/Teammitgliedern), langfristig durch Items, die die Gruppe über den Creativemode erhält.
Auch wenn wir unsere Permissions hyperparanoid aufsetzen, so müssen an einigen Stellen "unsichere" Permissions vergeben und gute Entscheidungen getroffen werden, wem man vertrauen kann.
Tipp: Spieler die darauf bestehen, dass sie z.B. als Supporter keine Spieler freischalten können ohne Gamemoderechte, sind eventuell nicht besonders vertrauenswürdig (oder haben keine Ahnung).

Ihr als Administrator bestimmt, wer welche Aufgaben hat und welche Rechte er dafür braucht oder ggf. als "Belohnung" bekommt.
Niemand anderes.

(Davon ausgegangen, dass ihr keinen Mist gebaut habt bei der Verteilung. In dem Fall: Schande über euch.)
Realistisch ist unser Setup nicht, da die meisten ihren Teammitgliedern wohl mehr Eingeständnisse machen, was die ganzen "coolen" Sachen angeht wie "give". Vermutlich auch, um sie irgendwie für ihre Arbeit zu entlohnen.

Worauf ich hinaus möchte ist nicht, dass man diese Art Permissions nicht vergeben darf, sondern dass man sich bei jeder Permission bewusst sein soll, was damit machbar ist und wie man sie ausnutzen kann.
Nur wenn ich wirklich weiß, wer zu was theoretisch in der Lage ist, kann ich im Zweifel korrekt und schnell handeln.
Es hilft natürlich auch, zu wissen, wie man den Serverlog liest.

Wer also mehr als das Gezeigte an seine Teamler vergeben mag, soll sich nicht davon abgehalten sehen.
Die richtig "bösen" Permissions haben wir bereits im ersten Tutorial ausgesiebt und ob jemand sein eigenes, hypothetisches Survivalkonzept mit Cheatrechten untergräbt, kann mir persönlich herzlich egal sein.

Unsere erzparanoide Verteilung schaut so aus:


Ich habe die Administorrechte entsprechend der Vererbung angepasst, aber da sie schon stehen kann man sie auch einfach belassen wie sie sind.
Weniger Editierarbeit, weniger Chancen irgendwas kaputt zu machen.

Eine wichtige Änderung in der Gruppe Administrator ist, dass ich ihr die Rechte gebe auf der Teamleiter zu befördern.

____________________________________________________________________________________________________

Schritt 4 - Einfügen, testen, glücklich sein

Sind wir zufrieden mit unserer Verteilung, müssen wir nur noch die neuen Permissions in die Gruppen einfügen.

Einfach geht dies indem wir unser schön sortiertest Tabellenblatt noch einmal kopieren, die Permissions einer Gruppe kopieren und den Bereich noch einmal alphabetisch sortieren. Dadurch stehen die Permissions kopierfertig untereinander und müssen nur noch in die permissions.yml an der richtigen Stelle eingesetzt werden.
Es bleibt, in der Datei die Permissions korrekt einzurücken. Mit unseren Kenntnissen aus dem Tutorial "permissions.yml entrümpeln" sollte das kein Problem sein.


Zu guter Letzt testen wir unsere neuen Gruppen im Spiel durch.

Fertig.

Im Anhang findet ihr die erweiterte Datei mit optimierter Notation der Gruppen (sortiert nach "inheritance").
Wie man seine tollen neuen Ränge auch im Spiel kenntlich macht, könnte Gegenstand eines weiteren Tutorials werden.
(Oder ihr findet es selber heraus. Das ist schließlich der Teil den die meisten Serverbetreiber hinbekommen. "uhhh, fancy Farben")
 

Anhänge

Zuletzt bearbeitet:
Allgemein
Hilfe Benutzer
  • ❤️可愛いちゃん️❤️ ❤️可愛いちゃん️❤️:
    Manchmal geh ich für ein paar Minuten raus weils zu kalt ist.
  • Hadde-chan Hadde-chan:
    Alles über 23 ist zu viel
  • Hadde-chan Hadde-chan:
    außer bei mecces. da steigt meine toleranz bis 45 grad. leider reicht selbst das nicht immer aus ._.
  • Stern☆ Stern☆:
    Dachte ihr habt Klima?
  • Stern☆ Stern☆:
    Ich hab bei mir im Garten heuer Melone angebaut und die wächst gut :D Wenn es so warm bleibt dann hab ich heuer Melonen ^^
  • Hadde-chan Hadde-chan:
    ne klimaanlage kommt aber nich gegen zwei große fritteusen an, diverse wärmelampen und nen großen grill xd
  • Hadde-chan Hadde-chan:
    achso und unsere toaster und diverse warmhaltegeräte und beheizte tische
  • Hadde-chan Hadde-chan:
    einfach alles strahlt wärme ab xD Dazu noch die kühlgeräte die ja auch wärme abstrahlen
  • Stern☆ Stern☆:
    Das ist böse ... bei uns gibt es da stellenweise auch aber da muss ich nicht arbeiten XD
  • Stern☆ Stern☆:
    ...nur manchmal hin wenn was kaputt ist ... das ist dann echt doof ^^
  • Stern☆ Stern☆:
    Bei dir klingt das wie die Dauerhölle ..
  • HardSoul HardSoul:
    Da bekommt man echt Mitleid :oops:
  • Hadde-chan Hadde-chan:
    es ist auch warm und du musst permanent trinken xD wer nicht trinkt verliert
  • iTz_Proph3t iTz_Proph3t:
    ich hab da kein mitleid mit
  • iTz_Proph3t iTz_Proph3t:
    so schlecht wie die burger von hadde immer sind ...
    +1
  • iTz_Proph3t iTz_Proph3t:
    It´s coming <3
  • Stern☆ Stern☆:
    Oha :D
  • HardSoul HardSoul:
    Kommt mir das nur so vor oder steigt die Anzahl der Menschen, die denken, dass das hier das Forum ihres Servers sei?
  • iTz_Proph3t iTz_Proph3t:
    ka, kann sein
  • iTz_Proph3t iTz_Proph3t:
    lesen ist auch schwer
  • HardSoul HardSoul:
    Das Gefühl habe ich manchmal auch. Genauso wie bei Grammatik, Satzbau und Rechtschreibung
  • Dean Dean:
    Moin
  • Stern☆ Stern☆:
    Morgen :)
  • LottaXL LottaXL:
    Moin, moin =)
  • HardSoul HardSoul:
    Morgen :)
    HardSoul HardSoul: Morgen :)
    Oben