Alibek Omarov
7da9772143
engine: check for macOS bundle in SDL_GetBasePath, and fallback to SDL_GetPrefPath for our directory
2025-01-23 22:58:19 +03:00
Alibek Omarov
f0b29bac1b
engine: client: add cl_trace_consistency used to print which resources server wants to check
2025-01-23 13:57:17 +03:00
Alibek Omarov
c86c45503f
engine: replace few more Xash3D strings by XASH_ENGINE_NAME macro
2025-01-23 10:33:22 +03:00
Alibek Omarov
ef75a4c28d
engine: rename pref path on Mac to Xash3D FWGS by allowing for custom branding through XASH_ENGINE_NAME macro
2025-01-23 10:24:55 +03:00
Alibek Omarov
bccd3f2271
engine: pass launcher's default game directory all the way down to Platform_Init, so we mount correct extras.pk3 on Mac
2025-01-23 10:22:53 +03:00
Tom Kidd
7bbc3e8238
Made modifications for Mac App Bundle
...
- Looks for game data in SDL pref path (Application Support)
- Sets XASH3D_EXTRAS_PAK1 to SDL base path (Resources dir in App Bundle
- Added option to force search for SDL dylib via pkgconfig on Darwin instead of Framework (option for Mac Source Ports build process)
2025-01-23 10:15:47 +03:00
Alibek Omarov
c34e0c66d9
engine: add fuzzing target for Mod_LoadModel
2025-01-23 10:12:32 +03:00
Alibek Omarov
1e075d25b7
engine: make LZSS compression optional for 49 protocol, disable it for local clients (singleplayer)
2025-01-22 21:18:19 +03:00
Alibek Omarov
d29e53481d
engine: client: remove unused S_StreamAviSamples
2025-01-22 20:01:11 +03:00
Alibek Omarov
d23a2fd2df
engine: client: stub AVI_StreamSound RenderAPI call, it is not used in ffmpeg-based video playback code
2025-01-22 20:00:50 +03:00
Alibek Omarov
f6f15cc204
engine: mod_studio: validate studio self-reported length before loading model
2025-01-22 20:00:13 +03:00
Alibek Omarov
9f322df498
engine: imagelib: handle loading truncated palette files, by filling remaining bytes with zeros
2025-01-22 19:21:51 +03:00
Alibek Omarov
c2da140ccc
engine: model: do not crash if renderer refused to load this model
2025-01-22 19:12:43 +03:00
Alibek Omarov
375998dffb
Cleanup xash3d_types.h from engine-specific macros and types
2025-01-22 15:10:18 +03:00
Alibek Omarov
787444f63d
engine: simplify sound fx allocation
2025-01-22 14:46:40 +03:00
Alibek Omarov
0c50076ff0
engine: zone: ensure poolcount is zero on Memory_Init
2025-01-22 13:49:51 +03:00
Alibek Omarov
8ce01c38c7
engine: http: ensure we don't write broken decompressed files
2025-01-22 13:49:24 +03:00
Alibek Omarov
cac6206984
engine: client: allocate everything related to sounds in the sound pool
2025-01-22 13:49:02 +03:00
Alibek Omarov
a5c88bdda9
engine: touch: allow smoother migration from old engine touch configs by stripping .tga extension
2025-01-22 13:40:47 +03:00
Alibek Omarov
fc017286a6
engine: base_cmd: slightly faster search based on assumption that list is always ordered
2025-01-22 05:41:52 +03:00
Alibek Omarov
20d4e3e719
engine: fix flexible array member usage in case of null terminated strings
...
(woops)
2025-01-22 05:41:52 +03:00
Alibek Omarov
4eaa32fc10
engine: whereami: sync with upstream
2025-01-21 20:03:20 +03:00
Alibek Omarov
2065ef143a
engine: server: fix ent_create under PrimeXT
2025-01-21 16:09:56 +03:00
Alibek Omarov
9a8761f1d8
engine: client: remove unused NetAPI_ValueForKey function
2025-01-21 15:17:03 +03:00
Alibek Omarov
273990d292
engine: cmd: store command description in flexible array member
2025-01-21 15:06:08 +03:00
Alibek Omarov
8a9b209db0
engine: zone: optimize memory usage a bit by compressing memheader_t better while keeping it efficient
...
It saves about 40 kilobytes of memory.
2025-01-21 14:04:33 +03:00
Alibek Omarov
232d1f8583
engine: make separate mempools for cmds, cvars and basecmd
2025-01-21 11:26:35 +03:00
Alibek Omarov
6cfa5877a4
engine: base_cmd: decrease base cmd hash size
2025-01-21 11:25:33 +03:00
Alibek Omarov
c5649c94d5
engine: client: fix delta entity packet flush on GoldSrc protocol
...
Implement counting playerbytes for more accurate net_graph, even if we're
skipping this delta frame.
2025-01-20 19:38:44 +03:00
Andrey Akhmichin
d278d3bdd7
engine: common: fix clang build.
2025-01-19 04:33:06 +03:00
Alibek Omarov
7811b60292
engine: common: fix build for apple and freebsd-15
2025-01-18 10:40:12 +03:00
Alibek Omarov
3e93aa459d
engine: net_buffer: turn bit write and read masks into predefined arrays, so we don't have to call InitMasks
...
In future, net_buffer might get moved to libpublic.
Also, get rid of 32-th bit write mask, it's only get used when we're trying to
write zero bits value which is nonsense.
2025-01-18 09:54:11 +03:00
Alibek Omarov
626c5e44f6
engine: client: use existing engine functions for some client API functions
2025-01-18 09:44:21 +03:00
Alibek Omarov
5b9db5940b
engine: mod_bmodel: don't try to load luma/fullbright texture for water, as no renderers support it anyway, and instead we will use that field for rippletexture
2025-01-18 08:30:59 +03:00
Alibek Omarov
4b1b3aa13c
public: remove Q_colorstr, as it's completely useless and checking for color string is easy actually
2025-01-18 08:29:36 +03:00
Alibek Omarov
2d51d23d89
engine: client: don't send commands until ca_active on Xash protocol
2025-01-17 15:06:59 +03:00
Alibek Omarov
b5b6dad39c
engine: fix a typo in scroll lock (missing L)
2025-01-15 23:49:13 +03:00
Alibek Omarov
a5619e9960
engine: take keydefs header from Quake-2 source code (client/keys.h)
2025-01-15 23:47:55 +03:00
Alibek Omarov
a75666a3cd
engine: common: fix dedicated build by defining SV_GetMaxClients before CL_GetMaxClients stub (that redirects to it)
...
Also remove CL_Shutdown from dedicated stub lists.
2025-01-14 13:10:02 +03:00
Alibek Omarov
49426721d8
engine: use zero initializers instead of memset
2025-01-14 12:11:27 +03:00
Alibek Omarov
04125284a3
engine: dedicated: make some stubs inlined
2025-01-14 12:10:31 +03:00
Alibek Omarov
1d4f7b2f94
engine: server: slight refactoring, make SV_ModelHandle inlined, move PlayerIsFrozen to sv_client, fix packet loss data type
2025-01-14 12:09:23 +03:00
Alibek Omarov
38c82a3f76
engine: don't bother calculating crc32 for local clients for better performance (thanks @tyabus for the idea)
2025-01-14 11:55:28 +03:00
Alibek Omarov
4be75af214
engine: client: always write buffer.dat so we will be able to request it from users. Append protocol number to it
2025-01-14 11:31:10 +03:00
Alibek Omarov
69341e36a3
public: expose commit and branch as global variables instead of functions
2025-01-13 20:02:59 +03:00
Alibek Omarov
90e493fa3a
engine: common: add Host_ExitInMain function that will force engine return from Host_Main() function, essentially making engine gracefully exit on Android
...
In future, this might be used everywhere, so users would be able to add custom
cleanup in some advanced game_launch implementation, on any platform.
2025-01-09 20:31:26 +03:00
Alibek Omarov
692bcc4073
engine: client: cl_tent: rewrite fizz effect, fix incorrect positoning along the way
2025-01-09 19:23:40 +03:00
Alibek Omarov
07189ca2f5
engine: client: remove spammy message about not precached model on client side
...
Recently, mods (Brutal Half-Life v3 and MMod) started to call this function
every frame as a hacky way to detect presence of some model on the level. I
don't know why they do that, but users (who co-incidentally run engine with
-dev) has been complaining about console spam.
This is why we can't have things.
2025-01-09 17:10:54 +03:00
Alibek Omarov
0d55441830
engine: properly pass shutdown reason down to close log, helps to finally get rid of global finalmsg
2025-01-09 08:04:18 +03:00
Alibek Omarov
98ff33d9e2
engine: mod_bmodel: rewrite .lit file loader using normal stream io functions
2025-01-09 08:02:39 +03:00