z411 [Tue, 18 Jan 2022 20:25:31 +0000 (17:25 -0300)]
Fix ready counting after someone has gone to spect
ReadyCount() is now called at the proper time (after the Player has been transmuted to Observer).
This fixes an issue where the game wouldn't start if someone went to spectator and enough players were ready,
because the spectator was still being wrongly counted as a player.
terencehill [Thu, 13 Jan 2022 22:04:04 +0000 (23:04 +0100)]
Rename misleading DAMAGE_DEALT_TOTAL and damage_dealt to HITSOUND_DAMAGE_DEALT_TOTAL and hitsound_damage_dealt since damage is counted only if dealt to players that aren't typing
terencehill [Wed, 5 Jan 2022 21:48:13 +0000 (22:48 +0100)]
Make cvar_cl_allow_uidtracking an int thanks to a patch to ReplicateVars: replicated cvars are now sent to the server on connection even if not changed so that server can process them properly
cvar_cl_allow_uidtracking as string was networked on connection because code immediately detects a change (null value "" != default value "0"), not possible as int (null value 0 == default value 0)
terencehill [Wed, 5 Jan 2022 00:10:02 +0000 (01:10 +0100)]
Fix #2597 "Game not listed in XonStats if a player has turned off stats tracking" by handling cl_allow_uidtracking as string rather than float in the client (reverting change of commit 2d8c8577).
This commit also reverts a422dfd5 "Respect cl_allow_uidtracking on player stats reset" in warmup as it was actually replicating the misbehaviour causing #2597
terencehill [Tue, 4 Jan 2022 00:27:48 +0000 (01:27 +0100)]
Add API to handle in-game status for game modes that temporarily turn players into spectators/observers when they are eliminated but keeping them "in game". Replaces caplayer and lmsplayer and the GetPlayerStatus mutator hook
terencehill [Sun, 2 Jan 2022 17:22:57 +0000 (18:22 +0100)]
Fix eliminated players not considered winners even if they belong to the winner team in CA; also show a message in console reporting the winner team of the match in all game modes
terencehill [Fri, 31 Dec 2021 14:59:58 +0000 (15:59 +0100)]
Rename Team_*ControlPoints functions to Team_*OwnedItems so they can be used without ambiguity to count control points in Domination and generators in Onslaught
ferreum [Wed, 29 Dec 2021 16:12:44 +0000 (17:12 +0100)]
rewrite input-demoseeking.cfg
- Fix "defer clear" commands breaking seekdemo.
- Fix repeated seekdemo commands often breaking the seek.
- Handle failed playdemo command cleanly.
- Introduce maximum playback speed to avoid freezes for long seeks.
- Introduce option to disable default bindings.
- Introduce hooks for demo playback start and seek end.
- Introduce alias for retrieving seek target or demo playback time from
scripts.
- Introduce vars to provide information about demo playback.
- Prevent interrupting the game and loading the last viewed demo when
accidentally running seekdemo command during an actual game
(cl_hook_gamestart_all setup needed).
- Reduce screen flashes by disabling r_render only for long seeks where
the performance is needed.
- Disable more options to improve performance and reduce particles and
effects accumulating during the seek.
terencehill [Fri, 24 Dec 2021 13:25:20 +0000 (14:25 +0100)]
Menu Server list: partially fix server row next to the heading slightly smaller than others if (autocvar_menu_slist_categories <= 0) (now it's less noticeable)
terencehill [Sat, 11 Dec 2021 15:56:46 +0000 (16:56 +0100)]
Properly reset weapon accuracy on player respawn if sv_ready_restart_after_countdown is 1, thanks z411 for pointing out this bug
z411: "I think it seems to work as you expect because you are resetting the accuracies before the match starts, but once the players respawn accuracy_resend() which actually sends the stats is called in PutPlayerInServer() when they respawn. So the server is actually resetting the stats before it should, but sends them when they respawn."