Pre-release protocol: Difference between revisions

From wiki.vg
Jump to navigation Jump to search
imported>WinX64
imported>WinX64
(→‎Entity Metadata: Added changes on entity metadata)
Line 166: Line 166:
== Entity Metadata ==
== Entity Metadata ==


No changes so far.
=== Entity Metadata Format ===


=== Entity ===
{| class="wikitable"
! Value of Type field
! [[Data types|Type]] of Value field
! Notes
|-
| 0
| Byte
|
|-
| 1
| VarInt
|
|-
| 2
| VarLong
|
|-
| 3
| Float
|
|-
| 4
| String
|
|-
| 5
| [[Chat]]
|
|-
| 6
| OptChat (Boolean + Optional [[Chat]])
| [[Chat]] is present if the Boolean is set to true
|-
| 7
| [[Slot]]
|
|-
| 8
| Boolean
|
|-
| 9
| Rotation
| 3 floats: rotation on x, rotation on y, rotation on z
|-
| 10
| [[Data Types#Position|Position]]
|
|-
| 11
| OptPosition (Boolean + Optional Position)
| Position is present if the Boolean is set to true
|-
| 12
| Direction (VarInt)
| (Down = 0, Up = 1, North = 2, South = 3, West = 4, East = 5)
|-
| 13
| OptUUID (Boolean + Optional UUID)
| UUID is present if the Boolean is set to true
|- {{added}}
| 14
| BlockID (VarInt)
|
|-
| {{change|14|15}}
| OptBlockID (VarInt)
| 0 for absent (implies air); otherwise, a block state ID as per the global palette
|-
| {{change|15|16}}
| [[NBT]]
|
|-
| {{change|16|17}}
| [[Data Types#Particle|Particle]]
|
|-
| {{change|17|18}}
| Villager Data
| 3 VarInts: villager type, villager profession, level
|-
| {{change|18|19}}
| OptVarInt
| 0 for absent; 1 + actual value otherwise.  Used for entity IDs.
|-
| {{change|19|20}}
| Pose
| A VarInt enum: 0: STANDING, 1: FALL_FLYING, 2: SLEEPING, 3: SWIMMING, 4: SPIN_ATTACK, 5: SNEAKING, 6: LONG_JUMPING, 7: DYING, 8: CROAKING, 9: USING_TONGUE, 10: SITTING, 11: ROARING, 12: SNIFFING, 13: EMERGING, 14: DIGGING
|-
| {{change|20|21}}
| Cat Variant
| A VarInt that points towards the CAT_VARIANT registry.
|-
| {{change|21|22}}
| Frog Variant
| A VarInt that points towards the FROG_VARIANT registry.
|-
| {{change|22|23}}
| OptGlobalPos (Boolean + Optional GlobalPos)
| A dimension identifier and [[Data Types#Position|Position]].
|-
| {{change|23|24}}
| Painting Variant
| A VarInt that points towards the PAINTING_VARIANT registry.
|- {{added}}
| 25
| Sniffer State
| A VarInt enum: IDLING = 0, FEELING_HAPPY = 1, SCENTING = 2, SNIFFING = 3, SEARCHING = 4, DIGGING = 5, RISING = 6
|
|- {{added}}
| 26
| Vector3
| 3 floats: x, y, z
|
|- {{added}}
| 27
| Quaternion
| 4 floats: x, y, z, w
|
|}


No changes so far.
=== Abstract Horse ===
 
{{Metadata inherit|Abstract Horse|inherits=Animal|start_at=17}}
 
{{warning|The removal of the Owner field shifts up the field indexes of all classes that inherit this one. These changes are not recorded here.}}
 
{| class="wikitable"
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
|rowspan="9"| {{Metadata id|}}
|rowspan="9"| Byte
! Bit mask
! Meaning
|rowspan="9"| 0
|-
| 0x01
| ''Unused''
|-
| 0x02
| Is Tame
|-
| 0x04
| Is saddled
|-
| 0x08
| Has bred
|-
| 0x10
| Is eating
|-
| 0x20
| Is rearing (on hind legs)
|-
| 0x40
| Is mouth open
|-
| 0x80
| ''Unused''
|- {{removed}}
| {{Metadata id|}}
| OptUUID
|colspan="2"| Owner
| Absent
|}
 
=== Camel ===
 
{{Metadata inherit|Camel|inherits=Abstract Horse}}
 
{| class="wikitable"
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{change|{{Metadata id|}}|18}}
| Boolean
|colspan="2"| Is dashing
| False
|-
| {{change|{{Metadata id|}}|19}}
| VarLong
|colspan="2"| Last pose change tick
| {{change|-52|0}}
|}
 
=== Interaction ===
 
{{Metadata inherit|Interaction |inherits=Entity|start_at=8}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| Float
|colspan="2"| Width
| 1.0
|-
| {{Metadata id|}}
| Float
|colspan="2"| Height
| 1.0
|-
| {{Metadata id|}}
| Boolean
|colspan="2"| Responsive - can be attacked/interacted with if true
| false
|}
 
=== Display ===
 
{{Metadata inherit|Display|inherits=Entity|start_at=8}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Interpolation delay
| 0
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Interpolation Duration
| 0
|-
| {{Metadata id|}}
| Vector3
|colspan="2"| Translation
| (0.0, 0.0, 0.0)
|-
| {{Metadata id|}}
| Vector3
|colspan="2"| Scale
| (1.0, 1.0, 1.0)
|-
| {{Metadata id|}}
| Quaternion
|colspan="2"| Rotation left
| (0.0, 0.0, 0.0, 1.0)
|-
| {{Metadata id|}}
| Quaternion
|colspan="2"| Rotation right
| (0.0, 0.0, 0.0, 1.0)
|-
| {{Metadata id|}}
| Byte
|colspan="2"| Billboard Constraints (0 = FIXED, 1 = VERTICAL, 2 = HORIZONTAL, 3 = CENTER)
| 0
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Brightness override (<code>blockLight << 4 | skyLight << 20</code>)
| -1
|-
| {{Metadata id|}}
| Float
|colspan="2"| View range
| 1.0
|-
| {{Metadata id|}}
| Float
|colspan="2"| Shadow radius
| 0.0
|-
| {{Metadata id|}}
| Float
|colspan="2"| Shadow strength
| 1.0
|-
| {{Metadata id|}}
| Float
|colspan="2"| Width
| 0.0
|-
| {{Metadata id|}}
| Float
|colspan="2"| Height
| 0.0
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Glow color override
| -1
|}
 
=== Block Display ===
 
{{Metadata inherit|Block Display|inherits=Display}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| BlockID
|colspan="2"| Displayed block state
| 0 (Air)
|}
 
=== Item Display ===
 
{{Metadata inherit|Block Display|inherits=Display}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| Slot
|colspan="2"| Displayed item
| Empty
|-
| {{Metadata id|}}
| Byte
|colspan="2"| Display type:
* 0 = NONE
* 1 = THIRD_PERSON_LEFT_HAND
* 2 = THIRD_PERSON_RIGHT_HAND
* 3 = FIRST_PERSON_LEFT_HAND
* 4 = FIRST_PERSON_RIGHT_HAND
* 5 = HEAD
* 6 = GUI
* 7 = GROUND
* 8 = FIXED
| 0 (NONE)
|}
 
=== Text Display ===
 
{{Metadata inherit|Text Display|inherits=Display}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| Chat
|colspan="2"| Text
| Empty
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Line width
| 200
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Background color
| 1073741824 (0x40000000)
|-
| {{Metadata id|}}
| Byte
|colspan="2"| Text opacity
| -1 (fully opaque)
|-
| rowspan="5" | {{Metadata id|}}
| rowspan="5" | Byte
! Bit mask
! Meaning
| rowspan="5" | 0
|-
| 0x01 || Has shadow
|-
| 0x02 || Is see through
|-
| 0x04 || Use default background color
|-
| 0x18 || Alignment:
* 0 = CENTER
* 1 or 3 = LEFT
* 2 = RIGHT
|}
 
=== Sniffer ===
 
{{Metadata inherit|Axolotl|inherits=Animal|start_at=17}}
 
{| class="wikitable" {{added}}
! Index
! Type
!style="width: 250px;" colspan="2"| Meaning
! Default
|-
| {{Metadata id|}}
| Sniffer State
|colspan="2"| Sniffer State
| IDLING
|-
| {{Metadata id|}}
| VarInt
|colspan="2"| Drop seed at tick
| 0
|}


== Block Actions ==
== Block Actions ==

Revision as of 21:02, 22 March 2023

This page documents the changes from the last stable Minecraft release (currently 1.19.3, protocol 761) to the current pre-release (currently 1.19.4-pre3, protocol Snapshot {{#expr: 1073741946 - 1073741824}}). Note that this page contains bleeding-edge information that may not be completely or correctly documented.

One who wishes to commandeer the merging of this into Protocol when an update is made must be sure to respect any changes that may have occurred to the respective packets there.

Contents

Data types

No changes so far.

Packets

ID Packet name Documentation
Play clientbound
0x00 Bundle Delimiter added Current }} removed unchanged | (unchanged) | Pre }} }}
0x00}}{{#if:0x01|{{#if:0x00| }}0x01}} Spawn Entity added Current }} removed unchanged | (unchanged) | Pre }} }}
0x01}}{{#if:0x02|{{#if:0x01| }}0x02}} Spawn Experience Orb added Current }} removed unchanged | (unchanged) | Pre }} }}
0x02}}{{#if:0x03|{{#if:0x02| }}0x03}} Spawn Player added Current }} removed unchanged | (unchanged) | Pre }} }}
0x03}}{{#if:0x04|{{#if:0x03| }}0x04}} Entity Animation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x04}}{{#if:0x05|{{#if:0x04| }}0x05}} Award Statistics added Current }} removed unchanged | (unchanged) | Pre }} }}
0x05}}{{#if:0x06|{{#if:0x05| }}0x06}} Acknowledge Block Change added Current }} removed unchanged | (unchanged) | Pre }} }}
0x06}}{{#if:0x07|{{#if:0x06| }}0x07}} Set Block Destroy Stage added Current }} removed unchanged | (unchanged) | Pre }} }}
0x07}}{{#if:0x08|{{#if:0x07| }}0x08}} Block Entity Data added Current }} removed unchanged | (unchanged) | Pre }} }}
0x08}}{{#if:0x09|{{#if:0x08| }}0x09}} Block Action added Current }} removed unchanged | (unchanged) | Pre }} }}
0x09}}{{#if:0x0A|{{#if:0x09| }}0x0A}} Block Update added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0A}}{{#if:0x0B|{{#if:0x0A| }}0x0B}} Boss Bar added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0B}}{{#if:0x0C|{{#if:0x0B| }}0x0C}} Change Difficulty added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0D Chunk Biomes added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0C}}{{#if:0x0E|{{#if:0x0C| }}0x0E}} Clear Titles added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0D}}{{#if:0x0F|{{#if:0x0D| }}0x0F}} Command Suggestions Response added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0E}}{{#if:0x10|{{#if:0x0E| }}0x10}} Commands added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0F}}{{#if:0x11|{{#if:0x0F| }}0x11}} Close Container added Current }} removed unchanged | (unchanged) | Pre }} }}
0x10}}{{#if:0x12|{{#if:0x10| }}0x12}} Set Container Content added Current }} removed unchanged | (unchanged) | Pre }} }}
0x11}}{{#if:0x13|{{#if:0x11| }}0x13}} Set Container Property added Current }} removed unchanged | (unchanged) | Pre }} }}
0x12}}{{#if:0x14|{{#if:0x12| }}0x14}} Set Container Slot added Current }} removed unchanged | (unchanged) | Pre }} }}
0x13}}{{#if:0x15|{{#if:0x13| }}0x15}} Set Cooldown added Current }} removed unchanged | (unchanged) | Pre }} }}
0x14}}{{#if:0x16|{{#if:0x14| }}0x16}} Chat Suggestions added Current }} removed unchanged | (unchanged) | Pre }} }}
0x15}}{{#if:0x17|{{#if:0x15| }}0x17}} Plugin Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x18 Damage Event added Current }} removed unchanged | (unchanged) | Pre }} }}
0x16}}{{#if:0x19|{{#if:0x16| }}0x19}} Delete Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x17}}{{#if:0x1A|{{#if:0x17| }}0x1A}} Disconnect (play) added Current }} removed unchanged | (unchanged) | Pre }} }}
0x18}}{{#if:0x1B|{{#if:0x18| }}0x1B}} Disguised Chat Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x19}}{{#if:0x1C|{{#if:0x19| }}0x1C}} Entity Event added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1A}}{{#if:0x1D|{{#if:0x1A| }}0x1D}} Explosion added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1B}}{{#if:0x1E|{{#if:0x1B| }}0x1E}} Unload Chunk added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1C}}{{#if:0x1F|{{#if:0x1C| }}0x1F}} Game Event added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1D}}{{#if:0x20|{{#if:0x1D| }}0x20}} Open Horse Screen added Current }} removed unchanged | (unchanged) | Pre }} }}
0x21 Hurt Animation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1E}}{{#if:0x22|{{#if:0x1E| }}0x22}} Initialize World Border added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1F}}{{#if:0x23|{{#if:0x1F| }}0x23}} Keep Alive added Current }} removed unchanged | (unchanged) | Pre }} }}
0x20}}{{#if:0x24|{{#if:0x20| }}0x24}} Chunk Data and Update Light added Current }} removed unchanged | (unchanged) | Pre }} }}
0x21}}{{#if:0x25|{{#if:0x21| }}0x25}} World Event added Current }} removed unchanged | (unchanged) | Pre }} }}
0x22}}{{#if:0x26|{{#if:0x22| }}0x26}} Particle added Current }} removed unchanged | (unchanged) | Pre }} }}
0x23}}{{#if:0x27|{{#if:0x23| }}0x27}} Update Light added Current }} removed unchanged | (unchanged) | Pre }} }}
0x24}}{{#if:0x28|{{#if:0x24| }}0x28}} Login (play) added Current }} removed unchanged | (unchanged) | Pre }} }}
0x25}}{{#if:0x29|{{#if:0x25| }}0x29}} Map Data added Current }} removed unchanged | (unchanged) | Pre }} }}
0x26}}{{#if:0x2A|{{#if:0x26| }}0x2A}} Merchant Offers added Current }} removed unchanged | (unchanged) | Pre }} }}
0x27}}{{#if:0x2B|{{#if:0x27| }}0x2B}} Update Entity Position added Current }} removed unchanged | (unchanged) | Pre }} }}
0x28}}{{#if:0x2C|{{#if:0x28| }}0x2C}} Update Entity Position and Rotation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x29}}{{#if:0x2D|{{#if:0x29| }}0x2D}} Update Entity Rotation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2A}}{{#if:0x2E|{{#if:0x2A| }}0x2E}} Move Vehicle added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2B}}{{#if:0x2F|{{#if:0x2B| }}0x2F}} Open Book added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2C}}{{#if:0x30|{{#if:0x2C| }}0x30}} Open Screen added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2D}}{{#if:0x31|{{#if:0x2D| }}0x31}} Open Sign Editor added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2E}}{{#if:0x32|{{#if:0x2E| }}0x32}} Ping (play) added Current }} removed unchanged | (unchanged) | Pre }} }}
0x2F}}{{#if:0x33|{{#if:0x2F| }}0x33}} Place Ghost Recipe added Current }} removed unchanged | (unchanged) | Pre }} }}
0x30}}{{#if:0x34|{{#if:0x30| }}0x34}} Player Abilities added Current }} removed unchanged | (unchanged) | Pre }} }}
0x31}}{{#if:0x35|{{#if:0x31| }}0x35}} Player Chat Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x32}}{{#if:0x36|{{#if:0x32| }}0x36}} End Combat added Current }} removed unchanged | (unchanged) | Pre }} }}
0x33}}{{#if:0x37|{{#if:0x33| }}0x37}} Enter Combat added Current }} removed unchanged | (unchanged) | Pre }} }}
0x34}}{{#if:0x38|{{#if:0x34| }}0x38}} Combat Death added Current }} removed unchanged | (unchanged) | Pre }} }}
0x35}}{{#if:0x39|{{#if:0x35| }}0x39}} Player Info Remove added Current }} removed unchanged | (unchanged) | Pre }} }}
0x36}}{{#if:0x3A|{{#if:0x36| }}0x3A}} Player Info Update added Current }} removed unchanged | (unchanged) | Pre }} }}
0x37}}{{#if:0x3B|{{#if:0x37| }}0x3B}} Look At added Current }} removed unchanged | (unchanged) | Pre }} }}
0x38}}{{#if:0x3C|{{#if:0x38| }}0x3C}} Synchronize Player Position added Current }} removed unchanged | (unchanged) | Pre }} }}
0x39}}{{#if:0x3D|{{#if:0x39| }}0x3D}} Update Recipe Book added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3A}}{{#if:0x3E|{{#if:0x3A| }}0x3E}} Remove Entities added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3B}}{{#if:0x3F|{{#if:0x3B| }}0x3F}} Remove Entity Effect added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3C}}{{#if:0x40|{{#if:0x3C| }}0x40}} Resource Pack added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3D}}{{#if:0x41|{{#if:0x3D| }}0x41}} Respawn added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3E}}{{#if:0x42|{{#if:0x3E| }}0x42}} Set Head Rotation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x3F}}{{#if:0x43|{{#if:0x3F| }}0x43}} Update Section Blocks added Current }} removed unchanged | (unchanged) | Pre }} }}
0x40}}{{#if:0x44|{{#if:0x40| }}0x44}} Select Advancements Tab added Current }} removed unchanged | (unchanged) | Pre }} }}
0x41}}{{#if:0x45|{{#if:0x41| }}0x45}} Server Data added Current }} removed unchanged | (unchanged) | Pre }} }}
0x42}}{{#if:0x46|{{#if:0x42| }}0x46}} Set Action Bar Text added Current }} removed unchanged | (unchanged) | Pre }} }}
0x43}}{{#if:0x47|{{#if:0x43| }}0x47}} Set Border Center added Current }} removed unchanged | (unchanged) | Pre }} }}
0x44}}{{#if:0x48|{{#if:0x44| }}0x48}} Set Border Lerp Size added Current }} removed unchanged | (unchanged) | Pre }} }}
0x45}}{{#if:0x49|{{#if:0x45| }}0x49}} Set Border Size added Current }} removed unchanged | (unchanged) | Pre }} }}
0x46}}{{#if:0x4A|{{#if:0x46| }}0x4A}} Set Border Warning Delay added Current }} removed unchanged | (unchanged) | Pre }} }}
0x47}}{{#if:0x4B|{{#if:0x47| }}0x4B}} Set Border Warning Distance added Current }} removed unchanged | (unchanged) | Pre }} }}
0x48}}{{#if:0x4C|{{#if:0x48| }}0x4C}} Set Camera added Current }} removed unchanged | (unchanged) | Pre }} }}
0x49}}{{#if:0x4D|{{#if:0x49| }}0x4D}} Set Held Item added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4A}}{{#if:0x4E|{{#if:0x4A| }}0x4E}} Set Center Chunk added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4B}}{{#if:0x4F|{{#if:0x4B| }}0x4F}} Set Render Distance added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4C}}{{#if:0x50|{{#if:0x4C| }}0x50}} Set Default Spawn Position added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4D}}{{#if:0x51|{{#if:0x4D| }}0x51}} Display Objective added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4E}}{{#if:0x52|{{#if:0x4E| }}0x52}} Set Entity Metadata added Current }} removed unchanged | (unchanged) | Pre }} }}
0x4F}}{{#if:0x53|{{#if:0x4F| }}0x53}} Link Entities added Current }} removed unchanged | (unchanged) | Pre }} }}
0x50}}{{#if:0x54|{{#if:0x50| }}0x54}} Set Entity Velocity added Current }} removed unchanged | (unchanged) | Pre }} }}
0x51}}{{#if:0x55|{{#if:0x51| }}0x55}} Set Equipment added Current }} removed unchanged | (unchanged) | Pre }} }}
0x52}}{{#if:0x56|{{#if:0x52| }}0x56}} Set Experience added Current }} removed unchanged | (unchanged) | Pre }} }}
0x53}}{{#if:0x57|{{#if:0x53| }}0x57}} Set Health added Current }} removed unchanged | (unchanged) | Pre }} }}
0x54}}{{#if:0x58|{{#if:0x54| }}0x58}} Update Objectives added Current }} removed unchanged | (unchanged) | Pre }} }}
0x55}}{{#if:0x59|{{#if:0x55| }}0x59}} Set Passengers added Current }} removed unchanged | (unchanged) | Pre }} }}
0x56}}{{#if:0x5A|{{#if:0x56| }}0x5A}} Update Teams added Current }} removed unchanged | (unchanged) | Pre }} }}
0x57}}{{#if:0x5B|{{#if:0x57| }}0x5B}} Update Score added Current }} removed unchanged | (unchanged) | Pre }} }}
0x58}}{{#if:0x5C|{{#if:0x58| }}0x5C}} Set Simulation Distance added Current }} removed unchanged | (unchanged) | Pre }} }}
0x59}}{{#if:0x5D|{{#if:0x59| }}0x5D}} Set Subtitle Text added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5A}}{{#if:0x5E|{{#if:0x5A| }}0x5E}} Update Time added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5B}}{{#if:0x5F|{{#if:0x5B| }}0x5F}} Set Title Text added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5C}}{{#if:0x60|{{#if:0x5C| }}0x60}} Set Title Animation Times added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5D}}{{#if:0x61|{{#if:0x5D| }}0x61}} Entity Sound Effect added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5E}}{{#if:0x62|{{#if:0x5E| }}0x62}} Sound Effect added Current }} removed unchanged | (unchanged) | Pre }} }}
0x5F}}{{#if:0x63|{{#if:0x5F| }}0x63}} Stop Sound added Current }} removed unchanged | (unchanged) | Pre }} }}
0x60}}{{#if:0x64|{{#if:0x60| }}0x64}} System Chat Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x61}}{{#if:0x65|{{#if:0x61| }}0x65}} Set Tab List Header And Footer added Current }} removed unchanged | (unchanged) | Pre }} }}
0x62}}{{#if:0x66|{{#if:0x62| }}0x66}} Tag Query Response added Current }} removed unchanged | (unchanged) | Pre }} }}
0x63}}{{#if:0x67|{{#if:0x63| }}0x67}} Pickup Item added Current }} removed unchanged | (unchanged) | Pre }} }}
0x64}}{{#if:0x68|{{#if:0x64| }}0x68}} Teleport Entity added Current }} removed unchanged | (unchanged) | Pre }} }}
0x65}}{{#if:0x69|{{#if:0x65| }}0x69}} Update Advancements added Current }} removed unchanged | (unchanged) | Pre }} }}
0x66}}{{#if:0x6A|{{#if:0x66| }}0x6A}} Update Attributes added Current }} removed unchanged | (unchanged) | Pre }} }}
0x67}}{{#if:0x6B|{{#if:0x67| }}0x6B}} Feature Flags added Current }} removed unchanged | (unchanged) | Pre }} }}
0x68}}{{#if:0x6C|{{#if:0x68| }}0x6C}} Entity Effect added Current }} removed unchanged | (unchanged) | Pre }} }}
0x69}}{{#if:0x6D|{{#if:0x69| }}0x6D}} Update Recipes added Current }} removed unchanged | (unchanged) | Pre }} }}
0x6A}}{{#if:0x6E|{{#if:0x6A| }}0x6E}} Update Tags added Current }} removed unchanged | (unchanged) | Pre }} }}
Play serverbound
0x20}}{{#if:0x06|{{#if:0x20| }}0x06}} Player Session added Current }} removed unchanged | (unchanged) | Pre }} }}
0x06}}{{#if:0x07|{{#if:0x06| }}0x07}} Client Command added Current }} removed unchanged | (unchanged) | Pre }} }}
0x07}}{{#if:0x08|{{#if:0x07| }}0x08}} Client Information added Current }} removed unchanged | (unchanged) | Pre }} }}
0x08}}{{#if:0x09|{{#if:0x08| }}0x09}} Command Suggestions Request added Current }} removed unchanged | (unchanged) | Pre }} }}
0x09}}{{#if:0x0A|{{#if:0x09| }}0x0A}} Click Container Button added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0A}}{{#if:0x0B|{{#if:0x0A| }}0x0B}} Click Container added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0B}}{{#if:0x0C|{{#if:0x0B| }}0x0C}} Close Container added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0C}}{{#if:0x0D|{{#if:0x0C| }}0x0D}} Plugin Message added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0D}}{{#if:0x0E|{{#if:0x0D| }}0x0E}} Edit Book added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0E}}{{#if:0x0F|{{#if:0x0E| }}0x0F}} Query Entity Tag added Current }} removed unchanged | (unchanged) | Pre }} }}
0x0F}}{{#if:0x10|{{#if:0x0F| }}0x10}} Interact added Current }} removed unchanged | (unchanged) | Pre }} }}
0x10}}{{#if:0x11|{{#if:0x10| }}0x11}} Jigsaw Generate added Current }} removed unchanged | (unchanged) | Pre }} }}
0x11}}{{#if:0x12|{{#if:0x11| }}0x12}} Keep Alive added Current }} removed unchanged | (unchanged) | Pre }} }}
0x12}}{{#if:0x13|{{#if:0x12| }}0x13}} Lock Difficulty added Current }} removed unchanged | (unchanged) | Pre }} }}
0x13}}{{#if:0x14|{{#if:0x13| }}0x14}} Set Player Position added Current }} removed unchanged | (unchanged) | Pre }} }}
0x14}}{{#if:0x15|{{#if:0x14| }}0x15}} Set Player Position and Rotation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x15}}{{#if:0x16|{{#if:0x15| }}0x16}} Set Player Rotation added Current }} removed unchanged | (unchanged) | Pre }} }}
0x16}}{{#if:0x17|{{#if:0x16| }}0x17}} Set Player On Ground added Current }} removed unchanged | (unchanged) | Pre }} }}
0x17}}{{#if:0x18|{{#if:0x17| }}0x18}} Move Vehicle added Current }} removed unchanged | (unchanged) | Pre }} }}
0x18}}{{#if:0x19|{{#if:0x18| }}0x19}} Paddle Boat added Current }} removed unchanged | (unchanged) | Pre }} }}
0x19}}{{#if:0x1A|{{#if:0x19| }}0x1A}} Pick Item added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1A}}{{#if:0x1B|{{#if:0x1A| }}0x1B}} Place Recipe added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1B}}{{#if:0x1C|{{#if:0x1B| }}0x1C}} Player Abilities added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1C}}{{#if:0x1D|{{#if:0x1C| }}0x1D}} Player Action added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1D}}{{#if:0x1E|{{#if:0x1D| }}0x1E}} Player Command added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1E}}{{#if:0x1F|{{#if:0x1E| }}0x1F}} Player Input added Current }} removed unchanged | (unchanged) | Pre }} }}
0x1F}}{{#if:0x20|{{#if:0x1F| }}0x20}} Pong (play) added Current }} removed unchanged | (unchanged) | Pre }} }}

New/modified data types

No changes so far.

Entity Metadata

Entity Metadata Format

Value of Type field Type of Value field Notes
0 Byte
1 VarInt
2 VarLong
3 Float
4 String
5 Chat
6 OptChat (Boolean + Optional Chat) Chat is present if the Boolean is set to true
7 Slot
8 Boolean
9 Rotation 3 floats: rotation on x, rotation on y, rotation on z
10 Position
11 OptPosition (Boolean + Optional Position) Position is present if the Boolean is set to true
12 Direction (VarInt) (Down = 0, Up = 1, North = 2, South = 3, West = 4, East = 5)
13 OptUUID (Boolean + Optional UUID) UUID is present if the Boolean is set to true
14 BlockID (VarInt)
14}}{{#if:15|{{#if:14| }}15}} OptBlockID (VarInt) 0 for absent (implies air); otherwise, a block state ID as per the global palette
15}}{{#if:16|{{#if:15| }}16}} NBT
16}}{{#if:17|{{#if:16| }}17}} Particle
17}}{{#if:18|{{#if:17| }}18}} Villager Data 3 VarInts: villager type, villager profession, level
18}}{{#if:19|{{#if:18| }}19}} OptVarInt 0 for absent; 1 + actual value otherwise. Used for entity IDs.
19}}{{#if:20|{{#if:19| }}20}} Pose A VarInt enum: 0: STANDING, 1: FALL_FLYING, 2: SLEEPING, 3: SWIMMING, 4: SPIN_ATTACK, 5: SNEAKING, 6: LONG_JUMPING, 7: DYING, 8: CROAKING, 9: USING_TONGUE, 10: SITTING, 11: ROARING, 12: SNIFFING, 13: EMERGING, 14: DIGGING
20}}{{#if:21|{{#if:20| }}21}} Cat Variant A VarInt that points towards the CAT_VARIANT registry.
21}}{{#if:22|{{#if:21| }}22}} Frog Variant A VarInt that points towards the FROG_VARIANT registry.
22}}{{#if:23|{{#if:22| }}23}} OptGlobalPos (Boolean + Optional GlobalPos) A dimension identifier and Position.
23}}{{#if:24|{{#if:23| }}24}} Painting Variant A VarInt that points towards the PAINTING_VARIANT registry.
25 Sniffer State A VarInt enum: IDLING = 0, FEELING_HAPPY = 1, SCENTING = 2, SNIFFING = 3, SEARCHING = 4, DIGGING = 5, RISING = 6
26 Vector3 3 floats: x, y, z
27 Quaternion 4 floats: x, y, z, w

Abstract Horse

{{#if:Abstract Horse||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Abstract Horse}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Animal
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]|[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]].
       }}{{#if:17
           | {{#vardefine:meta_Abstract Horse|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_Abstract Horse|{{#var:meta_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}{{#if:17
           | {{#vardefine:meta_pre_Abstract Horse|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_pre_Abstract Horse|{{#var:meta_pre_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Abstract Horse|17}}
       {{#vardefine:meta_pre_Abstract Horse|17}}
   }}

|

   {{#if:Animal
       | Extends Animal.
       {{#if:17
           | {{#vardefine:meta_Abstract Horse|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_Abstract Horse|{{#var:meta_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Abstract Horse|17}}
   }}

}}

The removal of the Owner field shifts up the field indexes of all classes that inherit this one. These changes are not recorded here.

Index Type Meaning Default
{{#if:{{#var:meta_prerelease}}|
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Byte Bit mask Meaning 0
0x01 Unused
0x02 Is Tame
0x04 Is saddled
0x08 Has bred
0x10 Is eating
0x20 Is rearing (on hind legs)
0x40 Is mouth open
0x80 Unused
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

OptUUID Owner Absent

Camel

{{#if:Camel||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Camel}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Abstract Horse
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Abstract Horse|Entity metadata}}#Abstract Horse|Abstract Horse]]|[[{{#varexists:meta_Abstract Horse|Entity metadata}}#Abstract Horse|Abstract Horse]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Abstract Horse|Entity metadata}}#Abstract Horse|Abstract Horse]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Abstract Horse|Entity metadata}}#Abstract Horse|Abstract Horse]].
       }}{{#if:
           | {{#vardefine:meta_Camel|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Abstract Horse}}|start_at in use when inherited entity Abstract Horse exists}}
           | {{#vardefine:meta_Camel|{{#var:meta_Abstract Horse|0}}}}
           {{#if:{{#varexists:meta_Abstract Horse}}||Inherited entity Abstract Horse does not exist}}
       }}{{#if:
           | {{#vardefine:meta_pre_Camel|}}
           {{#if:{{#varexists:meta_Abstract Horse}}|start_at in use when inherited entity Abstract Horse exists}}
           | {{#vardefine:meta_pre_Camel|{{#var:meta_pre_Abstract Horse|0}}}}
           {{#if:{{#varexists:meta_Abstract Horse}}||Inherited entity Abstract Horse does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Camel|0}}
       {{#vardefine:meta_pre_Camel|0}}
   }}

|

   {{#if:Abstract Horse
       | Extends Abstract Horse.
       {{#if:
           | {{#vardefine:meta_Camel|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Abstract Horse}}|start_at in use when inherited entity Abstract Horse exists}}
           | {{#vardefine:meta_Camel|{{#var:meta_Abstract Horse|0}}}}
           {{#if:{{#varexists:meta_Abstract Horse}}||Inherited entity Abstract Horse does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Camel|0}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}|{{#if:{{#var:meta_prerelease}}|

   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}}}{{#if:18|{{#if:{{#if:{{#var:meta_prerelease}}|

   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}| }}18}}

Boolean Is dashing False
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}|{{#if:{{#var:meta_prerelease}}|

   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}}}{{#if:19|{{#if:{{#if:{{#var:meta_prerelease}}|

   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}| }}19}}

VarLong Last pose change tick -52}}{{#if:0|{{#if:-52| }}0}}

Interaction

{{#if:Interaction ||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Interaction }}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Entity
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]|[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]].
       }}{{#if:8
           | {{#vardefine:meta_Interaction |8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_Interaction |{{#var:meta_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}{{#if:8
           | {{#vardefine:meta_pre_Interaction |8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_pre_Interaction |{{#var:meta_pre_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Interaction |8}}
       {{#vardefine:meta_pre_Interaction |8}}
   }}

|

   {{#if:Entity
       | Extends Entity.
       {{#if:8
           | {{#vardefine:meta_Interaction |8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_Interaction |{{#var:meta_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Interaction |8}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Width 1.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Height 1.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Boolean Responsive - can be attacked/interacted with if true false

Display

{{#if:Display||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Display}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Entity
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]|[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Entity|Entity metadata}}#Entity|Entity]].
       }}{{#if:8
           | {{#vardefine:meta_Display|8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_Display|{{#var:meta_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}{{#if:8
           | {{#vardefine:meta_pre_Display|8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_pre_Display|{{#var:meta_pre_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Display|8}}
       {{#vardefine:meta_pre_Display|8}}
   }}

|

   {{#if:Entity
       | Extends Entity.
       {{#if:8
           | {{#vardefine:meta_Display|8}}
           {{#if:{{#varexists:meta_Entity}}|start_at in use when inherited entity Entity exists}}
           | {{#vardefine:meta_Display|{{#var:meta_Entity|0}}}}
           {{#if:{{#varexists:meta_Entity}}||Inherited entity Entity does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Display|8}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Interpolation delay 0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Interpolation Duration 0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Vector3 Translation (0.0, 0.0, 0.0)
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Vector3 Scale (1.0, 1.0, 1.0)
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Quaternion Rotation left (0.0, 0.0, 0.0, 1.0)
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Quaternion Rotation right (0.0, 0.0, 0.0, 1.0)
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Byte Billboard Constraints (0 = FIXED, 1 = VERTICAL, 2 = HORIZONTAL, 3 = CENTER) 0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Brightness override (blockLight << 4 | skyLight << 20) -1
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float View range 1.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Shadow radius 0.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Shadow strength 1.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Width 0.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Float Height 0.0
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Glow color override -1

Block Display

{{#if:Block Display||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Block Display}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Display
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]|[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Display|Entity metadata}}#Display|Display]].
       }}{{#if:
           | {{#vardefine:meta_Block Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Block Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}{{#if:
           | {{#vardefine:meta_pre_Block Display|}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_pre_Block Display|{{#var:meta_pre_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Block Display|0}}
       {{#vardefine:meta_pre_Block Display|0}}
   }}

|

   {{#if:Display
       | Extends Display.
       {{#if:
           | {{#vardefine:meta_Block Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Block Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Block Display|0}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

BlockID Displayed block state 0 (Air)

Item Display

{{#if:Block Display||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Block Display}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Display
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]|[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Display|Entity metadata}}#Display|Display]].
       }}{{#if:
           | {{#vardefine:meta_Block Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Block Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}{{#if:
           | {{#vardefine:meta_pre_Block Display|}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_pre_Block Display|{{#var:meta_pre_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Block Display|0}}
       {{#vardefine:meta_pre_Block Display|0}}
   }}

|

   {{#if:Display
       | Extends Display.
       {{#if:
           | {{#vardefine:meta_Block Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Block Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Block Display|0}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Slot Displayed item Empty
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Byte Display type:
  • 0 = NONE
  • 1 = THIRD_PERSON_LEFT_HAND
  • 2 = THIRD_PERSON_RIGHT_HAND
  • 3 = FIRST_PERSON_LEFT_HAND
  • 4 = FIRST_PERSON_RIGHT_HAND
  • 5 = HEAD
  • 6 = GUI
  • 7 = GROUND
  • 8 = FIXED
0 (NONE)

Text Display

{{#if:Text Display||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Text Display}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Display
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]|[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Display|Entity metadata}}#Display|Display]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Display|Entity metadata}}#Display|Display]].
       }}{{#if:
           | {{#vardefine:meta_Text Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Text Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}{{#if:
           | {{#vardefine:meta_pre_Text Display|}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_pre_Text Display|{{#var:meta_pre_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Text Display|0}}
       {{#vardefine:meta_pre_Text Display|0}}
   }}

|

   {{#if:Display
       | Extends Display.
       {{#if:
           | {{#vardefine:meta_Text Display|{{{start_at}}}}}
           {{#if:{{#varexists:meta_Display}}|start_at in use when inherited entity Display exists}}
           | {{#vardefine:meta_Text Display|{{#var:meta_Display|0}}}}
           {{#if:{{#varexists:meta_Display}}||Inherited entity Display does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Text Display|0}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Chat Text Empty
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Line width 200
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Background color 1073741824 (0x40000000)
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Byte Text opacity -1 (fully opaque)
{{#if:{{#var:meta_prerelease}}|
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Byte Bit mask Meaning 0
0x01 Has shadow
0x02 Is see through
0x04 Use default background color
0x18 Alignment:
  • 0 = CENTER
  • 1 or 3 = LEFT
  • 2 = RIGHT

Sniffer

{{#if:Axolotl||Must specify the current entity ID for Template:Metadata inherit}} {{#vardefine:meta_current_entity|Axolotl}}

{{#if:{{#var:meta_prerelease}}|

   {{#if:Animal
       | {{#if:
           | Extends {{#if:[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]|[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]}}{{#if:[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]|{{#if:[[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]]| }}[[{{#varexists:meta_{{{pre_inherits}}}|Entity metadata}}#{{{pre_inherits}}}|{{{pre_inherits}}}]]}}.
           | Extends [[{{#varexists:meta_Animal|Entity metadata}}#Animal|Animal]].
       }}{{#if:17
           | {{#vardefine:meta_Axolotl|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_Axolotl|{{#var:meta_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}{{#if:17
           | {{#vardefine:meta_pre_Axolotl|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_pre_Axolotl|{{#var:meta_pre_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Axolotl|17}}
       {{#vardefine:meta_pre_Axolotl|17}}
   }}

|

   {{#if:Animal
       | Extends Animal.
       {{#if:17
           | {{#vardefine:meta_Axolotl|17}}
           {{#if:{{#varexists:meta_Animal}}|start_at in use when inherited entity Animal exists}}
           | {{#vardefine:meta_Axolotl|{{#var:meta_Animal|0}}}}
           {{#if:{{#varexists:meta_Animal}}||Inherited entity Animal does not exist}}
       }}
       | The base class.
       {{#vardefine:meta_Axolotl|17}}
   }}

}}

Index Type Meaning Default
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

Sniffer State Sniffer State IDLING
   {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}}
   {{#switch: 
added =
       {{#if:|}}{{#if:{{#var:pre_meta}}|{{#if:| }}{{#var:pre_meta}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
removed =
       {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:|{{#if:{{#var:cur_meta}}| }}}}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
=
       {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{#if:{{#var:cur_meta}}|{{#var:cur_meta}}}}{{#if:{{#var:pre_meta}}|{{#if:{{#var:cur_meta}}| }}{{#var:pre_meta}}}} }}
       {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
       {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}}
#default =
       Invalid parameter to Template:Metadata id 
   }}
   {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}}
   {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}}
   {{#ifeq: |||Template:Metadata id must be used as {{Metadata id|}} (with an empty first parameter) for technical reasons}}

}}

VarInt Drop seed at tick 0

Block Actions

No changes so far.

Inventories

No changes so far.

Plugin Channels

No changes so far.

Play

Clientbound

Bundle Delimiter

The delimeter for a bundle of packets. When received, the client should store every subsequent packet it receives, and wait until another delimiter is received. Once that happens, the client is guaranteed to process every packet in the bundle on the same tick.

The Notchian client doesn't allow more than 4096 packets in the same bundle.

Packet ID State Bound To Field Name Field Type Notes
0x00 Play Client no fields

Chunk Biomes

Packet ID State Bound To Field Name Field Type Notes
0x0D Play Client
Number of chunks VarInt Number of elements in the following array
Chunk biome data Chunk X Array Int Chunk coordinate (block coordinate divided by 16, rounded down)
Chunk Z Int Chunk coordinate (block coordinate divided by 16, rounded down)
Size VarInt Size of Data in bytes
Data Byte array Chunk data structure, with sections containing only the Biomes field

Damage Event

Packet ID State Bound To Field Name Field Type Notes
0x18 Play Client
Entity ID VarInt The ID of the entity taking damage
Source Type ID VarInt The ID of the type of damage taken
Source Cause ID VarInt The ID + 1 of the entity responsible for the damage, if present. If not present, the value is 0
Source Direct ID VarInt The ID + 1 of the entity that directly dealt the damage, if present. If not present, the value is 0. If this field is present:
  • and damage was dealt indirectly, such as by the use of a projectile, this field will contain the ID of such projectile;
  • and damage was dealt dirctly, such as by manually attacking, this field will contain the same value as Source Cause ID.
Has Source Position Boolean Indicates the presence of the three following fields.

The Notchian server sends the Source Position when the damage was dealt by the /damage command and a position was specified

Source Position X Optional Double Only present if Has Source Position is true
Source Position Y Optional Double Only present if Has Source Position is true
Source Position Z Optional Double Only present if Has Source Position is true

Hurt Animation

Plays a bobbing animation for the entity receiving damage.

Packet ID State Bound To Field Name Field Type Notes
0x21 Play Client
Entity ID VarInt The ID of the entity taking damage
Yaw Float The direction the damage is coming from in relation to the entity

Synchronize Player Position

Updates the player's position on the server. This packet will also close the “Downloading Terrain” screen when joining/respawning.

If the distance between the last known position of the player on the server and the new position set by this packet is greater than 100 meters, the client will be kicked for “You moved too quickly :( (Hacking?)”.

Also if the fixed-point number of X or Z is set greater than 3.2E7D the client will be kicked for “Illegal position”.

Yaw is measured in degrees, and does not follow classical trigonometry rules. The unit circle of yaw on the XZ-plane starts at (0, 1) and turns counterclockwise, with 90 at (-1, 0), 180 at (0, -1) and 270 at (1, 0). Additionally, yaw is not clamped to between 0 and 360 degrees; any number is valid, including negative numbers and numbers greater than 360.

Pitch is measured in degrees, where 0 is looking straight ahead, -90 is looking straight up, and 90 is looking straight down.

Packet ID State Bound To Field Name Field Type Notes
{{#if:0x38|0x38}}{{#if:0x3C|{{#if:0x38| }}0x3C}} Play Client X Double Absolute or relative position, depending on Flags.
Y Double Absolute or relative position, depending on Flags.
Z Double Absolute or relative position, depending on Flags.
Yaw Float Absolute or relative rotation on the X axis, in degrees.
Pitch Float Absolute or relative rotation on the Y axis, in degrees.
Flags Byte Bit field, see below.
Teleport ID VarInt Client should confirm this packet with Confirm Teleportation containing the same Teleport ID.
Dismount Vehicle Boolean True if the player should dismount their vehicle.

About the Flags field:

<Dinnerbone> It's a bitfield, X/Y/Z/Y_ROT/X_ROT. If X is set, the x value is relative and not absolute.
Field Bit
X 0x01
Y 0x02
Z 0x04
Y_ROT 0x08
X_ROT 0x10


Server Data

Packet ID State Bound To Field Name Field Type Notes
{{#if:0x41|0x41}}{{#if:0x45|{{#if:0x41| }}0x45}} Play Client
Has MOTD Boolean
MOTD Optional Chat}}{{#if:Chat|{{#if:Optional Chat| }}Chat}}
Has Icon Boolean
Icon Optional String (32767) Icon PNG base64 String
Enforces Secure Chat Boolean


Update Recipes

Packet ID State Bound To Field Name Field Type Notes
{{#if:0x69|0x69}}{{#if:0x6D|{{#if:0x69| }}0x6D}} Play Client Num Recipes VarInt Number of elements in the following array.
Recipe Type Array Identifier The recipe type, see below.
Recipe ID Identifier
Data Varies Additional data for the recipe.

Recipe types:

Type Description Data
minecraft:crafting_shapeless Shapeless crafting recipe. All items in the ingredient list must be present, but in any order/slot. As follows:
Name Type Description
Group String Used to group similar recipes together in the recipe book. Tag is present in recipe JSON.
Category VarInt Enum Building = 0, Redstone = 1, Equipment = 2, Misc = 3
Ingredient count VarInt Number of elements in the following array.
Ingredients Array of Ingredient.
Result Slot
minecraft:crafting_shaped Shaped crafting recipe. All items must be present in the same pattern (which may be flipped horizontally or translated). As follows:
Name Type Description
Width VarInt
Height VarInt
Group String Used to group similar recipes together in the recipe book. Tag is present in recipe JSON.
Category VarInt Enum Building = 0, Redstone = 1, Equipment = 2, Misc = 3
Ingredients Array of Ingredient Length is width * height. Indexed by x + (y * width).
Result Slot
Show notification Boolean Show a toast when the recipe is added.
minecraft:crafting_special_armordye Recipe for dying leather armor As follows:
Name Type Description
Category VarInt Enum Building = 0, Redstone = 1, Equipment = 2, Misc = 3
minecraft:crafting_special_bookcloning Recipe for copying contents of written books
minecraft:crafting_special_mapcloning Recipe for copying maps
minecraft:crafting_special_mapextending Recipe for adding paper to maps
minecraft:crafting_special_firework_rocket Recipe for making firework rockets
minecraft:crafting_special_firework_star Recipe for making firework stars
minecraft:crafting_special_firework_star_fade Recipe for making firework stars fade between multiple colors
minecraft:crafting_special_repairitem Recipe for repairing items via crafting
minecraft:crafting_special_tippedarrow Recipe for crafting tipped arrows
minecraft:crafting_special_bannerduplicate Recipe for copying banner patterns
minecraft:crafting_special_shielddecoration Recipe for applying a banner's pattern to a shield
minecraft:crafting_special_shulkerboxcoloring Recipe for recoloring a shulker box
minecraft:crafting_special_suspiciousstew
minecraft:smelting Smelting recipe As follows:
Name Type Description
Group String Used to group similar recipes together in the recipe book.
Category VarInt Enum Food = 0, Blocks = 1, Misc = 2
Ingredient Ingredient
Result Slot
Experience Float
Cooking time VarInt
minecraft:blasting Blast furnace recipe
minecraft:smoking Smoker recipe
minecraft:campfire_cooking Campfire recipe
minecraft:stonecutting Stonecutter recipe As follows:
Name Type Description
Group String Used to group similar recipes together in the recipe book. Tag is present in recipe JSON.
Ingredient Ingredient
Result Slot
minecraft:smithing Smithing table recipe As follows:
Name Type Description
Base Ingredient First item.
Addition Ingredient Second item.
Result Slot

Ingredient is defined as:

Name Type Description
Count VarInt Number of elements in the following array.
Items Array of Slot Any item in this array may be used for the recipe. The count of each item should be 1.

Serverbound

No changes so far.

Status

Clientbound

No changes so far.

Serverbound

No changes so far.

Login

Clientbound

No changes so far.

Serverbound

No changes so far.