Исходник Вау это же Хороший Hitchance for lw...

Начинающий
Статус
Оффлайн
Регистрация
1 Мар 2020
Сообщения
16
Реакции[?]
5
Поинты[?]
0
По фану закинул хитшанс который будет лучше чем сливали двое недавно...
C++:
static std::vector<std::tuple<float, float, float>> precomputed_seeds = {};

__forceinline void build_seed_table()
{
    if (!precomputed_seeds.empty())
        return;

    for (auto i = 0; i < 255; i++) {
        math::random_seed(i + 1);

        const auto pi_seed = math::random_float(0.f, twopi);

        precomputed_seeds.emplace_back(math::random_float(0.f, 1.f),
            sin(pi_seed), cos(pi_seed));
    }
}

bool aim::Hitchance(int& final_hitchance)
{
    build_seed_table();

    const auto info = g_ctx.globals.weapon->get_csweapon_info();

    if (!info)
    {
        final_hitchance = 0;
        return true;
    }

    const auto hitchance_cfg = g_cfg.ragebot.weapon[g_ctx.globals.current_weapon].hitchance_amount;

    if ((g_ctx.globals.eye_pos - final_target.data.point.point).Length() > info->flRange)
    {
        final_hitchance = 0;
        return true;
    }

    static auto nospread = m_cvar()->FindVar(crypt_str("weapon_accuracy_nospread"));

    if (nospread->GetBool())
    {
        final_hitchance = INT_MAX;
        return true;
    }

    const auto weapon_inaccuracy = g_ctx.globals.weapon->get_inaccuracy();

    static auto weapon_recoil_scale = m_cvar()->FindVar(crypt_str("weapon_recoil_scale"));
    const auto aim_angle = math::calculate_angle(g_ctx.globals.eye_pos, final_target.data.point.point) - (g_ctx.local()->m_aimPunchAngle() * weapon_recoil_scale->GetFloat());
    auto forward = ZERO;
    auto right = ZERO;
    auto up = ZERO;

    math::angle_vectors(aim_angle, &forward, &right, &up);

    math::fast_vec_normalize(forward);
    math::fast_vec_normalize(right);
    math::fast_vec_normalize(up);

    auto current = 0;

    Vector total_spread, spread_angle, end;
    float inaccuracy, spread_x, spread_y;
    std::tuple<float, float, float>* seed;

    for (auto i = 0u; i < 255; i++)
    {
        seed = &precomputed_seeds[i];

        inaccuracy = std::get<0>(*seed) * weapon_inaccuracy;
        spread_x = std::get<2>(*seed) * inaccuracy;
        spread_y = std::get<1>(*seed) * inaccuracy;
        total_spread = (forward + right * spread_x + up * spread_y);
        total_spread.Normalize();

        math::vector_angles(total_spread, spread_angle);

        math::angle_vectors(spread_angle, end);
        end.Normalize();
        end = g_ctx.globals.eye_pos + end * info->flRange;

        CGameTrace tr;
        m_trace()->ClipRayToEntity(Ray_t(g_ctx.globals.eye_pos, end), MASK_SHOT, final_target.record->player, &tr);

        if (tr.hit_entity == final_target.record->player)
            current++;

        if ((static_cast<float>(current) / 255.f) * 100.f >= hitchance_cfg)
        {
            final_hitchance = (static_cast<float>(current) / 255.f) * 100.f;
            return true;
        }
        if ((static_cast<float>(current + 255 - i) / 255.f) * 100.f < hitchance_cfg)
        {
            final_hitchance = (static_cast<float>(current + 255 - i) / 255.f) * 100.f;
            return false;
        }
    }

    final_hitchance = (static_cast<float>(current) / 255.f) * 100.f;
    return (static_cast<float>(current) / 255.f) * 100.f >= hitchance_cfg;
}
 
Keep Ev0lving, Stay Fatal
Эксперт
Статус
Оффлайн
Регистрация
6 Фев 2018
Сообщения
1,548
Реакции[?]
584
Поинты[?]
100K
Уже лучше, но почему тут до сих пор трейсеры юзаются?
 
