'/' is always a path separator, '\\' is implementation defined. The standard filesystem class takes care for OS regardless. Changed to standard separator.
* Fixed bug causing command line interface not to work properly.
* Optimized warning text and instructions.
* Terminal will not be freed when compiled in Debug/Profile.
* The console will now forward the command to all game window instances.
Has to be removed, as older (but still capable!) MSVC compilers throw the error 'C2903' (symbol is neither a class template nor a function template). Generated code remained identical after this change.
This header allows us to properly switch between experimental/finished STD implementations without having to adjust the source code (required for compiling on older versions of the Visual Studio 2017 compiler).
The MSVC14 (Visual Studio 2017) compiler doesn't support creating threads during dll entry. SDK fixed frame thread init has been moved to 'CModAppSystemGroup::Main'. SpdLog buffer flush worker init has been moved to 'SpdLog_PostInit', and 'SpdLog_PostInit' has been moved to 'LauncherMain'.
Force inlining this was a temporary solution in the past to overcome a crash caused by stack corruption. This problem seems to be solved, and thus its no longer necessary to force inline all methods.
This caused the 'CUtlBinaryBlock' destructor to be called twice (freeing memory on the same pointer twice). Destructor should only be called explicitly in 'CUtlBinaryBlock' itself to purge vector memory due to late binding of game's memalloc singleton.
Optimize hexdump utility by packing as many trace calls as possible and by changing single character pointers to immediate values. Also adjusted function to support newer versions of the spdlog library.
Add 'Profile' build configuration (similar configuration to many game engines).
This should be the main configuration for development. In the future, this will include incremental linking and asserts.
Utilize 'ConCommand::AutoCompleteSuggest' instead of our temporary inline console solution. This fixes all crashes caused by calling command autocomplete callbacks that uses the newer system (e.g. 'ent_fire').
Added pattern for 'ConCommand::AutoCompleteSuggest' (will be used for the console autocomplete instead as it supports the old and new callback system).
* Promote all size types to int64 to accomodate in-memory structure size of the game itself.
* Explicitly call destructors for members. Due to the way we hook the game and utilize the global memory allocation singleton, the destructor of the objects aren't called. CUtlVector does call the destructor of CUtlString. Explicitly defined a destructor that also destructs its underlying memory to avoid any memory leaks.