MC CommanderMinecraft非公式コマンド支援
Minecraftコマンド

変換

貼り付けたコマンドから元のバージョンを自動推定し、指定したバージョン向けの構文に変換します。未対応のアイテムやエンチャントは赤い波線で確認できます。

注意

Java版と統合版では、NBT/components、アイテム指定、エンティティデータ、JSONテキストの扱いが異なります。出力は移植の下書きとして使ってください。

このツールでできること

対応:Java版の旧・新構文および統合版との違いを考慮生成後にコピー可能
  1. 元のコマンドを貼り付ける
  2. 変換先バージョンを選ぶ
  3. 非対応要素と変換結果を確認

設定できる項目は選択したバージョンによって変わります。

簡易ジェネレーター

変換結果は、元のコマンドの機能をすべて再現するとは限りません。とくにNBTとcomponents、Java版と統合版の差は確認が必要です。

生成結果

関連ツール

コマンド分解・構文確認

Java版と統合版でコマンドが違う主なポイント

同じ /give や /execute でも、Java版と統合版(Bedrock)では書き方が違う部分があります。また、Java版の中でも1.20.5と1.21.5で書式が大きく変わりました。このツールで変換したあとは、下の違いを参考に結果を確認してください。

ターゲットセレクターの引数

Java版                                  統合版
@e[type=zombie,limit=1,sort=nearest]   @e[type=zombie,c=1]
@a[distance=..10]                      @a[r=10]
@a[distance=5..10]                     @a[rm=5,r=10]
@a[gamemode=creative]                  @a[m=creative]
@a[level=10..]                         @a[lm=10]

scores・tag・name・type などは両版とも同じ書き方ができます。

アイテムの詳細データ

Java版では名前・エンチャント・耐久無限などをcomponentsで直接指定できますが、統合版の /give で付けられるのは「壊せるブロック」「置けるブロック」「アイテムのロック」「死亡時に保持」などに限られます。

統合版の例:
/give @p diamond_pickaxe 1 0 {"minecraft:can_destroy":{"blocks":["stone"]}}
/give @p diamond_sword 1 0 {"minecraft:keep_on_death":{}}

名前付き・エンチャント付きの武器を統合版で配りたい場合は、金床で作ったものをチェストに入れて配布する、またはビヘイビアパックを使う方法になります。

コマンド自体の違い

Java版の新旧書式(1.20.4 → 1.20.5 → 1.21.5)

1.20.4以前: /give @p diamond_sword{Unbreakable:1b,Enchantments:[{id:"sharpness",lvl:5}]}
1.20.5〜1.21.4:/give @p diamond_sword[unbreakable={},enchantments={levels:{"minecraft:sharpness":5}}]
1.21.5以降: /give @p diamond_sword[unbreakable={},enchantments={"minecraft:sharpness":5}]

古い解説サイトや動画のコマンドが動かない原因の多くは、この書式の違いです。名前の指定も、1.21.5以降は custom_name={"text":"名前"} のように引用符で囲まない形になりました。

変換結果の確認方法

  1. コマンドを貼り付け、変換先のバージョンを選ぶ。変換元は自動推定される。
  2. 出力を確認し、統合版にない機能が含まれていないかを見る。
  3. テストワールドのコマンドブロックに貼り、エラー表示がないかを確認する。
  4. 構文が分からない部分はコマンド分解ツールで要素ごとに確認する。

くわしい解説記事