aboutsummaryrefslogtreecommitdiff
path: root/src/network/networkprotocol.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/network/networkprotocol.h')
-rw-r--r--src/network/networkprotocol.h59
1 files changed, 10 insertions, 49 deletions
diff --git a/src/network/networkprotocol.h b/src/network/networkprotocol.h
index 82c82f79e..177b97680 100644
--- a/src/network/networkprotocol.h
+++ b/src/network/networkprotocol.h
@@ -132,16 +132,23 @@ with this program; if not, write to the Free Software Foundation, Inc.,
Rename GENERIC_CMD_SET_ATTACHMENT to GENERIC_CMD_ATTACH_TO
PROTOCOL_VERSION 26:
Add TileDef tileable_horizontal, tileable_vertical flags
+ PROTOCOL_VERSION 27:
+ backface_culling: backwards compatibility for playing with
+ newer client on pre-27 servers.
+ Add nodedef v3 - connected nodeboxes
*/
-#define LATEST_PROTOCOL_VERSION 26
+#define LATEST_PROTOCOL_VERSION 27
// Server's supported network protocol range
#define SERVER_PROTOCOL_VERSION_MIN 13
#define SERVER_PROTOCOL_VERSION_MAX LATEST_PROTOCOL_VERSION
// Client's supported network protocol range
-#define CLIENT_PROTOCOL_VERSION_MIN 13
+// The minimal version depends on whether
+// send_pre_v25_init is enabled or not
+#define CLIENT_PROTOCOL_VERSION_MIN 25
+#define CLIENT_PROTOCOL_VERSION_MIN_LEGACY 13
#define CLIENT_PROTOCOL_VERSION_MAX LATEST_PROTOCOL_VERSION
// Constant that differentiates the protocol from random data and other protocols
@@ -208,7 +215,6 @@ enum ToClientCommand
TOCLIENT_BLOCKDATA = 0x20, //TODO: Multiple blocks
TOCLIENT_ADDNODE = 0x21,
/*
- u16 command
v3s16 position
serialized mapnode
u8 keep_metadata // Added in protocol version 22
@@ -255,7 +261,6 @@ enum ToClientCommand
/*
Sent as unreliable.
- u16 command
u16 number of player positions
for each player:
u16 peer_id
@@ -271,7 +276,6 @@ enum ToClientCommand
TOCLIENT_TIME_OF_DAY = 0x29,
/*
- u16 command
u16 time (0-23999)
Added in a later version:
f1000 time_speed
@@ -281,14 +285,12 @@ enum ToClientCommand
TOCLIENT_CHAT_MESSAGE = 0x30,
/*
- u16 command
u16 length
wstring message
*/
TOCLIENT_ACTIVE_OBJECT_REMOVE_ADD = 0x31,
/*
- u16 command
u16 count of removed objects
for all removed objects {
u16 id
@@ -304,7 +306,6 @@ enum ToClientCommand
TOCLIENT_ACTIVE_OBJECT_MESSAGES = 0x32,
/*
- u16 command
for all objects
{
u16 id
@@ -315,13 +316,11 @@ enum ToClientCommand
TOCLIENT_HP = 0x33,
/*
- u16 command
u8 hp
*/
TOCLIENT_MOVE_PLAYER = 0x34,
/*
- u16 command
v3f1000 player position
f1000 player pitch
f1000 player yaw
@@ -329,14 +328,12 @@ enum ToClientCommand
TOCLIENT_ACCESS_DENIED_LEGACY = 0x35,
/*
- u16 command
u16 reason_length
wstring reason
*/
TOCLIENT_PLAYERITEM = 0x36, // Obsolete
/*
- u16 command
u16 count of player items
for all player items {
u16 peer id
@@ -347,14 +344,12 @@ enum ToClientCommand
TOCLIENT_DEATHSCREEN = 0x37,
/*
- u16 command
u8 bool set camera point target
v3f1000 camera point target (to point the death cause or whatever)
*/
TOCLIENT_MEDIA = 0x38,
/*
- u16 command
u16 total number of texture bunches
u16 index of this bunch
u32 number of files in this bunch
@@ -370,21 +365,18 @@ enum ToClientCommand
TOCLIENT_TOOLDEF = 0x39,
/*
- u16 command
u32 length of the next item
serialized ToolDefManager
*/
TOCLIENT_NODEDEF = 0x3a,
/*
- u16 command
u32 length of the next item
serialized NodeDefManager
*/
TOCLIENT_CRAFTITEMDEF = 0x3b,
/*
- u16 command
u32 length of the next item
serialized CraftiItemDefManager
*/
@@ -392,7 +384,6 @@ enum ToClientCommand
TOCLIENT_ANNOUNCE_MEDIA = 0x3c,
/*
- u16 command
u32 number of files
for each texture {
u16 length of name
@@ -404,14 +395,12 @@ enum ToClientCommand
TOCLIENT_ITEMDEF = 0x3d,
/*
- u16 command
u32 length of next item
serialized ItemDefManager
*/
TOCLIENT_PLAY_SOUND = 0x3f,
/*
- u16 command
s32 sound_id
u16 len
u8[len] sound name
@@ -424,13 +413,11 @@ enum ToClientCommand
TOCLIENT_STOP_SOUND = 0x40,
/*
- u16 command
s32 sound_id
*/
TOCLIENT_PRIVILEGES = 0x41,
/*
- u16 command
u16 number of privileges
for each privilege
u16 len
@@ -439,7 +426,6 @@ enum ToClientCommand
TOCLIENT_INVENTORY_FORMSPEC = 0x42,
/*
- u16 command
u32 len
u8[len] formspec
*/
@@ -463,7 +449,6 @@ enum ToClientCommand
TOCLIENT_MOVEMENT = 0x45,
/*
- u16 command
f1000 movement_acceleration_default
f1000 movement_acceleration_air
f1000 movement_acceleration_fast
@@ -480,7 +465,6 @@ enum ToClientCommand
TOCLIENT_SPAWN_PARTICLE = 0x46,
/*
- u16 command
v3f1000 pos
v3f1000 velocity
v3f1000 acceleration
@@ -494,7 +478,6 @@ enum ToClientCommand
TOCLIENT_ADD_PARTICLESPAWNER = 0x47,
/*
- u16 command
u16 amount
f1000 spawntime
v3f1000 minpos
@@ -516,13 +499,11 @@ enum ToClientCommand
TOCLIENT_DELETE_PARTICLESPAWNER_LEGACY = 0x48,
/*
- u16 command
u16 id
*/
TOCLIENT_HUDADD = 0x49,
/*
- u16 command
u32 id
u8 type
v2f1000 pos
@@ -542,13 +523,11 @@ enum ToClientCommand
TOCLIENT_HUDRM = 0x4a,
/*
- u16 command
u32 id
*/
TOCLIENT_HUDCHANGE = 0x4b,
/*
- u16 command
u32 id
u8 stat
[v2f1000 data |
@@ -559,14 +538,12 @@ enum ToClientCommand
TOCLIENT_HUD_SET_FLAGS = 0x4c,
/*
- u16 command
u32 flags
u32 mask
*/
TOCLIENT_HUD_SET_PARAM = 0x4d,
/*
- u16 command
u16 param
u16 len
u8[len] value
@@ -574,13 +551,11 @@ enum ToClientCommand
TOCLIENT_BREATH = 0x4e,
/*
- u16 command
u16 breath
*/
TOCLIENT_SET_SKY = 0x4f,
/*
- u16 command
u8[4] color (ARGB)
u8 len
u8[len] type
@@ -592,14 +567,12 @@ enum ToClientCommand
TOCLIENT_OVERRIDE_DAY_NIGHT_RATIO = 0x50,
/*
- u16 command
u8 do_override (boolean)
u16 day-night ratio 0...65535
*/
TOCLIENT_LOCAL_PLAYER_ANIMATIONS = 0x51,
/*
- u16 command
v2s32 stand/idle
v2s32 walk
v2s32 dig
@@ -609,14 +582,12 @@ enum ToClientCommand
TOCLIENT_EYE_OFFSET = 0x52,
/*
- u16 command
v3f1000 first
v3f1000 third
*/
TOCLIENT_DELETE_PARTICLESPAWNER = 0x53,
/*
- u16 command
u32 id
*/
@@ -624,7 +595,6 @@ enum ToClientCommand
/*
Belonging to AUTH_MECHANISM_LEGACY_PASSWORD and AUTH_MECHANISM_SRP.
- u16 command
std::string bytes_s
std::string bytes_B
*/
@@ -735,7 +705,6 @@ enum ToServerCommand
TOSERVER_SIGNTEXT = 0x30, // Old signs, obsolete
/*
- u16 command
v3s16 blockpos
s16 id
u16 textlen
@@ -749,14 +718,12 @@ enum ToServerCommand
TOSERVER_CHAT_MESSAGE = 0x32,
/*
- u16 command
u16 length
wstring message
*/
TOSERVER_SIGNNODETEXT = 0x33, // obsolete
/*
- u16 command
v3s16 p
u16 textlen
textdata
@@ -773,7 +740,6 @@ enum ToServerCommand
TOSERVER_DAMAGE = 0x35,
/*
- u16 command
u8 amount
*/
@@ -818,14 +784,12 @@ enum ToServerCommand
TOSERVER_REMOVED_SOUNDS = 0x3a,
/*
- u16 command
u16 len
s32[len] sound_id
*/
TOSERVER_NODEMETA_FIELDS = 0x3b,
/*
- u16 command
v3s16 p
u16 len
u8[len] form name (reserved for future use)
@@ -839,7 +803,6 @@ enum ToServerCommand
TOSERVER_INVENTORY_FIELDS = 0x3c,
/*
- u16 command
u16 len
u8[len] form name (reserved for future use)
u16 number of fields
@@ -852,7 +815,6 @@ enum ToServerCommand
TOSERVER_REQUEST_MEDIA = 0x40,
/*
- u16 command
u16 number of files requested
for each file {
u16 length of name
@@ -862,12 +824,11 @@ enum ToServerCommand
TOSERVER_RECEIVED_MEDIA = 0x41,
/*
- u16 command
+ <no payload data>
*/
TOSERVER_BREATH = 0x42,
/*
- u16 command
u16 breath
*/