タイル_エンティティ_フォーマット(コマブロ講座Ⅱ用)

みなさん、こんにちは
赤石大好き!赤石愛です。



投稿しました。

遅くなってすみません。

ロック系のデータタグ(=タイルエンティティフォーマット)について纏めています。
動画内で扱えなかったブロックもあります。
調べ方や型、各記号の意味などの基本的な説明は動画でします。

型の補足
1.後々の講座で出てきた時に解説するかもしれません(未定)が、下の纏めには出てきているので、小数を扱う型について少し解説します。
float型:フロート型といって、浮動小数点数を扱います。浮動だからフロートですね。普通の小数なんですが、数値の部分と小数点の位置を別々に覚えています。小数点の位置をふよふよと動かせるので浮動小数点数です。厳密には小数だけでなく、小数点を数値のずっと右の方に持っていく事で、とても大きな数も表わせます。int型と同じ4byte(32bit)で覚えています。
double型:フロート型の倍の8byte(64bit)で覚えているので、ダブル型と言います。フロート型よりも精度が良くなります。
2.真偽値について
バイト型のデータタグのうち、0bか1bしかとらないものは、それぞれfalseやtrueで指定しても構いません。

タイルエンティティ(データタグを持つブロック)
  1. チェスト/トラップチェスト
  2. かまど
  3. 醸造
  4. エンチャントテーブル
  5. 植木鉢
  6. ジュークボックス
  7. 音符ブロック
  8. 看板
  9. ビーコン
  10. ホッパー
  11. ディスペンサー/ドロッパー
  12. コンパレーター
  13. コマンドブロック
  14. 頭(頭蓋骨)
  15. スポナー
各データタグ
0.共通

  • それぞれid,x,y,zを持ちます。変更不可なので省略。
1.チェスト/トラップチェスト
  • CustomName:開けた時(または鍵がかかっていた時)に表示される名前。文字列型。
  • Lock:ここに設定した名前のアイテムを持つ人しか開けられなくなる。文字列型。
  • Items:アイテムのデータタグのリスト。各タグは以下の項目を持つ。
    • id:アイテムのID名。文字列型(1.8~)。
    • Damage:アイテムのデータ値。羊毛の色やツール類の消耗度等。ショート型
    • Slot:アイテムがある場所。左上0から右下の26まで横書きのように進む。バイト型。
    • Count:アイテムの個数。1~64。バイト型。
    • tag:追加情報(エンチャントなど)のタグ。アイテムによるので省略。(アイテムのデータタグの時に扱うかも)
例)
/setblock ~ ~1 ~ minecraft:chest 0 replace {
CustomName:"宝箱",
Lock:"宝箱の鍵",
Items:[
{
id:"minecraft:diamond_block",
Damage:0s,
Slot:13b,
Count:10b
}
]
}

2.かまど
  • CustomName:チェスト参照。文字列型。
  • Lock:チェスト参照。文字列型。
  • Items:Slotは上の位置(焼かれるもの)が0、下の位置(燃料となるもの)が1、右の位置(焼けたもの)が2。その他はチェスト参照。タグのリスト。
  • BurnTime:残りの燃焼時間。単位はtick。ショート型。
  • CookTime:現在精錬中のアイテムの精錬経過時間。単位はtick。CookTimeTotalに設定した時間に達すると0になり、次の精錬へと移行する。ショート型。
  • CookTimeTotal:1回の精錬に要する時間。単位はtick。精錬終了時に200tick(10秒)に設定される。CookTimeを下回っていた場合、精錬が終了しなくなるので注意。ショート型。
例)
/setblock ~ ~1 ~ minecraft:lit_furnace 0 replace {
Items:[
{
id:"minecraft:beef",
Damage:0s,
Slot:0b,
Count:3b
}
],
BurnTime:411s,
CookTimeTotal:10s
}

3.醸造
  • CustomName:チェスト参照。文字列型。
  • Lock:チェスト参照。文字列型。
  • Items:Slotは下(瓶のところ)が左から0~2、上(材料のところ)が3。その他はチェスト参照。タグのリスト。
  • BrewTime:醸造の残り時間。単位はtick。醸造開始時に400に設定され、0になると終了。ショート型。
例)
/setblock ~ ~1 ~ minecraft:brewing_stand 0 replace {
Items:[
{
id:"minecraft:potion",
Damage:16s,
Slot:0b,
Count:1b
},
{
id:"minecraft:speckled_melon",
Damage:0s,
Slot:3b,
Count:1b
}
]
}

