トップ記事

どうもArgonです。
ここでは主にMinecraftのコマンドや、コマンド生成ツール「McCmd」について書いています。

HP「Argon's Test World」を開設しました!!(2014:03/11)

【1.7.x】コマンド生成ツール『McCmd』 (Ver,1.40)
↑作れるコマンドは「/give」、「/summon」、「/setblock」、「/tellraw」の4種類です。
McCmd Wiki:解説ページもあります。

ミニゲームMAP「R&F -Run&Fall-」(Ver,1.10)(Snapshot14w10a)
天空アスレチックMAP「SKY Action」(Ver,1.20)



<テクニック(フォーラム)>
【1.7.x】コマンドブロック式TNTキャノン【/summon】
【1.7.x】ボタンを押すと一定時間出現するブロック【/setblock】
【既出?】scoreboardを使ったレッドストーン回路のワイヤレス化

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【1.8.x】1.8.x追加のNBTタグ【12/29更新】

どうも、Argonです。
今回は1.8で/giveや/summonなどのコマンドで指定できるNBTタグが
たくさん増えたので、それらのタグの簡単な紹介記事を書きたいと思います。


【目次】
CanDestroy List(String)型/Item
CanPlaceOn List(String)型/Item
HideFlags Int型/Item
PickupDeley Short型/Item
Lock String型/Item
BlockEntityTag Compound型/Item
rewardExp Byte型/Entity
generation Int型/Item
EndermiteCount Int型/Entity
Lifetime Int型/Entity
Career Int型/Entity
CareerLevel Int型/Entity
Elder Byte型/Entity
insertion String型/JSON
score Compound型/JSON
selector String型/JSON
RabbitType Int型/Entity
CommandStats Compound型/TileEntity
Silent Byte型/Entity
Base Int型/TileEntity
Patterns List(Compound)型/TileEntity
Invisible Byte型/Entity
NoGravity Byte型/Entity
ShowArms Byte型/Entity
Small Byte型/Entity
DisabledSlots Int型/Entity
Pose Compound型/Entity
NoAI Byte型/Entity
NoBasePlate Byte型/Entity
SelectedItem Compound型/Player
PlayerSpawned Byte型/Entity
Marker Byte型/Entity

【12/29更新】
PlayerSpawned / Markerを追加


CanDestroy List(String)型
そのアイテム、ツールで壊せるブロックを指定します。
主にアドベンチャーモードで使用。
記述形式
CanDestroy:["<ブロックの名前1>"]
複数指定する場合は、CanDestroy:["<ブロックの名前1>","<ブロックの名前2>"]のように「,(カンマ)」で区切ります。
(例)/give @p minecraft:diamond_shovel 1 0 {CanDestroy:["minecraft:sand","minecraft:grass"]}
砂と草ブロックを破壊できるダイヤモンドシャベルを入手。
nbt1.png


CanPlaceOn List(String)型
そのブロックが設置できるブロックを指定します。
主にアドベンチャーモードで使用。
記述形式
CanPlaceOn:["<ブロックの名前1>"]
複数指定する場合は、CanPlaceOn:["<ブロックの名前1>","<ブロックの名前2>"]のように「,(カンマ)」で区切ります。
(例)/give @p minecraft:stone 16 0 {CanPlaceOn:["minecraft:diamond_block"]}
ダイヤモンドブロックの上に設置できる石ブロックを入手。
nbt2.png


HideFlags Int型
アイテムのツールチップに表示しない情報の数値を指定します。
記述形式
HideFlags:<数値>
<数値>は下の値を足した値です。
1:エンチャント(ench)
2:属性(AttributeModifiers)
4:壊れない(Unbreakable)
8:壊せるブロック(CanDestroy)
16:上に置けるブロック(CanPlaceOn)
32:そのほかの情報(※1)

※1 14w10aから追加。ポーションのエフェクト、本の世代・著者、花火の爆発の種類。

詳しいHideFlagsの説明・使用例はこちら
また、NBTエディタを用いて、偽装エンチャント・偽装ポーションが作れます。



PickupDeley Short型
入手できない時間を指定します。単位:Tick
また、値を32767にすると、入手できなくなります。
記述形式
PickupDelay:<時間(Tick)>
(例)/summon Item ~0 ~1 ~0 {Item:{id:minecraft:diamond,Count:1,Damage:0},PickupDelay:100}
100Tick(5秒間)入手できないダイヤモンドを召喚。


