Гайд Как пофиксить "плавающий прицел" в geminisoftware без FOV на 90 градусов

Помогло?


  • Всего проголосовало
    13
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
Заходим в Hooks.cpp, там находим такую функцию:

C++:
void __fastcall Hooks::OverrideView(void* ecx, void* edx, CViewSetup* pSetup)
{
    static auto oOverrideView = g_Hooks.pClientModeHook->GetOriginal<OverrideView_t>(vtable_indexes::view);

    if (g_pEngine->IsConnected() && g_pEngine->IsInGame())
    {
        if (!Globals::LocalPlayer)
            return;

        if (!Globals::LocalPlayer->IsAlive())
            return;

        if (c_config::get().grenade_prediction) {
            GrenadePrediction::get().View(pSetup);
        }

        g_Misc.ThirdPerson();

        if (c_config::get().fov != 0 && !Globals::LocalPlayer->IsScoped())
            pSetup->fov = c_config::get().fov;

        if (Globals::LocalPlayer->IsScoped() && c_config::get().fov_while_zoomed) {
            pSetup->fov = c_config::get().fov;
        }
        else if (Globals::LocalPlayer->IsScoped() && !c_config::get().fov_while_zoomed) {

            int fov_to_subtract = 40;

            if (c_config::get().fov < 40) {
                fov_to_subtract = c_config::get().fov / 2;
            }
            pSetup->fov = c_config::get().fov - fov_to_subtract;
        }


        if (c_config::get().remove_visual_recoil)
        {
            Vector viewPunch = Globals::LocalPlayer->GetViewPunchAngle();
            Vector aimPunch = Globals::LocalPlayer->GetAimPunchAngle();

            pSetup->angles[0] -= (viewPunch[0] + (aimPunch[0] * 2 * 0.4499999f));
            pSetup->angles[1] -= (viewPunch[1] + (aimPunch[1] * 2 * 0.4499999f));
            pSetup->angles[2] -= (viewPunch[2] + (aimPunch[2] * 2 * 0.4499999f));
        }

    }

    oOverrideView(ecx, edx, pSetup);
}
Затем мы делаем следующее:
там где if (Globals::LocalPlayer->IsScoped() && c_config::get().fov_while_zoomed) мы делаем так:
C++:
/*if (Globals::LocalPlayer->IsScoped() && c_config::get().fov_while_zoomed) {
            pSetup->fov = c_config::get().fov;
        }*/
потом здесь
C++:
else if (Globals::LocalPlayer->IsScoped() && !c_config::get().fov_while_zoomed) {

            int fov_to_subtract = 40;

            if (c_config::get().fov < 40) {
                fov_to_subtract = c_config::get().fov / 2;
            }
            pSetup->fov = c_config::get().fov - fov_to_subtract;
        }
мы делаем так:
C++:
else if (Globals::LocalPlayer->IsScoped() && !c_config::get().fov_while_zoomed) {

            /*int fov_to_subtract = 40;

            if (c_config::get().fov < 40) {
                fov_to_subtract = c_config::get().fov / 2;
            }
            pSetup->fov = c_config::get().fov - fov_to_subtract;*/
        }
Теперь компилируем и ставим FOV на 0.
 
Участник
Статус
Оффлайн
Регистрация
11 Апр 2019
Сообщения
1,117
Реакции[?]
306
Поинты[?]
4K
а зачем это если можно просто по дефолту при инжекте ставить фов 90?
 
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
а зачем это если можно просто по дефолту при инжекте ставить фов 90?
А смысл каждый раз ставить фов на 90, если можно просто фиксануть эту штуку и не париться?!?!
 
substandard rank
Забаненный
Статус
Оффлайн
Регистрация
21 Янв 2019
Сообщения
424
Реакции[?]
113
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
В конфигурации 90 ставишь и все
Кому как удобнее, мне например после фикса стало лучше, я запилил гайд для тех, кто хочет фиксануть а не ставить фов на 90. И тем более, прицел стал скопиться нормально, а не один раз и всё.
 
Сверху Снизу