Apex Legends offsets
Dumped by swig. Recent build snapshot.
Everything below is paste-ready C++. Copy any block with the button that appears on hover. Skipped from this listing: the full ConVar table (1000+ entries — grab from a raw dump if you need those) and the giant WeaponSettings body except the ~40 fields most cheats actually touch.
Base pointers
Absolute offsets from the r5apex.exe module base.
namespace offsets {
// Core engine pointers
inline static constexpr uintptr_t ClientState = 0x2FF110;
inline static constexpr uintptr_t GlobalVars = 0x1E563E0;
inline static constexpr uintptr_t SignonState = 0x1E5674C;
inline static constexpr uintptr_t LevelName = 0x1E56864;
// World / entities
inline static constexpr uintptr_t cl_entitylist = 0x641A428;
inline static constexpr uintptr_t ObserverList = 0x641C448;
inline static constexpr uintptr_t LocalPlayer = 0x26ABFF8;
inline static constexpr uintptr_t LocalEntityHandle = 0x253A070;
inline static constexpr uintptr_t NameList = 0x8E99AB0;
inline static constexpr uintptr_t ModelNames = 0x1E7F9C0;
inline static constexpr uintptr_t WeaponNames = 0x3F33108;
inline static constexpr uintptr_t NetworkVarTablePtr = 0x9118140;
// Input / view
inline static constexpr uintptr_t InputSystem = 0x1F0F700;
inline static constexpr uintptr_t ViewMatrix = 0x11A390;
inline static constexpr uintptr_t ViewAngles = 0x25F8;
inline static constexpr uintptr_t ViewYaw = 0x230C;
inline static constexpr uintptr_t ViewRender = 0x3F30868;
inline static constexpr uintptr_t HighlightSettings = 0x6B87500;
// Runtime pointers on the local view
inline static constexpr uintptr_t camera_origin = 0x1FBC;
// Weapon settings root + meta
inline static constexpr uintptr_t WeaponSettingsMeta_base = 0x1B08;
inline static constexpr uintptr_t WeaponSettings_weps_list = 0x62377C0;
inline static constexpr uintptr_t WeaponSettings_weps_types = 0x25E308A;
inline static constexpr uintptr_t WeaponSettings_weps_count = 0x502;
// Modifier registry
inline static constexpr uintptr_t Modifiers_mods_list = 0x34DE148;
inline static constexpr uintptr_t Modifiers_mods_names = 0x26FFD78;
inline static constexpr uintptr_t Modifiers_mods_count_field = 0x2F90;
}
Networked string tables
namespace string_tables {
inline static constexpr uintptr_t WeaponNames = 0x3F33108;
inline static constexpr uintptr_t ModelNames = 0x1E7F9C0; // duplicate of offsets::ModelNames, listed for grep
inline static constexpr uintptr_t EffectDispatch = 0x3F32810;
inline static constexpr uintptr_t ExtraParticleFilesTable = 0x3F31F48;
inline static constexpr uintptr_t ImpactEffectTableNames = 0x3F330D8;
inline static constexpr uintptr_t Materials = 0x3F31F28;
inline static constexpr uintptr_t Movies = 0x3F330D0;
inline static constexpr uintptr_t ParticleEffectNames = 0x3F32820;
inline static constexpr uintptr_t ScriptNames = 0x3F330E0;
inline static constexpr uintptr_t SkinNames = 0x3F308A0;
inline static constexpr uintptr_t SoundIDs = 0x3F330F8;
inline static constexpr uintptr_t VguiScreen = 0x3F31F50;
inline static constexpr uintptr_t wasapi = 0x61CC520;
}
Input buttons
Command pointers for the input system — FindKeyBinding-style lookups
resolve here. Only the offsets people actually use are worth pinning to a
name; the rest can be looked up by string.
namespace buttons {
// Movement
inline static constexpr uintptr_t forward = 0x3F33B78;
inline static constexpr uintptr_t backward = 0x3F33BA0;
inline static constexpr uintptr_t moveleft = 0x3F33B68;
inline static constexpr uintptr_t moveright = 0x3F33B90;
inline static constexpr uintptr_t moveup = 0x3F33158;
inline static constexpr uintptr_t movedown = 0x3F339F0;
inline static constexpr uintptr_t jump = 0x3F33A40;
inline static constexpr uintptr_t duck = 0x3F33B38;
inline static constexpr uintptr_t toggle_duck = 0x3F33968;
inline static constexpr uintptr_t dodge = 0x3F33AA0;
inline static constexpr uintptr_t speed = 0x3F33110;
inline static constexpr uintptr_t walk = 0x3F33AE8;
inline static constexpr uintptr_t strafe = 0x3F339C0;
// Combat
inline static constexpr uintptr_t attack = 0x3F331A8;
inline static constexpr uintptr_t reload = 0x3F339A8;
inline static constexpr uintptr_t useAndReload = 0x3F33B18;
inline static constexpr uintptr_t use_key = 0x3F33AB0;
inline static constexpr uintptr_t use_alt = 0x3F33958;
inline static constexpr uintptr_t use_long = 0x3F33B28;
inline static constexpr uintptr_t melee = 0x3F33138;
inline static constexpr uintptr_t ping = 0x3F33178;
inline static constexpr uintptr_t zoom = 0x3F33AC0;
inline static constexpr uintptr_t toggle_zoom = 0x3F33998;
inline static constexpr uintptr_t weaponCycle = 0x3F33A68;
inline static constexpr uintptr_t weapon_discard = 0x3F33AF8;
// Offhands
inline static constexpr uintptr_t offhand0 = 0x3F33168;
inline static constexpr uintptr_t offhand1 = 0x3F33A00;
inline static constexpr uintptr_t offhand2 = 0x3F33A90;
inline static constexpr uintptr_t offhand3 = 0x3F33AD0;
inline static constexpr uintptr_t offhand4 = 0x3F33B08;
// View
inline static constexpr uintptr_t lookup = 0x3F33B48;
inline static constexpr uintptr_t lookdown = 0x3F33A58;
inline static constexpr uintptr_t left = 0x3F33A10;
inline static constexpr uintptr_t right = 0x3F33A30;
inline static constexpr uintptr_t klook = 0x3F33148;
}
C_BaseEntity
struct C_BaseEntity {
inline static constexpr uintptr_t m_iEFlags = 0x88;
inline static constexpr uintptr_t m_fFlags = 0xC8;
inline static constexpr uintptr_t m_pMoveParent = 0x138;
inline static constexpr uintptr_t m_vecAngVelocity = 0x148;
inline static constexpr uintptr_t m_angAbsRotation = 0x154;
inline static constexpr uintptr_t m_vecAbsVelocity = 0x160;
inline static constexpr uintptr_t m_vecAbsOrigin = 0x16C;
inline static constexpr uintptr_t m_localOrigin = 0x178;
inline static constexpr uintptr_t m_localAngles = 0x184;
inline static constexpr uintptr_t m_vecPrevAbsOrigin = 0x2FC;
inline static constexpr uintptr_t m_flGravity = 0x308;
inline static constexpr uintptr_t m_hGroundEntity = 0x31C;
inline static constexpr uintptr_t m_iHealth = 0x320;
inline static constexpr uintptr_t m_flMaxspeed = 0x324;
inline static constexpr uintptr_t m_visibilityFlags = 0x328;
inline static constexpr uintptr_t m_iTeamNum = 0x330;
inline static constexpr uintptr_t m_passThroughFlags = 0x34C;
inline static constexpr uintptr_t m_passThroughThickness = 0x350;
inline static constexpr uintptr_t m_passThroughDirection = 0x354;
inline static constexpr uintptr_t m_deathVelocity = 0x358;
inline static constexpr uintptr_t m_fEffects = 0x32C;
inline static constexpr uintptr_t m_vecVelocity = 0x374;
inline static constexpr uintptr_t m_angNetworkAngles = 0x380;
inline static constexpr uintptr_t m_flFriction = 0x38C;
inline static constexpr uintptr_t m_hOwnerEntity = 0x394;
inline static constexpr uintptr_t m_bRenderWithViewModels = 0x398;
inline static constexpr uintptr_t m_MoveCollide = 0x3AB;
inline static constexpr uintptr_t m_MoveType = 0x3AA;
inline static constexpr uintptr_t m_nRenderMode = 0x3A9;
inline static constexpr uintptr_t m_nRenderFX = 0x399;
inline static constexpr uintptr_t m_Collision = 0x3B8;
inline static constexpr uintptr_t m_CollisionGroup = 0x438;
inline static constexpr uintptr_t m_iName = 0x481;
inline static constexpr uintptr_t m_ModelName = 0x30;
inline static constexpr uintptr_t m_iName_recv = 0x481;
inline static constexpr uintptr_t m_iSignifierName = 0x478;
inline static constexpr uintptr_t m_scriptNameIndex = 0x588;
inline static constexpr uintptr_t m_hudInfo_visibility = 0x1A82;
inline static constexpr uintptr_t m_iMaxHealth = 0x470;
inline static constexpr uintptr_t m_baseTakeDamage = 0x6BC;
inline static constexpr uintptr_t m_invulnerableToDamageCount = 0x6C0;
inline static constexpr uintptr_t m_lifeState = 0x698;
inline static constexpr uintptr_t m_phaseShiftFlags = 0x6B8;
inline static constexpr uintptr_t m_networkedFlags = 0x2D0;
inline static constexpr uintptr_t m_rgflCoordinateFrame = 0x7D0;
inline static constexpr uintptr_t m_pStudioHdr = 0x1010;
inline static constexpr uintptr_t m_nForceBone = 0xDC8;
inline static constexpr uintptr_t m_shieldHealth = 0x190;
inline static constexpr uintptr_t m_shieldHealthMax = 0x194;
inline static constexpr uintptr_t m_grade = 0x340;
inline static constexpr uintptr_t m_holdUsePrompt = 0x610;
inline static constexpr uintptr_t m_pressUsePrompt = 0x618;
inline static constexpr uintptr_t m_usableType = 0x44;
inline static constexpr uintptr_t m_usablePriority = 0x828;
inline static constexpr uintptr_t m_usableDistanceOverride = 0x82C;
inline static constexpr uintptr_t m_usableFOV = 0x830;
inline static constexpr uintptr_t m_realmsBitMask = 0x930;
inline static constexpr uintptr_t m_minimapData = 0x848;
inline static constexpr uintptr_t m_cellX = 0x48;
inline static constexpr uintptr_t m_cellY = 0x4C;
inline static constexpr uintptr_t m_cellZ = 0x50;
};
C_CollisionProperty
struct C_CollisionProperty {
inline static constexpr uintptr_t m_vecMins = 0x10;
inline static constexpr uintptr_t m_vecMaxs = 0x1C;
inline static constexpr uintptr_t m_usSolidFlags = 0x28;
inline static constexpr uintptr_t m_nSolidType = 0x2C;
inline static constexpr uintptr_t m_triggerBloat = 0x2D;
inline static constexpr uintptr_t m_collisionDetailLevel = 0x2E;
inline static constexpr uintptr_t m_nSurroundType = 0x3C;
inline static constexpr uintptr_t m_vecSpecifiedSurroundingMins = 0x48;
inline static constexpr uintptr_t m_vecSpecifiedSurroundingMaxs = 0x54;
};
C_BaseAnimating
struct C_BaseAnimating {
inline static constexpr uintptr_t m_SequenceTransitioner = 0xB48;
inline static constexpr uintptr_t m_flModelScale = 0xE38;
inline static constexpr uintptr_t m_flPoseParameter = 0x2C;
inline static constexpr uintptr_t m_bSequenceFinished = 0xE2C;
inline static constexpr uintptr_t m_bSequenceLooped = 0xE34;
inline static constexpr uintptr_t m_flEstIkOffset = 0x8C;
inline static constexpr uintptr_t m_nBody = 0xD84;
inline static constexpr uintptr_t m_nSkin = 0xD78;
inline static constexpr uintptr_t m_skinMod = 0xD7C;
inline static constexpr uintptr_t m_camoIndex = 0xD88;
inline static constexpr uintptr_t m_animActive = 0x99C;
inline static constexpr uintptr_t m_animNetworkFlags = 0x998;
inline static constexpr uintptr_t m_networkAnimActive = 0x99C;
inline static constexpr uintptr_t m_animCollisionEnabled = 0x99F;
inline static constexpr uintptr_t m_animRelativeToGroundEnabled = 0x9A0;
inline static constexpr uintptr_t m_animPlantingEnabled = 0x9A1;
inline static constexpr uintptr_t m_animModelIndex = 0x14;
inline static constexpr uintptr_t m_animPlaybackRate = 0x10;
inline static constexpr uintptr_t m_animSequence = 0x1C;
inline static constexpr uintptr_t m_animStartCycle = 0xC;
inline static constexpr uintptr_t m_animStartTime = 0x8;
inline static constexpr uintptr_t m_fireDeferredStopsStartTime = 0xD98;
inline static constexpr uintptr_t m_nResetEventsStartTime = 0xD90;
inline static constexpr uintptr_t m_predictedAnimEventData = 0xA98;
inline static constexpr uintptr_t m_animCycle = 0xE8;
inline static constexpr uintptr_t m_currentFrame_modelIndex = 0xCC;
inline static constexpr uintptr_t m_currentFrame_viewOffset = 0xDC;
inline static constexpr uintptr_t m_currentFrameBaseAnim_playbackRate = 0xE4C;
inline static constexpr uintptr_t m_currentFrameBaseAnim_sequence = 0xE58;
inline static constexpr uintptr_t m_currentFrameBaseAnim_startCycle = 0xE48;
inline static constexpr uintptr_t m_currentFrameBaseAnim_startTime = 0xE44;
inline static constexpr uintptr_t m_currentFrameBaseAnim_modelIndex = 0xE50;
inline static constexpr uintptr_t m_currentFrameBaseAnim_poseParams = 0xE68;
};
C_BaseCombatCharacter
struct C_BaseCombatCharacter {
inline static constexpr uintptr_t m_inventory = 0x1978;
inline static constexpr uintptr_t m_shieldHealth = 0x190;
inline static constexpr uintptr_t m_shieldHealthMax = 0x194;
inline static constexpr uintptr_t m_selectedWeapons = 0x19E0;
inline static constexpr uintptr_t m_latestPrimaryWeapons = 0x19E4;
inline static constexpr uintptr_t m_latestPrimaryWeaponsIndexZeroOrOne = 0x19EC;
inline static constexpr uintptr_t m_latestNonOffhandWeapons = 0x19F4;
inline static constexpr uintptr_t m_selectedOffhands = 0x19F6;
inline static constexpr uintptr_t m_selectedOffhandsPending = 0x19F9;
inline static constexpr uintptr_t m_latestMeleeWeapon = 0x1A00;
inline static constexpr uintptr_t m_lastCycleSlot = 0x19FC;
inline static constexpr uintptr_t m_lastFiredTime = 0x1950;
inline static constexpr uintptr_t m_lastFiredWeapon = 0x1954;
inline static constexpr uintptr_t m_weaponAmmoRegenDisabled = 0x1A7B;
inline static constexpr uintptr_t m_weaponAmmoRegenDisabledRefCount = 0x1A7C;
inline static constexpr uintptr_t m_weaponDelayEnableTime = 0x1A08;
inline static constexpr uintptr_t m_weaponDisabledFlags = 0x1A69;
inline static constexpr uintptr_t m_weaponDisabledInScript = 0x1A0C;
inline static constexpr uintptr_t m_weaponPermission = 0x1A04;
inline static constexpr uintptr_t m_weaponTypeDisabledFlags = 0x1A6C;
inline static constexpr uintptr_t m_akimboState = 0x1A80;
inline static constexpr uintptr_t m_akimboShouldAltFire = 0x1A81;
inline static constexpr uintptr_t m_flNextAttack = 0x194C;
inline static constexpr uintptr_t m_sharedEnergy = 0x195C;
inline static constexpr uintptr_t m_sharedEnergyMax = 0x1960;
inline static constexpr uintptr_t m_sharedEnergyLockoutThreshold = 0x1964;
inline static constexpr uintptr_t m_sharedEnergyRegenDelay = 0x1970;
inline static constexpr uintptr_t m_sharedEnergyRegenRate = 0x196C;
inline static constexpr uintptr_t m_phaseShiftType = 0x1AC0;
inline static constexpr uintptr_t m_phaseShiftTimeStart = 0x1AC4;
inline static constexpr uintptr_t m_phaseShiftTimeEnd = 0x1AC8;
inline static constexpr uintptr_t m_bIsPlayerOverheating = 0x1930;
inline static constexpr uintptr_t m_playerOverheatValue = 0x1934;
inline static constexpr uintptr_t m_timeLastGeneratedPlayerOverheat = 0x1940;
inline static constexpr uintptr_t m_targetInfoPingValue = 0x1C60;
inline static constexpr uintptr_t m_nameVisibilityFlags = 0x898;
inline static constexpr uintptr_t m_teamMemberIndex = 0x338;
inline static constexpr uintptr_t m_squadID = 0x33C;
inline static constexpr uintptr_t m_showActiveWeapon3p = 0x10;
inline static constexpr uintptr_t m_weaponGettingSwitchedOut = 0x8;
inline static constexpr uintptr_t m_vecViewOffset_x = 0x34;
inline static constexpr uintptr_t m_vecViewOffset_y = 0x38;
inline static constexpr uintptr_t m_vecViewOffset_z = 0x3C;
// Cloak
inline static constexpr uintptr_t m_cloakEndTime = 0x1BC;
inline static constexpr uintptr_t m_cloakFadeInEndTime = 0x1C0;
inline static constexpr uintptr_t m_cloakFadeOutStartTime = 0x1C4;
inline static constexpr uintptr_t m_cloakFadeInDuration = 0x1C8;
inline static constexpr uintptr_t m_cloakFlickerAmount = 0x1CC;
inline static constexpr uintptr_t m_cloakFlickerEndTime = 0x1D0;
};
C_Player
struct C_Player {
// Base
inline static constexpr uintptr_t pl = 0x2588;
inline static constexpr uintptr_t m_Local = 0x1E78;
inline static constexpr uintptr_t m_Shared = 0x4578;
inline static constexpr uintptr_t m_currentFramePlayer = 0x2160;
inline static constexpr uintptr_t m_iSpawnParity = 0x360C;
inline static constexpr uintptr_t m_flDeathTime = 0x36EC;
inline static constexpr uintptr_t m_lifeState = 0x698;
inline static constexpr uintptr_t m_iHealth = 0x320;
inline static constexpr uintptr_t m_iMaxHealth = 0x470;
inline static constexpr uintptr_t m_shadowShieldActive = 0x3020;
inline static constexpr uintptr_t m_tempShieldHealth = 0x3024;
inline static constexpr uintptr_t m_extraShieldHealth = 0x3028;
inline static constexpr uintptr_t m_extraShieldTier = 0x302C;
inline static constexpr uintptr_t m_bleedoutState = 0x27D8;
inline static constexpr uintptr_t m_bleedoutStartTime = 0x27DC;
inline static constexpr uintptr_t m_dragReviveState = 0x4A40;
inline static constexpr uintptr_t m_dragReviveOutroStartTime = 0x4A44;
inline static constexpr uintptr_t m_reviveTarget = 0x4A48;
inline static constexpr uintptr_t m_playerFlags = 0x3344;
inline static constexpr uintptr_t m_playerMoveSpeedScale = 0x3350;
// Movement state
inline static constexpr uintptr_t m_fFlags = 0xC8;
inline static constexpr uintptr_t m_hGroundEntity = 0x31C;
inline static constexpr uintptr_t m_flFriction = 0x38C;
inline static constexpr uintptr_t m_flMaxspeed = 0x324;
inline static constexpr uintptr_t m_vecAbsVelocity = 0x160;
inline static constexpr uintptr_t m_vecVelocity = 0x374;
inline static constexpr uintptr_t m_vecPreviouslyPredictedOrigin = 0x3750;
inline static constexpr uintptr_t m_duckState = 0x2AD8;
inline static constexpr uintptr_t m_doingHalfDuck = 0x2AE0;
inline static constexpr uintptr_t m_canStand = 0x2AE1;
inline static constexpr uintptr_t m_leanState = 0x2ADC;
inline static constexpr uintptr_t m_StandHullMin = 0x2AE4;
inline static constexpr uintptr_t m_StandHullMax = 0x2AF0;
inline static constexpr uintptr_t m_DuckHullMin = 0x2AFC;
inline static constexpr uintptr_t m_DuckHullMax = 0x2B08;
inline static constexpr uintptr_t m_upDir = 0x2B18;
inline static constexpr uintptr_t m_upDirPredicted = 0x2B24;
// Sprint / stickysprint
inline static constexpr uintptr_t m_fIsSprinting = 0x2A8C;
inline static constexpr uintptr_t m_fIsWalking = 0x2A8D;
inline static constexpr uintptr_t m_bIsStickySprinting = 0x2DF2;
inline static constexpr uintptr_t m_bPlayedSprintStartEffects = 0x2A84;
inline static constexpr uintptr_t m_stickySprintForwardEnableTime = 0x2A9C;
inline static constexpr uintptr_t m_stickySprintForwardDisableTime = 0x2AA0;
inline static constexpr uintptr_t m_stickySprintStartTime = 0x2AB4;
inline static constexpr uintptr_t m_sprintStartedTime = 0x2AA4;
inline static constexpr uintptr_t m_sprintStartedFrac = 0x2AA8;
inline static constexpr uintptr_t m_sprintEndedTime = 0x2AAC;
inline static constexpr uintptr_t m_sprintEndedFrac = 0x2AB0;
inline static constexpr uintptr_t m_sprintTiltVel = 0x2DF8;
// Zoom / ADS
inline static constexpr uintptr_t m_bZooming = 0x1CD1;
inline static constexpr uintptr_t m_zoomBaseFrac = 0x1CD8;
inline static constexpr uintptr_t m_zoomBaseTime = 0x1CDC;
inline static constexpr uintptr_t m_zoomFullStartTime = 0x1CE0;
inline static constexpr uintptr_t m_zoomToggleOnStartTime = 0x1CD4;
// Inputs
inline static constexpr uintptr_t m_nButtons = 0x2A74;
inline static constexpr uintptr_t m_afButtonLast = 0x2A68;
inline static constexpr uintptr_t m_afButtonPressed = 0x2A6C;
inline static constexpr uintptr_t m_afButtonReleased = 0x2A70;
// Boost / jetpack / glide / hover
inline static constexpr uintptr_t m_boosting = 0x3044;
inline static constexpr uintptr_t m_activateBoost = 0x3045;
inline static constexpr uintptr_t m_repeatedBoost = 0x3046;
inline static constexpr uintptr_t m_boostMeter = 0x3048;
inline static constexpr uintptr_t m_jetpack = 0x304C;
inline static constexpr uintptr_t m_activateJetpack = 0x304D;
inline static constexpr uintptr_t m_jetpackAfterburner = 0x304E;
inline static constexpr uintptr_t m_gliding = 0x304F;
inline static constexpr uintptr_t m_glideMeter = 0x3050;
inline static constexpr uintptr_t m_glideRechargeDelayAccumulator = 0x3054;
inline static constexpr uintptr_t m_activateGlide = 0x3058;
inline static constexpr uintptr_t m_glideUpwardsBoostEndTime = 0x305C;
inline static constexpr uintptr_t m_fallSpeedGlideMultiplier = 0x3060;
inline static constexpr uintptr_t m_pilotModeActive = 0x3064;
inline static constexpr uintptr_t m_slideGateDebounceExpireTime = 0x3068;
inline static constexpr uintptr_t m_hovering = 0x306C;
inline static constexpr uintptr_t m_isHoverStrafed = 0x306D;
inline static constexpr uintptr_t m_hoverMeter = 0x3070;
inline static constexpr uintptr_t m_hoverRechargeDelayAccumulator = 0x3074;
inline static constexpr uintptr_t m_isPerformingBoostAction = 0x3078;
inline static constexpr uintptr_t m_lastJumpHeight = 0x307C;
// Wallrun / wallhang
inline static constexpr uintptr_t m_wallRunStartTime = 0x371C;
inline static constexpr uintptr_t m_wallRunClearTime = 0x3720;
inline static constexpr uintptr_t m_wallRunCount = 0x2B3C;
inline static constexpr uintptr_t m_wallRunWeak = 0x2B40;
inline static constexpr uintptr_t m_wallRunPushAwayTime = 0x2B58;
inline static constexpr uintptr_t m_wallDangleJumpOffTime = 0x2C10;
inline static constexpr uintptr_t m_wallDangleMayHangHere = 0x2C14;
inline static constexpr uintptr_t m_wallDangleForceFallOff = 0x2C15;
inline static constexpr uintptr_t m_wallDangleLastPushedForward = 0x2C16;
inline static constexpr uintptr_t m_wallDangleDisableWeapon = 0x2C20;
inline static constexpr uintptr_t m_wallClimbSetUp = 0x2C28;
inline static constexpr uintptr_t m_wallHanging = 0x2C29;
inline static constexpr uintptr_t m_wallHangTime = 0x2B98;
// Dodge
inline static constexpr uintptr_t m_dodging = 0x3735;
inline static constexpr uintptr_t m_lastDodgeTime = 0x3738;
inline static constexpr uintptr_t m_dodgingInAir = 0x37A2;
// Slide
inline static constexpr uintptr_t m_lastSlideTime = 0x2DE0;
inline static constexpr uintptr_t m_lastSlideBoost = 0x2DE4;
inline static constexpr uintptr_t m_sliding = 0x2DDD;
inline static constexpr uintptr_t m_slideLongJumpAllowed = 0x2DDE;
inline static constexpr uintptr_t m_lastSlideWasBoost = 0x2DDF;
inline static constexpr uintptr_t m_lastSlideSuperJumpTime = 0x37C0;
inline static constexpr uintptr_t m_slowMoEnabled = 0x2DDC;
// Grapple
inline static constexpr uintptr_t m_grapple = 0x2D30;
inline static constexpr uintptr_t m_grappleActive = 0x2DB8;
inline static constexpr uintptr_t m_grappleDetachTime = 0x2DBC;
inline static constexpr uintptr_t m_grappleNeedWindowCheck = 0x2DC0;
inline static constexpr uintptr_t m_grappleHook = 0x3804;
// Gravity lift / jet drive
inline static constexpr uintptr_t m_gravityLiftActive = 0x2C2A;
inline static constexpr uintptr_t m_gravityLiftEnterTime = 0x2C2C;
inline static constexpr uintptr_t m_gravityLiftEjectTime = 0x2C30;
inline static constexpr uintptr_t m_gravityLiftHoverTime = 0x2C34;
inline static constexpr uintptr_t m_gravityLiftLastOrigin = 0x2C38;
inline static constexpr uintptr_t m_gravityLiftEjectVelocity = 0x2C40;
inline static constexpr uintptr_t m_gravityGrenadeStatusEffect = 0x2DE8;
inline static constexpr uintptr_t m_jetDriveTargetEnt = 0x2C5C;
inline static constexpr uintptr_t m_jetDriveTargetPos = 0x2C50;
inline static constexpr uintptr_t m_jetDriveStartPos = 0x2C64;
inline static constexpr uintptr_t m_jetDriveStartTime = 0x2C70;
inline static constexpr uintptr_t m_jetDriveSpeed = 0x2C74;
inline static constexpr uintptr_t m_jetDriveAccel = 0x2C78;
inline static constexpr uintptr_t m_jetDriveTimeout = 0x2C84;
inline static constexpr uintptr_t m_jetDriveDoubleJumpVelocity = 0x2C88;
inline static constexpr uintptr_t m_jetDriveDoubleJumpVelBackFrac = 0x2C94;
inline static constexpr uintptr_t m_jetDriveActive = 0x2C4E;
inline static constexpr uintptr_t m_jetDriveWasActive = 0x2C4D;
// Skydive / skyward launch
inline static constexpr uintptr_t m_skydiveState = 0x48C4;
inline static constexpr uintptr_t m_skydiveStartTime = 0x48C8;
inline static constexpr uintptr_t m_skydiveEndTime = 0x48CC;
inline static constexpr uintptr_t m_skydiveDistanceToLand = 0x48D8;
inline static constexpr uintptr_t m_skydiveDiveAngle = 0x48DC;
inline static constexpr uintptr_t m_skydiveIsDiving = 0x48E0;
inline static constexpr uintptr_t m_skydiveSpeed = 0x48E4;
inline static constexpr uintptr_t m_skydiveStrafeAngle = 0x48E8;
inline static constexpr uintptr_t m_skydiveFreelookEnabled = 0x48EC;
inline static constexpr uintptr_t m_skydiveFreelookLockedAngle = 0x48F0;
inline static constexpr uintptr_t m_skydivePlayerPitch = 0x48FC;
inline static constexpr uintptr_t m_skydivePlayerYaw = 0x4900;
inline static constexpr uintptr_t m_skydiveFromUpdraft = 0x493C;
inline static constexpr uintptr_t m_skydiveFromSkywardLaunch = 0x493D;
inline static constexpr uintptr_t m_skydiveContraintPostion = 0x4944;
inline static constexpr uintptr_t m_skydiveContraintRadius = 0x4950;
inline static constexpr uintptr_t m_skywardLaunchState = 0x4954;
inline static constexpr uintptr_t m_skywardLaunchSlowStartTime = 0x4968;
inline static constexpr uintptr_t m_skywardLaunchSlowEndTime = 0x496C;
inline static constexpr uintptr_t m_skywardLaunchFastEndTime = 0x4970;
inline static constexpr uintptr_t m_skywardLaunchEndTime = 0x4978;
inline static constexpr uintptr_t m_skywardLaunchSlowSpeed = 0x4980;
inline static constexpr uintptr_t m_skywardLaunchFastSpeed = 0x4984;
inline static constexpr uintptr_t m_skywardOffset = 0x4988;
inline static constexpr uintptr_t m_skywardObstacleAvoidanceEndPos = 0x499C;
inline static constexpr uintptr_t m_skywardWeaponsEnabled = 0x49A8;
// Updraft
inline static constexpr uintptr_t m_updraftCount = 0x4B00;
inline static constexpr uintptr_t m_updraftStage = 0x4B04;
inline static constexpr uintptr_t m_updraftEnterTime = 0x4B08;
inline static constexpr uintptr_t m_updraftLeaveTime = 0x4B0C;
inline static constexpr uintptr_t m_updraftLiftActivationHeight = 0x4B18;
inline static constexpr uintptr_t m_updraftLiftSpeed = 0x4B1C;
inline static constexpr uintptr_t m_updraftLiftAcceleration = 0x4B20;
inline static constexpr uintptr_t m_updraftLiftExitDuration = 0x4B24;
inline static constexpr uintptr_t m_updraftSlowTime = 0x4B28;
// Armored leap
inline static constexpr uintptr_t m_armoredLeapType = 0x49C8;
inline static constexpr uintptr_t m_armoredLeapPhase = 0x49CC;
inline static constexpr uintptr_t m_armoredLeapStartTime = 0x49D0;
inline static constexpr uintptr_t m_armoredLeapAirPos = 0x49B0;
inline static constexpr uintptr_t m_armoredLeapEndPos = 0x49BC;
// Melee / lunge
inline static constexpr uintptr_t m_melee = 0x3308;
inline static constexpr uintptr_t m_isLungingToPosition = 0x41F0;
inline static constexpr uintptr_t m_lungeStartTime = 0x4218;
inline static constexpr uintptr_t m_lungeEndTime = 0x421C;
inline static constexpr uintptr_t m_lungeCanFly = 0x4220;
inline static constexpr uintptr_t m_lungeLockPitch = 0x4221;
inline static constexpr uintptr_t m_lungeStartPitch = 0x4224;
inline static constexpr uintptr_t m_lungeSmoothTime = 0x4228;
inline static constexpr uintptr_t m_lungeMaxTime = 0x422C;
inline static constexpr uintptr_t m_lungeMaxEndSpeed = 0x4230;
inline static constexpr uintptr_t m_lungeTargetEntity = 0x41EC;
inline static constexpr uintptr_t m_lungeTargetPosition = 0x41F4;
// Zipline
inline static constexpr uintptr_t m_activeZipline = 0x2F4C;
inline static constexpr uintptr_t m_lastZipline = 0x2F50;
inline static constexpr uintptr_t m_lastZiplineDetachTime = 0x2F54;
inline static constexpr uintptr_t m_ziplineValid3pWeaponLayerAnim = 0x2F58;
inline static constexpr uintptr_t m_ziplineState = 0x2F5C;
inline static constexpr uintptr_t m_zipline = 0x2F60;
inline static constexpr uintptr_t m_ziplineGrenadeEntity = 0x2FF0;
inline static constexpr uintptr_t m_ziplineReattachCooldownTime = 0x3000;
inline static constexpr uintptr_t m_ziplineCooldownIndex = 0x3004;
inline static constexpr uintptr_t m_ziplineViewOffsetPosition = 0x2FD8;
inline static constexpr uintptr_t m_ziplineViewOffsetVelocity = 0x2FE4;
// Traversal (mantles / kick-flips)
inline static constexpr uintptr_t m_traversalState = 0x2B9C;
inline static constexpr uintptr_t m_traversalType = 0x2BA0;
inline static constexpr uintptr_t m_traversalBegin = 0x2BA4;
inline static constexpr uintptr_t m_traversalMid = 0x2BB0;
inline static constexpr uintptr_t m_traversalEnd = 0x2BBC;
inline static constexpr uintptr_t m_traversalMidFrac = 0x2BC8;
inline static constexpr uintptr_t m_traversalForwardDir = 0x2BCC;
inline static constexpr uintptr_t m_traversalRefPos = 0x2BD8;
inline static constexpr uintptr_t m_traversalProgress = 0x2BE4;
inline static constexpr uintptr_t m_traversalStartTime = 0x2BE8;
inline static constexpr uintptr_t m_traversalHandAppearTime = 0x2BEC;
inline static constexpr uintptr_t m_traversalReleaseTime = 0x2BF0;
inline static constexpr uintptr_t m_traversalBlendOutStartTime = 0x2BF4;
inline static constexpr uintptr_t m_traversalYawDelta = 0x2C04;
// Viewmodels
inline static constexpr uintptr_t m_hViewModels = 0x2E0C;
inline static constexpr uintptr_t m_viewOffsetEntity = 0x2E20;
inline static constexpr uintptr_t m_turret = 0x2E08;
inline static constexpr uintptr_t m_activeViewmodelModifiers = 0x39F0;
// Class / cosmetics / identity
inline static constexpr uintptr_t m_pilotClassIndex = 0x45C8;
inline static constexpr uintptr_t m_ammoPoolCapacity = 0x260C;
inline static constexpr uintptr_t m_classModsActive = 0x2640;
inline static constexpr uintptr_t m_nucleusId = 0x2628;
inline static constexpr uintptr_t m_platformUserId = 0x2620;
inline static constexpr uintptr_t m_hardware = 0x2618;
inline static constexpr uintptr_t m_deviceForm = 0x4870;
inline static constexpr uintptr_t m_helmetType = 0x485C;
inline static constexpr uintptr_t m_armorType = 0x4860;
inline static constexpr uintptr_t m_title = 0x41C8;
inline static constexpr uintptr_t m_hasBadReputation = 0x2610;
inline static constexpr uintptr_t m_hasMic = 0x334C;
inline static constexpr uintptr_t m_communicationsAutoBlocked = 0x334E;
inline static constexpr uintptr_t m_useCredit = 0x3340;
inline static constexpr uintptr_t m_laserSightColor = 0x2634;
inline static constexpr uintptr_t m_laserSightColorCustomized = 0x2632;
inline static constexpr uintptr_t m_crossPlayChat = 0x2630;
inline static constexpr uintptr_t m_crossPlayChatFriends = 0x2631;
inline static constexpr uintptr_t m_petTitan = 0x3808;
inline static constexpr uintptr_t m_petTitanMode = 0x3854;
inline static constexpr uintptr_t m_titanSoul = 0x1AB8;
};
DT_Local (local player only)
struct DT_Local {
inline static constexpr uintptr_t m_nStepside = 0x8;
inline static constexpr uintptr_t m_nOldButtons = 0xC;
inline static constexpr uintptr_t m_nOldVehicleButtons = 0x10;
inline static constexpr uintptr_t m_iHideHUD = 0x14;
inline static constexpr uintptr_t m_superJumpsUsed = 0x18;
inline static constexpr uintptr_t m_wasClimbingIntoMantle = 0x1C;
inline static constexpr uintptr_t m_dodgedInAir = 0x1E;
inline static constexpr uintptr_t m_fastFalling = 0x1F;
inline static constexpr uintptr_t m_usedWallHighJump = 0x20;
inline static constexpr uintptr_t m_lastMantleBoostTime = 0x24;
inline static constexpr uintptr_t m_jumpPressTime = 0x28;
inline static constexpr uintptr_t m_prevJumpPressTime = 0x2C;
inline static constexpr uintptr_t m_jetpackActivateTime = 0x30;
inline static constexpr uintptr_t m_jetpackDeactivateTime = 0x34;
inline static constexpr uintptr_t m_flSuitPower = 0x38;
inline static constexpr uintptr_t m_flSuitJumpPower = 0x3C;
inline static constexpr uintptr_t m_flSuitGrapplePower = 0x40;
inline static constexpr uintptr_t m_flFallVelocity = 0x44;
inline static constexpr uintptr_t m_flStepSize = 0x48;
inline static constexpr uintptr_t m_airSlowMoFrac = 0x4C;
inline static constexpr uintptr_t predictableFlags = 0x50;
inline static constexpr uintptr_t m_bitsActiveDevices = 0x54;
inline static constexpr uintptr_t m_forceStance = 0x58;
inline static constexpr uintptr_t m_forceSlide = 0x5C;
inline static constexpr uintptr_t m_duckToggleOn = 0x5D;
inline static constexpr uintptr_t m_resetDuckToggle = 0x5E;
inline static constexpr uintptr_t m_bDrawViewmodel = 0x5F;
inline static constexpr uintptr_t m_bAllowAutoMovement = 0x60;
inline static constexpr uintptr_t m_queuedMeleePressTime = 0x1A0;
inline static constexpr uintptr_t m_queuedGrappleMeleeTime = 0x1A4;
inline static constexpr uintptr_t m_disableMeleeUntilRelease = 0x1B0;
inline static constexpr uintptr_t m_meleePressTime = 0x1B4;
inline static constexpr uintptr_t m_meleeInputIndex = 0x1B8;
inline static constexpr uintptr_t m_oneHandedWeaponUsage = 0x1C0;
inline static constexpr uintptr_t m_prevOneHandedWeaponUsage = 0x1C1;
inline static constexpr uintptr_t m_titanEmbarkEnabled = 0x1F4;
inline static constexpr uintptr_t m_titanDisembarkEnabled = 0x1F5;
inline static constexpr uintptr_t m_playerAnimStationaryGoalFeetYaw = 0x1FC;
inline static constexpr uintptr_t m_playerAnimJumping = 0x200;
inline static constexpr uintptr_t m_playerAnimJumpStartTime = 0x204;
inline static constexpr uintptr_t m_playerAnimFirstJumpFrame = 0x208;
inline static constexpr uintptr_t m_playerAnimDodging = 0x209;
inline static constexpr uintptr_t m_playerAnimJumpActivity = 0x20A;
inline static constexpr uintptr_t m_playerAnimLanding = 0x20C;
inline static constexpr uintptr_t m_playerAnimShouldLand = 0x20D;
inline static constexpr uintptr_t m_playerAnimLandStartTime = 0x210;
inline static constexpr uintptr_t m_playerAnimInAirWalk = 0x214;
inline static constexpr uintptr_t m_playerAnimPrevFrameSequenceMotionYaw = 0x218;
inline static constexpr uintptr_t m_playerAnimMeleeParity = 0x21C;
inline static constexpr uintptr_t m_playerAnimMeleeStartTime = 0x220;
// Local gravity
inline static constexpr uintptr_t m_playerLocalGravityStartRotation = 0x254;
inline static constexpr uintptr_t m_playerLocalGravityEndRotation = 0x264;
inline static constexpr uintptr_t m_playerLocalGravityEndDirection = 0x274;
inline static constexpr uintptr_t m_playerLocalGravityBlendStartTime = 0x280;
inline static constexpr uintptr_t m_playerLocalGravityBlendEndTime = 0x284;
inline static constexpr uintptr_t m_playerLocalGravityBlendStrength = 0x288;
inline static constexpr uintptr_t m_playerLocalGravityStrength = 0x28C;
inline static constexpr uintptr_t m_playerLocalGravityType = 0x290;
inline static constexpr uintptr_t m_playerLocalGravityPoint = 0x294;
inline static constexpr uintptr_t m_playerLocalGravityLineStart = 0x2A0;
inline static constexpr uintptr_t m_playerLocalGravityLineEnd = 0x2AC;
inline static constexpr uintptr_t m_playerLocalGravityEntity = 0x2B8;
inline static constexpr uintptr_t m_playerLocalGravityLineStartEntity = 0x2BC;
inline static constexpr uintptr_t m_playerLocalGravityLineEndEntity = 0x2C0;
inline static constexpr uintptr_t m_playerFloatLookStartTime = 0x2C4;
inline static constexpr uintptr_t m_playerFloatLookEndTime = 0x2C8;
inline static constexpr uintptr_t m_wallrunLatestFloorHeight = 0x2CC;
inline static constexpr uintptr_t m_wallrunFromJetpack = 0x2D0;
inline static constexpr uintptr_t m_groundNormal = 0x2D4;
inline static constexpr uintptr_t m_continuousUseBlocked = 0x2E0;
inline static constexpr uintptr_t m_useEnt = 0x2E4;
};
DT_LocalPlayerExclusive (client-only fields)
struct DT_LocalPlayerExclusive {
inline static constexpr uintptr_t m_iObserverMode = 0x3614;
inline static constexpr uintptr_t m_hObserverTarget = 0x3620;
inline static constexpr uintptr_t m_observerModeStaticPosition = 0x3660;
inline static constexpr uintptr_t m_observerModeStaticAngles = 0x366C;
inline static constexpr uintptr_t m_observerModeStaticFOVOverride = 0x3678;
inline static constexpr uintptr_t m_hardpointEntity = 0x3810;
inline static constexpr uintptr_t m_hThirdPersonEnt = 0x385C;
inline static constexpr uintptr_t m_thirdPersonShoulderView = 0x3860;
inline static constexpr uintptr_t m_thirdPerson = 0x38C4;
inline static constexpr uintptr_t m_firstPersonProxy = 0x37FC;
inline static constexpr uintptr_t m_predictedFirstPersonProxy = 0x3800;
inline static constexpr uintptr_t m_playerScriptNetDataExclusive = 0x4858;
inline static constexpr uintptr_t m_playerLookTargetEntity = 0x39D4;
inline static constexpr uintptr_t m_playerLookTargetOffset = 0x39D8;
inline static constexpr uintptr_t m_viewConeActive = 0x32FC;
inline static constexpr uintptr_t m_viewConeParented = 0x32FD;
inline static constexpr uintptr_t m_viewConeParity = 0x3300;
inline static constexpr uintptr_t m_viewConeLerpTime = 0x3A40;
inline static constexpr uintptr_t m_pingOffset = 0x4864;
inline static constexpr uintptr_t m_flLaggedMovementValue = 0x3C98;
inline static constexpr uintptr_t m_iSpawnParity = 0x360C;
inline static constexpr uintptr_t m_flConstraintRadius = 0x35B4;
inline static constexpr uintptr_t m_flConstraintWidth = 0x35B8;
inline static constexpr uintptr_t m_flConstraintSpeedFactor = 0x35BC;
inline static constexpr uintptr_t m_hConstraintEntity = 0x35A4;
inline static constexpr uintptr_t m_vecConstraintCenter = 0x35A8;
inline static constexpr uintptr_t m_bConstraintPastRadius = 0x35C0;
inline static constexpr uintptr_t m_deathFieldIndex = 0x4B30;
inline static constexpr uintptr_t m_lastKillTime = 0x36E8;
inline static constexpr uintptr_t m_armsModelIndex = 0x4B2C;
inline static constexpr uintptr_t m_amazonPrimeBits = 0x4A54;
inline static constexpr uintptr_t m_twitchDropsInitialized = 0x4A50;
inline static constexpr uintptr_t m_twitchDropsBits = 0x4A5C;
};
CWeaponX
struct CWeaponX {
// Owner
inline static constexpr uintptr_t m_weaponOwner = 0x15F0;
inline static constexpr uintptr_t m_playerData = 0x1670;
// Model / activity
inline static constexpr uintptr_t m_iWorldModelIndex = 0x1608;
inline static constexpr uintptr_t m_worldModelIndexOverride = 0x1604;
inline static constexpr uintptr_t m_holsterModelIndex = 0x160C;
inline static constexpr uintptr_t m_droppedModelIndex = 0x1610;
inline static constexpr uintptr_t m_idealSequence = 0x1614;
inline static constexpr uintptr_t m_idealActivity = 0x1616;
inline static constexpr uintptr_t m_weaponActivity = 0x1618;
inline static constexpr uintptr_t m_ActiveState = 0x161C;
inline static constexpr uintptr_t m_weaponNameIndex = 0x18A0;
// Ammo
inline static constexpr uintptr_t m_ammoInClip = 0x1620;
inline static constexpr uintptr_t m_ammoInStockpile = 0x1624;
inline static constexpr uintptr_t m_lifetimeShots = 0x162C;
inline static constexpr uintptr_t m_bInReload = 0x163A;
inline static constexpr uintptr_t m_flTimeWeaponIdle = 0x1630;
inline static constexpr uintptr_t m_weapState = 0x1634;
inline static constexpr uintptr_t m_allowedToUse = 0x1638;
inline static constexpr uintptr_t m_discarded = 0x1639;
inline static constexpr uintptr_t m_forcedADS = 0x163C;
inline static constexpr uintptr_t m_tossRelease = 0x1640;
inline static constexpr uintptr_t m_offhandSwitchSlot = 0x1644;
// Attack timing
inline static constexpr uintptr_t m_lastPrimaryAttackTime = 0x15F4;
inline static constexpr uintptr_t m_nextReadyTime = 0x15F8;
inline static constexpr uintptr_t m_nextPrimaryAttackTime = 0x15FC;
inline static constexpr uintptr_t m_attackTimeThisFrame = 0x1600;
inline static constexpr uintptr_t m_flNextEmptySoundTime = 0x3120;
inline static constexpr uintptr_t m_nNextThinkTick = 0x46C;
inline static constexpr uintptr_t m_weaponIsActivelyFiring = 0x3254;
inline static constexpr uintptr_t m_bRemoveable = 0x3144;
// Energy / heat
inline static constexpr uintptr_t m_energizeState = 0x1648;
inline static constexpr uintptr_t m_lastEnergizeState = 0x1649;
inline static constexpr uintptr_t m_startEnergizingTime = 0x164C;
inline static constexpr uintptr_t m_energizedEndTime = 0x1650;
inline static constexpr uintptr_t m_heatValue = 0x1654;
inline static constexpr uintptr_t m_heatValueOnLastFire = 0x1658;
inline static constexpr uintptr_t m_fullyHeated = 0x165C;
inline static constexpr uintptr_t m_curSharedEnergyCost = 0x1834;
// Custom activity
inline static constexpr uintptr_t m_customActivity = 0x165E;
inline static constexpr uintptr_t m_customActivitySequence = 0x1660;
inline static constexpr uintptr_t m_customActivityOwner = 0x1664;
inline static constexpr uintptr_t m_customActivityEndTime = 0x1668;
inline static constexpr uintptr_t m_customActivityFlags = 0x166C;
// Charge
inline static constexpr uintptr_t m_chargeStartTime = 0x1770;
inline static constexpr uintptr_t m_chargeEndTime = 0x1774;
inline static constexpr uintptr_t m_lastChargeFrac = 0x1778;
inline static constexpr uintptr_t m_chargeWithoutManualInputCancelled = 0x177C;
inline static constexpr uintptr_t m_lastEnergizeFrac = 0x1780;
inline static constexpr uintptr_t m_lastRegenTime = 0x1784;
inline static constexpr uintptr_t m_cooldownEndTime = 0x1788;
inline static constexpr uintptr_t m_stockPileWasDraining = 0x178C;
inline static constexpr uintptr_t m_weaponIsCharging = 0x178D;
inline static constexpr uintptr_t m_weaponChargeLevelIncreasedAnimPlaying = 0x178E;
inline static constexpr uintptr_t m_lastChargeLevel = 0x1790;
inline static constexpr uintptr_t m_lastFullyCharged = 0x1794;
inline static constexpr uintptr_t m_chargeEnergyDepleteStepCounter = 0x1798;
// Burst / spread
inline static constexpr uintptr_t m_burstFireCount = 0x17A0;
inline static constexpr uintptr_t m_burstFireIndex = 0x17A4;
inline static constexpr uintptr_t m_shotIndexForSpread = 0x17A8;
inline static constexpr uintptr_t m_shotCount = 0x17AC;
inline static constexpr uintptr_t m_sustainedDischargeEndTime = 0x17B0;
inline static constexpr uintptr_t m_sustainedLaserCurrentSpread = 0x17B4;
inline static constexpr uintptr_t m_sustainedDischargeIsInPrimaryAttack = 0x17B8;
inline static constexpr uintptr_t m_sustainedLaserNextRandomSeed = 0x17B9;
// Mods
inline static constexpr uintptr_t m_modBitfieldFromPlayer = 0x17BC;
inline static constexpr uintptr_t m_modBitfieldInternal = 0x17C8;
inline static constexpr uintptr_t m_modBitfieldCurrent = 0x17D4;
inline static constexpr uintptr_t m_modBitfieldDisabled = 0x17E0;
inline static constexpr uintptr_t m_scriptControlledModValues = 0x17EC;
inline static constexpr uintptr_t m_scriptControlledModValuesMap = 0x180C;
inline static constexpr uintptr_t m_pendingModIndex = 0x182C;
inline static constexpr uintptr_t m_hasPendingMod = 0x1830;
// Skin overrides
inline static constexpr uintptr_t m_skinOverride = 0x1768;
inline static constexpr uintptr_t m_skinOverrideIsValid = 0x176C;
inline static constexpr uintptr_t m_targetingLaserEnabledScript = 0x1764;
// Emissive + reactive
inline static constexpr uintptr_t m_shouldPlayIdleAnims = 0x186C;
inline static constexpr uintptr_t m_shouldPlaySprintAnims = 0x186D;
inline static constexpr uintptr_t m_scriptActivated = 0x186E;
inline static constexpr uintptr_t m_curReactiveSkinKillCount = 0x186F;
inline static constexpr uintptr_t m_curReactiveSkinKnockdownCount = 0x1870;
inline static constexpr uintptr_t m_emissiveEventData = 0x1878;
inline static constexpr uintptr_t m_isLoadoutPickup = 0x1894;
inline static constexpr uintptr_t m_lockedSet = 0x1890;
inline static constexpr uintptr_t m_utilityEnt = 0x1898;
inline static constexpr uintptr_t m_oaActiveOverride = 0x18AC;
inline static constexpr uintptr_t m_parentTurret = 0x18B0;
inline static constexpr uintptr_t m_sharedWeaponXp = 0x18B4;
};
Weapon player data (per-owner state on a weapon)
struct WeaponPlayerData {
inline static constexpr uintptr_t m_moveSpread = 0x8;
inline static constexpr uintptr_t m_spreadStartTime = 0xC;
inline static constexpr uintptr_t m_spreadStartFracHip = 0x10;
inline static constexpr uintptr_t m_spreadStartFracADS = 0x14;
inline static constexpr uintptr_t m_kickSpreadHipfire = 0x18;
inline static constexpr uintptr_t m_kickSpreadADS = 0x1C;
inline static constexpr uintptr_t m_kickTime = 0x20;
inline static constexpr uintptr_t m_kickScaleBasePitch = 0x24;
inline static constexpr uintptr_t m_kickScaleBaseYaw = 0x28;
inline static constexpr uintptr_t m_kickPatternScaleBase = 0x2C;
inline static constexpr uintptr_t m_kickSpringHeatBaseTime = 0x30;
inline static constexpr uintptr_t m_kickSpringHeatBaseValue = 0x34;
inline static constexpr uintptr_t m_semiAutoTriggerHoldTime = 0x38;
inline static constexpr uintptr_t m_fastHolsterScale = 0x3C;
inline static constexpr uintptr_t m_semiAutoTriggerDown = 0x40;
inline static constexpr uintptr_t m_pendingTriggerPull = 0x41;
inline static constexpr uintptr_t m_secondaryAttackRequested = 0x42;
inline static constexpr uintptr_t m_chargeDebounce = 0x43;
inline static constexpr uintptr_t m_semiAutoNeedsRechamber = 0x44;
inline static constexpr uintptr_t m_pendingReloadAttempt = 0x45;
inline static constexpr uintptr_t m_offhandHybridNormalMode = 0x46;
inline static constexpr uintptr_t m_pendingoffhandHybridToss = 0x47;
inline static constexpr uintptr_t m_fastHolster = 0x48;
inline static constexpr uintptr_t m_didFirstDeploy = 0x49;
inline static constexpr uintptr_t m_shouldCatch = 0x4A;
inline static constexpr uintptr_t m_clipModelIsHidden = 0x4B;
inline static constexpr uintptr_t m_segmentedReloadEndSeqRequired = 0x4C;
inline static constexpr uintptr_t m_reloadStartedEmpty = 0x4D;
inline static constexpr uintptr_t m_segmentedAnimStartedOneHanded = 0x4E;
inline static constexpr uintptr_t m_segmentedAnimStartedAkimbo = 0x4F;
inline static constexpr uintptr_t m_segmentedReloadCanRestartLoop = 0x50;
inline static constexpr uintptr_t m_segmentedReloadLoopFireLocked = 0x51;
inline static constexpr uintptr_t m_realtimeModCmds = 0x52;
inline static constexpr uintptr_t m_realtimeModCmdHead = 0x5A;
inline static constexpr uintptr_t m_realtimeModCmdCount = 0x5B;
inline static constexpr uintptr_t m_realtimeModCanADS = 0x5C;
inline static constexpr uintptr_t m_customActivityAttachedModelIndex = 0x60;
inline static constexpr uintptr_t m_customActivityAttachedModelAttachmentId = 0x64;
inline static constexpr uintptr_t m_fireRateLerp_startTime = 0x68;
inline static constexpr uintptr_t m_fireRateLerp_startFraction = 0x6C;
inline static constexpr uintptr_t m_fireRateLerp_stopTime = 0x70;
inline static constexpr uintptr_t m_fireRateLerp_stopFraction = 0x74;
inline static constexpr uintptr_t m_chargeAnimIndex = 0x78;
inline static constexpr uintptr_t m_chargeAnimIndexOld = 0x7C;
inline static constexpr uintptr_t m_reloadMilestone = 0x9C;
inline static constexpr uintptr_t m_rechamberMilestone = 0xA0;
inline static constexpr uintptr_t m_cooldownMilestone = 0xA4;
inline static constexpr uintptr_t m_prevSeqWeight = 0xA8;
inline static constexpr uintptr_t m_fullReloadStartTime = 0xAC;
inline static constexpr uintptr_t m_scriptTime0 = 0xB0;
inline static constexpr uintptr_t m_scriptTime1 = 0xB4;
inline static constexpr uintptr_t m_scriptFlags0 = 0xB8;
inline static constexpr uintptr_t m_scriptInt0 = 0xBC;
inline static constexpr uintptr_t m_scriptInt1 = 0xBE;
inline static constexpr uintptr_t m_curZoomFOV = 0xC0;
inline static constexpr uintptr_t m_targetZoomFOV = 0xC4;
inline static constexpr uintptr_t m_zoomFOVLerpTime = 0xC8;
inline static constexpr uintptr_t m_zoomFOVLerpEndTime = 0xCC;
inline static constexpr uintptr_t m_latestDryfireTime = 0xD0;
inline static constexpr uintptr_t m_requestedAttackEndTime = 0xD4;
inline static constexpr uintptr_t m_currentAltFireAnimIndex = 0xD8;
inline static constexpr uintptr_t m_legendaryModelIndex = 0xDC;
inline static constexpr uintptr_t m_charmModelIndex = 0xE0;
inline static constexpr uintptr_t m_charmAttachment = 0xE4;
inline static constexpr uintptr_t m_charmItemFlavorGUID = 0xE8;
inline static constexpr uintptr_t m_akimboDisabled = 0xEC;
};
C_Projectile
struct C_Projectile {
inline static constexpr uintptr_t m_weaponDataIsSet = 0x15F0;
inline static constexpr uintptr_t m_forceAdjustToGunBarrelDisabled = 0x15F1;
inline static constexpr uintptr_t m_weaponClassIndex = 0x15F4;
inline static constexpr uintptr_t m_destructionDistance = 0x15F8;
inline static constexpr uintptr_t m_passThroughDepthTotal = 0x15FC;
inline static constexpr uintptr_t m_modBitfield = 0x1600;
inline static constexpr uintptr_t m_overrideMods = 0x160C;
inline static constexpr uintptr_t m_projectileTrailIndex = 0x1618;
inline static constexpr uintptr_t m_impactEffectTable = 0x161C;
inline static constexpr uintptr_t m_reducedEffects = 0x1620;
inline static constexpr uintptr_t m_projectileCreationTimeServer = 0x1624;
inline static constexpr uintptr_t m_weaponSource = 0x1628;
inline static constexpr uintptr_t m_passThroughModCount = 0x162C;
inline static constexpr uintptr_t m_passThroughPoints = 0x1630;
inline static constexpr uintptr_t m_preModdedTrailEffectIndices1p = 0x163C;
inline static constexpr uintptr_t m_preModdedTrailEffectIndices3p = 0x1640;
inline static constexpr uintptr_t m_launchOrigin = 0x1644;
inline static constexpr uintptr_t m_wpnData = 0x1650;
inline static constexpr uintptr_t m_weaponChargeLevel = 0x165C;
inline static constexpr uintptr_t m_weaponChargeFraction = 0x1660;
inline static constexpr uintptr_t m_hWeaponFileInfo = 0x1658;
inline static constexpr uintptr_t m_modVars = 0x1668;
// Motion + prediction
inline static constexpr uintptr_t m_modVarsAreValid = 0x2C30;
inline static constexpr uintptr_t m_launchVel = 0x2C34;
inline static constexpr uintptr_t m_scriptCB = 0x2C40;
inline static constexpr uintptr_t m_projectileLifeTimeEndTick = 0x2C6C;
inline static constexpr uintptr_t m_projectileCreationTime = 0x2C70;
inline static constexpr uintptr_t m_isVortexRefired = 0x2C74;
inline static constexpr uintptr_t m_usesPositionFunction = 0x2C75;
inline static constexpr uintptr_t m_lastCollisionNormal = 0x2C78;
inline static constexpr uintptr_t m_bounceIndex = 0x2C84;
inline static constexpr uintptr_t m_deflectionCount = 0x2C88;
inline static constexpr uintptr_t m_randomInt = 0x2C8C;
inline static constexpr uintptr_t m_thrownByAI = 0x2C90;
inline static constexpr uintptr_t m_perPolyRadius = 0x2C94;
inline static constexpr uintptr_t m_posBeforePhysicsSimulate = 0x2C9C;
inline static constexpr uintptr_t m_hasIgnited = 0x2CA8;
inline static constexpr uintptr_t m_inLagCompensation = 0x2CA9;
inline static constexpr uintptr_t m_passEntities = 0x2CB0;
inline static constexpr uintptr_t m_projectileSpeed = 0x2D18;
inline static constexpr uintptr_t m_wantStartTrailEffect = 0x2D38;
inline static constexpr uintptr_t m_hasCalledPostDataUpdate = 0x2D3A;
// Base pointers found in the Miscellaneous section
inline static constexpr uintptr_t m_flProjectileSpeed = 0x28E0;
inline static constexpr uintptr_t m_flProjectileScale = 0x28E8;
};
C_BaseGrenade / C_Missile
struct C_BaseGrenade {
inline static constexpr uintptr_t m_grenadeCreationTime = 0x2FC8;
inline static constexpr uintptr_t m_grenadeCreationOrigin = 0x2FCC;
inline static constexpr uintptr_t m_grenadeStatusFlags = 0x2FD8;
inline static constexpr uintptr_t m_doesExplode = 0x2FDC;
inline static constexpr uintptr_t m_useMaskAbility = 0x2FDD;
inline static constexpr uintptr_t m_DmgRadius = 0x2FC4;
inline static constexpr uintptr_t m_flDamage = 0x3060;
inline static constexpr uintptr_t m_hThrower = 0x3064;
inline static constexpr uintptr_t m_vecVelocity = 0x374;
inline static constexpr uintptr_t m_ziplineGrenadeExpectedEndPosition = 0x3040;
};
struct C_Missile {
inline static constexpr uintptr_t m_hasPlayedWhizby = 0x2FB0;
inline static constexpr uintptr_t m_whizByStart = 0x2FB4;
inline static constexpr uintptr_t m_whizBySoundName = 0x2FC0;
inline static constexpr uintptr_t m_homingSpeed = 0x3000;
inline static constexpr uintptr_t m_homingSpeedDodgingPlayer = 0x3004;
inline static constexpr uintptr_t m_launchDir = 0x3008;
inline static constexpr uintptr_t m_hSpecificTarget = 0x3014;
inline static constexpr uintptr_t m_targetOffset = 0x3018;
inline static constexpr uintptr_t m_targetPosition = 0x3024;
inline static constexpr uintptr_t m_useTargetPosition = 0x3030;
inline static constexpr uintptr_t m_postIgnitionSpeed = 0x3034;
inline static constexpr uintptr_t m_flGracePeriodEndsAt = 0x3038;
inline static constexpr uintptr_t m_pathSettingsInitialized = 0x303C;
inline static constexpr uintptr_t m_expandContractMissile = 0x303D;
inline static constexpr uintptr_t m_spiralMissile = 0x303F;
inline static constexpr uintptr_t m_spiralSettings = 0x3064;
inline static constexpr uintptr_t m_expandContractSettings = 0x30D4;
inline static constexpr uintptr_t m_lastThinkTime = 0x312C;
inline static constexpr uintptr_t m_explosionIgnoreEntity = 0x3130;
};
C_BaseViewModel
struct C_BaseViewModel {
inline static constexpr uintptr_t m_localOrigin = 0x178;
inline static constexpr uintptr_t m_localAngles = 0x184;
inline static constexpr uintptr_t m_angAbsRotation = 0x154;
inline static constexpr uintptr_t m_angNetworkAngles = 0x380;
inline static constexpr uintptr_t m_vecAbsOrigin = 0x16C;
inline static constexpr uintptr_t m_fEffects = 0x32C;
inline static constexpr uintptr_t m_hWeapon = 0x1F54;
inline static constexpr uintptr_t m_bBlockEventLayer = 0x1F50;
inline static constexpr uintptr_t m_isAdsTransition = 0x1F51;
inline static constexpr uintptr_t m_tracerAttachments = 0x1F58;
inline static constexpr uintptr_t m_tracerAttachmentsScoped = 0x1F5A;
inline static constexpr uintptr_t m_attackEventStartTime = 0x1F5C;
inline static constexpr uintptr_t m_eventSoundFadeStart = 0x1F60;
inline static constexpr uintptr_t m_nextFidgetTime = 0x1F64;
inline static constexpr uintptr_t m_projectileIsVisible = 0x19B4;
inline static constexpr uintptr_t m_viewModelOwner = 0x19B0;
inline static constexpr uintptr_t m_bSequenceFinished = 0xE2C;
inline static constexpr uintptr_t m_currentFrameAnimating_animCycle = 0xE8;
inline static constexpr uintptr_t m_currentFrameAnimating_modelIndex = 0xCC;
inline static constexpr uintptr_t m_nBody = 0xD84;
inline static constexpr uintptr_t m_nResetEventsStartTime = 0xD90;
inline static constexpr uintptr_t m_flModelScale = 0xE38;
};
Grapple / hook / zipline physics
struct C_GrappleHook {
inline static constexpr uintptr_t m_pMoveParent = 0x138;
inline static constexpr uintptr_t m_localAngles = 0x184;
inline static constexpr uintptr_t m_localOrigin = 0x178;
inline static constexpr uintptr_t m_grappleZipline = 0x15F0;
inline static constexpr uintptr_t m_parentAttachment = 0x754;
inline static constexpr uintptr_t m_visibilityFlags = 0x328;
};
struct GrappleData {
inline static constexpr uintptr_t m_grappleVel = 0x8;
inline static constexpr uintptr_t m_grapplePoints = 0x14;
inline static constexpr uintptr_t m_grapplePointCount = 0x44;
inline static constexpr uintptr_t m_grappleAttached = 0x48;
inline static constexpr uintptr_t m_grapplePulling = 0x49;
inline static constexpr uintptr_t m_grappleSwinging = 0x4A;
inline static constexpr uintptr_t m_grappleRetracting = 0x4B;
inline static constexpr uintptr_t m_grappleForcedRetracting = 0x4C;
inline static constexpr uintptr_t m_grappleGracePeriodFinished = 0x4D;
inline static constexpr uintptr_t m_grappleUsedPower = 0x50;
inline static constexpr uintptr_t m_grappleActivateTime = 0x54;
inline static constexpr uintptr_t m_grapplePullTime = 0x58;
inline static constexpr uintptr_t m_grappleAttachTime = 0x5C;
inline static constexpr uintptr_t m_grappleMeleeTarget = 0x60;
inline static constexpr uintptr_t m_grappleAutoAimTarget = 0x64;
inline static constexpr uintptr_t m_grappleSwingDetachLowSpeed = 0x70;
inline static constexpr uintptr_t m_grappleSwingHoldTime = 0x74;
};
struct C_ZiplinePhysics {
inline static constexpr uintptr_t m_ziplineType = 0xC;
inline static constexpr uintptr_t m_ziplineStart = 0x10;
inline static constexpr uintptr_t m_ziplineEnd = 0x1C;
inline static constexpr uintptr_t m_nodes = 0x28;
inline static constexpr uintptr_t m_numNodes = 0x228;
inline static constexpr uintptr_t m_springDistance = 0x22C;
inline static constexpr uintptr_t m_remainingUnsimulatedTime = 0x234;
inline static constexpr uintptr_t m_attachedEntities = 0x240;
inline static constexpr uintptr_t m_numAttachedEntities = 0x340;
inline static constexpr uintptr_t m_ziplineOwner = 0x344;
};
Weapon settings (cheat-relevant subset)
The full block has ~700 fields. These are the ones that show up in recoil/no-spread/prediction/aimbot code:
struct WeaponSettings {
// Identification
inline static constexpr uintptr_t printname = 0x3B0;
inline static constexpr uintptr_t shortprintname = 0x3B8;
inline static constexpr uintptr_t description = 0x3C0;
inline static constexpr uintptr_t longdesc = 0x3C8;
inline static constexpr uintptr_t fire_mode = 0x126C;
inline static constexpr uintptr_t weapon_type_flags = 0x83C;
// Ammo / clip
inline static constexpr uintptr_t ammo_clip_size = 0x920;
inline static constexpr uintptr_t ammo_clip_reload_max = 0x914;
inline static constexpr uintptr_t ammo_default_total = 0x918;
inline static constexpr uintptr_t ammo_stockpile_max = 0x91C;
inline static constexpr uintptr_t ammo_per_shot = 0x910;
// Fire rate / reload
inline static constexpr uintptr_t fire_rate = 0x1270;
inline static constexpr uintptr_t fire_rate_max = 0x1274;
inline static constexpr uintptr_t reload_time = 0x12B0;
inline static constexpr uintptr_t reloadempty_time = 0x12C8;
inline static constexpr uintptr_t rechamber_time = 0x530;
inline static constexpr uintptr_t deploy_time = 0x1220;
inline static constexpr uintptr_t holster_time = 0x121C;
inline static constexpr uintptr_t burst_fire_count = 0x128C;
inline static constexpr uintptr_t burst_fire_delay = 0x1290;
// Projectile ballistics — big wins here for prediction
inline static constexpr uintptr_t projectile_launch_speed = 0xDA0;
inline static constexpr uintptr_t projectile_launch_pitch_offset = 0xDA4;
inline static constexpr uintptr_t projectile_gravity_scale = 0xDA8;
inline static constexpr uintptr_t projectile_gravity_scale_2 = 0xDBC;
inline static constexpr uintptr_t projectile_gravity_scale_final = 0xDC8;
inline static constexpr uintptr_t projectile_gravity_scale_time_2 = 0xDB8;
inline static constexpr uintptr_t projectile_gravity_scale_time_final = 0xDC4;
inline static constexpr uintptr_t projectile_air_friction = 0xDAC;
inline static constexpr uintptr_t projectile_air_friction_2 = 0xDC0;
inline static constexpr uintptr_t projectile_air_friction_final = 0xDCC;
inline static constexpr uintptr_t projectile_drag_coefficient = 0xDB0;
inline static constexpr uintptr_t projectile_speed_decay = 0xDE8;
inline static constexpr uintptr_t projectile_lifetime = 0xCD0;
inline static constexpr uintptr_t projectile_inherit_owner_velocity_scale = 0xD94;
inline static constexpr uintptr_t projectile_inherit_base_velocity_scale = 0xD98;
inline static constexpr uintptr_t projectile_muzzle_offset_decay_max_time = 0xCC8;
inline static constexpr uintptr_t projectile_max_deployed = 0xDB4;
inline static constexpr uintptr_t projectile_bounce_damage_reduction_scale = 0xCD4;
inline static constexpr uintptr_t projectile_speed_reduction_factor = 0xCD8;
inline static constexpr uintptr_t projectile_collide_with_owner_grace_time = 0xCDC;
inline static constexpr uintptr_t projectile_ricochet_max_count = 0xCE0;
inline static constexpr uintptr_t projectile_deflection_max_count = 0xCE4;
// Spread (no-spread targets)
inline static constexpr uintptr_t spread_stand_hip = 0x77C;
inline static constexpr uintptr_t spread_stand_hip_run = 0x780;
inline static constexpr uintptr_t spread_stand_hip_sprint = 0x784;
inline static constexpr uintptr_t spread_stand_ads = 0x788;
inline static constexpr uintptr_t spread_crouch_hip = 0x78C;
inline static constexpr uintptr_t spread_crouch_ads = 0x790;
inline static constexpr uintptr_t spread_air_hip = 0x794;
inline static constexpr uintptr_t spread_air_hip_moving = 0x798;
inline static constexpr uintptr_t spread_air_ads = 0x79C;
inline static constexpr uintptr_t spread_air_ads_moving = 0x7A0;
inline static constexpr uintptr_t spread_hover_hip = 0x7A4;
inline static constexpr uintptr_t spread_hover_hip_moving = 0x7A8;
inline static constexpr uintptr_t spread_hover_ads = 0x7AC;
inline static constexpr uintptr_t spread_hover_ads_moving = 0x7B0;
inline static constexpr uintptr_t spread_wallrunning = 0x7B4;
inline static constexpr uintptr_t spread_wallhanging = 0x7B8;
inline static constexpr uintptr_t spread_moving_decay_rate = 0x7BC;
inline static constexpr uintptr_t spread_moving_increase_rate = 0x7C0;
inline static constexpr uintptr_t spread_kick_on_fire_stand_hip = 0x7C4;
inline static constexpr uintptr_t spread_kick_on_fire_stand_ads = 0x7C8;
inline static constexpr uintptr_t spread_kick_on_fire_crouch_hip = 0x7CC;
inline static constexpr uintptr_t spread_kick_on_fire_crouch_ads = 0x7D0;
inline static constexpr uintptr_t spread_kick_on_fire_air_hip = 0x7D4;
inline static constexpr uintptr_t spread_kick_on_fire_air_ads = 0x7D8;
inline static constexpr uintptr_t spread_min_kick = 0x7DC;
inline static constexpr uintptr_t spread_max_kick_stand_hip = 0x7E0;
inline static constexpr uintptr_t spread_max_kick_stand_ads = 0x7E4;
inline static constexpr uintptr_t spread_max_kick_crouch_hip = 0x7E8;
inline static constexpr uintptr_t spread_max_kick_crouch_ads = 0x7EC;
inline static constexpr uintptr_t spread_max_kick_air_hip = 0x7F0;
inline static constexpr uintptr_t spread_max_kick_air_ads = 0x7F4;
inline static constexpr uintptr_t spread_decay_rate = 0x7F8;
inline static constexpr uintptr_t spread_decay_delay = 0x7FC;
inline static constexpr uintptr_t spread_time_to_max = 0x800;
inline static constexpr uintptr_t primary_attack_ignores_spread = 0x804;
inline static constexpr uintptr_t spread_update_hipfire_in_ads = 0x805;
// Damage
inline static constexpr uintptr_t damage_flags = 0x1088;
inline static constexpr uintptr_t damage_falloff_type = 0x108C;
inline static constexpr uintptr_t damage_near_value = 0x1090;
inline static constexpr uintptr_t damage_far_value = 0x1094;
inline static constexpr uintptr_t damage_very_far_value = 0x1098;
inline static constexpr uintptr_t damage_rodeo = 0x109C;
inline static constexpr uintptr_t damage_additional_bullets = 0x10A0;
inline static constexpr uintptr_t damage_headshot_scale = 0x10A4;
inline static constexpr uintptr_t headshot_distance = 0x10A8;
inline static constexpr uintptr_t damage_leg_scale = 0x10AC;
inline static constexpr uintptr_t damage_unshielded_scale = 0x10B0;
inline static constexpr uintptr_t damage_shield_scale = 0x10B4;
inline static constexpr uintptr_t pass_through_depth = 0x10B8;
inline static constexpr uintptr_t pass_through_damage_preserved_scale = 0x10BC;
inline static constexpr uintptr_t impulse_force = 0x10C0;
inline static constexpr uintptr_t critical_hit = 0x10C4;
inline static constexpr uintptr_t critical_hit_damage_scale = 0x10C8;
inline static constexpr uintptr_t damage_near_distance = 0x10CC;
inline static constexpr uintptr_t damage_far_distance = 0x10D0;
inline static constexpr uintptr_t damage_very_far_distance = 0x10D4;
inline static constexpr uintptr_t damage_inverse_distance = 0x10D8;
inline static constexpr uintptr_t explosion_damage_flags = 0x10DC;
inline static constexpr uintptr_t explosion_damage = 0x10E0;
inline static constexpr uintptr_t explosion_damage_heavy_armor = 0x10E4;
inline static constexpr uintptr_t explosionradius = 0x10F8;
inline static constexpr uintptr_t explosion_inner_radius = 0x10F4;
inline static constexpr uintptr_t explosion_damages_owner = 0x10FC;
inline static constexpr uintptr_t damage_near_value_titanarmor = 0x1100;
inline static constexpr uintptr_t damage_far_value_titanarmor = 0x1104;
inline static constexpr uintptr_t damage_very_far_value_titanarmor = 0x1108;
inline static constexpr uintptr_t damage_additional_bullets_titanarmor = 0x110C;
inline static constexpr uintptr_t titanarmor_critical_hit_required = 0x1110;
// Projectile shot count
inline static constexpr uintptr_t projectiles_per_shot = 0x1C4;
inline static constexpr uintptr_t allow_headshots = 0x1C0;
inline static constexpr uintptr_t red_crosshair_range = 0x2A4;
// ADS
inline static constexpr uintptr_t ads_move_speed_scale = 0xCB8;
inline static constexpr uintptr_t ads_force_firstperson = 0xA60;
inline static constexpr uintptr_t ads_fov_zoomfrac_start = 0xA68;
inline static constexpr uintptr_t ads_fov_zoomfrac_end = 0xA64;
inline static constexpr uintptr_t zoom_time_in = 0x1068;
inline static constexpr uintptr_t zoom_time_out = 0x1064;
inline static constexpr uintptr_t zoom_fov = 0xD50;
inline static constexpr uintptr_t zoom_fov_viewmodel = 0xD48;
inline static constexpr uintptr_t zoom_toggle_fov = 0xD4C;
inline static constexpr uintptr_t zoom_scope_frac_start = 0xD44;
inline static constexpr uintptr_t zoom_scope_frac_end = 0xD40;
inline static constexpr uintptr_t zoom_angle_shift_yaw = 0xD38;
inline static constexpr uintptr_t zoom_angle_shift_pitch = 0xD3C;
// View kick (recoil control)
inline static constexpr uintptr_t viewkick_pattern = 0x928;
inline static constexpr uintptr_t viewkick_pattern_valuePerShot = 0x92C;
inline static constexpr uintptr_t viewkick_pitch_base = 0x974;
inline static constexpr uintptr_t viewkick_pitch_random = 0x978;
inline static constexpr uintptr_t viewkick_pitch_random_innerexclude = 0x97C;
inline static constexpr uintptr_t viewkick_pitch_softScale = 0x980;
inline static constexpr uintptr_t viewkick_pitch_hardScale = 0x984;
inline static constexpr uintptr_t viewkick_yaw_base = 0x9FC;
inline static constexpr uintptr_t viewkick_yaw_random = 0xA00;
inline static constexpr uintptr_t viewkick_yaw_random_innerexclude = 0xA04;
inline static constexpr uintptr_t viewkick_yaw_softScale = 0xA08;
inline static constexpr uintptr_t viewkick_yaw_hardScale = 0xA0C;
inline static constexpr uintptr_t viewkick_roll_randomMin = 0x994;
inline static constexpr uintptr_t viewkick_roll_randomMax = 0x998;
inline static constexpr uintptr_t viewkick_roll_softScale = 0x99C;
inline static constexpr uintptr_t viewkick_roll_hardScale = 0x9A0;
inline static constexpr uintptr_t viewkick_roll_base = 0x9A4;
inline static constexpr uintptr_t viewkick_scale_firstshot_hipfire = 0x9A8;
inline static constexpr uintptr_t viewkick_scale_firstshot_ads = 0x9AC;
inline static constexpr uintptr_t viewkick_scale_min_hipfire = 0x9B0;
inline static constexpr uintptr_t viewkick_scale_min_ads = 0x9B8;
inline static constexpr uintptr_t viewkick_scale_max_hipfire = 0x9B4;
inline static constexpr uintptr_t viewkick_scale_max_ads = 0x9BC;
inline static constexpr uintptr_t viewkick_scale_valueDecayRate = 0x9D8;
inline static constexpr uintptr_t viewkick_scale_valueDecayDelay = 0x9D4;
inline static constexpr uintptr_t viewkick_hipfire_weaponFraction = 0x954;
inline static constexpr uintptr_t viewkick_ads_weaponFraction = 0x95C;
inline static constexpr uintptr_t viewkick_duck_scale = 0x964;
inline static constexpr uintptr_t viewkick_move_scale = 0x96C;
inline static constexpr uintptr_t viewkick_hover_scale = 0x968;
inline static constexpr uintptr_t viewkick_air_scale_ads = 0x970;
inline static constexpr uintptr_t viewkick_pc_pitch_scale = 0x9E0;
inline static constexpr uintptr_t viewkick_pc_yaw_scale = 0x9DC;
// Sway / drift (visual only mostly)
inline static constexpr uintptr_t sway_rotate_scale_unzoomed = 0x410;
inline static constexpr uintptr_t sway_rotate_scale_zoomed = 0x414;
// NPC accuracy (for AI-controlled versions)
inline static constexpr uintptr_t npc_max_engage_range = 0xE70;
inline static constexpr uintptr_t npc_min_engage_range = 0xE6C;
inline static constexpr uintptr_t npc_damage_near_value = 0xEC0;
inline static constexpr uintptr_t npc_damage_far_value = 0xEC8;
inline static constexpr uintptr_t npc_damage_very_far_value = 0xED0;
};
Notes
- Anything marked
DT_*in the raw dump is the networked receive-table view of a struct; anything underDataMap.*is the client-side layout. For read-only ESP reads either works. For prediction / write paths use the RecvTable offsets — they match what the server sends. - Modifier constants (e.g.
hopup_double_tap,bullets_mag_l3,dormant_hopup_selectfire) live in a huge[ModifierNames]table — skipped from this listing because they're name-to-index maps populated at runtime, not fixed offsets to read. IterateModifiers_mods_namesat runtime and index intoModifiers_mods_list. - Full
ConVarstable (~1000 entries) not included — most are useless for cheat use. Look up specific ones as needed. Notable ones:sv_gravity 0x26E47F0,sv_maxvelocity 0x26E5F30,sv_infinite_ammo 0x26F7810,sv_cheats 0x1ECA6C0,cl_liveapi_enabled 0x1EC2770. - Titan / TitanSoul offsets are present in the DT_ table — kept out of
this listing but grep the raw dump for
TitanSoulif you need them.
— swig