Lock String型
指定した名前のアイテムをもった状態でしか、開けなくします。
記述形式
Lock:"<開けられるアイテムの名前>"
(例)
/setblock ~0 ~0 ~0 minecraft:chest 0 replace {Lock:"Key"}
Keyという名前のアイテムを持った状態でしか開けられないチェストを設置。
/give @p minecraft:stick 1 0 {display:{Name:"Key"}}
Keyという名前の棒を入手。このアイテムを持った状態で上のチェストを開けられる。

詳しいLockの説明はこちら


BlockEntityTag Compound型
TileEntity(スポナーやチェスト、コマンドブロックなど)のタグをアイテム内に保持する。
記述形式
BlockEntityTag:{<TileEntityのタグ>}
(例)/give @p command_block 1 0 {BlockEntityTag:{Command:"/setblock ~ ~ ~ minecraft:diamond_block"}}
「/setblock ~ ~ ~ minecraft:diamond_block」のコマンドを保持したコマンドブロックを入手。
[Snapshot14w07x]/give Spawner(pastebin):肩車ゾンビスポナーを入手する。


rewardExp Byte型
取引をした際、経験値を入手する(1)かしないか(0)を指定。デフォルトは1(入手)。
村人固有のタグ。
記述形式
rewardExp:<0or1>b
(例)長いのでpastebinに張りました。[Snapshot]NBT_rewardExp
18行目に「rewardExp:1b」、32行目に「rewardExp:0b」に記述。
1,3つ目(rewardExp記述なし)の取引は経験値入手する。2つ目の取引は経験値入手しない。


generation Int型
本のコピーした回数。2(copy of copy)以上の場合はコピーできない。
値によってツールチップに以下のように表示される。
0:Original,1:Copy of original,
2:Copy of a copy,3:Tattered,
4~:book.generation.x(xはgenerationの値)
本固有のタグ。「HideFlags:32」を指定することでツールチップに表示しないようにできる。
記述形式
generation:<数値>
(例)/give @p minecraft:written_book 1 0 {generation:1}
「Copy of original」の本を入手。


EndermiteCount Int型
テレポート時にエンダーマイトをスポーンした回数。デフォルト:0。エンダーマン固有のタグ。
またテレポート毎でエンダーマイトがスポーンする確率は(15 - EndermiteCount)%となっている。
値が0のときは15%、15のときは0%(スポーンしない)。
記述形式
EndermiteCount:<スポーンした数(0~15)>


Lifetime Int型
エンダーマイトがスポーンしてからの時間(Tick)。値が2400(2分間)になると消滅する。
記述形式
Lifetime:<スポーンしてからの時間>




Career Int型
村人の職業を指定します。CustomNameが指定されてない場合、取引のGUIに職業名が表示されます。
Careerの値は下のリストの通りです。

2014-04-13_221456.png
値が0の場合、Careerがランダムに割り当てられます。
記述形式
Profession:<職業の値1>,Career:<職業の値2>
<職業の値1>は上のリストのProfession、<職業の値2>は上のリストのCareer。
(例)/summon Villager ~0 ~1 ~0 {Profession:0,Career:2,CareerLevel:1}
職業がFishermanの村人を召喚。


CareerLevel Int型
職業のレベルです。レベルによって取引内容が変わっていきます。
また、CareerLevelを最大レベル(不明)にすると、取引内容が増えません。
記述形式
CareerLevel:<職業のレベル>
(例)/summon Villager ~0 ~1 ~0 {Profession:0,Career:0,CareerLevel:99,Offers:{(省略)}}
Offersで指定した取引内容のみを取り扱う(取引内容が増えない)村人を召喚。

鉄ツール一式村人(pastebin)
6行目に「CareerLevel:99」記述。
30~87行目にチェストの中身を指定する「BlockEntityTag:{}」記述。




Elder Byte型
Guardian(14w25a追加)専用のタグ。0の場合、普通のGuardian。1の場合、 Elder Guardian (Boss)になる。
記述形式
Elder:<Elder Guardianにするかどうか(0b or 1b)>


