Zum Hauptinhalt springen

ResurrectionChest Konfiguration und Berechtigungen

Berechtigungen

BerechtigungZweckStandard
resurrectionchest.*Gibt Admins Zugriff auf die Befehle setup, content, update, reload und clearop
resurrectionchest.setupGibt Admins Zugriff auf /resurrectionchest setup, recommendedplugins, downloadallcontent und updatecontentop
resurrectionchest.initializeErlaubt /resurrectionchest initialize, um das Menü zur Ersteinrichtung zu öffnen.op
resurrectionchest.useErlaubt einem Spieler, eine Truhe zu registrieren und Todesbeute dorthin leiten zu lassentrue
resurrectionchest.model.freeErlaubt einem Spieler, die kostenlosen FreeMinecraftModels-Truhen-Visualisierungen (Wooden Chest) zu verwendentrue
resurrectionchest.model.premiumErlaubt einem Spieler, die Premium-FreeMinecraftModels-Truhen-Visualisierungen (Angelic Chest) zu verwendenop

resurrectionchest.use ist die wichtige Berechtigung für das tatsächliche Truhenverhalten. Die Admin- und Modellberechtigungen betreffen nur Befehle bzw. optionale Visualisierungen.

Befehle

BefehlBerechtigungZweck
/resurrectionchestresurrectionchest.*Gibt einen kurzen Info-Text aus, der auf den Einrichtungsablauf verweist
/resurrectionchest setupresurrectionchest.setupÖffnet das Einrichtungsmenü (Truhen-Packs durchsuchen und umschalten, auf Plugin-Updates prüfen, empfohlene Plugins ansehen, automatische Updates umschalten)
/resurrectionchest recommendedpluginsresurrectionchest.setupÖffnet (oder listet für die Konsole) die empfohlenen Begleit-Plugins für ResurrectionChest auf
/resurrectionchest downloadallresurrectionchest.*Lädt das Plugin-Update (falls vorhanden) und jedes verfügbare Inhaltspaket von Nightbreak herunter
/resurrectionchest downloadallcontentresurrectionchest.setupLädt jedes verfügbare Inhaltspaket von Nightbreak herunter
/resurrectionchest updatecontent (Alias updateallcontent)resurrectionchest.setupLädt nur veraltete installierte Inhaltspakete erneut herunter
/resurrectionchest forcereinstallcontent <package|all>resurrectionchest.*Lädt ein Inhaltspaket (oder jedes heruntergeladene Pack) auch dann erneut herunter, wenn die installierte Version bereits aktuell ist. Paketnamen vervollständigen per Tab zu den Nightbreak-Slugs wooden-chest und angelic-chest sowie all
/resurrectionchest downloadpluginupdateresurrectionchest.*Lädt ein ResurrectionChest-Plugin-Update herunter, falls eines verfügbar ist
/resurrectionchest reloadresurrectionchest.*Lädt ResurrectionChest neu
/resurrectionchest clearresurrectionchest.*Löscht jeden verfolgten ResurrectionChest-Block; wirft das Inventar jeder verfolgten Truhe ab und entfernt die Truhen- und Schildblöcke

Heruntergeladene Plugin-Updates werden im Update-Ordner des Servers abgelegt und werden erst nach dem nächsten Server-Neustart wirksam.

Plugin-Dateien

PfadZweck
plugins/ResurrectionChest/config.ymlJede Einstellung aus der Tabelle weiter unten
plugins/ResurrectionChest/playerData.ymlEin Eintrag pro registrierter Truhe, geschlüsselt nach Spieler-UUID: die location der Truhe, das bei der Registrierung gewählte chestModel-Präfix und eine trackedBlockSchemaVersion, mit der ältere Registrierungen auf die aktuellen Block-Besitzmarkierungen migriert werden
plugins/ResurrectionChest/content_packages/Die Inhaltspaket-Definitionen wooden_chest.yml / angelic_chest.yml (Name, Beschreibung, Download-Link, Version, isEnabled, category)
plugins/ResurrectionChest/nightbreak-changelogs.ymlGelesen-/Ausgeblendet-Status für den gemeinsamen Changelog-Posteingang hinter /resurrectionchestchangelog. Siehe Changelog-Benachrichtigungen
plugins/ResurrectionChest/imports/Ablageordner für manuelle Importe. Alles, was hier abgelegt wird, wird beim Start entpackt — Modelldateien werden an FreeMinecraftModels weitergeleitet und FreeMinecraftModels wird automatisch aktualisiert. Siehe Manuelle Importe vs. In-Game-Verwaltung