4.エンチャントテーブル
  • CustomName:チェスト参照。文字列型。
例)
/setblock ~ ~1 ~ minecraft:enchanting_table 0 replace {
CustomName:"1回100円"
}

5.植木鉢
  • Item:壊した時にドロップするアイテムの名前。花などの場合、見た目にも影響。文字列型(1.8~)。
  • Data:花の種類などを指定。イント型。
例)
/setblock ~ ~1 ~ minecraft:flower_pot 0 replace {
Item:"minecraft:red_flower",
Data:8
}

6.ジュークボックス
  • Record:RecordItemが設定されていない場合、代わりとして使える。アイテムIDを数値で指定するとRecordItemを設定する。使われていないので、そのうち使えなくなるかも知れない。イント型。
  • RecordItem:Slotを除くアイテムのデータタグ。リストではない点に注意。チェスト参照。
注意:レコードを鳴らせるのはプレイヤーが入れた時。ジュークボックスのデータ値が1のとき、中のアイテムを右クリックで取り出せる。
例)
/setblock ~ ~1 ~ minecraft:jukebox 1 replace {
RecordItem:{
id:"minecraft:potion",
Damage:8229s,
Count:1b,
tag:{
display:{
Name:"コーラ"
}
}
}
}

7.音符ブロック
  • note:音程(右クリックされた回数)。0から24で設定。バイト型。
例)
/setblock ~ ~1 ~ minecraft:noteblock 0 replace {
note:6b
}

8.看板
  • Text1:1行目の文。文字列型。
  • Text2:2行目の文。文字列型。
  • Text3:3行目の文。文字列型。
  • Text4:4行目の文。文字列型。
例)
/setblock ~ ~1 ~ minecraft:standing_sign 0 replace {
Text2:"←ブラジル 出口→"
}

9.旗
  • Base:旗の色。イント型。
  • Patterns:旗の模様のタグのリスト。早い順、つまり最後の模様が最も手前に表示される。
    • Color:模様の色。イント型。
    • Pattern:模様の種類を指定。文字列型。
例)
/setblock ~ ~1 ~ minecraft:standing_banner 0 replace {
Base:12,
Patterns:[
{
Pattern:"tts",
Color:15
},
{
Pattern:"bs",
Color:10
},
{
Pattern:"flo",
Color:11
}
]
}

10.ビーコン
  • Lock:チェスト参照。文字列型。
  • Levels:ビーコンのピラミッドの段数。書き換えてもすぐに正しい段数に修正される。イント型。
  • Primary:主効果で付与するステータス効果を数値で指定。イント型。
  • Secondary:副効果で付与するステータス効果を数値で指定。Primaryと同じものを指定するとⅡの効果になる。イント型。
PrimarySecondaryの数値はこちら(マインクラフト公式wiki日本語版のステータス効果のページ)の表のIDの部分を参照。
例)
/setblock ~ ~ ~ minecraft:beacon 0 replace {
Lock:"見せられないよ!",
Primary:12,
Secondary:13
}

11.ホッパー
  • CustomName:チェスト参照。文字列型。
  • Lock:チェスト参照。文字列型。
  • Items:Slotは左から順に0から4。その他はチェスト参照。タグのリスト。
  • TransferCooldown:次にアイテムを自主的に運べるまでの時間。単位はtick。イント型。
例)
/setblock ~ ~1 ~ minecraft:hopper 0 replace {
CustomName:"シルクロード",
Lock:"お仕事中です",
Items:[
{
id:"minecraft:string",
Damage:0s,
Count:1b,
Slot:0b
}
]
}

12.ディスペンサー/ドロッパー
  • CustomName:チェスト参照。文字列型。
  • Lock:チェスト参照。文字列型。
  • Items:Slotは左上から右下にかけて横書きの順に0から8。その他はチェスト参照。タグのリスト。
例)
/setblock ~ ~1 ~ minecraft:dispenser 0 replace {
CustomName:"沢山入ってる車庫",
Lock:"セコム",
Items:[
{
id:"minecraft:minecart",
Damage:0s,
Slot:4b,
Count:64b
}
]
}

13.コンパレーター
  • OutputSignal:出力の強さ。0~15。変更しても意味がないので、出力の確認ぐらいにしか使えない。イント型。
