Исходник Resolver Nuclon HVH

Участник
Статус
Оффлайн
Регистрация
26 Апр 2018
Сообщения
852
Реакции[?]
181
Поинты[?]
0
Нефор
Забаненный
Статус
Оффлайн
Регистрация
9 Ноя 2018
Сообщения
1,042
Реакции[?]
663
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
Привет. Так как я ушёл с ХВХ и занимаюсь другими проектами, то решил слить свой ресольвер от Nuclon.

Антипасты нет. Но для того, что бы всё работало, нужно иметь знания и функции из СДК.

Ресольвер средненький, +- справляется как кряк ВТ. Частенько правда не видит джитеры, но да ладно.

Код:
void c_resolver::resolver(c_animation_system::animation* anim)
{
    static float resolver_last_sim_time[64] = {};

    const auto info = animation_system->get_animation_info(anim->player);

    if (!info || !anim->has_anim_state || anim->player->get_info().fakeplayer || anim->didshot)
        return;

    float simtime = anim->player->get_simtime();

    if (simtime == anim->player->get_old_simtime()) // not updated yet // We should recieve first goalfeet from the server
        return;

    if (simtime == resolver_last_sim_time[anim->player->index()]) // avoid to fix already fixed angle .. jitter fix .. // we fix only recieved server goal feet, not client sided.
        return;

    resolver_last_sim_time[anim->player->index()] = simtime; // store last resolver update time

    // RESOLVER PART //

    float Left = anim->anim_state.eye_yaw - 70;
    float Right = anim->anim_state.eye_yaw + 70;
    float Middle = anim->anim_state.eye_yaw;

    info->brute_yaw = anim->anim_state.goal_feet_yaw;    // set default standart "backwards" // server goalfeet //

    // main logic //

    anim->anim_state.goal_feet_yaw = std::clamp(anim->anim_state.goal_feet_yaw, -360.0f, 360.0f);

    float eye_feet_delta = AngleDiff(anim->anim_state.eye_yaw, anim->anim_state.goal_feet_yaw);
 
    if (eye_feet_delta <= 57)
    {
        if (-57 > eye_feet_delta)
            anim->anim_state.goal_feet_yaw = Middle; // LBY based desync fix
        else if (eye_feet_delta == 0.f) // no desync || real on side with fake middle angle.
        {
            const auto slow_walk = anim->anim_state.feet_yaw_rate >= 0.01f && anim->anim_state.feet_yaw_rate <= 0.8f;

            if (slow_walk) // if player is able to use desync //
            {
                if (anim->anim_state.goal_feet_yaw != anim->anim_state.current_feet_yaw) // set previos server goal feet angle -> REAL Choked Angle //
                    anim->anim_state.goal_feet_yaw = anim->anim_state.current_feet_yaw;
            }
        }
    }
    else
    {
        anim->anim_state.goal_feet_yaw = Middle; // LBY based desync fix
    }

    info->brute_yaw = anim->anim_state.goal_feet_yaw; // set the new angle //

    anim->anim_state.goal_feet_yaw = math::normalize_yaw(info->brute_yaw); // normalize angle //
    anim->player->get_anim_state()->goal_feet_yaw = anim->anim_state.goal_feet_yaw;
}
Код:
float AngleDiff(float destAngle, float srcAngle) {
    float delta;

    delta = fmodf(destAngle - srcAngle, 360.0f);
    if (destAngle > srcAngle) {
        if (delta >= 180)
            delta -= 360;
    }
    else {
        if (delta <= -180)
            delta += 360;
    }
    return delta;
}




ВАЖНО: Для нормальной работы должен быть нормальный SDK. Все нетвары, анимстейт и члены класса должны совпадать и быть актуальными!!
Анимации тоже должны быть актуальными. В интернете целая куча информации. Ищите.
Ресольвер только для HVH. Легит АА не проверялись!!
почему ты юзаешь animstate->m_flEyeYaw, если она не передаётся из анимстейта и не может быть использована.

