26 Commits

Author SHA1 Message Date
Kawe Mazidjatari
180d762089 Fix SDK launcher bugs
Fixed bugs preventing the SDK launcher from working when compiled using the Visual Studio 2017 compiler.
2023-03-19 11:20:04 +01:00
Kawe Mazidjatari
96fb0519d9 Update launcher help text 2023-01-16 17:59:49 +01:00
Kawe Mazidjatari
4bc0aaf1e6 Fix launcher command line for client.dll
Launcher command line did not pass "-noworkerdll" which is required if the game is launched as game client only.
2022-10-20 14:23:24 +02:00
Kawe Mazidjatari
46d3819f63 Update sdklauncher.cpp 2022-10-03 01:23:00 +02:00
Kawe Mazidjatari
65f17cfa8e Remove extraneous semicolons from string concat in sdklauncher 2022-10-03 01:16:56 +02:00
Kawe Mazidjatari
8e75c57f0d Use retail/dev naming convention
Renamed 'debug' cfg's to 'dev', refered anything in code as retail/dev/prod.
2022-09-21 20:40:34 +02:00
Kawe Mazidjatari
fb7ab18a0b Minor spelling fixes 2022-09-11 00:19:31 +02:00
Kawe Mazidjatari
b3ed5d4052 Fix client.dll compile errors
Stripped more server only stuff from client.dll.
2022-07-21 15:13:48 +02:00
Kawe Mazidjatari
6317888d57 Remove redundant includes 2022-06-06 23:11:01 +02:00
Kawe Mazidjatari
306174afdf Fix typo 2022-05-28 16:12:56 +02:00
Kawe Mazidjatari
e1799887d0 Finished GUI SDK Launcher
Implemented logic behind console frontend.
cleaned up sdklauncher.cpp (methods properly split up in class).
2022-05-26 22:04:50 +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
dacd307663 See description
* Finished designer code for launcher gui.
* Basic implementation of setting flags for host launch option.
* Check in 'CHostState::LoadConfig' if -launcher is below 1.. if condition is met the cfg's will be executed from 'CHostState::LoadConfig'.
* Added 'StringIsDigit' utility.
2022-05-24 02:23:37 +02:00
Kawe Mazidjatari
7225de1bd4 Finished designer code
Work in progress gui launcher
2022-05-23 19:14:12 +02:00
Kawe Mazidjatari
637041d5e7 Use 'fs' instead of 'std::filesystem' 2022-05-16 21:54:46 +02:00
Kawe Mazidjatari
f2a5c8ac68 See description
* Renamed 'r5apexsdkd64.dll' to 'gamesdk.dll'.
* Added required dedicated parameters to code instead.
* Bug fixes around CCommandLine class (fixed misaligned VTable indexes).
* SDK now supports being directly launched by the game executable.

The SDK launcher will pass '-launcher' to the game, which indicated its being launched by the launcher. If the game does not receive '-launcher', it assumes its being launched directly from the game executable, which will instead load 'startup_(dedi_)default.cfg'.

The sdk dll's are now added to the game's IAT by their dummy exports allowing for them to be loaded when the exe is loaded (the dll's do everything on init).
2022-04-16 00:30:46 +02:00
Amos
cf92d64a27 Use unicode character set instead of multi-byte 2022-03-04 16:06:36 +01:00
Amos
3f50736e48 Light cleanup 2022-01-22 15:42:35 +01:00
IcePixelx
88534a4c7f fixed release dedi setting debug settings. 2022-01-20 17:25:35 +01:00
Amos
7558ed1b5f Fix dedicated only launching in debug 2022-01-20 03:10:25 +01:00
Amos
03e700bac1 Move 'PrintLastError()' to utility.cpp 2022-01-19 23:14:50 +01:00
Amos
dd50004c61 Fix typo in sdklauncher.cpp
Thanks Julefox!
2022-01-19 19:03:59 +01:00
Amos
f695abc03f Update sdklauncher and reflect to readme 2022-01-16 12:48:56 +01:00
Amos
19f5010bd2 Fix compiler error + rename debug dll's
Rename for easier debugging and config separation
2022-01-09 16:29:36 +01:00
Amos
b514f928a6 Use a separate executable for dedicated server
The dedicated server still has directx dll imports which will cause issues with ReShade or 3DMigoto, or trying to load it on a headless machine with no directx installed. The imports have to be cleared to avoid issues. The most convenient approach is to do this with a separate exe rather then patching it in runtime.
2021-12-29 02:16:28 +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