]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/log
xonotic/xonotic-data.pk3dir.git
2 months agoReformat genmod.sh
Dr. Jaska [Mon, 21 Oct 2024 10:41:01 +0000 (10:41 +0000)]
Reformat genmod.sh

3 months agoMerge branch 'k9er/strafehud-changes' into 'master'
bones_was_here [Sat, 21 Sep 2024 14:15:32 +0000 (14:15 +0000)]
Merge branch 'k9er/strafehud-changes' into 'master'

Strafehud fixes and additions related to W-turning, side-strafing, and angle accuracy

See merge request xonotic/xonotic-data.pk3dir!1353

3 months agoStrafehud fixes and additions related to W-turning, side-strafing, and angle accuracy
k9er [Sat, 21 Sep 2024 14:15:32 +0000 (14:15 +0000)]
Strafehud fixes and additions related to W-turning, side-strafing, and angle accuracy

3 months agoMerge branch 'des/quickmenu_keep' into 'master'
terencehill [Sat, 21 Sep 2024 14:09:39 +0000 (14:09 +0000)]
Merge branch 'des/quickmenu_keep' into 'master'

Implement KEEP_OPEN flag for quickmenu, and make holding CTRL coherent with it

See merge request xonotic/xonotic-data.pk3dir!1350

3 months agoImplement KEEP_OPEN flag for quickmenu, and make holding CTRL coherent with it
Des - [Sat, 21 Sep 2024 14:09:39 +0000 (14:09 +0000)]
Implement KEEP_OPEN flag for quickmenu, and make holding CTRL coherent with it

3 months agoMerge branch 'Mario/infinite_ammo_start' into 'master'
terencehill [Fri, 20 Sep 2024 20:03:41 +0000 (20:03 +0000)]
Merge branch 'Mario/infinite_ammo_start' into 'master'

Don't force all ammo values to 999 when spawning with infinite ammo

See merge request xonotic/xonotic-data.pk3dir!1314

3 months agoDon't force all ammo values to 999 when spawning with infinite ammo
Mario [Fri, 20 Sep 2024 20:03:40 +0000 (20:03 +0000)]
Don't force all ammo values to 999 when spawning with infinite ammo

3 months agoMerge branch 'terencehill/spectator_camera_stuff' into 'master'
terencehill [Sat, 14 Sep 2024 18:02:28 +0000 (18:02 +0000)]
Merge branch 'terencehill/spectator_camera_stuff' into 'master'

Spectator camera: allow switching from 3rd to 1st person camera by setting chase_active to 0

Closes #2873

See merge request xonotic/xonotic-data.pk3dir!1355

3 months agopipeline: update hash for stormkeep changes, prevent potential flakiness
bones_was_here [Fri, 13 Sep 2024 06:23:38 +0000 (16:23 +1000)]
pipeline: update hash for stormkeep changes, prevent potential flakiness

I have isolated the cause of the hash change to
https://gitlab.com/xonotic/xonotic-maps.pk3dir/-/merge_requests/191
(only change needed to restore the previous hash is using stormkeep from
the previous autobuild 20240906_2).

DP uses nonblocking stdout on Linux by default, in theory this could
cause occasional pipeline failures that can't be reproduced.

3 months agoTransifex autosync
Rudolf Polzer [Tue, 10 Sep 2024 05:23:52 +0000 (07:23 +0200)]
Transifex autosync

3 months agoSpectator camera: move code to a dedicated function
terencehill [Mon, 9 Sep 2024 17:58:49 +0000 (19:58 +0200)]
Spectator camera: move code to a dedicated function

3 months agoSpectator camera: allow switching from 3rd to 1st person camera by setting chase_acti...
terencehill [Mon, 9 Sep 2024 15:46:24 +0000 (17:46 +0200)]
Spectator camera: allow switching from 3rd to 1st person camera by setting chase_active to 0

