Commit Graph

994 Commits

Author SHA1 Message Date
Alibek Omarov 606b5354e6 engine: filesystem: fix loading ZIP files 2022-01-13 17:46:54 +03:00
Alibek Omarov e29dcb4125 engine: filesystem: accept ZIP files with zip extension, do not assert with NULL free in Zip_Close 2022-01-13 16:44:45 +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 f9d0fba05f wscript: remove duplicated branches diagnostic for good 2022-01-04 09:01:08 +03:00
Alibek Omarov 1ffe050205 engine: print only command name in Unknown command message, rather than a full line 2022-01-04 09:01:08 +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 01b2266b7e engine: net_encode: minor code style fix 2022-01-04 04:30:47 +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 295adcf222 engine: con_utils: don't also prepend backslash in autocompletion~ 2022-01-04 02:31:41 +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 210137c325 engine: increase model limit to the possible maximum without breaking the protocol 2022-01-03 23:07:33 +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 7cb06956c2 engine: platform: win32: fix compile 2021-12-28 00:16:06 +03:00
Alibek Omarov ebfa8e6ffc engine: platform: android: fix compile 2021-12-27 03:19:50 +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 764ef93984 common: add fs_size_t typedef, for read()/write() return value 2021-12-23 01:21:33 +03:00
Alibek Omarov d8b3ab4dcc engine: filesystem: fix unused result warnings 2021-12-22 05:03:06 +03:00
Alibek Omarov 08e72bad35 engine: crashhandler: clean up code 2021-12-22 05:02:34 +03:00
Alibek Omarov 7e574ea42e engine: filesystem: do not create folders for files in rodir mode 2021-12-22 01:52:47 +03:00
Alibek Omarov 0963e05716 engine: restore lumps after swapping them for blue shift maps
Mod_TestBmodelLumps may modify srclumps data, which is essential for
brush model loader. BlueShift maps have swapped lumps for some reason
Restoring them to default is fix for now
2021-12-20 18:12:36 +03:00
Alibek Omarov ca3544d559 engine: server: don't assert for NULL player in FatPAS/PVS if we don't need it 2021-12-18 03:32:40 +03:00
Alibek Omarov 37aa5b1e99 engine: gamma: use FBitSet 2021-12-08 20:28:30 +03:00
SNMetamorph aa07dab8ab engine: added feature flag ENGINE_LINEAR_GAMMA_SPACE 2021-12-08 20:27:02 +03:00
Alibek Omarov e0efe0aa23 engine: remove emboss filter. There seems no real use for it. 2021-12-07 09:09:45 +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
Alibek Omarov 293482fbd5 engine: FCVAR_GLCONFIG are not readonly anymore. To make truly readonly cvar for renderer, one must apply FCVAR_READ_ONLY flag 2021-12-06 03:56:18 +03:00
Alibek Omarov 07f1f7ded1 engine: launcher: use our Q_strncpy instead of standard strncpy 2021-12-03 09:41:58 +03:00
Alibek Omarov 1cac321c00 engine: enable filtered command buffer for dedicated to pass the tests 2021-12-03 09:41:23 +03:00
Alibek Omarov aa7bfb4819 engine: check for non-standard alloca header 2021-12-03 09:22:40 +03:00
Alibek Omarov 0c18a06946 engine: sequence: use Q_strncpy instead of standard strcpy 2021-12-03 09:22:40 +03:00
Alibek Omarov 24edcf7d9e engine: swap lumps back after they were swapped for blue-shift maps 2021-11-29 16:28:42 +03:00
Alibek Omarov c00e77c02e engine: fix const qualifier discard 2021-11-27 05:27:45 +03:00
Alibek Omarov 25c0557f7f engine: platform: sdl: fix building with SDL1.2 2021-11-27 05:26:09 +03:00
SNMetamorph f726793711 engine: client: cl_main: fixed compilation error 2021-11-23 13:10:39 +03:00
Alibek Omarov 1944f48516 engine: common: allow unlimited commands for unprivileged mode at this time to not break mods like GGM 2021-11-23 05:23:38 +03:00
Alibek Omarov 992bcd89ef engine: add cmd and cvar tests for privileged mode 2021-11-23 05:23:38 +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 508eb7ab5f engine: restore command escaping 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 8599119c8d engine: add filterable flag support for cvars and cmds 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 b93938956e engine: allow exec command with config filenames whitelist 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 66d66eb835 common: define FCVAR_LOCALONLY the same bit used in GoldSource, move FCVAR_MOVEVARS into internal engine flags 2021-11-23 05:23:38 +03:00
Alibek Omarov 9a4dec64f9 engine: describe protected and privileged 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 b24c1a51d3 engine: try to mitigate outdated client.dll vulnerabilities 2021-11-23 05:23:38 +03:00
Alibek Omarov c79a649d97 engine: client: implement pfnFilteredClientCmd 2021-11-23 05:23:38 +03:00
Alibek Omarov f9d1d14848 engine: disable filtered command buffer for dedicated 2021-11-23 05:23:38 +03:00
Alibek Omarov 1a1d81de62 engine: add stuffcmd filtering, not wired to ClientCmd yet 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
Alibek Omarov 39893609fd engine: touch: cosmetical touch code refactoring 2021-11-10 01:06:56 +03:00
Alibek Omarov b9901bcb70 engine: client: forgot to register s_warn_late_precache cvar 2021-11-01 14:49:30 +06:00
Alibek Omarov 6571c78ed4 engine: client: hide late precache warning under s_warn_late_precache cvar
This warn is valid mostly for multiplayer games.
In singleplayer games, this is a false-positive as sentences are hot loaded
2021-10-31 21:06:54 +06:00
Alibek Omarov efc156fcf5 engine: ref_api: purposefully moved WorldToScreen to 2D functions from TriAPI, since WorldToScreen is expected to be simpler in-engine version rather than TriAPI one 2021-10-30 21:49:27 +06:00
Alibek Omarov e8cd6e9d65 engine: build: add RISC-V support(based on @archanox patches), add MIPS64 support 2021-10-27 20:59:02 +03:00
Alibek Omarov d9fd6aa05c engine: server: restore log functionality from old engine. Thanks to @ValeTheVioletMote for initial patch. 2021-10-27 19:40:05 +03:00
Владислав Сухов 1042291ad6 client: Don't change loading bar color
Don't change loading bar color (fix yellow loading bar in Half-Rats Parasomnia, it should be white)
2021-10-25 00:48:36 +06:00
Владислав Сухов c9e4912a2a client: backport con_fontnum from old engine 2021-10-12 13:43:23 +03:00
Alibek Omarov 621399c49b engine: add safe ParseFile to client MobilityAPI 2021-10-08 17:31:32 +03:00
Alibek Omarov f3fedbfdba engine: add safe ParseFile to menu extended API 2021-10-08 17:31:32 +03:00
Alibek Omarov 29a8bfb1dc engine: common: fix ParseFile calls 2021-10-08 17:31:32 +03:00
Alibek Omarov 004e190435 engine: common: test ParseFile length return value 2021-10-08 17:31:32 +03:00
Alibek Omarov a8c877c841 engine: server: fix ParseFile calls 2021-10-08 17:31:32 +03:00
Alibek Omarov 4ba95277b9 engine: client: fix ParseFile calls 2021-10-08 17:31:32 +03:00
Alibek Omarov 9e5d5e0ea3 public: moved COM_ParseFileSafe to libpublic, added optional argument for length and overflow checking 2021-10-08 17:31:32 +03:00
Alibek Omarov a235bec5f1 engine: introduce COM_ParseFileSafe, add tests 2021-10-08 17:31:32 +03:00
Alibek Omarov a3a8acfe6c engine: sound: add DSP coeffecients table from Half-Life Alpha, minor fixes to DSP code 2021-10-04 05:43:35 +03:00
Alibek Omarov 9e4e9cab04 engine: restore optional upscaling depending on SOUND_DMA_SPEED value :) 2021-10-04 05:43:35 +03:00
SNMetamorph e4ad8def0d engine: filesystem: fixed current directory changing for Windows 2021-10-03 12:28:59 +03:00
SNMetamorph ec95948b69 engine: server: implemented instant game library loading 2021-10-03 04:38:05 +03:00
Alibek Omarov 08c04200fb engine: use GCC provided offsetof implementation 2021-10-03 04:26:22 +03:00
Alibek Omarov 91f845c335 engine: client: fix paused icon drawn when levelshots are disabled 2021-09-30 16:43:21 +03:00
Alibek Omarov 3b933eabf5 engine: make test assert failure more pretty 2021-09-30 15:59:14 +03:00
Alibek Omarov fe0da74e75 engine: fix build with tests on 2021-09-30 15:58:32 +03:00
Alibek Omarov 32068d8090 client: fix wrong paused icon 2021-08-27 18:09:07 +03:00
Alibek Omarov 013918a371 console: redefine con_color as cvar 2021-08-27 17:05:02 +03:00
SNMetamorph 8c351d9255 engine: client: made pfnSPR_Load and pfnSPR_Frames functions as exported 2021-07-31 13:47:43 +03:00
SNMetamorph c4ef42009c engine: client: fixed height argument writing in Con_DrawStringLen 2021-07-31 01:23:56 +03:00
Alibek Omarov 7b8ec0ad4b engine: server: fix another const qualifier lose 2021-07-20 17:09:16 +03:00
Alibek Omarov 901e52615b engine: fix Com_ParseFile call 2021-07-20 16:26:17 +03:00
Alibek Omarov 88ce5fd0b6 engine: modify NetAPI to follow const qualifiers 2021-07-20 16:10:32 +03:00
Alibek Omarov 0efc5e82ec engine: fix some const qualifier lose and pointer-to-int casts 2021-07-20 16:03:06 +03:00
Alibek Omarov a547526e86 engine: fix some signed char cases 2021-07-20 15:18:55 +03:00
SNMetamorph 09d647182d engine: net_encode: equality comparisions replaced with Q_equal macros 2021-07-09 14:57:49 +03:00
SNMetamorph 8b76ab93fb engine: net_encode: made delta more GoldSrc consistant 2021-07-09 14:57:49 +03:00
Alibek Omarov #SupportRMS 21a31ec81d
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds

