This page documents the changes from the last stable Minecraft release (currently 1.6.2, protocol 74) to the current pre-release. Note that this page contains bleeding-edge information that may not be completely or correctly documented.
He 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 occured to the respective packets there.
Protocol History
13w36a - Added sound category byte to 0x3E
- Changed 0xC8 to a string:int map
13w37b -
1.6.3 - Terrain fixes to help moving to 1.7, no packet changes from 1.6.2
1.6.4 -
13w38a/b/c -
13w39a/b - UUIDs added to spawn named entity, game state 'gamemode' byte -> float
13w41a - Large protocol work
Protocol Version
13w41a -
13w39a/b - 80
13w38a/b/c - 79
1.6.4 - 78
1.6.3 - 77
13w37b - 76
13w36a - 75
Packet format
Field Name |
Field Type |
Notes
|
Length |
VarInt |
|
Type |
VarInt |
|
Data |
|
|
Data Types
VarInt - Protocol Buffer 32-bit Varint
String - UTF-8 String
Handshaking
Serverbound
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x00
|
|
VarInt |
|
|
String |
|
|
VarInt |
|
|
VarInt |
|
Play
Clientbound
Keep Alive
Packet ID |
Field Name |
Field Type |
Notes
|
0x00
|
Keep Alive ID |
Int |
|
Join Game
Packet ID |
Field Name |
Field Type |
Notes
|
0x01
|
Entity ID |
Int |
The player's Entity ID
|
Level type |
String |
level-type in server.properties
|
Gamemode |
Byte |
0: survival, 1: creative, 2: adventure. Bit 3 (0x8) is the hardcore flag
|
Dimension |
Byte |
-1: nether, 0: overworld, 1: end
|
Difficulty |
Unsigned Byte |
0 thru 3 for Peaceful, Easy, Normal, Hard
|
|
Byte |
|
Max Players |
Byte |
Used by the client to draw the player list
|
Chat Message
Time Update
Packet ID |
Field Name |
Field Type |
Notes
|
0x03
|
Age of the world |
Long |
In ticks; not changed by server commands
|
Time of day |
Long |
The world (or region) time, in ticks. If negative the sun will stop moving at the Math.abs of the time
|
Entity Equipment
Packet ID |
Field Name |
Field Type |
Notes
|
0x04
|
EntityID |
Int |
Entity's ID
|
Slot |
Short |
Equipment slot: 0=held, 1-4=armor slot (1 - boots, 2 - leggings, 3 - chestplate, 4 - helmet)
|
Item |
Slot |
Item in slot format
|
Spawn Position
Packet ID |
Field Name |
Field Type |
Notes
|
0x05
|
X |
Int |
Spawn X in block coordinates
|
Y |
Int |
Spawn Y in block coordinates
|
Z |
Int |
in block coordinates
|
Update Health
Packet ID |
Field Name |
Field Type |
Notes
|
0x06
|
Health |
Float |
0 or less = dead, 20 = full HP
|
Food |
Short |
0 - 20
|
Food Saturation |
Float |
Seems to vary from 0.0 to 5.0 in integer increments
|
Respawn
Packet ID |
Field Name |
Field Type |
Notes
|
0x07
|
Dimension |
Int |
-1: The Nether, 0: The Overworld, 1: The End
|
Difficulty |
Byte |
0 thru 3 for Peaceful, Easy, Normal, Hard.
|
Gamemode |
Byte |
0: survival, 1: creative, 2: adventure. The hardcore flag is not included
|
World Height |
Short |
Defaults to 256
|
Level Type |
String |
|
Player
Packet ID |
Field Name |
Field Type |
Notes
|
0x08
|
On Ground |
True if the client is on the ground, False otherwise
|
Player Position
Packet ID |
Field Name |
Field Type |
Notes
|
0x09
|
X |
Double |
Absolute position
|
Y |
Double |
Absolute position
|
Stance |
Double |
Used to modify the players bounding box when going up stairs, crouching, etc…
|
Z |
Double |
Absolute position
|
On Ground |
Bool |
True if the client is on the ground, False otherwise
|
Player Look
Packet ID |
Field Name |
Field Type |
Notes
|
0x0A
|
Yaw |
Float |
Absolute rotation on the X Axis, in degrees
|
Pitch |
Float |
Absolute rotation on the Y Axis, in degrees
|
On Ground |
Bool |
True if the client is on the ground, False otherwise
|
Player Position And Look
Packet ID |
Field Name |
Field Type |
Notes
|
0x0B
|
X |
Double |
Absolute position
|
Y |
Double |
Absolute position
|
Stance |
Double |
Used to modify the players bounding box when going up stairs, crouching, etc…
|
Z |
Double |
Absolute position
|
Yaw |
Float |
Absolute rotation on the X Axis, in degrees
|
Pitch |
Float |
Absolute rotation on the Y Axis, in degrees
|
On Ground |
Bool |
True if the client is on the ground, False otherwise
|
Held Item Change
Packet ID |
Field Name |
Field Type |
Notes
|
0x0C
|
Slot |
Short |
The slot which the player has selected (0-8)
|
Use Bed
Packet ID |
Field Name |
Field Type |
Notes
|
0x0D
|
Entity ID |
Int |
Player ID
|
|
Byte |
|
X |
Int |
Bed headboard X as block coordinate
|
Y |
Unsigned Byte |
Bed headboard Y as block coordinate
|
Z |
Int |
Bed headboard Z as block coordinate
|
Animation
Packet ID |
Field Name |
Field Type |
Notes
|
0x0E
|
Entity ID |
Int |
Player ID
|
Animation |
Byte |
Animation ID
|
Animation can be one of the following values:
ID |
Animation
|
0 |
No animation
|
1 |
Swing arm
|
2 |
Damage animation
|
3 |
Leave bed
|
5 |
Eat food
|
6 |
Critical effect
|
7 |
Magic critical effect
|
102 |
(unknown)
|
104 |
Crouch
|
105 |
Uncrouch
|
Spawn Player
Packet ID |
Field Name |
Field Type |
Notes
|
0x0F
|
Entity ID |
Int |
Player's Entity ID
|
Player UUID |
String |
Player's UUID
|
Player Name |
String |
Player's Name
|
X |
Int |
Player X as a Fixed-Point number
|
Y |
Int |
Player X as a Fixed-Point number
|
Z |
Int |
Player X as a Fixed-Point number
|
Yaw |
Byte |
Player rotation as a packed byte
|
Pitch |
Byte |
Player rotation as a packet byte
|
Current Item |
Short |
The item the player is currently holding. Note that this should be 0 for "no item", unlike -1 used in other packets. A negative value crashes clients.
|
Metadata |
Metadata |
The client will crash if no metadata is sent
|
Collect Item
Packet ID |
Field Name |
Field Type |
Notes
|
0x10
|
Collected Entity ID |
Int |
|
Collector Entity ID |
Int |
|
Spawn Object
Spawn Mob
Packet ID |
Field Name |
Field Type |
Notes
|
0x12
|
Entity ID |
Int |
Entity's ID
|
Type |
Unsigned Byte |
The type of mob. See Mobs
|
X |
Int |
X position as a Fixed-Point number
|
Y |
Int |
Y position as a Fixed-Point number
|
Z |
Int |
Z position as a Fixed-Point number
|
Pitch |
Byte |
The pitch in steps of 2p/256
|
Head Pitch |
Byte |
The pitch in steps of 2p/256
|
Yaw |
Byte |
The yaw in steps of 2p/256
|
Velocity X |
Short |
|
Velocity Y |
Short |
|
Velocity Z |
Short |
|
Metadata |
Metadata |
|
Spawn Painting
Packet ID |
Field Name |
Field Type |
Notes
|
0x13
|
Entity ID |
Int |
Entity's ID
|
Title |
String |
Name of the painting. Max length 13
|
X |
Int |
Center X coordinate
|
Y |
Int |
Center Y coordinate
|
Z |
Int |
Center Z coordinate
|
Direction |
Int |
Direction the painting faces (0 -z, 1 -x, 2 +z, 3 +x)
|
Spawn Experience Orb
Entity Velocity
Packet ID |
Field Name |
Field Type |
Notes
|
0x15
|
Entity ID |
Int |
Entity's ID
|
Velocity X |
Short |
Velocity on the X axis
|
Velocity Y |
Short |
Velocity on the Y axis
|
Velocity Z |
Short |
Velocity on the Z axis
|
Destroy Entitie s
Packet ID |
Field Name |
Field Type |
Notes
|
0x16
|
Count |
Byte |
Length of following array
|
Entity IDs |
Array of Int |
The list of entities of destroy
|
Entity
Packet ID |
Field Name |
Field Type |
Notes
|
0x17
|
Entity ID |
Int |
Entity's ID
|
Entity Relative Move
Entity Look
Packet ID |
Field Name |
Field Type |
Notes
|
0x19
|
Entity ID |
Int |
Entity's ID
|
Yaw |
Byte |
The X Axis rotation as a fraction of 360
|
Pitch |
Byte |
The Y Axis rotation as a fraction of 360
|
Entity Look and Relative Move
Packet ID |
Field Name |
Field Type |
Notes
|
0x1A
|
Entity ID |
Int |
Entity's ID
|
DX |
Byte |
Change in X position as a Fixed-Point number
|
DY |
Byte |
Change in Y position as a Fixed-Point number
|
DZ |
Byte |
Change in Z position as a Fixed-Point number
|
Yaw |
Byte |
The X Axis rotation as a fraction of 360
|
Pitch |
Byte |
The Y Axis rotation as a fraction of 360
|
Entity Teleport
Packet ID |
Field Name |
Field Type |
Notes
|
0x1B
|
Entity ID |
Int |
Entity's ID
|
X |
Byte |
X position as a Fixed-Point number
|
Y |
Byte |
Y position as a Fixed-Point number
|
Z |
Byte |
Z position as a Fixed-Point number
|
Yaw |
Byte |
The X Axis rotation as a fraction of 360
|
Pitch |
Byte |
The Y Axis rotation as a fraction of 360
|
Entity Head Look
Packet ID |
Field Name |
Field Type |
Notes
|
0x1C
|
Entity ID |
Int |
Entity's ID
|
Head Yaw |
Byte |
Head yaw in steps of 2p/256
|
Entity Status
Packet ID |
Field Name |
Field Type |
Notes
|
0x1D
|
Entity ID |
Int |
Entity's ID
|
Entity Status |
Byte |
See below
|
Entity Status |
Meaning
|
2 |
Entity hurt
|
3 |
Entity dead
|
6 |
Wolf taming
|
7 |
Wolf tamed
|
8 |
Wolf shaking water off itself
|
9 |
(of self) Eating accepted by server
|
10 |
Sheep eating grass
|
11 |
Iron Golem handing over a rose
|
12 |
Spawn "heart" particles near a villager
|
13 |
Spawn particles indicating that a villager is angry and seeking revenge
|
14 |
Spawn happy particles near a villager
|
15 |
Spawn a "magic" particle near the Witch
|
16 |
Zombie converting into a villager by shaking violently (unused in recent update)
|
17 |
A firework exploding
|
Attach Entity
Packet ID |
Field Name |
Field Type |
Notes
|
0x1E
|
Entity ID |
Int |
Entity's ID
|
Vehicle ID |
Int |
Vechicle's Entity ID
|
Leash |
Bool |
If true leashes the entity to the vehicle
|
Attach Entity
Packet ID |
Field Name |
Field Type |
Notes
|
0x1F
|
Entity ID |
Int |
Entity's ID
|
Metadata |
Metadata |
|
Entity Effect
Packet ID |
Field Name |
Field Type |
Notes
|
0x20
|
Entity ID |
Int |
Entity's ID
|
Effect ID |
Byte |
See [[1]]
|
Amplifier |
Byte |
|
Duration |
Short |
|
Status
Clientbound
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x00
|
|
String |
|
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x01
|
|
Long |
|
Serverbound
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x00 |
|
|
|
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x01
|
|
Long |
|
Login
Clientbound
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x00
|
|
String |
|
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x01
|
|
String |
|
Length |
Short |
|
|
Byte array |
|
Length |
Short |
|
|
Byte array |
|
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x02
|
UUID |
String |
|
Name |
String |
|
Serverbound
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x00
|
Name |
String |
|
?
Packet ID |
Field Name |
Field Type |
Notes
|
0x01
|
Length |
Short |
|
|
Byte array |
|
Length |
Short |
|
|
Byte array |
|
Plugin Channels
MC|RPack