3 months agoTransifex autosync
Rudolf Polzer [Sat, 7 Sep 2024 05:27:45 +0000 (07:27 +0200)]
Transifex autosync

3 months agoMostly whitespace weapons cleanup chores
drjaska [Thu, 5 Sep 2024 14:27:05 +0000 (17:27 +0300)]
Mostly whitespace weapons cleanup chores

3 months agoFix indenting in qcsrc/lib/stats.qh
terencehill [Thu, 5 Sep 2024 13:03:27 +0000 (15:03 +0200)]
Fix indenting in qcsrc/lib/stats.qh

3 months agoTransifex autosync
Rudolf Polzer [Thu, 5 Sep 2024 05:23:33 +0000 (07:23 +0200)]
Transifex autosync

3 months agoRemove ancient untouched legacy svn files
drjaska [Wed, 4 Sep 2024 14:49:42 +0000 (17:49 +0300)]
Remove ancient untouched legacy svn files

3 months agoTransifex autosync
Rudolf Polzer [Wed, 4 Sep 2024 05:23:20 +0000 (07:23 +0200)]
Transifex autosync

3 months agoMerge branch 'drjaska/nextmap' into 'master'
Dr. Jaska [Tue, 3 Sep 2024 10:57:15 +0000 (10:57 +0000)]
Merge branch 'drjaska/nextmap' into 'master'

Show nextmap on HUD and rewrite nextmap from cvar to cmd

See merge request xonotic/xonotic-data.pk3dir!1341

3 months agoShow nextmap on HUD and rewrite nextmap from cvar to cmd
Dr. Jaska [Tue, 3 Sep 2024 10:57:07 +0000 (10:57 +0000)]
Show nextmap on HUD and rewrite nextmap from cvar to cmd

3 months agoMerge branch 'drjaska/shotgun-animation-time' into 'master'
Dr. Jaska [Tue, 3 Sep 2024 10:56:40 +0000 (10:56 +0000)]
Merge branch 'drjaska/shotgun-animation-time' into 'master'

Opt-in cvar to block shotgun melee directly after a shot

See merge request xonotic/xonotic-data.pk3dir!1173

3 months agoOpt-in cvar to block shotgun melee directly after a shot
Dr. Jaska [Tue, 3 Sep 2024 10:56:35 +0000 (10:56 +0000)]
Opt-in cvar to block shotgun melee directly after a shot

3 months agoMerge branch 'des/print-race-splits-v2' into 'master'
terencehill [Mon, 2 Sep 2024 16:33:12 +0000 (16:33 +0000)]
Merge branch 'des/print-race-splits-v2' into 'master'

Add optional split times in infomessage hud, and print_cptimes command to display the stored splits

See merge request xonotic/xonotic-data.pk3dir!1330

3 months agoAdd optional split times in infomessage hud, and print_cptimes command to display...
Des - [Mon, 2 Sep 2024 16:33:12 +0000 (16:33 +0000)]
Add optional split times in infomessage hud, and print_cptimes command to display the stored splits

3 months agoMerge branch 'terencehill/status_effect_fix' into 'master'
terencehill [Sun, 1 Sep 2024 12:35:30 +0000 (12:35 +0000)]
Merge branch 'terencehill/status_effect_fix' into 'master'

Fix some minor issues

See merge request xonotic/xonotic-data.pk3dir!1228

3 months agoFix `give no superweapons` giving default superweapons time
terencehill [Sun, 1 Sep 2024 12:24:22 +0000 (14:24 +0200)]
Fix `give no superweapons` giving default superweapons time

It happened because GiveStatusEffect removed superweapons status effect and this code block added it back.

3 months agoSimplify buff effect time calculation
terencehill [Sun, 1 Sep 2024 12:22:42 +0000 (14:22 +0200)]
Simplify buff effect time calculation

3 months agoDon't allow StatusEffects_gettime to return a time in the past
terencehill [Sun, 1 Sep 2024 12:12:09 +0000 (14:12 +0200)]
Don't allow StatusEffects_gettime to return a time in the past

