From 4048c5cdec22f262fb5925aea3eb0d6941c4d0c5 Mon Sep 17 00:00:00 2001 From: Cloudwalk Date: Wed, 21 Jul 2021 21:22:37 -0400 Subject: [PATCH] protocol: Stub DP8 protocol --- cl_input.c | 4 ++++ common.h | 1 + protocol.c | 1 + 3 files changed, 6 insertions(+) diff --git a/cl_input.c b/cl_input.c index 651e9d28..ebc50867 100644 --- a/cl_input.c +++ b/cl_input.c @@ -1829,6 +1829,7 @@ void CL_SendMove(void) break; case PROTOCOL_DARKPLACES6: case PROTOCOL_DARKPLACES7: + case PROTOCOL_DARKPLACES8: cl.cmd.predicted = cl_movement.integer != 0; break; default: @@ -1860,6 +1861,7 @@ void CL_SendMove(void) break; case PROTOCOL_DARKPLACES6: case PROTOCOL_DARKPLACES7: + case PROTOCOL_DARKPLACES8: // FIXME: cl.cmd.buttons & 16 is +button5, Nexuiz/Xonotic specific cl.cmd.crouch = (cl.cmd.buttons & 16) != 0; break; @@ -1938,6 +1940,7 @@ void CL_SendMove(void) // PROTOCOL_DARKPLACES5 clc_move = 19 bytes total // PROTOCOL_DARKPLACES6 clc_move = 52 bytes total // PROTOCOL_DARKPLACES7 clc_move = 56 bytes total per move (can be up to 16 moves) + // PROTOCOL_DARKPLACES8 clc_move = 56 bytes total per move (can be up to 16 moves) // PROTOCOL_QUAKEWORLD clc_move = 34 bytes total (typically, but can reach 43 bytes, or even 49 bytes with roll) // set prydon cursor info @@ -2039,6 +2042,7 @@ void CL_SendMove(void) MSG_WriteByte (&buf, cl.cmd.impulse); case PROTOCOL_DARKPLACES6: case PROTOCOL_DARKPLACES7: + case PROTOCOL_DARKPLACES8: // set the maxusercmds variable to limit how many should be sent maxusercmds = bound(1, cl_netrepeatinput.integer + 1, min(3, CL_MAX_USERCMDS)); // when movement prediction is off, there's not much point in repeating old input as it will just be ignored diff --git a/common.h b/common.h index fa826e60..95a12ab3 100644 --- a/common.h +++ b/common.h @@ -131,6 +131,7 @@ void StoreLittleShort (unsigned char *buffer, unsigned short i); typedef enum protocolversion_e { PROTOCOL_UNKNOWN, + PROTOCOL_DARKPLACES8, ///< wip PROTOCOL_DARKPLACES7, ///< added QuakeWorld-style movement protocol to allow more consistent prediction PROTOCOL_DARKPLACES6, ///< various changes PROTOCOL_DARKPLACES5, ///< uses EntityFrame5 entity snapshot encoder/decoder which is based on a Tribes networking article at http://www.garagegames.com/articles/networking1/ diff --git a/protocol.c b/protocol.c index 8bdb0051..56856755 100644 --- a/protocol.c +++ b/protocol.c @@ -47,6 +47,7 @@ struct protocolversioninfo_s } protocolversioninfo[] = { + { 3505, PROTOCOL_DARKPLACES8 , "DP8"}, { 3504, PROTOCOL_DARKPLACES7 , "DP7"}, { 3503, PROTOCOL_DARKPLACES6 , "DP6"}, { 3502, PROTOCOL_DARKPLACES5 , "DP5"}, -- 2.39.2