4 Offset Size Type Description
5 0 4 data protocol tag, must be 0xFB1AB1AF
6 4 2 uint sequence number
8 8 4 data bitfield with previous acks
9 12 1 uint type code for the payload
10 13 3 none padding, reserved for future use
11 16 0-484 data payload, contents and length vary,
12 mostly depending on the type code
14 all multibyte values are in LE
15 the current code does no conversion, so only works on machines
16 with native LE (or BE if the server and all clients are on that,
17 but that's by accident and will break if conversion code is ever
27 To tell the other side we're still alive.
28 Both server and client will send this if they haven't sent something in
39 Sent from client to serveri as a request to join. The server may
40 respond negatively if the player name is already taken or some cap has
45 0 player name, max 32 byte UTF-8 string,
46 shorter names should be zero terminated
53 Sent by the server either as a response to a successful login or when
58 0 entity ID of the player, 32bit unsigned int
59 4 chunk coords of the player, 3x 32bit signed int
60 16 pos/vel/rot/ang of the player, 13x 32bit float
61 68 name of the world the server's currently running
62 max 32 byte UTF-8 string
69 Sent by the server either as a respons to a failed login or when the
71 Optionally sent by the client on disconnect.
81 Sent by clients to notify the server of their changes to the player.
85 0 chunk coords of the player, 3x 32bit signed int
86 12 pos/vel/rot/ang of the player, 13x 32bit float
93 Sent by the server to notify the client of an entity entering spawn range.
97 0 entity ID, 32bit unsigned int
98 4 chunk coords of the entity, 3x 32bit signed int
99 16 pos/vel/rot/ang of the entity, 13x 32bit float
100 68 bounding box of the entity, 6x 32bit float
101 92 flags, 32bit bitfield with boolean values
103 96 entity name, max 32 byte UTF-8 string
110 Sent by the server to notify the client of an entity leaving spawn range.
114 0 entity ID, 32bit unsigned int
121 Sent by the server to notify the client of updated entity properties.
122 Contained entities must be ordered by ascending entity ID.
126 0 number of entities, 32bit int, 1-7
127 4 chunk coords of the entity, 3x 32bit signed int
128 16 pos/vel/rot/ang of the entity, 13x 32bit float
130 Length: 4 + multiple of 64, max 452