Commit Graph

761 Commits

Author SHA1 Message Date
Alibek Omarov 7c9f5f8ab1 engine: remove LoadLibrary macros, to avoid possible misuse. Although macros moved to game_launch, it's part of it's own problem from now 2022-06-11 03:25:57 +03:00
Andrey Akhmichin 6b4f55c4bf engine: common: filesystem.c: do not load archives with zip extention again 2022-06-10 23:26:14 +03:00
Alibek Omarov f467d0c807 game_launch: fix Windows build (as suggested by @SNMetamorph) 2022-06-09 20:27:27 +03:00
Alibek Omarov a717b7fc49 game_launch: declare environ variable, by standard it must be declared by user program 2022-06-09 14:44:04 +03:00
Alibek Omarov 07a9c4602d game_launch: change game with execve on supported platforms 2022-06-09 13:42:16 +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 b0a889d1a1 engine: bring back simple netadr_t, as we don't care about IPv4-to-IPv6 mapped addresses anymore 2022-06-09 03:10:02 +03:00
Alibek Omarov bd1bfea695 engine: second iteration of IPv6 support
Made code smaller
Fixed problem where v6 and v4 socket can't use same port
Added support for v4-to-v6 mapped addresses, although it's kept unused
Probably final version
2022-06-09 03:10:02 +03:00
Alibek Omarov 1a5a76a201 engine: common: minor fixes to ipv6text library 2022-06-09 03:10:02 +03:00
Alibek Omarov b072b627a2 engine: enable getaddrinfo on Windows, fix build 2022-06-09 03:10:02 +03:00
Alibek Omarov 5d18c6d678 engine: fix declaration-after-statement 2022-06-09 03:10:02 +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 193cde83b6 engine: add IPv6 address parsing/printing library from GameNetworkingSockets 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 86a777880f engine: common: mark AbortCurrentFrame as NORETURN, fix noreturn warnings 2022-05-29 01:58:56 +03:00
Alibek Omarov 843c9abf9b engine: common: fix array underrun 2022-05-25 03:38:19 +03:00
Alibek Omarov 924e895753 engine: common: set Host_Error and Sys_Error as NORETURN 2022-05-25 03:38:02 +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
Alibek Omarov 4fbd96d201 engine: common: filesystem: speed up directory existense check on POSIX by using stat() instead of opendir() 2022-05-09 07:45:51 +03:00
Alibek Omarov 81b01ac561 engine: common: remove NaN check, it's mostly useless on text data 2022-05-09 05:01:20 +03:00
Alibek Omarov 771c359ed0 engine: common: make blue-shift map detect more robust 2022-05-09 05:01:20 +03:00
SNMetamorph d1a5c33bf1 engine: common: removed unused function Sys_SetClipboardData 2022-05-02 03:29:24 +03:00
SNMetamorph 15eb6808c4 engine: platform: updated clipboard read/write functions 2022-05-02 03:29:24 +03:00
Alibek Omarov 691a305f8e engine: common: reorder cmd_t fields to be compatible with GoldSrc 2022-04-09 19:38:22 +03:00
SNMetamorph 95ee88720c engine: platform: win32: major refactoring of console code 2022-04-06 15:17:15 +03:00
SNMetamorph 58dbc1ba31 engine: system: disabled skipping color codes for Wcon_WinPrint 2022-04-06 15:17:15 +03:00
a1batross fc7fb8b62d engine: masterlist: replace master server domain by mentality.rip
It is essentially the same as ms.xash.su but due to current situation, it is known to be blocked on some Ukrainian ISPs.

