Вопрос GetHealth

Начинающий
Статус
Оффлайн
Регистрация
29 Фев 2024
Сообщения
45
Реакции[?]
1
Поинты[?]
1K
C++:
int GetHealth() const {
    
    int m_mask = driver.Read<int>((uintptr_t)this + 0x64);
    float m_health = 0.f;
    if (m_mask) m_health = m_mask ^ driver.Read<int>((uintptr_t)this + 0x60);
    
    return static_cast<int>(m_health);
}
Крч есть такой прикол что показывает всегда 100 хп, помогите :(

C++:
__forceinline void DrawPlayerHealth(float x, float y, int health) {
    if (health > 100) health = 100;
    DrawFilledRect(x - 15.f, y, 30.f, 5.f, ImVec4(0.10f, 0.18f, 0.22f, 1.00f));
    DrawFilledRect(x - 15.f + 1.f, y + 1.f, 0.28f * health, 3.f, GetHealthColor(health));
}
Вывожу таким образом, так что тут либо всегда 100 хп либо больше, но явно не то что имеем
 
Начинающий
Статус
Оффлайн
Регистрация
23 Мар 2025
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Код:
int GetHealth() const {
    int encodedHealth = driver.Read<int>((uintptr_t)this + 0x60);
    int xorKey = driver.Read<int>((uintptr_t)this + 0x64);

    if (xorKey == 0)  // Если ключ нулевой, значит HP уже в чистом виде
        return encodedHealth;

    return encodedHealth ^ xorKey;
}
Код:
__forceinline void DrawPlayerHealth(float x, float y, int health) {
    health = std::clamp(health, 0, 100); // Гарантируем, что здоровье в пределах [0, 100]

    // Рисуем фон полоски здоровья (серый)
    DrawFilledRect(x - 15.f, y, 30.f, 5.f, ImVec4(0.10f, 0.18f, 0.22f, 1.00f));

    // Рисуем здоровье (зелёное-красное)
    float healthWidth = (30.f - 2.f) * (health / 100.f); // Корректный масштаб ширины
    DrawFilledRect(x - 14.f, y + 1.f, healthWidth, 3.f, GetHealthColor(health));
}
 
Начинающий
Статус
Оффлайн
Регистрация
13 Май 2023
Сообщения
221
Реакции[?]
29
Поинты[?]
29K
C++:
int GetHealth() const {
   
    int m_mask = driver.Read<int>((uintptr_t)this + 0x64);
    float m_health = 0.f;
    if (m_mask) m_health = m_mask ^ driver.Read<int>((uintptr_t)this + 0x60);
   
    return static_cast<int>(m_health);
}
Крч есть такой прикол что показывает всегда 100 хп, помогите :(

C++:
__forceinline void DrawPlayerHealth(float x, float y, int health) {
    if (health > 100) health = 100;
    DrawFilledRect(x - 15.f, y, 30.f, 5.f, ImVec4(0.10f, 0.18f, 0.22f, 1.00f));
    DrawFilledRect(x - 15.f + 1.f, y + 1.f, 0.28f * health, 3.f, GetHealthColor(health));
}
Вывожу таким образом, так что тут либо всегда 100 хп либо больше, но явно не то что имеем
C++:
    int GetHealth()
    {
        int eax = Read<int>((DWORD64)this + 0x64);
        int temp = 0;

        if (eax != 0)
        {
            eax ^= Read<int>((DWORD64)this + 0x60);
            temp = eax;
        }
        float xmm1 = *(float*)(&temp);
        int eax_result = (int)xmm1;
        if (xmm1 <= (float)eax_result)
        {
            return eax_result;
        }
        return eax_result + 1;
    }
 
Начинающий
Статус
Оффлайн
Регистрация
29 Фев 2024
Сообщения
45
Реакции[?]
1
Поинты[?]
1K
C++:
    int GetHealth()
    {
        int eax = Read<int>((DWORD64)this + 0x64);
        int temp = 0;

        if (eax != 0)
        {
            eax ^= Read<int>((DWORD64)this + 0x60);
            temp = eax;
        }
        float xmm1 = *(float*)(&temp);
        int eax_result = (int)xmm1;
        if (xmm1 <= (float)eax_result)
        {
            return eax_result;
        }
        return eax_result + 1;
    }
Подскажи ещё пожалуйста как в IDA найти SCVars* GetSCvar() { return driver.Read<SCVars*>((uintptr_t)this + 0x150); }
 
Начинающий
Статус
Оффлайн
Регистрация
29 Фев 2024
Сообщения
45
Реакции[?]
1
Поинты[?]
1K
Пользователь
Статус
Оффлайн
Регистрация
21 Окт 2019
Сообщения
370
Реакции[?]
48
Поинты[?]
15K
Начинающий
Статус
Оффлайн
Регистрация
17 Ноя 2023
Сообщения
28
Реакции[?]
2
Поинты[?]
2K
Как же смешно наблюдать за кринжом, который "написал" экстернал, но нет мозгов найти простейшие смещения. Мало того, даже в предоставленных, он не может разобраться...
 
Начинающий
Статус
Оффлайн
Регистрация
13 Май 2023
Сообщения
221
Реакции[?]
29
Поинты[?]
29K
Забаненный
Статус
Оффлайн
Регистрация
1 Фев 2025
Сообщения
19
Реакции[?]
0
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
это пиздец ахаххааха
 
Сверху Снизу