Fixes crash dumps sometimes not being generated by srcds
The only supported compilation platform for this project on Windows is Visual Studio 2022 on release mode. However, it's possible it'll work with older Visual Studio versions because of the unified runtime.
These restrictions are not random; they exist because of ABI compatibility reasons.
If stuff starts erroring or fails to work, be sure to check the correct line endings (\n and such) are present in the files for each OS.
This project requires garrysmod_common, a framework to facilitate the creation of compilations files (Visual Studio, make, XCode, etc). Simply set the environment variable GARRYSMOD_COMMON or the premake option --gmcommon=path to the path of your local copy of garrysmod_common.
We also use SourceSDK2013. The links to SourceSDK2013 point to my own fork of VALVe's repo and for good reason: Garry's Mod has lots of backwards incompatible changes to interfaces and it's much smaller, being perfect for automated build systems like Azure Pipelines (which is used for this project).
If you plan to compile this for x64, make sure to download the correct branch from the garrysmod_common repository.
Once compiled, copy the dll to lua/bin, and add this to any serverside file.
Make sure you have compiled the correct release for your servers architecture, i.e x32/x64
hook.Add("PostGamemodeLoaded", "LoadCrashDumps", function()
if util.IsBinaryModuleInstalled("crashdumps") then
require("crashdumps")
SetupCrashDumps()
end
end)