insertion String型
Shiftキーを押しながらクリックすると挿入される文字列を指定します。
/tellrawコマンドで使用可能。
記述形式
insertion:"<文字列>"
(例)/tellraw @a {text:"TEST",insertion:"Insertion!"}
「TEST」の文字列をShiftキーを押しながらクリックすると、チャット欄に「Insertion!」が挿入される。


score Compound型
指定したプレイヤーのscoreを表示します。/tellraw、/titleコマンドで使用可能。
存在しないオブジェクティブ名、もしくはプレイヤー名を指定した場合、「?」と表示されます。
text、selectorタグとの併用はできません(※1)。
記述形式
score:{name:"<プレイヤー名>",objective:"<オブジェクティブ名>"}
<プレイヤー名>を「*」にすることで、実行した(文の表示をされる)プレイヤー名のスコアの値を表示します。
(例)/tellraw @a {score:{name:"*",objective:"point"}}
実行したプレイヤーのpointの値を表示します。


selector String型
プレイヤー引数を指定し、その条件に合ったプレイヤー・エンティティの名前を表示する。
text、scoreタグとの併用はできません(※1)。
記述形式
selector:"<プレイヤー引数>"
(例)/tellraw @p {selector:"@p"}
プレイヤー名を表示します。

※1 「text>score>selector」という優先順位があり、複数あった場合、優先順位が高いタグが表示される。
   (例)/tellraw @p {text:"TEXT",score:{name:"*",objective:"Score"},selector:"@p"}
      この場合、表示結果は「TEXT」となる。タグの順番を変えても、textタグが表示される。


RabbitType Int型
Rabbit(14w27a追加)専用のタグ。ウサギの色(種類)を指定します。
記述形式
RabbitType:<ウサギの色(0~5,99)>
<ウサギの色>0:茶色, 1:白, 2:黒, 3:白黒, 4:金, 5=塩と胡椒(?), 99:Killer Rabbit of Caerbannog(殺人ウサギ)
(例)/summon Rabbit ~0 ~0 ~0 {RabbitType:0}
茶色のウサギを召喚。
2014-07-03_222631.png
右から順に、0,1,2,3,4,5,99,( + {CustomName:"Toast"}のウサギ)
撮影用にWitherSkullの上に載せてます。


CommandStats Compound型
コマンドブロック、看板で使用可能。NameとObjectivesを指定することで、コマンドが実行された際に、
アイテムの所持数、エンティティの数などを指定したNameのObjectivesに代入します。
記述形式
CommandStats:{XXXName:"<プレイヤー名>",XXXObjective:"<スコア>"}
<プレイヤー名>の<スコア>にXXXで指定した値を代入する。
XXXには取得するデータ。
<プレイヤー名>にはプレイヤー引数が使用可能ですが、あらかじめ数値を設定しないと動作しません。
【取得できるデータ(XXXの文字列)】
AffectedItems:アイテムの入手した数などを取得(/give,/clearで使用)
AffectedEntities:実行・検知したエンティティの数を取得(/testfor,/killで使用)
AffectedBlocks:設置したブロックの数を取得(/fill,/testforblocksで使用)
SuccessCount:コマンドが成功したかどうか取得

(例1)/setblock ~ ~ ~ minecraft:command_block 0 replace {Command:"/clear @p minecraft:stone 0 0",CommandStats:{AffectedItemsName:"@p",AffectedItemsObjective:"items"}}
焼き石(minecraft:stone)の数を一番近いプレイヤー(@p)のスコアitemsに代入する処理を行うコマンドブロックを設置。

