Гайд Properdel night mode trough hooks

Начинающий
Статус
Оффлайн
Регистрация
22 Июн 2021
Сообщения
10
Реакции[?]
15
Поинты[?]
10K
создал я эту тему для грудничков, которые делают кривой найт мод и жалуются на какие-то проблемы.
для начала вам нужно хукнуть is_using_static_prop_debug_modes:
C++:
bool __stdcall c_hooks::hk_is_using_static_prop_debug_modes::fn() {
    return g_config->miscellaneous.night_mode;
}
теперь остается хукнуть get color modulation:

C++:
void __fastcall c_hooks::hk_get_color_modulation::fn(void *ecx, void *edx, float *r, float *g, float *b) {
    original(ecx, edx, r, g, b);

    if (g_config->miscellaneous.night_mode) {
        const auto material = reinterpret_cast<c_material*>(ecx);
        auto name = material->get_name();
        auto group = material->get_texture_group_name();

        if (strstr(group, "Other") || strstr(name, "player") || strstr(name, "chams") || strstr(name, "weapon") || strstr(name, "glow"))
            return;

        *r *= strstr(group, "StaticProp") ? g_config->miscellaneous.night_mode_props_color.r() / 255.f : g_config->miscellaneous.night_mode_world_color.r() / 255.f;
        *g *= strstr(group, "StaticProp") ? g_config->miscellaneous.night_mode_props_color.g() / 255.f : g_config->miscellaneous.night_mode_world_color.g() / 255.f;
        *b *= strstr(group, "StaticProp") ? g_config->miscellaneous.night_mode_props_color.b() / 255.f : g_config->miscellaneous.night_mode_world_color.b() / 255.f;
    }
}
C++:
get color modulation: e_dll::materialsystem, 55 8B EC 83 EC ? 56 8B F1 8A 46
is using static prop debug modes: e_dll::engine, 8B 0D ? ? ? ? 81 F9 ? ? ? ? 75 ? A1 ? ? ? ? 35 ? ? ? ? EB ? 8B 01 FF 50 ? 83 F8 ? 0F 85 ? ? ? ? 8B 0D
 
priora compressor
Участник
Статус
Оффлайн
Регистрация
18 Май 2019
Сообщения
675
Реакции[?]
243
Поинты[?]
16K
сколько еще подобных тем насоздаешь друг? может создашь тему 'properdel square render using imgui' (пропердел рендер квадрата используя имгуи) и расскажешь как правильно рисовать квадрат с помощью имгуи? не? не хочешь таким заняться?
 
Пользователь
Статус
Оффлайн
Регистрация
3 Авг 2016
Сообщения
186
Реакции[?]
252
Поинты[?]
0
для начала вам нужно хукнуть is_using_static_prop_debug_modes:
теперь остается хукнуть get color modulation:
У статик пропсов можно поменять цвет и прозрачность в m_DiffuseModulation, это не будет провоцировать артефакты в виде синих пятен и больше не нужно ставить какие-либо хуки
 
privates militärunternehmen "Überlegenheit"
Забаненный
Статус
Оффлайн
Регистрация
20 Сен 2023
Сообщения
152
Реакции[?]
113
Поинты[?]
23K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну тогда почему бы не хукнуть еще и get_alpha_modulation, чтобы настраивать прозрачность

materialsystem.dll -> 56 8B F1 8A 46 20 C0 E8 02 A8 01 75 0B 6A 00 6A 00 6A 00 E8 ? ? ? ? 80 7E 22 05 76 0E

находим нужные текстурки - возвращаем вместо оригинала функции нужную нам альфу
 
Сверху Снизу