112NBT書き方変わる

NBTタグ ― それはコマンドを習得する上で避けては通れない難関。頑張って入力してもエラーばかり... NBTタグがうまく書けなくて悩んだ経験はありませんか? PC版のアップデート「1.12」では、NBTタグで悩むあなたを助ける嬉しい新機能が追加される予定なんです。しかし同時にNBTタグの書き方が少し変わります。

[2017年5月2日追記] インデックス数字や空の値の禁止について追記しました。
※この記事は2017年4月30日現在の仕様を解説しています。バージョン1.12のリリース時には仕様が変わる可能性もありますのでご注意下さい。

スポンサーリンク


コマンドブロックがNBTタグの間違った場所をより具体的に教えてくれるように

皆さん、突然ですが以下のコマンドをコマンドブロックにコピペしてみてください。

ナポアン特製の間違ったコマンド
/give @p minecraft:diamond_helmet 1 0 {display:{Name:だいやのかぶと"},ench:[{id:0,lvl:5},{id:3,lvl:5},{id:34,lvl:5}]}

エンチャント効果を付けたダイヤのヘルメットを入手するコマンドなんですが、間違いに気付きましたか?

ここが間違い

そうです、アイテム名の右側にダブルクオーテーションを付けたのに、左側には付けていません。これだとどこからどこまでがアイテム名なのか判別不能になり、エラーになります。

1.11までは分かりにくい

1.11.2でこのコマンドを実行しようとすると、「データタグの解析に失敗しました」というよく見るエラーが出ます。具体的にどこが間違っているのか分かりにくいですね。(分かる人は分かるけど)

間違えた場所が分かりやすくなった

しかし17w16aでコマンドブロックが進化しました。書き方が間違っている箇所を「HERE」とか言って矢印でアピールしてくれるようになったんです。これならコロンとセミコロンの間違いやカッコの不足など、細かい間違いをすぐ修正できますね。


しかし1.12からNBTタグの書き方のルールが少し変わります

しかし、17w16aでは同時にNBTタグの書き方のルールがちょっと変更されました。


NBTタグの項目名をダブルクオーテーションで囲っても認識されるように

項目名に引用符付けられなかった

1.11.2まで、NBTタグの項目名をダブルクオーテーションで囲むと、何故か認識されませんでした。本来のJSONの記法だとこちらが正しいのですがね...

やっと認識されるように

しかし1.12からは、項目名をダブルクオーテーションで囲んでも認識されるようになります。やっと。


特殊な文字やスペースを含む文字列はダブルクオーテーションで囲もう

NBTタグ内で文字列を書く際、これまではダブルクオーテーションで囲まなくてもなぜか認識されていました。(JSON的には間違いです)

しかし1.12からは、全角文字を含む特殊な文字を書くなら必ずダブルクオーテーションで囲む必要があります。

また、文字列がスペースを含む場合も必ずダブルクオーテーションで囲む必要があります。とにかくガバガバJSONをやめて普通にJSONを書こう! 以上!


追記: 複数の数値を書く際のインデックスは使えなくなった

これまで

Motionなど、三次元の動きを指定したりするNBTタグにおいて、任意で使えていた「インデックス」。数値の左に付ける0と1とか2とかの数字のことです。

これから

そんなインデックスの数字は、もう使えません。書くの面倒だったんで書き方が統一されて嬉しい。


追記: 空の値はエラーになるように

書いてないけどOKだった

これまでは何故か空の値も許されていたのですが...(ガバガバすぎィ!)

ちゃんと書け

1.12ではやっと空の値がNGになります。JSONの記法的には当たり前なんだけどね。


ソース

17w16a – Official Minecraft Wiki
https://minecraft.gamepedia.com/17w16a
スポンサーリンク

毎度毎度ツイート、コメント等ありがとうございます。Twitterではブログの更新状況など色々呟いてます。気軽にフォロー下さい。

スポンサーリンク

コメント

  • でんでん (Minecraft ID:denden0816)

    1コメ!
    新記事キタ――(゚∀゚)――!!ーー(゚∀゚)ーータキ

  • tsunamayo401

    ついに普通の記事にも淫夢ネタを使っていくのか(困惑)

  • ゆっくりアスキーアートchannel

    新記事キタ――(゚∀゚)――!!
    ・・・でも淫夢ネタはまずいですよ!

  • xyz

    PCとPEのバージョンが似すぎてわかりにくくなってきた

  • スラスラ

    淫夢語録使いやすいし、多少はね?

  • 河城翔(anatawa12)

    俺にとっては
    {name:"date"}が許されるのが気にくわない

  • イカ松@松難民

    ガ バ ガ バ J S O N

  • Yu Ki

    wikiみて あ………..