By not doing so the effect would be still active in the last frame even if end time has passed.
It prevents wrong usage of the returned value, for example in Fire_AddDamage where mintime can be set to a negative value and used to apply a negative damage to the player
Removed now redundant max operations at StatusEffects_gettime call sites

3 months agoDon't apply status effects ending the moment they are applied. It fixes spawnshield...
terencehill [Sun, 1 Sep 2024 12:07:16 +0000 (14:07 +0200)]
Don't apply status effects ending the moment they are applied. It fixes spawnshield applied for a moment even if g_spawnshieldtime is 0

This change required a refactoring of the give command code, which now no longer needs changing internal fields of the status effects to update them

3 months agoMerge branch 'des/cts_pbhook' into 'master'
terencehill [Sun, 1 Sep 2024 11:07:17 +0000 (11:07 +0000)]
Merge branch 'des/cts_pbhook' into 'master'

Add cl_hook_race_pb to run on client when they set a new personal best time

See merge request xonotic/xonotic-data.pk3dir!1328

3 months agoAdd cl_hook_race_pb to run on client when they set a new personal best time
Des - [Sun, 1 Sep 2024 11:07:16 +0000 (11:07 +0000)]
Add cl_hook_race_pb to run on client when they set a new personal best time

3 months agoTransifex autosync
Rudolf Polzer [Sun, 1 Sep 2024 05:23:20 +0000 (07:23 +0200)]
Transifex autosync

3 months agoMerge branch 'Mario/menu_developer_options' into 'master'
terencehill [Sat, 31 Aug 2024 09:08:21 +0000 (09:08 +0000)]
Merge branch 'Mario/menu_developer_options' into 'master'

Clean up the use of developer in the menu and remove other weird settings

See merge request xonotic/xonotic-data.pk3dir!1323

3 months agoClean up the use of developer in the menu and remove other weird settings
Mario [Sat, 31 Aug 2024 09:08:21 +0000 (09:08 +0000)]
Clean up the use of developer in the menu and remove other weird settings

3 months agoMerge branch 'bones_was_here/Q1BSP_items_droptofloor' into 'master'
bones_was_here [Sat, 31 Aug 2024 08:51:58 +0000 (08:51 +0000)]
Merge branch 'bones_was_here/Q1BSP_items_droptofloor' into 'master'

Q1BSP: improve droptofloor compatibility with Quake progs

See merge request xonotic/xonotic-data.pk3dir!1327

3 months agoMerge branch 'Mario/resource_item_cleanup' into 'master'
terencehill [Sat, 31 Aug 2024 08:47:47 +0000 (08:47 +0000)]
Merge branch 'Mario/resource_item_cleanup' into 'master'

Clean up ammo displaying to not require direct item references

See merge request xonotic/xonotic-data.pk3dir!1326

3 months agoClean up ammo displaying to not require direct item references
Mario [Sat, 31 Aug 2024 08:47:47 +0000 (08:47 +0000)]
Clean up ammo displaying to not require direct item references

3 months agoRefactor write_recordmarker to reduce engine function calls and while at it indent...
terencehill [Fri, 30 Aug 2024 14:21:32 +0000 (16:21 +0200)]
Refactor write_recordmarker to reduce engine function calls and while at it indent code with TABs

3 months agoMerge branch 'des/cmd_cleancps' into 'master'
terencehill [Thu, 29 Aug 2024 09:16:44 +0000 (09:16 +0000)]
Merge branch 'des/cmd_cleancps' into 'master'

Race/CTS: Add clear_bestcptimes command to clear all your best checkpoint times

See merge request xonotic/xonotic-data.pk3dir!1332

3 months agoRace/CTS: Add clear_bestcptimes command to clear all your best checkpoint times
Des - [Thu, 29 Aug 2024 09:16:44 +0000 (09:16 +0000)]
Race/CTS: Add clear_bestcptimes command to clear all your best checkpoint times

