1523 Commits

Author SHA1 Message Date
Kawe Mazidjatari
7af660d613 Fixed rare bug where models where missing during level load
Some CMaterial instances are allocated on the heap, and we only check for bounds in .data/.pdata. Checking bounds is cheap, checking valid ptr's is not. However we are lucky most of the data is within the segments, so running this isn't too costly.
This fixes the problem where the large leaf model in worlds edge was missing.
2022-10-03 01:15:02 +02:00
Kawe Mazidjatari
2d7b06f0a0 More VPK compressing/decompressing optimizations
* Use reference to array index.
* Only obtain array size once during loop.
* Use static buffer of 1024*1024 for decompressing.
* Removed extraneous goto.
* Fixed bug where shared data would be mapped wrong due to the last optimization.
* This increased packing performance by 40/60 seconds when rebuilding all vpk's.
2022-10-02 19:24:00 +02:00
Kawe Mazidjatari
0451a75f85 Use static buffer for file chunking and compressing during VPK packing
Avoid using new every time. Chunk can be at most 1024 * 1024.
2022-10-02 12:17:03 +02:00
Kawe Mazidjatari
33e1795cf1 NavMesh util assert cleanup
Use actual array size for array access asserts.
2022-10-02 02:19:07 +02:00
Kawe Mazidjatari
f18f2f3e9e Store CCommand argument pointer
Only obtain it once.
2022-10-02 02:18:11 +02:00
Kawe Mazidjatari
43fdbc94da CPackedStore::PackAll optimizations
* Hash chunk before compression to determine if it already exists or not (don't run compression if it does).
* Use the result of vector::insert for data sharing (insert already checks if it exists or not, and returns the iterator).
* This optimization saves around 20 seconds total when rebuilding all VPK's.
2022-10-02 02:16:51 +02:00
Marvin D
310059a75b remove dev_loadout_changeable_at_any_time, see latest scripts commit 2022-10-01 18:35:21 +02:00
Kawe Mazidjatari
f215ca0720 Improve bullet-hit trajectory debug
The ConVar 'bhit_abs_origin' will now draw a sphere at the predicted abs origin of the entity upon hit. This is useful for debugging lag compensation on the server (white star).
2022-10-01 00:27:51 +02:00
Kawe Mazidjatari
dbc47f81aa CAI_Utility: only check ConVar's once a frame
Obtain values of ConVar once a frame instead of checking within loop. There is no point changing the values while we are rendering. Thi sshould increase performance when drawing larger NavMeshes.
2022-10-01 00:25:21 +02:00
Kawe Mazidjatari
69491acb49 Additional NavMesh draw optimizations using SIMD
* Construct min/max for AI Script Network boxes using SIMD (significantly reduced instruction count!).
* Move NavMesh debug draw to dedicated class for future changes.
2022-09-30 01:16:26 +02:00
Kawe Mazidjatari
e111587dd7 Utilize SIMD for 'DrawNavMeshPortals'
* Use SIMD to construct vertices into single XMM register.
* Use SIMD to construct origin and destination vectors from vertices.
* Deref 'navmesh_debug_camera_range' only once outside the render loop.
* Light code cleanup.
2022-09-29 22:26:27 +02:00
Kawe Mazidjatari
f06c9a01e2 Utilize SIMD for 'DrawNavMeshPolys'
* Use SIMD to construct a Vector3D in a single instruction, instead of setting the vector fields individually.
* Store ConVar value as const bool outside loop.
* Slightly improved variable naming.
2022-09-29 20:14:39 +02:00
Kawe Mazidjatari
a6a44feb4d More NavMesh visualization SIMD optimizations
Use SIMD to construct Vector3D's for the BVTree's min/max.
2022-09-29 15:59:48 +02:00
Kawe Mazidjatari
2df13ecdfc NavMesh optimizations
Use SSE for subtraction of origin scalars
2022-09-29 10:59:27 +02:00
Kawe Mazidjatari
cc26113c9e Implement debug draw AIN node links to nearest node
Feature can be toggled using the "ai_script_nodes_draw_nearest" cvar.
2022-09-28 00:14:33 +02:00
Kawe Mazidjatari
9fb248c8b4 Add diagnostic tool
This tool helps identifying common problems during installation.
2022-09-25 22:52:15 +02:00
Kawe Mazidjatari
b34446029b Set developer and cheats cvar when "Enable Cheats" is ticked
This is required for the in-game dev-menu to work.
2022-09-25 22:20:32 +02:00
Kawe Mazidjatari
926b410bce Increase net channel process time budget to 50ms
New value is 200ms, this should fix the very few false positives.
2022-09-25 22:16:52 +02:00
Kawe Mazidjatari
1953493945
Merge pull request #84 from kralrindo/master
add voyage
2022-09-25 21:47:08 +02:00
Kawe Mazidjatari
c4299cb758 Remove unnecessary launch params v2.2_rc0 2022-09-25 20:20:25 +02:00
Kawe Mazidjatari
ba00d99e03 Add NavMesh build batch file 2022-09-25 16:13:06 +02:00
Kawe Mazidjatari
af5c513ecd Remove useless parameters
'-lv' forces "low violence" which overrides the GAME path with _lv.
2022-09-25 15:33:28 +02:00
Kawe Mazidjatari
bef7f352d6 Implement '-novid' param check
the parameter check for '-novid' has been removed from S2 onwards, but later added back in. Our S3 build doesn't have it as well. This commit adds it back in and allows user to launch the game without the startup video's by adding '-novid' to the launch arguments. ('-dev' also works, but this enables developer and sv_cheats..).
2022-09-25 13:36:55 +02:00
Kawe Mazidjatari
94db7b2faa Version gate (006) 2022-09-25 12:15:49 +02:00
Kawe Mazidjatari
0c3817e372 Add 'mp_rr_desertlands_64k_x_64k_tt' to VPK build system 2022-09-25 01:46:43 +02:00
Kawe Mazidjatari
b1dac77175 Update playlists file 2022-09-25 01:24:46 +02:00
Kawe Mazidjatari
734d3307ed Update R5R emblem 2022-09-25 01:20:48 +02:00
rexx
6310d239af
Merge pull request #82 from AyeZeeBB/indev
Update playlist name vars
2022-09-24 22:15:40 +01:00
Kawe Mazidjatari
61be76dfb7 Merge branch 'master' into indev 2022-09-24 22:46:00 +02:00
Kawe Mazidjatari
2fa2fd1433 Make 'pak_listpaks' FCVAR_RELEASE 2022-09-24 22:44:57 +02:00
rexx
769cfc1d29 change pylon_showdebuginfo flag to FCVAR_RELEASE 2022-09-24 21:12:26 +01:00
kralrindo
9cb27d52ad add voyage 2022-09-24 21:29:31 +03:00
rexx
93f482d412
Merge pull request #83 from kralrindo/master 2022-09-24 08:15:39 +01:00
kralrindo
ddb7a51776 Merge branch 'master' of https://github.com/kralrindo/r5sdk 2022-09-24 09:43:21 +03:00
kralrindo
72dfb940f5 update playlist 2022-09-24 09:41:04 +03:00
I-Am-Zee
b4dd58c96e Merge branch 'indev' of https://github.com/AyeZeeBB/r5sdk into indev 2022-09-24 00:57:24 -05:00
I-Am-Zee
3daa8a8696 Update playlist name vars 2022-09-24 00:56:14 -05:00
I-Am-Zee
0733835ce0 Merge remote-tracking branch 'upstream/master' into indev 2022-09-24 00:50:05 -05:00
Kawe Mazidjatari
72fcb28f63 Update playlists file 2022-09-24 00:13:39 +02:00
Kawe Mazidjatari
422c9952d2 Force no net processing budget on development launch v2.1_rc9 2022-09-23 00:15:28 +02:00
Kawe Mazidjatari
524962ac44 Pass -dev from the launcher
Must be passed from the launcher, as this is removed from the configuration files for prod. Ticking the development box will pass '-dev' and '-devsdk'.
2022-09-22 22:25:32 +02:00
Kawe Mazidjatari
5ce4af6ec6 Update configuration files
-dev is now removed from every prod cfg.
-developer 1 is now removed from every prod cfg.
2022-09-22 22:24:40 +02:00
Kawe Mazidjatari
23eba316df Cmd: add rate limit logic for 'Cmd_ForwardToServer'
If the client happens to exceed the quota by accident, the client will not be disconnected. This is a quality of life change. Client could still increase cl_quota_stringCmdsPerSecond to allow more submissions per second, or disabling the throttle entirely by setting cl_quota_stringCmdsPerSecond to 0.
2022-09-22 21:37:58 +02:00
Kawe Mazidjatari
484f3251d1 Variable rename for readability 2022-09-22 21:20:37 +02:00
Kawe Mazidjatari
bf16fc1a38 Fix dedicated.dll compile errors 2022-09-22 21:20:14 +02:00
Kawe Mazidjatari
d0b989be26 SQVM: fix undefined behavior when getting the error line
Leave 1 byte for the null terminator.
2022-09-22 17:51:41 +02:00
Kawe Mazidjatari
41083a7324 Revert typedef 2022-09-22 17:13:05 +02:00
Kawe Mazidjatari
de2400f6a2 Implement StrintCount utility
Counts the number or delimiters found in a given string
2022-09-22 17:08:20 +02:00
Kawe Mazidjatari
4cda4371cb ScriptFunctionBinding_t: light cleanup and map out more fields 2022-09-22 17:07:36 +02:00
Kawe Mazidjatari
7818385fa0 Improve naming convention in sqcript.h/cpp
Use Squirrel's naming convention.
2022-09-22 16:26:55 +02:00