VALVE SDK:
Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Надо было до конца и сливать весь сурс, один х*й нас ждет сурс2 и это уже будет неактуально ))




Nuclon.xyz - написано ж на ватермарки.
почему ты юзаешь animstate->m_flEyeYaw, если она не передаётся из анимстейта и не может быть использована.

VALVE SDK:
Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
Это СДК 2013 года, чел. Это было актуально когда были лиспы, и возможно, ещё когда были фейки.
А с 2019 года это не актуальный исходник. Сейчас все прекрасно передается и flEyeYaw это серверный НОВЫЙ EyeAngles.y;
Он всегда правильный. Я тебе больше скажу, flGoalFeetYaw целиком и полностью зависит от flEyeYaw и строится на основе именно этого угла. AngleApproach как доказательство.
Если уж так не верится, бери pLocalPlayer->get_eye_angles().y.
В таком случае ресольвер станет хуже потому что ты будешь использовать интерполированый и немного не актуальный eye angles, который построен на основе серверного.
 
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
Это СДК 2013 года, чел. Это было актуально когда были лиспы, и возможно, ещё когда были фейки.
А с 2019 года это не актуальный исходник. Сейчас все прекрасно передается и flEyeYaw это серверный НОВЫЙ EyeAngles.y;
Он всегда правильный. Я тебе больше скажу, flGoalFeetYaw целиком и полностью зависит от flEyeYaw и строится на основе именно этого угла. AngleApproach как доказательство.
Если уж так не верится, бери pLocalPlayer->get_eye_angles().y.
В таком случае ресольвер станет хуже потому что ты будешь использовать интерполированый и немного не актуальный eye angles, который построен на основе серверного.
Ну в таком случае извиняюсь за лишнюю критику, спасибо за информацию, буду знать :)
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
493
Реакции[?]
413
Поинты[?]
1K
Это СДК 2013 года, чел. Это было актуально когда были лиспы, и возможно, ещё когда были фейки.
А с 2019 года это не актуальный исходник. Сейчас все прекрасно передается и flEyeYaw это серверный НОВЫЙ EyeAngles.y;
Он всегда правильный. Я тебе больше скажу, flGoalFeetYaw целиком и полностью зависит от flEyeYaw и строится на основе именно этого угла. AngleApproach как доказательство.
Если уж так не верится, бери pLocalPlayer->get_eye_angles().y.
В таком случае ресольвер станет хуже потому что ты будешь использовать интерполированый и немного не актуальный eye angles, который построен на основе серверного.
1589466811815.png ок... 00401F99 (client_panorama.dll)
вауууу а еще если я внезано перестану обновлять anim_state то eye_yaw в нем тоже перестанет менятся
1589466852414.png
новым он становится только после того как anim_state обновился....

stop misleading pls....
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Ну в таком случае извиняюсь за лишнюю критику, спасибо за информацию, буду знать :)
Суть в том, что реального способа пофиксить все десинки не существует.
Если десинки с реалом в центре ты можешь пофиксить ( ака балансы ) благодаря тому, что ты получаешь дельту eye_goalfeet которая проходит чек ( в коде есть ) и тогда мы можем поставить реал, который точно будет в центре
То десинки, где реал находится справа или слева, а десинк это goalfeet == eye_yaw пофиксить не так то просто.
В таком случае мы не имеем нужной нам информации. Все что мы знаем, это что для десинка нужно либо брикать лбу ( легко детектится ) либо что б велосити > 0.1
При слишком высоком велосити то бишь при полном беге нет смысла что либо вообще ресольвить т.к. десинка практически нет.

Проверка на slow_walk и дает нам право и возможность фиксить десинки на слоуволке и на стендах ( потому что проверка на velocity.length2d() бесполезная из-за рассинхрона велосити. У меня в нуклоне был десинк с 0 велосити, и не ломался лбу. Все благодаря фейклагам. Кряк вантапа не умеет фиксить такое, но легко фиксил такой же десинк но на слоуволке. )

