summaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
author M.Dinslage2023-12-09 01:33:58 +0100
committer Willy Sudiarto Raharjo2023-12-09 01:50:10 +0100
commitaa5d10e6dbf4c45389e6cce7e8b82cc260709b35 (patch)
treed9ff0981dfcc59a3f6567d27667681294e575d47 /games
parentd287817162786ab8dfb7cc0f489944d4f7bcaec5 (diff)
downloadslackbuilds-aa5d10e6dbf4c45389e6cce7e8b82cc260709b35.tar.gz
games/ezquake: Updated for version 3.6.4.
Signed-off-by: Andrew Clemons <andrew.clemons@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games')
-rw-r--r--games/ezquake/ezquake.SlackBuild5
-rw-r--r--games/ezquake/ezquake.info6
-rw-r--r--games/ezquake/protocol.h44
3 files changed, 50 insertions, 5 deletions
diff --git a/games/ezquake/ezquake.SlackBuild b/games/ezquake/ezquake.SlackBuild
index 2fc73dbc3f..fc6b571ac4 100644
--- a/games/ezquake/ezquake.SlackBuild
+++ b/games/ezquake/ezquake.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ezquake
-VERSION=${VERSION:-3.6.2}
+VERSION=${VERSION:-3.6.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,7 +84,8 @@ find -L . \
# add back the missing protocol.h file
# https://github.com/QW-Group/ezquake-source/issues/765
-cat $CWD/protocol.h > src/protocol.h
+mkdir -p src/qwprot/src
+cat $CWD/protocol.h > src/qwprot/src/protocol.h
# dont use precompiled binary, make our own
CFLAGS="$SLKCFLAGS" \
diff --git a/games/ezquake/ezquake.info b/games/ezquake/ezquake.info
index e25121e603..6c558ff289 100644
--- a/games/ezquake/ezquake.info
+++ b/games/ezquake/ezquake.info
@@ -1,9 +1,9 @@
PRGNAM="ezquake"
-VERSION="3.6.2"
+VERSION="3.6.4"
HOMEPAGE="https://ezquake.com/"
-DOWNLOAD="https://github.com/QW-Group/ezquake-source/archive/3.6.2/ezquake-source-3.6.2.tar.gz \
+DOWNLOAD="https://github.com/QW-Group/ezquake-source/archive/3.6.4/ezquake-source-3.6.4.tar.gz \
https://github.com/QW-Group/ezquake-source/releases/download/3.2.3/ezquake-ubuntu-3.2.3-full.tar.gz"
-MD5SUM="b69a48b0d3302256be36113270212095 \
+MD5SUM="5db942adf41808526ef9d66b928910bd \
18a642c80d60bc01c04b8cb86c94bc5f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/ezquake/protocol.h b/games/ezquake/protocol.h
index 3a636d522f..8ccd39c323 100644
--- a/games/ezquake/protocol.h
+++ b/games/ezquake/protocol.h
@@ -67,6 +67,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# define MVD_PEXT1_HIDDEN_MESSAGES (1 << 5) // dem_multiple(0) packets are in format (<length> <type-id>+ <packet-data>)*
//# define MVD_PEXT1_SERVERSIDEWEAPON2 (1 << 6) // Server-side weapon selection supports clc_mvd_weapon_full_impulse.
// Can be defined in a project Makefile
+#define MVD_PEXT1_WEAPONPREDICTION (1 << 7) // Send weapon and attack related data for weapon prediction
+#define MVD_PEXT1_SIMPLEPROJECTILE (1 << 8) // Projectiles are sent as simple semi-stateless ents
# if defined(MVD_PEXT1_DEBUG_ANTILAG) || defined(MVD_PEXT1_DEBUG_WEAPON)
# define MVD_PEXT1_DEBUG
@@ -238,6 +240,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# define svc_fte_voicechat 84
#endif // FTE_PEXT2_VOICECHAT
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define svc_packetsprojectiles 100 // [...]
+#define svc_deltapacketsprojectiles 101 // [...]
+#endif
+
//==============================================
// client to server
@@ -250,6 +257,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define clc_tmove 6 // teleport request, spectator only
#define clc_upload 7 // teleport request, spectator only
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define clc_ackframe 50
+#endif
+
#ifdef FTE_PEXT2_VOICECHAT
#define clc_voicechat 83 // FTE voice chat.
#endif // FTE_PEXT2_VOICECHAT
@@ -272,6 +283,15 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// others
#define clc_mvd_weapon_full_impulse 128 // if set, each weapon set as a byte, rather than packing two into one
+#if defined(MVD_PEXT1_DEBUG_ANTILAG) || defined(MVD_PEXT1_DEBUG_WEAPON)
+#define MVD_PEXT1_DEBUG
+#define MVD_PEXT1_ANTILAG_CLIENTPOS 128 // flag set on the playernum if the client positions are also included
+
+#define clc_mvd_debug 201
+
+#define clc_mvd_debug_type_antilag 1
+#define clc_mvd_debug_type_weapon 2
+#endif
//==============================================
@@ -293,6 +313,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define PF_PMC_MASK 7
#define PF_ONGROUND (1<<14) // ZQuake extension
#define PF_SOLID (1<<15) // ZQuake extension
+#define PF_FTE_EXTRA (1<<16) // FTE extension
// encoded player move types
#define PMC_NORMAL 0 // normal ground movement
@@ -463,6 +484,24 @@ typedef struct entity_state_s {
byte trans;
} entity_state_t;
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define MAX_SIMPLEPROJECTILES 64
+typedef struct sprojectile_state_s
+{
+ int number; // edict index
+ int flags; // nolerp, etc
+ int owner;
+
+ int fproj_num;
+ float time_offset;
+ float time;
+ vec3_t origin;
+ vec3_t angles;
+ int modelindex;
+ vec3_t velocity;
+} sprojectile_state_t;
+#endif
+
#define MAX_PACKET_ENTITIES 64 // doesn't include nails
#define MAX_PEXT256_PACKET_ENTITIES 256 // up to 256 ents, look FTE_PEXT_256PACKETENTITIES
#define MAX_MVD_PACKET_ENTITIES 300 // !!! MUST not be less than any of above values!!!
@@ -470,6 +509,10 @@ typedef struct entity_state_s {
typedef struct packet_entities_s {
int num_entities;
entity_state_t entities[MAX_MVD_PACKET_ENTITIES];
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+ int num_sprojectiles;
+ sprojectile_state_t sprojectiles[MAX_SIMPLEPROJECTILES];
+#endif
} packet_entities_t;
typedef struct usercmd_s {
@@ -480,6 +523,7 @@ typedef struct usercmd_s {
short upmove;
byte buttons;
byte impulse;
+ byte impulse_pred; //this is our impulse, even if it was overrode by serversideweapon
} usercmd_t;
//==============================================