Начинающий
Статус
Оффлайн
Регистрация
1 Мар 2020
Сообщения
16
Реакции[?]
5
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
23 Авг 2020
Сообщения
2,110
Реакции[?]
597
Поинты[?]
10K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Уже лучше, но почему тут до сих пор трейсеры юзаются?
Не, парень.
Если ты знаешь лучше метод, покажи нам!!
Хули прожженные пастеры\кодеры сидят тут, дают советы, а нихуя дельного написать не могут?
Вы либо нахуй предлагайте, критикуйте и показываете как, либо нахуй молчите.
 
Keep Ev0lving, Stay Fatal
Эксперт
Статус
Оффлайн
Регистрация
6 Фев 2018
Сообщения
1,548
Реакции[?]
584
Поинты[?]
100K
Посмотреть вложение 174306
Он явно злобно 10 минут думает что тебе ответить...
Я явно смотрю откуда бы спиздить хуки, чтобы были мозгоёбства(без них никуда, зато весело)
Не, парень.
Если ты знаешь лучше метод, покажи нам!!
Хули прожженные пастеры\кодеры сидят тут, дают советы, а нихуя дельного написать не могут?
Вы либо нахуй предлагайте, критикуйте и показываете как, либо нахуй молчите.
Окей, ПРЕДЛОЖЕНИЕ: взять интерсекшн, а то чё мы как в лихие 2018-2019 трейсеры юзаем...
В том же рифке есть интерсекшн, а его сурс есть везде...
 
Начинающий
Статус
Оффлайн
Регистрация
1 Мар 2020
Сообщения
16
Реакции[?]
5
Поинты[?]
0
Я явно смотрю откуда бы спиздить хуки, чтобы были мозгоёбства(без них никуда, зато весело)

Окей, ПРЕДЛОЖЕНИЕ: взять интерсекшн, а то чё мы как в лихие 2018-2019 трейсеры юзаем...
В том же рифке есть интерсекшн, а его сурс есть везде...
И при этом когда я играл с кряком рифка я брал хуй за обе щёки миссая в сприд с хитшансом 70...
 
Забаненный
Статус
Оффлайн
Регистрация
23 Авг 2020
Сообщения
2,110
Реакции[?]
597
Поинты[?]
10K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Я явно смотрю откуда бы спиздить хуки, чтобы были мозгоёбства(без них никуда, зато весело)

Окей, ПРЕДЛОЖЕНИЕ: взять интерсекшн, а то чё мы как в лихие 2018-2019 трейсеры юзаем...
В том же рифке есть интерсекшн, а его сурс есть везде...
Кинь их.
 
Начинающий
Статус
Оффлайн
Регистрация
1 Мар 2020
Сообщения
16
Реакции[?]
5
Поинты[?]
0
Я явно смотрю откуда бы спиздить хуки, чтобы были мозгоёбства(без них никуда, зато весело)

Окей, ПРЕДЛОЖЕНИЕ: взять интерсекшн, а то чё мы как в лихие 2018-2019 трейсеры юзаем...
В том же рифке есть интерсекшн, а его сурс есть везде...
Давай скинь я мб потом под лв пасты ваши его оформлю если не лень будет.
 
Keep Ev0lving, Stay Fatal
Эксперт
Статус
Оффлайн
Регистрация
6 Фев 2018
Сообщения
1,548
Реакции[?]
584
Поинты[?]
100K
Пожалуйста, авторизуйтесь для просмотра ссылки.
И при этом когда я играл с кряком рифка я брал хуй за обе щёки миссая в сприд с хитшансом 70...
Во многом виноват многое другое, а не сам хш. Но и его тоже стоит переделать(Алё, в паблике дохуя всего нормального, ищите и найдёте)
 
Начинающий
Статус
Оффлайн
Регистрация
1 Мар 2020
Сообщения
16
Реакции[?]
5
Поинты[?]
0
(Алё, в паблике дохуя всего нормального, ищите и найдёте)
Ну придётся посидеть поебатся чтоб завести это нормально и сделать фиксы чтобы не было хуйни, и толбко потом это будет нормальным и по факту это уже почти и не паблик будет...
И темболее ты писал взять интерсекшн тот который в рифке (Ибо по твоему мнению он будет лучше), но теперь ты говоришь что его надо переделать, гений?
 
