]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/clientserver.h
make formspec textarea wordwrap
[dragonfireclient.git] / src / clientserver.h
index ee9271bbcdfe2cdfbffa4aac8ba49eea5e41de9d..1f2e19e45ccaea3fbffeeef14947f4cf9278bc64 100644 (file)
@@ -20,10 +20,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #ifndef CLIENTSERVER_HEADER
 #define CLIENTSERVER_HEADER
 
-#include "util/pointer.h"
-
-SharedBuffer<u8> makePacket_TOCLIENT_TIME_OF_DAY(u16 time, float time_speed);
-
 /*
        changes by PROTOCOL_VERSION:
 
@@ -95,9 +91,22 @@ SharedBuffer<u8> makePacket_TOCLIENT_TIME_OF_DAY(u16 time, float time_speed);
                TOCLIENT_HUDRM
                TOCLIENT_HUDCHANGE
                TOCLIENT_HUD_SET_FLAGS
+       PROTOCOL_VERSION 21:
+               TOCLIENT_BREATH
+               TOSERVER_BREATH
+               range added to ItemDefinition
+               drowning, leveled and liquid_range added to ContentFeatures
+               stepheight and collideWithObjects added to object properties
+               version, heat and humidity transfer in MapBock
+               automatic_face_movement_dir and automatic_face_movement_dir_offset
+                       added to object properties
+       PROTOCOL_VERSION 22:
+               add swap_node
+       PROTOCOL_VERSION 23:
+               TOSERVER_CLIENT_READY
 */
 
-#define LATEST_PROTOCOL_VERSION 20
+#define LATEST_PROTOCOL_VERSION 23
 
 // Server's supported network protocol range
 #define SERVER_PROTOCOL_VERSION_MIN 13
@@ -113,7 +122,7 @@ SharedBuffer<u8> makePacket_TOCLIENT_TIME_OF_DAY(u16 time, float time_speed);
 #define PASSWORD_SIZE 28       // Maximum password length. Allows for
                                // base64-encoded SHA-1 (27+\0).
 
-#define TEXTURENAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_."
+#define TEXTURENAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_.-"
 
 enum ToClientCommand
 {
@@ -124,7 +133,7 @@ enum ToClientCommand
 
                [0] u16 TOSERVER_INIT
                [2] u8 deployed version
-               [3] v3s16 player's position + v3f(0,BS/2,0) floatToInt'd 
+               [3] v3s16 player's position + v3f(0,BS/2,0) floatToInt'd
                [12] u64 map seed (new as of 2011-02-27)
                [20] f1000 recommended send interval (in seconds) (new as of 14)
 
@@ -134,6 +143,12 @@ 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
+       */
        TOCLIENT_REMOVENODE = 0x22,
        
        TOCLIENT_PLAYERPOS = 0x23, // Obsolete
@@ -408,6 +423,7 @@ enum ToClientCommand
                f1000 expirationtime
                f1000 size
                u8 bool collisiondetection
+               u8 bool vertical
                u32 len
                u8[len] texture
        */
@@ -428,6 +444,7 @@ enum ToClientCommand
                f1000 minsize
                f1000 maxsize
                u8 bool collisiondetection
+               u8 bool vertical
                u32 len
                u8[len] texture
                u32 id
@@ -480,6 +497,56 @@ enum ToClientCommand
                u32 flags
                u32 mask
        */
+
+       TOCLIENT_HUD_SET_PARAM = 0x4d,
+       /*
+               u16 command
+               u16 param
+               u16 len
+               u8[len] value
+       */
+
+       TOCLIENT_BREATH = 0x4e,
+       /*
+               u16 command
+               u16 breath
+       */
+
+       TOCLIENT_SET_SKY = 0x4f,
+       /*
+               u16 command
+               u8[4] color (ARGB)
+               u8 len
+               u8[len] type
+               u16 count
+               foreach count:
+                       u8 len
+                       u8[len] param
+       */
+
+       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
+               v2s32 walk+dig
+               f1000 frame_speed
+       */
+
+       TOCLIENT_EYE_OFFSET = 0x52,
+       /*
+               u16 command
+               v3f1000 first
+               v3f1000 third
+       */
 };
 
 enum ToServerCommand
@@ -489,7 +556,7 @@ enum ToServerCommand
                Sent first after connected.
 
                [0] u16 TOSERVER_INIT
-               [2] u8 SER_FMT_VER_HIGHEST
+               [2] u8 SER_FMT_VER_HIGHEST_READ
                [3] u8[20] player_name
                [23] u8[28] password (new in some version)
                [51] u16 minimum supported network protocol version (added sometime)
@@ -703,6 +770,22 @@ enum ToServerCommand
        /*
                u16 command
        */
+
+       TOSERVER_BREATH = 0x42,
+       /*
+               u16 command
+               u16 breath
+       */
+
+       TOSERVER_CLIENT_READY = 0x43,
+       /*
+               u8 major
+               u8 minor
+               u8 patch
+               u8 reserved
+               u16 len
+               u8[len] full_version_string
+       */
 };
 
 #endif