how to get a player position without lag compensation

enzaoboladao

Новичок
Автор темы
5
0
Tentei algumas maneiras, mas não tive sucesso. Gostaria de ajuda com isso. Desculpe se escrevi na seção errada, não sou da Rússia.
 

yorenov

Участник
62
54
Tentei algumas maneiras, mas não tive sucesso. Gostaria de ajuda com isso. Desculpe se escrevi na seção errada, não sou da Rússia.
C++:
sampapi::CVector getLocalPosition() {
    sampapi::CVector pos{0, 0, 0};

    auto pNetGame = sampapi::v037r3::RefNetGame();
    if (!pNetGame) return pos;

    auto pPlayerPool = pNetGame->GetPlayerPool();
    if (!pPlayerPool) return pos;

    auto pLocalPlayer = pPlayerPool->GetLocalPlayer();
    if (!pLocalPlayer) return pos;

    pos.x = pLocalPlayer->m_onfootData.m_position.x;
    pos.y = pLocalPlayer->m_onfootData.m_position.y;
    pos.z = pLocalPlayer->m_onfootData.m_position.z;

    return pos;
}

or without sampapi

C++:
CVector getLocalPlayerPositionRaw()
{
    void* pPlayerPed = *reinterpret_cast<void**>(0xB6F5F0);
    if (!pPlayerPed)
        return { 0,0,0 };

    void* pMatrix = *reinterpret_cast<void**>(
        reinterpret_cast<std::uintptr_t>(pPlayerPed) + 0x14
    );
    if (!pMatrix)
        return { 0,0,0 };

    const CVector pos = *reinterpret_cast<sampapi::CVector*>(
        reinterpret_cast<std::uintptr_t>(pMatrix) + 0x30
    );

    return pos;
}
 

enzaoboladao

Новичок
Автор темы
5
0
C++:
sampapi::CVector getLocalPosition() {
    sampapi::CVector pos{0, 0, 0};

    auto pNetGame = sampapi::v037r3::RefNetGame();
    if (!pNetGame) return pos;

    auto pPlayerPool = pNetGame->GetPlayerPool();
    if (!pPlayerPool) return pos;

    auto pLocalPlayer = pPlayerPool->GetLocalPlayer();
    if (!pLocalPlayer) return pos;

    pos.x = pLocalPlayer->m_onfootData.m_position.x;
    pos.y = pLocalPlayer->m_onfootData.m_position.y;
    pos.z = pLocalPlayer->m_onfootData.m_position.z;

    return pos;
}

or without sampapi

C++:
CVector getLocalPlayerPositionRaw()
{
    void* pPlayerPed = *reinterpret_cast<void**>(0xB6F5F0);
    if (!pPlayerPed)
        return { 0,0,0 };

    void* pMatrix = *reinterpret_cast<void**>(
        reinterpret_cast<std::uintptr_t>(pPlayerPed) + 0x14
    );
    if (!pMatrix)
        return { 0,0,0 };

    const CVector pos = *reinterpret_cast<sampapi::CVector*>(
        reinterpret_cast<std::uintptr_t>(pMatrix) + 0x30
    );

    return pos;
}
This gives the player's position, not their position without lag compensation.I need to get a player's lag position to perform a lagshot esp.