3 months agoTransifex autosync
Rudolf Polzer [Thu, 29 Aug 2024 05:23:17 +0000 (07:23 +0200)]
Transifex autosync

3 months agoMerge branch 'des/race_dont_save_pb_on_demoplay' into 'master'
terencehill [Wed, 28 Aug 2024 23:50:51 +0000 (23:50 +0000)]
Merge branch 'des/race_dont_save_pb_on_demoplay' into 'master'

Don't save local record if we are just watching a demo

See merge request xonotic/xonotic-data.pk3dir!1340

3 months agoMerge branch 'Spike29/campaign_french' into 'master'
terencehill [Wed, 28 Aug 2024 12:53:43 +0000 (12:53 +0000)]
Merge branch 'Spike29/campaign_french' into 'master'

Add a French translation to the Xonotic campaign

See merge request xonotic/xonotic-data.pk3dir!1338

3 months agoTransifex autosync
Rudolf Polzer [Wed, 28 Aug 2024 05:23:17 +0000 (07:23 +0200)]
Transifex autosync

3 months agoTransifex autosync
Rudolf Polzer [Tue, 27 Aug 2024 05:23:21 +0000 (07:23 +0200)]
Transifex autosync

3 months agoMerge branch 'Mario/jetpack_powerup_settings' into 'master'
Dr. Jaska [Tue, 27 Aug 2024 00:43:21 +0000 (00:43 +0000)]
Merge branch 'Mario/jetpack_powerup_settings' into 'master'

Make Jetpacks respect g_powerups and add settings to disable them individually

See merge request xonotic/xonotic-data.pk3dir!1321

3 months agoDon't save local record if we are just watching a demo.
Des [Mon, 26 Aug 2024 23:17:07 +0000 (20:17 -0300)]
Don't save local record if we are just watching a demo.

3 months agoMerge branch 'terencehill/translatable_strings_cleanup' into 'master'
terencehill [Mon, 26 Aug 2024 13:33:01 +0000 (13:33 +0000)]
Merge branch 'terencehill/translatable_strings_cleanup' into 'master'

Clean up some translatable strings

See merge request xonotic/xonotic-data.pk3dir!1333

3 months agoMerge branch 'drjaska/race_CheckName' into 'master'
terencehill [Mon, 26 Aug 2024 12:51:21 +0000 (12:51 +0000)]
Merge branch 'drjaska/race_CheckName' into 'master'

Fix race_CheckName by actually using the given argument

Closes #2554 and #2123

See merge request xonotic/xonotic-data.pk3dir!1339

3 months agoTransifex autosync
Rudolf Polzer [Mon, 26 Aug 2024 05:23:17 +0000 (07:23 +0200)]
Transifex autosync

3 months agoFix race_CheckName by actually using the given arg
drjaska [Mon, 26 Aug 2024 03:23:30 +0000 (06:23 +0300)]
Fix race_CheckName by actually using the given arg

// Check if the given name already exists in race rankings?
// In that case, where? (otherwise return 0)
int race_CheckName(string net_name)

4 months agoMerge branch 'terencehill/blaster_attack_shared' into 'master'
terencehill [Sun, 25 Aug 2024 15:13:54 +0000 (15:13 +0000)]
Merge branch 'terencehill/blaster_attack_shared' into 'master'

Make weapons using blaster as secondary attack load settings from blaster

See merge request xonotic/xonotic-data.pk3dir!1282

4 months agoAdd a French translation to the Xonotic campaign
Spike29 [Sun, 25 Aug 2024 15:11:44 +0000 (17:11 +0200)]
Add a French translation to the Xonotic campaign

4 months agoMerge branch 'terencehill/antispam_stuff' into 'master'
terencehill [Sat, 24 Aug 2024 09:28:25 +0000 (09:28 +0000)]
Merge branch 'terencehill/antispam_stuff' into 'master'

Make cmd and chat anti spam systems work during timeouts

