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 完了後に送信 |
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 | 安全な地点がまだキューに入っていないときに送信 |
noValidLocationFound | $prefix, $cannon, $reason | CannonRTP が searchTimeoutAttempts を使い切って諦めた際に送信。$reason は最も一般的な拒否理由のカンマ区切りの要約 |
invalidConfiguration | $prefix, $cannon, $reason | 設定エラーが検出されたときに送信(例: ターゲットワールド未ロード) |
statusLine | $prefix, $cannon, $status, $queued, $target, $reason | /wc list および /wc status の各行に使用される書式。このメッセージでは $target は preloadedLocationsPerCannon(充電のしきい値ではなく、完全な予備目標) |
probeAllowed | $prefix | 地点が有効な場合に /wc probe から送信 |
probeBlocked | $prefix, $plugin, $reason | 地点がブロックされている場合に /wc probe から送信 |
unknownCommand | $prefix | 予約済み。認識されないサブコマンドは共有の MagmaCore コマンドマネージャーが処理するため、現在のビルドではこのメッセージが送信されることはありません -- キーは messages.yml に書き出されますが、読み取るコードはありません。 |
invalidConfiguration は汎用の管理者向けエラー行も兼ねています。キャノンが 1 つも配置されていないときの /wc list / /wc status、および ID やワールドを解決できなかったときの /wc create、/wc place、/wc remove、/wc delete、/wc target、/wc center も、このメッセージを送信します。
ステータスラベル
浮遊するキャノンのラベル、/wc list、$status プレースホルダーで使われるステータス表記は設定可能です。
| キー | デフォルト | 表示される条件 |
|---|---|---|
statusLabels.ready | Ready | キャノンがプレイヤーを発射できるだけの事前読み込み済み地点を持っている |
statusLabels.charging | Charging | キャノンが最初の安全な目的地をまだ探している |
statusLabels.maintaining | Maintaining | キャノンが目的地の予備を補充している |
statusLabels.exhausted | Exhausted | キャノンが安全な目的地を見つけられなかった |
statusLabels.disabled | Disabled | キャノンが設定で無効化されている |
statusLabels.invalid | Invalid | 予約済み。現在のビルドは 3 つの内部検索状態(READY、SEARCHING、EXHAUSTED)と無効化チェックだけであらゆるステータスを解決するため、このラベルがレンダリングされることはありません。targetWorld がロードされていないキャノンは検索状態のラベルを保ったまま、問題を $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 | 到着タイトルと並んで表示されるサブタイトルのプール |
プレースホルダーはタイトルとそのサブタイトルへ同じ集合から置換されるため、ペアの片方に記載されているプレースホルダーはもう片方でも動作します。$prefix はどこでも解決されますが、タイトル内で使いたくなることはまずありません。
単一 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 |
$id | キャノンの設定 ID(サニタイズ済み小文字) |
$path | 新規作成されたキャノン設定ファイルの絶対パス(createdCannon でのみ) |
$world | ターゲットワールド名 |
$count | リロード後にロードされたキャノンの数 |
$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 では現在パススルー)を通して接続される予定です。