マイクラ統合版(スイッチ・スマホ・PS5・PC)・教育版の/dialogueコマンドの解説です。このコマンドを使うと、プレイヤーがNPCを直接クリック(タップ)していなくても、特定のタイミングでNPCの会話ウィンドウを強制的に画面にポップアップさせることができます(open)。さらに、ストーリーの進行状況やクエストの達成度に合わせて、NPCのセリフや選択肢ボタン、実行されるコマンドの内容(シーン)を丸ごと別のものに切り替えることも可能です(change)。RPGゲームのような本格的なストーリー仕立ての配布ワールドや、アドベンチャーマップを作る時に大活躍します。
【実行例】最も近くにいるNPCの会話画面を、一番近くのプレイヤーに強制的に開きます。その際、ビヘイビアパックであらかじめ設定しておいた「scene_quest1」という特定の会話シーンを表示させます。
⚙️ /dialogue コマンドの構文(書き方)
会話画面をプレイヤーに強制的に開く(open)システムと、NPCが次に話す内容を事前に入れ替える(change)システムの2つの構文があります。
🧩 openとchangeの2つのモードの役割一覧表
コマンドの第1引数に指定する、ダイアログ制御システムの具体的な効果と使い分けです。
| モード名 | 詳しい効果とゲーム内での挙動(説明) |
|---|---|
| open | 【会話画面の強制ポップアップ】 指定したプレイヤーの画面に、対象のNPCをクリックしたときと全く同じ会話ウィンドウを強制的に開きます。特定の場所に踏み込んだ瞬間にNPCから突然話しかけられるような演出が作れます。 |
| change | 【セリフやボタンの切り替え・上書き】 対象のNPCが保持しているセリフ、名前、ボタン、ボタンを押したときのコマンドなどのデータを、指定した新しい「シーン」の内容に上書き更新します。次に話しかけたときから新しいセリフに変化させることができます。 |
📋 引数(設定値)の詳しい条件とルール一覧
`/dialogue` コマンドで指定する各パラメータの正しい指定方法です。
| 引数名 | 指定する中身とルール |
|---|---|
| <npc: 対象> | 会話のベースとなるNPCをターゲットセレクターで指定します(例:@e[type=npc,c=1])。 |
| <player: 対象> | 会話画面を表示させる対象(またはchangeを適用する対象)のプレイヤーを指定します(例:@p)。 |
| <sceneName: シーン名> | 自作のビヘイビアパック(dialogueフォルダ内のJSONファイル)であらかじめ定義しておいた、表示したい一連の会話シーン識別子(ID名)を文字列で指定します。 |
🛠️ コピペで使える!実践コマンド実例集
チャット欄に入力したり、コマンドブロック(衝撃やリピートなど)に組み込んでアドオンの挙動をテスト・運用する際の実践例です。
衝撃(または範囲感知リピート)コマンドブロックで実行する、ストーリーイベント用の基本形です。条件を満たした最も近くのプレイヤー(@p)の画面に、最寄りのNPC(@e[type=npc,c=1])を介して、JSON内で定義した最初の挨拶シーン 「scene_intro」 を強制ポップアップさせます。プレイヤーが手動でNPCを右クリックしなくてもイベントが自動進行するため、緊迫したRPGのカットシーンを再現できます。
モードに `change` を使用したストーリー進行用の重要な書き方です。名前が「村長」であるNPCを対象に、話しかけたプレイヤー(@p)に対するセリフデータを次の段階である 「scene_clear」 へと上書き変更します。これにより、条件をクリアしたプレイヤーが「次に村長に話しかけたとき」だけ、お礼の言葉を述べたり、新しいクエスト報酬ボタンを出現させるといったフラグ管理が可能になります。
末尾のターゲットに `@a(全員)` を指定した応用例です。ワールド全体のストーリーが「第1章から第2章へ進んだ」ようなタイミングで実行します。これにより、ワールドにいる全てのプレイヤー(@a)に対して、「門番」という名前のNPCのセリフや選択肢ボタンが 「scene_chapter2」 の内容へと一斉に書き換わります。マルチプレイの配布ワールドなどで、全員のゲーム進行度を同期させたいときに必須のテクニックです。
⚠️ 注意点
※ `/dialogue` コマンドを機能させるには、あらかじめアドオン(ビヘイビアパック)を作成し、その中のJSONファイルに「sceneName(シーン名)」や会話テキスト、選択肢ボタンの構造を定義してワールドに導入しておく必要があります。ゲーム内にただNPCをスポーンさせただけでは、このコマンドで呼び出すシーンが存在しないためエラーになります。高度なRPGワールドを制作する開発者向けの強力なシステムです。
💻️ マインクラフトでプログラミングが学べる教室
👇️KIDSPROプログラミング教室の公式サイトをチェック!

📖 おすすめの参考書 & YouTube解説動画
👇️KIDSPRO (mcguide) 出版のコマンド完全攻略本をAmazonでチェック!

👇️KIDSPRO (mcguide) のYouTube解説動画をチェックしよう!




コメント