Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Вопрос Как пофиксить аим?

На самом деле я Zodiak
Участник
Участник
Статус
Оффлайн
Регистрация
22 Дек 2020
Сообщения
1,113
Реакции
207

Нашел аим на просторах необъятного, помогите пофиксить, а то его колбасит сильно

C++:
Expand Collapse Copy
void AimAtPos(int screenwidth, int screenheight, float x, float y, float speed, float lock, bool smooth) {

    int ScreenCenterX = screenwidth / 2, ScreenCenterY = screenheight / 2;

    float AimSpeed = (float)speed + 0.2f;
    float TargetX = 0;
    float TargetY = 0;

    if (x != 0) {
        if (x > ScreenCenterX) {
            TargetX = -(ScreenCenterX - x);
            TargetX /= AimSpeed;
            TargetX += lock;
            if (TargetX + ScreenCenterX > ScreenCenterX * 2) TargetX = 0;
        }

        if (x < ScreenCenterX)
        {
            TargetX = x - ScreenCenterX;
            TargetX /= AimSpeed;
            TargetX -= lock;
            if (TargetX + ScreenCenterX < 0) TargetX = 0;
        }
    }

    if (y != 0)
    {
        if (y > ScreenCenterY)
        {
            TargetY = -(ScreenCenterY - y);
            TargetY /= AimSpeed;
            TargetY += lock;
            if (TargetY + ScreenCenterY > ScreenCenterY * 2) TargetY = 0;
        }

        if (y < ScreenCenterY)
        {
            TargetY = y - ScreenCenterY;
            TargetY /= AimSpeed;
            TargetY -= lock;
            if (TargetY + ScreenCenterY < 0) TargetY = 0;
        }
    }

    if (!smooth)
    {
        mouse_move((int)TargetX, (int)(TargetY));
        return;
    }

    TargetX /= 10;
    TargetY /= 10;

    if (abs(TargetX) < 1)
    {
        if (TargetX > 0)
        {
            TargetX = 1;
        }
        if (TargetX < 0)
        {
            TargetX = -1;
        }
    }
    if (abs(TargetY) < 1)
    {
        if (TargetY > 0)
        {
            TargetY = 1;
        }
        if (TargetY < 0)
        {
            TargetY = -1;
        }
    }
    mouse_move((int)TargetX, (int)(TargetY));
    //mouse_event(MOUSEEVENTF_MOVE, (int)TargetX, (int)(TargetY), NULL, NULL);
}


C++:
Expand Collapse Copy
if (GetAsyncKeyState(VK_RBUTTON)) {
                    float aimspeed = 250.f;
                    float lock = 5.f;
                    float Fov = 100.f;
                    
                    if (CenterDistance(Headpos.x, Headpos.y, ScreenX / 2,ScreenY/ 2) <= Fov) {
                        
                        AimAtPos(ScreenX, ScreenY, Headpos.x, Headpos.y, aimspeed, lock, false);
                    }
                }
 
РАЗДЕЛ №4: СГЛАЖИВАНИЕ

Если вы хотите сделать rage aimbot или что-то в этом духе, то вы почти закончили! Однако, если вы хотите реализовать плавное прицеливание, это тоже довольно легко. Этот метод мне нравится называть методом сглаживания "нелинейного коэффициента".

Первое, что нам нужно сделать, это вычесть наши вычисленные углы из текущих углов обзора игрока. Как и вычитание вектора, это даст нам угол относительно наших текущих углов обзора, поэтому вы можете просто добавить этот результирующий угол к текущим углам обзора, чтобы получить тот же эффект.

Чтобы сгладить его, просто добавьте результат, разделенный на некоторую константу, к углам обзора.

Например, чтобы сгладить наводку в 4 раза, вы бы использовали:

cmd->viewangles += angleBetween / 4

Я называю это нелинейным, потому что движение мыши становится нелинейным из-за поведения этой функции.
 
РАЗДЕЛ №4: СГЛАЖИВАНИЕ

Если вы хотите сделать rage aimbot или что-то в этом духе, то вы почти закончили! Однако, если вы хотите реализовать плавное прицеливание, это тоже довольно легко. Этот метод мне нравится называть методом сглаживания "нелинейного коэффициента".

Первое, что нам нужно сделать, это вычесть наши вычисленные углы из текущих углов обзора игрока. Как и вычитание вектора, это даст нам угол относительно наших текущих углов обзора, поэтому вы можете просто добавить этот результирующий угол к текущим углам обзора, чтобы получить тот же эффект.

Чтобы сгладить его, просто добавьте результат, разделенный на некоторую константу, к углам обзора.

Например, чтобы сгладить наводку в 4 раза, вы бы использовали:

cmd->viewangles += angleBetween / 4

Я называю это нелинейным, потому что движение мыши становится нелинейным из-за поведения этой функции.
Так у меня mouse_event...
 
Так у меня mouse_event...
Код:
Expand Collapse Copy
if (GetAsyncKeyState(VK_RBUTTON)) {
                    float aimspeed = 250.f;
                    float lock = 5.f;
                    float Fov = 100.f;
                    
                    if (CenterDistance(Headpos.x, Headpos.y, ScreenX / 2,ScreenY/ 2) <= Fov) {
                        
                        AimAtPos(ScreenX, ScreenY, Headpos.x, Headpos.y, aimspeed, lock, false);
                    }
                }
Глупый вопрос, а ты пробовал уменьшать "float aimspeed" ? :roflanEbalo:
 
Код:
Expand Collapse Copy
if (GetAsyncKeyState(VK_RBUTTON)) {
                    float aimspeed = 250.f;
                    float lock = 5.f;
                    float Fov = 100.f;
                   
                    if (CenterDistance(Headpos.x, Headpos.y, ScreenX / 2,ScreenY/ 2) <= Fov) {
                       
                        AimAtPos(ScreenX, ScreenY, Headpos.x, Headpos.y, aimspeed, lock, false);
                    }
                }
Глупый вопрос, а ты пробовал уменьшать "float aimspeed" ? :roflanEbalo:
Да я всё менял, однако трясёт в любом случае
 
Назад
Сверху Снизу