Bearbeite die playerData.yml nicht von Hand, während der Server läuft; ResurrectionChest schreibt sie jedes Mal neu, wenn eine Truhe registriert oder entfernt wird.

Konfigurationsoberfläche

config.yml stellt derzeit diese benutzerseitigen Einstellungen bereit:

KonfigurationsschlüsselTypStandard
setupDonebooleanfalse
nightbreak.autoDownloadPluginUpdatesbooleanfalse
Input name for death cheststring[DeathChest]
Enable high compatibility / low security mode for plugin conflictsbooleanfalse
Lower worn armor's durability on deathbooleantrue
Amount of durability to lower on deathint100
Chest creation messagestring&8[ResurrectionChest] &aYou've created your Death Chest!
Chest destruction messagestring&8[ResurrectionChest] &cYour Death Chest has been destroyed!
Chest missing messagestring&8[ResurrectionChest] &4Your Death Chest is missing!
Chest protected region messagestring&8[ResurrectionChest] &cYou can't create a Death Chest here - this area is protected!
Death messagestring&8[ResurrectionChest] &aYour items have been moved to your Death Chest!
deathChestRemovedMessagestring&8[ResurrectionChest] &cYour Death Chest has been removed!
Enable particle effects for death chestsbooleantrue
Particle effect 1stringENCHANTMENT_TABLE
Particle effect 2stringENCHANTMENT_TABLE
Particle effect 3stringPORTAL
blacklistedWorldslist[none]
storeXPbooleantrue
xpPercentageKeptdouble0.75
deathChestNameTagstring$playerName's &fResurrection Chest
freeSingleDeathChestModelNamestringresurrectionchest_free_single
freeDoubleDeathChestModelNamestringresurrectionchest_free_double
premiumSingleDeathChestModelNamestringresurrectionchest_angelic_single
premiumDoubleDeathChestModelNamestringresurrectionchest_angelic_double

Automatische Plugin- & Inhalts-Updates

nightbreak.autoDownloadPluginUpdates ist eine gemeinsame Nightbreak-/MagmaCore-Einstellung, die in ResurrectionChest enthalten ist. Sie ist standardmäßig auf false gesetzt.

  • Wenn false (der Standard), wird nichts automatisch heruntergeladen. ResurrectionChest prüft beim Start (und ungefähr einmal pro Stunde) weiterhin auf ein Plugin-Update, damit die In-Game-Update-Schaltfläche das Ergebnis anzeigen kann, aber du löst jeden tatsächlichen Download selbst aus.
  • Wenn true, lädt ResurrectionChest beim Start ein verfügbares Plugin-Update und veraltete Inhaltspakete herunter. Heruntergeladene Plugin- und Inhalts-Updates werden erst nach dem Neustart des Servers verwendet.
  • Automatische Plugin-Downloads erfordern ein gültiges Nightbreak-Konto-Token und eine aktive Supporter-Mitgliedschaft.

Du kannst diese Einstellung im Spiel über den Umschalter Automatic Updates in der Werkzeugleiste innerhalb von /resurrectionchest setup umschalten oder die config.yml direkt bearbeiten.

Das Einrichtungsmenü bietet außerdem einen Eintrag Plugin Update (zeigt die installierte/verfügbare Version an und lädt beim Klicken ein Update herunter) und einen Eintrag Recommended Plugins (dieselbe Liste wie /resurrectionchest recommendedplugins).

Regionsschutz

Das Registrieren einer Todestruhe wird als Bauen behandelt: Bevor das Schild akzeptiert wird, fragt ResurrectionChest MagmaCores gemeinsame LocationQueryRegistry, ob der Spieler am Truhenblock bauen darf.

  • WorldGuard und GriefPrevention werden automatisch eingebunden; ist keines von beiden installiert, gibt es keine zusätzliche Einschränkung und die Registrierung verhält sich genau wie zuvor.
  • Verweigert ein Schutz-Plugin das Bauen, wird die Registrierung abgelehnt und dem Spieler wird Chest protected region message gesendet.
  • Wirft ein Schutz-Adapter einen Fehler, schlägt die Abfrage kontrolliert fehl (die Registrierung wird abgelehnt), statt den Schutz stillschweigend zu umgehen.

