diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-15 10:24:49 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-15 10:24:49 +0000 |
| commit | a2566b3ebd93e0bbc55a920a7be08054a9377f11 (patch) | |
| tree | 44a4612805d894168fe4b3b4c065fccc1a1686e9 /src/engine/e_protocol.h | |
| parent | ac9873056aa1fe529b098f19ff31e9ffa0e016a2 (diff) | |
| download | zcatch-a2566b3ebd93e0bbc55a920a7be08054a9377f11.tar.gz zcatch-a2566b3ebd93e0bbc55a920a7be08054a9377f11.zip | |
cleaned up code structure a bit
Diffstat (limited to 'src/engine/e_protocol.h')
| -rw-r--r-- | src/engine/e_protocol.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/src/engine/e_protocol.h b/src/engine/e_protocol.h new file mode 100644 index 00000000..0e8a63f4 --- /dev/null +++ b/src/engine/e_protocol.h @@ -0,0 +1,60 @@ +/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */ +#include "e_system.h" + +/* + Connection diagram - How the initilization works. + + Client -> INFO -> Server + Contains version info, name, and some other info. + + Client <- MAP <- Server + Contains current map. + + Client -> READY -> Server + The client has loaded the map and is ready to go, + but the mod needs to send it's information aswell. + modc_connected is called on the client and + mods_connected is called on the server. + The client should call client_entergame when the + mod has done it's initilization. + + Client -> ENTERGAME -> Server + Tells the server to start sending snapshots. + client_entergame and server_client_enter is called. +*/ + + +enum +{ + NETMSG_NULL=0, + + /* the first thing sent by the client + contains the version info for the client */ + NETMSG_INFO=1, + + /* sent by server */ + NETMSG_MAP, + NETMSG_SNAP, + NETMSG_SNAPEMPTY, + NETMSG_SNAPSINGLE, + NETMSG_SNAPSMALL, + + /* sent by client */ + NETMSG_READY, + NETMSG_ENTERGAME, + NETMSG_INPUT, + NETMSG_CMD, + + /* sent by both */ + NETMSG_ERROR +}; + + +/* this should be revised */ +enum +{ + MAX_NAME_LENGTH=32, + MAX_CLANNAME_LENGTH=32, + MAX_INPUT_SIZE=128, + MAX_SNAPSHOT_PACKSIZE=900 +}; |