ms2.xash.su is retired for now.
2022-03-19 01:58:10 +03:00
SNMetamorph 65d624140e engine: filesystem: fixed FS_Search algorithm for ZIP files (fix #796) 2022-03-15 23:11:00 +03:00
SNMetamorph cd2720ba81 engine: common: imagelib: fixed loading BMP files with v4/v5 headers 2022-03-13 01:50:30 +03:00
Alibek Omarov fba323cf1f engine: common: cosmetic changes to usage string generating code 2022-03-10 04:52:16 +03:00
Alibek Omarov f67d0ffa5a engine: common: fix broken function name and strings after find&replace in socket code 2022-03-10 04:51:38 +03:00
Alibek Omarov df616b950d engine: add NET_AdrToString to menu extended API, upgrade mainui submodule 2022-03-08 07:00:36 +03:00
SNMetamorph 6473efa995 engine: added support for BC7 and BC6H compression formats of DDS textures 2022-03-07 02:03:40 +03:00
Alibek Omarov 85f99c723a engine: add sys_timescale implementation 2022-03-03 05:38:36 +03:00
SNMetamorph edc171be04 engine: common: fixed lightmap shift again 2022-02-28 19:56:28 +03:00
SNMetamorph 24ea8fba4b engine: common: fixed lightmap shifting caused by insufficent precision in Mod_CalcSurfaceExtents 2022-02-28 16:54:28 +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 18933e7981 engine: ensure all data was written to stdout when exiting 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
Alibek Omarov a6b43fbfff engine: show additional errno string when log file cannot be opened 2022-01-29 03:04:54 +03:00
Alibek Omarov 61643585e0 engine: fix NULL ptr dereference when log file cannot be opened 2022-01-29 03:04:00 +03:00
Alibek Omarov ffea7d9729 engine: add host_lowmemorymode cvar to indicate low memory mode level 2022-01-27 03:32:52 +03:00
Velaron 0e286f31c5 engine: client: fix DT_TIMEWINDOW_* signedness 2022-01-24 17:31:36 +03:00
Alibek Omarov 5aa6bfee85 engine: first attempts on fuzzing the engine 2022-01-15 06:24:57 +03:00
Alibek Omarov ea5937bce0 engine: net_encode: remove naive clientdata/weapondata copy, only copy fields explicitly listed in deltalst 2022-01-14 14:46:52 +03:00
Alibek Omarov 6e4ab74694 engine: net_encode: split delta "no changes" copy into separate function 2022-01-14 14:33:13 +03:00
Alibek Omarov 1f26710bd0 engine: fix add command error messages 2022-01-14 01:06:52 +03:00
Alibek Omarov 96f35f76e1 engine: filesystem: fix creating directories with roDir 2022-01-14 00:42:24 +03:00
Alibek Omarov fa37d153c8 engine: common: restrict alias/unalias and stuffcmds from executing by server 2022-01-14 00:26:26 +03:00
Alibek Omarov 13cf909b99 engine: filesystem: allow extras ZIPs 2022-01-13 18:22:06 +03:00
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 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 01b2266b7e engine: net_encode: minor code style fix 2022-01-04 04:30:47 +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 210137c325 engine: increase model limit to the possible maximum without breaking the protocol 2022-01-03 23:07:33 +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 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 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 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 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 508eb7ab5f engine: restore command escaping 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 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 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
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 e8cd6e9d65 engine: build: add RISC-V support(based on @archanox patches), add MIPS64 support 2021-10-27 20:59:02 +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 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
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 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 901e52615b engine: fix Com_ParseFile call 2021-07-20 16:26:17 +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 15ec6539e3 engine: filesystem: fix custom loader enabled by mistype 2021-07-02 19:26:01 +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
a1batross 4abe1a77f4 engine: filesystem: fix missing newline in debug message 2021-06-22 11:31:53 +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 37c5dfa49f engine: generalize maps command and map command autocompletion 2021-06-18 00:05:34 +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
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
exstrim401 b7922368bd
engine: Haiku OS support (#478) 2021-06-05 10:54:37 +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 d54a648792 engine: common: avoid sign bit loss in MSG_WriteBitLong 2021-06-01 17:57:54 +03:00
Alibek Omarov 585955eb19 engine: filesystem: add an error message if we're trying to get a handle of a compressed file in ZIP archive 2021-05-02 01:20:18 +03:00
Bohdan Shulyar ddc4d76668
engine: common: add quote symbol escaping support (#411) 2021-04-04 22:03:02 +03:00
Alibek Omarov f5e400de69 server: fix wrong xashid key on server, it's uuid now 2021-03-28 01:57:40 +03:00
Alibek Omarov 9c8059ea96 engine: imagelib: add BGRA saving for PNG
Fix incorrect output, when input format has alpha but flags don't
have set IMAGE_HAS_ALPHA.
Flags are meant to control output format, but input format may be arbitrary,
as usually given by video driver(screenshots, etc)
2021-03-28 00:34:42 +03:00
Alibek Omarov c62db950f1 server: implement rcon redirection, add redirect command from old engine 2021-03-27 23:46:57 +03:00
Alibek Omarov acaf15c5d2 engine: increase MAX_LEGACY_SERVERS limit 2021-03-27 23:22:51 +03:00
Alibek Omarov 23974d24c3
engine: try to avoid broken -Werror=duplicated-branches for old GCCs 2 2021-03-24 19:11:17 +03:00
Alibek Omarov 868947cbb4
engine: try to avoid broken -Werror=duplicated-branches for old GCCs 2021-03-23 23:49:08 +03:00
Alibek Omarov f2ab4c0d0e engine: cfgscript: don't let scr vars overwrite existing variables
we don't use them for storing settings anyway
only for reference in UI
2021-03-15 03:39:20 +03:00
Alibek Omarov 0ba1a8e7bc engine: cfgscript: reduce copypasted code 2021-03-15 03:38:10 +03:00
Alibek Omarov 26404315cb engine: filesystem: avoid unnecessary padding in private structs 2021-03-11 21:46:00 +03:00
Alibek Omarov be1958473b engine: filesystem: fix liblistgam converting to gameinfo when rodir was enabled 2021-03-11 21:42:35 +03:00
Alibek Omarov 331a2046c8 engine: net: fix delta incorrect casts when field is signed 2021-03-10 21:51:21 +03:00
Alibek Omarov 9120d40ce5 engine: redefine CVAR_DEFINE_AUTO through CVAR_DEFINE macro 2021-03-09 23:58:21 +03:00
Alibek Omarov 155eb1ba58 engine: fix various warnings 2021-03-07 03:40:01 +03:00
Alibek Omarov efaf7ac622 engine: fix UB on MSG_BigShort 2021-03-07 03:39:16 +03:00
Alibek Omarov fe2c4af8c2 engine: soundlib: make Sound_GetApproxWavePlayLen behave like in GoldSrc 2021-03-07 02:49:40 +03:00
Alibek Omarov 3e7dd30fd7 engine: soundlib: use stdint definitions for WAV headers 2021-03-07 02:48:56 +03:00
Alibek Omarov e77957bc81 client: decrease visibility of some cvars 2021-03-06 23:40:04 +03:00
Andrey Akhmichin 75210b1ff6 engine: common: filesystem.c: add binary search for files from zip-archives. 2021-03-01 19:53:07 +03:00
Ivan Avdeev 1b426b67e7 partially fix amd64 build on windows
Quality of this commit is questionable. I have no idea whether what I did
here makes sense or not.
But it compiles and runs (provided with hlsdk-xash3d amd64 build, which
is another story).

This omits necessary waf changes that are necessary to make a valid
64-bit build. Apparently it's not enough to just pass `-8` on Windows,
you also need to hack wscript to add `x64` target to MSVC. I'll do that
later when I figure out how.

This change is a precursor for RTX Vulkan effort --
VK_KHR_ray_tracing_pipeline and friends are only available on 64-bit
nvidia drivers (no idea about AMD, pls send GPUs onegai).
2021-02-26 16:04:45 +03:00
Alibek Omarov d7b3c7b681 engine: proper order for XASH_LOW_MEMORY definitions 2021-01-29 03:24:41 +03:00
Gleb Mazovetskiy 6d614e028a Fix COM_LibraryError newline handling
1. Do not append a trailing newline to the result of COM_GetLibraryError.
2. Fix call sites.
2021-01-07 17:33:09 +03:00
Gleb Mazovetskiy 5e0a0765ce Trim all trailing whitespace
The `.editorconfig` file in this repo is configured to trim all trailing
whitespace regardless of whether the line is modified.

Trims all trailing whitespace in the repository to make the codebase easier
to work with in editors that respect `.editorconfig`.

`git blame` becomes less useful on these lines but it already isn't very useful.

Commands:

```
find . -type f -name '*.h' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
find . -type f -name '*.c' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
```
2021-01-04 20:55:10 +03:00
Alibek Omarov 766ef84af4 engine: ref: try to bruteforce all available renderers if we're failed to load requested one 2021-01-02 17:59:53 +03:00
Alibek Omarov 61fe9fd1fe engine: fix some left shifts on signed integers 2021-01-02 05:01:51 +03:00
Gleb Mazovetskiy 2106eef4b2 system.c: Fix `Sys_Warn/Error` text buffer sizes
This was using the wrong define
E.g. `-dev 2 -help` output did not fit into it
2021-01-02 03:43:17 +03:00
Gleb Mazovetskiy 69e15e9c7b gl4es: Fix `so` name and add to renderer collector
1. `libref_gles2_gl4es.so` -> `libref_gl4es.so` because this is what's
    passed to `R_LoadRenderer`.

2. Add `gl4es` to `DEFAULT_RENDERERS` so that `R_CollectRendererNames`
   finds it.
2020-12-29 00:44:42 +03:00
Andrey Akhmichin abd9778ef3 engine: common: simplified strings operations. 2020-11-28 23:20:14 +03:00
Andrey Akhmichin c53985c0bc engine: common: imagelib: img_tga.c: refactor Targa encoder. 2020-11-18 18:54:25 +05:00
Alibek Omarov 2aaa6c6e04 public: build: add ARMv8 32-bit support, in case of someone actually uses it 2020-09-28 16:17:08 +03:00
Alibek Omarov d4003f9527 crashhandler: fix build 2020-08-23 20:33:17 +03:00
Alibek Omarov d30605c09f engine: fixes for dedicated 2020-08-23 19:02:15 +03:00
Alibek Omarov 9ff6d44178 crashhandler: remove unknown arch error 2020-08-23 19:02:15 +03:00
Andrey Akhmichin 065811cc46 engine: common: filesystem.c: do not load zip-archives with zip extension as bullet proof. 2020-07-27 18:59:50 +03:00
Andrey Akhmichin e69956c9ea engine: common: imagelib: img_png.c: set IMAGE_HAS_ALPHA flag only for RGBA images. 2020-07-22 14:37:40 +03:00
mittorn bef873e1f8 platform/android: enable dynamic dladdr, fix build 2020-07-08 08:45:24 +07:00
Alibek Omarov 0db1a7743d engine: try to fix -Wmaybe-uninitialized that may be enabled with -Wuninitialized. Diagnostic is prone to false-positives, as compiler don't have enough data for this 2020-05-12 02:00:34 +03:00
Alibek Omarov a641488b98 engine: imagelib: img_bmp: add paranoid checks for estimated file size to not exceed real buffer. Needs proper testing. 2020-05-11 03:02:13 +03:00
Alibek Omarov 46b0590e4e engine: imagelib: refactor to use stdint.h definitions, use spaces for alignment instead of tabs 2020-05-11 02:28:04 +03:00
Alibek Omarov 9b22149509 engine: host: execute server.cfg right before main loop starts 2020-05-02 19:26:41 +03:00
Alibek Omarov e0dfc4c0b4 launcher: oops, enable NOCONHOST only for Win32 2020-04-30 20:48:33 +03:00
Alibek Omarov 732cb925e5 launcher: use engine definitions, enable cocon_win by default, fix Com_LoadLibrary to COM_LoadLibrary, fix memory leak, fix incorrect argv 2020-04-25 21:28:19 +03:00
lewa_j deb7591d1e Fix SaveBMP 2020-04-25 21:19:58 +03:00
Alibek Omarov 82c54b1b54 engine: disallow zero-width strings for getenv() 2020-04-19 13:02:51 +03:00
Alibek Omarov 8d942bcc86 xash3d_types: start refactoring engine to use stdint.h types 2020-04-19 13:02:51 +03:00
Aimless Wanderer 51a45d745e engine: userconfig.d support from old engine 2020-04-14 20:08:08 +03:00
Alibek Omarov dc2ab714f6 mpg123: backport some UB fixes from upstream 2020-03-30 00:46:39 +03:00
Alibek Omarov 4c6fd79f07 tgmath: remove including tgmath.h in everything that uses xash3d_mathlib, as it's included already 2020-03-30 00:42:10 +03:00
Alibek Omarov 3d9c482eae host: add -help, fix #136 2020-03-04 08:55:22 +03:00
Alibek Omarov 3c8ce640c4 Merge neko/mathlib into master 2020-03-04 05:38:30 +03:00
Andrey Akhmichin 248c8a745c engine: common: imagelib: split imagelib.h. 2020-03-03 05:03:15 +05:00
Alibek Omarov 7c47bfd0db
Merge pull request #122 from nekonomicon/palette
engine: common: imagelib: use rgba_t as RGBA palette type.
2020-03-02 21:44:32 +03:00
Andrey Akhmichin e96ea719d5 engine: common: imagelib: use rgba_t as RGBA palette type. 2020-03-02 15:07:54 +05:00
mittorn 3ce16227ba
Merge pull request #123 from nekonomicon/tga
engine: common: imagelib: img_tga.c: check pixel type before buffer allocation.
2020-02-18 03:52:09 +07:00
nillerusr 4021d7bf5c imagelib: fix unaligned access 2020-02-17 23:25:39 +03:00
mittorn 68472f90eb filesystem: disable XASH_REDUCE_FD where it not needed, fix null pointer deference 2020-02-14 21:48:26 +07:00
Andrey Akhmichin e3b547c8a9 public: rename mathlib to xash3d_mathlib. 2020-02-12 14:32:26 +05:00
Andrey Akhmichin 01e2ea24da engine: common: imagelib: img_png.c: add a missing return statement. 2020-02-11 17:06:41 +03:00
Andrey Akhmichin f5783ae1df engine: common: imagelib: img_tga.c: check pixel type before buffer allocation. 2020-02-11 15:39:05 +05:00
mittorn 27da2e10ff filesystem: fix const cast 2020-02-09 00:29:56 +07:00
mittorn 7d0e45b507 network: restore WSAsize_t define for win32 2020-02-08 23:59:43 +07:00
mittorn c7e3eae9dd filesystem: fix wrong types 2020-02-08 23:38:45 +07:00
mittorn d8f20f3642 common: add DOS4GW platform 2020-02-08 23:15:40 +07:00
mittorn 3e3aff040e platform: add Platfrom_Init, Platform_Shutdown, Platform_MouseMove move platform-specific code from host.c 2020-02-08 23:15:40 +07:00
mittorn adc718f4d5 public: add XASH_POSIX platform define 2020-02-08 23:15:40 +07:00
mittorn 22c148a39e filesystem: refactor zip/pak loading, partially fix reading files from zip, add option to reduce FD usage, remove dup() dependency 2020-02-08 23:15:40 +07:00
mittorn 2b90790071 network: add stub for systems without BSD sockets, WATTCP support 2020-02-08 23:15:40 +07:00
mittorn 070272489d library: fix saverestore offsets code from old engine 2020-02-08 23:15:40 +07:00
mittorn 538d8a6fb4 network: fix NET_MAX_FRAGMENT limit 2020-02-08 23:15:40 +07:00
mittorn 3a416636f1 engine: mark GAME_EXPORT's 2020-01-19 08:15:54 +07:00
mittorn bbd033c254 lib: restore dll loader support 2020-01-19 07:38:37 +07:00
Alibek Omarov 0fe18ae6dc engine: fix -Wmaybe-uninitialized 2019-12-24 02:47:51 +03:00
Alibek Omarov e11a08064d engine: fix implicit-fallthrough, uninitialized, enum-conversation compiler diagnostics 2019-12-23 06:48:17 +03:00
Alibek Omarov dd1daa5bff engine: correctly validate blueshift maps 2019-12-03 02:27:08 +03:00
Alibek Omarov 3da10f28c4 engine: restored BShift maps support 2019-12-02 02:14:02 +03:00
Alibek Omarov 077bc7323c engine: host: fix crash 2019-12-02 01:01:39 +03:00
Andrey Akhmichin 6f2b559c5a engine: common: cfgscript.c: change wrong variable type to fix compilation. 2019-12-01 17:30:48 +03:00
Alibek Omarov 0991255534 engine: dedicated: fix dedicated build 2019-11-28 19:23:34 +03:00
Alibek Omarov c07109e69c engine: fix -Wincompatible-pointer-types, add it to Werror list 2019-11-28 19:18:50 +03:00
Alibek Omarov 08e7bb1bf4 engine: common: enable our own build number counter, move legacy to Q_buildnum_compat 2019-11-28 17:49:14 +03:00
Alibek Omarov ecd675926a engine: cvar: add null checks as these functions are passed to user's DLL 2019-11-26 02:48:16 +03:00
Alibek Omarov 9421457b3a engine: big refactoring commit, instead of using platform-specific platform-specific macros, use appropriate macros set by public/build.h 2019-11-24 03:52:08 +03:00
Alibek Omarov ac4a14ef6c engine: host: support DEFAULT_DEV macro 2019-11-24 03:02:12 +03:00
Alibek Omarov f56887bde9 engine: fix rodir, now it always creates gamefolder in rwdir. Fixes #87 2019-11-24 02:12:17 +03:00
Alibek Omarov 23fe1c0985 engine: use appropriate path array length 2019-11-24 02:10:52 +03:00
Alibek Omarov 936b491248 engine: dedicated: remove unused stub 2019-11-08 01:09:55 +03:00
tyabus 934dffd273 engine: common: fix message formating 2019-11-07 23:26:11 +03:00
Alibek Omarov 0cb591821a Merge sdl12-port into master 2019-11-06 22:29:04 +03:00
Alibek Omarov 15924aebaa xash3d-fwgs: check if HAVE_TGMATH_H is set to positive value rather it's just defined 2019-11-05 01:41:35 +03:00
Alibek Omarov 79adaa11e0 lowmemory: merge 2019-11-05 01:15:31 +03:00
mittorn 6953e829c4 lowmemory: prevent redefines 2019-11-04 22:34:08 +07:00
mittorn 0e7013eeb0 lowmemory: tune XASH_LOW_MEMORY=1 not breaking multiplayer 2019-11-04 19:58:45 +07:00
Alibek Omarov 1f308a43c8 engine: fix build after lowmemory rebase 2019-11-02 08:56:07 +03:00
Alibek Omarov aa6674b032 engine: support compiling with gcc3 2019-11-02 08:56:07 +03:00
Alibek Omarov 9d826016b0 engine: finish sdl1.2 port 2019-11-02 08:56:07 +03:00
Alibek Omarov 9e99a2bc37 engine: dirty sdl1.2 port 2019-11-02 08:56:07 +03:00
Alibek Omarov 0dd91ceda2 xash3d-fwgs: append missing new line at the end of file 2019-11-02 08:56:07 +03:00
mittorn d6f8112860 gameinfo: add MIN_EDICTS constant instead of magic number 600, low it to 64 2019-11-02 12:46:11 +07:00
mittorn a1db6c6a9b lowmemory: remove datagram limit 2019-11-01 13:49:53 +07:00
mittorn 5e5ffec67d lowmemory: tweak some protocol limits for HL1, restore bit counts (maybe even restore multiplayer compatibility) 2019-10-29 11:35:02 +07:00
mittorn 5348046109 lowmemory: increase decals limit 2019-10-28 12:29:44 +07:00
mittorn 57d48b64eb keys: add OSK 2019-10-28 12:28:52 +07:00
mittorn 5145b1956c zone; revert removing clean check 2019-10-28 12:25:20 +07:00
mittorn 37cba10c14 lowmemory: fix sentences 2019-10-28 12:07:15 +07:00
Alibek Omarov 1decb1c7fb xash3d-fwgs: append missing new line at the end of file 2019-10-27 22:29:03 +03:00
mittorn feb01b270e zone, platform: add swap allocator 2019-10-26 12:10:50 +07:00
mittorn 114a256675 Implement XASH_LOW_MEMORY, memory-reduced configuration 2019-10-26 07:06:26 +07:00
iZarif bf8b87c29d engine: client/common: fix a few more format warnings 2019-10-22 17:56:08 +03:00
Alibek Omarov 78baf568ae engine: more double promotion fixes 2019-10-18 16:46:54 +03:00
Alibek Omarov edf3fcd398 engine: common: explicitly cast literals to floats, include tgmath when needed 2019-10-18 16:46:54 +03:00
Alibek Omarov fa622168a0 engine: fix style, disable XASH_USE_SELECT 2019-10-11 08:51:30 +03:00
Wei Mingzhi 88772a1c34 engine: GetGameDir should return gamedir only. Add proper stub functions for some engine APIs. 2019-10-07 16:08:10 +03:00
Alibek Omarov d2a8cfe614 Revert "engine: client: implement connectionprogress partially"
This reverts commit cb417a3d51.

This commit breaks demo playback. Figure out why, then revert it back.
2019-10-06 07:45:32 +03:00
Alibek Omarov d382f6886d engine: fix build 2019-10-05 04:02:25 +03:00
Alibek Omarov d6bb72f772 engine: dedicated: fix old-style-definitions 2019-10-05 03:17:38 +03:00
Alibek Omarov cb5e282af4 engine: sequence: fix condition 2019-10-05 02:22:46 +03:00
Alibek Omarov b175d8a0cb engine: net_encode: due to bug in GCC <9, disable duplicated-branches here 2019-10-05 02:22:10 +03:00
Alibek Omarov f3a40ac794 engine: cfgscript: fix userinfo cvars wrong dump to config 2019-10-05 02:10:09 +03:00
Alibek Omarov dc207a449c engine: fix -Werror=strict-prototypes 2019-10-05 02:09:45 +03:00
Aimless Wanderer 409eee3bb4 engine: fix gameinfo parsing 2019-10-04 11:58:14 +03:00
mittorn cb0791c915 http: do not continue after HTTP_Free, fix potential buffer overflow 2019-09-29 01:42:17 +07:00
mittorn 9a1414505a imagelib: support for 16-bit transparent tga 2019-09-27 02:12:35 +07:00
Alibek Omarov e8006c3253 engine: move ShellExecute to client, as it cannot be used in dedicated 2019-09-19 17:09:18 +03:00
Alibek Omarov 07aa9595c0 engine: android: allow building dedicated on Android 2019-09-19 17:09:18 +03:00
Alibek Omarov a1ae770f70 engine: ref: add optional export to determine actual human readable renderer name 2019-08-09 03:39:24 +03:00
Alibek Omarov 8bb6aa2c51 engine: don't include windows headers, as they globally included by port.h already 2019-08-09 02:46:29 +03:00
Alibek Omarov 505392c2f8 imagelib: png: include correct winsock 2019-08-09 02:35:53 +03:00
Alibek Omarov ee2c1ad8fa engine: net_ws: include engine headers first 2019-08-08 16:09:32 +03:00
Alibek Omarov 7771356e66 engine: net_ws: fix dedicated build 2019-08-08 07:33:47 +03:00
Alibek Omarov cb417a3d51 engine: client: implement connectionprogress partially 2019-08-08 07:19:08 +03:00
Alibek Omarov 386a68e334 engine: fix wrong function called on closing socket on Win32 2019-07-30 18:41:24 +03:00
Alibek Omarov ca57c8424d filesystem: follow C89 2019-07-30 18:20:54 +03:00
Alibek Omarov 0eb1d4c7c0 engine: build: fix armhf compiling 2019-07-29 06:53:18 +03:00
Alibek Omarov d790292829 engine: replace CFG_END macro with function, add saving support for R_GetConfigName 2019-07-28 00:27:35 +03:00
Alibek Omarov b1f23f9ff6 engine: patch dedicated to build 2019-07-27 15:40:57 +03:00
Alibek Omarov 8f9800eb3c ref: move R_DrawTree from refdll to engine, implement using ref's triapi 2019-07-27 13:27:40 +03:00
Alibek Omarov e308281b0b engine: fix buffer overflow in COM_ParseFile 2019-07-26 17:24:09 +03:00
Alibek Omarov 2f8fec6b70 Remove trailing spaces, convert mistakenly put spaces to tabs. The most useful commit ever. 2019-07-19 20:23:08 +03:00
Alibek Omarov b539ed5a3d engine: remove write_to_clipboard, as there was no way to enable it for a long time and no one even asked for this 2019-07-19 17:24:25 +03:00
Alibek Omarov 4eab7d6503
engine: fix build 2019-07-19 17:17:12 +03:00
Alibek Omarov cedc1e0eb2 engine: soundlib: show mpg123 errors in console 2019-07-13 23:25:55 +03:00
Alibek Omarov 4beba75159 engine: fix various compiler warnings 2019-07-13 23:25:03 +03:00
Alibek Omarov 9662ab106f engine: client: implement errormsg, secure client by checking server IP address we're connected to 2019-07-13 20:54:16 +03:00
Alibek Omarov a85a856215 engine: implement connection warning dialog showing up, update menu 2019-07-12 22:42:13 +03:00
Jonathan Poncelet 37255354d4 Various: Fixed obscure crashes on Mac
There were a couple of out-of-range/post-free accesses going on, which caused the Mac
build to crash when optimisations were turned on.
2019-07-12 18:18:42 +03:00
Alibek Omarov da4062ede9 engine: cmd: add apropos command from old engine 2019-07-09 16:36:34 +03:00
Alibek Omarov e700a7498e engine: move matchpattern from old engine 2019-07-09 16:36:15 +03:00
Alibek Omarov 7dda1c28f4 engine: console: add missing hpk commands autocomplete 2019-07-09 15:23:55 +03:00
Alibek Omarov 364c96f45c engine: console: sort output in commmand autocomplete for bind 2019-07-09 15:11:50 +03:00
Alibek Omarov 7aa163f713 engine: console: implement autocomplete for any arg count, add autocomplete for bind for both keys and commands 2019-07-09 15:08:00 +03:00
Andrey Akhmichin 83953c7fb3 Port ip filter and partially useragent from old engine. 2019-07-09 03:48:09 +03:00
Alibek Omarov 5e8d3acc51 engine: build: fix ARM64 macro 2019-07-08 19:10:49 +03:00
Alibek Omarov 54920f13df engine: rename library naming function, as it returns a full path and not just library name 2019-07-07 02:47:45 +03:00
Alibek Omarov efd2e434b4 engine: fix build on non-x86 archs 2019-07-07 00:20:38 +03:00
Alibek Omarov 8320f0598f Merge 4529 update 2019-07-02 23:44:42 +03:00
Alibek Omarov 2e2949b180 Apply 4529 update 2019-07-02 23:39:27 +03:00
Alibek Omarov 89a3fd6323 engine: make use of platform-unique library naming scheme 2019-07-01 05:50:04 +03:00
Alibek Omarov ec18dd9535 engine: implement platform-unique library naming 2019-07-01 05:48:53 +03:00
Alibek Omarov bb4c73b25c engine: build: lower case operating system names 2019-07-01 05:47:38 +03:00
Alibek Omarov 90e0c070ac engine: network: refactor net_ws.c since winsock2 is linked directly to engine DLL, correct some signness 2019-07-01 04:03:18 +03:00
Alibek Omarov b5d9bf5dc8 engine: add a function to determine if library has direct dependency on chosen DLL(Win32 only) 2019-06-29 23:25:50 +03:00
Alibek Omarov a378379ac5 engine: network: link to Winsock2 directly 2019-06-29 22:01:32 +03:00
Alibek Omarov bcb4c9a722 Merge remote-tracking branch 'nekonomicon/png' 2019-06-29 20:41:53 +03:00
Night Owl 4eee187f1b engine: common: imagelib: add simple decoder/encoder for 8-bit RGB/RGBA PNG images. 2019-06-22 16:06:44 +05:00
Alibek Omarov 76a8fe4873 engine: use build.h for printing architecture and operating system, also implement architecture names from library naming scheme proposal (#39) 2019-06-21 17:25:43 +03:00
Alibek Omarov 3ae7ecaeb3 engine: patched to compile, moved gl_clear to engine 2019-06-17 08:37:34 +03:00
Alibek Omarov f2c927906f Merge 4511 update 2019-06-17 07:36:46 +03:00
Alibek Omarov b16529cc65 Apply 4511 update 2019-06-17 07:05:36 +03:00
Alibek Omarov 8d2bea03e0
filesystem: disable netpath code
This code was used in ancient approach, where executables and game files may have different path.
And this code was working only on Win32 with case-insensitive `getenv()`
2019-06-10 00:21:41 +03:00
Alibek Omarov 70d45f23de public: crclib now is part of public library 2019-06-06 04:33:57 +03:00