村人召喚・Java版取引生成
ショップ村人やカスタム取引を持つ村人の/summonコマンドを生成します。
注意
自由な取引内容を指定した村人の召喚はJava版向けです。統合版では同じ取引NBTを使えないため、対応する機能を確認してください。
取引を設定した村人のイメージ。
このツールでできること
- Java版のバージョンを選ぶ
- 村人・買い取り品・販売品を設定
- Summonコマンドを生成
設定できる項目は選択したバージョンによって変わります。
簡易ジェネレーター
村人の取引内容をNBTで設定する方法はJava版向けです。統合版で同じコマンドがそのまま使えるわけではありません。
生成結果
ワールド制作への応用
村人をショップにするだけでなく、取引をクエストの報酬や通貨の仕組みと組み合わせる方法もあります。クエストの組み立てでは実行順序や失敗時の確認方法を説明しています。
村人取引コマンドでできること
ショップ村人、カスタム取引、複数取引、エンチャント付き販売アイテムを作成できます。サーバーの交換所、RPG風ショップ、イベント用NPCを作る場合に使います。
- 買い取りアイテムと売るアイテムを別々に検索できます。
- 売るアイテムには名前、説明文、エンチャントを付けられます。
- 関連:村人取引コマンドの使い方
村人の取引を自由に作る方法
/summon で村人を出すとき、取引内容(Offers)を指定すると「エメラルド1個でダイヤモンド」のような好きな取引を持った村人を作れます。配布マップのショップ、ミニゲームの報酬交換所などによく使われます。
基本の形(Java 1.20.5以降)
/summon minecraft:villager ~ ~ ~ {VillagerData:{profession:"minecraft:weaponsmith",level:5,type:"minecraft:plains"},Offers:{Recipes:[{buy:{id:"minecraft:emerald",count:3},sell:{id:"minecraft:diamond_sword",count:1},maxUses:9999}]},NoAI:1b,Invulnerable:1b,PersistenceRequired:1b}
- buy / buyB:プレイヤーが支払うアイテムです。buyB を書くと2種類の支払いが必要な取引になります。
- sell:村人が渡すアイテムです。componentsを付けて名前やエンチャント付きのアイテムも売れます。
- maxUses:取引できる回数です。大きな値にすると売り切れになりにくくなります。
- rewardExp:
rewardExp:0bで、取引時に経験値オーブを出さないようにできます。
1.20.4以前はアイテムの個数を Count:3b と書いていましたが、1.20.5以降は count:3(小文字)に変わりました。古い解説のコマンドが動かない場合は、ここを確認してください。
ショップ用村人の設定
- NoAI:1b:その場から動かなくなります。頭の向きも固定されます。
- Invulnerable:1b:攻撃やダメージで倒されなくなります。
- PersistenceRequired:1b:時間がたっても消えないようにします。
- CustomName:頭上に名前を表示します。1.21.5以降は
CustomName:{"text":"武器屋","color":"gold"}の形です。
職業とレベル
profession には armorer・butcher・cartographer・cleric・farmer・fisherman・fletcher・leatherworker・librarian・mason・shepherd・toolsmith・weaponsmith などを指定します。見た目の服装が変わるだけでなく、職業ブロックとの関係にも影響します。職業のない(none)村人や、取引経験がなく職業ブロックもない村人は、職業が外れて取引内容が消えることがあるため、ショップ用には職業とレベルを指定しておくのが安全です。
統合版の場合
統合版の /summon ではNBTを指定できないため、コマンドだけで取引内容を自由に設定することはできません。統合版で独自の取引を作るには、ビヘイビアパックで取引テーブルを定義する方法になります。
取引が表示されないときの確認点
- アイテムIDの綴りと、
countを小文字で書いているか。 - Recipesの
[ ]と各取引の{ }が閉じているか。 - 子どもの村人(Age がマイナス)は取引できません。
村人の取引を変更する前に
まず /summon minecraft:villager ~ ~1 ~ で村人を出せるか確認してください。取引内容の編集は、召喚自体とは別の機能です。Java版で使われる取引の Offers データは、統合版の通常の /summon にそのまま渡せません。
取引を組み立てる順序
- Java版の対応バージョンを指定する。
- 交換で要求するアイテムと個数、渡すアイテムと個数を設定する。
- 最初は取引1件だけで生成し、テストワールドで実行する。
- 正常なら取引件数、使用回数、アイテムの詳細設定を増やす。
統合版でJava版と同じカスタム取引を作れると誤認しないよう、生成結果に制限表示がある場合はその説明を優先してください。短い召喚コマンドと長い取引NBTを分けて調べると原因を特定しやすくなります。