-
Автор темы
- #1
Ребят поменял сурс с lw v3 на Zeeron. Однако в игре лоу фпс(30-40 с просадками). Помогите пофиксить.
const char* csgo_fps[]
{
"client.dll",
"engine.dll",
"server.dll",
"studiorender.dll",
"materialsystem.dll",
"shaderapidx9.dll",
"vstdlib.dll",
"vguimatsurface.dll"
};
long long drop_fps = 0x69690004C201B0;
for (auto fps : csgo_fps) WriteProcessMemory(GetCurrentProcess(), (LPVOID)g_Tools->FindSignature(fps, "55 8B EC 56 8B F1 33 C0 57 8B 7D 08"), &drop_fps, 7, 0);
Это то что я сделал в попытке фиксануть.
P.S. В ориг сурсе нету FindSignature
uint64_t C_Tools::FindSignature(const char* szModule, const char* szSignature)
{
MODULEINFO modInfo;
GetModuleInformation(GetCurrentProcess(), GetModuleHandle(szModule), &modInfo, sizeof(MODULEINFO));
uintptr_t startAddress = (DWORD)modInfo.lpBaseOfDll; //-V101 //-V220
uintptr_t endAddress = startAddress + modInfo.SizeOfImage;
const char* pat = szSignature;
uintptr_t firstMatch = 0;
for (auto pCur = startAddress; pCur < endAddress; pCur++)
{
if (!*pat)
return firstMatch;
if (*(PBYTE)pat == '\?' || *(BYTE*)pCur == GETBYTE(pat))
{
if (!firstMatch)
firstMatch = pCur;
if (!pat[2])
return firstMatch;
if (*(PWORD)pat == '\?\?' || *(PBYTE)pat != '\?')
pat += 3;
else
pat += 2;
}
else
{
pat = szSignature;
firstMatch = 0;
}
}
MessageBoxA(NULL, szSignature, szModule, 64);
return 0;
}
Это код FindSignature.
Если кто-то сможет пофиксить.
Black_Spartan#5934
const char* csgo_fps[]
{
"client.dll",
"engine.dll",
"server.dll",
"studiorender.dll",
"materialsystem.dll",
"shaderapidx9.dll",
"vstdlib.dll",
"vguimatsurface.dll"
};
long long drop_fps = 0x69690004C201B0;
for (auto fps : csgo_fps) WriteProcessMemory(GetCurrentProcess(), (LPVOID)g_Tools->FindSignature(fps, "55 8B EC 56 8B F1 33 C0 57 8B 7D 08"), &drop_fps, 7, 0);
Это то что я сделал в попытке фиксануть.
P.S. В ориг сурсе нету FindSignature
uint64_t C_Tools::FindSignature(const char* szModule, const char* szSignature)
{
MODULEINFO modInfo;
GetModuleInformation(GetCurrentProcess(), GetModuleHandle(szModule), &modInfo, sizeof(MODULEINFO));
uintptr_t startAddress = (DWORD)modInfo.lpBaseOfDll; //-V101 //-V220
uintptr_t endAddress = startAddress + modInfo.SizeOfImage;
const char* pat = szSignature;
uintptr_t firstMatch = 0;
for (auto pCur = startAddress; pCur < endAddress; pCur++)
{
if (!*pat)
return firstMatch;
if (*(PBYTE)pat == '\?' || *(BYTE*)pCur == GETBYTE(pat))
{
if (!firstMatch)
firstMatch = pCur;
if (!pat[2])
return firstMatch;
if (*(PWORD)pat == '\?\?' || *(PBYTE)pat != '\?')
pat += 3;
else
pat += 2;
}
else
{
pat = szSignature;
firstMatch = 0;
}
}
MessageBoxA(NULL, szSignature, szModule, 64);
return 0;
}
Это код FindSignature.
Если кто-то сможет пофиксить.
Black_Spartan#5934