aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDLL/miscserverfixes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'NorthstarDLL/miscserverfixes.cpp')
-rw-r--r--NorthstarDLL/miscserverfixes.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/NorthstarDLL/miscserverfixes.cpp b/NorthstarDLL/miscserverfixes.cpp
new file mode 100644
index 00000000..e85950c4
--- /dev/null
+++ b/NorthstarDLL/miscserverfixes.cpp
@@ -0,0 +1,26 @@
+#include "pch.h"
+#include "miscserverfixes.h"
+#include "hookutils.h"
+
+#include "NSMem.h"
+
+void InitialiseMiscServerFixes(HMODULE baseAddress)
+{
+ uintptr_t ba = (uintptr_t)baseAddress;
+
+ // ret at the start of the concommand GenerateObjFile as it can crash servers
+ {
+ NSMem::BytePatch(ba + 0x38D920, "C3");
+ }
+
+ // nop out call to VGUI shutdown since it crashes the game when quitting from the console
+ {
+ NSMem::NOP(ba + 0x154A96, 5);
+ }
+
+ // ret at the start of CServerGameClients::ClientCommandKeyValues as it has no benefit and is forwarded to client (i.e. security issue)
+ // this prevents the attack vector of client=>server=>client, however server=>client also has clientside patches
+ {
+ NSMem::BytePatch(ba + 0x153920, "C3");
+ }
+} \ No newline at end of file