See merge request xonotic/xonotic-data.pk3dir!1334

4 months agoTransifex autosync
Rudolf Polzer [Sat, 24 Aug 2024 05:23:16 +0000 (07:23 +0200)]
Transifex autosync

4 months agoShownames: restore an early alpha check that was made exclusive to CTS by mistake...
terencehill [Fri, 23 Aug 2024 22:11:24 +0000 (00:11 +0200)]
Shownames: restore an early alpha check that was made exclusive to CTS by mistake in 0aa7cb88f

4 months agoTransifex autosync
Rudolf Polzer [Thu, 22 Aug 2024 05:23:15 +0000 (07:23 +0200)]
Transifex autosync

4 months agoHud editor: "Title at %s" --> "Title"
terencehill [Wed, 21 Aug 2024 14:16:07 +0000 (16:16 +0200)]
Hud editor: "Title at %s"  -->  "Title"

4 months agoTransifex autosync
Rudolf Polzer [Wed, 21 Aug 2024 05:23:16 +0000 (07:23 +0200)]
Transifex autosync

4 months agoHUD editor: fix Chat, Vote and StrafeHud panels being visible while the settings...
terencehill [Sun, 18 Aug 2024 22:50:03 +0000 (00:50 +0200)]
HUD editor: fix Chat, Vote and StrafeHud panels being visible while the settings menu of another panel is open

4 months agoTransifex autosync
Rudolf Polzer [Sun, 18 Aug 2024 05:23:14 +0000 (07:23 +0200)]
Transifex autosync

4 months agoMerge branch 'des/race_honor_tracking' into 'master'
terencehill [Thu, 15 Aug 2024 14:38:37 +0000 (14:38 +0000)]
Merge branch 'des/race_honor_tracking' into 'master'

Don't save race times if player doesn't want tracking, even if we have uid2name stored

Closes #2806

See merge request xonotic/xonotic-data.pk3dir!1336

4 months agoDon't save race times if player doesn't want tracking, even if we have uuid2name...
Des [Wed, 14 Aug 2024 12:58:18 +0000 (09:58 -0300)]
Don't save race times if player doesn't want tracking, even if we have uuid2name stored.

4 months agoTransifex autosync
Rudolf Polzer [Wed, 14 Aug 2024 05:23:20 +0000 (07:23 +0200)]
Transifex autosync

4 months agoMerge branch 'terencehill/ctf_fixes' into 'master'
terencehill [Tue, 13 Aug 2024 08:51:08 +0000 (08:51 +0000)]
Merge branch 'terencehill/ctf_fixes' into 'master'

Misc CTF fixes

See merge request xonotic/xonotic-data.pk3dir!1331

4 months agoTransifex autosync
Rudolf Polzer [Tue, 13 Aug 2024 05:23:18 +0000 (07:23 +0200)]
Transifex autosync

4 months agoFix electro not leaving decals on all walls
terencehill [Tue, 13 Aug 2024 00:34:23 +0000 (02:34 +0200)]
Fix electro not leaving decals on all walls

4 months agoRemove dead code after changes of the previous commit
terencehill [Mon, 12 Aug 2024 23:22:25 +0000 (01:22 +0200)]
Remove dead code after changes of the previous commit