14.コマンドブロック
  • CustomName:コマンド実行時に表示される名前。文字列型。
  • Command:実行するコマンド。文字列型。
  • SuccessCount:直前のコマンドの成功した回数。失敗なら0、成功なら通常は1、一部の複数を対象に出来るコマンドでは2以上の事がある。コンパレーターをつけた時に出力される値(15以上は15)。イント型。
  • LastOutput:コマンドの実行結果メッセージ(JSON形式)。一部のコマンドでは更新されない。JSON形式なのは翻訳のためで、色やイベントは反映されない。文字列型。
  • TrackOutput:コマンドの実行結果をコマンドブロックに表示するかどうか。バージョン1.8以降のみ有効。バイト型。
例)
/setblock ~ ~1 ~ minecraft:command_block 0 replace {
CustomName:"ずっと10出力用",
Command:"/say 出力変わっちゃったよ!",
SuccessCount:10
}

15.頭(頭蓋骨)
  • SkullType:種類を数値で指定。バイト型。
    1. ケルトンの頭蓋骨
    2. ウィザースケルトンの頭
    3. ゾンビの頭
    4. 頭(後述のExtraTypeを使って指定)
    5. クリーパーの頭
  • Rot:設置時の向きを0から15で指定。0が北向きで、1増える毎に時計回りに22.5度回転。壁設置の場合は一部向きが無効。バイト型。
  • ExtraType:SkullTypeが3の時のみ有効。バージョン1.8からは下のOwnerタグを使う。プレイヤー名または予め用意されている特殊なスキン名を指定。指定しないとスティーブのスキン。文字列型。
特殊なスキン名一覧(公式wikiのSS)
敵性モンスター
  • MHF_Spider
  • MHF_CaveSpider
  • MHF_Slime(ヘッドホン付き)
  • MHF_Enderman
  • MHF_Blaze
  • MHF_Ghast
  • MHF_LavaSlime
  • MHF_Wither
  • MHF_Herobrine
    (公式ジョークなので実際には登場しません。)
中立モンスター
生物
ブロック
記号

例)
/setblock ~ ~1 ~ minecraft:skull 1 replace {
SkullType:3b,
ExtraType:"MHF_Slime",
Rot:2b
}
  • Owner:SkullTypeが3の時のみ有効。1.8から、ExtraTypeに代わってこちらを使う。
    • Name:ExtraTypeに同じ。文字列型
    • Id:UUIDを指定。UUIDの調べ方は、頭を設置して上に乗り、/blockdata ~ ~-1 ~ {:}を実行する。データタグ内のIdがそのスキンのUUID。文字列型。
    • Properties:通常必要ないので省略。
例)
/setblock ~ ~1 ~ minecraft:skull 1 replace {
SkullType:3b,
Owner:{
Name:"MHF_Slime",
Id:"870aba93-40e8-48b3-89c5-32ece00d6630"
},
Rot:2b
}