Die Adapter werden beim Start angehängt, sodass ein Fehler beim Anhängen im Boot-Log auftaucht und nicht erst bei der ersten Truhenregistrierung.

Haltbarkeitsstrafe für Rüstung

Lower worn armor's durability on death (Standard true) und Amount of durability to lower on death (Standard 100) werden auf die getragene Rüstung des Spielers angewendet, während sie in die Todestruhe geleitet wird:

  • jedes getragene Rüstungsteil, das in der Todesbeute auftaucht, erhält Amount of durability to lower on death auf seinen Schadenswert addiert
  • würde das Teil dadurch seine maximale Haltbarkeit erreichen oder überschreiten, wird es vollständig aus der Beute entfernt (es wird zerstört statt gelagert)
  • andernfalls landet das beschädigte Teil in der Truhe

Die Strafe läuft nur bei Toden, die ResurrectionChest tatsächlich behandelt — sie wird übersprungen, wenn keepInventory aktiv ist, wenn die Welt auf der Blacklist steht, wenn dem Spieler resurrectionchest.use fehlt und wenn die registrierte Truhe fehlt.

Hochkompatibilitätsmodus

Enable high compatibility / low security mode for plugin conflicts ist standardmäßig false. Dann muss die gespeicherte Eigentümermarkierung zum registrierten Schild oder zur Truhe passen.

Bei true wird eine fehlende Markierung am registrierten Ort akzeptiert. Eine widersprechende Eigentümermarkierung bleibt ungültig, und eine registrierte Truhe muss weiterhin ein Truhenblock sein. Dieser Modus hilft bei Plugins, die Markierungen entfernen; beliebige Ersatzblöcke werden dadurch nicht akzeptiert.

XP-Behandlung

Wenn storeXP aktiviert ist:

  • ResurrectionChest verfolgt die Gesamt-XP des Spielers während des Spiels, liest aber im Moment des Todes den tatsächlichen Gesamtwert des Spielers, sodass XP, die direkt über die API eines anderen Plugins vergeben wurden, ebenfalls zählen
  • beim Tod speichert es Gesamt-XP * xpPercentageKept
  • es setzt die abgeworfene XP auf 0
  • es gibt die gespeicherte XP zurück, wenn der Besitzer das nächste Mal seine registrierte Truhe öffnet (jede Hälfte einer Doppeltruhe zählt)
  • ein erneuter Tod vor dem Abholen addiert zum gespeicherten Betrag, statt ihn zu ersetzen

xpPercentageKept wird beim Einlesen der Konfiguration auf den Bereich 0-1 begrenzt, sodass Werte über 1 wie 1 wirken und negative oder ungültige Werte wie 0.

Wichtige Ausnahmen:

  • Wenn keepInventory aktiv ist, tut ResurrectionChest nichts.
  • Wenn keepLevel aktiv ist, wird der XP-Speicherzweig übersprungen und die Vanilla-Level-Behandlung bleibt unverändert.
  • Gespeicherte XP werden nur im Arbeitsspeicher gehalten. Sie werden nicht in die playerData.yml geschrieben, sodass ein Server-Neustart, ein /resurrectionchest reload oder ein Plugin-Reload alle noch nicht abgeholten XP verwirft. Die bereits in der Truhe liegenden Gegenstände sind davon nicht betroffen.

Überlaufbehandlung

Gegenstände werden stapelweise in die Truhe eingefügt, und teilweises Einfügen ist erlaubt:

  • was hineinpasst, wird gelagert, einschließlich des Auffüllens eines bestehenden Stapels
  • nur die übrige Menge bleibt in der normalen Todesbeute-Liste am Todesort
  • der Spieler erhält eine Warnung, dass die Truhe voll war

FreeMinecraftModels-Integration

Wenn FreeMinecraftModels installiert ist, kann ResurrectionChest ein visuelles Truhen-Modell auf der echten Truhe spawnen.

Aktuelles Verhalten:

  • Premium-Visualisierungen (Angelic Chest) werden bevorzugt, wenn der Spieler resurrectionchest.model.premium hat und das Premium-Modell tatsächlich geladen ist
  • andernfalls wird die kostenlose Visualisierung (Wooden Chest) verwendet, wenn der Spieler resurrectionchest.model.free hat
  • wenn keine der Berechtigungen ein verwendbares Modell freigibt, wird kein Modell gespawnt und die Vanilla-Truhe wird unverändert verwendet
  • das visuelle Modell wechselt zwischen Einzel- und Doppelvarianten basierend auf der Truhengröße
  • die echte Truhe bleibt das Speicher-Backend

