Alibek Omarov
023f6712f9
engine: client: always toggle mouse on when in console, menu or typing chat message
2022-11-16 21:14:48 +03:00
Alibek Omarov
42740149ac
engine: client: fix mouse cursor being hidden in background map
2022-11-16 21:02:41 +03:00
Alibek Omarov
c2a24fbbce
engine: client: put internal vgui shutdown AFTER HUD_Shutdown, to simulate default, external behavior
2022-11-14 20:12:10 +03:00
SNMetamorph
ae94a6aeba
engine: client: fixed client VGUI API shutdown
2022-11-14 20:09:20 +03:00
Alibek Omarov
e9da43666c
engine: client: fix loading internal vgui (thx @SNMetamorph)
2022-11-14 20:08:01 +03:00
Alibek Omarov
d27dd68072
engine: client: vgui: rework loading VGUI and probing client for internal vgui support API
2022-11-12 16:35:18 +03:00
Alibek Omarov
17d0b19f9e
engine: use generic S_USAGE macro everywhere
2022-11-10 13:18:20 +03:00
Alibek Omarov
d13f7f06e4
engine: fix framerate being capped to 60FPS with vsync, remove vid_displayfrequency cvar. Never sleep with vsync or timedemo, for accuracy
2022-11-10 13:05:03 +03:00
Alibek Omarov
616cbdb1eb
engine: client: change cl_cmdrate and cl_smoothtime default values to match GoldSrc
2022-11-10 12:11:16 +03:00
SNMetamorph
afa1d429fe
engine: client: backported enttool from old engine
2022-11-10 11:56:10 +03:00
SNMetamorph
8cbe0e5b30
engine: client: vgui: added VGui_UpdateInternalCursorState function
2022-11-08 06:39:09 +06:00
SNMetamorph
44a43c2c09
engine: client: cl_parse: minor code fix in CL_ParseLegacyServerData
2022-10-27 00:52:16 +06:00
Alibek Omarov
305b2579eb
engine: client: voice: fix crackling voice file input on low FPS
2022-10-19 01:08:39 +03:00
Alibek Omarov
1a09d297ee
engine: minimize SetCursorType calls count
2022-10-13 14:49:48 +03:00
Alibek Omarov
2d2523df4a
engine: client: touch: generalise touch emulation code
...
* fix doubleclicks and wheels in VGUI
2022-10-12 05:18:19 +03:00
Alibek Omarov
4a009c1c2c
engine: client: touch: move copypasted code from export & writeconfig into separate function
2022-09-27 14:00:18 +03:00
Alibek Omarov
69b0954007
engine: change RenderAPI's RenderGetParm return type to intptr_t to insure compatibility with 64-bit
2022-09-20 18:06:19 +03:00
Alibek Omarov
0c50e43663
engine: client: enable sound for TE_TAREXPLOSION, use same sound parameters as GoldSrc
2022-09-08 04:16:29 +03:00
Alibek Omarov
7a2ac4a9c0
engine: client: use generic particles code for blob particles (from tempentity code) only if Quake compatibility was enabled
2022-09-08 04:16:29 +03:00
Andrey Akhmichin
e6bb9d980d
engine: client: in_touch.c: make touch buttons extention-independent.
2022-09-05 11:25:52 +03:00
Alibek Omarov
4be4870982
engine: client: remove voice_codecinfo command, as Opus Custom don't give any encoder info, possibly an Opus bug
2022-08-31 19:50:31 +03:00
Alibek Omarov
19c2061831
wscript: define CUSTOM_MODES and try to link with export that only exists when CUSTOM_MODES was defined in build-time
2022-08-31 19:48:42 +03:00
Alibek Omarov
82ab06efdd
engine: client: voice: new version, move to Opus Custom codec
...
* Despite Opus Custom have strict requirements, it's more barebones, allowing us to use maximum
frame size and custom sample rate, without resampling
* Encode each frame size to network buffer, allowing smooth voice chat even in 10 FPS
* Fix possible buffer overruns, underruns and races with platform side
* Revise all usages of offset variables, samples vs bytes
2022-08-31 06:44:45 +03:00
Alibek Omarov
4b05cf4399
engine: client: better fix for notify debug messages, rely on host.allow_console variable to don't allow uninitialized console usage
2022-08-31 02:46:33 +03:00
Alibek Omarov
28001ea150
engine: client: enable notify messages in non-developer mode
2022-08-28 00:48:12 +03:00
Alibek Omarov
3e9f2df2bf
engine: client: fix incorrect mark for ConsolePrint notifications
2022-08-25 21:21:22 +03:00
Alibek Omarov
7341a6b020
engine: client: add old GoldSrc feature where ConsolePrint could print to notification zone, similar to Con_NPrintf( 0, ... )
2022-08-25 18:22:43 +03:00
Alibek Omarov
3c682507e7
engine: client: voice: notify client.dll about localplayer twice, through special loopback index and normal index
2022-08-22 11:44:13 +03:00
SNMetamorph
e9ae6d08b5
engine: client: enable interpolation of local player angles
2022-08-22 10:24:15 +03:00
SNMetamorph
9f9141823a
engine: added audio backend print to s_info command
2022-08-20 15:36:02 +03:00
Alibek Omarov
8630ef2c67
engine: client: voice: allow using inputfromfile when microphone isn't connected
2022-08-20 06:13:33 +03:00
Alibek Omarov
0b50678912
engine: client: voice: refactor, fix issues when missing mic disables voice chat, fix few possible crashes and memory leaks
2022-08-20 03:56:54 +03:00
SNMetamorph
8e48a98d48
engine: client: voice: codec quality levels changed
2022-08-19 20:47:01 +03:00
SNMetamorph
76dbefb9ec
engine: client: voice: fixed initialization checks
2022-08-19 20:47:01 +03:00
Alibek Omarov
327dcc0293
engine: client: voice: simplify code, simplify including voice.h, do not depend on opus headers globally
...
Autofix few code style mistakes
2022-08-19 05:52:53 +03:00
SNMetamorph
74707551ae
engine: client: voice: fixed hanging voice status
2022-08-19 04:14:25 +03:00
SNMetamorph
2f5f5ef0a6
engine: client: voice: fixed sound playback from file
2022-08-19 04:14:25 +03:00
SNMetamorph
f7dc9d8e72
engine: client: voice: frame size increased to 40 msec
2022-08-19 04:14:25 +03:00
SNMetamorph
a688bed79f
engine: client: cl_parse: moved buffer to stack in CL_ParseVoiceData
2022-08-18 04:46:11 +03:00
SNMetamorph
b0ff51d5a0
engine: client: voice: changed bitrate units to kbps in voice_codecinfo
2022-08-18 04:46:11 +03:00
SNMetamorph
0a6885e02d
engine: client: voice chat cvars set as privileged
2022-08-18 04:46:11 +03:00
SNMetamorph
aa5a509316
engine: client: voice: added GPL notice
2022-08-18 04:46:11 +03:00
SNMetamorph
97879430e9
engine: small code fixes related to voice chat
2022-08-18 04:46:11 +03:00
SNMetamorph
ae97eae42f
engine: client: voice: implemented automatic gain control
2022-08-18 04:46:11 +03:00
SNMetamorph
c5d7e3c783
engine: client: fixed players voice state changing
2022-08-18 04:46:11 +03:00
SNMetamorph
9bcd36cc24
engine: voice code minor refactoring
2022-08-18 04:46:11 +03:00
SNMetamorph
c6881a425f
engine: client: added support for variable voice chat quality
2022-08-18 04:46:11 +03:00
SNMetamorph
279894cfd4
engine: client: added console command voice_codecinfo
2022-08-18 04:46:11 +03:00
SNMetamorph
169ee14724
engine: client: disabled voice on legacy protocol servers
2022-08-18 04:46:11 +03:00
SNMetamorph
a254a342b1
engine: voice: minor code fixes
2022-08-18 04:46:11 +03:00
Alibek Omarov
69a9211fc9
engine: include voice.h globally
2022-08-18 04:46:11 +03:00
Velaron
9242a0a510
engine: update voice
2022-08-18 04:46:11 +03:00
Velaron
2b9e050f57
engine: voice support
2022-08-18 04:46:11 +03:00
Alibek Omarov
9d4fe707bb
engine: client: carefully check legacy server response, check info string before passing it to UI
2022-08-17 21:52:54 +03:00
Alibek Omarov
01a3321d63
engine: client: only accept server list from master servers (thanks @tyabus for idea)
2022-08-17 21:17:51 +03:00
Alibek Omarov
b8dc7494eb
engine: client: move timescale pitch apply to channel mixing
2022-08-16 00:03:44 +03:00
Alibek Omarov
314672d82c
engine: client: fix invalid playerinfo being accessed by renderer
2022-08-13 01:29:45 +03:00
Alibek Omarov
1d558b33d6
engine: client: don't let set unsupported con_charset
2022-08-13 00:58:45 +03:00
Alibek Omarov
911385d019
engine: client: fix memory leak on player disconnect
2022-08-13 00:47:04 +03:00
Alibek Omarov
3d5aa7c20c
engine: remove mistakingly placed NORETURN attributes
2022-08-05 18:05:40 +03:00
Alibek Omarov
5e4fc64430
filesystem: introduce new module, based on engine filesystem.
...
The goal is to share filesystem code between engine and
utilities and provide C++ VFileSystem interface in the future
2022-07-28 18:56:02 +03:00
Alibek Omarov
5350d88f57
public: crtlib: add quotation mark support for ParseFile, required for filesystem_stdio
2022-07-26 03:17:11 +03:00
Valery Klachkov
3ad60a0fa1
engine: fix uninitialized variable in demo parsing code, fix incorrect size counter in memory allocator
2022-07-16 16:59:41 +03:00
a1batross
ab43486ee0
engine: client: don't segfault when client wasn't loaded
2022-07-11 02:43:26 +03:00
SNMetamorph
ffe7114a47
engine: client: 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
786c408f6e
engine: client: fix sprites array size, it wasn't meant to be increased after previous commit
2022-07-01 14:12:32 +03:00
Alibek Omarov
6e031b518a
engine: client: increase limit of client sprites, lower part of it can be used only for HUD sprites
...
higher part used for client sprites
map overview sprites are loaded as normal models
thus we have equal internal engine and hud sprite indices and it fixes compatibility issues
for mods like Half-Rats Parasomnia
2022-07-01 03:41:55 +03:00
Alibek Omarov
64eb0a694d
engine: client: also drop loading plaque on toggleconsole, in case if it's stuck
2022-06-29 18:58:07 +03:00
Alibek Omarov
d46d62bf03
engine: client: drop loading plaque on second signon, remove servercount check
2022-06-29 18:57:10 +03:00
Alibek Omarov
af8febabd1
engine: client: make temp entity buffer larger in case of long textmessages
2022-06-26 15:10:21 +03:00
Alibek Omarov
85895c5311
engine: pmove: initialize trace argument in PM_TraceModel
2022-06-26 04:39:52 +03:00
SNMetamorph
afaabe26a6
engine: client: cl_netgraph: fixed netgraph position calculation in center mode
2022-06-16 00:44:23 +04:00
SNMetamorph
a68afcc672
engine: client: cl_netgraph: added kilobytes per seconds unit to in/out fields
2022-06-16 00:42:57 +04:00
SNMetamorph
d4bb5423ae
engine: client: cl_netgraph: set rendermode to transparent instead additive
2022-06-16 00:41:11 +04:00
SNMetamorph
ce8e5880e2
engine: client: cl_netgraph: added clamp for bars height
2022-06-16 00:39:48 +04:00
SNMetamorph
0cef18af86
engine: client: cl_netgraph: fixed uninitialized alpha in netcolors
2022-06-16 00:37:38 +04:00
Alibek Omarov
fa09854671
engine: client: deprecate and remove ChangeInstance menu call
2022-06-15 18:22:57 +03:00
SNMetamorph
fef0993f54
engine: client: cl_game: fixed hudGetModelByIndex function in client API ( fix #518 )
2022-06-15 13:53:53 +03:00
Alibek Omarov
40298cefb6
engine: client: don't save configs if shutdown was issued before client was initialized. Remove dead ucmd
2022-06-14 03:30:14 +03:00
Alibek Omarov
6c7d57e1eb
engine: client: move vgui deinitialization out of CL_UnloadProgs. Delete cls.initialized check in CL_Shutdown, that used to shutdown various client-side subsystems that usually have needed checks by themselves
2022-06-12 03:06:03 +03:00
Alibek Omarov
eeb170af22
engine: client: set failed status for vgui_support if we wasn't able to load one. Unload library in case of error
2022-06-09 13:41:37 +03:00
Alibek Omarov
59fba30a52
engine: IPv6 support
...
* v6 equivalent cvars
* hostname resolving for v6
* fix for nonblocking hostname resolve (inverted check)
* enabled by default, probably should be disabled for dedicated servers
2022-06-09 03:10:02 +03:00
Alibek Omarov
b82d0bad7a
engine: client: vgui: unload client DLLL if no vgui_support export was found
2022-05-30 22:41:28 +03:00
Alibek Omarov
6f36edfd16
engine: various const qualifier fixes
2022-05-29 04:22:43 +03:00
Alibek Omarov
11d4cb0f1e
engine: client: securedstub: cosmetic changes
2022-05-29 02:27:02 +03:00
Alibek Omarov
52d1383f14
engine: client: fix various useless checks, unused variables & defines, double assignments and mistypings
2022-05-25 03:50:06 +03:00
Alibek Omarov
ac40badaa5
engine: client: fix array overruns
2022-05-25 03:36:33 +03:00
SNMetamorph
641f0632ef
engine: client: fixed compilation errors on Android
2022-05-02 03:29:24 +03:00
SNMetamorph
87ceb0f9cb
engine: client: fixed checking client library for vgui_support interface export
2022-05-02 03:29:24 +03:00
SNMetamorph
cfcd58dd78
engine: client: extended VGUI API interface
2022-05-02 03:29:24 +03:00
SNMetamorph
b175d6d95f
engine: client: fixed forced text input turn off in Key_EnableTextInput
2022-05-02 03:29:24 +03:00
SNMetamorph
9c85d114e7
engine: client: fixed TriWorldToScreen behavior to match GoldSrc
2022-04-13 09:12:12 +03:00
SNMetamorph
09b7f22cee
engine: cl_frame: fixed segfault in CL_UpdatePositions
2022-04-10 16:31:02 +03:00
SNMetamorph
9515cccb94
engine: client: cl_frame: fixed position history animtime for non-brush entities
2022-04-07 21:56:37 +03:00
Alibek Omarov
df616b950d
engine: add NET_AdrToString to menu extended API, upgrade mainui submodule
2022-03-08 07:00:36 +03:00
Alibek Omarov
37cf4da136
engine: client: switch to protocol info key in detecting old engine servers
2022-03-08 07:00:36 +03:00
Alibek Omarov
668d528e3b
engine: client: delete unused function
2022-03-08 07:00:36 +03:00
Alibek Omarov
85f99c723a
engine: add sys_timescale implementation
2022-03-03 05:38:36 +03:00
Alibek Omarov
e07417aead
engine: client: fix sentence word splitted by contents inside parentheses
2022-02-28 04:29:32 +03:00
Alibek Omarov
13b36e66b3
engine: client: workaround buggy position history times going backwards in interpolation code
2022-02-25 02:12:44 +03:00
Alibek Omarov
7821f425e7
engine: client: position history indexes can't be negative, use unsigned with them
2022-02-24 05:45:41 +03:00
Alibek Omarov
f0783ddee1
engine: client: fix comparing floats in interpolation code
2022-02-24 04:51:04 +03:00
Alibek Omarov
d4d39c66fb
engine: client: fix double call to CL_ParametricMove
2022-02-24 02:49:10 +03:00
Alibek Omarov
a2d8a47376
engine: client: fix misplaced arguments in memcpy
2022-02-24 02:47:54 +03:00
Alibek Omarov
3f7773f83b
engine: client: rewrite VOX subsystem, fix spaces being taken into sentences, add tests for parser, remove dead code
2022-02-22 09:40:15 +03:00
Alibek Omarov
203afda053
engine: add render_picbutton_text flag to use mainui_cpp font renderer for rendering WON buttons
2022-02-10 02:53:35 +03:00
Bien Pham
988183a96a
engine: implement support for secured client dlls
2022-02-01 05:56:54 +03:00
Bien Pham
3a55b9cd67
engine: make pfnDrawString & pfnDrawStringReverse return width
2022-01-29 00:36:43 +03:00
Alibek Omarov
1bf08cc2c3
engine: touch: fix button deletion
2022-01-27 17:10:50 +03:00
Alibek Omarov
0fa1b4f944
engine: client: refactor tempentity parsing, make multipliers close to GoldSrc
2022-01-27 03:32:52 +03:00
Alibek Omarov
56103a90eb
engine: client: limit token size in client dll parsefile to 1024 (GoldSrc value)
2022-01-27 03:32:52 +03:00
Alibek Omarov
0027678a56
engine: client: print which tempentity type was overflowed
2022-01-27 03:32:52 +03:00
Alibek Omarov
df4f21680c
engine: client: apply local client effects only if it wasn't rejected by clientdll
2022-01-14 16:18:09 +03:00
Alibek Omarov
2c1b862654
engine: client: ignore EF_BRIGHTFIELD for local client
...
It must be OK, because GoldSrc don't call similar function for local client
instead adds only flashlight and muzzleflash effects.
By adding this check, behavior must be close enough
2022-01-14 16:16:13 +03:00
Alibek Omarov
22e770e4d4
engine: client: disable viewsize without requested Quake compatibility
2022-01-14 01:18:22 +03:00
Alibek Omarov
aa5594d11f
engine: client: don't let servers clear console
2022-01-14 00:03:05 +03:00
Alibek Omarov
c3513b1615
engine: input: clean m_enginemouse leftovers, always enable SDL relative mouse mode for our input interface
2022-01-13 16:18:23 +03:00
Alibek Omarov
abbd0f92a4
engine: input: fix incorrect client notifying about mouse button states
2022-01-13 15:52:59 +03:00
Alibek Omarov
a2f741fe8a
engine: platform: sdl: try to fix 1.2 build
2022-01-04 08:39:11 +03:00
Alibek Omarov
d0a39ef492
engine: client: rework mouse input again, do what GoldSrc does, minimize SDL mouse calls
2022-01-04 08:39:11 +03:00
Alibek Omarov
f63d2d747f
vgui: remove unneeded SDL calls, remove unused VGUI API function, fix mouse cursor visibility
2022-01-04 08:39:11 +03:00
Alibek Omarov
7e687b45bb
engine: client always uses SDL (virtually) on non-Win32 platforms
2022-01-04 08:39:11 +03:00
Alibek Omarov
284eeea3c3
engine: client: rework mouse input, use IN_MouseEvent for clientdll, don't emit mouse events when mouse is visible or touch emulate is used
2022-01-04 08:39:11 +03:00
Alibek Omarov
4ae608913b
console: fix Home and End buttons or equivalent hotkeys to always set start or end of input buffer
2022-01-04 03:01:59 +03:00
Alibek Omarov
3351ecd754
console: ignore whitespace commands on history, ignore backslash
2022-01-04 02:31:07 +03:00
Alibek Omarov
46fd27eb14
console: remove prepending backslashes
...
This is a leftover from Quake, where the console and chat were
in fact same entity. Because Xash splits it, there is no need
in prepending backslashes to separate commands from chat messages
2022-01-04 02:14:34 +03:00
Alibek Omarov
947b94d29f
engine: client: delete unused test data :)
2021-12-31 04:10:06 +03:00
Alibek Omarov
f007374866
engine: client: rewrite console history
...
Fix duplicate and empty lines saved into history
Fix backup copied too early
Add tests
2021-12-31 03:49:11 +03:00
Alibek Omarov
4f89288ccf
common: cleanup port.h
2021-12-23 19:17:11 +03:00
Alibek Omarov
2df27e14a8
engine: client: make connect command available through stufftext, for future use
2021-12-23 01:25:03 +03:00
Alibek Omarov
a777e7c80d
engine, ref: add sprite and studio cvars to shared cvars list
2021-12-06 05:17:25 +03:00
Alibek Omarov
1350fd0b52
engine: ref: use right Cvar_Get function :)
2021-12-06 05:02:30 +03:00
Alibek Omarov
d7db48ce4b
engine, ref: create shared cvars list, register them at engine side, make a generic macro to declare, define and get all pointers at ref side
2021-12-06 04:57:32 +03:00
SNMetamorph
f726793711
engine: client: cl_main: fixed compilation error
2021-11-23 13:10:39 +03:00
Alibek Omarov
2356bc9905
engine: client: escape keybindings and rcon commands
2021-11-23 05:23:38 +03:00
Alibek Omarov
9159d406e3
engine: client: fix #673
2021-11-23 05:23:38 +03:00
Alibek Omarov
1de1852409
engine: client: fix build after merging into one ParseCvarValue function
2021-11-23 05:23:38 +03:00
Alibek Omarov
664506f79e
engine: client: touch security, add unprivileged for buttons added from server, force it and client flags
2021-11-23 05:23:38 +03:00
Alibek Omarov
06eb6838a9
engine: client: protect protected, privileged and server only cvars from server query
2021-11-23 05:23:38 +03:00
Alibek Omarov
f2a9f805b8
engine: client: redefine some cvars as filterable
2021-11-23 05:23:38 +03:00
Alibek Omarov
c6648a69ba
engine: client: protect messagemode from command injection too
2021-11-23 05:23:38 +03:00
Alibek Omarov
3203d9a043
engine: client: wire Cbuf_AddFilteredText to svc_stufftext commands
2021-11-23 05:23:38 +03:00
Alibek Omarov
36702aafe7
engine: rename FCVAR_LOCALONLY and CMD_LOCALONLY into FCVAR_PRIVILEGED and CMD_PRIVILEGED
2021-11-23 05:23:38 +03:00
Alibek Omarov
c96f10d40b
engine: client: restrict LOCALONLY cvars regardless of cl_filterstuffcmd value
2021-11-23 05:23:38 +03:00
Alibek Omarov
8a9231628e
engine: restrict potentially harmful or related to user settings engine cvars
2021-11-23 05:23:38 +03:00
Alibek Omarov
94dc74a37f
engine: restrict potentially harmful engine commands
2021-11-23 05:23:38 +03:00
Alibek Omarov
c79a649d97
engine: client: implement pfnFilteredClientCmd
2021-11-23 05:23:38 +03:00
SNMetamorph
c366e25a10
ref_gl: cvar gl_wgl_msaa_samples renamed to gl_msaa_samples
2021-11-23 05:17:19 +03:00
Bohdan Shulyar
8ab97fbbf0
engine: client: Add svc_exec support ( #671 )
...
* Add svc_exec support
* engine: client: add gamedir check for svc_exec
2021-11-14 00:55:15 +03:00