]> git.localhorst.tv Git - blank.git/blobdiff - doc/protocol
server: distribute received messages to clients
[blank.git] / doc / protocol
index 607bbb164fdcb588719f69f09fcd522311a51a4a..102bf50d745769f004f8c282efefb66d0daf95f9 100644 (file)
@@ -90,8 +90,13 @@ Sent by clients to notify the server of their changes to the player.
 
 Code: 4
 Payload:
-        0 entity state of the player as seen by the client
-Length: 64
+        0 player's entity state as predicted by the client
+       64 movement input, 3x 16bit signed int, each component mapped from [-1,1] to [-32767,32767]
+       70 pitch input, 16bit signed int, mapped from [-PI/2,PI/2] to [-32767,32767]
+       72 yaw input, 16bit signed int, mapped from [-PI,PI] to [-32767,32767]
+       74 active actions, 8bit bit field, first three bits are primary, secondary, and tertiary
+       75 selected inventory slot, 8bit unsigned int
+Length: 76
 
 
 Spawn Entity
@@ -108,7 +113,7 @@ Payload:
         96 flags, 32bit bitfield with boolean values
            1: world collision
        100 entity name, max 32 byte UTF-8 string
-Length: 132
+Length: 100 - 132
 
 
 Despawn Entity
@@ -134,7 +139,7 @@ Payload:
         4 entity ID, 32bit unsigned int
         8 entity state
        72 next entity...
-Length: 4 + multiple of 68, max 452
+Length: 4 + multiple of 68, max 480
 
 
 Player Correction
@@ -176,3 +181,32 @@ Payload:
         8 block size, size of the data block, 32bit unsigned int
        12 data, raw data
 Length: 12-484
+
+
+Block Update
+------------
+
+Sent by the server whenever one or more block in a chunk have changed.
+
+Code: 11
+Payload:
+        0 chunk coordinates, vec3i
+       12 number of blocks, 32bit unsigned int, 1-78
+       16 first block index, 16bit unsigned int
+       18 first block data, 32bit
+       22 second block index...
+Length: 16 + multiple of 6, max 484
+
+
+Message
+-------
+
+Sent by the client when the user submits a line on the chat input.
+Sent by the server on various events like player chat, server status, command output, etc.
+
+Code: 12
+Payload:
+        0 message type, 8bit unsigned int: 0 = notification, 1 = chat
+        1 referral, 32bit unsigned int, entity ID if type = 1
+        5 message, max 450 byte UTF-8 string, should be zero terminated if shorter
+Length: 6-455