[Plugin] PermissionManager 1.1.1 (Create Permissions for Plugins)

  • Hallo alle Zusammen,


    hier ist ein Plugin, dass vielleicht manche unter einem anderen Namen bereits kennen.

    Manche von euch kennen dieses Plugin im Spiel "Minecraft". Es heißt: "PermissionEx"


    Dieses Plugin läuft mit YAML-Daten. Dort wird in einer "permission.yml" die Gruppen und Spielerberechitigungen geladen.

    Das Plugin kann auch von anderen Entwicklern genutzt werden, um eigene Plugin-Permissions zu bauen.


    Für Admin eines Servers, sind solche Plugins ein wichtiger Bestandteil, um einen Server zu schützen und zu verwalten.

    Das beste an der Sache: Es können nun auch "Supports" für Plugins angelegt werden.


    Admins müssen z.B. nicht mehr selber Grundstücke anlegen. Dass kann jetzt auch der Support übernehmen, ohne Admin-Rechte.



    Allgemeiner Hinweis:

    Dieses Plugin unterscheidet nicht mehr zwischen ADMIN und Spieler. Es unterscheidet nur noch zwischen "Hast du die Permission oder hast du sie nicht!"
    Auch einer mit Admin-Rechte kann bestimmte Berechtigungen nicht haben, wenn bei ihm die Permission nicht drinnen steht.


    Sollte ein Fehler auftreten, dann bitte mir bescheid geben. Wenn ein Fehler beim Auswerten kommt, kommt immer ein "NEIN" zurück. (Aus Sicherheitsgründen)


    Viel Spaß!


    P.S


    Vielen Dank noch an noci für seine Unterstützung. Ohne ihn, hätte ich das nicht geschafft. :D


    UPDATE 1.1.0 - Servergroup (Mehr Infos: HIER)

    UPDATE 1.1.1 - Nur ein paar Befehle hinzugefügt. Es hat sich NICHTS an der javadoc geändert!!

  • Entwicklungsnews


    Die erste "permissions.yml" wurde erfolgreich erstellt.

    Damit bin ich einen großen Schritt weiter gekommen! :D


  • Habe leider Probleme die YML-Datei zu laden.

    Kann mir da einer Helfen? Die Config habe ich im letzten Post schon hinzugefügt.

    Ich kann sie zwar erstellen aber nicht laden (z.B. bei Serverneustart)


    Errorlog:


  • Hey

    Hab ich es richtig verstanden das die permissions auch nach Neustart nicht geht ?


    Stimmt das Dateiformat von der yml


    Der RP Befehl wir hier ja auch nicht helfen. Ich denke Mal das da Red auch für die neue Version etwas nachlegen muss, so das das Spiel erst auf Anfrage die permissions einlöst, dann bräuchte man dann kein Neustart oder reload.

  • und wenn du versuchst
    die permischen stück für stück zu erweitern
    default immer nur 1 zeile dazu laden wenn es läuft wieder aus und neue dazu


    ich habe schon lange keine mehr gesehen ist das fabliche wirklich richtig


    !!de.pbplugins.java.permissionmanager.ClassPermissionFile

    groups:

    default:

    inheritance: []

    options:

    default: true

    prefix: default

    rank: -1

    sufix: ''

    permissions:

    - '*'

    users: {}


    müste das nicht eher so sein?


    !!de.pbplugins.java.permissionmanager.ClassPermissionFile

    groups:

    default:

    inheritance: []

    options:

    default: true

    prefix: default

    rank: -1

    sufix: '*'

    permissions: - '*'

    users: {}

  • Hi Ludy ,


    danke für deine Unterstützung.


    Die "permission.yml" ist vom Plugin so erstellt worden.


    Der Aufbau ist bei mir schon richtig. Das '' in "sufix" bedeutet: Leerer String. Und die "permissions" müssen untereinander sein, da es eine Liste ist. Sieht man an dem -.


    Beispiel für permission:


    Code
    permissions:
    - aktivesign.sign.use.*
    - iconomy.command.money
    - iconomy.command.send
    - ...

    Das - '*' bedeutet: Du hast alle Rechte.

  • Information zur Entwicklung.

    Durch noci 's Hilfe habe ich nun eine funktinierende YAML.


    Jetzt müssen noch die Auswertungen und die API für die Endbenutzer fertig gestellt werden. Natürlich werde ich zum PermissionManager auch ein 2. Plugin erstellen, dass den PermissionManager nutzt.


    Ich kann schon definitief sagen: Es dauert nicht mehr so lange, bis es fertig ist.

  • Nur mal so eine Frage

    Soll die ganze Sache dann ingame oder eher außerhalb des spiels bedienbar sein

  • Nur mal so eine Frage

    Soll die ganze Sache dann ingame oder eher außerhalb des spiels bedienbar sein

    Beides. Du kannst die YAML mit Befehlen im Spiel bearbeiten oder manuell, indem du die YAML mit einem Texteditor bearbeitest (z.B. Notpad++), die vorhandene YAML überschreibst und mit dem Befehl /pm reload neu lädst.


    Werde dazu aber noch ein PDF machen mit Eeklährung und Beispiel.;)

  • Hier! Meine Erfolgreiche permissions.yml! Sie kann geladen und geändert werden (auch wenn der Server läuft)


    Genauere Erklärung zur permissions.yml kommt bei der Veröffentlichung die spätestens nächsten Mittwoch (09.12.2020) kommt. Kann aber auch sein, dass es sogar schon früher kommt.


    WICHTIG: Das PDF kommt ca. 2 - 3 Wochen später. :D Es braucht Zeit alles zu erklähren und zu schreiben.

  • PatrickBronke

    Changed the title of the thread from “[Plugin] PermissionManager (in Entwicklung / in development)” to “[Plugin] PermissionManager (wird spätestens am 09.12.2020 veröffentlich / Publication on 09.12.2020)”.
  • PatrickBronke

    Changed the title of the thread from “[Plugin] PermissionManager (wird spätestens am 09.12.2020 veröffentlich / Publication on 09.12.2020)” to “[Plugin] PermissionManager 1.0.0 (Create Permissions for Plugins)”.
  • das ist verdammt viel Text und noch mehr Befehle :D ich habe früher nicht mit permissions Ex gearbeitet, permissions wurden bei mir immer Manuel in Gruppen angelegt, so das ich die Spieler nur zuordnen Brauch. Hier ist das alles doch noch ganz anders :D ich werde wenn ich etwas Zeit habe dieses dann Mal auf unserem Testserver Testen und bin dann Mal gespannt wie ich damit zurecht komme :D


    Wie verhält sich das Plugin den mit den jetzt exestierenden permissions ? Kann ich die noch benutzen oder muss ich erstmal sagen wir 6 unterschiedliche anlegen die dann identisch mit der aktuellen Zuweisung ist ?


    In welchen Sprachen ist die Bedienung ?


    Zu Anfang dachte ich erst das es eine Liste wäre der ich einen Namen gebe und dann überall ja oder Nein bezw den Wert eingebe. Abspeichern und dann kann ich Spieler dieser zuweisen.:D


    Ich gehe Mal davon aus, das dieses auch für die neue Version dann kommt. Red hatte Mal geschrieben, dass er in die neue Version bezw mit dem neuen rcon auch etwas mit den permissions erleichtern wollte, da es in Vergangenheit ja auch immer wieder neue gab, die sich daran die Zähne ausgebissen haben.


    Zum Schluss, werde ich es die Tage natürlich auch in die Plugin Liste eintragen.

  • permissions wurden bei mir immer Manuel in Gruppen angelegt, so das ich die Spieler nur zuordnen Brauch.

    Das kannst du auch hier machen. Einfach permissions.yml mit Notpad++ öffnen und Permissions manuell der Gruppe zuweisen. Dass kannst du auch machen, wenn der Server läuft. Mit /pm reload kannst du die Permissions neu laden.

    Später gibt es auch eine Liste aller Permissions. Zurzeit findest du alle Permissions zum PluginManager in der Beschreibung unter Kommandos.

    Wie verhält sich das Plugin den mit den jetzt exestierenden permissions ? Kann ich die noch benutzen oder muss ich erstmal sagen wir 6 unterschiedliche anlegen die dann identisch mit der aktuellen Zuweisung ist ?

    Der PermissinManager kümmert sich ja zum großen Teil eigendlich um Plugin-Permissins.

    Aber wie ich breits in anderen Plugins gesagt habe: "Was man mit den Server-Permissions verboten hat , kann man mit einem Plugin nicht wieder erlauben." Manche Sachen kannst du später auch mit dem PermissionManager regeln und manchen sachen nicht.


    Du sieht, mann kann vieles von den Server-Permissions übernehmen, aber nicht alles.

    Es wird auch noch eine Einstellung kommen, ob man z.B. für den Chat die Server-Einstellung oder die PermissionManager-Einstellung übernehmen möchte.

    In welchen Sprachen ist die Bedienung ?

    Zurzeit kommen alle Antworten vom Plugin in englisch raus. Deutsch kommt aber auch irgendwann noch.

    Zu Anfang dachte ich erst das es eine Liste wäre der ich einen Namen gebe und dann überall ja oder Nein bezw den Wert eingebe. Abspeichern und dann kann ich Spieler dieser zuweisen.

    Das Problem ist nur, dass ich vorher nicht weiß, welche Permissions es geben wird. Das machen jetzt die Programmierer der Plugins. Mit dem .* kannst du viel Schreibarbeit spaaren. Wenn du hilfe brauchst, dann sag bescheid. Es gibt mehrere Möglichkeiten den die Permissions zu schreiben und das gleiche Ziel zu erreichenn

    Zum Schluss, werde ich es die Tage natürlich auch in die Plugin Liste eintragen.

    Vielen Dank. :thumbup:


    Kleiner Tipp am Rande: Ich würde mit dem Befehl /pm group <group> create erstmall alle anlegen und dann die Permissions mit Notpad++ einfügen.

    Der Spieler hat nur die Berechtigung, wenn unter permissions: ein Postives Permission eingetragen ist.


    Beispiel: Gesuchte Permission ist "modifyworld.fly"


    1. Fall: Spieler bzw. Gruppe hat die Permission nicht: Spieler darf nicht fliegen!


    2. Fall: Spieler bzw. Gruppe hat Negativ-Permission (also: - -modifyworld.fly )

    Spieler darf nicht fliegen!


    3. Fall: Spieler bzw. Gruppe hat Positiv-Permission (also: - modifyworld.fly ohne 2. - ) - Spieler darf fliegen.


    4. Fall: Gruppe hat Negativ-Permission und Spieler hat Positv-Permission: Spieler darf fliegen, da Spieler-Permissions eine höhere Priorität haben, als die Gruppe.


    5. Fall: Gruppe hat Positiv-Permission und Spieler hat Negativ-Permission: Spieler darf nicht fliegen, da wie in Fall 4 die Priorität wieder beim Spieler ist und nicht bei der Gruppe.

  • Update: SERVERGROUP


    In den "options" der permissions.yml gibt es jetzt die Option: servergroup: ''

    > WICHTIG: Wenn es diese Option bei euch nicht gibt, dann erstellt sie manuell (auf richtige Schreibweise achten) ODER: permissions.yml löschen und beim serverneustart neu erstellen lassen.


    In der Config gibt es eine neue Einstellung: Change_Servergroup_with_Group: true

    > Wenn dies auf "true" gesteht, wird beim Kommando /pm user <playername> setgroup <group>
    (wolgemerkt: setgroup! NICHT: addgroup oder removegroup) auch automatisch die Servergruppe des Spielers

    geändert. Welche Gruppe das ist, gesteht in der permissions.yml unter der Option: servergroup: ''!

    (Die Option servergroup muss etwas enthalten, damit sich die Servergruppe ändert)

    > WICHTIG: Wenn es diese Option bei euch nicht gibt, dann erstellt sie manuell (auf richtige Schreibweise achten) ODER: config.yml löschen und beim serverneustart neu erstellen lassen.


    Zusätzlich ist in der config.yml die Option: Use_Server_Chat: false hinzugekommen.

    Dies regelt, ob man den Chatt vom Server oder von PermissionManager nutzen möchte.


    > :!: DIESE OPTIONEN MÜSSEN IN DER CONFIG VORHANDEN SEIN!


  • PatrickBronke

    Changed the title of the thread from “[Plugin] PermissionManager 1.0.0 (Create Permissions for Plugins)” to “[Plugin] PermissionManager 1.1.1 (Create Permissions for Plugins)”.
  • Update 1.1.1


    Hallo Leute,


    hier habe ich kein kleines Update für den PermissionManager,


    Es wurden ein paar Bugs behoben und ein neuer Befehl hinzugefügt:

    /pm getid


    Mit diesem Befehl könnt ihr die ID eines Items/Objektes/NPCs usw. herausfinden.


    Wie bekomme ich die ID?

    Es gibt 2 verschiedene Möglichkeiten:


    1. Nehme ein Item/Objekt in die Hand und schreibe den Befehl /pm getid

    >> Im Chat erhaltet ihr die Informationen


    2. Die Hand muss leer sein! Schreibt den Befehl /pm getid

    >> Nun interagiert mit einem NPC/Objekt/Schild/Truhe. Ihr erhaltet die Infos im Chat


    :!: An der JAVADOC hat sich NICHTS geändert! :!:

Participate now!

Don’t have an account yet? Create a new account now and be part of our community!