(例2)/setblock ~0 ~0 ~0 minecraft:command_block 0 replace {Command:"/execute @e ~ ~ ~ fill
~ ~ ~ ~ ~-2 ~ glass 0 keep",CommandStats:{AffectedItemsName:"item",AffectedItemsObjective:"stat",AffectedEntitiesName:"entity",AffectedEnti
tiesObjective:"stat",AffectedBlocksName:"block",AffectedBlocksObjective:"stat",SuccessCountName:"
sc",SuccessCountObjective:"stat"}}
全てのエンティティの座標からy座標-2の範囲で、ガラスをkeep指定で埋めるコマンドブロックを設置。
/executeなどで複数のエンティティ/プレイヤーを指定した場合、SuccessCountはコマンドが成功したエンティティの数、AffectedBlocksは最後に実行したエンティティが埋めたブロック数、AffectedEntitiesは最後にコマンドを実行したエンティティの数(1)を代入する。/fillコマンドでAffectedItemsは関係ないので代入をしない。

【参考】reddit - {CommandStats:} Tag in Minecraft Snapshot 14w27b



Silent Byte型
Entity用のタグ。音を出さないかどうか指定します。
記述形式
Silent:<音を出さないかどうか(0b or 1b)>
(例)/summon Villager ~ ~ ~ {Silent:1b}
声が出ない村人を召喚。



Base Int型
Banner(14w30a追加)専用のタグ。背景の色を指定します。
記述形式
Base:<背景色(0~15)>
<背景色>0~15の範囲で指定。数値は染料のダメージ値と同じ。
0:黒/1:赤/2:緑/3:茶/4:青/5:紫/6:シアン/7:薄灰
8:灰/9:桃/10:黄緑/11:黄/12:水色/13:マゼンタ/14:橙/15:白
Data values(Dyes) - Minecraft Wiki
(例)/setblock ~ ~ ~ minecraft:standing_banner 0 replace {Base:11}
背景が黄色の旗を設置する。



Patterns List(Compound)型
Banner(14w30a追加)専用のタグ。旗の模様を指定します。
記述形式
Patterns:[{Pattern:"<模様の種類>",Color:<模様の色>}]
<模様の種類>模様を文字列で指定する。指定できる文字列は以下の画像の通り。
Banner一覧
<模様の色>0~15の範囲で指定。数値は染料のダメージ値と同じ。
0:黒/1:赤/2:緑/3:茶/4:青/5:紫/6:シアン/7:薄灰
8:灰/9:桃/10:黄緑/11:黄/12:水色/13:マゼンタ/14:橙/15:白
【参考】Data values(Dyes) - Minecraft Wiki
(例1)/setblock ~ ~1 ~ minecraft:standing_banner 0 replace {Base:15,Patterns:[{Pattern:"mc",Color:1}]}
日の丸の旗を設置する。
(例2)順番による旗の模様の違い。
2014-07-24_195728.png
左:「Color:1(赤),Pattern:"dls"(斜線:左下)」の模様の上に、「Color:2(緑),Pattern:"drs"(斜線:右下)」を重ねる。
/setblock ~ ~1 ~ minecraft:standing_banner 0 replace {Patterns:[{Pattern:"dls",Color:1},{Pattern:"drs",Color:2}]}
:「Color:2(緑),Pattern:"drs"(斜線:右下)」の模様の上に、「Color:1(赤),Pattern:"dls"(斜線:左下)」を重ねる。
/setblock ~ ~1 ~ minecraft:standing_banner 0 replace {Patterns:[{Pattern:"drs",Color:2},{Pattern:"dls",Color:1}]}


Invisible Byte型
ArmorStand(14w32a追加)用のタグ。透明にするかどうかを指定します。
記述形式
Invisible:<透明にするかどうか(0b or 1b)>




NoGravity Byte型
ArmorStand(14w32a追加)用のタグ。重力を受けない(空中に固定する)かどうかを指定します。
記述形式
NoGravity:<重力を受けないどうか(0b or 1b)>


ShowArms Byte型
ArmorStand(14w32a追加)用のタグ。腕を表示するかどうかを指定します。
true(1b)にすることで、武器を持たせることもできます。
記述形式
ShowArms:<腕を表示するかどうか(0b or 1b)>


Small Byte型
ArmorStand(14w32a追加)用のタグ。ArmorStandを小さくするか指定します。
記述形式
Small:<ArmorStandを小さくするかどうか(0b or 1b)>


DisabledSlots Int型
ArmorStand(14w32a追加)用のタグ。防具の各スロットの設定をします。
+1(奇数)を指定した場合、他のDisabledSlotsを指定していない装備のArmorStandのスロットに装着できない(バグ?)(修正された模様)
記述形式
DisabledSlots:<数値A>
<数値A>は<数値B>の値を足した値です。
[スロット]:0:手 / 1:靴 / 2:足 / 3:胴 / 4:頭
[設定]:
0:取り出しを禁止
1:取り出し・置き換えを禁止
2:装着を禁止

<数値B> = 2 ^ ( [スロット] + [設定] * 8 )
(例)靴スロット(スロットが1)の取り出し・置き換えを禁止(設定が1)に設定する。
<数値B> = 2 ^ ( 1 + 1 * 8 ) = 2 ^ 9 = 512

(例)/summon ArmorStand ~ ~1 ~ {Equipment:[{id:diamond_sword},{id:diamond_boots},{id:diamond_leggings},{id:diamond_chestplate},{}],DisabledSlots:1048838,ShowArms:1b}
(B1)と足(B2)のスロットを取り出し禁止、手(B3)のスロットの取り出し・置き換え禁止、
(B4)のスロットを装着禁止に設定し、腕を表示したArmorStandを召喚。
(B1)=2^(1+0*8)=2 | (B2)=2^(2+0*8)=4
(B3)=2^(0+1*8)=256 | (B4)~2^(4+2*8)=1048576
<数値A> = (B1) + (B2) + (B3) + (B4) = 2 + 4 + 256 + 1048576 = 1048838


Pose Compound型
ArmorStand(14w32a追加)用のタグ。ArmorStandのポーズ(体勢)を指定できます。
記述形式
Pose:{Head:[<x>,<y>,<z>]}
<x><y><z>:それぞれの軸の回転の度合い(単位:度/反時計回り正方向/Froat型)
Head(頭)以外にもBody(体)・LeftArm(左腕)・RightArm(右腕)・LeftLeg(左足)・RightLeg(右足)の設定も可能

(左)/summon ArmorStand ~ ~1 ~ {ShowArms:1b,Pose:{LeftArm:[0.0f,0.0f,-30.0f]}}
(右)/summon ArmorStand ~ ~1 ~ {ShowArms:1b,Small:1b,Pose:{RightArm:[0.0f,0.0f,135.0f]}}
↓Z軸正方向(手前向き)


NoAI Byte型
mob用のタグ。AIを適応しないかどうかを指定します。
true(1b)にすることで、移動・落下をせず、位置・向きが固定されます。
記述形式
NoAI:<AIを適応しないかどうか(0b or 1b)>


NoBasePlate Byte型
ArmorStand(14w32a追加)用のタグ。ArmorStandの下の板を表示しないかどうかを指定します。
このタグは他のArmorStand専用のタグとは別に14w32cに追加された。
記述形式
NoBasePlate:<下の板を表示しないかどうか(0b or 1b)>
(例)左: /summon ArmorStand ~ ~ ~ {NoBasePlate:1b}
2014-08-10_134701.png


SelectedItem Compound型
Player用のタグ(14w33a追加)。手に持っているItemのデータを格納する。
特定のアイテムを持っているかどうか検知するときなどに使う。
このタグが実装される以前は特定のアイテムを持っているか検知するとき、
Slotを指定したInventoryとSelectedItemSlotを検知したコマンドブロックが9個必要だったが、
実装されてからSlotを指定しないSelectedItemを検知する1個のコマンドブロックだけで済むようになった。
記述形式
SelectedItem:{id:"<アイテム名>",...}
Compound内はこちらを参考(Player.dat format(Item structure) - Minecraft Wiki)
(例)/scoreboard players set @a UseBow 1 {SelectedItem:{id:"minecraft:bow",Damage:0s,tag:{display:{Name:"TP Bow"}}}}
「TP Bow」という名前の弓(minecraft:bow)を持ったプレイヤーのスコア「UseBow」を1にする。



PlayerSpawned Byte型
Endermite用のタグ。
true(1b)にするとEndermanの攻撃対象になる。
記述形式
PlayerSpawned:<Endermanの攻撃対象か(0b or 1b)>



Marker Byte型
ArmorStand用のタグ。
true(1b)にすると当たり判定が小さくなる。
記述形式
Marker:<当たり判定を小さくするか(0b or 1b)>



【参考サイト(英Wiki)】
Player.dat format
Chunk format
Upcoming features
Version history/Development versions
Commands(Raw JSON Text)

スポンサーサイト

この記事へのコメント

トラックバック

URL :

プロフィール

ArgonMc

Author:ArgonMc
Minecraftについて書いてます。
リンクはご自由にどうぞ。

カウンター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
タグ
Twitter

Twitter始めました。

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。