Various fixes and stuff.
This commit is contained in:
parent
5ad9fdf914
commit
0050429654
@ -51,7 +51,7 @@ workspace "iw4x"
|
|||||||
location "./build"
|
location "./build"
|
||||||
objdir "%{wks.location}/obj"
|
objdir "%{wks.location}/obj"
|
||||||
targetdir "%{wks.location}/bin/%{cfg.buildcfg}"
|
targetdir "%{wks.location}/bin/%{cfg.buildcfg}"
|
||||||
configurations { "Normal", "Debug", "DebugStatic", "Release", "ReleaseStatic" }
|
configurations { "Debug", "DebugStatic", "Release", "ReleaseStatic" }
|
||||||
|
|
||||||
-- VS 2015 toolset only
|
-- VS 2015 toolset only
|
||||||
toolset "msc-140"
|
toolset "msc-140"
|
||||||
@ -78,9 +78,6 @@ workspace "iw4x"
|
|||||||
files { "./src/**.hpp", "./src/**.cpp" }
|
files { "./src/**.hpp", "./src/**.cpp" }
|
||||||
includedirs { "%{prj.location}", "./src" }
|
includedirs { "%{prj.location}", "./src" }
|
||||||
architecture "x32"
|
architecture "x32"
|
||||||
configmap {
|
|
||||||
["Normal"] = "Debug"
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Pre-compiled header
|
-- Pre-compiled header
|
||||||
pchheader "STDInclude.hpp" -- must be exactly same as used in #include directives
|
pchheader "STDInclude.hpp" -- must be exactly same as used in #include directives
|
||||||
|
@ -49,7 +49,25 @@ namespace Components
|
|||||||
|
|
||||||
Exception::Exception()
|
Exception::Exception()
|
||||||
{
|
{
|
||||||
|
#ifndef DEBUG
|
||||||
Utils::Hook::Set(0x6D70AC, Exception::SetUnhandledExceptionFilterStub);
|
Utils::Hook::Set(0x6D70AC, Exception::SetUnhandledExceptionFilterStub);
|
||||||
SetUnhandledExceptionFilter(&Exception::ExceptionFilter);
|
SetUnhandledExceptionFilter(&Exception::ExceptionFilter);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Command::Add("stressTest", [] (Command::Params params)
|
||||||
|
{
|
||||||
|
std::string command;
|
||||||
|
for (int i = 0;; i++)
|
||||||
|
{
|
||||||
|
char* mapname = (char*)0x7471D0 + 40 * i;
|
||||||
|
if (!*mapname) break;
|
||||||
|
|
||||||
|
if(i % 2) command.append(Utils::VA("wait 500;disconnect;wait 500;", mapname)); // Test a disconnect
|
||||||
|
else command.append(Utils::VA("wait 500;", mapname)); // Test direct map switch
|
||||||
|
command.append(Utils::VA("map %s;", mapname));
|
||||||
|
}
|
||||||
|
|
||||||
|
Command::Execute(command, false);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -90,5 +90,8 @@ namespace Components
|
|||||||
|
|
||||||
// ignore 'no iwd files found in main'
|
// ignore 'no iwd files found in main'
|
||||||
Utils::Hook::Nop(0x642A4B, 5);
|
Utils::Hook::Nop(0x642A4B, 5);
|
||||||
|
|
||||||
|
// Ignore bad magic, when trying to free hunk when it's already cleared
|
||||||
|
Utils::Hook::Set<WORD>(0x49AACE, 0xC35E);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -139,6 +139,33 @@ namespace Components
|
|||||||
Utils::Hook::Nop(0x4AA89F, 2);
|
Utils::Hook::Nop(0x4AA89F, 2);
|
||||||
Utils::Hook::Nop(0x4AA8A1, 6);
|
Utils::Hook::Nop(0x4AA8A1, 6);
|
||||||
|
|
||||||
|
// remove activeAction execution (exploit in mods)
|
||||||
|
Utils::Hook::Set<BYTE>(0x5A1D43, 0xEB);
|
||||||
|
|
||||||
|
// disable bind protection
|
||||||
|
Utils::Hook::Set<BYTE>(0x4DACA2, 0xEB);
|
||||||
|
|
||||||
|
// require Windows 5
|
||||||
|
Utils::Hook::Set<BYTE>(0x467ADF, 5);
|
||||||
|
Utils::Hook::Set<char>(0x6DF5D6, '5');
|
||||||
|
|
||||||
|
// disable 'ignoring asset' notices
|
||||||
|
Utils::Hook::Nop(0x5BB902, 5);
|
||||||
|
|
||||||
|
// disable migration_dvarErrors
|
||||||
|
Utils::Hook::Set<BYTE>(0x60BDA7, 0);
|
||||||
|
|
||||||
|
// allow joining 'developer 1' servers
|
||||||
|
Utils::Hook::Set<BYTE>(0x478BA2, 0xEB);
|
||||||
|
|
||||||
|
// fs_game fixes
|
||||||
|
Utils::Hook::Nop(0x4A5D74, 2); // remove fs_game profiles
|
||||||
|
Utils::Hook::Set<BYTE>(0x4081FD, 0xEB); // defaultweapon
|
||||||
|
|
||||||
|
// Filter log (initially com_logFilter, but I don't see why that dvar is needed)
|
||||||
|
Utils::Hook::Nop(0x647466, 5); // 'dvar set' lines
|
||||||
|
Utils::Hook::Nop(0x5DF4F2, 5); // 'sending splash open' lines
|
||||||
|
|
||||||
// intro stuff
|
// intro stuff
|
||||||
Utils::Hook::Nop(0x60BEE9, 5); // Don't show legals
|
Utils::Hook::Nop(0x60BEE9, 5); // Don't show legals
|
||||||
Utils::Hook::Set<char*>(0x60BED2, "unskippablecinematic IW_logo\n");
|
Utils::Hook::Set<char*>(0x60BED2, "unskippablecinematic IW_logo\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user