Не заводится legit backtrack в морфе...

//comment your shit paste
Пользователь
Статус
Оффлайн
Регистрация
16 Апр 2017
Сообщения
450
Реакции[?]
119
Поинты[?]
0
Вообще хз что и почему не работает... Чекнул оффсеты, чекнул код, но так ничего и не нашел...

Сам код (да это самый обычный паблик код)
Код:
void CLegitBot::BacktrackRun()
{
    int bestTargetIndex = -1;
    float bestFov = FLT_MAX;
    CBaseEntity* local = I::ClientEntList->GetClientEntity(I::Engine->GetLocalPlayer());
    player_info_t info;
    for (int i = 0; i < I::Engine->GetMaxClients(); i++)
    {
        auto entity = I::ClientEntList->GetClientEntity(i);

        if (!entity || !local)
            continue;

        if (entity == local)
            continue;

        if (!I::Engine->GetPlayerInfo(i, &info))
            continue;

        if (entity->GetDormant())
            continue;

        if (entity->GetTeam() == local->GetTeam())
            continue;

        if (entity->EntityIsAlive())
        {
            float simtime = entity->GetSimulationTime();
            Vector hitboxPos = entity->GetBonePosition(0);

            headPositions[i][G::UserCmd->command_number % 13] = backtrackData{ simtime, hitboxPos };
            Vector ViewDir = AngleVector(G::UserCmd->viewangles + (local->GetPunch() * 2.f));
            float FOVDistance = DistancePointToLine(hitboxPos, local->GetEyePosition(), ViewDir);

            if (bestFov > FOVDistance)
            {
                bestFov = FOVDistance;
                bestTargetIndex = i;
            }
        }
    }

    float bestTargetSimTime;
    if (bestTargetIndex != -1)
    {
        float tempFloat = FLT_MAX;

        Vector ViewDir = AngleVector(G::UserCmd->viewangles + (local->GetPunch() * 2.f));

        for (int t = 0; t <= 12; ++t)
        {
            float tempFOVDistance = DistancePointToLine(headPositions[bestTargetIndex][t].hitboxPos, local->GetEyePosition(), ViewDir);

            if (tempFloat > tempFOVDistance && headPositions[bestTargetIndex][t].simtime > I::Globals->curtime - 1)
            {

                tempFloat = tempFOVDistance;
                bestTargetSimTime = headPositions[bestTargetIndex][t].simtime;
            }
        }

        if (G::UserCmd->buttons & IN_ATTACK)
        {
            G::UserCmd->tick_count = TIME_TO_TICKS(bestTargetSimTime);
        }

    }
}
Структура и пару вызовов
Код:
Vector AngleVector(QAngle meme)
{
    auto sy = sin(meme.y / 180.f * static_cast<float>(3.141592654f));
    auto cy = cos(meme.y / 180.f * static_cast<float>(3.141592654f));

    auto sp = sin(meme.x / 180.f * static_cast<float>(3.141592654f));
    auto cp = cos(meme.x / 180.f* static_cast<float>(3.141592654f));

    return Vector(cp*cy, cp*sy, -sp);
}
float DistancePointToLine(Vector Point, Vector LineOrigin, Vector Dir)
{
    auto PointDir = Point - LineOrigin;

    auto TempOffset = PointDir.Dot(Dir) / (Dir.x*Dir.x + Dir.y*Dir.y + Dir.z*Dir.z);
    if (TempOffset < 0.000001f)
        return FLT_MAX;

    auto PerpendicularPoint = LineOrigin + (Dir * TempOffset);

    return (Point - PerpendicularPoint).Length();
}

struct backtrackData {
    float simtime;
    Vector hitboxPos;
};
Ну и вызывается в cm хуке, как и должно.
Код:
    if (Vars.Legitbot.Aimbot.Backtrack)
        E::LegitBot->BacktrackRun();
Буду благодарен и век не забуду если поможите)
 
AquaHook
Участник
Статус
Оффлайн
Регистрация
17 Мар 2017
Сообщения
713
Реакции[?]
263
Поинты[?]
0
Покажи GetSimulationTime, я на морфе не сидел, но мб ты ошибся в этой функции
 
Начинающий
Статус
Оффлайн
Регистрация
28 Авг 2017
Сообщения
52
Реакции[?]
18
Поинты[?]
1K
Код:
Vector hitboxPos = entity->GetBonePosition(0);
Если получаешь кость головы - то это 8 а не ноль.
 
//comment your shit paste
Пользователь
Статус
Оффлайн
Регистрация
16 Апр 2017
Сообщения
450
Реакции[?]
119
Поинты[?]
0
Покажи GetSimulationTime, я на морфе не сидел, но мб ты ошибся в этой функции
Я чекал, тут все нормально.
Код:
float& CBaseEntity::GetSimulationTime()
{
    return *(float*)((DWORD)this + offsets.m_flSimulationTime);
}
//upd
актуально, если заведу, солью чистый соурс морфа с трэком
 
Сверху Снизу