std::X$$V::Z::_Func_impl_no_alloc
-
Автор темы
- #1
Сразу скажу, что я нашёл это не первый, кто-то с анконва опередил меня. Выложил в открытый доступ это lee, но та тема уже утонула. Тестил на разных сг.
Для начала нам нужно найти функции start_drawing и end_drawing, они лежат в ISurface, но они не виртуальные.
Если вам не сильно интересно как это потом найти, вот паттерны
Далее нам нужен этот хук
Жду вопросов. Помогу чем смогу.
Для начала нам нужно найти функции start_drawing и end_drawing, они лежат в ISurface, но они не виртуальные.
Если вам не сильно интересно как это потом найти, вот паттерны
StartDrawing -> vguimatsurface.dll 55 8B EC 64 A1 ?? ?? ?? ?? 6A FF 68 ?? ?? ?? ?? 50 64 89 25 ?? ?? ?? ?? 83 EC 14
EndDrawing -> vguimatsurface.dll 55 8B EC 6A FF 68 ?? ?? ?? ?? 64 A1 ?? ?? ?? ?? 50 64 89 25 ?? ?? ?? ?? 51 56 6A 00
Вряд ли вам это когда-нибудь понадобится т.к фейспанчи уже и сильно над игрой не работают, да и это длл-ка движка.
Ну для начала там всегда есть строки "-pixel_offset_y" и "-pixel_offset_x".
Сам вызов лежит в виртуальной функции ISurface, индекс которой сейчас 115. Она легко ищется по строке "Too many popups! Rendering will be bad!\n".
EndDrawing почти в самом конце
Ну для начала там всегда есть строки "-pixel_offset_y" и "-pixel_offset_x".
Сам вызов лежит в виртуальной функции ISurface, индекс которой сейчас 115. Она легко ищется по строке "Too many popups! Rendering will be bad!\n".
EndDrawing почти в самом конце
Далее нам нужен этот хук
C++:
namespace view_render_hook
{
//client.dll -> VClient017 -> index 26
static int index = 26;
using fn = void(__thiscall*)(VClient*, vrect_t* rect);
extern void __fastcall hook(VClient* client, void* edx, vrect_t* rect);
}
C++:
void __fastcall view_render_hook::hook(VClient* client, void* edx, vrect_t* rect)
{
hooks_manager->view_render_original(client, rect);
//chams here
interfaces->surface->start_drawing();
//asg surface drawing here
interfaces->surface->finish_drawing();
}
Жду вопросов. Помогу чем смогу.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.
Последнее редактирование: