Alibek Omarov
f5b9826fd9
engine: common: net_encode: directly access delta description struct than searching for it every time
2023-06-27 19:56:32 +03:00
Alibek Omarov
4bbd1e59a4
engine: server: static-ize world functions
2023-06-19 07:47:38 +03:00
Alibek Omarov
0809453b2c
engine: server: static-ize sv_query functions
2023-06-19 07:39:00 +03:00
Alibek Omarov
8350d81c18
engine: server: static-ize sv_pmove functions
2023-06-19 07:38:18 +03:00
Alibek Omarov
57499dea33
engine: server: static-ize sv_phys functions, set GAME_EXPORT attribute for PhysicAPI functions
2023-06-19 07:32:22 +03:00
Alibek Omarov
6b223f1325
engine: server: static-ize functions in sv_game. Set GAME_EXPORT attribute to server GameAPI functions
2023-06-19 07:11:49 +03:00
Alibek Omarov
01ad3dda2a
engine: server: escape rcon arguments before passing it to command buffer, also use more efficient concatenation
2023-06-18 04:44:28 +03:00
Alibek Omarov
2a05624615
engine: server: keep silence in case of unset or invalid rcon password
2023-06-18 04:30:21 +03:00
Alibek Omarov
16c87ae2c9
engine: platform: reorganize UpdateStatusLine, make it shared but implemented only if platform has SetStatus. Implement SetStatus for systemd/Linux
2023-06-16 08:43:16 +03:00
Alibek Omarov
c7d748e8df
engine: server: add sv_log_outofband cvar that controls whether connectionless packets should be printed or not
2023-06-16 07:19:17 +03:00
Alibek Omarov
c966589a50
engine: server: static-ize few game API functions, set GAME_EXPORT attribute
2023-06-15 19:22:13 +03:00
Alibek Omarov
4c02c25506
engine: server: do not assert if SetFatPVS/PAS were called without active player
...
Fixes issues with POD-Bot based bots.
2023-06-15 19:17:34 +03:00
Alibek Omarov
a4997d0647
engine: server: port old engine's fullupdate ratelimit, but simplify it
2023-06-15 18:09:59 +03:00
Alibek Omarov
243c3cc80f
engine: server: port old engine's userinfo penalty
2023-06-15 04:46:22 +03:00
Alibek Omarov
9c62fa901f
engine: server: pregenerate CRC table and testpacket data
2023-06-14 00:35:07 +03:00
jeefo
61c75b9809
engine: server: log: use S_USAGE in logaddress for consistency with existing code
2023-06-11 16:28:36 +03:00
jeefo
868d10a842
engine: server: log: allow to disable logaddress without turning off logs completely
2023-06-11 16:28:36 +03:00
jeefo
699f3579fe
engine: server: log: fix log off command not disabling logging to console ( fixes #1340 )
2023-06-11 16:28:36 +03:00
jeefo
873ce0ce48
engine: server: query: A2S_PLAYER response should contain bots and normal players
2023-06-11 14:14:59 +03:00
Alibek Omarov
278ff22ba9
engine: server: query: use common SV_GetPlayerCount, fix random styling issues
2023-06-10 02:47:52 +03:00
jeefo
d9ef1d4608
server: implement correct answers to TSourceEngineQuery server queries
...
* count bots as clients as in goldsrc
* handle source-style packets after xash's built-in packets to not interfere with them
2023-06-10 02:06:45 +03:00
Alibek Omarov
f49a2bc8f3
engine: server: move pfnWriteString character replacement hack to the ALLOC_STRING, the same way as GoldSrc does
2023-05-29 14:40:54 +03:00
Alibek Omarov
9e0d389d9e
engine: server: moved server cvars to static allocation
2023-05-27 21:52:58 +03:00
Alibek Omarov
4ce2475602
engine: common: move network cvars to static allocation
2023-05-27 21:52:58 +03:00
Alibek Omarov
214fc7e827
engine: common: move host cvars to static allocation
2023-05-27 21:52:58 +03:00
Alibek Omarov
5627dbbf34
engine: server: greatly simplify pfnWriteString implementation, it shouldn't modify input string
2023-05-27 20:02:09 +03:00
Alibek Omarov
275cd73ade
engine: server: do not trigger speedhack detection for fakeclients
2023-05-24 00:36:54 +03:00
Alibek Omarov
fbd7d8f58a
engine: server: use sv_speedhack_kick cvar value as a number of speedhack warns before automatic kick
...
Thanks to @tyabus for suggestion
2023-05-19 04:49:29 +03:00
Alibek Omarov
3415185dde
engine: server: implement simple anti-speedhack
2023-05-19 04:44:42 +03:00
Alibek Omarov
551ea71906
engine: server: make generic function to kick players with a reason
2023-05-19 04:44:42 +03:00
Alibek Omarov
bd3dc71f39
engine: server: refactor banid, explicitly does not allow ban using userid for now
2023-04-28 16:24:41 +03:00
Alibek Omarov
ec2951cf45
engine: add size argument to COM_Default/ReplaceExtension calls
2023-04-26 05:20:45 +03:00
Alibek Omarov
8c7db8499f
engine: add size argument to COM_FileBase calls
2023-04-26 05:20:45 +03:00
Alibek Omarov
8f207362a5
public: remove Q_sprintf, and patch all code that used it to use Q_snprintf instead
2023-04-26 05:20:45 +03:00
Alibek Omarov
b16fa8eddc
public: remove Q_strcat and Q_strcpy, and patch the code that uses it
2023-04-26 05:20:45 +03:00
Alibek Omarov
096ee34f67
public: remove Q_vsprintf, replace by proper Q_vsnprintf proper calls
...
Fixes weird off by one error caused by glibc updates? I didn't tracked
what causes it exactly but replacing it seems to work. Anyway, we should
remove all 99999 hacks in libpublic.
2023-04-23 18:19:28 +03:00
Alibek Omarov
c24a1fafc5
engine: add missing HPAK_CheckSize/Integrity calls
2023-04-03 06:04:48 +03:00
Alibek Omarov
d8355a651f
engine: add missing Sequence_Init and Sequence_OnLevelLoad calls
2023-04-03 04:12:47 +03:00
Alibek Omarov
597027277c
engine: server: remove some totally unused functions
2023-04-03 03:12:52 +03:00
Alibek Omarov
01e0542223
engine: server: move master announce logic to masterlist, keep unique heartbeat challenge and heartbeat timer for each master
2023-04-03 00:57:47 +03:00
Alibek Omarov
892e5c59eb
engine: server: convert public_server cvar to static allocation
2023-04-02 22:48:47 +03:00
SNMetamorph
eac8c116a8
engine: server: sv_init: compiling error fix & minor cleanup
2023-03-20 16:29:43 +03:00
SNMetamorph
a03019f5e4
engine: server: sv_init: enabled handling sound resources specifically
...
This is for timely precaching on client side. Otherwise, files are being downloaded to client, but not precached immediatly after it, and therefore causing a late precaching of sound (obvious, this is bad)
2023-03-20 16:29:43 +03:00
Alibek Omarov
a81fa84321
engine: server: replace some obvious va uses to temp buffer and Q_snprintf
2023-03-13 06:00:38 +03:00
Alibek Omarov
5ef97ae99e
engine: convert Info_SetValueForKey with va to Info_SetValueForKeyf
2023-03-13 05:37:45 +03:00
Alibek Omarov
d667845777
engine: convert Cbuf_AddText with va to Cbuf_AddTextf
2023-03-13 05:31:27 +03:00
Alibek Omarov
6b62f9c1b9
engine: convert Cvar_Get with va to Cvar_Getf
2023-03-13 05:19:32 +03:00
Alibek Omarov
ba1cf25314
engine: convert MSG_WriteString with va to MSG_WriteStringf
2023-03-13 05:13:52 +03:00
fgsfds
97a7de3377
engine: server: remove duplicate registration for sv_autosave
2023-03-11 07:09:18 +03:00
Alibek Omarov
48ca8f9a70
engine: server: fix call to non existent function, in this tree it's called IsMasterAdr
2023-03-02 17:36:56 +03:00
Alibek Omarov
474833a3bf
engine: server: send heartbeats to master server if sv_nat is active, despite public cvar value
2023-03-01 15:57:30 +03:00
Alibek Omarov
602f23fbdf
engine: server: check if we got info request from master server, that acts as a bridge for NAT servers
2023-03-01 15:57:30 +03:00
Alibek Omarov
375c06400c
engine: server: avoid unaligned access in pfnMessageEnd
2023-02-17 22:48:56 +03:00
Alibek Omarov
0984368a31
engine: server: GoldSrc compliant pfnServerExecute(), don't execute config.cfg for server!
2023-02-11 07:22:04 +03:00
Alibek Omarov
fccf044976
engine: initialize network buffers used on player connect and after
2023-02-09 17:57:45 +03:00
fgsfds
ee370ea007
Merge branch 'master' of https://github.com/FWGS/xash3d-fwgs into switch_newer
2023-02-07 17:14:47 +01:00
fgsfds
15ba932046
engine: server: add sv_autosave cvar
...
* a1ba: added FCVAR_PRIVILEGED just in case
2023-02-06 00:05:20 +03:00
fgsfds
6557ac7fb4
server: add sv_autosave cvar
2023-02-05 02:29:22 +01:00
fgsfds
25a1cb8ce7
Nintendo Switch support (again)
2023-02-05 02:09:32 +01:00
Alibek Omarov
f7d4e5a2ea
engine: server: don't show GAMESAVED message in autosaves, small refactoring
2023-01-31 07:16:08 +03:00
Alibek Omarov
6df25392b8
engine: server: redirect special sounds, detected by leading asterisk, into CHAN_STREAM
...
In GoldSrc this magic symbol means that we should not override channel this
sound is playing on. Originally handled on client but for both static and dynamic sounds
so let's redirect channel on server side instead.
2023-01-27 06:19:31 +03:00
Alibek Omarov
de84df99f3
engine: fix functions returning void returning void value
2023-01-14 10:58:03 +03:00
Alibek Omarov
6ac3156a82
engine: fix discarded const pointer qualifier in PM_HullPointContents
2023-01-14 10:57:22 +03:00
Alibek Omarov
2479d28cd5
engine: remove useless pfnHullPointContents wrapper
2023-01-06 00:38:05 +03:00
Alibek Omarov
787d3bc5dd
engine: share playermove ClearPhysEnts function
2023-01-06 00:28:24 +03:00
Alibek Omarov
e305b81df0
engine: merge PM_TraceTexture into PM_TraceTexturePmove
2023-01-05 23:59:31 +03:00
Alibek Omarov
4cb109abe0
engine: make playermove funcs truly shared between client and server
2023-01-05 23:50:42 +03:00
Alibek Omarov
df1c9a5029
engine: simplify blue shift swapped lump check, change TestBmodelLumps to avoid reading past mod buffer
2023-01-03 07:01:39 +03:00
Alibek Omarov
aa3a0fa392
engine: server: increase infostring size in SV_Info allowing longer hostnames but try to cut off if it's even longer than that
2023-01-03 04:01:53 +03:00
Andrey Akhmichin
12bb0ca44b
engine: server: Fix broken description for saves.
2022-12-25 04:26:00 +03:00
Andrey Akhmichin
9450c08eec
engine: server: simplify strings operations.
2022-12-21 03:26:11 +03:00
Alibek Omarov
cd813bbfbe
engine: server: do not apply sound precache check for sentences, as they may start with 0 index
2022-12-13 11:12:08 +03:00
Alibek Omarov
a3ef6c955c
engine: don't double register rcon_password cvar
2022-12-12 08:13:24 +03:00
Alibek Omarov
60e7a7aa23
engine: server: set correct flags for rcon_ cvars on server
2022-12-12 08:05:55 +03:00
Alibek Omarov
e1431e1040
engine: server: add rcon_enable cvar to control whether server should accept remote commands
2022-12-12 08:02:56 +03:00
Alibek Omarov
e48133bf4b
engine: server: fix sv_log output for enttools usage
2022-12-08 05:40:36 +03:00
Alibek Omarov
7469d6a248
engine: server: implement server-to-master challenge extension, to secure server from IP spoofing
2022-12-07 23:39:57 +03:00
Alibek Omarov
859f36afce
engine: server: remove Master_Add call in ActivateServer, server will announce itself through heartbeat
2022-12-07 23:14:34 +03:00
Alibek Omarov
1d8acc16f1
engine: server: give master server a small time window to reply (by default 4000 ms, should be enough even when master server is overloaded)
2022-12-06 20:28:44 +03:00
Andrey Akhmichin
2454594a18
engine: server: simplify strings operations.
2022-12-04 22:03:48 +03:00
Alibek Omarov
d9a245dcb5
engine: reset cheat cvars on remote games
2022-12-01 02:44:01 +03:00
Alibek Omarov
b6bd4bc6f8
engine: server: precisely set client connected time after they were spawned
2022-11-25 05:45:20 +03:00
Alibek Omarov
3da736a1eb
engine: server: try to solve issue when server dll has no voice mgr
2022-11-17 21:06:15 +03:00
Alibek Omarov
64e97124c3
Merge master to ipv6
2022-11-17 19:34:46 +03:00
Alibek Omarov
dd881d3da9
engine: server: remove duplicate function
2022-11-16 23:37:26 +03:00
Alibek Omarov
7b74015c4d
engine: server: check if player can hear other before sending voicedata
2022-11-16 20:59:18 +03:00
SNMetamorph
32372654c2
engine: server: sv_client: fixed working ent_create command on XashXT/PrimeXT
2022-11-11 16:12:56 +03:00
Alibek Omarov
17d0b19f9e
engine: use generic S_USAGE macro everywhere
2022-11-10 13:18:20 +03:00
SNMetamorph
5d73c6cb84
engine: server: backported enttools from old engine
2022-11-10 11:56:10 +03:00
Alibek Omarov
5678d9a253
engine: server: support MAP_ANON synonym for MAP_ANONYMOUS, disable allocating string pool near server library for OSX
2022-09-12 08:42:50 +03:00
Alibek Omarov
24763f9b07
engine: server: request client to use Opus Custom codec
2022-08-31 06:54:58 +03:00
Alibek Omarov
f633b3dbf6
engine: increase MAX_INIT_MSG to 192 kilobytes limit
...
* also avoid magic number in sv_client.c
2022-08-27 22:13:21 +03:00
Alibek Omarov
905bbf1515
engine: server: read full voicedata message even if voice is disabled server wide
2022-08-19 22:22:40 +03:00
Alibek Omarov
c5dbbea9ef
engine: server: drop bots fake ping to zero
2022-08-19 04:33:41 +03:00
SNMetamorph
97879430e9
engine: small code fixes related to voice chat
2022-08-18 04:46:11 +03:00
SNMetamorph
8d0209b122
engine: server: added support for variable voice chat quality
2022-08-18 04:46:11 +03:00
Velaron
2b9e050f57
engine: voice support
2022-08-18 04:46:11 +03:00
Alibek Omarov
0d2552c3f6
engine: server: prevent DoS through master server query
2022-08-17 21:23:08 +03:00
Alibek Omarov
b3c9637422
engine: server: send server info to all master servers
2022-08-17 21:18:16 +03:00
Alibek Omarov
d202a6c572
engine: server: emulate pfnPEntityOfEntIndex bug only with explicitly enabled GoldSrc bug compatibility
2022-08-15 06:00:00 +03:00