17 Commits

Author SHA1 Message Date
Kawe Mazidjatari
e2f06a8a68 Massive performance improvements
Inline every signature defined in the SDK (previously each translation unit had its own copy of the signature and function prototype). DLL init is near instant now (85% speed improvements).
2022-04-09 02:18:57 +02:00
Kawe Mazidjatari
aa57170e0d Start of pattern search refactor 2022-04-09 01:14:22 +02:00
Kawe Mazidjatari
4a5823023d Add CHostState::Think ConVar's and new method to return double value 2022-03-27 11:42:24 +02:00
Amos
ff06cb71eb Fix build for S1 2022-03-07 11:36:45 +01:00
Amos
9506a5141a CConsole improvements
* Pad the autocomplete list with 18 to keep all items in view
* Show help text for ConCommand as well
+ Small code cleanup
2022-02-23 15:56:03 +01:00
Amos
4cfb06ff4a Finish ConCommandBase/Concommand/ConVar classes 2022-02-23 00:18:46 +01:00
Amos
c6cf40f539 Optimize console autocomplete and show usage text 2022-02-22 16:31:24 +01:00
Amos
9b8dfee460 Improve ConVar class + rebuild ConCommand class 2022-02-21 17:56:31 +01:00
Amos
ae0b439a3c Additional cleanup + optimizations 2022-02-21 12:06:05 +01:00
Amos
5d60324a2e Add more color logging + RCON color logging 2022-02-17 18:00:29 +01:00
Amos
3411c41eac ConVar optimizations 2022-02-06 19:15:34 +01:00
Amos
d555c39434 Rename to 'cmd' 2022-02-06 17:06:22 +01:00
Amos
65299affa1 Fix issue where connected clients could kick/ban players
This was caused by a bad mistake I made when setting flags for ConVars and ConCommands.

Set 'IsFlagSet()' query debug ConVars as Replicated.
2022-01-28 01:32:27 +01:00
Amos
381b97eb65 Remove unnecessary include
basetypes.h is now precompiled
2022-01-16 01:40:27 +01:00
Amos
c292d8ad46 Implement new ConVar features
Slight cleanup with new ConVar features to be used throughout the SDK
2022-01-09 16:18:35 +01:00
IcePixelx
0228f59062 Added indev Pylon(MasterServer) broadcasting to dedi. Read description for further information.
Dedicated RemoteFunctionCallsChecksum needs fixing because its currently always null.
Hidden needs to be implemented. I wouldn't say its needed currently till the Pylon re-write hits indev branch.
2021-12-28 02:23:13 +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