Aller au contenu principal

Messages et titres de CannonRTP

Tous les textes destinés aux joueurs se trouvent dans plugins/CannonRTP/messages.yml et sont entièrement personnalisables. Chaque valeur prend en charge les dégradés MagmaCore (<gradient:#start:#end>...</gradient>), les balises MiniMessage et les anciens codes couleur &. Dans chaque message, la variable $prefix est remplacée par la valeur configurée de prefix.

La version 1 fournit uniquement l'anglais ; la clé language de config.yml est prévue pour de futurs packs de traduction.

Préfixe et en-tête d'aide​

CléVariablesValeur par défautDescription
prefix--<gradient:#ff9a3d:#ffd166>CannonRTP</gradient> &8|Préfixe inséré dans chaque message via $prefix
helpHeader$prefix$prefix &fCannonRTP commands:Ligne affichée au début de /cannonrtp, /wc help, /wc list et /wc status

Messages du chat​

CléVariablesDescription
createdCannon$prefix, $cannon, $id, $pathEnvoyé après la réussite de /wc create
placedCannon$prefix, $cannonEnvoyé après la réussite de /wc place
removedCannon$prefix, $cannonEnvoyé après la réussite de /wc remove
deletedCannon$prefix, $cannonEnvoyé après la réussite de /wc delete
targetWorldUpdated$prefix, $cannon, $worldEnvoyé après la réussite de /wc target
searchCenterUpdated$prefix, $cannonEnvoyé après la réussite de /wc center
reload$prefix, $countEnvoyé lorsque les commandes de modification des canons reconstruisent les placements. /wc reload recharge tout le plugin et utilise le message de fin partagé de MagmaCore.
noPermission$prefix, $cannonEnvoyé lorsqu'un joueur entre dans un canon sans posséder sa requiredPermission ; limité à une fois toutes les 3 secondes par joueur et par canon
launchCooldown$prefix, $cannon, $seconds, $unitEnvoyé lorsqu'un joueur entre dans un canon avant l'expiration du délai suivant un lancement accepté. $seconds est arrondi au supérieur et $unit vaut second ou seconds. Les notifications sont limitées à une fois toutes les 3 secondes par joueur et par canon.
cannonDisabled$prefix, $cannonRéservé. Les canons désactivés étant entièrement exclus de la boucle de tick, la version actuelle n'envoie jamais ce message. La clé est écrite dans messages.yml, mais aucun code ne la lit.
queueCalibration$prefix, $cannon, $queued, $target, $attemptsEnvoyé lorsqu'un joueur entre dans un canon encore en préchargement. Ici, $target correspond à chargedLocationsPerCannon et $attempts au nombre de tentatives restantes avant l'épuisement de la recherche.
noValidLocationYet$prefix, $cannonMessage de secours pour un canon dont la file est vide au moment du lancement. La version actuelle vérifie d'abord la file et envoie plutôt queueCalibration ou noValidLocationFound : ce message n'apparaît donc normalement pas.
noValidLocationFound$prefix, $cannon, $reasonEnvoyé lorsqu'un joueur entre dans un canon dont la file est vide après l'abandon de sa recherche (épuisement de searchTimeoutAttempts, ou échec du chargement d'une intégration de protection). $reason liste les catégories de rejet rencontrées pendant cette période de recherche, sans nombres ni classement par fréquence.
invalidConfiguration$prefix, $cannon, $reasonEnvoyé lorsqu'une erreur de configuration est détectée, par exemple un monde cible non chargé
statusLine$prefix, $cannon, $status, $queued, $target, $reasonFormat de chaque ligne de /wc list et /wc status. Ici, $target correspond à preloadedLocationsPerCannon, soit la réserve totale visée, et non le seuil d'affichage Ready.
probeAllowed$prefixEnvoyé par /wc probe lorsque les intégrations de protection autorisent l'emplacement ; cette commande ne vérifie ni le terrain ni les écouteurs de l'API
probeBlocked$prefix, $plugin, $reasonEnvoyé par /wc probe lorsque l'emplacement est bloqué
unknownCommand$prefixRéservé. Les sous-commandes inconnues sont traitées par le gestionnaire de commandes partagé de MagmaCore ; la version actuelle n'envoie donc jamais ce message. La clé est écrite dans messages.yml, mais aucun code ne la lit.

invalidConfiguration sert également de message d'erreur générique pour les administrateurs. /wc list et /wc status l'utilisent lorsqu'aucun canon n'est placé ; /wc create, /wc place, /wc remove, /wc delete, /wc target et /wc center l'utilisent lorsqu'un identifiant ou un monde est introuvable, lorsque /wc create reçoit un identifiant déjà existant, ou lorsqu'un fichier de canon ne peut pas être enregistré ou supprimé.

Libellés de statut​

Les libellés utilisés dans l'étiquette flottante du canon, /wc list et la variable $status sont configurables.

CléValeur par défautCondition d'affichage
statusLabels.readyReadyLa file atteint chargedLocationsPerCannon ; une destination en file reste utilisable pour un lancement même sous ce seuil d'affichage
statusLabels.chargingChargingLe canon cherche encore sa première destination sûre
statusLabels.maintainingMaintainingLe canon reconstitue sa réserve de destinations
statusLabels.exhaustedExhaustedLa limite de recherches échouées a été atteinte avant le seuil Ready ; les destinations déjà en file restent utilisables
statusLabels.disabledDisabledLe canon est désactivé dans sa configuration. N'apparaît que dans /wc list et /wc status, car les canons désactivés ne créent aucune étiquette flottante.
statusLabels.invalidInvalidRéservé, non affiché. Un monde cible indisponible remet la recherche à SEARCHING et retire ses destinations de la file. Une file vide affiche Charging ; $reason signale le monde indisponible.

Il s'agit de chaînes ordinaires : les dégradés et les codes couleur fonctionnent également ici. La valeur définie devient celle de $status dans statusLine.

Listes de titres​

Plusieurs titres de la séquence de lancement sont configurés sous forme de liste plutôt que de chaîne unique. À chaque lancement, CannonRTP tire une entrée au hasard dans la liste, afin de varier les lancements successifs.

CléVariablesPhaseDescription
titles.launchQueuedTitles$cannondébut de SEARCHINGListe des titres affichés au début du lancement
titles.launchQueuedSubtitles$cannondébut de SEARCHINGListe des sous-titres accompagnant le titre de début de lancement
titles.destinationPreviewTitles--SEARCHINGListe des titres affichés pendant le défilement des coordonnées aléatoires. Une entrée est choisie au début de la phase et conservée jusqu'à sa fin.
titles.destinationPreviewSubtitle$x, $y, $zSEARCHING, chaque tickSous-titre unique affichant les coordonnées aléatoires qui défilent
titles.destinationConfirmedTitles$x, $y, $z, $worlddébut de FIRINGListe des titres affichés lorsque la destination réelle est confirmée
titles.destinationConfirmedSubtitle$x, $y, $z, $worlddébut de FIRINGSous-titre unique affichant la destination réelle
titles.arrivalTitles$x, $y, $z, $worldTELEPORTINGListe des titres affichés juste après la téléportation de largage
titles.arrivalSubtitles$x, $y, $z, $worldTELEPORTINGListe des sous-titres accompagnant le titre d'arrivée

Le titre et son sous-titre reçoivent le même ensemble de substitutions. Toute variable indiquée pour l'un fonctionne donc aussi dans l'autre. L'exception est destinationPreviewTitles : l'entrée choisie est mise en forme une seule fois au début de la phase, donc $x, $y et $z n'y sont pas remplacés. $prefix est disponible partout, même s'il est rarement souhaitable dans un titre.

Si une liste est définie comme vide, CannonRTP utilise à la place la première entrée de sa valeur par défaut intégrée.

Chaîne unique ou liste

destinationPreviewSubtitle et destinationConfirmedSubtitle sont des chaînes uniques, car leurs coordonnées dynamiques doivent toujours être affichées. Les autres titres et sous-titres utilisent des listes, dont une entrée est choisie au hasard pour chaque lancement.

Listes de titres par défaut​

Les valeurs fournies dans messages.yml sont :

launchQueuedTitles — Launching, Ignition, Liftoff, avec un dégradé orange-or

launchQueuedSubtitles — $cannon, en or chaud

destinationPreviewTitles — Calibrating, Scanning, Targeting, en orange-or

destinationConfirmedTitles — Locked, Set, Engaged, en vert

arrivalTitles — Arrived, Touchdown, Airborne, en blanc froid

arrivalSubtitles — Good luck., Stick the landing., Eyes up. Ground soon., Wind check complete. Good luck., Drop zone acquired. Good luck.

Référence des variables​

VariableValeur obtenue
$prefixValeur de messages.yml -> prefix
$cannondisplayName du canon. Dans deletedCannon et dans la plupart des erreurs de commandes d'administration envoyées via invalidConfiguration, il s'agit plutôt de l'identifiant saisi.
$idIdentifiant de configuration du canon, nettoyé et mis en minuscules
$pathChemin absolu du fichier de configuration qui vient d'être créé, uniquement dans createdCannon
$worldNom du monde cible
$countNombre de placements de canons chargés après la reconstruction (un par entrée de cannonLocations dans l'ensemble des fichiers de canons, canons désactivés compris)
$queuedTaille actuelle de la file du canon
$targetSelon le contexte : chargedLocationsPerCannon dans queueCalibration, preloadedLocationsPerCannon dans statusLine. Les deux clés se trouvent dans landing.yml.
$attemptsTentatives de recherche restantes avant épuisement
$secondsTemps de récupération restant, arrondi à la seconde supérieure
$unitsecond ou seconds, selon $seconds
$statusValeur correspondante de statusLabels.*, soit par défaut Ready, Charging, Maintaining, Exhausted ou Disabled
$reasonDétail lisible d'un statut ou d'un échec
$pluginNom du plugin de protection ayant bloqué un emplacement
$x, $y, $zCoordonnées avec une décimale

Remarque sur la traduction​

Chaque clé ci-dessus passe par le traitement des couleurs et des dégradés de MagmaCore avant son affichage au joueur. Les futurs packs de traduction utilisant language dans config.yml passeront par le même hook translatable(), qui renvoie actuellement le texte sans modification dans la version 1.