float game_stopped;
float game_starttime; //point in time when the countdown to game start is over
float round_starttime; //point in time when the countdown to round start is over
+float round_delaytime;
+float overtime_starttime; // z411 point in time where first overtime started
+
+float timeout_last;
+float timeout_total_time;
+bool game_timeout;
+
int autocvar_leadlimit;
int overtimes; // overtimes added (-1 = sudden death)
int timeout_status; // (values: 0, 1, 2) contains whether a timeout is not active (0), was called but still at leadtime (1) or is active (2)
#endif
REGISTER_STAT(WEAPONRATEFACTOR, float, W_WeaponRateFactor(this))
REGISTER_STAT(GAME_STOPPED, int, game_stopped)
+
+REGISTER_STAT(TIMEOUT_LAST, float, timeout_last)
+
REGISTER_STAT(GAMESTARTTIME, float, game_starttime)
/** arc heat in [0,1] */
REGISTER_STAT(PRESSED_KEYS, int)
REGISTER_STAT(VEHICLESTAT_RELOAD2, int)
REGISTER_STAT(VEHICLESTAT_W2MODE, int)
REGISTER_STAT(NADE_TIMER, float)
-REGISTER_STAT(SECRETS_TOTAL, int, secrets_total)
-REGISTER_STAT(SECRETS_FOUND, int, secrets_found)
REGISTER_STAT(RESPAWN_TIME, float)
REGISTER_STAT(ROUNDSTARTTIME, float, round_starttime)
+REGISTER_STAT(ROUNDENDTIME, float, round_delaytime)
REGISTER_STAT(OVERTIMES, int, overtimes)
REGISTER_STAT(TIMEOUT_STATUS, int, timeout_status)
-REGISTER_STAT(MONSTERS_TOTAL, int)
-REGISTER_STAT(MONSTERS_KILLED, int)
REGISTER_STAT(NADE_BONUS, float)
REGISTER_STAT(NADE_BONUS_TYPE, int)
REGISTER_STAT(NADE_BONUS_SCORE, float)
+REGISTER_STAT(NADE_DARKNESS_TIME, float)
REGISTER_STAT(PLASMA, int)
REGISTER_STAT(FROZEN, int)
REGISTER_STAT(REVIVE_PROGRESS, float)
REGISTER_STAT(CAPTURE_PROGRESS, float)
REGISTER_STAT(ITEMSTIME, int, autocvar_sv_itemstime)
REGISTER_STAT(KILL_TIME, float)
+REGISTER_STAT(TKA_BALLSTATUS, int)
#ifdef SVQC
float autocvar_sv_showfps = 0;
int autocvar_sv_gameplayfix_stepdown = 2;
float autocvar_sv_gameplayfix_stepdown_maxspeed = 0;
int autocvar_sv_gameplayfix_stepmultipletimes = 1;
-int autocvar_sv_gameplayfix_unstickplayers = 2;
+int autocvar_sv_gameplayfix_unstickplayers = 0;
int autocvar_sv_gameplayfix_fixedcheckwatertransition = 1;
int autocvar_sv_gameplayfix_slidemoveprojectiles = 1;
int autocvar_sv_gameplayfix_grenadebouncedownslopes = 1;
REGISTER_STAT(SLICK_APPLYGRAVITY, bool, autocvar_sv_slick_applygravity)
REGISTER_STAT(Q3COMPAT, int, q3compat)
+// FIXME: workaround for https://gitlab.com/xonotic/xonotic-data.pk3dir/-/issues/2812
+#ifdef SVQC
+ #define Q3COMPAT_COMMON q3compat
+#elif defined(CSQC)
+ #define Q3COMPAT_COMMON STAT(Q3COMPAT)
+#endif
#ifdef SVQC
#include "physics/movetypes/movetypes.qh"
#ifdef SVQC
SPECTATE_COPYFIELD(_STAT(GUNALIGN))
#endif
+
+REGISTER_STAT(SURVIVAL_ROUNDTIMER, float)