Alibek Omarov
a8ba9124dd
engine: server: fix -Wmaybe-uninitialized
2025-03-25 17:07:05 +03:00
Alibek Omarov
a2a3978de7
engine: server: fix erasing physinfo on client connect, when it was already set by game logic on save restore
...
Fixes issue when player loses long-jump in Half-Life on save load or level transition.
2025-03-24 23:22:19 +03:00
Alibek Omarov
eea804a4bf
engine: server: improve server op status command output
2025-03-20 05:47:24 +03:00
Alibek Omarov
ecbfdb82f4
engine: server: add requested server command status. Only expose client input devices for now, as everything else might be considered sensitive information
2025-03-20 05:46:49 +03:00
Alibek Omarov
a1950ec7b0
engine: server: tiny refactoring, make SV_CalcPing pointer to client const
2025-03-20 05:44:23 +03:00
Alibek Omarov
f9df96d70e
engine: server: fix server strings deduplication on 64-bit systems
2025-03-15 01:24:59 +03:00
Alibek Omarov
c76752cc5f
engine: server: validate uuid in protinfo, it's an md5 string
2025-03-01 22:45:01 +03:00
Alibek Omarov
fc2888e107
engine: server: fix incorrect ID string generation, hashedcdkey is already an MD5 string
2025-03-01 22:27:22 +03:00
Alibek Omarov
674b4c1506
engine: server: reorder sv_client_t struct for better memory efficiency, remove unused fields
2025-03-01 22:07:05 +03:00
Alibek Omarov
cddd50f1e9
engine: server: completely erase sv_client_t on client connect, so we always start from scratch for every user
2025-03-01 22:07:05 +03:00
Alibek Omarov
6c9d5bc1fb
engine: server: cleanup penalties and warns for new players
2025-03-01 16:03:39 +03:00
Alibek Omarov
29c8818557
engine: server: do not continue processing command if the player was kicked during it (for example, by speedhack prevention)
2025-03-01 14:58:15 +03:00
Alibek Omarov
cb5dffd554
engine: server: don't bother printing about unsupported connectionless packets if sv_log_outofband is set to 0
2025-02-26 17:06:33 +03:00
Alibek Omarov
b1eb3390e3
engine: server: let server dll to register it's own showtriggers cvar
2025-02-24 06:41:11 +03:00
Alibek Omarov
448dc720ed
engine: server: immediately exit from SV_GetChallenge on unknown type addresses
2025-02-15 09:31:20 +03:00
Alibek Omarov
9c50288bbb
engine: server: rewrite challenge generator to something more simple: salted MD5 of an IP address
...
The idea was taken from ReHLDS project.
2025-02-15 08:01:44 +03:00
Alibek Omarov
c5d4af802c
engine: server: even if user set non-integer value for cl_updaterate, clamp it to sv_minupdaterate
2025-02-15 08:01:44 +03:00
Alibek Omarov
340a8b5e0c
engine: server: fixes for userinfo change ratelimiting
...
* Add pentalty earlier
* Increase disallowed timewindow according to penality multiplier
* Allow first change even if it falls into ignore timewindow
2025-02-15 08:01:44 +03:00
Alibek Omarov
bc1b86c19c
engine: server: refactor SV_ConnectClient, simplify LAN IP check
2025-02-15 08:01:44 +03:00
xiaodo
fdc2ed8093
engine: server: pfnClientCommand and pfnQueryClientCvarValue should execute on unspawned player
2025-02-14 20:52:45 +03:00
xiaodo
a27375d1f5
engine: server: cmds: fix kick command incorrect argc
2025-02-14 20:52:45 +03:00
Alibek Omarov
ca9a3f0491
engine: server: fix out of bounds write in SV_FindTouchedLeafs
2025-02-11 21:15:54 +03:00
Alibek Omarov
67c73bdcbe
engine: server: remove impulse 204, it's not used anywhere
...
Thanks @tyabus for reminding me about this feature.
2025-02-09 17:16:05 +03:00
Alibek Omarov
eb51d17cd2
engine: server: enable sv_zmax clamping back to avoid overflowing zmax value encoded in delta
2025-02-08 16:38:11 +03:00
Alibek Omarov
add02dc6f9
engine: fix potential UB in netadr_t
2025-02-06 20:54:18 +03:00
Alibek Omarov
c86c45503f
engine: replace few more Xash3D strings by XASH_ENGINE_NAME macro
2025-01-23 10:33:22 +03:00
Alibek Omarov
1e075d25b7
engine: make LZSS compression optional for 49 protocol, disable it for local clients (singleplayer)
2025-01-22 21:18:19 +03:00
Alibek Omarov
375998dffb
Cleanup xash3d_types.h from engine-specific macros and types
2025-01-22 15:10:18 +03:00
Alibek Omarov
2065ef143a
engine: server: fix ent_create under PrimeXT
2025-01-21 16:09:56 +03:00
Alibek Omarov
1d4f7b2f94
engine: server: slight refactoring, make SV_ModelHandle inlined, move PlayerIsFrozen to sv_client, fix packet loss data type
2025-01-14 12:09:23 +03:00
Alibek Omarov
38c82a3f76
engine: don't bother calculating crc32 for local clients for better performance (thanks @tyabus for the idea)
2025-01-14 11:55:28 +03:00
Alibek Omarov
69341e36a3
public: expose commit and branch as global variables instead of functions
2025-01-13 20:02:59 +03:00
Alibek Omarov
a0b46da04b
engine: consolidate all box clipnodes used in studio models, pmove and server in a single place
2025-01-09 08:02:39 +03:00
Alibek Omarov
8a41be9d47
engine: server: finally, make a union for large leaf indices in edict_t so we can run bsp2 maps without recompiling
2025-01-09 08:02:39 +03:00
Alibek Omarov
47aff9e30b
engine: hack mnode_t struct so we can have 24-bit face and children indices to support BSP2 format in runtime
2025-01-09 08:02:39 +03:00
Alibek Omarov
734c07ddab
engine: split clipnodes struct into two with 16-bit indicies and 32-bit indicies to support BSP2 format in runtime
2025-01-08 14:46:07 +03:00
Alibek Omarov
9811988cce
engine: server: set mapname globals field before making first call into DLL, as some mods tend to read it too early
2024-12-26 02:50:30 +03:00
Alibek Omarov
48bdd4238e
engine: always include reason to server shutdown
2024-12-26 02:13:13 +03:00
Alibek Omarov
65750f0cf3
engine: server: hack save fields that use types unsupported by Half-Life Unified SDK through array types
2024-12-26 00:36:28 +03:00
Alibek Omarov
72d0d70587
engine: server: get rid of NULL sentinels at the end of arrays
2024-12-22 07:12:32 +03:00
Alibek Omarov
a834f4996f
engine: move client adding functions to their appropriate subsystems and make them static. Make in-engine functions inlined.
2024-12-20 05:47:46 +03:00
Alibek Omarov
7f2ebd1b5e
engine: server: add command sv_list_messages to print all registered user messages
2024-12-20 02:37:38 +03:00
Alibek Omarov
68b2d9f269
engine: server: fix possible message number inconsistency if server requested it twice
2024-12-20 02:37:01 +03:00
Alibek Omarov
93c5853356
engine: server: merge SV_FindBestBaseline for normal entities and static entities into single function
2024-12-18 06:57:43 +03:00
Alibek Omarov
ca0c5f929a
engine: slight refactoring of lightstyle handling functions
2024-12-17 17:04:26 +03:00
Alibek Omarov
75adb2e686
engine: server: for entities physics code directly use cvar values rather than movevars. Leave movevars to player movement only
2024-12-08 01:39:24 +03:00
Alibek Omarov
0a85734ae7
engine: server: avoid useless copying in SV_GetClientIDString for bots or local clients
2024-12-05 19:49:51 +03:00
Alibek Omarov
f7062498c2
engine: turn old pfnGetGameDir behavior into a bugcomp flag get_game_dir_full
...
This function is kinda nasty, some mods (like old RCBot builds) expect a slash,
some newer mods (like Sandbot) doesn't. To preserve compatibility with both old
and new mods, just add it as bug compatibility flag.
2024-12-05 18:14:15 +03:00
Alibek Omarov
18a973d4f2
engine: server: always set sv_background to zero on server shutdown rather than on server dll unload
2024-12-03 21:02:37 +03:00
Alibek Omarov
38ef16b08b
engine: server: do not unload server library on win327
2024-12-01 11:21:02 +03:00