Вопрос BaseUserCmdPB + CUserCmd structs?

Начинающий
Статус
Оффлайн
Регистрация
18 Ноя 2023
Сообщения
4
Реакции[?]
0
Поинты[?]
0
Hi! im trying to make a SDK, already have another structs working but "CBaseUserCmdPB" is to hard...

Im trying to access nButtons for make Movement Corrections but it dosnt work cos nButtons is a random number (not randomSeed value)

Anyone can help me or have this structs updated??

MANY THANKS! I HAVE 2 DAYS WITH IT.

BaseUserCmdPB + CUserCmd:
class CBaseUserCmdPB : public CBasePB
{
public:
    MEM_PAD(0x18); // 0x18
    CCmdQAngle* pCmdView; // 0x40
    int nCommandNumber; // 0x48
    int ntickCount; // 0x4C
    QAngle_t angViewAngle;
    Vector_t vecAimDirection;
    float flForwardMove; // 0x50
    float flSideMove; // 0x54   
    float flUpMove; // 0x58
    MEM_PAD(0x4);
    int nButtons;
    int32_t nImpulse; // 0x5C
    int32_t nWeaponSelect; // 0x60
    int nWeaponSubtype;
    int32_t nRandomSeed; // 0x64
    int32_t nMousedX; // 0x68
    int32_t nMousedY; // 0x6C
    bool bHasBeenPredicted; // 0x70
    uint32_t nConsumedServerAngleChanges; // 0x74
    int32_t nCmdFlags; // 0x78
    uint32_t hPawnEntity; // 0x7C
};

class CUserCmd
{
public:
    MEM_PAD(0x20);
    CCSGOUserCmdPB csgoUserCmd; // 0x20
    CBaseUserCmdPB* pBaseCmd; // 0x30
    StartHistoryIndexTick_t nStartHistoryIndexAttack; // 0x38
    ButtonState_t nButtons; // 0x4C
    MEM_PAD(0x8); // 0x64
    MEM_PAD(0x30); // 0x64

    void SetSubTickAngle(const QAngle_t& angView)
    {
        for (int i = 0; i < this->csgoUserCmd.nTickCount; i++)
        {
            CCSGOInputHistoryEntryPB* pInputEntry = this->csgoUserCmd.GetInputHistoryEntry(i);
            if (pInputEntry == nullptr)
                continue;

            if (pInputEntry->pViewCmd == nullptr)
                continue;

            pInputEntry->pViewCmd->angValue = angView;
        }
    }
};

struct ButtonState_t
{
    uint64_t nValue;
    uint64_t nValueChanged;
    uint64_t nValueScroll;
};
 
Сверху Снизу