Die Modellwahl wird einmalig bei der Registrierung der Truhe getroffen und in der playerData.yml als chestModel dieser Truhe gespeichert. Das hat zwei Konsequenzen:

  • war FreeMinecraftModels zum Zeitpunkt der Registrierung nicht installiert, wird die Truhe ohne Modell erfasst und bleibt auch nach der Installation von FreeMinecraftModels eine schlichte Vanilla-Truhe
  • eine spätere Berechtigungsänderung stuft eine bestehende Truhe nicht rückwirkend hoch oder herab

In beiden Fällen muss der Spieler die Truhe neu registrieren (zerstören und das Schild erneut platzieren), um das neue Modell zu erhalten.

Wenn ein benutzerdefiniertes Modell aktiv ist, können Spieler direkt damit interagieren:

  • Rechtsklick auf das Modell öffnet das zugrunde liegende Truheninventar
  • Linksklick auf das Modell hebt die Registrierung auf (nur der Besitzer kann dies tun; ein Nicht-Besitzer, der linksklickt, erhält eine rote Nachricht und es wird nichts zerstört)

Wenn FreeMinecraftModels fehlt oder das Modell nicht gespawnt werden kann, funktioniert die zugrunde liegende Truhe weiterhin normal.

Inhaltspakete

ResurrectionChest wird mit zwei Inhaltspaketen ausgeliefert, die die FreeMinecraftModels-Truhenmodelle umhüllen:

  • Wooden Chest (kostenlos): bietet resurrectionchest_free_single / resurrectionchest_free_double. Wird von resurrectionchest.model.free verwendet.
  • Angelic Chest (Premium): bietet resurrectionchest_angelic_single / resurrectionchest_angelic_double. Wird von resurrectionchest.model.premium verwendet.

Jedes Pack liegt nach der Installation im models-Ordner von FreeMinecraftModels und nach der Deinstallation im models_disabled-Ordner. Das Umschalten über /resurrectionchest setup verschiebt die Dateien zwischen diesen Ordnern und lädt FreeMinecraftModels automatisch neu.

Quellcode-basierte Vorbehalte

Der aktuelle Quellcode zeigt einige Konfigurationseinträge, die in config.yml verfügbar sind, aber nirgendwo außerhalb von DefaultConfig referenziert werden:

  • Particle effect 1
  • Particle effect 2
  • freeSingleDeathChestModelName
  • freeDoubleDeathChestModelName und premiumDoubleDeathChestModelName (das Plugin codiert intern die Modellnamen-Präfixe resurrectionchest_free und resurrectionchest_angelic fest und hängt dann je nach Truhengröße _single oder _double an, sodass die „Double“-Konfigurationsschlüssel die Truhen-Visualisierung derzeit nicht beeinflussen)

Im Gegensatz dazu ist Particle effect 3 die Partikeleinstellung mit einer offensichtlichen aktiven Verwendung im aktuellen Code: Sie wird einmalig beim Laden aufgelöst (mit Rückfall auf PORTAL und einer Konsolenwarnung, falls der Name kein gültiger Partikel ist) und danach jeden Tick gespawnt, solange der Chunk der Truhe geladen ist. Enable particle effects for death chests auf false zu setzen bricht diese Tick-Aufgabe vollständig ab, was auf Servern mit vielen registrierten Truhen die günstigste Option ist. premiumSingleDeathChestModelName wird verwendet, um zu überprüfen, ob die Premium-Modelldatei existiert, bevor das Premium-Präfix zugewiesen wird; die Existenz der kostenlosen Modelldatei wird nicht separat geprüft.

Zwei weitere Vorbehalte zur Befehlsoberfläche:

  • /resurrectionchest initialize öffnet die Ersteinrichtung und erfordert resurrectionchest.initialize. /resurrectionchest setup öffnet die Inhalts-, Update- und Plugin-Empfehlungsfunktionen.
  • /resurrectionchest clear ist nicht auf einen Spieler beschränkt. Es löscht in einem Durchgang jede registrierte Truhe auf dem Server.