26 Commits

Author SHA1 Message Date
Kawe Mazidjatari
6315a0c6c8 Launcher: light overhaul and use KeyValues class
Reworked some of the code to make globals static and used KeyValues class to parse VDF files instead.
2024-04-13 15:48:24 +02:00
Kawe Mazidjatari
d24d4a52dd Add EABase, EAThread and DirtySDK to R5sdk
DirtySDK (EA's Dirty Sockets library) will be used for the LiveAPI implementation, and depends on: EABase, EAThread.
2024-03-16 12:44:34 +01:00
Kawe Mazidjatari
7f6846a315 Upgrade Dear ImGui to 1.90.4 2024-02-25 01:47:46 +01:00
Kawe Mazidjatari
b1493215f1 Mathlib: remove unused SHA256 implementation
No longer used, SDK uses the MbedTLS implementation now.
2024-02-22 01:57:59 +01:00
Kawe Mazidjatari
b15b4dd524 Thirdparty: add LZ4 to project
Will be used for data block sender/receiver rebuild
2024-02-19 21:22:23 +01:00
Kawe Mazidjatari
45e95039e8 Add ZSTD to SDK 2024-01-29 23:00:16 +01:00
Kawe Mazidjatari
d6c175a5e5 Update third party legal notices
Added MbedTLS & l8w8jwt.
2023-10-15 16:51:47 +02:00
Kawe Mazidjatari
57feab706c Add NVIDIA NvAPI legal notice
Should be in the thirdpartylegalnotices.txt we ship with builds.
2023-09-16 17:45:38 +02:00
Kawe Mazidjatari
b85003a9ac Replace JSON library with RapidJSON
Less copies and overall CPU time parsing/constructing JSON's as we are mostly still using string pointers rather than STL string container.
2023-09-07 11:17:05 +02:00
Kawe Mazidjatari
8171d4530f
Update thirdpartylegalnotices.txt 2023-04-10 02:10:51 +02:00
Kawe Mazidjatari
ae8a6222fe Update license file
Add curl license in place of 'yhirose HTTP library', which has been replaced with curl.
2023-02-12 20:05:59 +01:00
Kawe Mazidjatari
5813c0ed24 Update thirdpartylegalnotices.txt 2022-09-07 02:12:56 +02:00
Kawe Mazidjatari
0c11011567 Add ImGuiColorTextEdit to project 2022-06-18 23:23:29 +02:00
Kawe Mazidjatari
11652d015d SDK launcher progress
* Fixed compiler error when trying to compile SDK Launcher in debug (static lib was not compiled with static link runtime).
* Documented most stuff in basepanel.cpp
* Split some logic into dedicated functions in basepanel.cpp
* Implemented VDF parser from Matthias Moeller.
* Parse playlist file and load all playlists into the combo box.
2022-05-26 01:44:46 +02:00
Kawe Mazidjatari
aedc722a8f Update thirdpartylegalnotices.txt 2022-05-04 03:10:56 +02:00
Kawe Mazidjatari
10474d07d7 Update JSON lib to version 3.10.5 2022-05-03 17:28:17 +02:00
Kawe Mazidjatari
7c9a50f0d5 Add proper license to project
The project was never licensed, it only contained third party licenses.
I determined to use the Source SDK 2013 license for this, as the majority of the business logic running this product is based on Valve's (the license has zero restrictions in the scope of our goal with this project).
The licenses has to be included with any depots from now on in the folder 'legal' placed in the root of the project folder (the location of r5apex_ds.exe).

With any new additions of third party code, the 'thirdpartylegalnotices.txt' file has to be updated accordingly.
2022-04-01 00:11:42 +02:00
Amos
ee51613492 Add libsdl library to project 2022-03-12 15:38:52 +01:00
Amos
bab20c0042 Add missing license file 2022-03-12 15:14:03 +01:00
Amos
f7df14d153 Add protobuf library to project 2022-02-10 00:19:49 +01:00
Amos
c187bed4c5 RCON implementation (see description)
* Fully rewritten protocol agnostic CNetAdr class
* Fully rebuilded legacy CNetAdr class
* Fully rebuilded dual-stack CSocketCreator class
* New project "netconsole" added (lightweight netconsole for RCON)

RCON is still work in progress
2022-02-06 16:48:52 +01:00
Amos
d5b2e58dae Code base refactor + major performance and readability improvement. Read description for details.
* Codebase restructured to SourceSDK codebase style and .cpp/.h assertion paths in the game executable.
* Document most functions with valve style 'Purpose' blocks.
* Rename variables to match the rest of the codebase and Valve's naming convention.
* Dedicated DLL and the SDKLauncher now share the same codebase as the DevSDK.

* Obtain globals or pointers directly instead of waiting for runtime initialized data.
* Dynamically search for all functions and globals (this doesn't count for dedicated yet!).
* Initialize most in-SDK variables.

* Move certain prints and other utilities under ConVars to reduce verbosity and increase performance.
* Print all pattern scan results through a virtual function to make it easier to add and debug new patterns in the future.
* Type global var pointers appropriately if class or type is known and implemented.
* Forward declare 'CClient' class to avoid having 2 'g_pClient' copies.
* Add IDA's pseudo definitions for easier prototyping with decompiled assembly code.

* RPAK decompress Command callback implementation.
* Load decompressed RPaks from 'paks\Win32\' overriding the ones in 'paks\Win64\' (the decompress callback will automatically fix the header and write it to 'paks\Win32\').

* VPK decompress Command callback implementation.
* Move CRC32 ands Adler32 to implementation files.

* Server will print out more details about the connecting client.

* Upgrade ImGui lib to v1.86.
* Don't compile id3dx.h for dedicated.
* Don't compile id3dx.cpp for dedicated
* Implement DevMsg print function allowing to print information to the in-game VGUI/RUI console overlay, ImGui console overlay and the external windows console

* Fixed bug where the Error function would not properly terminate the process when an error is called. This caused access violations for critical/non-recoverable errors.
* Fixed bug where the game would crash if the console or server browser was enabled while the game was still starting up.
* Several bug fixes for the dedicated server (warning: dedicated is still considered work-in-progress!).
2021-12-25 22:36:38 +01:00
Amos
a177f025d3 Add license files for MinHook 2021-08-01 01:49:19 -07:00
Amos
54de5fed0e Add spdlog library 2021-07-08 07:07:27 -07:00
Amos
1af04b0775 Add missing license files 2021-06-14 17:30:06 -07:00
Amos
9b5d80ee95 Add missing license files 2021-06-08 10:15:53 -07:00