Keep Ev0lving, Stay Fatal
Эксперт
Статус
Оффлайн
Регистрация
6 Фев 2018
Сообщения
1,548
Реакции[?]
584
Поинты[?]
100K
Ну придётся посидеть поебатся чтоб завести это нормально и сделать фиксы чтобы не было хуйни, и толбко потом это будет нормальным и по факту это уже почти и не паблик будет...
И темболее ты писал взять интерсекшн тот который в рифке (Ибо по твоему мнению он будет лучше), но теперь ты говоришь что его надо переделать, гений?
Рифк хш уж точно лучше, чем делать через трасеры. Поэтому я и сказал насчёт него. Переделать нужно лишь пару моментов + под него чутка переделать аимбот. Вот тогда ты получишь нормальный хитшанс. Лучше в паблике только пару паст енраге и ещё можно поискать кое что другое.
/UPD: Только что взял интерсекшн с рифка, миссов по сприду больше нет!!! Все пастите пока интерсекшн есть!!!
 
Последнее редактирование:
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции[?]
420
Поинты[?]
1K
Рифк хш уж точно лучше, чем делать через трасеры. Поэтому я и сказал насчёт него. Переделать нужно лишь пару моментов + под него чутка переделать аимбот. Вот тогда ты получишь нормальный хитшанс. Лучше в паблике только пару паст енраге и ещё можно поискать кое что другое.
/UPD: Только что взял интерсекшн с рифка, миссов по сприду больше нет!!! Все пастите пока интерсекшн есть!!!
Как говорится теорема Эскобара. Шо то ****, шо это ****

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

Что касаемо трейс рея. Эта шляпа хорошо работала с квадратиш практиш гуд хитбоксами образца 2007 года. Но капсульные хитбоксы и трейс рей это словно смешать ментос с колой. Результат предсказуем. Ну вроде это все из-за самой формы капсулы, она принимает форму овала, это не круг, но овал так то тоже близок к 3.14, а вот эта иррациональная шляпа уже и даёт косяки на краях бокса заставляя трейс рей считать за попадание края капсулы будто они квадратные. Короче говоря, получается недурный такой аут оф рейндж из-за чего ты можешь словить нехилого баттхерта пытаясь вдуплить почему так люто серит в какие нибудь пальцы или другие штуки.

Особенно угарно когда трейсрей втупую прочекивает что хит ентити == плеер (собственно 80% хитшансов в сурсах так и делают, кстати, данный топик не исключение) не обращая внимания на то, куда именно идёт попадание. Ведь по сути, луч вернёт тру, но по факту попадает не в точку, например живота, а в руку. Хитшанс пробивает это как тру, ведь ну по сути же большинство лучей дают нужный хитшанс, а софт в итоге попадает в руку вместо живота и у тебя не выбивается дамаг. Правда збс?))
Интерсект в этом случае обычно продуманный, он как раз таки имеет диапазон (размер) объекта куда следует проверить попадание.

UPD: на закуску
Трейсрей требует сетап матрицы костей, ббмин, ббмакс в рекорд плеера, который сканируется. Так как нужно непосредственно восстановить позицию игрока в точке бектрека что б прогнать все через трейсрей, иначе он просто не увидит ничего. Естественно я после чего ресторить все обратно.
Казалось бы незначительная деталь, НО:
В многопотоке эта деталь может сыграть очень злую шутку и сломать поведение и логику во время паралельного выполнения кода. А многопоток это неотъемлемая часть современного хвх, потому что это позволяет не убивать ФПС до нуля, давая возможность конкурировать с другими (как раз таки многопоточными) софтами. Не знаю каким иллюминатом нужно быть, что б запилить однопоточный софт с полным потенциалом что б он был на равных с многопоточным и при этом не высаживал ФПС в ноль. Так что этот момент тоже важно и нужно учитывать.

Такс, если кто и дочитал всю эту простыню до конца, хотелось бы узнать ваше мнение на этот счёт и предложения как можно безболезненно решить проблему с хитшансом избегая при этом использование сразу и того и другого, что тоже не без своих приколов останется.
 
Последнее редактирование:
Keep Ev0lving, Stay Fatal
Эксперт
Статус
Оффлайн
Регистрация
6 Фев 2018
Сообщения
1,548
Реакции[?]
584
Поинты[?]
100K
Как говорится теорема Эскобара. Шо то ****, шо это ****

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

