MC CommanderMinecraft非公式コマンド支援

giveコマンドでアイテム名が赤くなる原因

Java版のチャット欄で文字が赤くなるのは、そこから先がコマンドとして読めていない合図です。giveの場合、ほとんどはアイテムIDの書き方が原因です。

giveアイテムIDエラー

Giveジェネレーターを開く

更新日:

赤くなる位置で原因がわかる

赤くなる位置考えられる原因
アイテムIDの部分IDが存在しない(つづり、日本語名、古いID、版違い)
IDの後ろの{や[NBTとcomponentsの書き方が今の版と合っていない
セレクターの部分@の後の文字や、[]の中の引数が間違っている

原因1:日本語名や大文字で書いている

IDは英語の小文字です。「ダイヤモンドの剣」はdiamond_sword、「金のリンゴ」はgolden_appleです。単語の間はスペースではなくアンダースコア(_)でつなぎます。

原因2:IDが変わった・似た名前がある

アップデートでIDが変わることがあります。たとえばJava版1.20.3で、草(背の低い草)のgrassがshort_grassに変わりました。古い解説のIDが赤くなるときは、今のIDを調べ直してください。

似た名前にも注意します。エンチャントされた金のリンゴはenchanted_golden_apple、ネザライトの剣はnetherite_swordです。

原因3:統合版のIDを使っている

スポナーは統合版だとmob_spawnerですが、Java版ではspawnerです。このように版でIDが違うアイテムがあります。

原因4:1.20.5以降のcomponentsになっていない

Java版1.20.5から、アイテムに付けるデータの書き方が変わりました。古いNBTの書き方は、IDの後ろの{から赤くなります。

× /give @p diamond_sword{Enchantments:[{id:"sharpness",lvl:5}]}
○ /give @p diamond_sword[enchantments={sharpness:5}]

下の書き方は1.21.5以降の形です。1.20.5〜1.21.4では[enchantments={levels:{sharpness:5}}]と書きます。版によって細かい形が違うので、Giveジェネレーターで版を選んで作るのが確実です。違いの詳しい説明はNBTとcomponentsの違いにあります。

正しいIDの調べ方

  1. ゲーム内で確認する:Java版ではF3+Hで詳細表示をオンにすると、アイテムにカーソルを合わせたときにIDが表示されます。
  2. 入力補完を使う:/give @p diamondまで打つと、diamondを含むIDの候補が表示されます。Tabキーで選べます。
  3. ID検索を使う:ID検索で日本語名からIDを探せます。

赤くならないのに渡されないとき

IDが正しくても、インベントリがいっぱいだとアイテムは足元に落ちます。また、対象のセレクターに当てはまる人がいないと何も起きません。giveが使えないときの確認ポイントも合わせて確認してください。

よくある質問

ブロックのIDもgiveで使えますか?

アイテムとして存在するブロックなら使えます。ただし水や溶岩、炎、ネザーポータルのように、アイテムとしては存在しないブロックはgiveできません。水と溶岩はバケツ(water_bucket、lava_bucket)で渡します。

ポーションや矢の種類を指定したいです。

Java版1.20.5以降はcomponentsのpotion_contentsで指定します。版によって書き方が違うので、ポーション生成ツールを使うと確実です。

赤くならないのに「不明なアイテム」と出ます。

入力中は文字として正しくても、実行時にIDが存在しないと判定されることがあります。MODのアイテムなら、MODの名前空間(modid:item)を付けているか確認してください。

関連ページ

giveコマンドが使えないときの確認ポイント

IDの他にも確認したい項目です。

マイクラのアイテムIDを探す方法

IDを調べる方法をまとめています。

コマンド辞典

基本構文とコマンド別の使い方を確認できます。

あわせて読みたい記事とコマンド例

カスタムアイテムの作り方

マイクラのgiveコマンドで、名前、説明文、エンチャント、壊れない設定を付けたカスタムアイテ…

マイクラで旗・盾の柄を作る方法

マイクラの旗(バナー)と盾の柄をgiveコマンドで作る方法を、Java版1.20.5以降のb…

マイクラのgiveコマンドでアイテムを渡す基本とよくあるミス

マイクラのgiveコマンドでアイテムを渡す基本、個数指定、対象セレクター、Java版のcom…

Minecraftで武器をgiveするコマンドの作り方

マイクラで剣、斧、弓、クロスボウ、トライデント、メイスをエンチャント付きでgiveするコマン…

ダイヤモンドを配る

マイクラでダイヤモンドを配るときのコマンド例。Giveの個数と対象を変えて配布する基本例。そ…