CannonRTP-Nachrichten und -Titel
Alle spielerseitigen Zeichenketten liegen in plugins/CannonRTP/messages.yml und sind vollständig überschreibbar. Jeder Wert unterstützt MagmaCore-Gradienten (<gradient:#start:#end>...</gradient>), MiniMessage-Tags und ältere &-Farbcodes. Der Platzhalter $prefix in jeder Nachricht wird durch den konfigurierten Wert von prefix ersetzt.
Release 1 liefert nur Englisch; der Schlüssel language in config.yml existiert, damit zukünftige Übersetzungspakete ihn ansprechen können.
Präfix und Hilfe-Kopfzeile
| Schlüssel | Platzhalter | Standard | Beschreibung |
|---|---|---|---|
prefix | -- | <gradient:#ff9a3d:#ffd166>CannonRTP</gradient> &8| | Präfix, das über $prefix in jede Nachricht eingefügt wird |
helpHeader | $prefix | $prefix &fCannonRTP commands: | Begrüßungszeile, die oben in /cannonrtp, /wc help und /wc list / /wc status ausgegeben wird |
Chat-Nachrichten
| Schlüssel | Platzhalter | Beschreibung |
|---|---|---|
createdCannon | $prefix, $cannon, $id, $path | Wird nach erfolgreichem /wc create gesendet |
placedCannon | $prefix, $cannon | Wird nach erfolgreichem /wc place gesendet |
removedCannon | $prefix, $cannon | Wird nach erfolgreichem /wc remove gesendet |
deletedCannon | $prefix, $cannon | Wird nach erfolgreichem /wc delete gesendet |
targetWorldUpdated | $prefix, $cannon, $world | Wird nach erfolgreichem /wc target gesendet |
searchCenterUpdated | $prefix, $cannon | Wird nach erfolgreichem /wc center gesendet |
reload | $prefix, $count | Wird nach Abschluss von /wc reload gesendet |
noPermission | $prefix, $cannon | Wird gesendet, wenn ein Spieler in eine Kanone tritt, für die ihm requiredPermission fehlt (gedrosselt auf einmal alle 3 Sekunden pro Spieler und Kanone) |
cannonDisabled | $prefix, $cannon | Wird gesendet, wenn ein Spieler in eine deaktivierte Kanone tritt |
queueCalibration | $prefix, $cannon, $queued, $target, $attempts | Wird gesendet, während eine Kanone noch vorlädt und ein Spieler hineintritt. In dieser Nachricht ist $target chargedLocationsPerCannon; $attempts ist das verbleibende Suchversuchs-Budget, bevor die Kanone erschöpft ist |
noValidLocationYet | $prefix, $cannon | Wird gesendet, wenn noch kein sicherer Ort in die Warteschlange aufgenommen wurde |
noValidLocationFound | $prefix, $cannon, $reason | Wird gesendet, wenn CannonRTP nach Ausschöpfen von searchTimeoutAttempts aufgibt. $reason ist eine kommagetrennte Zusammenfassung der häufigsten Ablehnungsgründe |
invalidConfiguration | $prefix, $cannon, $reason | Wird gesendet, wenn ein Konfigurationsfehler erkannt wird (z. B. nicht geladene Zielwelt) |
statusLine | $prefix, $cannon, $status, $queued, $target, $reason | Zeilenformat, das für jede Zeile von /wc list und /wc status verwendet wird. In dieser Nachricht ist $target preloadedLocationsPerCannon (das volle Reserveziel, nicht der Aufgeladen-Schwellenwert) |
probeAllowed | $prefix | Wird von /wc probe gesendet, wenn der Ort gültig ist |
probeBlocked | $prefix, $plugin, $reason | Wird von /wc probe gesendet, wenn der Ort blockiert ist |
unknownCommand | $prefix | Wird gesendet, wenn ein Admin einen unbekannten Unterbefehl verwendet |
Titelpools
Mehrere Titelplätze in der Startsequenz sind als Liste statt als einzelne Zeichenkette konfiguriert. Bei jedem Start wählt CannonRTP einen Eintrag zufällig aus der Liste. Das verhindert, dass sich wiederholte Starts identisch anfühlen.
| Schlüssel | Platzhalter | Phase | Beschreibung |
|---|---|---|---|
titles.launchQueuedTitles | -- | Beginn von SEARCHING | Pool von Titelzeichenketten, die beim Beginn eines Starts angezeigt werden |
titles.launchQueuedSubtitles | $cannon | Beginn von SEARCHING | Pool von Untertiteln, die mit dem Starttitel gepaart werden |
titles.destinationPreviewTitles | -- | SEARCHING (jeder Tick) | Pool von Titeln, die angezeigt werden, während zufällige Koordinaten vorbeiflackern |
titles.destinationPreviewSubtitle | $x, $y, $z | SEARCHING (jeder Tick) | Einzelne Untertitelzeichenkette, die die flackernden zufälligen Koordinaten anzeigt |
titles.destinationConfirmedTitles | -- | Beginn von FIRING | Pool von Titeln, die in dem Moment angezeigt werden, in dem das echte Ziel feststeht |
titles.destinationConfirmedSubtitle | $x, $y, $z, $world | Beginn von FIRING | Einzelner Untertitel, der das echte Ziel anzeigt |
titles.arrivalTitles | -- | TELEPORTING | Pool von Titeln, die direkt nach der Luftabwurf-Teleportation angezeigt werden |
titles.arrivalSubtitles | -- | TELEPORTING | Pool von Untertiteln, die neben dem Ankunftstitel angezeigt werden |
Einzeln vs. Pool
destinationPreviewSubtitleunddestinationConfirmedSubtitlesind einzelne Zeichenketten, weil sie dynamische Koordinaten enthalten, die immer gerendert werden müssen. Die anderen Titel- und Untertitelplätze sind Pools und werden pro Start zufällig gewählt.
Standard-Titelpools
Die in messages.yml mitgelieferten Standardwerte:
launchQueuedTitles -- Launching, Ignition, Liftoff (Orange-Gold-Gradient)
launchQueuedSubtitles -- $cannon (warmes Gold)
destinationPreviewTitles -- Calibrating, Scanning, Targeting (Orange-Gold)
destinationConfirmedTitles -- Locked, Set, Engaged (Grün)
arrivalTitles -- Arrived, Touchdown, Airborne (kühles Weiß)
arrivalSubtitles -- Good luck., Stick the landing., Eyes up. Ground soon., Wind check complete. Good luck., Drop zone acquired. Good luck.
Platzhalter-Referenz
| Platzhalter | Aufgelöst zu |
|---|---|
$prefix | Der Wert von messages.yml -> prefix |
$cannon | Der displayName der Kanone |
$id | Die Konfigurations-ID der Kanone (bereinigte Kleinschreibung) |
$path | Absoluter Pfad zur frisch erstellten Kanonenkonfigurationsdatei (nur in createdCannon) |
$world | Name der Zielwelt |
$count | Anzahl der nach einem Reload geladenen Kanonen |
$queued | Aktuelle Warteschlangengröße einer Kanone |
$target | Kontextabhängig: chargedLocationsPerCannon in queueCalibration, preloadedLocationsPerCannon in statusLine. Beide Schlüssel liegen in landing.yml. |
$attempts | Verbleibende Suchversuche, bevor die Kanone erschöpft ist |
$status | Einer von Ready, Charging, Maintaining, Exhausted, Disabled, Invalid |
$reason | Menschenlesbares Detail eines Status oder Fehlers |
$plugin | Der Name des Schutz-Plugins, das einen Ort blockiert hat |
$x, $y, $z | Koordinaten (eine Nachkommastelle) |
Hinweis zur Lokalisierung
Jeder oben aufgeführte Schlüssel durchläuft den Farb-/Gradientenprozessor von MagmaCore, bevor er dem Spieler angezeigt wird. Übersetzungspakete, die auf language in config.yml abzielen, werden über denselben translatable()-Hook eingebunden (in Release 1 derzeit ein Passthrough).