4 months agoRemove optional blaster secondary attack (copy of primary attack with slightly differ...
terencehill [Mon, 12 Aug 2024 23:20:20 +0000 (01:20 +0200)]
Remove optional blaster secondary attack (copy of primary attack with slightly different settings)

Weapons using blaster as secondary attack now load settings from blaster primary

4 months agoMake so that weapons using blaster as secondary attack load settings directly from...
terencehill [Mon, 12 Aug 2024 23:19:01 +0000 (01:19 +0200)]
Make so that weapons using blaster as secondary attack load settings directly from blaster instead of loading their own blaster settings

It implements Balance Council vote 18 "Keep secondary/offhand blaster default settings (including vaporizer, ok*) the same as vanilla blaster defaults"

4 months agoSimplify REGISTER_WEAPON, now possible thanks to the new WEP_CVAR* macros
terencehill [Mon, 12 Aug 2024 22:59:46 +0000 (00:59 +0200)]
Simplify REGISTER_WEAPON, now possible thanks to the new WEP_CVAR* macros

4 months agoSwitch to using the WEP_CVAR* macros I added in the previous commit as they are more...
terencehill [Sun, 11 Aug 2024 14:05:35 +0000 (16:05 +0200)]
Switch to using the WEP_CVAR* macros I added in the previous commit as they are more versatile

4 months agoTransifex autosync
Rudolf Polzer [Mon, 12 Aug 2024 14:10:43 +0000 (16:10 +0200)]
Transifex autosync

4 months agoTransifex autosync
Rudolf Polzer [Mon, 12 Aug 2024 14:07:51 +0000 (16:07 +0200)]
Transifex autosync

4 months agoFix weapons with blaster secondary attack improperly using damage and force settings...
terencehill [Sun, 11 Aug 2024 13:04:17 +0000 (15:04 +0200)]
Fix weapons with blaster secondary attack improperly using damage and force settings of the blaster itself

4 months agoReduce code duplication in chat anti spam system
terencehill [Sat, 10 Aug 2024 10:18:22 +0000 (12:18 +0200)]
Reduce code duplication in chat anti spam system

4 months agoMake cmd and chat anti spam systems work during timeouts and make them work properly...
terencehill [Sat, 10 Aug 2024 09:05:51 +0000 (11:05 +0200)]
Make cmd and chat anti spam systems work during timeouts and make them work properly at different game speed

Chat anti spam code now works with flood time (.(flood_field)) initialized to 0, matching cmd anti spam code

4 months agoRemove cruft of an outdated system against cmd name spam (not functional because...
terencehill [Fri, 9 Aug 2024 21:27:28 +0000 (23:27 +0200)]
Remove cruft of an outdated system against cmd name spam (not functional because .nickspamtime is never set).

cmd name is already protected by spam by the sv_clientcommand_antispam system anyway

Also remove unused floodcontrol_voice* fields

4 months agoMake Domination capture message easier to translate (only the second part of the...
terencehill [Thu, 8 Aug 2024 21:33:42 +0000 (23:33 +0200)]
Make Domination capture message easier to translate (only the second part of the message is translatable). Also update notification argument descriptions

4 months agoReplace notification color codes only in custom string arguments.
terencehill [Thu, 8 Aug 2024 21:01:31 +0000 (23:01 +0200)]
Replace notification color codes only in custom string arguments.

No message uses them in basic string arguments, except for player names where they shouldn't be replaced.

Also remove a pointless CCR (color code replace) call for the race_diff argument

4 months agoRemove trailing space and " %s^BG" used for connecting different sentences from trans...
terencehill [Thu, 8 Aug 2024 15:52:18 +0000 (17:52 +0200)]
Remove trailing space and " %s^BG" used for connecting different sentences from translatable messages

4 months agoRename a variable in notif_arg_item_wepammo
terencehill [Thu, 8 Aug 2024 09:54:55 +0000 (11:54 +0200)]
Rename a variable in notif_arg_item_wepammo

4 months agoCTF: fix fire effect not stopped when flag returns to base
terencehill [Wed, 7 Aug 2024 23:07:56 +0000 (01:07 +0200)]
CTF: fix fire effect not stopped when flag returns to base

This bug was due to flags being improperly set as damageable by contents while standing at their own bases

4 months agoCTF: Fix flag returning to base on first hit if g_ctf_flag_return_time is 0 and g_ctf...
terencehill [Wed, 7 Aug 2024 22:29:32 +0000 (00:29 +0200)]
CTF: Fix flag returning to base on first hit if g_ctf_flag_return_time is 0 and g_ctf_flag_return_damage is enabled

Also default g_ctf_flag_return_time to 0 if negative

4 months agoCTF: fix waypoint healthbar not shown if g_ctf_flag_return_damage is enabled and...
terencehill [Wed, 7 Aug 2024 22:18:15 +0000 (00:18 +0200)]
CTF: fix waypoint healthbar not shown if g_ctf_flag_return_damage is enabled and g_ctf_flag_health is 0

4 months agoCTF: g_ctf_flag_health: default to 0 if negative, allow reading it during a match...
terencehill [Wed, 7 Aug 2024 22:03:13 +0000 (00:03 +0200)]
CTF: g_ctf_flag_health: default to 0 if negative, allow reading it during a match and improve cvar description

4 months agoMerge branch 'drjaska/serverlist-modified' into 'master'
Dr. Jaska [Tue, 6 Aug 2024 13:05:58 +0000 (13:05 +0000)]
Merge branch 'drjaska/serverlist-modified' into 'master'

Made servers modified via cvar changes appear in normal servers

See merge request xonotic/xonotic-data.pk3dir!1233

4 months agoMade servers modified via cvar changes appear in normal servers
Dr. Jaska [Tue, 6 Aug 2024 13:05:57 +0000 (13:05 +0000)]
Made servers modified via cvar changes appear in normal servers

4 months agoQ1BSP: improve droptofloor compatibility with Quake progs
bones_was_here [Tue, 6 Aug 2024 10:19:40 +0000 (20:19 +1000)]
Q1BSP: improve droptofloor compatibility with Quake progs

Signed-off-by: bones_was_here <bones_was_here@xonotic.au>
4 months agoMerge branch 'terencehill/floodcontrol_refactoring' into 'master'
terencehill [Tue, 6 Aug 2024 09:39:33 +0000 (09:39 +0000)]
Merge branch 'terencehill/floodcontrol_refactoring' into 'master'

Refactor flood control code to work with .cmd_floodtime initialized to 0

See merge request xonotic/xonotic-data.pk3dir!1325

4 months agoHUD: don't draw panels needing player data before it's received
bones_was_here [Tue, 6 Aug 2024 05:14:09 +0000 (15:14 +1000)]
HUD: don't draw panels needing player data before it's received

Fixes
"client VM warning: VM_CL_getstati: index(-1) is >=MAX_CL_STATS(256) or <0"
often appearing when connecting, with my hud_panel_ammo config.

It could also have been fixed by checking for (ammoType == 0) as well as
(ammoType == RES_NONE) but a many-cases fix is better than a
special-case fix.

4 months agoMerge branch 'Mario/show_all_button' into 'master'
terencehill [Mon, 5 Aug 2024 22:27:09 +0000 (22:27 +0000)]
Merge branch 'Mario/show_all_button' into 'master'

Add a menu option to show hidden gametypes

See merge request xonotic/xonotic-data.pk3dir!1322

4 months agoAdd a show all checkbox to the Create menu to list previously hidden gametypes
Mario [Mon, 5 Aug 2024 22:27:09 +0000 (22:27 +0000)]
Add a show all checkbox to the Create menu to list previously hidden gametypes

Also remove now unused mutator and weapon arena list label

4 months agoMake some recently added messages easier to translate
terencehill [Mon, 5 Aug 2024 21:59:17 +0000 (23:59 +0200)]
Make some recently added messages easier to translate

4 months agoMerge branch 'bones_was_here/teamplay5' into 'master'
bones_was_here [Mon, 5 Aug 2024 16:33:11 +0000 (16:33 +0000)]
Merge branch 'bones_was_here/teamplay5' into 'master'

selectteam, join, spec cmds: notifications, server admin features, fixes

Closes #2905 and #2702

See merge request xonotic/xonotic-data.pk3dir!1301

4 months agoImprove sv_spectate 0 notifications and description, refactor nospectators command
bones_was_here [Sat, 13 Jul 2024 15:04:57 +0000 (01:04 +1000)]
Improve sv_spectate 0 notifications and description, refactor nospectators command

The blockSpectators global is redundant.
See https://gitlab.com/xonotic/xonotic-data.pk3dir/-/merge_requests/1289

Players are now given the grace period and SPECTATE_WARNING when
sv_spectate is disabled during a game, as well as when `nospectators` is
voted.

Centreprints are added and displayed when they don't conflict with join
restriction centreprints.

4 months agojoin: display translated notifications for relevant failures
bones_was_here [Fri, 28 Jun 2024 10:06:40 +0000 (20:06 +1000)]
join: display translated notifications for relevant failures

4 months agoteamplay: display translated notifications for typical failures or state changes
bones_was_here [Fri, 14 Jun 2024 10:42:55 +0000 (20:42 +1000)]
teamplay: display translated notifications for typical failures or state changes

Fixes some uses of NOTIF_ONE where it should have been NOTIF_ONE_ONLY.

4 months agojoin queue: UI improvements and refactoring
bones_was_here [Fri, 14 Jun 2024 08:36:49 +0000 (18:36 +1000)]
join queue: UI improvements and refactoring

Fixes duplicate and redundant chatcon notifications.

Displays relevant centreprint each time the team selection GUI or +jump
are used to try to join (even if the player is already queued) for
better noob friendliness.

Always notifies the player when their team selection conflicts with that
of a queued player.

Notifies queued players to get their attention when they join as it may
take some time before another player triggers the join.

Includes the team the player actually got assigned to in the relevant
centreprint (for the cases where they had no preference, or someone else
chose their preferred team first).

Prevents SetPlayerTeam() and queuePlayer() when the player definitely
can't play (version mismatch, locked teams), fixing misleading
notifications.
Allows players to join the queue even when g_maxplayers blocks them from
joining the match, so they can tag in if someone leaves.

Fixes bug with > 2 teams where if a player with a lower entity number
queues for any available team, a player with a higher entity number
and a specific team preference could be assigned to the same team (by
adding a second pass in Join() ).

Fixes lack of "now playing" notification when a bot joins a gametype
without teams.

This required some refactoring:

Calls joinAllowed() from ClientCommand_selectteam(), passing the
team_index through to queuePlayer().  This means calling queuePlayer
from SetPlayerTeam() is no longer needed.
Uses a different logic order in joinAllowed() when the queue is enabled.

Moves the ForbidSpawn MUTATOR hook from joinAllowed() to
PutPlayerInServer(). It seemed to be in the wrong place anyway: the
player is only blocked from spawning, not from joining the match.

No longer sets the .team field when adding a player to the queue
(they're not actually on the team yet), instead calls SetPlayerTeam()
from Join() when actually spawning the queued player.

Uses the .team_selected field to pass selection conflicts to Join(), it
can't be done with a parameter because `join` and `selectteam` are
separate commands.

Moves the queue conflict detection from Player_SetTeamIndexChecked() to
queuePlayer().

Reduces TeamBalance_JoinBestTeam() callsites.

Fixes some uses of NOTIF_ONE where it should have been NOTIF_ONE_ONLY.

4 months agojoin queue: fix 2 bugs that could result in too many players on a team
bones_was_here [Sat, 13 Jul 2024 11:18:42 +0000 (21:18 +1000)]
join queue: fix 2 bugs that could result in too many players on a team

Join(): when a client queued for red, then a blue player left the team,
then a client (re)joined blue, the client queued for red was joined too
(stacking red team). Fixed by only joining queued players in Join() when
teams are currently balanced (the unbalanced cases are handled by
TeamBalance_QueuedPlayersTagIn()).

ClientKill_Now_TeamChange(): when all queued client(s) chose specific
team(s) and the last client (which skips the queue and triggers the
joins) chose autoselect from the team selection UI, it was possible they
were assigned the same team as one of the queued clients.  Fixed by
deferring the autoselect to Join() when needed/possible.