This thread is to document changes made to NBT data, such as tags or mechanics that have become deprecated/replaced, as well as the new tags/items/entities/blocks implemented. Since this is concerning snapshots, a lot of the following is subject to change. I will update it as 1.11's development progresses. Let me know if I'm missing something or you have extra information to add.
A locale key to find in language files to translate. Currently used for the new exploration maps.
Keep in mind that the text component can already do what this tag does, and do it much better. When the "Name" string tag for item display data comes to supporting the text component in the future, "LocName" will become obsolete and may be removed.
Previously, all that was needed for the enchantment glint to be rendered on the item was the existence of the "ench" tag (such as using "ench:[]"). Now, in order for the glint to be rendered, the list must contain at least 1 compound. Note that the id tag within it will default to 0, being the Protection enchantment. A current work-around is to set the value to an invalid enchantment ID, such as -1.
/give @p minecraft:stone 1 0 {ench:[{id:-1s}]}
"Potion" (string)
When not specified, has an invalid ID, or an ID of "minecraft:empty", the potion will be deemed an "uncraftable" potion with a locked color and no enchantment glint.
/give @p minecraft:potion
All tile entities
Tile entity IDs have been changed to comply with block and item naming schemes, and are now namespaced (e.g. "minecraft:command_block").
The following is a list of all new IDs, defaulting to the "minecraft" namespace:
The number of ticks until the Vex takes damage. Decreases by 1 per tick. Once it reaches 0, it returns to 20, the Vex takes damage, and the value decreases again.
/summon minecraft:vex ~ ~1 ~ {LifeTicks:150}
Entity: Evocation Fangs
An entity summoned by evokers. Extends the "Entity" class.
"Warmup" (integer)
The number of ticks before the entity performs its animation. Decreases by 1 per tick. While higher than 0, the entity is invisible.
All of these tags have been removed from the base fireball class, that all fireballs extend.
Entity: Fishing bobbers
"xTile", "yTile", "zTile", "inTile", "inGround"
All of these tags have been removed from the fishing bobber entity class. The entity now only has the tags inherited from the base Entity class.
Entity: Horses, donkeys, mules
There have been a number of raw internal changes to the different horse types, and now each type is its own entity. See 16w32a on the timeline for details: http://skylinerw.com/nbthistory/entity/#v16w32a
Tile: Banners
"CustomName" (string)
Holds a copy of the item variant's display name. When the item is placed, the tile entity will contain a copy. When the tile entity is broken, the item will have its display name set to this value.
Shulker boxes inherit the "Items" list, "LootTable" string, and "LootTableSeed" long tags, as all lootable storage blocks do.
Tile: Pistons
"source" (byte)
1 if the extension represents the piston itself, 0 if it represents a block being moved by the piston.
Other: Potion amplifiers
When receiving a potion effect, the amplifier will be set to 0 if it's lower than 0. For NBT-based methods ("potion" item, "potion" entity, "area_effect_cloud" entity, "arrow" entities), negative amplifiers can no longer be used.
Using the /effect command cannot provide a potion with a negative amplifier. However, when applying an effect with an amplifier higher than 127, and if the entity that has the effect is unloaded, that amplifier overflows to negative values as it's saved within the signed byte range (-128 to 127). This means that if you apply a high-amplifier effect to a player and they logout, that effect now essentially has an amplifier of 0.
You should no longer be using negative amplifiers in NBT, and should be avoiding amplifiers higher than 127 in /effect where possible to avoid issues with unloading and overflow.
No they no longer work, but it's up to the map makers to keep their maps compatible with newest versions of minecraft, else mojang can never properly change the way how certain things are stored.
I hope you do realize that this is another step towards cleaner code, and having a converter in the code for old versions is not clean code at all.
Lastly, I'd rather have 1 huge change list for 1 version then 1 small change for every small version, 1.9 was a change in equipment (and lenient json) and 1.11 will be a change in entity names and setblock/fill, etc commands that now support block states.
Holds a copy of the item variant's display name. When the item is placed, the tile entity will contain a copy. When the tile entity is broken, the item will have its display name set to this value.
Sorry for not keeping this thread up to date. I have been keeping the timeline updated though, so it'll include some changes not seen here but also not as important (such as "Color" being introduced with shulker box tile entities and then removed in the next snapshot).
New information on this thread includes:
Entities: shulkers, evokers, vindicators, vex, llamas, llama spit, all fireballs, and all horse types.
Items: "MapColor", "LocName", and "CustomPotionColor".
Previously, all that was needed for the enchantment glint to be rendered on the item was the existence of the "ench" tag (such as using "ench:[]"). Now, in order for the glint to be rendered, the list must contain at least 1 compound. Note that the id tag within it will default to 0, being the Protection enchantment. A current work-around is to set the value to an invalid enchantment ID, such as -1.
The same as the color tag: (red*256*256)+(green*256)+blue with red green and blue being 0-255
Seems very complicated. Can you make a small tutorial on how to incorporate it to make whatever color you want? Or is there a generator that shows how it is done?
And another question is why the colors of the potion effects don't mix like they used to? Is it because we are FORCED to use this un-intuitive feature that few people know how to use?
This thread is to document changes made to NBT data, such as tags or mechanics that have become deprecated/replaced, as well as the new tags/items/entities/blocks implemented. Since this is concerning snapshots, a lot of the following is subject to change. I will update it as 1.11's development progresses. Let me know if I'm missing something or you have extra information to add.
You can view a timeline here: http://skylinerw.com/nbthistory/1.11
Index
1. All entities
2. All items
3. All tile entities
4. Entity: Bossbar mobs (wither, ender dragon)
5. Entity/Item: Tipped arrows
6. Entity: Arrows
7. Entity: Snow golems
8. Entity: Shulkers
9. Entity: Evokers
10. Entity: Vindicators
11. Entity: Vex
12. Entity: Evocation Fangs
13. Entity: Llama
14. Entity: Llama spit
15. Entity: All fireballs
16. Entity: Fishing bobbers
17. Entity: Horses, donkeys, mules
18. Tile: Banners
19. Tile: Shulker boxes
20. Tile: Pistons
21. Other: Potion amplifiers
All entities
Entity IDs have been changed to comply with block and item naming schemes, and are now namespaced (e.g. "minecraft:falling_block").
The following is a list of all new IDs, defaulting to the "minecraft" namespace:
All items
"Count" (byte)
Must be 1 or higher. Item is otherwise deleted instantly and fails to summon. This includes any items within the inventory.
display > "LocName" (string)
A locale key to find in language files to translate. Currently used for the new exploration maps.
Keep in mind that the text component can already do what this tag does, and do it much better. When the "Name" string tag for item display data comes to supporting the text component in the future, "LocName" will become obsolete and may be removed.
display > "MapColor" (integer)
The decimal-based color value that will appear on the map item's icon in the inventory.
"CustomPotionColor" (integer)
The decimal-based color value that will override the color mixing of the effects of a potion. Use this to specify the exact color desired.
"ench" (list (compound))
Previously, all that was needed for the enchantment glint to be rendered on the item was the existence of the "ench" tag (such as using "ench:[]"). Now, in order for the glint to be rendered, the list must contain at least 1 compound. Note that the id tag within it will default to 0, being the Protection enchantment. A current work-around is to set the value to an invalid enchantment ID, such as -1.
"Potion" (string)
When not specified, has an invalid ID, or an ID of "minecraft:empty", the potion will be deemed an "uncraftable" potion with a locked color and no enchantment glint.
All tile entities
Tile entity IDs have been changed to comply with block and item naming schemes, and are now namespaced (e.g. "minecraft:command_block").
The following is a list of all new IDs, defaulting to the "minecraft" namespace:
Entity: Bossbar Mobs (wither, ender dragon)
"CustomName" (string)
Boss bars will now show the correct name from the "CustomName" tag, rather than always defaulting to the locale display name.
Entity/Item: Tipped arrows
"Potion/CustomPotionEffects" (string/list)
Now supports the Instant Health, Instant Damage, and Saturation effects as a result of fixing MC-91728.
Entity: Arrows
"crit" (byte)
States whether or not the arrow is going to deal critical damage (and produce particles). Intended as a fix for MC-107138.
"Color" (integer)
Copies the "CustomPotionColor" value from the item variant, if available.
Entity: Snow golems
"Pumpkin" (byte)
Whether or not the pumpkin helmet is shown on the snow golem. 0 if no pumpkin.
Entity: Shulkers
"Color" (byte)
The color of the shulker's shell.
Entity: Evokers
A new mob, which casts spells to attack.
"SpellTicks" (byte)
The number of ticks until it casts a spell, decreasing by 1 per tick. The mob's arms will be raised in the air during this period.
Entity: Vindicators
A new mob, using melee to attack.
"Johnny" (byte)
When true, the mob will attack other mobs. This is set to 1 when renaming a vindicator to "Johnny" with a nametag.
Entity: Vex
A new mob, flies through walls and uses melee to attack. Summoned by evokers.
"BoundX", "BoundY", "BoundZ" (integer)
The XYZ origin that the vex will remain near.
"LifeTicks" (integer)
The number of ticks until the Vex takes damage. Decreases by 1 per tick. Once it reaches 0, it returns to 20, the Vex takes damage, and the value decreases again.
Entity: Evocation Fangs
An entity summoned by evokers. Extends the "Entity" class.
"Warmup" (integer)
The number of ticks before the entity performs its animation. Decreases by 1 per tick. While higher than 0, the entity is invisible.
"OwnerUUIDLeast/OwnerUUIDMost" (long)
Stores the UUID of the entity that "owns" these fangs. Introduced as a fix for MC-107846.
Entity: Llama
A new mob, extending "HorseChested".
"Variant" (integer)
Despite the "HorseBase" class having a "Variant" tag, the llama class implements it own. Values 0 through 3 are accepted.
"Strength" (integer)
Determines how many inventory slots the llama can have, in multiples of 3. For example, a value of 2 results in 6 slots.
"DecorItem" (compound)
Holds the item data for the item in the carpet slot.
Entity: Llama spit
A new entity shot by llamas, extending the "Entity" class. Savegame ID is "minecraft:llama_spit".
Owner > "OwnerUUIDLeast", "OwnerUUIDMost" (long)
Holds the UUID pair of the spit's owner.
Entity: All fireballs
"xTile", "yTile", "zTile", "inTile", "inGround"All of these tags have been removed from the base fireball class, that all fireballs extend.
Entity: Fishing bobbers
"xTile", "yTile", "zTile", "inTile", "inGround"All of these tags have been removed from the fishing bobber entity class. The entity now only has the tags inherited from the base Entity class.
Entity: Horses, donkeys, mules
There have been a number of raw internal changes to the different horse types, and now each type is its own entity. See 16w32a on the timeline for details: http://skylinerw.com/nbthistory/entity/#v16w32a
Tile: Banners
"CustomName" (string)
Holds a copy of the item variant's display name. When the item is placed, the tile entity will contain a copy. When the tile entity is broken, the item will have its display name set to this value.
Tile: Shulker boxes
Shulker boxes are a brand new storage block and tile entity. The block and item ID varies based on color:
The tile ID is simply "minecraft:shulker_box".
Shulker boxes inherit the "Items" list, "LootTable" string, and "LootTableSeed" long tags, as all lootable storage blocks do.
Tile: Pistons
"source" (byte)
1 if the extension represents the piston itself, 0 if it represents a block being moved by the piston.
Other: Potion amplifiers
When receiving a potion effect, the amplifier will be set to 0 if it's lower than 0. For NBT-based methods ("potion" item, "potion" entity, "area_effect_cloud" entity, "arrow" entities), negative amplifiers can no longer be used.
Using the /effect command cannot provide a potion with a negative amplifier. However, when applying an effect with an amplifier higher than 127, and if the entity that has the effect is unloaded, that amplifier overflows to negative values as it's saved within the signed byte range (-128 to 127). This means that if you apply a high-amplifier effect to a player and they logout, that effect now essentially has an amplifier of 0.
You should no longer be using negative amplifiers in NBT, and should be avoiding amplifiers higher than 127 in /effect where possible to avoid issues with unloading and overflow.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
RIP Before 1.11 Command Block Creations
Exactly what I was thinking.
Thank you for the documentation Skylinerw, definitely wouldn't have realized why nothing was working otherwise..
The new 1.11 mob-IDs are no longer case-sensitive. Maybe that's worth mentioning.
That means, most one-word mob-IDs from older command-blocks would still work in this snapshot.
My projects: https://blockbench.net/hub
Wait I /summon minecraft:armor_stand, the output said the object summon sucessfully, but there's nothing.
I use /testfor @e[type=armor_stand], it didn't show anything in the command block output. I think it's broken or something.
No they no longer work, but it's up to the map makers to keep their maps compatible with newest versions of minecraft, else mojang can never properly change the way how certain things are stored.
I hope you do realize that this is another step towards cleaner code, and having a converter in the code for old versions is not clean code at all.
Lastly, I'd rather have 1 huge change list for 1 version then 1 small change for every small version, 1.9 was a change in equipment (and lenient json) and 1.11 will be a change in entity names and setblock/fill, etc commands that now support block states.
Addition for 16w35a:
Tile: Banner
"CustomName" (string)
Holds a copy of the item variant's display name. When the item is placed, the tile entity will contain a copy. When the tile entity is broken, the item will have its display name set to this value.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Sorry for not keeping this thread up to date. I have been keeping the timeline updated though, so it'll include some changes not seen here but also not as important (such as "Color" being introduced with shulker box tile entities and then removed in the next snapshot).
New information on this thread includes:
Entities: shulkers, evokers, vindicators, vex, llamas, llama spit, all fireballs, and all horse types.
Items: "MapColor", "LocName", and "CustomPotionColor".
Tile entities: shulker boxes.
Other: important "Amplifier" tag change.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
You listed the snow golem 2 times.
Edit: got fixed.
Change for 16w31a: llama spit is now a proper savegame entity, with ID "minecraft:llama_spit".
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Need some help here
So, I'm trying to import my 1.9/1.10 blood particle system into a 1.11 map. Has the particle syntax changed? Here's my current command:
(Supposed to show blockcrack particle of redstone block (hence 152)
EDIT: This was not a particle error, but rather a scoreboard error on my part. Has the stat.damageTaken changed?
EDIT 2: Oookkaaayyy... It's working now, and I literally changed nothing. Confused, but hey, at least it's working now
My channel (who knows when I'll upload)
My friend's channel (first person I ever made a thumbnail for :P)
Changes from 16w42a:
Entity: Arrows
"crit" (byte)
States whether or not the arrow is going to deal critical damage (and produce particles). Intended as a fix for MC-107138.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Only change for 16w43a concerns evocation fangs:
"OwnerUUIDLeast/OwnerUUIDMost" (long)
Stores the UUID of the entity that "owns" these fangs. Introduced as a fix for MC-107846.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Found another mistake:
Entity: All fireballs
A non-savegame entity (meaning it has no ID) shot by llamas, extending the "Entity" class.
Fireballs are not shot by llamas
Fixed, thanks!
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Change for 16w44a:
Entity: Fishing bobbers
"xTile", "yTile", "zTile", "inTile", "inGround"All of these tags have been removed from the fishing bobber entity class. The entity now only has the tags inherited from the base Entity class.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
Changes for 1.11 pre-1:
"ench" (list (compound))
Previously, all that was needed for the enchantment glint to be rendered on the item was the existence of the "ench" tag (such as using "ench:[]"). Now, in order for the glint to be rendered, the list must contain at least 1 compound. Note that the id tag within it will default to 0, being the Protection enchantment. A current work-around is to set the value to an invalid enchantment ID, such as -1.
Minecraft-things: http://skylinerw.com
More Minecraft-things: https://sourceblock.net
Guides for command-related features (eventually moving to Source Block): https://github.com/skylinerw/guides
I primarily hang out in the /r/MinecraftCommands discord, where there's a lot of people that help with commands: https://discord.gg/QAFXFtZ
Their corresponding subreddit: https://www.reddit.com/r/MinecraftCommands/
How do you use the CustomPotionColor NBT tag? No tutorials on it anywhere right now.
Check out my PvP map Here!
Check out my website Here!Website is down until further notice.The same as the color tag: (red*256*256)+(green*256)+blue with red green and blue being 0-255
Seems very complicated. Can you make a small tutorial on how to incorporate it to make whatever color you want? Or is there a generator that shows how it is done?
And another question is why the colors of the potion effects don't mix like they used to? Is it because we are FORCED to use this un-intuitive feature that few people know how to use?
Check out my PvP map Here!
Check out my website Here!Website is down until further notice.