Что касаемо трейс рея. Эта шляпа хорошо работала с квадратиш практиш гуд хитбоксами образца 2007 года. Но капсульные хитбоксы и трейс рей это словно смешать ментос с колой. Результат предсказуем. Ну вроде это все из-за самой формы капсулы, она принимает форму овала, это не круг, но овал так то тоже близок к 3.14, а вот эта иррациональная шляпа уже и даёт косяки на краях бокса заставляя трейс рей считать за попадание края капсулы будто они квадратные. Короче говоря, получается недурный такой аут оф рейндж из-за чего ты можешь словить нехилого баттхерта пытаясь вдуплить почему так люто серит в какие нибудь пальцы или другие штуки.

Особенно угарно когда трейсрей втупую прочекивает что хит ентити == плеер (собственно 80% хитшансов в сурсах так и делают, кстати, данный топик не исключение) не обращая внимания на то, куда именно идёт попадание. Ведь по сути, луч вернёт тру, но по факту попадает не в точку, например живота, а в руку. Хитшанс пробивает это как тру, ведь ну по сути же большинство лучей дают нужный хитшанс, а софт в итоге попадает в руку вместо живота и у тебя не выбивается дамаг. Правда збс?))
Интерсект в этом случае обычно продуманный, он как раз таки имеет диапазон (размер) объекта куда следует проверить попадание.

UPD: на закуску
Трейсрей требует сетап матрицы костей, ббмин, ббмакс в рекорд плеера, который сканируется. Так как нужно непосредственно восстановить позицию игрока в точке бектрека что б прогнать все через трейсрей, иначе он просто не увидит ничего. Естественно я после чего ресторить все обратно.
Казалось бы незначительная деталь, НО:
В многопотоке эта деталь может сыграть очень злую шутку и сломать поведение и логику во время паралельного выполнения кода. А многопоток это неотъемлемая часть современного хвх, потому что это позволяет не убивать ФПС до нуля, давая возможность конкурировать с другими (как раз таки многопоточными) софтами. Не знаю каким иллюминатом нужно быть, что б запилить однопоточный софт с полным потенциалом что б он был на равных с многопоточным и при этом не высаживал ФПС в ноль. Так что этот момент тоже важно и нужно учитывать.

Такс, если кто и дочитал всю эту простыню до конца, хотелось бы узнать ваше мнение на этот счёт и предложения как можно безболезненно решить проблему с хитшансом избегая при этом использование сразу и того и другого, что тоже не без своих приколов останется.
Как же я тебя ждал <3
Поэтому я всегда и говорил насчёт трейсера, что это уже не то по времени, а интерсекшн переделывать. Мой уровень pasting пока что не позволяет хорошенько призадуматься насчёт ИДЕАЛЬНОГО хитшанса, но думаю для фатала пока что хватит интерсекшна(ну я вчера затестил, миссов по сприду хотя бы чуть чуть меньше стало, хотя мб это из за других мультипоинтов).
Помимо всего, я хотел бы расспросить про другие паблик хитшансы(к примеру это:
Пожалуйста, авторизуйтесь для просмотра ссылки.
) но здесь делать это неудобно.
 
Модератор форума
Участник
Статус
Оффлайн
Регистрация
26 Янв 2020
Сообщения
378
Реакции[?]
157
Поинты[?]
9K
Как говорится теорема Эскобара. Шо то ****, шо это ****

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

Что касаемо трейс рея. Эта шляпа хорошо работала с квадратиш практиш гуд хитбоксами образца 2007 года. Но капсульные хитбоксы и трейс рей это словно смешать ментос с колой. Результат предсказуем. Ну вроде это все из-за самой формы капсулы, она принимает форму овала, это не круг, но овал так то тоже близок к 3.14, а вот эта иррациональная шляпа уже и даёт косяки на краях бокса заставляя трейс рей считать за попадание края капсулы будто они квадратные. Короче говоря, получается недурный такой аут оф рейндж из-за чего ты можешь словить нехилого баттхерта пытаясь вдуплить почему так люто серит в какие нибудь пальцы или другие штуки.

Особенно угарно когда трейсрей втупую прочекивает что хит ентити == плеер (собственно 80% хитшансов в сурсах так и делают, кстати, данный топик не исключение) не обращая внимания на то, куда именно идёт попадание. Ведь по сути, луч вернёт тру, но по факту попадает не в точку, например живота, а в руку. Хитшанс пробивает это как тру, ведь ну по сути же большинство лучей дают нужный хитшанс, а софт в итоге попадает в руку вместо живота и у тебя не выбивается дамаг. Правда збс?))
Интерсект в этом случае обычно продуманный, он как раз таки имеет диапазон (размер) объекта куда следует проверить попадание.

