aboutsummaryrefslogtreecommitdiff
path: root/primedev/client/diskvmtfixes.cpp
blob: 4ab951c0c1873ec7e52b6d80660b63f6c62a346e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ON_DLL_LOAD_CLIENT("materialsystem_dx11.dll", DiskVMTFixes, (CModule module))
{
	// in retail VMTs will never load if cache read is invalid due to a special case for them in KeyValues::LoadFromFile
	// this effectively makes it impossible to load them from mods because we invalidate cache for doing this
	// so uhh, stop that from happening

	// tbh idk why they even changed any of this what's the point it looks like it works fine who cares my god

	// matsystem KeyValues::LoadFromFile: patch special case on cache read failure for vmts
	module.Offset(0x1281B9).Patch("EB");

	// CMaterialSystem::FindMaterial: don't call function that crashes if previous patch is applied
	module.Offset(0x5F55A).NOP(5);
}