141 Commits

Author SHA1 Message Date
Kawe Mazidjatari
40bcef2682 Fixup exec paths in 'build_all_vpk.cfg'
Point to new location that changed in commit afb09e1d.
2023-07-14 00:39:08 +02:00
Kawe Mazidjatari
afb09e1d05 Cleanup CFG directory
Move to dedicated subdirectories.
2023-07-13 23:15:10 +02:00
Kawe Mazidjatari
cfa2172322 Undo CUtlBuffer::ParseToken patch
The bug was only reproduced on the compiled implementation in the game executable. The CUtlBuffer::ParseToken implementation in the SDK did not bug on the same input string. More research is required, and a possible good fix would be to just hook and replace the game's implementation with that of the SDK.
2023-06-23 00:27:24 +02:00
Kawe Mazidjatari
a93824b2db Discard invalid string commands
Must be UTF-8 encoded, currently there are no checks.
2023-06-22 23:45:19 +02:00
Kawe Mazidjatari
4290b08fd0 Fix desync in CUtlbuffer::ParseToken in assembled code
See commit 4969a840300bbafbc5a47f06fef41751a5620fc9, the same fix has been applied to the game executable.
2023-06-07 22:15:28 +02:00
Kawe Mazidjatari
70f89c1bd8 Fix incorrect ConVar string assignment in executable
This ConVar's name was set to its helpstring. This patch solves it by assigning the name field to an existing string that makes sense, and moving the helpstring into the actual helpstring field. An additional instruction has been inserted to load the NULL string address into RAX, which required light instruction shifting. After performing this patch, the ConVar now could be ser in the console.
2023-06-05 10:27:23 +02:00
Kawe Mazidjatari
1afa75fec3 Fix >190FPS input system/simulation problems
Function 'CL_Move' has been fully rebuild in the SDK. Originally, the game checked if the delta time exceeded an amount defined by an immediate value, and dropped usercmd's if that was the case. This logic has been replaced with a more dynamic solution, and the console variable regulating this ('fps_input_max') is set to 200.0 by default (the same as the fix applied in the Season 9.1 Genesis update). This function also has been slightly optimized by removing duplicate operations that were performed in the original function. A second fix has been applied to 'CInput::JoyStickApplyMovement' that was also found changed in the Season 9.1 Genesis executable. In that function, an extraneous clamp was performed on the frame time causing viewstick problems when usercmd's get dropped in CL_Move.
2023-06-03 21:20:23 +02:00
Kawe Mazidjatari
a061f7dd00 Optimize C2S_CONNECT vuln fix
Save 2 bytes from segment padding by performing zero test at original address followed by the long jump to patch, there were 5 bytes, zero test only requires 2, thus only 3 bytes were nopped with these changes.
2023-05-31 21:25:16 +02:00
Kawe Mazidjatari
c2799ff68c Fix bug in vulnerability patch
Value should be treated as unsigned, else negative values could still be used to read outside the static buffer.
2023-05-30 20:24:52 +02:00
Amos
46fafef60c Fix vulnerability in C2S_CONNECT message parser
Thanks Robotic for reporting the crash!
2023-05-30 10:03:53 +02:00
Kawe Mazidjatari
71b7770968 Add BSP converter batch file
Automate BSP version conversions.
2023-05-29 01:04:39 +02:00
Kawe Mazidjatari
245d13cea8 Create map rename script
Rename all files associated to a BSP with a single command.
2023-05-28 10:31:17 +02:00
Kawe Mazidjatari
1fbc3291c7 Fix EOF read errors and PAKFILE_LUMP not loading correctly when discrete
This commit adds support for loading cubemap lumps from the disk, several patches and hooks had to be implemented to make this work. Since the game was trying to read the pakfile lump from the BSP file (even when absent), it would read EOF (heavily reduces down map loading performance).
2023-05-22 12:32:49 +02:00
Kawe Mazidjatari
0c26cc9b10 Add MOTD to playlists
Temporary MOTD.
2023-05-01 23:45:16 +02:00
Kawe Mazidjatari
848098c71d Update state machine initialization order
* Run autoexec(_dev).cfg before anything else.
* Always initialize RCON (only gets ran if an actual password is set).
* Removed 'Cbuf_Execute()' call from 'CHostState::LoadConfig', let it run in the frame loop instead.
* Removed hardcoded set call for 'net_usesocketsforloopback', will be set in autoexec from now on.
2023-04-30 11:39:20 +02:00
Kawe Mazidjatari
94ae3e58ce Fix exploitable code defect in 'CNetChan::ProcessSubChannelData'
Patch applied to server & client.
2023-04-13 22:38:03 +02:00
Kawe Mazidjatari
4c8952ac96 Improve formatting in patch file document 2023-04-13 20:29:46 +02:00
Kawe Mazidjatari
a26ad748c8 Add patch for dedicated server executable
This patch prevents 'fps_max' from being reset in 'CEngine::Frame' if 'sv_cheats' isn't set; this cvar is now bound to the server's tickrate in sdk code to save CPU time.
2023-04-10 22:36:32 +02:00
Kawe Mazidjatari
fd2c7864b9 Update VPK build scripts
* Added 'mp_rr_party_crasher'.
* Renamed 'mp_lobby' to 'mp_common' for server.
2023-04-10 02:09:16 +02:00
Kawe Mazidjatari
df98f30c57 Rename '-ansiclr' to '-ansicolor' 2023-03-27 17:10:11 +02:00
Kawe Mazidjatari
608f14e920 Update protobuf source files
Added new field 'messageType'; renamed 'responseID' to 'messageID', renamed 'responseBuf' to 'responseMsg'.
2023-03-27 01:37:15 +02:00
Kawe Mazidjatari
27ddc30d68 Prune ununsed/useless cvars
Also removed these from the CFG files.
* 'sq_showvmoutput' has been renamed to 'script_show_output'.
* 'sq_showvmwarning' has been renamed to 'script_show_warning'.
2023-03-26 18:18:50 +02:00
rexx
af547c4a5e
Fix typo in dedi patch file 2023-02-26 21:47:32 +00:00
Kawe Mazidjatari
353aee5c2f Add new dedicated server patches 2023-02-26 22:20:06 +01:00
Kawe Mazidjatari
e640ecc391 New dedicated server (r5apex_ds.exe) patches
Added 2 new patches:
* Patch0: Unnecessary loop called from 'CModelLoader::UnloadModel'. This calls a 'nullsub' CMaterialGlue vtable method.
* Patch1:  CClientState constructor; Removed due to high mem allocation during init (100MiB+). 'CClientState' is useless on dedicated, and all its feature are thereof disabled.
2023-02-26 19:45:11 +01:00
Kawe Mazidjatari
e738ed9cc5 Update playlists file
Disable circle spawn by default in dev_default.
2023-02-12 23:11:41 +01:00
Kawe Mazidjatari
7928ac3b4c Fix SDK Launcher compiler error
Path has to be changed due to project include changes. The r5dev directory is no longer a system include, however, the compiler expects includes from system when compiling resources.
2023-02-06 23:53:32 +01:00
Kawe Mazidjatari
a8ef2b74cd Implement ConCommand completion logic
Implementation of the ConCommand completion logic for the Dear ImGui console panel.
2023-02-05 19:21:39 +01:00
Kawe Mazidjatari
0895adff35 Disable server hitbox debug draw by default
Disabled by default in development cfg's.
2023-01-30 21:47:30 +01:00
Kawe Mazidjatari
70d20db811 Update default development cfg's 2023-01-29 17:20:29 +01:00
Kawe Mazidjatari
184f5cae4b Update default RCON cfg's 2023-01-29 17:18:16 +01:00
Kawe Mazidjatari
fb0a298593 Add protoc batch
Automate compilation of .proto files.
2023-01-26 03:15:54 +01:00
Kawe Mazidjatari
08a550327a Fix bug in engine caused by missing comma separator
Valve and Respawn Entertainment forgot a comma in 'g_FieldTypes' causing "FIELD_INTERVAL" and "FIELD_MODELINDEX" to be concatenation. The engine executable patch fixes this problem
2022-12-26 16:58:07 +01:00
Kawe Mazidjatari
138e7d99af Update '-forceborder' comments and add patch documentation file
The documentation file for all patches applied to 'r5apex.exe' could be found in 'r5dev/resource/patch/r5apex.patch'. This is a text file containing the offset to the patch and its original instructions followed by the new instructions.
2022-12-07 01:03:07 +01:00
Kawe Mazidjatari
2a76cf40fb Add obsolete files to the deletion list 2022-12-07 00:53:29 +01:00
Kawe Mazidjatari
f999372f37 Work in progress signature cache map loading and parsing 2022-12-01 22:47:39 +01:00
Kawe Mazidjatari
cf1adef1a2 Add FCVAR_RELEASE unknown and extended flag textures
If FCVAR_RELEASE but not restricted by context, then display this texture in the console suggestion window.
2022-11-11 20:12:20 +01:00
Kawe Mazidjatari
65ba543ed2 Update flag textures
Set red and blue color to match that of other textures
2022-11-11 18:39:01 +01:00
Kawe Mazidjatari
ab7262fec5 Update default/retail startup config files 2022-11-10 16:16:50 +01:00
Kawe Mazidjatari
3511aff224 Execute "bind.cfg" on startup
Users could put custom binds in here.
I also unbound all dev-only binds by default to suppress warnings or prevent issues.
2022-11-10 15:42:27 +01:00
Kawe Mazidjatari
189e6602a6 Rename 'vpk/englishserver_mp_common.bsp.pak000_dir.vpk' to 'vpk/englishserver_mp_lobby.bsp.pak000_dir.vpk' 2022-11-10 11:47:36 +01:00
Kawe Mazidjatari
0c13ca4e3f Only run threaded bone setup when we don't run the listen server
The Season 3 versions of the executable deadlock when threaded bone setup has been enabled on the client while the listen server has ran at least once during the process lifetime.
2022-11-10 11:47:02 +01:00
Kawe Mazidjatari
a8fd5a24f5 Add flag textures and logic for 3 or more flags
Only check if FCVAR_DEVELOPMENTONLY or FCVAR_CHEAT is set and return a blue/red colored checkered texture. Return a rainbow checkered if 3 or more flags are encountered which are not indexed. Return half texture if 2 flags are encountered, but the second bit is not indexed.
2022-11-10 01:17:53 +01:00
Kawe Mazidjatari
8403362f70 Update playlists file 2022-11-03 02:33:03 +01:00
Marvin D
6a91e3c7e8 playlist indent 2022-10-23 01:28:10 +02:00
Kawe Mazidjatari
2dcae7b161
Merge pull request #90 from kralrindo/master
update playlist
2022-10-21 22:12:02 +02:00
Kawe Mazidjatari
6f66b3fb31 Merge branch 'indev' into master 2022-10-21 22:02:23 +02:00
kralrindo
8d005ee93c update playlist 2022-10-21 18:47:47 +03:00
Kawe Mazidjatari
bc1c922f96 Format playlist 2022-10-20 20:00:57 +02:00
kralrindo
34b6275f9a
Merge branch 'Mauler125:master' into master 2022-10-20 20:20:31 +03:00