UPD: на закуску
Трейсрей требует сетап матрицы костей, ббмин, ббмакс в рекорд плеера, который сканируется. Так как нужно непосредственно восстановить позицию игрока в точке бектрека что б прогнать все через трейсрей, иначе он просто не увидит ничего. Естественно я после чего ресторить все обратно.
Казалось бы незначительная деталь, НО:
В многопотоке эта деталь может сыграть очень злую шутку и сломать поведение и логику во время паралельного выполнения кода. А многопоток это неотъемлемая часть современного хвх, потому что это позволяет не убивать ФПС до нуля, давая возможность конкурировать с другими (как раз таки многопоточными) софтами. Не знаю каким иллюминатом нужно быть, что б запилить однопоточный софт с полным потенциалом что б он был на равных с многопоточным и при этом не высаживал ФПС в ноль. Так что этот момент тоже важно и нужно учитывать.

Такс, если кто и дочитал всю эту простыню до конца, хотелось бы узнать ваше мнение на этот счёт и предложения как можно безболезненно решить проблему с хитшансом избегая при этом использование сразу и того и другого, что тоже не без своих приколов останется.
у меня есть идея только что для не капсульных хитбоксов, таких как ступни и кисти можно юзать трейс рей. А вот насчет капсуль хитбоксов идей нет.
у меня есть идея только что для не капсульных хитбоксов, таких как ступни и кисти можно юзать трейс рей. А вот насчет капсуль хитбоксов идей нет.
как раз таки, такой способ исключает миссы по сприду по ножкам.
 
Трахов
Пользователь
Статус
Оффлайн
Регистрация
6 Фев 2020
Сообщения
490
Реакции[?]
87
Поинты[?]
2K
у меня есть идея только что для не капсульных хитбоксов, таких как ступни и кисти можно юзать трейс рей. А вот насчет капсуль хитбоксов идей нет.

как раз таки, такой способ исключает миссы по сприду по ножкам.
как бы ноги не считаются за круг в хитбокс интерсекшн не считаются, с чего это в друг он будет миссать по ногам?
да еще и с тем у четом что лв не особо любит стрелять по ногам)
 
Модератор форума
Участник
Статус
Оффлайн
Регистрация
26 Янв 2020
Сообщения
378
Реакции[?]
157
Поинты[?]
9K
как бы ноги не считаются за круг в хитбокс интерсекшн не считаются, с чего это в друг он будет миссать по ногам?
да еще и с тем у четом что лв не особо любит стрелять по ногам)
а кто говорит про лв?
как бы ноги не считаются за круг в хитбокс интерсекшн не считаются, с чего это в друг он будет миссать по ногам?
да еще и с тем у четом что лв не особо любит стрелять по ногам)
интересно, а если был выбран хитбокс ступни, а интерсекшн у тебя их не просчитает. Что же получится???
 
Трахов
Пользователь
Статус
Оффлайн
Регистрация
6 Фев 2020
Сообщения
490
Реакции[?]
87
Поинты[?]
2K
а кто говорит про лв?

Разговор идет об лв, если ты о чем-то другом то извиняюсь ;3
Я просто не понимаю одного прикола, люди придумывают гипер хитшанс из 5 функции но в тоже время можно сделать хитшанс с простой математикой и он будет нормально работать только того что может долго срабатывать (мне просто на гипер хитшанс пока мозга не особо хватает)
 
Модератор форума
Участник
Статус
Оффлайн
Регистрация
26 Янв 2020
Сообщения
378
Реакции[?]
157
Поинты[?]
9K

Разговор идет об лв, если ты о чем-то другом то извиняюсь ;3
Я просто не понимаю одного прикола, люди придумывают гипер хитшанс из 5 функции но в тоже время можно сделать хитшанс с простой математикой и он будет не хочу, только того что может долго срабатывать (мне просто на гипер хитшанс пока мозга не особо хватает)
чекни рифк, там есть оочень хороший пример. Пусть и в одном моменте вронг
 
Трахов
Пользователь
Статус
Оффлайн
Регистрация
6 Фев 2020
Сообщения
490
Реакции[?]
87
Поинты[?]
2K
чекни рифк, там есть оочень хороший пример. Пусть и в одном моменте вронг
мне вариант через seed_table вообще не нравится если честно (
но если можно скажи что там правильного?
 
Сверху Снизу