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
Alibek Omarov
6ef76fe665
engine: server: fix bots are counted as real players
2022-08-13 22:46:20 +03:00
SNMetamorph
5b97c2135a
engine: server: fixed "wrong version" spamming in NAT bypass mode ( fix #953 )
2022-08-10 04:11:17 +03:00
SNMetamorph
a5ba43ea39
engine: fixed vulnerability in NAT bypass mechanism
2022-08-02 18:01:28 +03:00
Alibek Omarov
c326853617
engine: server: restore original PEntityOfEntIndex function, but still bug-compatible with GoldSrc
2022-07-21 01:52:10 +03:00
Alibek Omarov
a2d11f670a
engine, public: fix float precision issues in mathlib and monster navigation code
2022-07-13 19:26:38 +03:00
SNMetamorph
d8724f0be4
engine: common: net_ws: disabled read-only flag for ip cvar
2022-07-10 18:28:06 +03:00
SNMetamorph
fce3959d15
engine: server: added "c" command to SV_ConnectionlessPacket
2022-07-10 18:28:06 +03:00
SNMetamorph
cf84ad12f1
engine: server: backported NAT bypass feature
2022-07-10 18:28:06 +03:00
SNMetamorph
8f91830997
engine: added changeport parameter for NET_Config
2022-07-10 18:28:06 +03:00
Alibek Omarov
f0a856d9c8
engine: server: fix writing message size for engine messages, as it's expected to be 2-bytes
2022-06-26 15:05:06 +03:00
Alibek Omarov
85895c5311
engine: pmove: initialize trace argument in PM_TraceModel
2022-06-26 04:39:52 +03:00
Alibek Omarov
c076f4ff8e
engine: common: add generic trace_t initialize function
2022-06-26 04:39:15 +03:00
Alibek Omarov
5524aaae1e
engine: server: fix server dll leak when no map was loaded
2022-06-12 03:07:09 +03:00
Alibek Omarov
2b8b3e1993
engine: server: new IP filter, rewritten with IPv6 in mind
2022-06-09 03:10:02 +03:00
Alibek Omarov
6f36edfd16
engine: various const qualifier fixes
2022-05-29 04:22:43 +03:00
Alibek Omarov
8445567ab4
engine: server: remove unused arguments passed to Con_Printf
2022-05-29 02:27:39 +03:00
Alibek Omarov
db48d0ded7
engine: server: fix useless double assignment
2022-05-29 01:59:15 +03:00
Alibek Omarov
0d195ee6fe
engine: server: fix output of maps command
2022-05-29 01:29:51 +03:00
Alibek Omarov
5e4996b119
engine: server: fix bot count
2022-05-28 22:16:08 +03:00
Alibek Omarov
33d79ddb24
engine: server: fix possible array overruns
2022-05-25 17:57:47 +03:00
Alibek Omarov
51526948c0
engine: server: make PEntityOfEntIndex bug-compatible with GoldSrc
...
Add new undocumented GoldSrc eiface function, PEntityOfEntIndexAllEntities,
a bug-free version of PEntityOfEntIndex
Ref: https://github.com/ValveSoftware/halflife/issues/2272
2022-05-21 03:03:59 +03:00
SNMetamorph
22815d2784
engine: server: sv_main: added status line for dedicated server console
2022-04-06 15:17:15 +03:00
SNMetamorph
d7431783d4
engine: sv_save: added entity_state_t->startpos to save fields
2022-04-06 14:28:13 +03:00
Alibek Omarov
c8410f7e46
engine: server: don't issue an assert on invalid client names
2022-04-02 13:36:53 +03:00