CannonRTP メッセージとタイトル
プレイヤー向けのすべての文字列は plugins/CannonRTP/messages.yml にあり、完全に上書き可能です。すべての値は MagmaCore のグラデーション (<gradient:#start:#end>...</gradient>)、MiniMessage タグ、レガシー & カラーコードをサポートします。任意のメッセージ内の $prefix プレースホルダーは、設定された prefix の値に置き換えられます。
リリース 1 は英語のみ同梱しています。将来の翻訳パックがターゲットにできるよう、config.yml 内の language キーが存在します。
プレフィックスとヘルプヘッダー
| キー | プレースホルダー | デフォルト | 説明 |
|---|---|---|---|
prefix | -- | <gradient:#ff9a3d:#ffd166>CannonRTP</gradient> &8| | $prefix 経由ですべてのメッセージに挿入されるプレフィックス |
helpHeader | $prefix | $prefix &fCannonRTP commands: | /cannonrtp、/wc help、/wc list / /wc status の先頭に表示される挨拶行 |
チャットメッセージ
| キー | プレースホルダー | 説明 |
|---|---|---|
createdCannon | $prefix, $cannon, $id, $path | /wc create 成功後に送信 |
placedCannon | $prefix, $cannon | /wc place 成功後に送信 |
removedCannon | $prefix, $cannon | /wc remove 成功後に送信 |
deletedCannon | $prefix, $cannon | /wc delete 成功後に送信 |
targetWorldUpdated | $prefix, $cannon, $world | /wc target 成功後に送信 |
searchCenterUpdated | $prefix, $cannon | /wc center 成功後に送信 |
reload | $prefix, $count | キャノン編集コマンドが配置を再構築した後に送信。/wc reload はプラグイン全体を再読み込みし、MagmaCore 共通の完了メッセージを使います。 |
noPermission | $prefix, $cannon | プレイヤーが requiredPermission を持たないキャノンに入ったときに送信(プレイヤーおよびキャノンごとに 3 秒に 1 回までスロットリング) |
launchCooldown | $prefix, $cannon, $seconds, $unit | 受理された発射のクールダウンが切れる前に、プレイヤーがいずれかのキャノンに入ったときに送信。$seconds は切り上げられ、$unit は second または seconds になります。通知はプレイヤーおよびキャノンごとに 3 秒に 1 回までスロットリングされます。 |
cannonDisabled | $prefix, $cannon | 予約済み。無効化されたキャノンはティックループから完全に除外されるため、現在のビルドではこのメッセージが送信されることはありません -- キーは messages.yml に書き出されますが、読み取るコードはありません。 |
queueCalibration | $prefix, $cannon, $queued, $target, $attempts | キャノンがまだ事前読み込み中にプレイヤーが入ってきたときに送信。このメッセージでは $target は chargedLocationsPerCannon、$attempts はキャノンが exhausted になるまでに残された検索試行のバジェット |
noValidLocationYet | $prefix, $cannon | 発射の瞬間にキューが空だったキャノン向けのフォールバック。現在のビルドは先にキューを確認し、代わりに queueCalibration または noValidLocationFound を送信するため、このメッセージは通常表示されません。 |
noValidLocationFound | $prefix, $cannon, $reason | 検索を諦めた後(searchTimeoutAttempts を使い切った場合、または保護統合の読み込みに失敗した場合)にキューが空のキャノンへプレイヤーが入ったときに送信。$reason はその検索期間で発生した拒否理由の種類を示します。件数や頻度順の順位は含みません。 |
invalidConfiguration | $prefix, $cannon, $reason | 設定エラーが検出されたときに送信(例: ターゲットワールド未ロード) |
statusLine | $prefix, $cannon, $status, $queued, $target, $reason | /wc list および /wc status の各行に使用される書式。このメッセージでは $target は preloadedLocationsPerCannon(充電のしきい値ではなく、完全な予備目標) |
probeAllowed | $prefix | 保護機能が地点を許可したときに /wc probe が送信。地形や API リスナーは確認しません。 |
probeBlocked | $prefix, $plugin, $reason | 地点がブロックされている場合に /wc probe から送信 |
unknownCommand | $prefix | 予約済み。認識されないサブコマンドは共有の MagmaCore コマンドマネージャーが処理するため、現在のビルドではこのメッセージが送信されることはありません -- キーは messages.yml に書き出されますが、読み取るコードはありません。 |
invalidConfiguration は汎用の管理者向けエラー行も兼ねています。キャノンが 1 つも配置されていないときの /wc list / /wc status、ID やワールドを解決できなかったとき、/wc create にすでに存在する ID が指定されたとき、またはキャノンファイルを保存・削除できなかったときの /wc create、/wc place、/wc remove、/wc delete、/wc target、/wc center も、このメッセージを送信します。
ステータスラベル
浮遊するキャノンのラベル、/wc list、$status プレースホルダーで使われるステータス表記は設定可能です。
| キー | デフォルト | 表示される条件 |
|---|---|---|
statusLabels.ready | Ready | キューが chargedLocationsPerCannon に達した状態。この表示しきい値未満でも、キュー内の目的地で発射できます。 |
statusLabels.charging | Charging | キャノンが最初の安全な目的地をまだ探している |
statusLabels.maintaining | Maintaining | キャノンが目的地の予備を補充している |
statusLabels.exhausted | Exhausted | 充電しきい値に達する前に検索失敗の上限に達した状態。キュー内の目的地は引き続き使用できます。 |
statusLabels.disabled | Disabled | キャノンが設定で無効化されている。無効化されたキャノンは浮遊ラベルをスポーンしないため、/wc list と /wc status にのみ表示されます。 |
statusLabels.invalid | Invalid | 予約済みで表示されません。目的地のワールドが利用不能になると検索を SEARCHING に戻し、そのワールドの目的地を破棄します。空のキューは Charging と表示され、$reason が利用できないワールドを示します。 |
これらは生の文字列なので、ここでもグラデーションやカラーコードが使えます。設定した内容がそのまま statusLine の $status の値になります。
タイトルプール
発射シーケンス内のいくつかのタイトルスロットは、単一の文字列ではなく リスト として設定されます。発射ごとに、CannonRTP はリストからランダムに 1 つのエントリを選択します。これにより、繰り返しの発射が同じに感じられないようになります。
| キー | プレースホルダー | フェーズ | 説明 |
|---|---|---|---|
titles.launchQueuedTitles | $cannon | SEARCHING 開始時 | 発射開始時に表示されるタイトル文字列のプール |
titles.launchQueuedSubtitles | $cannon | SEARCHING 開始時 | 発射開始タイトルと組み合わせて表示されるサブタイトルのプール |
titles.destinationPreviewTitles | -- | SEARCHING | ランダム化された座標が点滅している間に表示されるタイトルのプール。エントリはフェーズ開始時に 1 つ選ばれ、そのフェーズ中は固定されます。 |
titles.destinationPreviewSubtitle | $x, $y, $z | SEARCHING (毎ティック) | 点滅するランダム化座標を表示する単一のサブタイトル文字列 |
titles.destinationConfirmedTitles | $x, $y, $z, $world | FIRING 開始時 | 本当の目的地が確定した瞬間に表示されるタイトルのプール |
titles.destinationConfirmedSubtitle | $x, $y, $z, $world | FIRING 開始時 | 実際の目的地を表示する単一のサブタイトル |
titles.arrivalTitles | $x, $y, $z, $world | TELEPORTING | エアドロップテレポート直後に表示されるタイトルのプール |
titles.arrivalSubtitles | $x, $y, $z, $world | TELEPORTING | 到着タイトルと並んで表示されるサブタイトルのプール |
プレースホルダーはタイトルとそのサブタイトルへ同じ集合から置換されるため、ペアの片方に記載されているプレースホルダーはもう片方でも動作します。例外は destinationPreviewTitles です。選ばれたエントリはフェーズ開始時に一度だけ整形されるため、そこでは $x、$y、$z は解決されません。$prefix はどこでも解決されますが、タイトル内で使いたくなることはまずありません。
プールが空のリストに設定されている場合、CannonRTP は代わりに組み込みデフォルトの最初のエントリを使用します。
単一 vs. プール
destinationPreviewSubtitleとdestinationConfirmedSubtitleは、常にレンダリングしなければならない動的な座標を含むため、単一の文字列になっています。その他のタイトル/サブタイトルスロットはプールであり、発射ごとにそれぞれからランダムに 1 つのエントリが選ばれます。
デフォルトのタイトルプール
messages.yml に同梱されるデフォルト:
launchQueuedTitles -- Launching、Ignition、Liftoff (オレンジ-ゴールドグラデーション)
launchQueuedSubtitles -- $cannon (暖色ゴールド)
destinationPreviewTitles -- Calibrating、Scanning、Targeting (オレンジ-ゴールド)
destinationConfirmedTitles -- Locked、Set、Engaged (グリーン)
arrivalTitles -- Arrived、Touchdown、Airborne (クールホワイト)
arrivalSubtitles -- Good luck.、Stick the landing.、Eyes up. Ground soon.、Wind check complete. Good luck.、Drop zone acquired. Good luck.
プレースホルダーリファレンス
| プレースホルダー | 解決される値 |
|---|---|
$prefix | messages.yml -> prefix の値 |
$cannon | キャノンの displayName。deletedCannon と、invalidConfiguration で送信されるほとんどの管理者コマンドのエラーでは、代わりに入力した ID になります。 |
$id | キャノンの設定 ID(サニタイズ済み小文字) |
$path | 新規作成されたキャノン設定ファイルの絶対パス(createdCannon でのみ) |
$world | ターゲットワールド名 |
$count | 再構築後にロードされたキャノン配置の数(すべてのキャノンファイルにわたる cannonLocations のエントリごとに 1 つ。無効化されたキャノンも含む) |
$queued | キャノンの現在のキューサイズ |
$target | コンテキスト依存: queueCalibration では chargedLocationsPerCannon、statusLine では preloadedLocationsPerCannon。両キーは landing.yml にあります。 |
$attempts | キャノンが exhausted になるまでに残された検索試行回数 |
$seconds | 切り上げられた、発射クールダウンの残り時間 |
$unit | $seconds に応じた second または seconds |
$status | 対応する statusLabels.* の値 -- デフォルトでは Ready、Charging、Maintaining、Exhausted、Disabled |
$reason | ステータスや失敗の人間可読な詳細 |
$plugin | 地点をブロックした保護プラグインの名前 |
$x, $y, $z | 座標(小数点以下 1 桁) |
ローカライズに関する注記
上記のすべてのキーは、プレイヤーに表示される前に MagmaCore のカラー/グラデーションプロセッサを通ります。config.yml の language をターゲットにする翻訳パックは、同じ translatable() フック(リリース 1 では現在パススルー)を通して接続される予定です。