Так вот, когда человек движится, проверка slow_walk срабатывает ( на мувах ) и благодаря тому, что current_feet_yaw это предыдущий goalfeetyaw мы можем заресольвить игрока.

К сожалению, статики на стендах не всегда видит. Возможно надо число 0.01 заменить на 0.001 и тогда все заработает.

Джиттеры и прочее дерьмо, особенно с реалом слева или справа, особенно рандомные -> не фиксит. Тут нужен ручной поиск паттернов и по оверлеям уже смотреть и сопоставлять что где и как.
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Посмотреть вложение 74306 ок... 00401F99 (client_panorama.dll)
вауууу а еще если я внезано перестану обновлять anim_state то eye_yaw в нем тоже перестанет менятся
Посмотреть вложение 74308
новым он становится только после того как anim_state обновился....

stop misleading pls....
Так мы ж не прекращаем обновлять анимстейт. Попробуй сравнить углы игрока через анимстейт у проверяющего и eye angles у того, от кого идёт сигнал.

В анимстейт приходит информация из нетвара насколько я знаю, если ты перестаешь обновлять анимстейт понятное дело ты не получишь новую инфу. Что за логика отключить что-то и ожидать чуда?

Если в обычных условиях кстати, анимстейт eye yaw будет отличаться от нетвара тогда угар получается. И это моя ошибка, и заметка для других людей на будущее, что фиксить надо ещё и state->flEyeYaw
 
Участник
Статус
Оффлайн
Регистрация
27 Фев 2019
Сообщения
1,105
Реакции[?]
388
Поинты[?]
45K
Суть в том, что реального способа пофиксить все десинки не существует.
Если десинки с реалом в центре ты можешь пофиксить ( ака балансы ) благодаря тому, что ты получаешь дельту eye_goalfeet которая проходит чек ( в коде есть ) и тогда мы можем поставить реал, который точно будет в центре
То десинки, где реал находится справа или слева, а десинк это goalfeet == eye_yaw пофиксить не так то просто.
В таком случае мы не имеем нужной нам информации.
Все что мы знаем, это что для десинка нужно либо брикать лбу
( легко детектится ) либо что б велосити > 0.1
При слишком высоком велосити то бишь при полном беге нет смысла что либо вообще ресольвить т.к. десинка практически нет.

Проверка на slow_walk и дает нам право и возможность фиксить десинки на слоуволке и на стендах ( потому что проверка на velocity.length2d() бесполезная из-за рассинхрона велосити. У меня в нуклоне был десинк с 0 велосити, и не ломался лбу. Все благодаря фейклагам. Кряк вантапа не умеет фиксить такое, но легко фиксил такой же десинк но на слоуволке. )

Так вот, когда человек движится, проверка slow_walk срабатывает ( на мувах ) и благодаря тому, что current_feet_yaw это предыдущий goalfeetyaw мы можем заресольвить игрока.

К сожалению, статики на стендах не всегда видит. Возможно надо число 0.01 заменить на 0.001 и тогда все заработает.

Джиттеры и прочее дерьмо, особенно с реалом слева или справа, особенно рандомные -> не фиксит. Тут нужен ручной поиск паттернов и по оверлеям уже смотреть и сопоставлять что где и как.
Все что мы знаем, это что для десинка нужно либо брикать лбу
Разве для десинка нужно ломать лбу? Разве в статике ломается лбу?
либо что б велосити > 0.1
Погоди, то есть на стенде десинка не может быть? Раз велосити либо не равен нулю, либо не меньше нуля. То есть только на муве может быть десинк?
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
493
Реакции[?]
413
Поинты[?]
1K
Что за логика отключить что-то и ожидать чуда?
flEyeYaw это серверный НОВЫЙ EyeAngles.y;
ты говоришь о том что eye_yaw в anim_state всегда имеет новое значения
я же пытаюсь тебе сказать о том что он становится новым после обновления anim_state

