テキスト・会話機能(/npc text)
1. /npc text の役割
/npc text はNPCが話すテキストを登録するエディタです。NPCを選択して実行し、ゲーム内チャットに表示される案内に従って編集します。エディタを終了するときは、画面の案内に従って exit を入力してください。通常、エディタ内で入力した内容はチャットとして即送信されず、編集中の操作として扱われます。
/npc text は「NPCのセリフ」を扱います。一方、看板のように常にNPCの上へ表示する文字は /npc hologram、クリックしたときに別プラグインのコマンドを実行する機能は /npc command が適しています。
2. 基本的な操作
/npc select <ID> /npc text
エディタ内では、基本的に次の操作が案内されます。
| 入力 | 意味 |
|---|---|
add | 新しいセリフを追加 |
edit | 既存セリフを編集 |
remove | 登録済みセリフを削除 |
random | セリフの選択をランダム/順番に切り替え |
close | プレイヤーが近づいたときに話すモードを切り替え |
item | 話しかけるときに必要な手持ちアイテムの条件を設定 |
range | 自動会話の対象距離を設定 |
delay | 会話のクールダウン/間隔を設定 |
help | エディタ内の説明を再表示 |
exit | エディタを終了 |
編集画面の文言や利用できる操作は版によって変わる可能性があります。画面に表示された指示を優先してください。
3. ランダム会話と順番会話
複数の文章を登録すると、ランダム会話モードではリストからランダムな文章が選ばれます。ランダムを無効にした場合は、登録した文章を順番に巡回するモードになります。
使い分け例:
- 受付:登録した「こんにちは」「ご用件をお聞かせください」などからランダムに表示。
- ストーリー:導入、説明、結末を順番に進めたい場合は順番会話を使用。
会話の進行状況や一人ひとりのプレイヤーに対する進行管理が必要な場合は、Citizensの基本テキスト機能だけでは足りないことがあります。その場合はクリックコマンドやDenizenなどの外部スクリプトを検討します。
4. 近づいたときに話す/クリック時に話す
公式Wikiでは、close を有効にするとプレイヤーが設定距離(初期値として5ブロックが説明される場合があります)に近づいたときに話し、無効にすると設定されたトーク用アイテムでクリックされたときに話すと説明されています。
- 近接会話:街の住人、雰囲気づくりのNPC向け。会話頻度や距離を設計しないと周辺で多数のNPCが同時に話す場合があります。
- クリック会話:案内係、受付、説明用NPC向け。プレイヤーが必要なときに話しかけられるため、ユーザー向けサーバーでは扱いやすい構成です。
「何も話さない」場合、プレイヤーに citizens.npc.talk 権限があるか確認してください。権限プラグインで未許可の場合、NPCのテキストを設定してもプレイヤー側に表示されません。
5. アイテム条件
エディタの item 設定は、話しかけるときに必要な手持ちアイテムのパターンを指定する機能です。具体的にアイテムの種類・NBT/コンポーネント・数量をどう比較するかはバージョン実装と設定に依存する場合があります。
入場券や鍵をチェックしたい、アイテムを消費したい、といった要件は区別してください。基本テキストのアイテム条件が「消費」まで保証するとは限りません。アイテムを消費する仕組みが必要なら、クリックコマンド・ショップ機能・外部プラグインを検討します。
6. 距離と遅延
range:近接会話などで対象となるプレイヤーの距離。delay:同じプレイヤーに何度も連続して話さないための間隔/クールダウンに関係します。
旧来のエディタでは遅延の表示単位が実際の処理と混同され得る記述が報告されたことがあります。設定の単位や実際の挙動を厳密に扱う場合、現在のバージョンで少人数テストを行ってください。
7. テキストの書式
Citizensのテキスト構文では、<...> 形式のプレースホルダーとチャット色・装飾を使えます。代表例:
| 記法 | 意味 |
|---|---|
<npc> | NPC名 |
<id> | NPC ID |
<owner> | NPCの所有者 |
<player> | 対象プレイヤー名(利用箇所により対象が異なることがあります) |
<world> | プレイヤーのワールド |
<nearest_player> | NPCに最も近いプレイヤー名 |
<br> | テキスト内の改行 |
色・装飾には、&a(緑)、&c(赤系)、&l(太字)、&o(斜体)、&r(リセット)などの形式が使われます。Minecraft 1.16以降のHexカラーやMiniMessageも、対応箇所で利用できると公式Wikiに記載されています。
例:
&6< npc > へようこそ! &7案内が必要な場合は、右クリックしてください。
上例1行目の < npc > は説明用に空白を含めています。実際に入力する場合は <npc> としてください。
MiniMessage・PlaceholderAPIプレースホルダーの使用可否は、機能やインストール済みプラグインによって異なります。すべての設定欄がすべてのプレースホルダーを解決できるとは限りません。
8. セリフが出ないとき
- NPCが選択されているか確認。
/npc text内で文章が登録されているか確認。- 編集モードを適切に終了したか確認。
- 近接会話とクリック会話の設定を確認。
- プレイヤーに
citizens.npc.talkが許可されているか確認。 - チャット制御プラグイン、権限プラグイン、他のNPCプラグインとの競合を確認。
/npc help textとログを確認し、短い単純な文章で再テスト。