* Fixed assert on ImGui on IBrowser because ImGui::Begin wasn't followed up by ImGui::End
* FileExists got modernized. Using std library instead of Windows native functions now.
* RTech::DecompressedSize is actually readable now thanks to steyk.
* Same goes for RTech::Decompress
* rtech_decompress prints the decompressed file CRC32 now and writes the file all at once.
* Fixed ImGui assert on spamming SetupImGui();
* 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!).
'Changelevel 'concommand works consistently and indefinitely now
Huge strip down in resource usage. Few things to be fixed still so idle mem usage is still balooned due to a temporary solution brought in place to prevent crashing when loading texture and material assets.
Stripping texture and material assets preloading from the root caused issues in 'CStudioRenderContext' and 'ModelLoader'. This needs to be addressed in the future
Exact line of the issue: Line 177 in opcodes.cpp:
"gCSourceAppSystemGroup_Create.Offset(0x384).Patch({ 0x90, 0x90, 0x90 }); // PrecacheMaterial"
* Completely re-wrote the DirectX creation and hooks.
* Using spdlog mostly everywhere now.
* Added prints for when compiled in debug.
* Using LockCursor now to prevent input to the game while in the gui.
* Patched the game to call CMatSystemSurface::LockCursor instead of it calling the inlined version.
* Added rebuild CHostState::FrameUpdate (Not finished yet)
* Added option to print to command prompt again.
* Added log Auto-Clear.
* Added scan for NetChan Encryption Key Pointer.
* Added more error handling when loading gui config.
Based on MrSteyk's dedicated patch.
Additional patches targets the disabling of the client.dll library and VGUI. The disabling of the client.dll library initialization caused several issues to be investigated still (currently loops fine in _Host_RunFrame()). but executing a map command currently makes it only load the mp_common VPK before getting stuck somewhere. Setting hoststate to a valid map with HS_NEW_GAME (manually) does something to the engine but does not force the server to load anything yet.
Added enums and classes from r5dev project.
Adds spdlog library instead for clearer output.
Adds precompiled header for slightly faster compilation.
Updated print text with clearer details.
Renamed to "r5reloaded.exe" instead to match files in game directory
* Parsing playlist from keyvalues now.
* When hosting a server it will ask for a playlist to be chosen.
* Load playlist on demand into memory.
* Load playlist from disk.
* Added LoadPlaylist hook to clear the MapVPKCache that causes crashes with launchplaylist concommand
* KeyValues class is useable now.
commit 906dff5aa4289ddda61be508b6b20320f5cfb7bf
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Fri Aug 20 12:37:09 2021 +0200
Update r5net.cpp
commit 4f463eb446f5ebf561d42db0f6cb2bed8a43e517
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Fri Aug 20 12:26:32 2021 +0200
Fixed error message parsing in r5net.
commit 64aa6e7f97ea9461ed5d5795901e427732fb62bd
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Thu Aug 19 14:48:31 2021 +0200
Fixed prints.
commit bb4b4d76366eccd7687bdfe970e50274320c6622
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Thu Aug 19 14:46:22 2021 +0200
Added shortcut with launch params.
commit 962afa215e97c75e80cc6644fb8ad64d110dfb60
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Thu Aug 19 14:35:30 2021 +0200
Wrong return.
commit 0e171fca6a4662225f1da32e1b12e5450b338c1a
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Thu Aug 19 14:32:52 2021 +0200
Changes in description.
* Added icon to launcher.exe
* Launcher.exe gets remnamed to Run R5 Reloaded.exe in launcher release compilation configuration.
* Extended argument buffer for starting the game in launcher.exe.
* Added exception printing if in the custom ConVars an invalid value gets passed.
commit 70b4c02a9a7b0978d64a1ab7c1db3c76f695eda8
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Thu Aug 19 01:27:44 2021 +0200
Read description for all changes.
* Added ability to register custom ConVar.
* Added 2 custom ConVars to open the CGameConsole and CCompanion Windows.
* Changed ResolveRelativeAddress.
* Added Config System for the Gui.
* Added ImGui::Hotkey.
* Added the ability to change 2 hotkeys for opening the window for CGameConsole and CCompanion.
* Changed pattern for Squirrel_CompilerError to use a String.
* Added IMemAlloc::AllocWrapper to patterns.h
commit 06127dee1d901d555b8a6b2b4592a12273454d64
Author: BobTheBob <32057864+BobTheBob9@users.noreply.github.com>
Date: Wed Aug 18 23:17:51 2021 +0100
prevent squirrel compiler errors from killing game process (#43)
commit a3025e76de885558da4aef07077cbfee4551ed58
Author: Marcii0 <58266292+Marcii0@users.noreply.github.com>
Date: Thu Aug 19 00:17:18 2021 +0200
Changed map-select drop down menu, now it displays 'Map Name + Season' instead of file-name. (#41)
* Host Server shows normal map names
* Changed a few stuff...
* redid some stuff that isn't crucial
* Update CCompanion.cpp
* Update CCompanion.cpp
* Updated mapname displaying.
* Moved "ServerMap" as a static object into CCompanion::HostServerSection().
Co-authored-by: IcePixelx <41352111+PixieCore@users.noreply.github.com>
commit bbd58bba7567f463e2581559df522d67f3d0b026
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Tue Aug 17 23:18:35 2021 +0200
Fixed potential crashes in r5net and added debug prints.
* Potential crashes were when in certain post functions the returned status wasn't 200.
commit 3558eb9c487d3297ab28451053347c0afae7f15f
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Tue Aug 17 23:11:29 2021 +0200
Removed un-used define in hooks.h
commit 54cdb2fb61b2c729e6b0e99e0cd5c1ede3cc5229
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Tue Aug 17 23:04:53 2021 +0200
Updated IsFlagSet hooks.
* Cleaned up code to properly mask off Dev and Cheat flags.
* Added separate define from _DEBUG so you can define it in release builds for people without C++ Debug Restributeables.
commit 7e7717ff68b5e177e58dd3e7989f35740cdc9236
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Tue Aug 17 23:03:21 2021 +0200
Added new patterns to the print function.
commit 768f2341f19d1e2e9b8fd05d1d667f46ab21dc71
Author: IcePixelx <41352111+PixieCore@users.noreply.github.com>
Date: Tue Aug 17 23:02:14 2021 +0200
Added separate function to resolve relative addresses in address.h