16.スポナー
  • Delay:次に湧くまでの時間。単位はtick。-1を設定すると、湧いたものとして各種項目が再設定される。ショート型。
  • SpawnRange:湧く時の範囲を指定出来る。スポナー北西の角からx,zの取れる範囲になる。y座標は変えられない。通常は4。ショート型。
  • SpawnCount:一度に湧く数。ショート型。
  • MaxSpawnDelay:再設定時にDelayの取り得る最大値。単位はtick。通常は800。ショート型。
  • MinSpawnDelay:再設定時にDelayの取り得る最小値。単位はtick。通常は200。ショート型。
  • MaxNearbyEntities:湧き制限の数。同じEntityIdなら同じに数えられる。例えば、スケルトンとウィザースケルトンは区別出来ない。カウントする範囲は変えられない。ショート型。
  • RequiredPlayerRange:プレイヤーが踏み入ると稼働し始める距離。直線距離。ショート型。
  • EntityId:湧かせるMobのタイプ。文字列型。
  • SpawnData:湧かせるMobのデータタグ。使いそうな一部だけ紹介するので、詳しく知りたい方はこちら(Minecraft公式Wiki英語版)
    • Pos:湧く場所を絶対座標で指定。ダブル型のリスト。
      例)Pos:[20.5d,64.0d,103.5d]
    • Invulnerable:通常0。1にすると完全無敵化。バイト型。
    • Riding:ライダーやジョッキーを湧かせたい時に設定。下のMobのエンティティデータタグ。
      • id:下のMobのタイプ。文字列型
      • IsChickenJockey:ニワトリに乗せる時に設定。1にするとニワトリも距離でデスポーンするようになる。ピースフルで消えるわけではないので注意。バイト型。
        例)
        Riding:{id:"Chicken",IsChickenJockey:true}
    • HealF:モンスターのHPを設定。1.0でハート半分(素手ワンパン)。フロート型。
    • ActiveEffects:ステータス効果を設定。タグのリスト。
      • Id:ステータス効果を数値で指定。ビーコン参照。バイト型。
      • Amplifier:ステータス効果のレベルを指定。0は1扱いになる。バイト型。
      • Duration:ステータス効果の残り時間。単位はtick。イント型。
      例)
      ActiveEffects:[
      {Id:1b,Amplifier:1b,Duration:1200},
      {Id:5b,Amplifier:2b,Duration:1200}
      ]
      →移動速度上昇Ⅰと攻撃力上昇Ⅱを1分間
    • Equipment:装備しているアイテム。Slotを除いたアイテムのデータタグを必ず5つ含むリスト。Mobが対応していないアイテムは見た目には反映されない。ドロップはする。手持ち、足、脚、胸、頭の順番。耐久値はDropChancesで特別な設定にしない限り装備中のみ反映され、ドロップ時にはランダムに再設定される。
      例)
      Equipment:[
      {id:"minecraft:diamond_sword",Count:1b,Damage:0s},
      {},
      {},
      {id:"minecraft:diamond_chestplate",Count:1b,Damage:0s},
      {id:"minecraft:diamond_helmet",Count:1b,Damage:0s}
      ]
    • DropChances:装備しているアイテムのドロップ確率を設定出来る。0から1の間の少数で設定する。指定しない場合、0.085に設定されている。1より大きい値を指定すると、耐久値そのままでドロップする。ダブル型5つのリスト。
      例)
      DropChances:[2.0f, 0.0f, 0.0f, 0.1f, 0.2f]
    • CanPickUpLoot:アイテムを拾うかどうかを設定。0なら拾わない。1なら拾う。バイト型。
    • PersistenceRequired:デスポーンするかどうかを設定。0ならする。1ならしなくなる。バイト型。
    • SkeletonType:ケルトの時に設定。ウィザースケルトンかどうか。0ならスケルトン、1ならウィザースケルトン。バイト型。
    • PlayerCreated:アイアンゴーレムの時に設定。プレイヤーに作られたかどうか。0なら攻撃すると敵対する。1なら攻撃しても敵対しない。バイト型。
    • IsBaby:ゾンビゾンビピッグマンの時に設定。子供かどうか。0なら大人、1なら子供。バイト型。
  • SpawnPotentials:再設定時にEntityIdSpawnDataを更新する。タグのリスト。
    • Weight:再設定時に選ばれる確率。整数で指定。イント型。
    • Type:更新するMobのタイプ。再設定時にEntityIdを上書きする。文字列型。
    • Properties:更新するMobのデータタグ。再設定時にSpawnDataを上書きする。書き方はSpawnData参照。
注意SpawnCount等の一部項目を省略した時、他の項目との兼ね合いで初期値ではなく0に設定される場合がある。
例)
/setblock ~ ~1 ~ minecraft:mob_spawner 0 replace {
Delay:-1s,
MinSpawnDelay:20s,
MaxSpawnDelay:20s,
SpawnCount:1s,
SpawnPotentials:[
{
Type:"Creeper",
Weight:1
},
{
Type:"Skeleton",
Weight:2,
Properties:{
SkeletonType:1b,
Equipment:[
{
id:"minecraft:diamond_sword",
Count:1b,
Damage:0s
}
],
DropChances:[
0.5f
]
}
},
{
Type:"Zombie",
Weight:1,
Properties:{
IsBaby:true,
Riding:{
id:"Chicken",
IsChickenJockey:true
},
ActiveEffects:[
{
Id:5b,
Amplifier:1b,
Duration:6000
},
{
Id:11b,
Amplifier:1b,
Duration:6000
}
]
}
}
]
}
→普通のクリーパーと
ダイヤ剣を持ったウィザースケルトン(確率2倍)と
耐性Ⅰ攻撃力アップⅠのかかったチキンジョッキーを
1秒毎にどれか1体ずつ湧かせるスポナー


上記各項目は実際に試しています。
分からないところがあれば、コメントでお気軽にご質問ください。