* scripts: cleanup of old CI scripts

* scripts: now port to GitHub Actions

* actions: fix extras checkout

* github: remove codeql action, turned out not to be very useful

* github: remove quiet flag on wget

* github: are we allowed to use envvars?

* github: add needed dependencies for linux

* github: install wget for windows

* scripts: convert our CPU architecture naming into what AppImage uses

* github: run scripts with bash explicitly

* github: first try to upload to GitHub Releases, enable amd64 win32 builds

* Use our uploadtool fork

* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts

* gha: try to fix build

* travis: try to fix build

* gha: try to fix upload, fix win32 build

* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build

* gha: add llvm repository, install clang-12 for android

* gha: motomagx: fail fast

* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip

* waifulib: xcompile: respect environment variables when using host compiler for Android

* waifulib: xcompile: use correct environ dict

* gha: try to fix -fuse-ld=lld with clang-12

* waifulib: xcompile: fix typo

* scripts: xcompile: fix motomagx build

* mainui: upgrade

* gha: fix android build, last time

* engine: wscript: disable crashhandler for magx
2021-07-03 20:21:09 +03:00
Alibek Omarov 15ec6539e3 engine: filesystem: fix custom loader enabled by mistype 2021-07-02 19:26:01 +03:00
Nord1cWarr1or 8d793521c4
engine: keys: fix misleading comment
Update keys.c (#514)
2021-06-28 20:10:41 +03:00
Alibek Omarov 2147542e33 engine: all user libraries packed inside archives are now deprecated 2021-06-27 00:20:23 +03:00
Alibek Omarov a0af256641 engine: library: fix saves on 64-bit Windows, compile custom loader only on x86 2021-06-27 00:03:39 +03:00
Alibek Omarov 21174dc9cf engine: library: fix missing return 2021-06-27 00:02:41 +03:00
Alibek Omarov 894726d699 engine: disable custom DLL loader for everything except 32-bit x86 2021-06-27 00:02:16 +03:00
Alibek Omarov f8e6033ae6 engine: move TIMER_LINUX to TIMER_POSIX, enabling dedicated builds for FreeBSD and other *nix platforms 2021-06-26 00:19:49 +03:00
a1batross 4abe1a77f4 engine: filesystem: fix missing newline in debug message 2021-06-22 11:31:53 +03:00
Alibek Omarov #SupportRMS 79f3a6f60e
engine: sound: code style fix 2021-06-22 00:49:22 +03:00
SNMetamorph a2c83144c0 engine: sound: warn about late precached sounds in developer mode 2021-06-22 00:48:02 +03:00
Alibek Omarov 6e0d372504 engine: fix FunctionFromName on MSVC, fix memory leak 2021-06-21 10:20:29 +03:00
Alibek Omarov 91ee9bd32a engine: merge tests for imagelib 2021-06-20 20:26:22 +03:00
Alibek Omarov 6ea25b8194 engine: add simple unit-testing (v3?) 2021-06-20 19:59:16 +03:00
Alibek Omarov 5bc4359a2f engine: implement platform neutral saves, now we can load saves made in Linux on Windows and vice-versa 2021-06-20 19:59:16 +03:00
Alibek Omarov 17d3eaa590 engine: win32: remove normal win32 library loader, from now on every win32 port must port custom loader 2021-06-20 19:59:16 +03:00
SNMetamorph 6ceb101ba1 engine: client: correctly named values in net_speeds stats 2021-06-18 08:58:46 +03:00
SNMetamorph f7f069a38b engine: client: added Host_Error for CL_EDICT_NUM (hotfix for issue #434) 2021-06-18 08:58:46 +03:00
Alibek Omarov 37c5dfa49f engine: generalize maps command and map command autocompletion 2021-06-18 00:05:34 +03:00
tyabus 0260a6c234 engine: server: backport maps command implementation from old engine 2021-06-18 00:05:34 +03:00
lilmayofuksu 2ad209b973
engine: server: updated TSource query to be more compatible with GoldSrc standard (#497)
Mark TSource queries as connectionless.
Only send Windows as the os if the engine was built on it.
2021-06-16 13:09:31 +03:00
Barış 18d8ef287d
engine: fix client can use kill command while not connected (#492) 2021-06-12 18:19:23 +03:00
Alibek Omarov 9b1fccd1fa engine: move Cbuf_Execute to ClientBegin stub for dedicated server, to avoid confusion 2021-06-08 01:08:06 +03:00
Alibek Omarov 32e96bdad1 engine: support legacy net protocol in demos 2021-06-08 01:04:18 +03:00
Alibek Omarov c50f73b892 engine: fix brush model sound spatialization 2021-06-07 22:54:41 +03:00
exstrim401 db3e71bfcc engine: Removed unused Haiku variables 2021-06-07 19:39:52 +03:00
exstrim401 2b436dced0 engine: Remove XASH3D_MIRRORDIR
also make XASH3D_GAME for all platforms
2021-06-07 19:39:52 +03:00
exstrim401 a89f9fa181 engine: Haiku BeGameLauncher support 2021-06-07 19:39:52 +03:00
Alibek Omarov 6063149b93 engine: match DT_TIMEWINDOW_* behaviour to GoldSrc: it's always signed and it's more of an integer than float value 2021-06-07 17:31:54 +03:00
Alibek Omarov a28d15e519 engine: match DT_TIMEWINDOW_* behaviour to GoldSrc: it's always signed and it's more of an integer than float value 2021-06-07 17:30:40 +03:00
Alibek Omarov 94959110f6 engine: fix typo, #488 2021-06-07 15:53:20 +03:00
Alibek Omarov 9313f7e80e engine: replace pool pointer by pool handle 2021-06-07 02:33:15 +03:00
Alibek Omarov 43f1137565 engine: use substring search for mpfilter 2021-06-07 02:23:44 +03:00
Alibek Omarov ad4062969b engine: client: fix warnings in cl_pmove 2021-06-07 02:22:08 +03:00
Alibek Omarov 60c10333aa engine: client: fix sound not spatialized correctly, remove unused field from rawchan 2021-06-07 02:21:46 +03:00
Alibek Omarov 0f84ce40f0 engine: client: fix cl_smoothtime, don't smooth movements when running local server(singleplayer, listenserve, etc) 2021-06-06 16:22:04 +03:00
Alibek Omarov 3894edcb98 engine: client: enhance cl_showevents for reverse-engineering needs 2021-06-06 16:22:04 +03:00
Alibek Omarov 5b387ba36a engine: client: move Cbuf_Execute out of Host_InputFrame, cbuf will be executed always at ClientBegin. Fixes #482 2021-06-06 16:22:04 +03:00
Velaron d011dccaab engine: client: remove redundant index check 2021-06-06 15:51:41 +03:00
exstrim401 b7922368bd
engine: Haiku OS support (#478) 2021-06-05 10:54:37 +03:00
Alibek Omarov 49a20a9ac5 engine: server: fix memleak after previous commit 2021-06-02 22:06:17 +03:00
Alibek Omarov 8966172ce0 engine: server: avoid crash if map entity doesn't have classname (tfc map flagwar for example) 2021-06-01 23:45:55 +03:00
Alibek Omarov ddd48c420b engine: decrease instanced baseline index by minus one to avoid zero offset which interpreted as no baseline at all 2021-06-01 21:52:33 +03:00
Alibek Omarov f31e9ae19e engine: server: fix bounds check in SV_GetFragmentSize 2021-06-01 18:35:38 +03:00
Alibek Omarov 4543008012 engine: server: declare sv_client_t::flags as unsigned 2021-06-01 17:58:33 +03:00
Alibek Omarov d54a648792 engine: common: avoid sign bit loss in MSG_WriteBitLong 2021-06-01 17:57:54 +03:00