и следовательно если ты будешь использовать его до апдейта то он не будет новым как бы

и вообще весь твой код это мем какой то
типичный щитпост так сказатб
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Разве для десинка нужно ломать лбу? Разве в статике ломается лбу?

Погоди, то есть на стенде десинка не может быть? Раз велосити либо не равен нулю, либо не меньше нуля. То есть только на муве может быть десинк?
возьми абсолютно любой софт. Вот прям абсолютно любой. Можешь взять кряк вантапа, ибо там десинки точно работают.

Включи статики. Возьми снайперский прицел и стань на карте не плотно к стене, а в свободном пространстве. Встань возле стены в нескольких метрах. Сделай скоуп на любом оружии. Ты увидишь как тебя дергает в то влево то вправо. А теперь выключи десинки. Смотри результат.
Включи лбу десинк и смотри так же на результат.

Велосити 0.1 это настолько маленькое значение что его практически незаметить если не присматриваться. Для работы десинка достаточно любое велосити выше этого значения так как это тригерит и пропускает определенные проверки клиента и сервера где и есть отличие.

А так, если велосити 0 и лбу не брикается то десинка не существует. даже с фейклагами.
Должно быть что-то одно из этого. Вместе тоже нельзя. Лбу брикер работает только когда ты полностью стоишь
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
ты говоришь о том что eye_yaw в anim_state всегда имеет новое значения
я же пытаюсь тебе сказать о том что он становится новым после обновления anim_state

и следовательно если ты будешь использовать его до апдейта то он не будет новым как бы

и вообще весь твой код это мем какой то
типичный щитпост так сказатб
Знаешь, может быть я не прав. Так как эту информацию узнал на форуме uc , сам ниче не реверсил.
Было сказано что eye yaw совпадает после патча 2019 года и всё.

по поводу шитпоста. Не думаю, что мой исходник хуже ресольверов скинутых на форум.
Есть ресольвер от икфакова но это обычный брутфорс.
Есть этот. Я делал код под себя и тестировал это. Есть люди которые докажут, что ресольвер был способен пофиксить те же опозиты.
в любом случае, это что-то новое, а не обычный брутфорс +- 60 так что дерзайте
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
493
Реакции[?]
413
Поинты[?]
1K
Знаешь, может быть я не прав. Так как эту информацию узнал на форуме uc , сам ниче не реверсил.
Было сказано что eye yaw совпадает после патча 2019 года и всё.
это было сказано в том смысле что прошлых фейков больше не может быть
тк именно в них eye_yaw на клиенте и сервере имел разное значение
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
493
Реакции[?]
413
Поинты[?]
1K
Тут нужен ручной поиск паттернов и по оверлеям уже смотреть и сопоставлять что где и как.
как ресольвить с помощью аним лееров можно посмотреть в любом дампе вантапа начиная с конца августа 2019 года (может даже и раньше)
тк до сегодняшнего момента каких то огромных изменений в основной логике не было
 
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
это было сказано в том смысле что прошлых фейков больше не может быть
тк именно в них eye_yaw на клиенте и сервере имел разное значение
Ну так теперь значение совпадает, в чём проблема? Главное что не нарушена сама суть и все делается согласно SetupVelocity.
Может действительно информация не актуальная и лучше использовать другой источник EyeYaw.
Ресольвер не дикая туфта как тот же Stickrpghook мемный ресик с кучей мусора и не понятно что и как там вообще собралось фиксить. Да и что-то ресольвить вполне способен, а то что он не видит половины десинков это дело десятое. Хоть половину десинков различает же, ну
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
493
Реакции[?]
413
Поинты[?]
1K
Ну так теперь значение совпадает, в чём проблема?
нетвар теперь все время совпадает
а значение в анимстейте как обновлялось вместе с ним так и обновляется
 
Сверху Снизу