#pragma once #include #include "!GlobalTypes.hpp" // ///////////////////////////////////////////////////////////// // Binary: server.dll // Classes count: 7914 // Enums count: 315 // Created using source2gen - github.com/neverlosecc/source2gen // ///////////////////////////////////////////////////////////// // Alignment: 4 // Size: 0x13 enum class NavAttributeEnum : uint32_t { NAV_MESH_AVOID = 0x80, NAV_MESH_STAIRS = 0x1000, NAV_MESH_NON_ZUP = 0x8000, NAV_MESH_SHORT_HEIGHT = 0x10000, NAV_MESH_CROUCH = 0x10000, NAV_MESH_JUMP = 0x2, NAV_MESH_PRECISE = 0x4, NAV_MESH_NO_JUMP = 0x8, NAV_MESH_STOP = 0x10, NAV_MESH_RUN = 0x20, NAV_MESH_WALK = 0x40, NAV_MESH_TRANSIENT = 0x100, NAV_MESH_DONT_HIDE = 0x200, NAV_MESH_STAND = 0x400, NAV_MESH_NO_HOSTAGES = 0x800, NAV_MESH_NO_MERGE = 0x2000, NAV_MESH_OBSTACLE_TOP = 0x4000, NAV_ATTR_FIRST_GAME_INDEX = 0x13, NAV_ATTR_LAST_INDEX = 0x1f, }; // Alignment: 4 // Size: 0x5 enum class NavDirType : uint32_t { NORTH = 0x0, EAST = 0x1, SOUTH = 0x2, WEST = 0x3, NUM_NAV_DIR_TYPE_DIRECTIONS = 0x4, }; // Alignment: 4 // Size: 0x77 enum class ENetworkDisconnectionReason : uint32_t { NETWORK_DISCONNECT_INVALID = 0x0, NETWORK_DISCONNECT_SHUTDOWN = 0x1, NETWORK_DISCONNECT_DISCONNECT_BY_USER = 0x2, NETWORK_DISCONNECT_DISCONNECT_BY_SERVER = 0x3, NETWORK_DISCONNECT_LOST = 0x4, NETWORK_DISCONNECT_OVERFLOW = 0x5, NETWORK_DISCONNECT_STEAM_BANNED = 0x6, NETWORK_DISCONNECT_STEAM_INUSE = 0x7, NETWORK_DISCONNECT_STEAM_TICKET = 0x8, NETWORK_DISCONNECT_STEAM_LOGON = 0x9, NETWORK_DISCONNECT_STEAM_AUTHCANCELLED = 0xa, NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED = 0xb, NETWORK_DISCONNECT_STEAM_AUTHINVALID = 0xc, NETWORK_DISCONNECT_STEAM_VACBANSTATE = 0xd, NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE = 0xe, NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT = 0xf, NETWORK_DISCONNECT_STEAM_DROPPED = 0x10, NETWORK_DISCONNECT_STEAM_OWNERSHIP = 0x11, NETWORK_DISCONNECT_SERVERINFO_OVERFLOW = 0x12, NETWORK_DISCONNECT_TICKMSG_OVERFLOW = 0x13, NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW = 0x14, NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW = 0x15, NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW = 0x16, NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW = 0x17, NETWORK_DISCONNECT_SNAPSHOTOVERFLOW = 0x18, NETWORK_DISCONNECT_SNAPSHOTERROR = 0x19, NETWORK_DISCONNECT_RELIABLEOVERFLOW = 0x1a, NETWORK_DISCONNECT_BADDELTATICK = 0x1b, NETWORK_DISCONNECT_NOMORESPLITS = 0x1c, NETWORK_DISCONNECT_TIMEDOUT = 0x1d, NETWORK_DISCONNECT_DISCONNECTED = 0x1e, NETWORK_DISCONNECT_LEAVINGSPLIT = 0x1f, NETWORK_DISCONNECT_DIFFERENTCLASSTABLES = 0x20, NETWORK_DISCONNECT_BADRELAYPASSWORD = 0x21, NETWORK_DISCONNECT_BADSPECTATORPASSWORD = 0x22, NETWORK_DISCONNECT_HLTVRESTRICTED = 0x23, NETWORK_DISCONNECT_NOSPECTATORS = 0x24, NETWORK_DISCONNECT_HLTVUNAVAILABLE = 0x25, NETWORK_DISCONNECT_HLTVSTOP = 0x26, NETWORK_DISCONNECT_KICKED = 0x27, NETWORK_DISCONNECT_BANADDED = 0x28, NETWORK_DISCONNECT_KICKBANADDED = 0x29, NETWORK_DISCONNECT_HLTVDIRECT = 0x2a, NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA = 0x2b, NETWORK_DISCONNECT_PURESERVER_MISMATCH = 0x2c, NETWORK_DISCONNECT_USERCMD = 0x2d, NETWORK_DISCONNECT_REJECTED_BY_GAME = 0x2e, NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR = 0x2f, NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR = 0x30, NETWORK_DISCONNECT_BAD_SERVER_PASSWORD = 0x31, NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION = 0x32, NETWORK_DISCONNECT_CONNECTION_FAILURE = 0x33, NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS = 0x34, NETWORK_DISCONNECT_RECONNECTION = 0x35, NETWORK_DISCONNECT_LOOPSHUTDOWN = 0x36, NETWORK_DISCONNECT_LOOPDEACTIVATE = 0x37, NETWORK_DISCONNECT_HOST_ENDGAME = 0x38, NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE = 0x39, NETWORK_DISCONNECT_CREATE_SERVER_FAILED = 0x3a, NETWORK_DISCONNECT_EXITING = 0x3b, NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE = 0x3c, NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY = 0x3d, NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL = 0x3e, NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP = 0x3f, NETWORK_DISCONNECT_CLIENT_NO_MAP = 0x40, NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP = 0x41, NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM = 0x42, NETWORK_DISCONNECT_STEAM_DENY_MISC = 0x43, NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 0x44, NETWORK_DISCONNECT_SERVER_SHUTDOWN = 0x45, NETWORK_DISCONNECT_SPLITPACKET_SEND_OVERFLOW = 0x46, NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 0x47, NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 0x48, NETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 0x49, NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS = 0x4a, NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY = 0x4b, NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG = 0x4c, NETWORK_DISCONNECT_LOCALPROBLEM_OTHER = 0x4d, NETWORK_DISCONNECT_REMOTE_TIMEOUT = 0x4f, NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING = 0x50, NETWORK_DISCONNECT_REMOTE_OTHER = 0x51, NETWORK_DISCONNECT_REMOTE_BADCRYPT = 0x52, NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED = 0x53, NETWORK_DISCONNECT_UNUSUAL = 0x54, NETWORK_DISCONNECT_INTERNAL_ERROR = 0x55, NETWORK_DISCONNECT_REJECT_BADCHALLENGE = 0x80, NETWORK_DISCONNECT_REJECT_NOLOBBY = 0x81, NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP = 0x82, NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER = 0x83, NETWORK_DISCONNECT_REJECT_HIDDEN_GAME = 0x84, NETWORK_DISCONNECT_REJECT_LANRESTRICT = 0x85, NETWORK_DISCONNECT_REJECT_BADPASSWORD = 0x86, NETWORK_DISCONNECT_REJECT_SERVERFULL = 0x87, NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION = 0x88, NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL = 0x89, NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY = 0x8a, NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY = 0x8b, NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH = 0x8c, NETWORK_DISCONNECT_REJECT_OLDPROTOCOL = 0x8d, NETWORK_DISCONNECT_REJECT_NEWPROTOCOL = 0x8e, NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION = 0x8f, NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN = 0x90, NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN = 0x91, NETWORK_DISCONNECT_REJECT_STEAM = 0x92, NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 0x93, NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 0x94, NETWORK_DISCONNECT_REJECT_BANNED = 0x95, NETWORK_DISCONNECT_KICKED_TEAMKILLING = 0x96, NETWORK_DISCONNECT_KICKED_TK_START = 0x97, NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 0x98, NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 0x99, NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 0x9a, NETWORK_DISCONNECT_KICKED_TEAMHURTING = 0x9b, NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 0x9c, NETWORK_DISCONNECT_KICKED_VOTEDOFF = 0x9d, NETWORK_DISCONNECT_KICKED_IDLE = 0x9e, NETWORK_DISCONNECT_KICKED_SUICIDE = 0x9f, NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 0xa0, NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 0xa1, }; // Alignment: 4 // Size: 0x8 enum class SignonState_t : uint32_t { SIGNONSTATE_NONE = 0x0, SIGNONSTATE_CHALLENGE = 0x1, SIGNONSTATE_CONNECTED = 0x2, SIGNONSTATE_NEW = 0x3, SIGNONSTATE_PRESPAWN = 0x4, SIGNONSTATE_SPAWN = 0x5, SIGNONSTATE_FULL = 0x6, SIGNONSTATE_CHANGELEVEL = 0x7, }; // Alignment: 4 // Size: 0xd enum class NET_Messages : uint32_t { net_NOP = 0x0, net_Disconnect = 0x1, net_SplitScreenUser = 0x3, net_Tick = 0x4, net_StringCmd = 0x5, net_SetConVar = 0x6, net_SignonState = 0x7, net_SpawnGroup_Load = 0x8, net_SpawnGroup_ManifestUpdate = 0x9, net_SpawnGroup_SetCreationTick = 0xb, net_SpawnGroup_Unload = 0xc, net_SpawnGroup_LoadCompleted = 0xd, net_DebugOverlay = 0xf, }; // Alignment: 4 // Size: 0x8 enum class SpawnGroupFlags_t : uint32_t { SPAWN_GROUP_LOAD_ENTITIES_FROM_SAVE = 0x1, SPAWN_GROUP_DONT_SPAWN_ENTITIES = 0x2, SPAWN_GROUP_SYNCHRONOUS_SPAWN = 0x4, SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP = 0x8, SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES = 0x10, SPAWN_GROUP_BLOCK_UNTIL_LOADED = 0x40, SPAWN_GROUP_LOAD_STREAMING_DATA = 0x80, SPAWN_GROUP_CREATE_NEW_SCENE_WORLD = 0x100, }; // Alignment: 4 // Size: 0x11 enum class CLC_Messages : uint32_t { clc_ClientInfo = 0x14, clc_Move = 0x15, clc_VoiceData = 0x16, clc_BaselineAck = 0x17, clc_ListenEvents = 0x18, clc_RespondCvarValue = 0x19, clc_FileCRCCheck = 0x1a, clc_LoadingProgress = 0x1b, clc_SplitPlayerConnect = 0x1c, clc_ClientMessage = 0x1d, clc_SplitPlayerDisconnect = 0x1e, clc_ServerStatus = 0x1f, clc_ServerPing = 0x20, clc_RequestPause = 0x21, clc_CmdKeyValues = 0x22, clc_RconServerDetails = 0x23, clc_HltvReplay = 0x24, }; // Alignment: 4 // Size: 0x1e enum class SVC_Messages : uint32_t { svc_ServerInfo = 0x28, svc_FlattenedSerializer = 0x29, svc_ClassInfo = 0x2a, svc_SetPause = 0x2b, svc_CreateStringTable = 0x2c, svc_UpdateStringTable = 0x2d, svc_VoiceInit = 0x2e, svc_VoiceData = 0x2f, svc_Print = 0x30, svc_Sounds = 0x31, svc_SetView = 0x32, svc_ClearAllStringTables = 0x33, svc_CmdKeyValues = 0x34, svc_BSPDecal = 0x35, svc_SplitScreen = 0x36, svc_PacketEntities = 0x37, svc_Prefetch = 0x38, svc_Menu = 0x39, svc_GetCvarValue = 0x3a, svc_StopSound = 0x3b, svc_PeerList = 0x3c, svc_PacketReliable = 0x3d, svc_HLTVStatus = 0x3e, svc_ServerSteamID = 0x3f, svc_FullFrameSplit = 0x46, svc_RconServerDetails = 0x47, svc_UserMessage = 0x48, svc_HltvReplay = 0x49, svc_Broadcast_Command = 0x4a, svc_HltvFixupOperatorStatus = 0x4b, }; // Alignment: 4 // Size: 0x2 enum class VoiceDataFormat_t : uint32_t { VOICEDATA_FORMAT_STEAM = 0x0, VOICEDATA_FORMAT_ENGINE = 0x1, }; // Alignment: 4 // Size: 0x3 enum class RequestPause_t : uint32_t { RP_PAUSE = 0x0, RP_UNPAUSE = 0x1, RP_TOGGLEPAUSE = 0x2, }; // Alignment: 4 // Size: 0x1 enum class PrefetchType : uint32_t { PFT_SOUND = 0x0, }; // Alignment: 4 // Size: 0x2 enum class ESplitScreenMessageType : uint32_t { MSG_SPLITSCREEN_ADDUSER = 0x0, MSG_SPLITSCREEN_REMOVEUSER = 0x1, }; // Alignment: 4 // Size: 0x4 enum class EQueryCvarValueStatus : uint32_t { eQueryCvarValueStatus_ValueIntact = 0x0, eQueryCvarValueStatus_CvarNotFound = 0x1, eQueryCvarValueStatus_NotACvar = 0x2, eQueryCvarValueStatus_CvarProtected = 0x3, }; // Alignment: 4 // Size: 0x5 enum class DIALOG_TYPE : uint32_t { DIALOG_MSG = 0x0, DIALOG_MENU = 0x1, DIALOG_TEXT = 0x2, DIALOG_ENTRY = 0x3, DIALOG_ASKCONNECT = 0x4, }; // Alignment: 4 // Size: 0x1 enum class SVC_Messages_LowFrequency : uint32_t { svc_dummy = 0x258, }; // Alignment: 4 // Size: 0x3 enum class Bidirectional_Messages : uint32_t { bi_RebroadcastGameEvent = 0x10, bi_RebroadcastSource = 0x11, bi_GameEvent = 0x12, }; // Alignment: 4 // Size: 0x2 enum class Bidirectional_Messages_LowFrequency : uint32_t { bi_RelayInfo = 0x2bc, bi_RelayPacket = 0x2bd, }; // Alignment: 4 // Size: 0x5 enum class ReplayEventType_t : uint32_t { REPLAY_EVENT_CANCEL = 0x0, REPLAY_EVENT_DEATH = 0x1, REPLAY_EVENT_GENERIC = 0x2, REPLAY_EVENT_STUCK_NEED_FULL_UPDATE = 0x3, REPLAY_EVENT_VICTORY = 0x4, }; // Alignment: 4 // Size: 0x2e enum class EBaseUserMessages : uint32_t { UM_AchievementEvent = 0x65, UM_CloseCaption = 0x66, UM_CloseCaptionDirect = 0x67, UM_CurrentTimescale = 0x68, UM_DesiredTimescale = 0x69, UM_Fade = 0x6a, UM_GameTitle = 0x6b, UM_HudMsg = 0x6e, UM_HudText = 0x6f, UM_ColoredText = 0x71, UM_RequestState = 0x72, UM_ResetHUD = 0x73, UM_Rumble = 0x74, UM_SayText = 0x75, UM_SayText2 = 0x76, UM_SayTextChannel = 0x77, UM_Shake = 0x78, UM_ShakeDir = 0x79, UM_TextMsg = 0x7c, UM_ScreenTilt = 0x7d, UM_VoiceMask = 0x80, UM_SendAudio = 0x82, UM_ItemPickup = 0x83, UM_AmmoDenied = 0x84, UM_ShowMenu = 0x86, UM_CreditsMsg = 0x87, UM_CloseCaptionPlaceholder = 0x8e, UM_CameraTransition = 0x8f, UM_AudioParameter = 0x90, UM_ParticleManager = 0x91, UM_HudError = 0x92, UM_CustomGameEvent = 0x94, UM_AnimGraphUpdate = 0x95, UM_HapticsManagerPulse = 0x96, UM_HapticsManagerEffect = 0x97, UM_CommandQueueState = 0x98, UM_UpdateCssClasses = 0x99, UM_ServerFrameTime = 0x9a, UM_LagCompensationError = 0x9b, UM_RequestDllStatus = 0x9c, UM_RequestUtilAction = 0x9d, UM_UtilActionResponse = 0x9e, UM_DllStatusResponse = 0x9f, UM_RequestInventory = 0xa0, UM_InventoryResponse = 0xa1, UM_MAX_BASE = 0xc8, }; // Alignment: 4 // Size: 0x6 enum class EBaseEntityMessages : uint32_t { EM_PlayJingle = 0x88, EM_ScreenOverlay = 0x89, EM_RemoveAllDecals = 0x8a, EM_PropagateForce = 0x8b, EM_DoSpark = 0x8c, EM_FixAngle = 0x8d, }; // Alignment: 4 // Size: 0x5 enum class eRollType : uint32_t { ROLL_NONE = 0xffffffffffffffff, ROLL_STATS = 0x0, ROLL_CREDITS = 0x1, ROLL_LATE_JOIN_LOGO = 0x2, ROLL_OUTTRO = 0x3, }; // Alignment: 4 // Size: 0x1d enum class PARTICLE_MESSAGE : uint32_t { GAME_PARTICLE_MANAGER_EVENT_CREATE = 0x0, GAME_PARTICLE_MANAGER_EVENT_UPDATE = 0x1, GAME_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD = 0x2, GAME_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION = 0x3, GAME_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK = 0x4, GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENT = 0x5, GAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET = 0x6, GAME_PARTICLE_MANAGER_EVENT_DESTROY = 0x7, GAME_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING = 0x8, GAME_PARTICLE_MANAGER_EVENT_RELEASE = 0x9, GAME_PARTICLE_MANAGER_EVENT_LATENCY = 0xa, GAME_PARTICLE_MANAGER_EVENT_SHOULD_DRAW = 0xb, GAME_PARTICLE_MANAGER_EVENT_FROZEN = 0xc, GAME_PARTICLE_MANAGER_EVENT_CHANGE_CONTROL_POINT_ATTACHMENT = 0xd, GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION = 0xe, GAME_PARTICLE_MANAGER_EVENT_SET_FOW_PROPERTIES = 0xf, GAME_PARTICLE_MANAGER_EVENT_SET_TEXT = 0x10, GAME_PARTICLE_MANAGER_EVENT_SET_SHOULD_CHECK_FOW = 0x11, GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_MODEL = 0x12, GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_SNAPSHOT = 0x13, GAME_PARTICLE_MANAGER_EVENT_SET_TEXTURE_ATTRIBUTE = 0x14, GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_GENERIC_FLAG = 0x15, GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_TINT_AND_DESAT = 0x16, GAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED = 0x17, GAME_PARTICLE_MANAGER_EVENT_SKIP_TO_TIME = 0x18, GAME_PARTICLE_MANAGER_EVENT_CAN_FREEZE = 0x19, GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT = 0x1a, GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM = 0x1b, GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE = 0x1c, }; // Alignment: 4 // Size: 0x3 enum class EHapticPulseType : uint32_t { VR_HAND_HAPTIC_PULSE_LIGHT = 0x0, VR_HAND_HAPTIC_PULSE_MEDIUM = 0x1, VR_HAND_HAPTIC_PULSE_STRONG = 0x2, }; // Alignment: 4 // Size: 0x7 enum class EBaseClientMessages : uint32_t { CM_CustomGameEvent = 0x118, CM_CustomGameEventBounce = 0x119, CM_ClientUIEvent = 0x11a, CM_DevPaletteVisibilityChanged = 0x11b, CM_WorldUIControllerHasPanelChanged = 0x11c, CM_RotateAnchor = 0x11d, CM_MAX_BASE = 0x12c, }; // Alignment: 4 // Size: 0x3 enum class EClientUIEvent : uint32_t { EClientUIEvent_Invalid = 0x0, EClientUIEvent_DialogFinished = 0x1, EClientUIEvent_FireOutput = 0x2, }; // Alignment: 4 // Size: 0xd enum class EBaseGameEvents : uint32_t { GE_VDebugGameSessionIDEvent = 0xc8, GE_PlaceDecalEvent = 0xc9, GE_ClearWorldDecalsEvent = 0xca, GE_ClearEntityDecalsEvent = 0xcb, GE_ClearDecalsForSkeletonInstanceEvent = 0xcc, GE_Source1LegacyGameEventList = 0xcd, GE_Source1LegacyListenEvents = 0xce, GE_Source1LegacyGameEvent = 0xcf, GE_SosStartSoundEvent = 0xd0, GE_SosStopSoundEvent = 0xd1, GE_SosSetSoundEventParams = 0xd2, GE_SosSetLibraryStackFields = 0xd3, GE_SosStopSoundEventHash = 0xd4, }; // Alignment: 4 // Size: 0x1a enum class ETEProtobufIds : uint32_t { TE_EffectDispatchId = 0x190, TE_ArmorRicochetId = 0x191, TE_BeamEntPointId = 0x192, TE_BeamEntsId = 0x193, TE_BeamPointsId = 0x194, TE_BeamRingId = 0x195, TE_BSPDecalId = 0x197, TE_BubblesId = 0x198, TE_BubbleTrailId = 0x199, TE_DecalId = 0x19a, TE_WorldDecalId = 0x19b, TE_EnergySplashId = 0x19c, TE_FizzId = 0x19d, TE_ShatterSurfaceId = 0x19e, TE_GlowSpriteId = 0x19f, TE_ImpactId = 0x1a0, TE_MuzzleFlashId = 0x1a1, TE_BloodStreamId = 0x1a2, TE_ExplosionId = 0x1a3, TE_DustId = 0x1a4, TE_LargeFunnelId = 0x1a5, TE_SparksId = 0x1a6, TE_PhysicsPropId = 0x1a7, TE_PlayerDecalId = 0x1a8, TE_ProjectedDecalId = 0x1a9, TE_SmokeId = 0x1aa, }; // Alignment: 4 // Size: 0x6 enum class EGCPlatform : uint32_t { k_eGCPlatform_None = 0x0, k_eGCPlatform_PC = 0x1, k_eGCPlatform_Mac = 0x2, k_eGCPlatform_Linux = 0x3, k_eGCPlatform_Android = 0x4, k_eGCPlatform_iOS = 0x5, }; // Alignment: 4 // Size: 0x6 enum class GCProtoBufMsgSrc : uint32_t { GCProtoBufMsgSrc_Unspecified = 0x0, GCProtoBufMsgSrc_FromSystem = 0x1, GCProtoBufMsgSrc_FromSteamID = 0x2, GCProtoBufMsgSrc_FromGC = 0x3, GCProtoBufMsgSrc_ReplySystem = 0x4, GCProtoBufMsgSrc_SpoofedSteamID = 0x5, }; // Alignment: 4 // Size: 0x3 enum class EMobilePaymentProvider : uint32_t { k_EMobilePaymentProvider_Invalid = 0x0, k_EMobilePaymentProvider_GooglePlay = 0x1, k_EMobilePaymentProvider_AppleAppStore = 0x2, }; // Alignment: 4 // Size: 0x3 enum class PointTemplateOwnerSpawnGroupType_t : uint32_t { INSERT_INTO_POINT_TEMPLATE_SPAWN_GROUP = 0x0, INSERT_INTO_CURRENTLY_ACTIVE_SPAWN_GROUP = 0x1, INSERT_INTO_NEWLY_CREATED_SPAWN_GROUP = 0x2, }; // Alignment: 4 // Size: 0x2 enum class PointTemplateClientOnlyEntityBehavior_t : uint32_t { CREATE_FOR_CURRENTLY_CONNECTED_CLIENTS_ONLY = 0x0, CREATE_FOR_CLIENTS_WHO_CONNECT_LATER = 0x1, }; // Alignment: 4 // Size: 0x4 enum class PerformanceMode_t : uint32_t { PM_NORMAL = 0x0, PM_NO_GIBS = 0x1, PM_FULL_GIBS = 0x2, PM_REDUCED_GIBS = 0x3, }; // Alignment: 4 // Size: 0x3 enum class ChatIgnoreType_t : uint32_t { CHAT_IGNORE_NONE = 0x0, CHAT_IGNORE_ALL = 0x1, CHAT_IGNORE_TEAM = 0x2, }; // Alignment: 1 // Size: 0x5 enum class VehiclePassengerState_t : uint8_t { PASSENGER_NOT_THERE = 0x0, PASSENGER_FLIPPING_VEHICLE = 0x1, PASSENGER_ENTERING_VEHICLE = 0x2, PASSENGER_IN_VEHICLE = 0x3, PASSENGER_EXITING_VEHICLE = 0x4, }; // Alignment: 4 // Size: 0x4 enum class CommandExecMode_t : uint32_t { EXEC_MANUAL = 0x0, EXEC_LEVELSTART = 0x1, EXEC_PERIODIC = 0x2, EXEC_MODES_COUNT = 0x3, }; // Alignment: 4 // Size: 0x2 enum class CommandEntitySpecType_t : uint32_t { SPEC_SEARCH = 0x0, SPEC_TYPES_COUNT = 0x1, }; // Alignment: 4 // Size: 0x2d enum class GameAnimEventIndex_t : uint32_t { AE_EMPTY = 0x0, AE_CL_PLAYSOUND = 0x1, AE_CL_PLAYSOUND_ATTACHMENT = 0x2, AE_CL_PLAYSOUND_POSITION = 0x3, AE_SV_PLAYSOUND = 0x4, AE_CL_STOPSOUND = 0x5, AE_CL_PLAYSOUND_LOOPING = 0x6, AE_CL_CREATE_PARTICLE_EFFECT = 0x7, AE_CL_STOP_PARTICLE_EFFECT = 0x8, AE_CL_CREATE_PARTICLE_EFFECT_CFG = 0x9, AE_SV_CREATE_PARTICLE_EFFECT_CFG = 0xa, AE_SV_STOP_PARTICLE_EFFECT = 0xb, AE_FOOTSTEP = 0xc, AE_RAGDOLL = 0xd, AE_CL_STOP_RAGDOLL_CONTROL = 0xe, AE_CL_ENABLE_BODYGROUP = 0xf, AE_CL_DISABLE_BODYGROUP = 0x10, AE_CL_BODYGROUP_SET_VALUE = 0x11, AE_SV_BODYGROUP_SET_VALUE = 0x12, AE_CL_BODYGROUP_SET_VALUE_CMODEL_WPN = 0x13, AE_WPN_PRIMARYATTACK = 0x14, AE_WPN_SECONDARYATTACK = 0x15, AE_FIRE_INPUT = 0x16, AE_CL_CLOTH_ATTR = 0x17, AE_CL_CLOTH_GROUND_OFFSET = 0x18, AE_CL_CLOTH_STIFFEN = 0x19, AE_CL_CLOTH_EFFECT = 0x1a, AE_CL_CREATE_ANIM_SCOPE_PROP = 0x1b, AE_CL_SUPPRESS_EVENTS_WITH_TAG = 0x1c, AE_CL_HIDE_PARTICLE_EFFECT = 0x1d, AE_CL_SHOW_PARTICLE_EFFECT = 0x1e, AE_CL_ADD_PARTICLE_EFFECT_CP = 0x1f, AE_CL_SPEECH = 0x20, AE_CL_DOTA_PLAY_STATUS_EFFECT = 0x21, AE_CL_DOTA_STOP_STATUS_EFFECT = 0x22, AE_CL_DOTA_NPC_CREATE_PARTICLE_EFFECT = 0x23, AE_CL_DOTA_RUBICK_ARCANA_CREATE_PARTICLE_EFFECT = 0x24, AE_DOTA_PET_ITEM_PICKUP = 0x25, AE_DOTA_PET_ITEM_DROP = 0x26, AE_DOTA_SUPPRESS_CONSTANT_LAYER = 0x27, AE_DOTA_PLAY_SOUND_ATTACK_SPECIAL = 0x28, AE_DOTA_CREATE_CLINKZ_ATTACK = 0x29, AE_DOTA_PLAY_SOUND_ATTACK_BACKSTAB = 0x2a, AE_DOTA_DIE_PHANTOM_DEATH_PARTICLES = 0x2b, AE_DOTA_SWITCH_ATTACK_COMBO = 0x2c, }; // Alignment: 4 // Size: 0x7 enum class ObserverMode_t : uint32_t { OBS_MODE_NONE = 0x0, OBS_MODE_FIXED = 0x1, OBS_MODE_IN_EYE = 0x2, OBS_MODE_CHASE = 0x3, OBS_MODE_ROAMING = 0x4, OBS_MODE_DIRECTED = 0x5, NUM_OBSERVER_MODES = 0x6, }; // Alignment: 4 // Size: 0x3 enum class ObserverInterpState_t : uint32_t { OBSERVER_INTERP_NONE = 0x0, OBSERVER_INTERP_TRAVELING = 0x1, OBSERVER_INTERP_SETTLING = 0x2, }; // Alignment: 4 // Size: 0x1b enum class RumbleEffect_t : uint32_t { RUMBLE_INVALID = 0xffffffffffffffff, RUMBLE_STOP_ALL = 0x0, RUMBLE_PISTOL = 0x1, RUMBLE_357 = 0x2, RUMBLE_SMG1 = 0x3, RUMBLE_AR2 = 0x4, RUMBLE_SHOTGUN_SINGLE = 0x5, RUMBLE_SHOTGUN_DOUBLE = 0x6, RUMBLE_AR2_ALT_FIRE = 0x7, RUMBLE_RPG_MISSILE = 0x8, RUMBLE_CROWBAR_SWING = 0x9, RUMBLE_AIRBOAT_GUN = 0xa, RUMBLE_JEEP_ENGINE_LOOP = 0xb, RUMBLE_FLAT_LEFT = 0xc, RUMBLE_FLAT_RIGHT = 0xd, RUMBLE_FLAT_BOTH = 0xe, RUMBLE_DMG_LOW = 0xf, RUMBLE_DMG_MED = 0x10, RUMBLE_DMG_HIGH = 0x11, RUMBLE_FALL_LONG = 0x12, RUMBLE_FALL_SHORT = 0x13, RUMBLE_PHYSCANNON_OPEN = 0x14, RUMBLE_PHYSCANNON_PUNT = 0x15, RUMBLE_PHYSCANNON_LOW = 0x16, RUMBLE_PHYSCANNON_MEDIUM = 0x17, RUMBLE_PHYSCANNON_HIGH = 0x18, NUM_RUMBLE_EFFECTS = 0x19, }; // Alignment: 4 // Size: 0xf enum class WeaponSound_t : uint32_t { WEAPON_SOUND_EMPTY = 0x0, WEAPON_SOUND_SINGLE = 0x1, WEAPON_SOUND_DOUBLE = 0x2, WEAPON_SOUND_RELOAD = 0x3, WEAPON_SOUND_MELEE_MISS = 0x4, WEAPON_SOUND_MELEE_HIT = 0x5, WEAPON_SOUND_MELEE_HIT_WORLD = 0x6, WEAPON_SOUND_MELEE_HIT_PLAYER = 0x7, WEAPON_SOUND_SPECIAL1 = 0x8, WEAPON_SOUND_SPECIAL2 = 0x9, WEAPON_SOUND_SPECIAL3 = 0xa, WEAPON_SOUND_NEARLYEMPTY = 0xb, WEAPON_SOUND_IMPACT1 = 0xc, WEAPON_SOUND_REFLECT = 0xd, WEAPON_SOUND_NUM_TYPES = 0xe, }; // Alignment: 4 // Size: 0x3 enum class WheeledPhysicsVehicleChassisFrame_t : uint32_t { WHEELED_VEHICLE_CHASSIS_FRAME_XFORWARD_YLEFT = 0x0, WHEELED_VEHICLE_CHASSIS_FRAME_ZFORWARD_XLEFT = 0x1, WHEELED_VEHICLE_CHASSIS_FRAME_YBACKWARD_XLEFT = 0x2, }; // Alignment: 4 // Size: 0x400 enum class BaseActivity_t : uint32_t { ACT_RESET = 0x0, ACT_IDLE = 0x1, ACT_TRANSITION = 0x2, ACT_COVER = 0x3, ACT_COVER_MED = 0x4, ACT_COVER_LOW = 0x5, ACT_WALK = 0x6, ACT_WALK_AIM = 0x7, ACT_WALK_CROUCH = 0x8, ACT_WALK_CROUCH_AIM = 0x9, ACT_RUN = 0xa, ACT_RUN_AIM = 0xb, ACT_RUN_CROUCH = 0xc, ACT_RUN_CROUCH_AIM = 0xd, ACT_RUN_PROTECTED = 0xe, ACT_SCRIPT_CUSTOM_MOVE = 0xf, ACT_RANGE_ATTACK1 = 0x10, ACT_RANGE_ATTACK2 = 0x11, ACT_RANGE_ATTACK1_LOW = 0x12, ACT_RANGE_ATTACK2_LOW = 0x13, ACT_DIESIMPLE = 0x14, ACT_DIEBACKWARD = 0x15, ACT_DIEFORWARD = 0x16, ACT_DIEVIOLENT = 0x17, ACT_DIERAGDOLL = 0x18, ACT_FLY = 0x19, ACT_HOVER = 0x1a, ACT_GLIDE = 0x1b, ACT_SWIM = 0x1c, ACT_JUMP = 0x1d, ACT_HOP = 0x1e, ACT_LEAP = 0x1f, ACT_LAND = 0x20, ACT_CLIMB_UP = 0x21, ACT_CLIMB_DOWN = 0x22, ACT_CLIMB_DISMOUNT = 0x23, ACT_SHIPLADDER_UP = 0x24, ACT_SHIPLADDER_DOWN = 0x25, ACT_STRAFE_LEFT = 0x26, ACT_STRAFE_RIGHT = 0x27, ACT_ROLL_LEFT = 0x28, ACT_ROLL_RIGHT = 0x29, ACT_TURN_LEFT = 0x2a, ACT_TURN_RIGHT = 0x2b, ACT_CROUCH = 0x2c, ACT_CROUCHIDLE = 0x2d, ACT_STAND = 0x2e, ACT_USE = 0x2f, ACT_ALIEN_BURROW_IDLE = 0x30, ACT_ALIEN_BURROW_OUT = 0x31, ACT_SIGNAL1 = 0x32, ACT_SIGNAL2 = 0x33, ACT_SIGNAL3 = 0x34, ACT_SIGNAL_ADVANCE = 0x35, ACT_SIGNAL_FORWARD = 0x36, ACT_SIGNAL_GROUP = 0x37, ACT_SIGNAL_HALT = 0x38, ACT_SIGNAL_LEFT = 0x39, ACT_SIGNAL_RIGHT = 0x3a, ACT_SIGNAL_TAKECOVER = 0x3b, ACT_LOOKBACK_RIGHT = 0x3c, ACT_LOOKBACK_LEFT = 0x3d, ACT_COWER = 0x3e, ACT_SMALL_FLINCH = 0x3f, ACT_BIG_FLINCH = 0x40, ACT_MELEE_ATTACK1 = 0x41, ACT_MELEE_ATTACK2 = 0x42, ACT_RELOAD = 0x43, ACT_RELOAD_START = 0x44, ACT_RELOAD_FINISH = 0x45, ACT_RELOAD_LOW = 0x46, ACT_ARM = 0x47, ACT_DISARM = 0x48, ACT_DROP_WEAPON = 0x49, ACT_DROP_WEAPON_SHOTGUN = 0x4a, ACT_PICKUP_GROUND = 0x4b, ACT_PICKUP_RACK = 0x4c, ACT_IDLE_ANGRY = 0x4d, ACT_IDLE_RELAXED = 0x4e, ACT_IDLE_STIMULATED = 0x4f, ACT_IDLE_AGITATED = 0x50, ACT_IDLE_STEALTH = 0x51, ACT_IDLE_HURT = 0x52, ACT_WALK_RELAXED = 0x53, ACT_WALK_STIMULATED = 0x54, ACT_WALK_AGITATED = 0x55, ACT_WALK_STEALTH = 0x56, ACT_RUN_RELAXED = 0x57, ACT_RUN_STIMULATED = 0x58, ACT_RUN_AGITATED = 0x59, ACT_RUN_STEALTH = 0x5a, ACT_IDLE_AIM_RELAXED = 0x5b, ACT_IDLE_AIM_STIMULATED = 0x5c, ACT_IDLE_AIM_AGITATED = 0x5d, ACT_IDLE_AIM_STEALTH = 0x5e, ACT_WALK_AIM_RELAXED = 0x5f, ACT_WALK_AIM_STIMULATED = 0x60, ACT_WALK_AIM_AGITATED = 0x61, ACT_WALK_AIM_STEALTH = 0x62, ACT_RUN_AIM_RELAXED = 0x63, ACT_RUN_AIM_STIMULATED = 0x64, ACT_RUN_AIM_AGITATED = 0x65, ACT_RUN_AIM_STEALTH = 0x66, ACT_CROUCHIDLE_STIMULATED = 0x67, ACT_CROUCHIDLE_AIM_STIMULATED = 0x68, ACT_CROUCHIDLE_AGITATED = 0x69, ACT_WALK_HURT = 0x6a, ACT_RUN_HURT = 0x6b, ACT_SPECIAL_ATTACK1 = 0x6c, ACT_SPECIAL_ATTACK2 = 0x6d, ACT_COMBAT_IDLE = 0x6e, ACT_WALK_SCARED = 0x6f, ACT_RUN_SCARED = 0x70, ACT_VICTORY_DANCE = 0x71, ACT_DIE_HEADSHOT = 0x72, ACT_DIE_CHESTSHOT = 0x73, ACT_DIE_GUTSHOT = 0x74, ACT_DIE_BACKSHOT = 0x75, ACT_FLINCH_HEAD = 0x76, ACT_FLINCH_CHEST = 0x77, ACT_FLINCH_STOMACH = 0x78, ACT_FLINCH_LEFTARM = 0x79, ACT_FLINCH_RIGHTARM = 0x7a, ACT_FLINCH_LEFTLEG = 0x7b, ACT_FLINCH_RIGHTLEG = 0x7c, ACT_FLINCH_PHYSICS = 0x7d, ACT_FLINCH_HEAD_BACK = 0x7e, ACT_FLINCH_CHEST_BACK = 0x7f, ACT_FLINCH_STOMACH_BACK = 0x80, ACT_FLINCH_CROUCH_FRONT = 0x81, ACT_FLINCH_CROUCH_BACK = 0x82, ACT_FLINCH_CROUCH_LEFT = 0x83, ACT_FLINCH_CROUCH_RIGHT = 0x84, ACT_IDLE_ON_FIRE = 0x85, ACT_WALK_ON_FIRE = 0x86, ACT_RUN_ON_FIRE = 0x87, ACT_180_LEFT = 0x89, ACT_180_RIGHT = 0x8a, ACT_90_LEFT = 0x8b, ACT_90_RIGHT = 0x8c, ACT_STEP_LEFT = 0x8d, ACT_STEP_RIGHT = 0x8e, ACT_STEP_BACK = 0x8f, ACT_STEP_FORE = 0x90, ACT_GESTURE_RANGE_ATTACK1 = 0x91, ACT_GESTURE_RANGE_ATTACK2 = 0x92, ACT_GESTURE_MELEE_ATTACK1 = 0x93, ACT_GESTURE_MELEE_ATTACK2 = 0x94, ACT_GESTURE_RANGE_ATTACK1_LOW = 0x95, ACT_GESTURE_RANGE_ATTACK2_LOW = 0x96, ACT_MELEE_ATTACK_SWING_GESTURE = 0x97, ACT_GESTURE_SMALL_FLINCH = 0x98, ACT_GESTURE_BIG_FLINCH = 0x99, ACT_GESTURE_FLINCH_BLAST = 0x9a, ACT_GESTURE_FLINCH_BLAST_SHOTGUN = 0x9b, ACT_GESTURE_FLINCH_BLAST_DAMAGED = 0x9c, ACT_GESTURE_FLINCH_BLAST_DAMAGED_SHOTGUN = 0x9d, ACT_GESTURE_FLINCH_HEAD = 0x9e, ACT_GESTURE_FLINCH_CHEST = 0x9f, ACT_GESTURE_FLINCH_STOMACH = 0xa0, ACT_GESTURE_FLINCH_LEFTARM = 0xa1, ACT_GESTURE_FLINCH_RIGHTARM = 0xa2, ACT_GESTURE_FLINCH_LEFTLEG = 0xa3, ACT_GESTURE_FLINCH_RIGHTLEG = 0xa4, ACT_GESTURE_TURN_LEFT = 0xa5, ACT_GESTURE_TURN_RIGHT = 0xa6, ACT_GESTURE_TURN_LEFT45 = 0xa7, ACT_GESTURE_TURN_RIGHT45 = 0xa8, ACT_GESTURE_TURN_LEFT90 = 0xa9, ACT_GESTURE_TURN_RIGHT90 = 0xaa, ACT_GESTURE_TURN_LEFT45_FLAT = 0xab, ACT_GESTURE_TURN_RIGHT45_FLAT = 0xac, ACT_GESTURE_TURN_LEFT90_FLAT = 0xad, ACT_GESTURE_TURN_RIGHT90_FLAT = 0xae, ACT_BARNACLE_HIT = 0xaf, ACT_BARNACLE_PULL = 0xb0, ACT_BARNACLE_CHOMP = 0xb1, ACT_BARNACLE_CHEW = 0xb2, ACT_DO_NOT_DISTURB = 0xb3, ACT_SPECIFIC_SEQUENCE = 0xb4, ACT_VM_DEPLOY = 0xb5, ACT_VM_RELOAD_EMPTY = 0xb6, ACT_VM_DRAW = 0xb7, ACT_VM_HOLSTER = 0xb8, ACT_VM_IDLE = 0xb9, ACT_VM_FIDGET = 0xba, ACT_VM_PULLBACK = 0xbb, ACT_VM_PULLBACK_HIGH = 0xbc, ACT_VM_PULLBACK_LOW = 0xbd, ACT_VM_THROW = 0xbe, ACT_VM_DROP = 0xbf, ACT_VM_PULLPIN = 0xc0, ACT_VM_PRIMARYATTACK = 0xc1, ACT_VM_SECONDARYATTACK = 0xc2, ACT_VM_RELOAD = 0xc3, ACT_VM_DRYFIRE = 0xc4, ACT_VM_HITLEFT = 0xc5, ACT_VM_HITLEFT2 = 0xc6, ACT_VM_HITRIGHT = 0xc7, ACT_VM_HITRIGHT2 = 0xc8, ACT_VM_HITCENTER = 0xc9, ACT_VM_HITCENTER2 = 0xca, ACT_VM_MISSLEFT = 0xcb, ACT_VM_MISSLEFT2 = 0xcc, ACT_VM_MISSRIGHT = 0xcd, ACT_VM_MISSRIGHT2 = 0xce, ACT_VM_MISSCENTER = 0xcf, ACT_VM_MISSCENTER2 = 0xd0, ACT_VM_HAULBACK = 0xd1, ACT_VM_SWINGHARD = 0xd2, ACT_VM_SWINGMISS = 0xd3, ACT_VM_SWINGHIT = 0xd4, ACT_VM_IDLE_TO_LOWERED = 0xd5, ACT_VM_IDLE_LOWERED = 0xd6, ACT_VM_LOWERED_TO_IDLE = 0xd7, ACT_VM_RECOIL1 = 0xd8, ACT_VM_RECOIL2 = 0xd9, ACT_VM_RECOIL3 = 0xda, ACT_VM_PICKUP = 0xdb, ACT_VM_RELEASE = 0xdc, ACT_VM_MAUL_LOOP = 0xdd, ACT_VM_ATTACH_SILENCER = 0xde, ACT_VM_DETACH_SILENCER = 0xdf, ACT_SLAM_STICKWALL_IDLE = 0xe0, ACT_SLAM_STICKWALL_ND_IDLE = 0xe1, ACT_SLAM_STICKWALL_ATTACH = 0xe2, ACT_SLAM_STICKWALL_ATTACH2 = 0xe3, ACT_SLAM_STICKWALL_ND_ATTACH = 0xe4, ACT_SLAM_STICKWALL_ND_ATTACH2 = 0xe5, ACT_SLAM_STICKWALL_DETONATE = 0xe6, ACT_SLAM_STICKWALL_DETONATOR_HOLSTER = 0xe7, ACT_SLAM_STICKWALL_DRAW = 0xe8, ACT_SLAM_STICKWALL_ND_DRAW = 0xe9, ACT_SLAM_STICKWALL_TO_THROW = 0xea, ACT_SLAM_STICKWALL_TO_THROW_ND = 0xeb, ACT_SLAM_STICKWALL_TO_TRIPMINE_ND = 0xec, ACT_SLAM_THROW_IDLE = 0xed, ACT_SLAM_THROW_ND_IDLE = 0xee, ACT_SLAM_THROW_THROW = 0xef, ACT_SLAM_THROW_THROW2 = 0xf0, ACT_SLAM_THROW_THROW_ND = 0xf1, ACT_SLAM_THROW_THROW_ND2 = 0xf2, ACT_SLAM_THROW_DRAW = 0xf3, ACT_SLAM_THROW_ND_DRAW = 0xf4, ACT_SLAM_THROW_TO_STICKWALL = 0xf5, ACT_SLAM_THROW_TO_STICKWALL_ND = 0xf6, ACT_SLAM_THROW_DETONATE = 0xf7, ACT_SLAM_THROW_DETONATOR_HOLSTER = 0xf8, ACT_SLAM_THROW_TO_TRIPMINE_ND = 0xf9, ACT_SLAM_TRIPMINE_IDLE = 0xfa, ACT_SLAM_TRIPMINE_DRAW = 0xfb, ACT_SLAM_TRIPMINE_ATTACH = 0xfc, ACT_SLAM_TRIPMINE_ATTACH2 = 0xfd, ACT_SLAM_TRIPMINE_TO_STICKWALL_ND = 0xfe, ACT_SLAM_TRIPMINE_TO_THROW_ND = 0xff, ACT_SLAM_DETONATOR_IDLE = 0x100, ACT_SLAM_DETONATOR_DRAW = 0x101, ACT_SLAM_DETONATOR_DETONATE = 0x102, ACT_SLAM_DETONATOR_HOLSTER = 0x103, ACT_SLAM_DETONATOR_STICKWALL_DRAW = 0x104, ACT_SLAM_DETONATOR_THROW_DRAW = 0x105, ACT_SHOTGUN_RELOAD_START = 0x106, ACT_SHOTGUN_RELOAD_FINISH = 0x107, ACT_SHOTGUN_PUMP = 0x108, ACT_SMG2_IDLE2 = 0x109, ACT_SMG2_FIRE2 = 0x10a, ACT_SMG2_DRAW2 = 0x10b, ACT_SMG2_RELOAD2 = 0x10c, ACT_SMG2_DRYFIRE2 = 0x10d, ACT_SMG2_TOAUTO = 0x10e, ACT_SMG2_TOBURST = 0x10f, ACT_PHYSCANNON_UPGRADE = 0x110, ACT_RANGE_ATTACK_AR1 = 0x111, ACT_RANGE_ATTACK_AR2 = 0x112, ACT_RANGE_ATTACK_AR2_LOW = 0x113, ACT_RANGE_ATTACK_AR2_GRENADE = 0x114, ACT_RANGE_ATTACK_HMG1 = 0x115, ACT_RANGE_ATTACK_ML = 0x116, ACT_RANGE_ATTACK_SMG1 = 0x117, ACT_RANGE_ATTACK_SMG1_LOW = 0x118, ACT_RANGE_ATTACK_SMG2 = 0x119, ACT_RANGE_ATTACK_SHOTGUN = 0x11a, ACT_RANGE_ATTACK_SHOTGUN_LOW = 0x11b, ACT_RANGE_ATTACK_PISTOL = 0x11c, ACT_RANGE_ATTACK_PISTOL_LOW = 0x11d, ACT_RANGE_ATTACK_SLAM = 0x11e, ACT_RANGE_ATTACK_TRIPWIRE = 0x11f, ACT_RANGE_ATTACK_THROW = 0x120, ACT_RANGE_ATTACK_SNIPER_RIFLE = 0x121, ACT_RANGE_ATTACK_RPG = 0x122, ACT_MELEE_ATTACK_SWING = 0x123, ACT_RANGE_AIM_LOW = 0x124, ACT_RANGE_AIM_SMG1_LOW = 0x125, ACT_RANGE_AIM_PISTOL_LOW = 0x126, ACT_RANGE_AIM_AR2_LOW = 0x127, ACT_COVER_PISTOL_LOW = 0x128, ACT_COVER_SMG1_LOW = 0x129, ACT_GESTURE_RANGE_ATTACK_AR1 = 0x12a, ACT_GESTURE_RANGE_ATTACK_AR2 = 0x12b, ACT_GESTURE_RANGE_ATTACK_AR2_GRENADE = 0x12c, ACT_GESTURE_RANGE_ATTACK_HMG1 = 0x12d, ACT_GESTURE_RANGE_ATTACK_ML = 0x12e, ACT_GESTURE_RANGE_ATTACK_SMG1 = 0x12f, ACT_GESTURE_RANGE_ATTACK_SMG1_LOW = 0x130, ACT_GESTURE_RANGE_ATTACK_SMG2 = 0x131, ACT_GESTURE_RANGE_ATTACK_SHOTGUN = 0x132, ACT_GESTURE_RANGE_ATTACK_PISTOL = 0x133, ACT_GESTURE_RANGE_ATTACK_PISTOL_LOW = 0x134, ACT_GESTURE_RANGE_ATTACK_SLAM = 0x135, ACT_GESTURE_RANGE_ATTACK_TRIPWIRE = 0x136, ACT_GESTURE_RANGE_ATTACK_THROW = 0x137, ACT_GESTURE_RANGE_ATTACK_SNIPER_RIFLE = 0x138, ACT_GESTURE_MELEE_ATTACK_SWING = 0x139, ACT_IDLE_RIFLE = 0x13a, ACT_IDLE_SMG1 = 0x13b, ACT_IDLE_ANGRY_SMG1 = 0x13c, ACT_IDLE_PISTOL = 0x13d, ACT_IDLE_ANGRY_PISTOL = 0x13e, ACT_IDLE_ANGRY_SHOTGUN = 0x13f, ACT_IDLE_STEALTH_PISTOL = 0x140, ACT_IDLE_PACKAGE = 0x141, ACT_WALK_PACKAGE = 0x142, ACT_IDLE_SUITCASE = 0x143, ACT_WALK_SUITCASE = 0x144, ACT_IDLE_SMG1_RELAXED = 0x145, ACT_IDLE_SMG1_STIMULATED = 0x146, ACT_WALK_RIFLE_RELAXED = 0x147, ACT_RUN_RIFLE_RELAXED = 0x148, ACT_WALK_RIFLE_STIMULATED = 0x149, ACT_RUN_RIFLE_STIMULATED = 0x14a, ACT_IDLE_AIM_RIFLE_STIMULATED = 0x14b, ACT_WALK_AIM_RIFLE_STIMULATED = 0x14c, ACT_RUN_AIM_RIFLE_STIMULATED = 0x14d, ACT_IDLE_SHOTGUN_RELAXED = 0x14e, ACT_IDLE_SHOTGUN_STIMULATED = 0x14f, ACT_IDLE_SHOTGUN_AGITATED = 0x150, ACT_WALK_ANGRY = 0x151, ACT_POLICE_HARASS1 = 0x152, ACT_POLICE_HARASS2 = 0x153, ACT_IDLE_MANNEDGUN = 0x154, ACT_IDLE_MELEE = 0x155, ACT_IDLE_ANGRY_MELEE = 0x156, ACT_IDLE_RPG_RELAXED = 0x157, ACT_IDLE_RPG = 0x158, ACT_IDLE_ANGRY_RPG = 0x159, ACT_COVER_LOW_RPG = 0x15a, ACT_WALK_RPG = 0x15b, ACT_RUN_RPG = 0x15c, ACT_WALK_CROUCH_RPG = 0x15d, ACT_RUN_CROUCH_RPG = 0x15e, ACT_WALK_RPG_RELAXED = 0x15f, ACT_RUN_RPG_RELAXED = 0x160, ACT_WALK_RIFLE = 0x161, ACT_WALK_AIM_RIFLE = 0x162, ACT_WALK_CROUCH_RIFLE = 0x163, ACT_WALK_CROUCH_AIM_RIFLE = 0x164, ACT_RUN_RIFLE = 0x165, ACT_RUN_AIM_RIFLE = 0x166, ACT_RUN_CROUCH_RIFLE = 0x167, ACT_RUN_CROUCH_AIM_RIFLE = 0x168, ACT_RUN_STEALTH_PISTOL = 0x169, ACT_WALK_AIM_SHOTGUN = 0x16a, ACT_RUN_AIM_SHOTGUN = 0x16b, ACT_WALK_PISTOL = 0x16c, ACT_RUN_PISTOL = 0x16d, ACT_WALK_AIM_PISTOL = 0x16e, ACT_RUN_AIM_PISTOL = 0x16f, ACT_WALK_STEALTH_PISTOL = 0x170, ACT_WALK_AIM_STEALTH_PISTOL = 0x171, ACT_RUN_AIM_STEALTH_PISTOL = 0x172, ACT_RELOAD_PISTOL = 0x173, ACT_RELOAD_PISTOL_LOW = 0x174, ACT_RELOAD_SMG1 = 0x175, ACT_RELOAD_SMG1_LOW = 0x176, ACT_RELOAD_SHOTGUN = 0x177, ACT_RELOAD_SHOTGUN_LOW = 0x178, ACT_GESTURE_RELOAD = 0x179, ACT_GESTURE_RELOAD_PISTOL = 0x17a, ACT_GESTURE_RELOAD_SMG1 = 0x17b, ACT_GESTURE_RELOAD_SHOTGUN = 0x17c, ACT_BUSY_LEAN_LEFT = 0x17d, ACT_BUSY_LEAN_LEFT_ENTRY = 0x17e, ACT_BUSY_LEAN_LEFT_EXIT = 0x17f, ACT_BUSY_LEAN_BACK = 0x180, ACT_BUSY_LEAN_BACK_ENTRY = 0x181, ACT_BUSY_LEAN_BACK_EXIT = 0x182, ACT_BUSY_SIT_GROUND = 0x183, ACT_BUSY_SIT_GROUND_ENTRY = 0x184, ACT_BUSY_SIT_GROUND_EXIT = 0x185, ACT_BUSY_SIT_CHAIR = 0x186, ACT_BUSY_SIT_CHAIR_ENTRY = 0x187, ACT_BUSY_SIT_CHAIR_EXIT = 0x188, ACT_BUSY_STAND = 0x189, ACT_BUSY_QUEUE = 0x18a, ACT_DUCK_DODGE = 0x18b, ACT_DIE_BARNACLE_SWALLOW = 0x18c, ACT_GESTURE_BARNACLE_STRANGLE = 0x18d, ACT_DIE_FRONTSIDE = 0x192, ACT_DIE_RIGHTSIDE = 0x193, ACT_DIE_BACKSIDE = 0x194, ACT_DIE_LEFTSIDE = 0x195, ACT_DIE_CROUCH_FRONTSIDE = 0x196, ACT_DIE_CROUCH_RIGHTSIDE = 0x197, ACT_DIE_CROUCH_BACKSIDE = 0x198, ACT_DIE_CROUCH_LEFTSIDE = 0x199, ACT_DIE_INCAP = 0x19a, ACT_DIE_STANDING = 0x19b, ACT_OPEN_DOOR = 0x19c, ACT_DI_ALYX_ZOMBIE_MELEE = 0x19d, ACT_DI_ALYX_ZOMBIE_TORSO_MELEE = 0x19e, ACT_DI_ALYX_HEADCRAB_MELEE = 0x19f, ACT_DI_ALYX_ANTLION = 0x1a0, ACT_DI_ALYX_ZOMBIE_SHOTGUN64 = 0x1a1, ACT_DI_ALYX_ZOMBIE_SHOTGUN26 = 0x1a2, ACT_READINESS_RELAXED_TO_STIMULATED = 0x1a3, ACT_READINESS_RELAXED_TO_STIMULATED_WALK = 0x1a4, ACT_READINESS_AGITATED_TO_STIMULATED = 0x1a5, ACT_READINESS_STIMULATED_TO_RELAXED = 0x1a6, ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED = 0x1a7, ACT_READINESS_PISTOL_RELAXED_TO_STIMULATED_WALK = 0x1a8, ACT_READINESS_PISTOL_AGITATED_TO_STIMULATED = 0x1a9, ACT_READINESS_PISTOL_STIMULATED_TO_RELAXED = 0x1aa, ACT_IDLE_CARRY = 0x1ab, ACT_WALK_CARRY = 0x1ac, ACT_STARTDYING = 0x1ad, ACT_DYINGLOOP = 0x1ae, ACT_DYINGTODEAD = 0x1af, ACT_RIDE_MANNED_GUN = 0x1b0, ACT_VM_SPRINT_ENTER = 0x1b1, ACT_VM_SPRINT_IDLE = 0x1b2, ACT_VM_SPRINT_LEAVE = 0x1b3, ACT_FIRE_START = 0x1b4, ACT_FIRE_LOOP = 0x1b5, ACT_FIRE_END = 0x1b6, ACT_CROUCHING_GRENADEIDLE = 0x1b7, ACT_CROUCHING_GRENADEREADY = 0x1b8, ACT_CROUCHING_PRIMARYATTACK = 0x1b9, ACT_OVERLAY_GRENADEIDLE = 0x1ba, ACT_OVERLAY_GRENADEREADY = 0x1bb, ACT_OVERLAY_PRIMARYATTACK = 0x1bc, ACT_OVERLAY_SHIELD_UP = 0x1bd, ACT_OVERLAY_SHIELD_DOWN = 0x1be, ACT_OVERLAY_SHIELD_UP_IDLE = 0x1bf, ACT_OVERLAY_SHIELD_ATTACK = 0x1c0, ACT_OVERLAY_SHIELD_KNOCKBACK = 0x1c1, ACT_SHIELD_UP = 0x1c2, ACT_SHIELD_DOWN = 0x1c3, ACT_SHIELD_UP_IDLE = 0x1c4, ACT_SHIELD_ATTACK = 0x1c5, ACT_SHIELD_KNOCKBACK = 0x1c6, ACT_CROUCHING_SHIELD_UP = 0x1c7, ACT_CROUCHING_SHIELD_DOWN = 0x1c8, ACT_CROUCHING_SHIELD_UP_IDLE = 0x1c9, ACT_CROUCHING_SHIELD_ATTACK = 0x1ca, ACT_CROUCHING_SHIELD_KNOCKBACK = 0x1cb, ACT_TURNRIGHT45 = 0x1cc, ACT_TURNLEFT45 = 0x1cd, ACT_TURN = 0x1ce, ACT_OBJ_ASSEMBLING = 0x1cf, ACT_OBJ_DISMANTLING = 0x1d0, ACT_OBJ_STARTUP = 0x1d1, ACT_OBJ_RUNNING = 0x1d2, ACT_OBJ_IDLE = 0x1d3, ACT_OBJ_PLACING = 0x1d4, ACT_OBJ_DETERIORATING = 0x1d5, ACT_OBJ_UPGRADING = 0x1d6, ACT_DEPLOY = 0x1d7, ACT_DEPLOY_IDLE = 0x1d8, ACT_UNDEPLOY = 0x1d9, ACT_CROSSBOW_DRAW_UNLOADED = 0x1da, ACT_GAUSS_SPINUP = 0x1db, ACT_GAUSS_SPINCYCLE = 0x1dc, ACT_VM_PRIMARYATTACK_SILENCED = 0x1dd, ACT_VM_RELOAD_SILENCED = 0x1de, ACT_VM_DRYFIRE_SILENCED = 0x1df, ACT_VM_IDLE_SILENCED = 0x1e0, ACT_VM_DRAW_SILENCED = 0x1e1, ACT_VM_IDLE_EMPTY_LEFT = 0x1e2, ACT_VM_DRYFIRE_LEFT = 0x1e3, ACT_VM_IS_DRAW = 0x1e4, ACT_VM_IS_HOLSTER = 0x1e5, ACT_VM_IS_IDLE = 0x1e6, ACT_VM_IS_PRIMARYATTACK = 0x1e7, ACT_PLAYER_IDLE_FIRE = 0x1e8, ACT_PLAYER_CROUCH_FIRE = 0x1e9, ACT_PLAYER_CROUCH_WALK_FIRE = 0x1ea, ACT_PLAYER_WALK_FIRE = 0x1eb, ACT_PLAYER_RUN_FIRE = 0x1ec, ACT_IDLETORUN = 0x1ed, ACT_RUNTOIDLE = 0x1ee, ACT_VM_DRAW_DEPLOYED = 0x1ef, ACT_HL2MP_IDLE_MELEE = 0x1f0, ACT_HL2MP_RUN_MELEE = 0x1f1, ACT_HL2MP_IDLE_CROUCH_MELEE = 0x1f2, ACT_HL2MP_WALK_CROUCH_MELEE = 0x1f3, ACT_HL2MP_GESTURE_RANGE_ATTACK_MELEE = 0x1f4, ACT_HL2MP_GESTURE_RELOAD_MELEE = 0x1f5, ACT_HL2MP_JUMP_MELEE = 0x1f6, ACT_MP_STAND_IDLE = 0x1f7, ACT_MP_CROUCH_IDLE = 0x1f8, ACT_MP_CROUCH_DEPLOYED_IDLE = 0x1f9, ACT_MP_CROUCH_DEPLOYED = 0x1fa, ACT_MP_DEPLOYED_IDLE = 0x1fb, ACT_MP_RUN = 0x1fc, ACT_MP_WALK = 0x1fd, ACT_MP_AIRWALK = 0x1fe, ACT_MP_CROUCHWALK = 0x1ff, ACT_MP_SPRINT = 0x200, ACT_MP_JUMP = 0x201, ACT_MP_JUMP_START = 0x202, ACT_MP_JUMP_FLOAT = 0x203, ACT_MP_JUMP_LAND = 0x204, ACT_MP_DOUBLEJUMP = 0x205, ACT_MP_SWIM = 0x206, ACT_MP_DEPLOYED = 0x207, ACT_MP_SWIM_DEPLOYED = 0x208, ACT_MP_VCD = 0x209, ACT_MP_ATTACK_STAND_PRIMARYFIRE = 0x20a, ACT_MP_ATTACK_STAND_PRIMARYFIRE_DEPLOYED = 0x20b, ACT_MP_ATTACK_STAND_SECONDARYFIRE = 0x20c, ACT_MP_ATTACK_STAND_GRENADE = 0x20d, ACT_MP_ATTACK_CROUCH_PRIMARYFIRE = 0x20e, ACT_MP_ATTACK_CROUCH_PRIMARYFIRE_DEPLOYED = 0x20f, ACT_MP_ATTACK_CROUCH_SECONDARYFIRE = 0x210, ACT_MP_ATTACK_CROUCH_GRENADE = 0x211, ACT_MP_ATTACK_SWIM_PRIMARYFIRE = 0x212, ACT_MP_ATTACK_SWIM_SECONDARYFIRE = 0x213, ACT_MP_ATTACK_SWIM_GRENADE = 0x214, ACT_MP_ATTACK_AIRWALK_PRIMARYFIRE = 0x215, ACT_MP_ATTACK_AIRWALK_SECONDARYFIRE = 0x216, ACT_MP_ATTACK_AIRWALK_GRENADE = 0x217, ACT_MP_RELOAD_STAND = 0x218, ACT_MP_RELOAD_STAND_LOOP = 0x219, ACT_MP_RELOAD_STAND_END = 0x21a, ACT_MP_RELOAD_CROUCH = 0x21b, ACT_MP_RELOAD_CROUCH_LOOP = 0x21c, ACT_MP_RELOAD_CROUCH_END = 0x21d, ACT_MP_RELOAD_SWIM = 0x21e, ACT_MP_RELOAD_SWIM_LOOP = 0x21f, ACT_MP_RELOAD_SWIM_END = 0x220, ACT_MP_RELOAD_AIRWALK = 0x221, ACT_MP_RELOAD_AIRWALK_LOOP = 0x222, ACT_MP_RELOAD_AIRWALK_END = 0x223, ACT_MP_ATTACK_STAND_PREFIRE = 0x224, ACT_MP_ATTACK_STAND_POSTFIRE = 0x225, ACT_MP_ATTACK_STAND_STARTFIRE = 0x226, ACT_MP_ATTACK_CROUCH_PREFIRE = 0x227, ACT_MP_ATTACK_CROUCH_POSTFIRE = 0x228, ACT_MP_ATTACK_SWIM_PREFIRE = 0x229, ACT_MP_ATTACK_SWIM_POSTFIRE = 0x22a, ACT_MP_STAND_PRIMARY = 0x22b, ACT_MP_CROUCH_PRIMARY = 0x22c, ACT_MP_RUN_PRIMARY = 0x22d, ACT_MP_WALK_PRIMARY = 0x22e, ACT_MP_AIRWALK_PRIMARY = 0x22f, ACT_MP_CROUCHWALK_PRIMARY = 0x230, ACT_MP_JUMP_PRIMARY = 0x231, ACT_MP_JUMP_START_PRIMARY = 0x232, ACT_MP_JUMP_FLOAT_PRIMARY = 0x233, ACT_MP_JUMP_LAND_PRIMARY = 0x234, ACT_MP_SWIM_PRIMARY = 0x235, ACT_MP_DEPLOYED_PRIMARY = 0x236, ACT_MP_SWIM_DEPLOYED_PRIMARY = 0x237, ACT_MP_ATTACK_STAND_PRIMARY = 0x238, ACT_MP_ATTACK_STAND_PRIMARY_DEPLOYED = 0x239, ACT_MP_ATTACK_CROUCH_PRIMARY = 0x23a, ACT_MP_ATTACK_CROUCH_PRIMARY_DEPLOYED = 0x23b, ACT_MP_ATTACK_SWIM_PRIMARY = 0x23c, ACT_MP_ATTACK_AIRWALK_PRIMARY = 0x23d, ACT_MP_RELOAD_STAND_PRIMARY = 0x23e, ACT_MP_RELOAD_STAND_PRIMARY_LOOP = 0x23f, ACT_MP_RELOAD_STAND_PRIMARY_END = 0x240, ACT_MP_RELOAD_CROUCH_PRIMARY = 0x241, ACT_MP_RELOAD_CROUCH_PRIMARY_LOOP = 0x242, ACT_MP_RELOAD_CROUCH_PRIMARY_END = 0x243, ACT_MP_RELOAD_SWIM_PRIMARY = 0x244, ACT_MP_RELOAD_SWIM_PRIMARY_LOOP = 0x245, ACT_MP_RELOAD_SWIM_PRIMARY_END = 0x246, ACT_MP_RELOAD_AIRWALK_PRIMARY = 0x247, ACT_MP_RELOAD_AIRWALK_PRIMARY_LOOP = 0x248, ACT_MP_RELOAD_AIRWALK_PRIMARY_END = 0x249, ACT_MP_ATTACK_STAND_GRENADE_PRIMARY = 0x24a, ACT_MP_ATTACK_CROUCH_GRENADE_PRIMARY = 0x24b, ACT_MP_ATTACK_SWIM_GRENADE_PRIMARY = 0x24c, ACT_MP_ATTACK_AIRWALK_GRENADE_PRIMARY = 0x24d, ACT_MP_STAND_SECONDARY = 0x24e, ACT_MP_CROUCH_SECONDARY = 0x24f, ACT_MP_RUN_SECONDARY = 0x250, ACT_MP_WALK_SECONDARY = 0x251, ACT_MP_AIRWALK_SECONDARY = 0x252, ACT_MP_CROUCHWALK_SECONDARY = 0x253, ACT_MP_JUMP_SECONDARY = 0x254, ACT_MP_JUMP_START_SECONDARY = 0x255, ACT_MP_JUMP_FLOAT_SECONDARY = 0x256, ACT_MP_JUMP_LAND_SECONDARY = 0x257, ACT_MP_SWIM_SECONDARY = 0x258, ACT_MP_ATTACK_STAND_SECONDARY = 0x259, ACT_MP_ATTACK_CROUCH_SECONDARY = 0x25a, ACT_MP_ATTACK_SWIM_SECONDARY = 0x25b, ACT_MP_ATTACK_AIRWALK_SECONDARY = 0x25c, ACT_MP_RELOAD_STAND_SECONDARY = 0x25d, ACT_MP_RELOAD_STAND_SECONDARY_LOOP = 0x25e, ACT_MP_RELOAD_STAND_SECONDARY_END = 0x25f, ACT_MP_RELOAD_CROUCH_SECONDARY = 0x260, ACT_MP_RELOAD_CROUCH_SECONDARY_LOOP = 0x261, ACT_MP_RELOAD_CROUCH_SECONDARY_END = 0x262, ACT_MP_RELOAD_SWIM_SECONDARY = 0x263, ACT_MP_RELOAD_SWIM_SECONDARY_LOOP = 0x264, ACT_MP_RELOAD_SWIM_SECONDARY_END = 0x265, ACT_MP_RELOAD_AIRWALK_SECONDARY = 0x266, ACT_MP_RELOAD_AIRWALK_SECONDARY_LOOP = 0x267, ACT_MP_RELOAD_AIRWALK_SECONDARY_END = 0x268, ACT_MP_ATTACK_STAND_GRENADE_SECONDARY = 0x269, ACT_MP_ATTACK_CROUCH_GRENADE_SECONDARY = 0x26a, ACT_MP_ATTACK_SWIM_GRENADE_SECONDARY = 0x26b, ACT_MP_ATTACK_AIRWALK_GRENADE_SECONDARY = 0x26c, ACT_MP_STAND_MELEE = 0x26d, ACT_MP_CROUCH_MELEE = 0x26e, ACT_MP_RUN_MELEE = 0x26f, ACT_MP_WALK_MELEE = 0x270, ACT_MP_AIRWALK_MELEE = 0x271, ACT_MP_CROUCHWALK_MELEE = 0x272, ACT_MP_JUMP_MELEE = 0x273, ACT_MP_JUMP_START_MELEE = 0x274, ACT_MP_JUMP_FLOAT_MELEE = 0x275, ACT_MP_JUMP_LAND_MELEE = 0x276, ACT_MP_SWIM_MELEE = 0x277, ACT_MP_ATTACK_STAND_MELEE = 0x278, ACT_MP_ATTACK_STAND_MELEE_SECONDARY = 0x279, ACT_MP_ATTACK_CROUCH_MELEE = 0x27a, ACT_MP_ATTACK_CROUCH_MELEE_SECONDARY = 0x27b, ACT_MP_ATTACK_SWIM_MELEE = 0x27c, ACT_MP_ATTACK_AIRWALK_MELEE = 0x27d, ACT_MP_ATTACK_STAND_GRENADE_MELEE = 0x27e, ACT_MP_ATTACK_CROUCH_GRENADE_MELEE = 0x27f, ACT_MP_ATTACK_SWIM_GRENADE_MELEE = 0x280, ACT_MP_ATTACK_AIRWALK_GRENADE_MELEE = 0x281, ACT_MP_STAND_ITEM1 = 0x282, ACT_MP_CROUCH_ITEM1 = 0x283, ACT_MP_RUN_ITEM1 = 0x284, ACT_MP_WALK_ITEM1 = 0x285, ACT_MP_AIRWALK_ITEM1 = 0x286, ACT_MP_CROUCHWALK_ITEM1 = 0x287, ACT_MP_JUMP_ITEM1 = 0x288, ACT_MP_JUMP_START_ITEM1 = 0x289, ACT_MP_JUMP_FLOAT_ITEM1 = 0x28a, ACT_MP_JUMP_LAND_ITEM1 = 0x28b, ACT_MP_SWIM_ITEM1 = 0x28c, ACT_MP_ATTACK_STAND_ITEM1 = 0x28d, ACT_MP_ATTACK_STAND_ITEM1_SECONDARY = 0x28e, ACT_MP_ATTACK_CROUCH_ITEM1 = 0x28f, ACT_MP_ATTACK_CROUCH_ITEM1_SECONDARY = 0x290, ACT_MP_ATTACK_SWIM_ITEM1 = 0x291, ACT_MP_ATTACK_AIRWALK_ITEM1 = 0x292, ACT_MP_STAND_ITEM2 = 0x293, ACT_MP_CROUCH_ITEM2 = 0x294, ACT_MP_RUN_ITEM2 = 0x295, ACT_MP_WALK_ITEM2 = 0x296, ACT_MP_AIRWALK_ITEM2 = 0x297, ACT_MP_CROUCHWALK_ITEM2 = 0x298, ACT_MP_JUMP_ITEM2 = 0x299, ACT_MP_JUMP_START_ITEM2 = 0x29a, ACT_MP_JUMP_FLOAT_ITEM2 = 0x29b, ACT_MP_JUMP_LAND_ITEM2 = 0x29c, ACT_MP_SWIM_ITEM2 = 0x29d, ACT_MP_ATTACK_STAND_ITEM2 = 0x29e, ACT_MP_ATTACK_STAND_ITEM2_SECONDARY = 0x29f, ACT_MP_ATTACK_CROUCH_ITEM2 = 0x2a0, ACT_MP_ATTACK_CROUCH_ITEM2_SECONDARY = 0x2a1, ACT_MP_ATTACK_SWIM_ITEM2 = 0x2a2, ACT_MP_ATTACK_AIRWALK_ITEM2 = 0x2a3, ACT_MP_GESTURE_FLINCH = 0x2a4, ACT_MP_GESTURE_FLINCH_PRIMARY = 0x2a5, ACT_MP_GESTURE_FLINCH_SECONDARY = 0x2a6, ACT_MP_GESTURE_FLINCH_MELEE = 0x2a7, ACT_MP_GESTURE_FLINCH_ITEM1 = 0x2a8, ACT_MP_GESTURE_FLINCH_ITEM2 = 0x2a9, ACT_MP_GESTURE_FLINCH_HEAD = 0x2aa, ACT_MP_GESTURE_FLINCH_CHEST = 0x2ab, ACT_MP_GESTURE_FLINCH_STOMACH = 0x2ac, ACT_MP_GESTURE_FLINCH_LEFTARM = 0x2ad, ACT_MP_GESTURE_FLINCH_RIGHTARM = 0x2ae, ACT_MP_GESTURE_FLINCH_LEFTLEG = 0x2af, ACT_MP_GESTURE_FLINCH_RIGHTLEG = 0x2b0, ACT_MP_GRENADE1_DRAW = 0x2b1, ACT_MP_GRENADE1_IDLE = 0x2b2, ACT_MP_GRENADE1_ATTACK = 0x2b3, ACT_MP_GRENADE2_DRAW = 0x2b4, ACT_MP_GRENADE2_IDLE = 0x2b5, ACT_MP_GRENADE2_ATTACK = 0x2b6, ACT_MP_PRIMARY_GRENADE1_DRAW = 0x2b7, ACT_MP_PRIMARY_GRENADE1_IDLE = 0x2b8, ACT_MP_PRIMARY_GRENADE1_ATTACK = 0x2b9, ACT_MP_PRIMARY_GRENADE2_DRAW = 0x2ba, ACT_MP_PRIMARY_GRENADE2_IDLE = 0x2bb, ACT_MP_PRIMARY_GRENADE2_ATTACK = 0x2bc, ACT_MP_SECONDARY_GRENADE1_DRAW = 0x2bd, ACT_MP_SECONDARY_GRENADE1_IDLE = 0x2be, ACT_MP_SECONDARY_GRENADE1_ATTACK = 0x2bf, ACT_MP_SECONDARY_GRENADE2_DRAW = 0x2c0, ACT_MP_SECONDARY_GRENADE2_IDLE = 0x2c1, ACT_MP_SECONDARY_GRENADE2_ATTACK = 0x2c2, ACT_MP_MELEE_GRENADE1_DRAW = 0x2c3, ACT_MP_MELEE_GRENADE1_IDLE = 0x2c4, ACT_MP_MELEE_GRENADE1_ATTACK = 0x2c5, ACT_MP_MELEE_GRENADE2_DRAW = 0x2c6, ACT_MP_MELEE_GRENADE2_IDLE = 0x2c7, ACT_MP_MELEE_GRENADE2_ATTACK = 0x2c8, ACT_MP_ITEM1_GRENADE1_DRAW = 0x2c9, ACT_MP_ITEM1_GRENADE1_IDLE = 0x2ca, ACT_MP_ITEM1_GRENADE1_ATTACK = 0x2cb, ACT_MP_ITEM1_GRENADE2_DRAW = 0x2cc, ACT_MP_ITEM1_GRENADE2_IDLE = 0x2cd, ACT_MP_ITEM1_GRENADE2_ATTACK = 0x2ce, ACT_MP_ITEM2_GRENADE1_DRAW = 0x2cf, ACT_MP_ITEM2_GRENADE1_IDLE = 0x2d0, ACT_MP_ITEM2_GRENADE1_ATTACK = 0x2d1, ACT_MP_ITEM2_GRENADE2_DRAW = 0x2d2, ACT_MP_ITEM2_GRENADE2_IDLE = 0x2d3, ACT_MP_ITEM2_GRENADE2_ATTACK = 0x2d4, ACT_MP_STAND_BUILDING = 0x2d5, ACT_MP_CROUCH_BUILDING = 0x2d6, ACT_MP_RUN_BUILDING = 0x2d7, ACT_MP_WALK_BUILDING = 0x2d8, ACT_MP_AIRWALK_BUILDING = 0x2d9, ACT_MP_CROUCHWALK_BUILDING = 0x2da, ACT_MP_JUMP_BUILDING = 0x2db, ACT_MP_JUMP_START_BUILDING = 0x2dc, ACT_MP_JUMP_FLOAT_BUILDING = 0x2dd, ACT_MP_JUMP_LAND_BUILDING = 0x2de, ACT_MP_SWIM_BUILDING = 0x2df, ACT_MP_ATTACK_STAND_BUILDING = 0x2e0, ACT_MP_ATTACK_CROUCH_BUILDING = 0x2e1, ACT_MP_ATTACK_SWIM_BUILDING = 0x2e2, ACT_MP_ATTACK_AIRWALK_BUILDING = 0x2e3, ACT_MP_ATTACK_STAND_GRENADE_BUILDING = 0x2e4, ACT_MP_ATTACK_CROUCH_GRENADE_BUILDING = 0x2e5, ACT_MP_ATTACK_SWIM_GRENADE_BUILDING = 0x2e6, ACT_MP_ATTACK_AIRWALK_GRENADE_BUILDING = 0x2e7, ACT_MP_STAND_PDA = 0x2e8, ACT_MP_CROUCH_PDA = 0x2e9, ACT_MP_RUN_PDA = 0x2ea, ACT_MP_WALK_PDA = 0x2eb, ACT_MP_AIRWALK_PDA = 0x2ec, ACT_MP_CROUCHWALK_PDA = 0x2ed, ACT_MP_JUMP_PDA = 0x2ee, ACT_MP_JUMP_START_PDA = 0x2ef, ACT_MP_JUMP_FLOAT_PDA = 0x2f0, ACT_MP_JUMP_LAND_PDA = 0x2f1, ACT_MP_SWIM_PDA = 0x2f2, ACT_MP_ATTACK_STAND_PDA = 0x2f3, ACT_MP_ATTACK_SWIM_PDA = 0x2f4, ACT_MP_GESTURE_VC_HANDMOUTH = 0x2f5, ACT_MP_GESTURE_VC_FINGERPOINT = 0x2f6, ACT_MP_GESTURE_VC_FISTPUMP = 0x2f7, ACT_MP_GESTURE_VC_THUMBSUP = 0x2f8, ACT_MP_GESTURE_VC_NODYES = 0x2f9, ACT_MP_GESTURE_VC_NODNO = 0x2fa, ACT_MP_GESTURE_VC_HANDMOUTH_PRIMARY = 0x2fb, ACT_MP_GESTURE_VC_FINGERPOINT_PRIMARY = 0x2fc, ACT_MP_GESTURE_VC_FISTPUMP_PRIMARY = 0x2fd, ACT_MP_GESTURE_VC_THUMBSUP_PRIMARY = 0x2fe, ACT_MP_GESTURE_VC_NODYES_PRIMARY = 0x2ff, ACT_MP_GESTURE_VC_NODNO_PRIMARY = 0x300, ACT_MP_GESTURE_VC_HANDMOUTH_SECONDARY = 0x301, ACT_MP_GESTURE_VC_FINGERPOINT_SECONDARY = 0x302, ACT_MP_GESTURE_VC_FISTPUMP_SECONDARY = 0x303, ACT_MP_GESTURE_VC_THUMBSUP_SECONDARY = 0x304, ACT_MP_GESTURE_VC_NODYES_SECONDARY = 0x305, ACT_MP_GESTURE_VC_NODNO_SECONDARY = 0x306, ACT_MP_GESTURE_VC_HANDMOUTH_MELEE = 0x307, ACT_MP_GESTURE_VC_FINGERPOINT_MELEE = 0x308, ACT_MP_GESTURE_VC_FISTPUMP_MELEE = 0x309, ACT_MP_GESTURE_VC_THUMBSUP_MELEE = 0x30a, ACT_MP_GESTURE_VC_NODYES_MELEE = 0x30b, ACT_MP_GESTURE_VC_NODNO_MELEE = 0x30c, ACT_MP_GESTURE_VC_HANDMOUTH_ITEM1 = 0x30d, ACT_MP_GESTURE_VC_FINGERPOINT_ITEM1 = 0x30e, ACT_MP_GESTURE_VC_FISTPUMP_ITEM1 = 0x30f, ACT_MP_GESTURE_VC_THUMBSUP_ITEM1 = 0x310, ACT_MP_GESTURE_VC_NODYES_ITEM1 = 0x311, ACT_MP_GESTURE_VC_NODNO_ITEM1 = 0x312, ACT_MP_GESTURE_VC_HANDMOUTH_ITEM2 = 0x313, ACT_MP_GESTURE_VC_FINGERPOINT_ITEM2 = 0x314, ACT_MP_GESTURE_VC_FISTPUMP_ITEM2 = 0x315, ACT_MP_GESTURE_VC_THUMBSUP_ITEM2 = 0x316, ACT_MP_GESTURE_VC_NODYES_ITEM2 = 0x317, ACT_MP_GESTURE_VC_NODNO_ITEM2 = 0x318, ACT_MP_GESTURE_VC_HANDMOUTH_BUILDING = 0x319, ACT_MP_GESTURE_VC_FINGERPOINT_BUILDING = 0x31a, ACT_MP_GESTURE_VC_FISTPUMP_BUILDING = 0x31b, ACT_MP_GESTURE_VC_THUMBSUP_BUILDING = 0x31c, ACT_MP_GESTURE_VC_NODYES_BUILDING = 0x31d, ACT_MP_GESTURE_VC_NODNO_BUILDING = 0x31e, ACT_MP_GESTURE_VC_HANDMOUTH_PDA = 0x31f, ACT_MP_GESTURE_VC_FINGERPOINT_PDA = 0x320, ACT_MP_GESTURE_VC_FISTPUMP_PDA = 0x321, ACT_MP_GESTURE_VC_THUMBSUP_PDA = 0x322, ACT_MP_GESTURE_VC_NODYES_PDA = 0x323, ACT_MP_GESTURE_VC_NODNO_PDA = 0x324, ACT_VM_UNUSABLE = 0x325, ACT_VM_UNUSABLE_TO_USABLE = 0x326, ACT_VM_USABLE_TO_UNUSABLE = 0x327, ACT_PRIMARY_VM_DRAW = 0x328, ACT_PRIMARY_VM_HOLSTER = 0x329, ACT_PRIMARY_VM_IDLE = 0x32a, ACT_PRIMARY_VM_PULLBACK = 0x32b, ACT_PRIMARY_VM_PRIMARYATTACK = 0x32c, ACT_PRIMARY_VM_SECONDARYATTACK = 0x32d, ACT_PRIMARY_VM_RELOAD = 0x32e, ACT_PRIMARY_VM_DRYFIRE = 0x32f, ACT_PRIMARY_VM_IDLE_TO_LOWERED = 0x330, ACT_PRIMARY_VM_IDLE_LOWERED = 0x331, ACT_PRIMARY_VM_LOWERED_TO_IDLE = 0x332, ACT_SECONDARY_VM_DRAW = 0x333, ACT_SECONDARY_VM_HOLSTER = 0x334, ACT_SECONDARY_VM_IDLE = 0x335, ACT_SECONDARY_VM_PULLBACK = 0x336, ACT_SECONDARY_VM_PRIMARYATTACK = 0x337, ACT_SECONDARY_VM_SECONDARYATTACK = 0x338, ACT_SECONDARY_VM_RELOAD = 0x339, ACT_SECONDARY_VM_DRYFIRE = 0x33a, ACT_SECONDARY_VM_IDLE_TO_LOWERED = 0x33b, ACT_SECONDARY_VM_IDLE_LOWERED = 0x33c, ACT_SECONDARY_VM_LOWERED_TO_IDLE = 0x33d, ACT_MELEE_VM_DRAW = 0x33e, ACT_MELEE_VM_HOLSTER = 0x33f, ACT_MELEE_VM_IDLE = 0x340, ACT_MELEE_VM_PULLBACK = 0x341, ACT_MELEE_VM_PRIMARYATTACK = 0x342, ACT_MELEE_VM_SECONDARYATTACK = 0x343, ACT_MELEE_VM_RELOAD = 0x344, ACT_MELEE_VM_DRYFIRE = 0x345, ACT_MELEE_VM_IDLE_TO_LOWERED = 0x346, ACT_MELEE_VM_IDLE_LOWERED = 0x347, ACT_MELEE_VM_LOWERED_TO_IDLE = 0x348, ACT_PDA_VM_DRAW = 0x349, ACT_PDA_VM_HOLSTER = 0x34a, ACT_PDA_VM_IDLE = 0x34b, ACT_PDA_VM_PULLBACK = 0x34c, ACT_PDA_VM_PRIMARYATTACK = 0x34d, ACT_PDA_VM_SECONDARYATTACK = 0x34e, ACT_PDA_VM_RELOAD = 0x34f, ACT_PDA_VM_DRYFIRE = 0x350, ACT_PDA_VM_IDLE_TO_LOWERED = 0x351, ACT_PDA_VM_IDLE_LOWERED = 0x352, ACT_PDA_VM_LOWERED_TO_IDLE = 0x353, ACT_ITEM1_VM_DRAW = 0x354, ACT_ITEM1_VM_HOLSTER = 0x355, ACT_ITEM1_VM_IDLE = 0x356, ACT_ITEM1_VM_PULLBACK = 0x357, ACT_ITEM1_VM_PRIMARYATTACK = 0x358, ACT_ITEM1_VM_SECONDARYATTACK = 0x359, ACT_ITEM1_VM_RELOAD = 0x35a, ACT_ITEM1_VM_DRYFIRE = 0x35b, ACT_ITEM1_VM_IDLE_TO_LOWERED = 0x35c, ACT_ITEM1_VM_IDLE_LOWERED = 0x35d, ACT_ITEM1_VM_LOWERED_TO_IDLE = 0x35e, ACT_ITEM2_VM_DRAW = 0x35f, ACT_ITEM2_VM_HOLSTER = 0x360, ACT_ITEM2_VM_IDLE = 0x361, ACT_ITEM2_VM_PULLBACK = 0x362, ACT_ITEM2_VM_PRIMARYATTACK = 0x363, ACT_ITEM2_VM_SECONDARYATTACK = 0x364, ACT_ITEM2_VM_RELOAD = 0x365, ACT_ITEM2_VM_DRYFIRE = 0x366, ACT_ITEM2_VM_IDLE_TO_LOWERED = 0x367, ACT_ITEM2_VM_IDLE_LOWERED = 0x368, ACT_ITEM2_VM_LOWERED_TO_IDLE = 0x369, ACT_RELOAD_SUCCEED = 0x36a, ACT_RELOAD_FAIL = 0x36b, ACT_WALK_AIM_AUTOGUN = 0x36c, ACT_RUN_AIM_AUTOGUN = 0x36d, ACT_IDLE_AUTOGUN = 0x36e, ACT_IDLE_AIM_AUTOGUN = 0x36f, ACT_RELOAD_AUTOGUN = 0x370, ACT_CROUCH_IDLE_AUTOGUN = 0x371, ACT_RANGE_ATTACK_AUTOGUN = 0x372, ACT_JUMP_AUTOGUN = 0x373, ACT_IDLE_AIM_PISTOL = 0x374, ACT_WALK_AIM_DUAL = 0x375, ACT_RUN_AIM_DUAL = 0x376, ACT_IDLE_DUAL = 0x377, ACT_IDLE_AIM_DUAL = 0x378, ACT_RELOAD_DUAL = 0x379, ACT_CROUCH_IDLE_DUAL = 0x37a, ACT_RANGE_ATTACK_DUAL = 0x37b, ACT_JUMP_DUAL = 0x37c, ACT_IDLE_AIM_SHOTGUN = 0x37d, ACT_CROUCH_IDLE_SHOTGUN = 0x37e, ACT_IDLE_AIM_RIFLE = 0x37f, ACT_CROUCH_IDLE_RIFLE = 0x380, ACT_RANGE_ATTACK_RIFLE = 0x381, ACT_SLEEP = 0x382, ACT_WAKE = 0x383, ACT_FLICK_LEFT = 0x384, ACT_FLICK_LEFT_MIDDLE = 0x385, ACT_FLICK_RIGHT_MIDDLE = 0x386, ACT_FLICK_RIGHT = 0x387, ACT_SPINAROUND = 0x388, ACT_PREP_TO_FIRE = 0x389, ACT_FIRE = 0x38a, ACT_FIRE_RECOVER = 0x38b, ACT_SPRAY = 0x38c, ACT_PREP_EXPLODE = 0x38d, ACT_EXPLODE = 0x38e, ACT_SCRIPT_CUSTOM_0 = 0x38f, ACT_SCRIPT_CUSTOM_1 = 0x390, ACT_SCRIPT_CUSTOM_2 = 0x391, ACT_SCRIPT_CUSTOM_3 = 0x392, ACT_SCRIPT_CUSTOM_4 = 0x393, ACT_SCRIPT_CUSTOM_5 = 0x394, ACT_SCRIPT_CUSTOM_6 = 0x395, ACT_SCRIPT_CUSTOM_7 = 0x396, ACT_SCRIPT_CUSTOM_8 = 0x397, ACT_SCRIPT_CUSTOM_9 = 0x398, ACT_SCRIPT_CUSTOM_10 = 0x399, ACT_SCRIPT_CUSTOM_11 = 0x39a, ACT_SCRIPT_CUSTOM_12 = 0x39b, ACT_SCRIPT_CUSTOM_13 = 0x39c, ACT_SCRIPT_CUSTOM_14 = 0x39d, ACT_SCRIPT_CUSTOM_15 = 0x39e, ACT_SCRIPT_CUSTOM_16 = 0x39f, ACT_SCRIPT_CUSTOM_17 = 0x3a0, ACT_SCRIPT_CUSTOM_18 = 0x3a1, ACT_SCRIPT_CUSTOM_19 = 0x3a2, ACT_SCRIPT_CUSTOM_20 = 0x3a3, ACT_SCRIPT_CUSTOM_21 = 0x3a4, ACT_SCRIPT_CUSTOM_22 = 0x3a5, ACT_SCRIPT_CUSTOM_23 = 0x3a6, ACT_SCRIPT_CUSTOM_24 = 0x3a7, ACT_SCRIPT_CUSTOM_25 = 0x3a8, ACT_SCRIPT_CUSTOM_26 = 0x3a9, ACT_SCRIPT_CUSTOM_27 = 0x3aa, ACT_SCRIPT_CUSTOM_28 = 0x3ab, ACT_SCRIPT_CUSTOM_29 = 0x3ac, ACT_SCRIPT_CUSTOM_30 = 0x3ad, ACT_SCRIPT_CUSTOM_31 = 0x3ae, ACT_VR_PISTOL_LAST_SHOT = 0x3af, ACT_VR_PISTOL_SLIDE_RELEASE = 0x3b0, ACT_VR_PISTOL_CLIP_OUT_CHAMBERED = 0x3b1, ACT_VR_PISTOL_CLIP_OUT_SLIDE_BACK = 0x3b2, ACT_VR_PISTOL_CLIP_IN_CHAMBERED = 0x3b3, ACT_VR_PISTOL_CLIP_IN_SLIDE_BACK = 0x3b4, ACT_VR_PISTOL_IDLE_SLIDE_BACK = 0x3b5, ACT_VR_PISTOL_IDLE_SLIDE_BACK_CLIP_READY = 0x3b6, ACT_RAGDOLL_RECOVERY_FRONT = 0x3b7, ACT_RAGDOLL_RECOVERY_BACK = 0x3b8, ACT_RAGDOLL_RECOVERY_LEFT = 0x3b9, ACT_RAGDOLL_RECOVERY_RIGHT = 0x3ba, ACT_GRABBITYGLOVES_GRAB = 0x3bb, ACT_GRABBITYGLOVES_RELEASE = 0x3bc, ACT_GRABBITYGLOVES_GRAB_IDLE = 0x3bd, ACT_GRABBITYGLOVES_ACTIVE = 0x3be, ACT_GRABBITYGLOVES_ACTIVE_IDLE = 0x3bf, ACT_GRABBITYGLOVES_DEACTIVATE = 0x3c0, ACT_GRABBITYGLOVES_PULL = 0x3c1, ACT_HEADCRAB_SMOKE_BOMB = 0x3c2, ACT_HEADCRAB_SPIT = 0x3c3, ACT_ZOMBIE_TRIP = 0x3c4, ACT_ZOMBIE_LUNGE = 0x3c5, ACT_NEUTRAL_REF_POSE = 0x3c6, ACT_ANTLION_SCUTTLE_FORWARD = 0x3c7, ACT_ANTLION_SCUTTLE_BACK = 0x3c8, ACT_ANTLION_SCUTTLE_LEFT = 0x3c9, ACT_ANTLION_SCUTTLE_RIGHT = 0x3ca, ACT_VR_PISTOL_EMPTY_CLIP_IN_SLIDE_BACK = 0x3cb, ACT_VR_SHOTGUN_IDLE = 0x3cc, ACT_VR_SHOTGUN_OPEN_CHAMBER = 0x3cd, ACT_VR_SHOTGUN_RELOAD_1 = 0x3ce, ACT_VR_SHOTGUN_RELOAD_2 = 0x3cf, ACT_VR_SHOTGUN_RELOAD_3 = 0x3d0, ACT_VR_SHOTGUN_CLOSE_CHAMBER = 0x3d1, ACT_VR_SHOTGUN_TRIGGER_SQUEEZE = 0x3d2, ACT_VR_SHOTGUN_SHOOT = 0x3d3, ACT_VR_SHOTGUN_SLIDE_BACK = 0x3d4, ACT_VR_SHOTGUN_SLIDE_FORWARD = 0x3d5, ACT_VR_PISTOL_LONG_CLIP_IN_CHAMBERED = 0x3d6, ACT_VR_PISTOL_LONG_CLIP_IN_SLIDE_BACK = 0x3d7, ACT_VR_PISTOL_BURST_TOGGLE = 0x3d8, ACT_VR_PISTOL_LOW_KICK = 0x3d9, ACT_VR_PISTOL_BURST_ATTACK = 0x3da, ACT_VR_SHOTGUN_GRENADE_TWIST = 0x3db, ACT_DIE_STAND = 0x3dc, ACT_DIE_STAND_HEADSHOT = 0x3dd, ACT_DIE_CROUCH = 0x3de, ACT_DIE_CROUCH_HEADSHOT = 0x3df, ACT_CSGO_NULL = 0x3e0, ACT_CSGO_DEFUSE = 0x3e1, ACT_CSGO_DEFUSE_WITH_KIT = 0x3e2, ACT_CSGO_FLASHBANG_REACTION = 0x3e3, ACT_CSGO_FIRE_PRIMARY = 0x3e4, ACT_CSGO_FIRE_PRIMARY_OPT_1 = 0x3e5, ACT_CSGO_FIRE_PRIMARY_OPT_2 = 0x3e6, ACT_CSGO_FIRE_SECONDARY = 0x3e7, ACT_CSGO_FIRE_SECONDARY_OPT_1 = 0x3e8, ACT_CSGO_FIRE_SECONDARY_OPT_2 = 0x3e9, ACT_CSGO_RELOAD = 0x3ea, ACT_CSGO_RELOAD_START = 0x3eb, ACT_CSGO_RELOAD_LOOP = 0x3ec, ACT_CSGO_RELOAD_END = 0x3ed, ACT_CSGO_OPERATE = 0x3ee, ACT_CSGO_DEPLOY = 0x3ef, ACT_CSGO_CATCH = 0x3f0, ACT_CSGO_SILENCER_DETACH = 0x3f1, ACT_CSGO_SILENCER_ATTACH = 0x3f2, ACT_CSGO_TWITCH = 0x3f3, ACT_CSGO_TWITCH_BUYZONE = 0x3f4, ACT_CSGO_PLANT_BOMB = 0x3f5, ACT_CSGO_IDLE_TURN_BALANCEADJUST = 0x3f6, ACT_CSGO_IDLE_ADJUST_STOPPEDMOVING = 0x3f7, ACT_CSGO_ALIVE_LOOP = 0x3f8, ACT_CSGO_FLINCH = 0x3f9, ACT_CSGO_FLINCH_HEAD = 0x3fa, ACT_CSGO_FLINCH_MOLOTOV = 0x3fb, ACT_CSGO_JUMP = 0x3fc, ACT_CSGO_FALL = 0x3fd, ACT_CSGO_CLIMB_LADDER = 0x3fe, ACT_CSGO_LAND_LIGHT = 0x3ff, ACT_CSGO_LAND_HEAVY = 0x400, ACT_CSGO_EXIT_LADDER_TOP = 0x401, ACT_CSGO_EXIT_LADDER_BOTTOM = 0x402, ACT_CSGO_PARACHUTE = 0x403, ACT_CSGO_TAUNT = 0x404, }; // Alignment: 4 // Size: 0x3 enum class AmmoFlags_t : uint32_t { AMMO_FORCE_DROP_IF_CARRIED = 0x1, AMMO_RESERVE_STAYS_WITH_WEAPON = 0x2, AMMO_FLAG_MAX = 0x2, }; // Alignment: 4 // Size: 0xd enum class TakeDamageFlags_t : uint32_t { DFLAG_NONE = 0x0, DFLAG_SUPPRESS_HEALTH_CHANGES = 0x1, DFLAG_SUPPRESS_PHYSICS_FORCE = 0x2, DFLAG_SUPPRESS_EFFECTS = 0x4, DFLAG_PREVENT_DEATH = 0x8, DFLAG_FORCE_DEATH = 0x10, DFLAG_ALWAYS_GIB = 0x20, DFLAG_NEVER_GIB = 0x40, DFLAG_REMOVE_NO_RAGDOLL = 0x80, DFLAG_SUPPRESS_DAMAGE_MODIFICATION = 0x100, DFLAG_ALWAYS_FIRE_DAMAGE_EVENTS = 0x200, DFLAG_RADIUS_DMG = 0x400, DMG_LASTDFLAG = 0x400, }; // Alignment: 4 // Size: 0x16 enum class DamageTypes_t : uint32_t { DMG_GENERIC = 0x0, DMG_CRUSH = 0x1, DMG_BULLET = 0x2, DMG_SLASH = 0x4, DMG_BURN = 0x8, DMG_VEHICLE = 0x10, DMG_FALL = 0x20, DMG_BLAST = 0x40, DMG_CLUB = 0x80, DMG_SHOCK = 0x100, DMG_SONIC = 0x200, DMG_ENERGYBEAM = 0x400, DMG_DROWN = 0x4000, DMG_POISON = 0x8000, DMG_RADIATION = 0x10000, DMG_DROWNRECOVER = 0x20000, DMG_ACID = 0x40000, DMG_PHYSGUN = 0x100000, DMG_DISSOLVE = 0x200000, DMG_BLAST_SURFACE = 0x400000, DMG_BUCKSHOT = 0x1000000, DMG_LASTGENERICFLAG = 0x1000000, }; // Alignment: 4 // Size: 0x11 enum class BaseExplosionTypes_t : uint32_t { EXPLOSION_TYPE_DEFAULT = 0x0, EXPLOSION_TYPE_GRENADE = 0x1, EXPLOSION_TYPE_MOLOTOV = 0x2, EXPLOSION_TYPE_FIREWORKS = 0x3, EXPLOSION_TYPE_GASCAN = 0x4, EXPLOSION_TYPE_GASCYLINDER = 0x5, EXPLOSION_TYPE_EXPLOSIVEBARREL = 0x6, EXPLOSION_TYPE_ELECTRICAL = 0x7, EXPLOSION_TYPE_EMP = 0x8, EXPLOSION_TYPE_SHRAPNEL = 0x9, EXPLOSION_TYPE_SMOKEGRENADE = 0xa, EXPLOSION_TYPE_FLASHBANG = 0xb, EXPLOSION_TYPE_TRIPMINE = 0xc, EXPLOSION_TYPE_ICE = 0xd, EXPLOSION_TYPE_NONE = 0xe, EXPLOSION_TYPE_CUSTOM = 0xf, EXPLOSION_TYPE_COUNT = 0x10, }; // Alignment: 1 // Size: 0x3 enum class DamageOptions_t : uint8_t { DAMAGE_NO = 0x0, DAMAGE_EVENTS_ONLY = 0x1, DAMAGE_YES = 0x2, }; // Alignment: 4 // Size: 0x6 enum class HierarchyType_t : uint32_t { HIERARCHY_NONE = 0x0, HIERARCHY_BONE_MERGE = 0x1, HIERARCHY_ATTACHMENT = 0x2, HIERARCHY_ABSORIGIN = 0x3, HIERARCHY_BONE = 0x4, HIERARCHY_TYPE_COUNT = 0x5, }; // Alignment: 4 // Size: 0x3 enum class CanPlaySequence_t : uint32_t { CANNOT_PLAY = 0x0, CAN_PLAY_NOW = 0x1, CAN_PLAY_ENQUEUED = 0x2, }; // Alignment: 4 // Size: 0x6 enum class ScriptedMoveTo_t : uint32_t { CINE_MOVETO_WAIT = 0x0, CINE_MOVETO_WALK = 0x1, CINE_MOVETO_RUN = 0x2, CINE_MOVETO_CUSTOM = 0x3, CINE_MOVETO_TELEPORT = 0x4, CINE_MOVETO_WAIT_FACING = 0x5, }; // Alignment: 4 // Size: 0x4 enum class ScriptedOnDeath_t : uint32_t { SS_ONDEATH_NOT_APPLICABLE = 0xffffffffffffffff, SS_ONDEATH_UNDEFINED = 0x0, SS_ONDEATH_RAGDOLL = 0x1, SS_ONDEATH_ANIMATED_DEATH = 0x2, }; // Alignment: 4 // Size: 0x7 enum class IChoreoServices__ScriptState_t : uint32_t { SCRIPT_PLAYING = 0x0, SCRIPT_WAIT = 0x1, SCRIPT_POST_IDLE = 0x2, SCRIPT_CLEANUP = 0x3, SCRIPT_WALK_TO_MARK = 0x4, SCRIPT_RUN_TO_MARK = 0x5, SCRIPT_CUSTOM_MOVE_TO_MARK = 0x6, }; // Alignment: 4 // Size: 0x7 enum class IChoreoServices__ChoreoState_t : uint32_t { STATE_PRE_SCRIPT = 0x0, STATE_WAIT_FOR_SCRIPT = 0x1, STATE_WALK_TO_MARK = 0x2, STATE_SYNCHRONIZE_SCRIPT = 0x3, STATE_PLAY_SCRIPT = 0x4, STATE_PLAY_SCRIPT_POST_IDLE = 0x5, STATE_PLAY_SCRIPT_POST_IDLE_DONE = 0x6, }; // Alignment: 8 // Size: 0x12 enum class InputBitMask_t : uint64_t { IN_NONE = 0x0, IN_ALL = 0xffffffffffffffff, IN_ATTACK = 0x1, IN_JUMP = 0x2, IN_DUCK = 0x4, IN_FORWARD = 0x8, IN_BACK = 0x10, IN_USE = 0x20, IN_TURNLEFT = 0x80, IN_TURNRIGHT = 0x100, IN_MOVELEFT = 0x200, IN_MOVERIGHT = 0x400, IN_ATTACK2 = 0x800, IN_RELOAD = 0x2000, IN_SPEED = 0x10000, IN_JOYAUTOSPRINT = 0x20000, IN_FIRST_MOD_SPECIFIC_BIT = 0x100000000, IN_QUERY = 0x100000000, }; // Alignment: 4 // Size: 0x9 enum class EInButtonState : uint32_t { IN_BUTTON_UP = 0x0, IN_BUTTON_DOWN = 0x1, IN_BUTTON_DOWN_UP = 0x2, IN_BUTTON_UP_DOWN = 0x3, IN_BUTTON_UP_DOWN_UP = 0x4, IN_BUTTON_DOWN_UP_DOWN = 0x5, IN_BUTTON_DOWN_UP_DOWN_UP = 0x6, IN_BUTTON_UP_DOWN_UP_DOWN = 0x7, IN_BUTTON_STATE_COUNT = 0x8, }; // Alignment: 4 // Size: 0x6 enum class ShakeCommand_t : uint32_t { SHAKE_START = 0x0, SHAKE_STOP = 0x1, SHAKE_AMPLITUDE = 0x2, SHAKE_FREQUENCY = 0x3, SHAKE_START_RUMBLEONLY = 0x4, SHAKE_START_NORUMBLE = 0x5, }; // Alignment: 4 // Size: 0x5 enum class TimelineCompression_t : uint32_t { TIMELINE_COMPRESSION_SUM = 0x0, TIMELINE_COMPRESSION_COUNT_PER_INTERVAL = 0x1, TIMELINE_COMPRESSION_AVERAGE = 0x2, TIMELINE_COMPRESSION_AVERAGE_BLEND = 0x3, TIMELINE_COMPRESSION_TOTAL = 0x4, }; // Alignment: 8 // Size: 0x28 enum class DebugOverlayBits_t : uint64_t { OVERLAY_TEXT_BIT = 0x1, OVERLAY_NAME_BIT = 0x2, OVERLAY_BBOX_BIT = 0x4, OVERLAY_PIVOT_BIT = 0x8, OVERLAY_MESSAGE_BIT = 0x10, OVERLAY_ABSBOX_BIT = 0x20, OVERLAY_RBOX_BIT = 0x40, OVERLAY_SHOW_BLOCKSLOS = 0x80, OVERLAY_ATTACHMENTS_BIT = 0x100, OVERLAY_INTERPOLATED_ATTACHMENTS_BIT = 0x200, OVERLAY_INTERPOLATED_PIVOT_BIT = 0x400, OVERLAY_SKELETON_BIT = 0x800, OVERLAY_INTERPOLATED_SKELETON_BIT = 0x1000, OVERLAY_TRIGGER_BOUNDS_BIT = 0x2000, OVERLAY_HITBOX_BIT = 0x4000, OVERLAY_INTERPOLATED_HITBOX_BIT = 0x8000, OVERLAY_AUTOAIM_BIT = 0x10000, OVERLAY_NPC_SELECTED_BIT = 0x20000, OVERLAY_JOINT_INFO_BIT = 0x40000, OVERLAY_NPC_ROUTE_BIT = 0x80000, OVERLAY_NPC_TRIANGULATE_BIT = 0x100000, OVERLAY_NPC_ZAP_BIT = 0x200000, OVERLAY_NPC_ENEMIES_BIT = 0x400000, OVERLAY_NPC_CONDITIONS_BIT = 0x800000, OVERLAY_NPC_COMBAT_BIT = 0x1000000, OVERLAY_NPC_TASK_BIT = 0x2000000, OVERLAY_NPC_BODYLOCATIONS = 0x4000000, OVERLAY_NPC_VIEWCONE_BIT = 0x8000000, OVERLAY_NPC_KILL_BIT = 0x10000000, OVERLAY_WC_CHANGE_ENTITY = 0x20000000, OVERLAY_BUDDHA_MODE = 0x40000000, OVERLAY_NPC_STEERING_REGULATIONS = 0x80000000, OVERLAY_NPC_TASK_TEXT_BIT = 0x100000000, OVERLAY_PROP_DEBUG = 0x200000000, OVERLAY_NPC_RELATION_BIT = 0x400000000, OVERLAY_VIEWOFFSET = 0x800000000, OVERLAY_VCOLLIDE_WIREFRAME_BIT = 0x1000000000, OVERLAY_NPC_NEAREST_NODE_BIT = 0x2000000000, OVERLAY_ACTORNAME_BIT = 0x4000000000, OVERLAY_NPC_CONDITIONS_TEXT_BIT = 0x8000000000, }; // Alignment: 1 // Size: 0xd enum class MoveType_t : uint8_t { MOVETYPE_NONE = 0x0, MOVETYPE_OBSOLETE = 0x1, MOVETYPE_WALK = 0x2, MOVETYPE_STEP = 0x3, MOVETYPE_FLY = 0x4, MOVETYPE_FLYGRAVITY = 0x5, MOVETYPE_VPHYSICS = 0x6, MOVETYPE_PUSH = 0x7, MOVETYPE_NOCLIP = 0x8, MOVETYPE_OBSERVER = 0x9, MOVETYPE_CUSTOM = 0xa, MOVETYPE_LAST = 0xb, MOVETYPE_MAX_BITS = 0x5, }; // Alignment: 1 // Size: 0x6 enum class MoveCollide_t : uint8_t { MOVECOLLIDE_DEFAULT = 0x0, MOVECOLLIDE_FLY_BOUNCE = 0x1, MOVECOLLIDE_FLY_CUSTOM = 0x2, MOVECOLLIDE_FLY_SLIDE = 0x3, MOVECOLLIDE_COUNT = 0x4, MOVECOLLIDE_MAX_BITS = 0x3, }; // Alignment: 1 // Size: 0x9 enum class SolidType_t : uint8_t { SOLID_NONE = 0x0, SOLID_BSP = 0x1, SOLID_BBOX = 0x2, SOLID_OBB = 0x3, SOLID_SPHERE = 0x4, SOLID_POINT = 0x5, SOLID_VPHYSICS = 0x6, SOLID_CAPSULE = 0x7, SOLID_LAST = 0x8, }; // Alignment: 4 // Size: 0x3 enum class BrushSolidities_e : uint32_t { BRUSHSOLID_TOGGLE = 0x0, BRUSHSOLID_NEVER = 0x1, BRUSHSOLID_ALWAYS = 0x2, }; // Alignment: 1 // Size: 0xd enum class RenderMode_t : uint8_t { kRenderNormal = 0x0, kRenderTransColor = 0x1, kRenderTransTexture = 0x2, kRenderGlow = 0x3, kRenderTransAlpha = 0x4, kRenderTransAdd = 0x5, kRenderEnvironmental = 0x6, kRenderTransAddFrameBlend = 0x7, kRenderTransAlphaAdd = 0x8, kRenderWorldGlow = 0x9, kRenderNone = 0xa, kRenderDevVisualizer = 0xb, kRenderModeCount = 0xc, }; // Alignment: 1 // Size: 0x14 enum class RenderFx_t : uint8_t { kRenderFxNone = 0x0, kRenderFxPulseSlow = 0x1, kRenderFxPulseFast = 0x2, kRenderFxPulseSlowWide = 0x3, kRenderFxPulseFastWide = 0x4, kRenderFxFadeSlow = 0x5, kRenderFxFadeFast = 0x6, kRenderFxSolidSlow = 0x7, kRenderFxSolidFast = 0x8, kRenderFxStrobeSlow = 0x9, kRenderFxStrobeFast = 0xa, kRenderFxStrobeFaster = 0xb, kRenderFxFlickerSlow = 0xc, kRenderFxFlickerFast = 0xd, kRenderFxNoDissipation = 0xe, kRenderFxFadeOut = 0xf, kRenderFxFadeIn = 0x10, kRenderFxPulseFastWider = 0x11, kRenderFxGlowShell = 0x12, kRenderFxMax = 0x13, }; // Alignment: 4 // Size: 0x2 enum class CRR_Response__ResponseEnum_t : uint32_t { MAX_RESPONSE_NAME = 0xc0, MAX_RULE_NAME = 0x80, }; // Alignment: 4 // Size: 0x3 enum class LessonPanelLayoutFileTypes_t : uint32_t { LAYOUT_HAND_DEFAULT = 0x0, LAYOUT_WORLD_DEFAULT = 0x1, LAYOUT_CUSTOM = 0x2, }; // Alignment: 4 // Size: 0x5 enum class Touch_t : uint32_t { touch_none = 0x0, touch_player_only = 0x1, touch_npc_only = 0x2, touch_player_or_npc = 0x3, touch_player_or_npc_or_physicsprop = 0x4, }; // Alignment: 4 // Size: 0x4 enum class ScriptedMoveType_t : uint32_t { SCRIPTED_MOVETYPE_NONE = 0x0, SCRIPTED_MOVETYPE_TO_WITH_DURATION = 0x1, SCRIPTED_MOVETYPE_TO_WITH_MOVESPEED = 0x2, SCRIPTED_MOVETYPE_SWEEP_TO_AT_MOVEMENT_SPEED = 0x3, }; // Alignment: 4 // Size: 0x3 enum class ForcedCrouchState_t : uint32_t { FORCEDCROUCH_NONE = 0x0, FORCEDCROUCH_CROUCHED = 0x1, FORCEDCROUCH_UNCROUCHED = 0x2, }; // Alignment: 4 // Size: 0xb enum class Hull_t : uint32_t { HULL_HUMAN = 0x0, HULL_SMALL_CENTERED = 0x1, HULL_WIDE_HUMAN = 0x2, HULL_TINY = 0x3, HULL_MEDIUM = 0x4, HULL_TINY_CENTERED = 0x5, HULL_LARGE = 0x6, HULL_LARGE_CENTERED = 0x7, HULL_MEDIUM_TALL = 0x8, NUM_HULLS = 0x9, HULL_NONE = 0xa, }; // Alignment: 4 // Size: 0x1 enum class navproperties_t : uint32_t { NAV_IGNORE = 0x1, }; // Alignment: 4 // Size: 0x4 enum class CLogicBranchList__LogicBranchListenerLastState_t : uint32_t { LOGIC_BRANCH_LISTENER_NOT_INIT = 0x0, LOGIC_BRANCH_LISTENER_ALL_TRUE = 0x1, LOGIC_BRANCH_LISTENER_ALL_FALSE = 0x2, LOGIC_BRANCH_LISTENER_MIXED = 0x3, }; // Alignment: 4 // Size: 0x3 enum class EntFinderMethod_t : uint32_t { ENT_FIND_METHOD_NEAREST = 0x0, ENT_FIND_METHOD_FARTHEST = 0x1, ENT_FIND_METHOD_RANDOM = 0x2, }; // Alignment: 4 // Size: 0x2 enum class ValueRemapperInputType_t : uint32_t { InputType_PlayerShootPosition = 0x0, InputType_PlayerShootPositionAroundAxis = 0x1, }; // Alignment: 4 // Size: 0x4 enum class ValueRemapperOutputType_t : uint32_t { OutputType_AnimationCycle = 0x0, OutputType_RotationX = 0x1, OutputType_RotationY = 0x2, OutputType_RotationZ = 0x3, }; // Alignment: 4 // Size: 0x2 enum class ValueRemapperHapticsType_t : uint32_t { HaticsType_Default = 0x0, HaticsType_None = 0x1, }; // Alignment: 4 // Size: 0x4 enum class ValueRemapperMomentumType_t : uint32_t { MomentumType_None = 0x0, MomentumType_Friction = 0x1, MomentumType_SpringTowardSnapValue = 0x2, MomentumType_SpringAwayFromSnapValue = 0x3, }; // Alignment: 4 // Size: 0x2 enum class ValueRemapperRatchetType_t : uint32_t { RatchetType_Absolute = 0x0, RatchetType_EachEngage = 0x1, }; // Alignment: 4 // Size: 0x3 enum class PointWorldTextJustifyHorizontal_t : uint32_t { POINT_WORLD_TEXT_JUSTIFY_HORIZONTAL_LEFT = 0x0, POINT_WORLD_TEXT_JUSTIFY_HORIZONTAL_CENTER = 0x1, POINT_WORLD_TEXT_JUSTIFY_HORIZONTAL_RIGHT = 0x2, }; // Alignment: 4 // Size: 0x3 enum class PointWorldTextJustifyVertical_t : uint32_t { POINT_WORLD_TEXT_JUSTIFY_VERTICAL_BOTTOM = 0x0, POINT_WORLD_TEXT_JUSTIFY_VERTICAL_CENTER = 0x1, POINT_WORLD_TEXT_JUSTIFY_VERTICAL_TOP = 0x2, }; // Alignment: 4 // Size: 0x2 enum class PointWorldTextReorientMode_t : uint32_t { POINT_WORLD_TEXT_REORIENT_NONE = 0x0, POINT_WORLD_TEXT_REORIENT_AROUND_UP = 0x1, }; // Alignment: 4 // Size: 0x2 enum class SceneOnPlayerDeath_t : uint32_t { SCENE_ONPLAYERDEATH_DO_NOTHING = 0x0, SCENE_ONPLAYERDEATH_CANCEL = 0x1, }; // Alignment: 4 // Size: 0x2 enum class ScriptedConflictResponse_t : uint32_t { SS_CONFLICT_ENQUEUE = 0x0, SS_CONFLICT_INTERRUPT = 0x1, }; // Alignment: 4 // Size: 0x3 enum class TRAIN_CODE : uint32_t { TRAIN_SAFE = 0x0, TRAIN_BLOCKING = 0x1, TRAIN_FOLLOWING = 0x2, }; // Alignment: 4 // Size: 0x13 enum class EDemoCommands : uint32_t { DEM_Error = 0xffffffffffffffff, DEM_Stop = 0x0, DEM_FileHeader = 0x1, DEM_FileInfo = 0x2, DEM_SyncTick = 0x3, DEM_SendTables = 0x4, DEM_ClassInfo = 0x5, DEM_StringTables = 0x6, DEM_Packet = 0x7, DEM_SignonPacket = 0x8, DEM_ConsoleCmd = 0x9, DEM_CustomData = 0xa, DEM_CustomDataCallbacks = 0xb, DEM_UserCmd = 0xc, DEM_FullPacket = 0xd, DEM_SaveGame = 0xe, DEM_SpawnGroups = 0xf, DEM_Max = 0x10, DEM_IsCompressed = 0x40, }; // Alignment: 4 // Size: 0x8 enum class TOGGLE_STATE : uint32_t { TS_AT_TOP = 0x0, TS_AT_BOTTOM = 0x1, TS_GOING_UP = 0x2, TS_GOING_DOWN = 0x3, DOOR_OPEN = 0x0, DOOR_CLOSED = 0x1, DOOR_OPENING = 0x2, DOOR_CLOSING = 0x3, }; // Alignment: 4 // Size: 0x2 enum class filter_t : uint32_t { FILTER_AND = 0x0, FILTER_OR = 0x1, }; // Alignment: 4 // Size: 0x3 enum class Explosions : uint32_t { expRandom = 0x0, expDirected = 0x1, expUsePrecise = 0x2, }; // Alignment: 4 // Size: 0xc enum class Materials : uint32_t { matGlass = 0x0, matWood = 0x1, matMetal = 0x2, matFlesh = 0x3, matCinderBlock = 0x4, matCeilingTile = 0x5, matComputer = 0x6, matUnbreakableGlass = 0x7, matRocks = 0x8, matWeb = 0x9, matNone = 0xa, matLastMaterial = 0xb, }; // Alignment: 4 // Size: 0x3 enum class EOverrideBlockLOS_t : uint32_t { BLOCK_LOS_DEFAULT = 0x0, BLOCK_LOS_FORCE_FALSE = 0x1, BLOCK_LOS_FORCE_TRUE = 0x2, }; // Alignment: 4 // Size: 0x3 enum class MoveLinearAuthoredPos_t : uint32_t { MOVELINEAR_AUTHORED_AT_START_POSITION = 0x0, MOVELINEAR_AUTHORED_AT_OPEN_POSITION = 0x1, MOVELINEAR_AUTHORED_AT_CLOSED_POSITION = 0x2, }; // Alignment: 4 // Size: 0x3 enum class SimpleConstraintSoundProfile__SimpleConstraintsSoundProfileKeypoints_t : uint32_t { kMIN_THRESHOLD = 0x0, kMIN_FULL = 0x1, kHIGHWATER = 0x2, }; // Alignment: 4 // Size: 0x17 enum class SoundFlags_t : uint32_t { SOUND_NONE = 0x0, SOUND_COMBAT = 0x1, SOUND_WORLD = 0x2, SOUND_PLAYER = 0x4, SOUND_DANGER = 0x8, SOUND_BULLET_IMPACT = 0x10, SOUND_THUMPER = 0x20, SOUND_PHYSICS_DANGER = 0x40, SOUND_MOVE_AWAY = 0x80, SOUND_PLAYER_VEHICLE = 0x100, SOUND_GLASS_BREAK = 0x200, SOUND_PHYSICS_OBJECT = 0x400, SOUND_CONTEXT_GUNFIRE = 0x100000, SOUND_CONTEXT_COMBINE_ONLY = 0x200000, SOUND_CONTEXT_REACT_TO_SOURCE = 0x400000, SOUND_CONTEXT_EXPLOSION = 0x800000, SOUND_CONTEXT_EXCLUDE_COMBINE = 0x1000000, SOUND_CONTEXT_DANGER_APPROACH = 0x2000000, SOUND_CONTEXT_ALLIES_ONLY = 0x4000000, SOUND_CONTEXT_PANIC_NPCS = 0x8000000, ALL_CONTEXTS = 0xfffffffffff00000, ALL_SCENTS = 0x0, ALL_SOUNDS = 0xfffff, }; // Alignment: 4 // Size: 0x3 enum class TrainVelocityType_t : uint32_t { TrainVelocity_Instantaneous = 0x0, TrainVelocity_LinearBlend = 0x1, TrainVelocity_EaseInEaseOut = 0x2, }; // Alignment: 4 // Size: 0x4 enum class TrainOrientationType_t : uint32_t { TrainOrientation_Fixed = 0x0, TrainOrientation_AtPathTracks = 0x1, TrainOrientation_LinearBlend = 0x2, TrainOrientation_EaseInEaseOut = 0x3, }; // Alignment: 4 // Size: 0x7 enum class BeamType_t : uint32_t { BEAM_INVALID = 0x0, BEAM_POINTS = 0x1, BEAM_ENTPOINT = 0x2, BEAM_ENTS = 0x3, BEAM_HOSE = 0x4, BEAM_SPLINE = 0x5, BEAM_LASER = 0x6, }; // Alignment: 4 // Size: 0x4 enum class BeamClipStyle_t : uint32_t { kNOCLIP = 0x0, kGEOCLIP = 0x1, kMODELCLIP = 0x2, kBEAMCLIPSTYLE_NUMBITS = 0x2, }; // Alignment: 1 // Size: 0x9 enum class SurroundingBoundsType_t : uint8_t { USE_OBB_COLLISION_BOUNDS = 0x0, USE_BEST_COLLISION_BOUNDS = 0x1, USE_HITBOXES = 0x2, USE_SPECIFIED_BOUNDS = 0x3, USE_GAME_CODE = 0x4, USE_ROTATION_EXPANDED_BOUNDS = 0x5, USE_COLLISION_BOUNDS_NEVER_VPHYSICS = 0x6, USE_ROTATION_EXPANDED_SEQUENCE_BOUNDS = 0x7, SURROUNDING_TYPE_BIT_COUNT = 0x3, }; // Alignment: 4 // Size: 0x5 enum class AnimLoopMode_t : uint32_t { ANIM_LOOP_MODE_INVALID = 0xffffffffffffffff, ANIM_LOOP_MODE_NOT_LOOPING = 0x0, ANIM_LOOP_MODE_LOOPING = 0x1, ANIM_LOOP_MODE_USE_SEQUENCE_SETTINGS = 0x2, ANIM_LOOP_MODE_COUNT = 0x3, }; // Alignment: 4 // Size: 0x4 enum class EntitySubclassScope_t : uint32_t { SUBCLASS_SCOPE_NONE = 0xffffffffffffffff, SUBCLASS_SCOPE_PLAYER = 0x0, SUBCLASS_SCOPE_VEHICLES = 0x1, SUBCLASS_SCOPE_COUNT = 0x2, }; // Alignment: 4 // Size: 0x3 enum class SubclassVDataChangeType_t : uint32_t { SUBCLASS_VDATA_CREATED = 0x0, SUBCLASS_VDATA_SUBCLASS_CHANGED = 0x1, SUBCLASS_VDATA_RELOADED = 0x2, }; // Alignment: 4 // Size: 0x7 enum class PlayerConnectedState : uint32_t { PlayerNeverConnected = 0xffffffffffffffff, PlayerConnected = 0x0, PlayerConnecting = 0x1, PlayerReconnecting = 0x2, PlayerDisconnecting = 0x3, PlayerDisconnected = 0x4, PlayerReserved = 0x5, }; // Alignment: 4 // Size: 0x10 enum class vote_create_failed_t : uint32_t { VOTE_FAILED_GENERIC = 0x0, VOTE_FAILED_TRANSITIONING_PLAYERS = 0x1, VOTE_FAILED_RATE_EXCEEDED = 0x2, VOTE_FAILED_YES_MUST_EXCEED_NO = 0x3, VOTE_FAILED_QUORUM_FAILURE = 0x4, VOTE_FAILED_ISSUE_DISABLED = 0x5, VOTE_FAILED_MAP_NOT_FOUND = 0x6, VOTE_FAILED_MAP_NAME_REQUIRED = 0x7, VOTE_FAILED_FAILED_RECENTLY = 0x8, VOTE_FAILED_TEAM_CANT_CALL = 0x9, VOTE_FAILED_WAITINGFORPLAYERS = 0xa, VOTE_FAILED_PLAYERNOTFOUND = 0xb, VOTE_FAILED_CANNOT_KICK_ADMIN = 0xc, VOTE_FAILED_SCRAMBLE_IN_PROGRESS = 0xd, VOTE_FAILED_SPECTATOR = 0xe, VOTE_FAILED_MAX = 0xf, }; // Alignment: 4 // Size: 0x3 enum class WeaponState_t : uint32_t { WEAPON_NOT_CARRIED = 0x0, WEAPON_IS_CARRIED_BY_PLAYER = 0x1, WEAPON_IS_ACTIVE = 0x2, }; // Alignment: 1 // Size: 0x9 enum class ItemFlagTypes_t : uint8_t { ITEM_FLAG_NONE = 0x0, ITEM_FLAG_CAN_SELECT_WITHOUT_AMMO = 0x1, ITEM_FLAG_NOAUTORELOAD = 0x2, ITEM_FLAG_NOAUTOSWITCHEMPTY = 0x4, ITEM_FLAG_LIMITINWORLD = 0x8, ITEM_FLAG_EXHAUSTIBLE = 0x10, ITEM_FLAG_DOHITLOCATIONDMG = 0x20, ITEM_FLAG_NOAMMOPICKUPS = 0x40, ITEM_FLAG_NOITEMPICKUP = 0x80, }; // Alignment: 4 // Size: 0x5 enum class EntityDisolveType_t : uint32_t { ENTITY_DISSOLVE_INVALID = 0xffffffffffffffff, ENTITY_DISSOLVE_NORMAL = 0x0, ENTITY_DISSOLVE_ELECTRICAL = 0x1, ENTITY_DISSOLVE_ELECTRICAL_LIGHT = 0x2, ENTITY_DISSOLVE_CORE = 0x3, }; // Alignment: 4 // Size: 0xe enum class HitGroup_t : uint32_t { HITGROUP_INVALID = 0xffffffffffffffff, HITGROUP_GENERIC = 0x0, HITGROUP_HEAD = 0x1, HITGROUP_CHEST = 0x2, HITGROUP_STOMACH = 0x3, HITGROUP_LEFTARM = 0x4, HITGROUP_RIGHTARM = 0x5, HITGROUP_LEFTLEG = 0x6, HITGROUP_RIGHTLEG = 0x7, HITGROUP_NECK = 0x8, HITGROUP_UNUSED = 0x9, HITGROUP_GEAR = 0xa, HITGROUP_SPECIAL = 0xb, HITGROUP_COUNT = 0xc, }; // Alignment: 1 // Size: 0x6 enum class WaterLevel_t : uint8_t { WL_NotInWater = 0x0, WL_Feet = 0x1, WL_Waist = 0x2, WL_Chest = 0x3, WL_FullyUnderwater = 0x4, WL_Count = 0x5, }; // Alignment: 4 // Size: 0x5 enum class DoorState_t : uint32_t { DOOR_STATE_CLOSED = 0x0, DOOR_STATE_OPENING = 0x1, DOOR_STATE_OPEN = 0x2, DOOR_STATE_CLOSING = 0x3, DOOR_STATE_AJAR = 0x4, }; // Alignment: 4 // Size: 0x2 enum class ShadowType_t : uint32_t { SHADOWS_NONE = 0x0, SHADOWS_SIMPLE = 0x1, }; // Alignment: 4 // Size: 0x4 enum class Class_T : uint32_t { CLASS_NONE = 0x0, CLASS_PLAYER = 0x1, CLASS_PLAYER_ALLY = 0x2, NUM_CLASSIFY_CLASSES = 0x3, }; // Alignment: 4 // Size: 0xa enum class Disposition_t : uint32_t { D_ER = 0x0, D_HT = 0x1, D_FR = 0x2, D_LI = 0x3, D_NU = 0x4, D_ERROR = 0x0, D_HATE = 0x1, D_FEAR = 0x2, D_LIKE = 0x3, D_NEUTRAL = 0x4, }; // Alignment: 4 // Size: 0x6 enum class LatchDirtyPermission_t : uint32_t { LATCH_DIRTY_DISALLOW = 0x0, LATCH_DIRTY_SERVER_CONTROLLED = 0x1, LATCH_DIRTY_CLIENT_SIMULATED = 0x2, LATCH_DIRTY_PREDICTION = 0x3, LATCH_DIRTY_FRAMESIMULATE = 0x4, LATCH_DIRTY_PARTICLE_SIMULATE = 0x5, }; // Alignment: 4 // Size: 0x5 enum class LifeState_t : uint32_t { LIFE_ALIVE = 0x0, LIFE_DYING = 0x1, LIFE_DEAD = 0x2, LIFE_RESPAWNABLE = 0x3, LIFE_RESPAWNING = 0x4, }; // Alignment: 4 // Size: 0x4 enum class StanceType_t : uint32_t { STANCE_CURRENT = 0xffffffffffffffff, STANCE_DEFAULT = 0x0, STANCE_CROUCHING = 0x1, NUM_STANCES = 0x2, }; // Alignment: 4 // Size: 0x2 enum class ModifyDamageReturn_t : uint32_t { CONTINUE_TO_APPLY_DAMAGE = 0x0, ABORT_DO_NOT_APPLY_DAMAGE = 0x1, }; // Alignment: 4 // Size: 0x3 enum class WorldTextPanelHorizontalAlign_t : uint32_t { WORLDTEXT_HORIZONTAL_ALIGN_LEFT = 0x0, WORLDTEXT_HORIZONTAL_ALIGN_CENTER = 0x1, WORLDTEXT_HORIZONTAL_ALIGN_RIGHT = 0x2, }; // Alignment: 4 // Size: 0x3 enum class WorldTextPanelVerticalAlign_t : uint32_t { WORLDTEXT_VERTICAL_ALIGN_TOP = 0x0, WORLDTEXT_VERTICAL_ALIGN_CENTER = 0x1, WORLDTEXT_VERTICAL_ALIGN_BOTTOM = 0x2, }; // Alignment: 4 // Size: 0x3 enum class WorldTextPanelOrientation_t : uint32_t { WORLDTEXT_ORIENTATION_DEFAULT = 0x0, WORLDTEXT_ORIENTATION_FACEUSER = 0x1, WORLDTEXT_ORIENTATION_FACEUSER_UPRIGHT = 0x2, }; // Alignment: 4 // Size: 0x4 enum class WorldTextAttachmentType_t : uint32_t { ATTACHED_NONE = 0x0, ATTACHED_ENTITY = 0x1, ATTACHED_ENTITY_LARGE = 0x2, ATTACHED_HAND_SPECIFIED_IN_EVENT = 0x3, }; // Alignment: 4 // Size: 0x2 enum class ESourceEngine : uint32_t { k_ESE_Source1 = 0x0, k_ESE_Source2 = 0x1, }; // Alignment: 4 // Size: 0x3 enum class PartnerAccountType : uint32_t { PARTNER_NONE = 0x0, PARTNER_PERFECT_WORLD = 0x1, PARTNER_INVALID = 0x3, }; // Alignment: 4 // Size: 0x7 enum class GCConnectionStatus : uint32_t { GCConnectionStatus_HAVE_SESSION = 0x0, GCConnectionStatus_GC_GOING_DOWN = 0x1, GCConnectionStatus_NO_SESSION = 0x2, GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 0x3, GCConnectionStatus_NO_STEAM = 0x4, GCConnectionStatus_SUSPENDED = 0x5, GCConnectionStatus_STEAM_GOING_DOWN = 0x6, }; // Alignment: 4 // Size: 0x8 enum class ESOMsg : uint32_t { k_ESOMsg_Create = 0x15, k_ESOMsg_Update = 0x16, k_ESOMsg_Destroy = 0x17, k_ESOMsg_CacheSubscribed = 0x18, k_ESOMsg_CacheUnsubscribed = 0x19, k_ESOMsg_UpdateMultiple = 0x1a, k_ESOMsg_CacheSubscriptionRefresh = 0x1c, k_ESOMsg_CacheSubscribedUpToDate = 0x1d, }; // Alignment: 4 // Size: 0xd enum class EGCBaseClientMsg : uint32_t { k_EMsgGCPingRequest = 0xbb9, k_EMsgGCPingResponse = 0xbba, k_EMsgGCToClientPollConvarRequest = 0xbbb, k_EMsgGCToClientPollConvarResponse = 0xbbc, k_EMsgGCCompressedMsgToClient = 0xbbd, k_EMsgGCCompressedMsgToClient_Legacy = 0x20b, k_EMsgGCToClientRequestDropped = 0xbbe, k_EMsgGCClientWelcome = 0xfa4, k_EMsgGCServerWelcome = 0xfa5, k_EMsgGCClientHello = 0xfa6, k_EMsgGCServerHello = 0xfa7, k_EMsgGCClientConnectionStatus = 0xfa9, k_EMsgGCServerConnectionStatus = 0xfaa, }; // Alignment: 4 // Size: 0x18 enum class EGCBaseMsg : uint32_t { k_EMsgGCReplicateConVars = 0xfa2, k_EMsgGCConVarUpdated = 0xfa3, k_EMsgGCInviteToParty = 0x1195, k_EMsgGCInvitationCreated = 0x1196, k_EMsgGCPartyInviteResponse = 0x1197, k_EMsgGCKickFromParty = 0x1198, k_EMsgGCLeaveParty = 0x1199, k_EMsgGCServerAvailable = 0x119a, k_EMsgGCClientConnectToServer = 0x119b, k_EMsgGCGameServerInfo = 0x119c, k_EMsgGCLANServerAvailable = 0x119f, k_EMsgGCInviteToLobby = 0x11a0, k_EMsgGCLobbyInviteResponse = 0x11a1, k_EMsgGCToClientPollFileRequest = 0x11a2, k_EMsgGCToClientPollFileResponse = 0x11a3, k_EMsgGCToGCPerformManualOp = 0x11a4, k_EMsgGCToGCPerformManualOpCompleted = 0x11a5, k_EMsgGCToGCReloadServerRegionSettings = 0x11a6, k_EMsgGCAdditionalWelcomeMsgList = 0x11a7, k_EMsgGCToClientApplyRemoteConVars = 0x11a8, k_EMsgGCToServerApplyRemoteConVars = 0x11a9, k_EMsgClientToGCIntegrityStatus = 0x11aa, k_EMsgClientToGCAggregateMetrics = 0x11ab, k_EMsgGCToClientAggregateMetricsBackoff = 0x11ac, }; // Alignment: 4 // Size: 0xa enum class ECustomGameInstallStatus : uint32_t { k_ECustomGameInstallStatus_Unknown = 0x0, k_ECustomGameInstallStatus_Ready = 0x1, k_ECustomGameInstallStatus_Busy = 0x2, k_ECustomGameInstallStatus_FailedGeneric = 0x65, k_ECustomGameInstallStatus_FailedInternalError = 0x66, k_ECustomGameInstallStatus_RequestedTimestampTooOld = 0x67, k_ECustomGameInstallStatus_RequestedTimestampTooNew = 0x68, k_ECustomGameInstallStatus_CRCMismatch = 0x69, k_ECustomGameInstallStatus_FailedSteam = 0x6a, k_ECustomGameInstallStatus_FailedCanceled = 0x6b, }; // Alignment: 4 // Size: 0x1 enum class EGCEconBaseMsg : uint32_t { k_EMsgGCGenericResult = 0xa13, }; // Alignment: 4 // Size: 0x9 enum class EGCMsgResponse : uint32_t { k_EGCMsgResponseOK = 0x0, k_EGCMsgResponseDenied = 0x1, k_EGCMsgResponseServerError = 0x2, k_EGCMsgResponseTimeout = 0x3, k_EGCMsgResponseInvalid = 0x4, k_EGCMsgResponseNoMatch = 0x5, k_EGCMsgResponseUnknownError = 0x6, k_EGCMsgResponseNotLoggedOn = 0x7, k_EGCMsgFailedToCreate = 0x8, }; // Alignment: 4 // Size: 0xe enum class EGCMsgUseItemResponse : uint32_t { k_EGCMsgUseItemResponse_ItemUsed = 0x0, k_EGCMsgUseItemResponse_GiftNoOtherPlayers = 0x1, k_EGCMsgUseItemResponse_ServerError = 0x2, k_EGCMsgUseItemResponse_MiniGameAlreadyStarted = 0x3, k_EGCMsgUseItemResponse_ItemUsed_ItemsGranted = 0x4, k_EGCMsgUseItemResponse_DropRateBonusAlreadyGranted = 0x5, k_EGCMsgUseItemResponse_NotInLowPriorityPool = 0x6, k_EGCMsgUseItemResponse_NotHighEnoughLevel = 0x7, k_EGCMsgUseItemResponse_EventNotActive = 0x8, k_EGCMsgUseItemResponse_ItemUsed_EventPointsGranted = 0x9, k_EGCMsgUseItemResponse_MissingRequirement = 0xa, k_EGCMsgUseItemResponse_EmoticonUnlock_NoNew = 0xb, k_EGCMsgUseItemResponse_EmoticonUnlock_Complete = 0xc, k_EGCMsgUseItemResponse_ItemUsed_Compendium = 0xd, }; // Alignment: 4 // Size: 0x7a enum class EGCItemMsg : uint32_t { k_EMsgGCBase = 0x3e8, k_EMsgGCSetItemPosition = 0x3e9, k_EMsgGCDelete = 0x3ec, k_EMsgGCVerifyCacheSubscription = 0x3ed, k_EMsgClientToGCNameItem = 0x3ee, k_EMsgGCPaintItem = 0x3f1, k_EMsgGCPaintItemResponse = 0x3f2, k_EMsgGCNameBaseItem = 0x3fb, k_EMsgGCNameBaseItemResponse = 0x3fc, k_EMsgGCUseItemRequest = 0x401, k_EMsgGCUseItemResponse = 0x402, k_EMsgGCGiftedItems = 0x403, k_EMsgGCUnwrapGiftRequest = 0x40d, k_EMsgGCUnwrapGiftResponse = 0x40e, k_EMsgGCSortItems = 0x411, k_EMsgGCBackpackSortFinished = 0x422, k_EMsgGCAdjustItemEquippedState = 0x423, k_EMsgGCItemAcknowledged = 0x426, k_EMsgClientToGCNameItemResponse = 0x42c, k_EMsgGCApplyStrangePart = 0x431, k_EMsgGCApplyPennantUpgrade = 0x434, k_EMsgGCSetItemPositions = 0x435, k_EMsgGCApplyEggEssence = 0x436, k_EMsgGCNameEggEssenceResponse = 0x437, k_EMsgGCExtractGems = 0x43e, k_EMsgGCAddSocket = 0x43f, k_EMsgGCAddItemToSocket = 0x440, k_EMsgGCAddItemToSocketResponse = 0x441, k_EMsgGCAddSocketResponse = 0x442, k_EMsgGCResetStrangeGemCount = 0x443, k_EMsgGCRequestCrateItems = 0x444, k_EMsgGCRequestCrateItemsResponse = 0x445, k_EMsgGCExtractGemsResponse = 0x446, k_EMsgGCResetStrangeGemCountResponse = 0x447, k_EMsgGCServerUseItemRequest = 0x44f, k_EMsgGCAddGiftItem = 0x450, k_EMsgClientToGCRemoveItemGifterAttributes = 0x455, k_EMsgClientToGCRemoveItemName = 0x456, k_EMsgClientToGCRemoveItemDescription = 0x457, k_EMsgClientToGCRemoveItemAttributeResponse = 0x458, k_EMsgGCDev_NewItemRequest = 0x7d1, k_EMsgGCDev_NewItemRequestResponse = 0x7d2, k_EMsgGCDev_UnlockAllItemStylesRequest = 0x7d3, k_EMsgGCDev_UnlockAllItemStylesResponse = 0x7d4, k_EMsgGCStorePurchaseFinalize = 0x9c8, k_EMsgGCStorePurchaseFinalizeResponse = 0x9c9, k_EMsgGCStorePurchaseCancel = 0x9ca, k_EMsgGCStorePurchaseCancelResponse = 0x9cb, k_EMsgGCStorePurchaseInit = 0x9ce, k_EMsgGCStorePurchaseInitResponse = 0x9cf, k_EMsgGCToGCBannedWordListUpdated = 0x9d3, k_EMsgGCToGCDirtySDOCache = 0x9d4, k_EMsgGCToGCUpdateSQLKeyValue = 0x9d6, k_EMsgGCToGCBroadcastConsoleCommand = 0x9d9, k_EMsgGCServerVersionUpdated = 0x9da, k_EMsgGCApplyAutograph = 0x9db, k_EMsgGCToGCWebAPIAccountChanged = 0x9dc, k_EMsgGCClientVersionUpdated = 0x9e0, k_EMsgGCToGCUpdateWelcomeMsg = 0x9e1, k_EMsgGCToGCPlayerStrangeCountAdjustments = 0x9e7, k_EMsgGCRequestStoreSalesData = 0x9e8, k_EMsgGCRequestStoreSalesDataResponse = 0x9e9, k_EMsgGCRequestStoreSalesDataUpToDateResponse = 0x9ea, k_EMsgGCToGCPingRequest = 0x9eb, k_EMsgGCToGCPingResponse = 0x9ec, k_EMsgGCToGCGetUserSessionServer = 0x9ed, k_EMsgGCToGCGetUserSessionServerResponse = 0x9ee, k_EMsgGCToGCGetUserServerMembers = 0x9ef, k_EMsgGCToGCGetUserServerMembersResponse = 0x9f0, k_EMsgGCToGCCanUseDropRateBonus = 0x9f3, k_EMsgSQLAddDropRateBonus = 0x9f4, k_EMsgGCToGCRefreshSOCache = 0x9f5, k_EMsgGCToGCGrantAccountRolledItems = 0x9fa, k_EMsgGCToGCGrantSelfMadeItemToAccount = 0x9fb, k_EMsgGCStatueCraft = 0xa01, k_EMsgGCRedeemCode = 0xa02, k_EMsgGCRedeemCodeResponse = 0xa03, k_EMsgGCToGCItemConsumptionRollback = 0xa04, k_EMsgClientToGCWrapAndDeliverGift = 0xa05, k_EMsgClientToGCWrapAndDeliverGiftResponse = 0xa06, k_EMsgClientToGCUnpackBundleResponse = 0xa07, k_EMsgGCToClientStoreTransactionCompleted = 0xa08, k_EMsgClientToGCEquipItems = 0xa09, k_EMsgClientToGCEquipItemsResponse = 0xa0a, k_EMsgClientToGCUnlockItemStyle = 0xa0b, k_EMsgClientToGCUnlockItemStyleResponse = 0xa0c, k_EMsgClientToGCSetItemInventoryCategory = 0xa0d, k_EMsgClientToGCUnlockCrate = 0xa0e, k_EMsgClientToGCUnlockCrateResponse = 0xa0f, k_EMsgClientToGCUnpackBundle = 0xa10, k_EMsgClientToGCSetItemStyle = 0xa11, k_EMsgClientToGCSetItemStyleResponse = 0xa12, k_EMsgSQLGCToGCGrantBackpackSlots = 0xa14, k_EMsgClientToGCLookupAccountName = 0xa15, k_EMsgClientToGCLookupAccountNameResponse = 0xa16, k_EMsgClientToGCCreateStaticRecipe = 0xa18, k_EMsgClientToGCCreateStaticRecipeResponse = 0xa19, k_EMsgGCToGCStoreProcessCDKeyTransaction = 0xa1a, k_EMsgGCToGCStoreProcessCDKeyTransactionResponse = 0xa1b, k_EMsgGCToGCStoreProcessSettlement = 0xa1c, k_EMsgGCToGCStoreProcessSettlementResponse = 0xa1d, k_EMsgGCToGCConsoleOutput = 0xa1e, k_EMsgGCToClientItemAges = 0xa1f, k_EMsgGCToGCInternalTestMsg = 0xa20, k_EMsgGCToGCClientServerVersionsUpdated = 0xa21, k_EMsgGCUseMultipleItemsRequest = 0xa22, k_EMsgGCGetAccountSubscriptionItem = 0xa23, k_EMsgGCGetAccountSubscriptionItemResponse = 0xa24, k_EMsgGCToGCBroadcastMessageFromSub = 0xa26, k_EMsgGCToClientCurrencyPricePoints = 0xa27, k_EMsgGCToGCAddSubscriptionTime = 0xa28, k_EMsgGCToGCFlushSteamInventoryCache = 0xa29, k_EMsgGCRequestCrateEscalationLevel = 0xa2a, k_EMsgGCRequestCrateEscalationLevelResponse = 0xa2b, k_EMsgGCToGCUpdateSubscriptionItems = 0xa2c, k_EMsgGCToGCSelfPing = 0xa2d, k_EMsgGCToGCGetInfuxIntervalStats = 0xa2e, k_EMsgGCToGCGetInfuxIntervalStatsResponse = 0xa2f, k_EMsgGCToGCPurchaseSucceeded = 0xa30, k_EMsgClientToGCGetLimitedItemPurchaseQuantity = 0xa31, k_EMsgClientToGCGetLimitedItemPurchaseQuantityResponse = 0xa32, k_EMsgGCToGCBetaDeleteItems = 0xa33, }; // Alignment: 4 // Size: 0x19 enum class EGCMsgInitiateTradeResponse : uint32_t { k_EGCMsgInitiateTradeResponse_Accepted = 0x0, k_EGCMsgInitiateTradeResponse_Declined = 0x1, k_EGCMsgInitiateTradeResponse_VAC_Banned_Initiator = 0x2, k_EGCMsgInitiateTradeResponse_VAC_Banned_Target = 0x3, k_EGCMsgInitiateTradeResponse_Target_Already_Trading = 0x4, k_EGCMsgInitiateTradeResponse_Disabled = 0x5, k_EGCMsgInitiateTradeResponse_NotLoggedIn = 0x6, k_EGCMsgInitiateTradeResponse_Cancel = 0x7, k_EGCMsgInitiateTradeResponse_TooSoon = 0x8, k_EGCMsgInitiateTradeResponse_TooSoonPenalty = 0x9, k_EGCMsgInitiateTradeResponse_Trade_Banned_Initiator = 0xa, k_EGCMsgInitiateTradeResponse_Trade_Banned_Target = 0xb, k_EGCMsgInitiateTradeResponse_Free_Account_Initiator_DEPRECATED = 0xc, k_EGCMsgInitiateTradeResponse_Shared_Account_Initiator = 0xd, k_EGCMsgInitiateTradeResponse_Service_Unavailable = 0xe, k_EGCMsgInitiateTradeResponse_Target_Blocked = 0xf, k_EGCMsgInitiateTradeResponse_NeedVerifiedEmail = 0x10, k_EGCMsgInitiateTradeResponse_NeedSteamGuard = 0x11, k_EGCMsgInitiateTradeResponse_SteamGuardDuration = 0x12, k_EGCMsgInitiateTradeResponse_TheyCannotTrade = 0x13, k_EGCMsgInitiateTradeResponse_Recent_Password_Reset = 0x14, k_EGCMsgInitiateTradeResponse_Using_New_Device = 0x15, k_EGCMsgInitiateTradeResponse_Sent_Invalid_Cookie = 0x16, k_EGCMsgInitiateTradeResponse_TooRecentFriend = 0x17, k_EGCMsgInitiateTradeResponse_WalledFundsNotTrusted = 0x18, }; // Alignment: 4 // Size: 0x2 enum class attributeprovidertypes_t : uint32_t { PROVIDER_GENERIC = 0x0, PROVIDER_WEAPON = 0x1, }; // Alignment: 4 // Size: 0x3 enum class EconEntityParticleDisableMode_t : uint32_t { ECON_ENTITY_PARTICLES_ENABLED = 0x0, ECON_ENTITY_PARTICLES_DISABLED = 0x1, ECON_ENTITY_PARTICLES_DISABLED_BUT_PLAY_ENDCAPS_TO_STOP = 0x2, }; // Alignment: 4 // Size: 0x4 enum class PetLevelup_Rule_t : uint32_t { PETLEVELFROM_NOTHING = 0x0, PETLEVELFROM_KILLEATER = 0x1, PETLEVELFROM_COMPENDIUM_LEVEL = 0x2, NUM_PETLEVELUPRULES = 0x3, }; // Alignment: 4 // Size: 0x2f enum class eEconItemOrigin : uint32_t { kEconItemOrigin_Invalid = 0xffffffffffffffff, kEconItemOrigin_Drop = 0x0, kEconItemOrigin_Achievement = 0x1, kEconItemOrigin_Purchased = 0x2, kEconItemOrigin_Traded = 0x3, kEconItemOrigin_Crafted = 0x4, kEconItemOrigin_StorePromotion = 0x5, kEconItemOrigin_Gifted = 0x6, kEconItemOrigin_SupportGranted = 0x7, kEconItemOrigin_FoundInCrate = 0x8, kEconItemOrigin_Earned = 0x9, kEconItemOrigin_ThirdPartyPromotion = 0xa, kEconItemOrigin_GiftWrapped = 0xb, kEconItemOrigin_HalloweenDrop = 0xc, kEconItemOrigin_PackageItem = 0xd, kEconItemOrigin_Foreign = 0xe, kEconItemOrigin_CDKey = 0xf, kEconItemOrigin_CollectionReward = 0x10, kEconItemOrigin_PreviewItem = 0x11, kEconItemOrigin_SteamWorkshopContribution = 0x12, kEconItemOrigin_PeriodicScoreReward = 0x13, kEconItemOrigin_Recycling = 0x14, kEconItemOrigin_TournamentDrop = 0x15, kEconItemOrigin_PassportReward = 0x16, kEconItemOrigin_TutorialDrop = 0x17, kEconItemOrigin_RecipeOutput = 0x18, kEconItemOrigin_GemExtract = 0x19, kEconItemOrigin_EventPointReward = 0x1a, kEconItemOrigin_ItemRedemption = 0x1b, kEconItemOrigin_FantasyTicketRefund = 0x1c, kEconItemOrigin_VictoryPredictionReward = 0x1d, kEconItemOrigin_AssassinEventReward = 0x1e, kEconItemOrigin_CompendiumReward = 0x1f, kEconItemOrigin_CompendiumDrop = 0x20, kEconItemOrigin_MysteryItem = 0x21, kEconItemOrigin_UnpackedFromBundle = 0x22, kEconItemOrigin_WonFromWeeklyGame = 0x23, kEconItemOrigin_SeasonalItemGrant = 0x24, kEconItemOrigin_PackOpening = 0x25, kEconItemOrigin_InitialGrant = 0x26, kEconItemOrigin_MarketPurchase = 0x27, kEconItemOrigin_MarketRefunded = 0x28, kEconItemOrigin_LimitedDraft = 0x29, kEconItemOrigin_GauntletReward = 0x2a, kEconItemOrigin_CompendiumGift = 0x2b, kEconItemOrigin_CandyShopPurchase = 0x2c, kEconItemOrigin_Max = 0x2d, }; // Alignment: 4 // Size: 0x5 enum class CHeadLookParams__HeadLookPriority_t : uint32_t { BORING = 0x0, INTERESTING = 0x1, IMPORTANT = 0x2, CRITICAL = 0x3, MANDATORY = 0x4, }; // Alignment: 4 // Size: 0x5 enum class IBody__ActivityType : uint32_t { MOTION_CONTROLLED_XY = 0x1, MOTION_CONTROLLED_Z = 0x2, ACTIVITY_UNINTERRUPTIBLE = 0x4, ACTIVITY_TRANSITORY = 0x8, ENTINDEX_PLAYBACK_RATE = 0x10, }; // Alignment: 4 // Size: 0x5 enum class IBody__PostureType : uint32_t { STAND = 0x0, CROUCH = 0x1, SIT = 0x2, CRAWL = 0x3, LIE = 0x4, }; // Alignment: 4 // Size: 0x3 enum class IBody__ArousalType : uint32_t { NEUTRAL = 0x0, ALERT = 0x1, INTENSE = 0x2, }; // Alignment: 4 // Size: 0x1a enum class DOTA_GameMode : uint32_t { DOTA_GAMEMODE_NONE = 0x0, DOTA_GAMEMODE_AP = 0x1, DOTA_GAMEMODE_CM = 0x2, DOTA_GAMEMODE_RD = 0x3, DOTA_GAMEMODE_SD = 0x4, DOTA_GAMEMODE_AR = 0x5, DOTA_GAMEMODE_INTRO = 0x6, DOTA_GAMEMODE_HW = 0x7, DOTA_GAMEMODE_REVERSE_CM = 0x8, DOTA_GAMEMODE_XMAS = 0x9, DOTA_GAMEMODE_TUTORIAL = 0xa, DOTA_GAMEMODE_MO = 0xb, DOTA_GAMEMODE_LP = 0xc, DOTA_GAMEMODE_POOL1 = 0xd, DOTA_GAMEMODE_FH = 0xe, DOTA_GAMEMODE_CUSTOM = 0xf, DOTA_GAMEMODE_CD = 0x10, DOTA_GAMEMODE_BD = 0x11, DOTA_GAMEMODE_ABILITY_DRAFT = 0x12, DOTA_GAMEMODE_EVENT = 0x13, DOTA_GAMEMODE_ARDM = 0x14, DOTA_GAMEMODE_1V1MID = 0x15, DOTA_GAMEMODE_ALL_DRAFT = 0x16, DOTA_GAMEMODE_TURBO = 0x17, DOTA_GAMEMODE_MUTATION = 0x18, DOTA_GAMEMODE_COACHES_CHALLENGE = 0x19, }; // Alignment: 4 // Size: 0xd enum class DOTA_GameState : uint32_t { DOTA_GAMERULES_STATE_INIT = 0x0, DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD = 0x1, DOTA_GAMERULES_STATE_HERO_SELECTION = 0x2, DOTA_GAMERULES_STATE_STRATEGY_TIME = 0x3, DOTA_GAMERULES_STATE_PRE_GAME = 0x4, DOTA_GAMERULES_STATE_GAME_IN_PROGRESS = 0x5, DOTA_GAMERULES_STATE_POST_GAME = 0x6, DOTA_GAMERULES_STATE_DISCONNECT = 0x7, DOTA_GAMERULES_STATE_TEAM_SHOWCASE = 0x8, DOTA_GAMERULES_STATE_CUSTOM_GAME_SETUP = 0x9, DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD = 0xa, DOTA_GAMERULES_STATE_SCENARIO_SETUP = 0xb, DOTA_GAMERULES_STATE_LAST = 0xc, }; // Alignment: 4 // Size: 0xf enum class DOTA_GC_TEAM : uint32_t { DOTA_GC_TEAM_GOOD_GUYS = 0x0, DOTA_GC_TEAM_BAD_GUYS = 0x1, DOTA_GC_TEAM_BROADCASTER = 0x2, DOTA_GC_TEAM_SPECTATOR = 0x3, DOTA_GC_TEAM_PLAYER_POOL = 0x4, DOTA_GC_TEAM_NOTEAM = 0x5, DOTA_GC_TEAM_CUSTOM_1 = 0x6, DOTA_GC_TEAM_CUSTOM_2 = 0x7, DOTA_GC_TEAM_CUSTOM_3 = 0x8, DOTA_GC_TEAM_CUSTOM_4 = 0x9, DOTA_GC_TEAM_CUSTOM_5 = 0xa, DOTA_GC_TEAM_CUSTOM_6 = 0xb, DOTA_GC_TEAM_CUSTOM_7 = 0xc, DOTA_GC_TEAM_CUSTOM_8 = 0xd, DOTA_GC_TEAM_NEUTRALS = 0xe, }; // Alignment: 4 // Size: 0x2b enum class EEvent : uint32_t { EVENT_ID_NONE = 0x0, EVENT_ID_DIRETIDE = 0x1, EVENT_ID_SPRING_FESTIVAL = 0x2, EVENT_ID_FROSTIVUS_2013 = 0x3, EVENT_ID_COMPENDIUM_2014 = 0x4, EVENT_ID_NEXON_PC_BANG = 0x5, EVENT_ID_PWRD_DAC_2015 = 0x6, EVENT_ID_NEW_BLOOM_2015 = 0x7, EVENT_ID_INTERNATIONAL_2015 = 0x8, EVENT_ID_FALL_MAJOR_2015 = 0x9, EVENT_ID_ORACLE_PA = 0xa, EVENT_ID_NEW_BLOOM_2015_PREBEAST = 0xb, EVENT_ID_FROSTIVUS = 0xc, EVENT_ID_WINTER_MAJOR_2016 = 0xd, EVENT_ID_INTERNATIONAL_2016 = 0xe, EVENT_ID_FALL_MAJOR_2016 = 0xf, EVENT_ID_WINTER_MAJOR_2017 = 0x10, EVENT_ID_NEW_BLOOM_2017 = 0x11, EVENT_ID_INTERNATIONAL_2017 = 0x12, EVENT_ID_PLUS_SUBSCRIPTION = 0x13, EVENT_ID_SINGLES_DAY_2017 = 0x14, EVENT_ID_FROSTIVUS_2017 = 0x15, EVENT_ID_INTERNATIONAL_2018 = 0x16, EVENT_ID_FROSTIVUS_2018 = 0x17, EVENT_ID_NEW_BLOOM_2019 = 0x18, EVENT_ID_INTERNATIONAL_2019 = 0x19, EVENT_ID_NEW_PLAYER_EXPERIENCE = 0x1a, EVENT_ID_FROSTIVUS_2019 = 0x1b, EVENT_ID_NEW_BLOOM_2020 = 0x1c, EVENT_ID_INTERNATIONAL_2020 = 0x1d, EVENT_ID_TEAM_FANDOM = 0x1e, EVENT_ID_DIRETIDE_2020 = 0x1f, EVENT_ID_SPRING_2021 = 0x20, EVENT_ID_FALL_2021 = 0x21, EVENT_ID_TEAM_FANDOM_FALL_2021 = 0x22, EVENT_ID_TEAM_2021_2022_TOUR2 = 0x23, EVENT_ID_INTERNATIONAL_2022 = 0x24, EVENT_ID_TEAM_2021_2022_TOUR3 = 0x25, EVENT_ID_TEAM_INTERNATIONAL_2022 = 0x26, EVENT_ID_PERMANENT_GRANTS = 0x27, EVENT_ID_MUERTA_RELEASE_SPRING2023 = 0x28, EVENT_ID_TEAM_2023_TOUR1 = 0x29, EVENT_ID_TEAM_2023_TOUR2 = 0x2a, }; // Alignment: 4 // Size: 0x5 enum class ERankType : uint32_t { k_ERankType_Invalid = 0x0, k_ERankType_Casual = 0x1, k_ERankType_Ranked = 0x2, k_ERankType_CasualLegacy = 0x3, k_ERankType_RankedLegacy = 0x4, }; // Alignment: 4 // Size: 0x9 enum class DOTALeaverStatus_t : uint32_t { DOTA_LEAVER_NONE = 0x0, DOTA_LEAVER_DISCONNECTED = 0x1, DOTA_LEAVER_DISCONNECTED_TOO_LONG = 0x2, DOTA_LEAVER_ABANDONED = 0x3, DOTA_LEAVER_AFK = 0x4, DOTA_LEAVER_NEVER_CONNECTED = 0x5, DOTA_LEAVER_NEVER_CONNECTED_TOO_LONG = 0x6, DOTA_LEAVER_FAILED_TO_READY_UP = 0x7, DOTA_LEAVER_DECLINED = 0x8, }; // Alignment: 4 // Size: 0x7 enum class DOTAConnectionState_t : uint32_t { DOTA_CONNECTION_STATE_UNKNOWN = 0x0, DOTA_CONNECTION_STATE_NOT_YET_CONNECTED = 0x1, DOTA_CONNECTION_STATE_CONNECTED = 0x2, DOTA_CONNECTION_STATE_DISCONNECTED = 0x3, DOTA_CONNECTION_STATE_ABANDONED = 0x4, DOTA_CONNECTION_STATE_LOADING = 0x5, DOTA_CONNECTION_STATE_FAILED = 0x6, }; // Alignment: 4 // Size: 0x5 enum class Fantasy_Roles : uint32_t { FANTASY_ROLE_UNDEFINED = 0x0, FANTASY_ROLE_CORE = 0x1, FANTASY_ROLE_SUPPORT = 0x2, FANTASY_ROLE_OFFLANE = 0x3, FANTASY_ROLE_MID = 0x4, }; // Alignment: 4 // Size: 0x5 enum class Fantasy_Team_Slots : uint32_t { FANTASY_SLOT_NONE = 0x0, FANTASY_SLOT_CORE = 0x1, FANTASY_SLOT_SUPPORT = 0x2, FANTASY_SLOT_ANY = 0x3, FANTASY_SLOT_BENCH = 0x4, }; // Alignment: 4 // Size: 0xa enum class Fantasy_Selection_Mode : uint32_t { FANTASY_SELECTION_INVALID = 0x0, FANTASY_SELECTION_LOCKED = 0x1, FANTASY_SELECTION_SHUFFLE = 0x2, FANTASY_SELECTION_FREE_PICK = 0x3, FANTASY_SELECTION_ENDED = 0x4, FANTASY_SELECTION_PRE_SEASON = 0x5, FANTASY_SELECTION_PRE_DRAFT = 0x6, FANTASY_SELECTION_DRAFTING = 0x7, FANTASY_SELECTION_REGULAR_SEASON = 0x8, FANTASY_SELECTION_CARD_BASED = 0x9, }; // Alignment: 4 // Size: 0x19 enum class DOTAChatChannelType_t : uint32_t { DOTAChannelType_Regional = 0x0, DOTAChannelType_Custom = 0x1, DOTAChannelType_Party = 0x2, DOTAChannelType_Lobby = 0x3, DOTAChannelType_Team = 0x4, DOTAChannelType_Guild = 0x5, DOTAChannelType_Fantasy = 0x6, DOTAChannelType_Whisper = 0x7, DOTAChannelType_Console = 0x8, DOTAChannelType_Tab = 0x9, DOTAChannelType_Invalid = 0xa, DOTAChannelType_GameAll = 0xb, DOTAChannelType_GameAllies = 0xc, DOTAChannelType_GameSpectator = 0xd, DOTAChannelType_GameCoaching = 0xe, DOTAChannelType_Cafe = 0xf, DOTAChannelType_CustomGame = 0x10, DOTAChannelType_Private = 0x11, DOTAChannelType_PostGame = 0x12, DOTAChannelType_BattleCup = 0x13, DOTAChannelType_HLTVSpectator = 0x14, DOTAChannelType_GameEvents = 0x15, DOTAChannelType_Trivia = 0x16, DOTAChannelType_NewPlayer = 0x17, DOTAChannelType_PrivateCoaching = 0x18, }; // Alignment: 4 // Size: 0x3 enum class EChatSpecialPrivileges : uint32_t { k_EChatSpecialPrivileges_None = 0x0, k_EChatSpecialPrivileges_Moderator = 0x1, k_EChatSpecialPrivileges_SuperModerator = 0x2, }; // Alignment: 4 // Size: 0x7 enum class EProfileCardSlotType : uint32_t { k_EProfileCardSlotType_Empty = 0x0, k_EProfileCardSlotType_Stat = 0x1, k_EProfileCardSlotType_Trophy = 0x2, k_EProfileCardSlotType_Item = 0x3, k_EProfileCardSlotType_Hero = 0x4, k_EProfileCardSlotType_Emoticon = 0x5, k_EProfileCardSlotType_Team = 0x6, }; // Alignment: 4 // Size: 0x3 enum class EMatchGroupServerStatus : uint32_t { k_EMatchGroupServerStatus_OK = 0x0, k_EMatchGroupServerStatus_LimitedAvailability = 0x1, k_EMatchGroupServerStatus_Offline = 0x2, }; // Alignment: 4 // Size: 0x3 enum class DOTA_CM_PICK : uint32_t { DOTA_CM_RANDOM = 0x0, DOTA_CM_GOOD_GUYS = 0x1, DOTA_CM_BAD_GUYS = 0x2, }; // Alignment: 4 // Size: 0x4 enum class DOTALowPriorityBanType : uint32_t { DOTA_LOW_PRIORITY_BAN_ABANDON = 0x0, DOTA_LOW_PRIORITY_BAN_REPORTS = 0x1, DOTA_LOW_PRIORITY_BAN_SECONDARY_ABANDON = 0x2, DOTA_LOW_PRIORITY_BAN_PRE_GAME_ROLE = 0x3, }; // Alignment: 4 // Size: 0x3 enum class DOTALobbyReadyState : uint32_t { DOTALobbyReadyState_UNDECLARED = 0x0, DOTALobbyReadyState_ACCEPTED = 0x1, DOTALobbyReadyState_DECLINED = 0x2, }; // Alignment: 4 // Size: 0xf enum class DOTAJoinLobbyResult : uint32_t { DOTA_JOIN_RESULT_SUCCESS = 0x0, DOTA_JOIN_RESULT_ALREADY_IN_GAME = 0x1, DOTA_JOIN_RESULT_INVALID_LOBBY = 0x2, DOTA_JOIN_RESULT_INCORRECT_PASSWORD = 0x3, DOTA_JOIN_RESULT_ACCESS_DENIED = 0x4, DOTA_JOIN_RESULT_GENERIC_ERROR = 0x5, DOTA_JOIN_RESULT_INCORRECT_VERSION = 0x6, DOTA_JOIN_RESULT_IN_TEAM_PARTY = 0x7, DOTA_JOIN_RESULT_NO_LOBBY_FOUND = 0x8, DOTA_JOIN_RESULT_LOBBY_FULL = 0x9, DOTA_JOIN_RESULT_CUSTOM_GAME_INCORRECT_VERSION = 0xa, DOTA_JOIN_RESULT_TIMEOUT = 0xb, DOTA_JOIN_RESULT_CUSTOM_GAME_COOLDOWN = 0xc, DOTA_JOIN_RESULT_BUSY = 0xd, DOTA_JOIN_RESULT_NO_PLAYTIME = 0xe, }; // Alignment: 4 // Size: 0x2 enum class DOTASelectionPriorityRules : uint32_t { k_DOTASelectionPriorityRules_Manual = 0x0, k_DOTASelectionPriorityRules_Automatic = 0x1, }; // Alignment: 4 // Size: 0x5 enum class DOTASelectionPriorityChoice : uint32_t { k_DOTASelectionPriorityChoice_Invalid = 0x0, k_DOTASelectionPriorityChoice_FirstPick = 0x1, k_DOTASelectionPriorityChoice_SecondPick = 0x2, k_DOTASelectionPriorityChoice_Radiant = 0x3, k_DOTASelectionPriorityChoice_Dire = 0x4, }; // Alignment: 4 // Size: 0x3 enum class DOTAMatchVote : uint32_t { DOTAMatchVote_INVALID = 0x0, DOTAMatchVote_POSITIVE = 0x1, DOTAMatchVote_NEGATIVE = 0x2, }; // Alignment: 4 // Size: 0x3 enum class DOTALobbyVisibility : uint32_t { DOTALobbyVisibility_Public = 0x0, DOTALobbyVisibility_Friends = 0x1, DOTALobbyVisibility_Unlisted = 0x2, }; // Alignment: 4 // Size: 0x3 enum class EDOTAPlayerMMRType : uint32_t { k_EDOTAPlayerMMRType_Invalid = 0x0, k_EDOTAPlayerMMRType_GeneralHidden = 0x1, k_EDOTAPlayerMMRType_GeneralCompetitive = 0x3, }; // Alignment: 4 // Size: 0x3 enum class EDOTAMMRBoostType : uint32_t { k_EDOTAMMRBoostType_None = 0x0, k_EDOTAMMRBoostType_Leader = 0x1, k_EDOTAMMRBoostType_Follower = 0x2, }; // Alignment: 4 // Size: 0x7 enum class MatchType : uint32_t { MATCH_TYPE_CASUAL = 0x0, MATCH_TYPE_COOP_BOTS = 0x1, MATCH_TYPE_COMPETITIVE = 0x4, MATCH_TYPE_WEEKEND_TOURNEY = 0x5, MATCH_TYPE_EVENT = 0x7, MATCH_TYPE_COACHES_CHALLENGE = 0xc, MATCH_TYPE_NEW_PLAYER_POOL = 0xe, }; // Alignment: 4 // Size: 0xa enum class DOTABotDifficulty : uint32_t { BOT_DIFFICULTY_PASSIVE = 0x0, BOT_DIFFICULTY_EASY = 0x1, BOT_DIFFICULTY_MEDIUM = 0x2, BOT_DIFFICULTY_HARD = 0x3, BOT_DIFFICULTY_UNFAIR = 0x4, BOT_DIFFICULTY_INVALID = 0x5, BOT_DIFFICULTY_EXTRA1 = 0x6, BOT_DIFFICULTY_EXTRA2 = 0x7, BOT_DIFFICULTY_EXTRA3 = 0x8, BOT_DIFFICULTY_NPX = 0x9, }; // Alignment: 4 // Size: 0x1b enum class DOTA_BOT_MODE : uint32_t { DOTA_BOT_MODE_NONE = 0x0, DOTA_BOT_MODE_LANING = 0x1, DOTA_BOT_MODE_ATTACK = 0x2, DOTA_BOT_MODE_ROAM = 0x3, DOTA_BOT_MODE_RETREAT = 0x4, DOTA_BOT_MODE_SECRET_SHOP = 0x5, DOTA_BOT_MODE_SIDE_SHOP = 0x6, DOTA_BOT_MODE_RUNE = 0x7, DOTA_BOT_MODE_PUSH_TOWER_TOP = 0x8, DOTA_BOT_MODE_PUSH_TOWER_MID = 0x9, DOTA_BOT_MODE_PUSH_TOWER_BOT = 0xa, DOTA_BOT_MODE_DEFEND_TOWER_TOP = 0xb, DOTA_BOT_MODE_DEFEND_TOWER_MID = 0xc, DOTA_BOT_MODE_DEFEND_TOWER_BOT = 0xd, DOTA_BOT_MODE_ASSEMBLE = 0xe, DOTA_BOT_MODE_ASSEMBLE_WITH_HUMANS = 0xf, DOTA_BOT_MODE_TEAM_ROAM = 0x10, DOTA_BOT_MODE_FARM = 0x11, DOTA_BOT_MODE_DEFEND_ALLY = 0x12, DOTA_BOT_MODE_EVASIVE_MANEUVERS = 0x13, DOTA_BOT_MODE_ROSHAN = 0x14, DOTA_BOT_MODE_ITEM = 0x15, DOTA_BOT_MODE_WARD = 0x16, DOTA_BOT_MODE_COMPANION = 0x17, DOTA_BOT_MODE_TUTORIAL_BOSS = 0x18, DOTA_BOT_MODE_MINION = 0x19, DOTA_BOT_MODE_OUTPOST = 0x1a, }; // Alignment: 4 // Size: 0x8 enum class MatchLanguages : uint32_t { MATCH_LANGUAGE_INVALID = 0x0, MATCH_LANGUAGE_ENGLISH = 0x1, MATCH_LANGUAGE_RUSSIAN = 0x2, MATCH_LANGUAGE_CHINESE = 0x3, MATCH_LANGUAGE_KOREAN = 0x4, MATCH_LANGUAGE_SPANISH = 0x5, MATCH_LANGUAGE_PORTUGUESE = 0x6, MATCH_LANGUAGE_ENGLISH2 = 0x7, }; // Alignment: 4 // Size: 0x7 enum class ETourneyQueueDeadlineState : uint32_t { k_ETourneyQueueDeadlineState_Normal = 0x0, k_ETourneyQueueDeadlineState_Missed = 0x1, k_ETourneyQueueDeadlineState_ExpiredOK = 0x2, k_ETourneyQueueDeadlineState_SeekingBye = 0x3, k_ETourneyQueueDeadlineState_EligibleForRefund = 0x4, k_ETourneyQueueDeadlineState_NA = 0xffffffffffffffff, k_ETourneyQueueDeadlineState_ExpiringSoon = 0x65, }; // Alignment: 4 // Size: 0x13 enum class EMatchOutcome : uint32_t { k_EMatchOutcome_Unknown = 0x0, k_EMatchOutcome_RadVictory = 0x2, k_EMatchOutcome_DireVictory = 0x3, k_EMatchOutcome_NeutralVictory = 0x4, k_EMatchOutcome_NoTeamWinner = 0x5, k_EMatchOutcome_Custom1Victory = 0x6, k_EMatchOutcome_Custom2Victory = 0x7, k_EMatchOutcome_Custom3Victory = 0x8, k_EMatchOutcome_Custom4Victory = 0x9, k_EMatchOutcome_Custom5Victory = 0xa, k_EMatchOutcome_Custom6Victory = 0xb, k_EMatchOutcome_Custom7Victory = 0xc, k_EMatchOutcome_Custom8Victory = 0xd, k_EMatchOutcome_NotScored_PoorNetworkConditions = 0x40, k_EMatchOutcome_NotScored_Leaver = 0x41, k_EMatchOutcome_NotScored_ServerCrash = 0x42, k_EMatchOutcome_NotScored_NeverStarted = 0x43, k_EMatchOutcome_NotScored_Canceled = 0x44, k_EMatchOutcome_NotScored_Suspicious = 0x45, }; // Alignment: 4 // Size: 0x6 enum class ELaneType : uint32_t { LANE_TYPE_UNKNOWN = 0x0, LANE_TYPE_SAFE = 0x1, LANE_TYPE_OFF = 0x2, LANE_TYPE_MID = 0x3, LANE_TYPE_JUNGLE = 0x4, LANE_TYPE_ROAM = 0x5, }; // Alignment: 4 // Size: 0xc enum class EBadgeType : uint32_t { k_EBadgeType_TI7_Midweek = 0x1, k_EBadgeType_TI7_Finals = 0x2, k_EBadgeType_TI7_AllEvent = 0x3, k_EBadgeType_TI8_Midweek = 0x4, k_EBadgeType_TI8_Finals = 0x5, k_EBadgeType_TI8_AllEvent = 0x6, k_EBadgeType_TI10 = 0x7, k_EBadgeType_TI11_PlayoffsDay1 = 0x8, k_EBadgeType_TI11_PlayoffsDay2 = 0x9, k_EBadgeType_TI11_PlayoffsDay3 = 0xa, k_EBadgeType_TI11_PlayoffsDay4 = 0xb, k_EBadgeType_TI11_FinalsWeekend = 0xc, }; // Alignment: 4 // Size: 0x7 enum class ELeagueStatus : uint32_t { LEAGUE_STATUS_UNSET = 0x0, LEAGUE_STATUS_UNSUBMITTED = 0x1, LEAGUE_STATUS_SUBMITTED = 0x2, LEAGUE_STATUS_ACCEPTED = 0x3, LEAGUE_STATUS_REJECTED = 0x4, LEAGUE_STATUS_CONCLUDED = 0x5, LEAGUE_STATUS_DELETED = 0x6, }; // Alignment: 4 // Size: 0x7 enum class ELeagueRegion : uint32_t { LEAGUE_REGION_UNSET = 0x0, LEAGUE_REGION_NA = 0x1, LEAGUE_REGION_SA = 0x2, LEAGUE_REGION_WEU = 0x3, LEAGUE_REGION_EEU = 0x4, LEAGUE_REGION_CHINA = 0x5, LEAGUE_REGION_SEA = 0x6, }; // Alignment: 4 // Size: 0xa enum class ELeagueTier : uint32_t { LEAGUE_TIER_UNSET = 0x0, LEAGUE_TIER_AMATEUR = 0x1, LEAGUE_TIER_PROFESSIONAL = 0x2, LEAGUE_TIER_MINOR = 0x3, LEAGUE_TIER_MAJOR = 0x4, LEAGUE_TIER_INTERNATIONAL = 0x5, LEAGUE_TIER_DPC_QUALIFIER = 0x6, LEAGUE_TIER_DPC_LEAGUE_QUALIFIER = 0x7, LEAGUE_TIER_DPC_LEAGUE = 0x8, LEAGUE_TIER_DPC_LEAGUE_FINALS = 0x9, }; // Alignment: 4 // Size: 0x3 enum class ELeagueTierCategory : uint32_t { LEAGUE_TIER_CATEGORY_AMATEUR = 0x1, LEAGUE_TIER_CATEGORY_PROFESSIONAL = 0x2, LEAGUE_TIER_CATEGORY_DPC = 0x3, }; // Alignment: 4 // Size: 0x3 enum class ELeagueDivision : uint32_t { LEAGUE_DIVISION_UNSET = 0x0, LEAGUE_DIVISION_I = 0x1, LEAGUE_DIVISION_II = 0x2, }; // Alignment: 4 // Size: 0x5 enum class ELeagueBroadcastProvider : uint32_t { LEAGUE_BROADCAST_UNKNOWN = 0x0, LEAGUE_BROADCAST_STEAM = 0x1, LEAGUE_BROADCAST_TWITCH = 0x2, LEAGUE_BROADCAST_YOUTUBE = 0x3, LEAGUE_BROADCAST_OTHER = 0x64, }; // Alignment: 4 // Size: 0x4 enum class ELeaguePhase : uint32_t { LEAGUE_PHASE_UNSET = 0x0, LEAGUE_PHASE_REGIONAL_QUALIFIER = 0x1, LEAGUE_PHASE_GROUP_STAGE = 0x2, LEAGUE_PHASE_MAIN_EVENT = 0x3, }; // Alignment: 4 // Size: 0x2a enum class ELeagueAuditAction : uint32_t { LEAGUE_AUDIT_ACTION_INVALID = 0x0, LEAGUE_AUDIT_ACTION_LEAGUE_CREATE = 0x1, LEAGUE_AUDIT_ACTION_LEAGUE_EDIT = 0x2, LEAGUE_AUDIT_ACTION_LEAGUE_DELETE = 0x3, LEAGUE_AUDIT_ACTION_LEAGUE_ADMIN_ADD = 0x4, LEAGUE_AUDIT_ACTION_LEAGUE_ADMIN_REVOKE = 0x5, LEAGUE_AUDIT_ACTION_LEAGUE_ADMIN_PROMOTE = 0x6, LEAGUE_AUDIT_ACTION_LEAGUE_STREAM_ADD = 0x7, LEAGUE_AUDIT_ACTION_LEAGUE_STREAM_REMOVE = 0x8, LEAGUE_AUDIT_ACTION_LEAGUE_IMAGE_UPDATED = 0x9, LEAGUE_AUDIT_ACTION_LEAGUE_MESSAGE_ADDED = 0xa, LEAGUE_AUDIT_ACTION_LEAGUE_SUBMITTED = 0xb, LEAGUE_AUDIT_ACTION_LEAGUE_SET_PRIZE_POOL = 0xc, LEAGUE_AUDIT_ACTION_LEAGUE_ADD_PRIZE_POOL_ITEM = 0xd, LEAGUE_AUDIT_ACTION_LEAGUE_REMOVE_PRIZE_POOL_ITEM = 0xe, LEAGUE_AUDIT_ACTION_LEAGUE_MATCH_START = 0xf, LEAGUE_AUDIT_ACTION_LEAGUE_MATCH_END = 0x10, LEAGUE_AUDIT_ACTION_LEAGUE_ADD_INVITED_TEAM = 0x11, LEAGUE_AUDIT_ACTION_LEAGUE_REMOVE_INVITED_TEAM = 0x12, LEAGUE_AUDIT_ACTION_LEAGUE_STATUS_CHANGED = 0x13, LEAGUE_AUDIT_ACTION_LEAGUE_STREAM_EDIT = 0x14, LEAGUE_AUDIT_ACTION_LEAGUE_TEAM_SWAP = 0x15, LEAGUE_AUDIT_ACTION_NODEGROUP_CREATE = 0x64, LEAGUE_AUDIT_ACTION_NODEGROUP_DESTROY = 0x65, LEAGUE_AUDIT_ACTION_NODEGROUP_ADD_TEAM = 0x66, LEAGUE_AUDIT_ACTION_NODEGROUP_REMOVE_TEAM = 0x67, LEAGUE_AUDIT_ACTION_NODEGROUP_SET_ADVANCING = 0x68, LEAGUE_AUDIT_ACTION_NODEGROUP_EDIT = 0x69, LEAGUE_AUDIT_ACTION_NODEGROUP_POPULATE = 0x6a, LEAGUE_AUDIT_ACTION_NODEGROUP_COMPLETED = 0x6b, LEAGUE_AUDIT_ACTION_NODEGROUP_SET_SECONDARY_ADVANCING = 0x6c, LEAGUE_AUDIT_ACTION_NODEGROUP_SET_TERTIARY_ADVANCING = 0x6d, LEAGUE_AUDIT_ACTION_NODE_CREATE = 0xc8, LEAGUE_AUDIT_ACTION_NODE_DESTROY = 0xc9, LEAGUE_AUDIT_ACTION_NODE_AUTOCREATE = 0xca, LEAGUE_AUDIT_ACTION_NODE_SET_TEAM = 0xcb, LEAGUE_AUDIT_ACTION_NODE_SET_SERIES_ID = 0xcc, LEAGUE_AUDIT_ACTION_NODE_SET_ADVANCING = 0xcd, LEAGUE_AUDIT_ACTION_NODE_SET_TIME = 0xce, LEAGUE_AUDIT_ACTION_NODE_MATCH_COMPLETED = 0xcf, LEAGUE_AUDIT_ACTION_NODE_COMPLETED = 0xd0, LEAGUE_AUDIT_ACTION_NODE_EDIT = 0xd1, }; // Alignment: 4 // Size: 0x2d enum class DOTA_COMBATLOG_TYPES : uint32_t { DOTA_COMBATLOG_INVALID = 0xffffffffffffffff, DOTA_COMBATLOG_DAMAGE = 0x0, DOTA_COMBATLOG_HEAL = 0x1, DOTA_COMBATLOG_MODIFIER_ADD = 0x2, DOTA_COMBATLOG_MODIFIER_REMOVE = 0x3, DOTA_COMBATLOG_DEATH = 0x4, DOTA_COMBATLOG_ABILITY = 0x5, DOTA_COMBATLOG_ITEM = 0x6, DOTA_COMBATLOG_LOCATION = 0x7, DOTA_COMBATLOG_GOLD = 0x8, DOTA_COMBATLOG_GAME_STATE = 0x9, DOTA_COMBATLOG_XP = 0xa, DOTA_COMBATLOG_PURCHASE = 0xb, DOTA_COMBATLOG_BUYBACK = 0xc, DOTA_COMBATLOG_ABILITY_TRIGGER = 0xd, DOTA_COMBATLOG_PLAYERSTATS = 0xe, DOTA_COMBATLOG_MULTIKILL = 0xf, DOTA_COMBATLOG_KILLSTREAK = 0x10, DOTA_COMBATLOG_TEAM_BUILDING_KILL = 0x11, DOTA_COMBATLOG_FIRST_BLOOD = 0x12, DOTA_COMBATLOG_MODIFIER_STACK_EVENT = 0x13, DOTA_COMBATLOG_NEUTRAL_CAMP_STACK = 0x14, DOTA_COMBATLOG_PICKUP_RUNE = 0x15, DOTA_COMBATLOG_REVEALED_INVISIBLE = 0x16, DOTA_COMBATLOG_HERO_SAVED = 0x17, DOTA_COMBATLOG_MANA_RESTORED = 0x18, DOTA_COMBATLOG_HERO_LEVELUP = 0x19, DOTA_COMBATLOG_BOTTLE_HEAL_ALLY = 0x1a, DOTA_COMBATLOG_ENDGAME_STATS = 0x1b, DOTA_COMBATLOG_INTERRUPT_CHANNEL = 0x1c, DOTA_COMBATLOG_ALLIED_GOLD = 0x1d, DOTA_COMBATLOG_AEGIS_TAKEN = 0x1e, DOTA_COMBATLOG_MANA_DAMAGE = 0x1f, DOTA_COMBATLOG_PHYSICAL_DAMAGE_PREVENTED = 0x20, DOTA_COMBATLOG_UNIT_SUMMONED = 0x21, DOTA_COMBATLOG_ATTACK_EVADE = 0x22, DOTA_COMBATLOG_TREE_CUT = 0x23, DOTA_COMBATLOG_SUCCESSFUL_SCAN = 0x24, DOTA_COMBATLOG_END_KILLSTREAK = 0x25, DOTA_COMBATLOG_BLOODSTONE_CHARGE = 0x26, DOTA_COMBATLOG_CRITICAL_DAMAGE = 0x27, DOTA_COMBATLOG_SPELL_ABSORB = 0x28, DOTA_COMBATLOG_UNIT_TELEPORTED = 0x29, DOTA_COMBATLOG_KILL_EATER_EVENT = 0x2a, DOTA_COMBATLOG_NEUTRAL_ITEM_EARNED = 0x2b, }; // Alignment: 4 // Size: 0x4 enum class EDPCFavoriteType : uint32_t { FAVORITE_TYPE_ALL = 0x0, FAVORITE_TYPE_PLAYER = 0x1, FAVORITE_TYPE_TEAM = 0x2, FAVORITE_TYPE_LEAGUE = 0x3, }; // Alignment: 4 // Size: 0xb enum class EDPCPushNotification : uint32_t { DPC_PUSH_NOTIFICATION_MATCH_STARTING = 0x1, DPC_PUSH_NOTIFICATION_PLAYER_LEFT_TEAM = 0xa, DPC_PUSH_NOTIFICATION_PLAYER_JOINED_TEAM = 0xb, DPC_PUSH_NOTIFICATION_PLAYER_JOINED_TEAM_AS_COACH = 0xc, DPC_PUSH_NOTIFICATION_PLAYER_LEFT_TEAM_AS_COACH = 0xd, DPC_PUSH_NOTIFICATION_LEAGUE_RESULT = 0x14, DPC_PUSH_NOTIFICATION_PREDICTION_MATCHES_AVAILABLE = 0x1e, DPC_PUSH_NOTIFICATION_PREDICTION_RESULT = 0x1f, DPC_PUSH_NOTIFICATION_FANTASY_PLAYER_CLEARED = 0x28, DPC_PUSH_NOTIFICATION_FANTASY_DAILY_SUMMARY = 0x29, DPC_PUSH_NOTIFICATION_FANTASY_FINAL_RESULTS = 0x2a, }; // Alignment: 4 // Size: 0x2 enum class EEventActionScoreMode : uint32_t { k_eEventActionScoreMode_Add = 0x0, k_eEventActionScoreMode_Min = 0x1, }; // Alignment: 4 // Size: 0x6 enum class EPlayerChallengeHistoryType : uint32_t { k_EPlayerChallengeHistoryType_Invalid = 0x0, k_EPlayerChallengeHistoryType_KillEater = 0x1, k_EPlayerChallengeHistoryType_DotaPlusRelic = 0x2, k_EPlayerChallengeHistoryType_DotaPlusHeroPlayerChallenge = 0x3, k_EPlayerChallengeHistoryType_InGameEventChallenge = 0x4, k_EPlayerChallengeHistoryType_GuildContract = 0x5, }; // Alignment: 4 // Size: 0x6 enum class EOverwatchReportReason : uint32_t { k_EOverwatchReportReason_Unknown = 0x0, k_EOverwatchReportReason_Cheating = 0x1, k_EOverwatchReportReason_Feeding = 0x2, k_EOverwatchReportReason_Griefing = 0x3, k_EOverwatchReportReason_Suspicious = 0x4, k_EOverwatchReportReason_AbilityAbuse = 0x5, }; // Alignment: 4 // Size: 0x2 enum class ESpecialPingValue : uint32_t { k_ESpecialPingValue_NoData = 0x3ffe, k_ESpecialPingValue_Failed = 0x3fff, }; // Alignment: 4 // Size: 0xe enum class EDOTAGCSessionNeed : uint32_t { k_EDOTAGCSessionNeed_Unknown = 0x0, k_EDOTAGCSessionNeed_UserNoSessionNeeded = 0x64, k_EDOTAGCSessionNeed_UserInOnlineGame = 0x65, k_EDOTAGCSessionNeed_UserInLocalGame = 0x66, k_EDOTAGCSessionNeed_UserInUIWasConnected = 0x67, k_EDOTAGCSessionNeed_UserInUINeverConnected = 0x68, k_EDOTAGCSessionNeed_UserTutorials = 0x69, k_EDOTAGCSessionNeed_UserInUIWasConnectedIdle = 0x6a, k_EDOTAGCSessionNeed_UserInUINeverConnectedIdle = 0x6b, k_EDOTAGCSessionNeed_GameServerOnline = 0xc8, k_EDOTAGCSessionNeed_GameServerLocal = 0xc9, k_EDOTAGCSessionNeed_GameServerIdle = 0xca, k_EDOTAGCSessionNeed_GameServerRelay = 0xcb, k_EDOTAGCSessionNeed_GameServerLocalUpload = 0xcc, }; // Alignment: 4 // Size: 0xc enum class DOTA_TournamentEvents : uint32_t { TE_FIRST_BLOOD = 0x0, TE_GAME_END = 0x1, TE_MULTI_KILL = 0x2, TE_HERO_DENY = 0x3, TE_AEGIS_DENY = 0x4, TE_AEGIS_STOLEN = 0x5, TE_GODLIKE = 0x6, TE_COURIER_KILL = 0x7, TE_ECHOSLAM = 0x8, TE_RAPIER = 0x9, TE_EARLY_ROSHAN = 0xa, TE_BLACK_HOLE = 0xb, }; // Alignment: 4 // Size: 0x9 enum class EBroadcastTimelineEvent : uint32_t { EBroadcastTimelineEvent_MatchStarted = 0x1, EBroadcastTimelineEvent_GameStateChanged = 0x2, EBroadcastTimelineEvent_TowerDeath = 0x3, EBroadcastTimelineEvent_BarracksDeath = 0x4, EBroadcastTimelineEvent_AncientDeath = 0x5, EBroadcastTimelineEvent_RoshanDeath = 0x6, EBroadcastTimelineEvent_HeroDeath = 0x7, EBroadcastTimelineEvent_TeamFight = 0x8, EBroadcastTimelineEvent_FirstBlood = 0x9, }; // Alignment: 4 // Size: 0x3 enum class ECustomGameWhitelistState : uint32_t { CUSTOM_GAME_WHITELIST_STATE_UNKNOWN = 0x0, CUSTOM_GAME_WHITELIST_STATE_APPROVED = 0x1, CUSTOM_GAME_WHITELIST_STATE_REJECTED = 0x2, }; // Alignment: 4 // Size: 0x12 enum class EDOTATriviaQuestionCategory : uint32_t { k_EDOTATriviaQuestionCategory_AbilityIcon = 0x0, k_EDOTATriviaQuestionCategory_AbilityCooldown = 0x1, k_EDOTATriviaQuestionCategory_HeroAttributes = 0x2, k_EDOTATriviaQuestionCategory_HeroMovementSpeed = 0x3, k_EDOTATriviaQuestionCategory_TalentTree = 0x4, k_EDOTATriviaQuestionCategory_HeroStats = 0x5, k_EDOTATriviaQuestionCategory_ItemPrice = 0x6, k_EDOTATriviaQuestionCategory_AbilitySound = 0x7, k_EDOTATriviaQuestionCategory_InvokerSpells = 0x8, k_EDOTATriviaQuestionCategory_AbilityManaCost = 0x9, k_EDOTATriviaQuestionCategory_HeroAttackSound = 0xa, k_EDOTATriviaQuestionCategory_AbilityName = 0xb, k_EDOTATriviaQuestionCategory_ItemComponents = 0xc, k_EDOTATriviaQuestionCategory_ItemLore = 0xd, k_EDOTATriviaQuestionCategory_ItemPassives = 0xe, k_EDOTATriviaQuestionCategory_STATIC_QUESTIONS_END = 0xf, k_EDOTATriviaQuestionCategory_DYNAMIC_QUESTIONS_START = 0x63, k_EDOTATriviaQuestionCategory_Dynamic_ItemBuild = 0x64, }; // Alignment: 4 // Size: 0x4 enum class EOverwatchConviction : uint32_t { k_EOverwatchConviction_None = 0x0, k_EOverwatchConviction_NotGuilty = 0x1, k_EOverwatchConviction_GuiltUnclear = 0x2, k_EOverwatchConviction_Guilty = 0x3, }; // Alignment: 4 // Size: 0x3 enum class EHeroRelicRarity : uint32_t { HERO_RELIC_RARITY_INVALID = 0xffffffffffffffff, HERO_RELIC_RARITY_COMMON = 0x0, HERO_RELIC_RARITY_RARE = 0x1, }; // Alignment: 4 // Size: 0x5 enum class EStickerbookAuditAction : uint32_t { STICKERBOOK_AUDIT_CREATE_PAGE = 0x0, STICKERBOOK_AUDIT_DELETE_PAGE = 0x1, STICKERBOOK_AUDIT_STICK_STICKERS = 0x2, STICKERBOOK_AUDIT_REPLACE_STICKERS = 0x3, STICKERBOOK_AUDIT_HERO_STICKER = 0x4, }; // Alignment: 4 // Size: 0x3 enum class EStickerbookPageType : uint32_t { STICKER_PAGE_GENERIC = 0x0, STICKER_PAGE_TEAM = 0x1, STICKER_PAGE_TALENT = 0x2, }; // Alignment: 4 // Size: 0x3 enum class ELobbyMemberCoachRequestState : uint32_t { k_eLobbyMemberCoachRequestState_None = 0x0, k_eLobbyMemberCoachRequestState_Accepted = 0x1, k_eLobbyMemberCoachRequestState_Rejected = 0x2, }; // Alignment: 4 // Size: 0x4 enum class LobbyDotaTVDelay : uint32_t { LobbyDotaTV_10 = 0x0, LobbyDotaTV_120 = 0x1, LobbyDotaTV_300 = 0x2, LobbyDotaTV_900 = 0x3, }; // Alignment: 4 // Size: 0x3 enum class LobbyDotaPauseSetting : uint32_t { LobbyDotaPauseSetting_Unlimited = 0x0, LobbyDotaPauseSetting_Limited = 0x1, LobbyDotaPauseSetting_Disabled = 0x2, }; // Alignment: 4 // Size: 0x5 enum class ELaneSelection : uint32_t { k_ELaneSelection_SAFELANE = 0x0, k_ELaneSelection_OFFLANE = 0x1, k_ELaneSelection_MIDLANE = 0x2, k_ELaneSelection_SUPPORT_SOFT = 0x3, k_ELaneSelection_SUPPORT_HARD = 0x4, }; // Alignment: 4 // Size: 0x9 enum class ELaneSelectionFlags : uint32_t { k_ELaneSelectionFlags_None = 0x0, k_ELaneSelectionFlags_SAFELANE = 0x1, k_ELaneSelectionFlags_OFFLANE = 0x2, k_ELaneSelectionFlags_MIDLANE = 0x4, k_ELaneSelectionFlags_SUPPORT_SOFT = 0x8, k_ELaneSelectionFlags_SUPPORT_HARD = 0x10, k_ELaneSelectionFlags_CORE = 0x7, k_ELaneSelectionFlags_SUPPORT = 0x18, k_ELaneSelectionFlags_ALL = 0x1f, }; // Alignment: 4 // Size: 0x2 enum class EPartyMatchmakingFlags : uint32_t { k_EPartyMatchmakingFlags_None = 0x0, k_EPartyMatchmakingFlags_LargeRankSpread = 0x1, }; // Alignment: 4 // Size: 0x9 enum class EHighPriorityMMState : uint32_t { k_EHighPriorityMM_Unknown = 0x0, k_EHighPriorityMM_MissingMMData = 0x1, k_EHighPriorityMM_ResourceMissing = 0x2, k_EHighPriorityMM_ManuallyDisabled = 0x3, k_EHighPriorityMM_Min_Enabled = 0x40, k_EHighPriorityMM_AllRolesSelected = 0x41, k_EHighPriorityMM_UsingResource = 0x42, k_EHighPriorityMM_FiveStack = 0x43, k_EHighPriorityMM_HighDemand = 0x44, }; // Alignment: 4 // Size: 0x3 enum class EReadyCheckStatus : uint32_t { k_EReadyCheckStatus_Unknown = 0x0, k_EReadyCheckStatus_NotReady = 0x1, k_EReadyCheckStatus_Ready = 0x2, }; // Alignment: 4 // Size: 0x5 enum class EReadyCheckRequestResult : uint32_t { k_EReadyCheckRequestResult_Success = 0x0, k_EReadyCheckRequestResult_AlreadyInProgress = 0x1, k_EReadyCheckRequestResult_NotInParty = 0x2, k_EReadyCheckRequestResult_SendError = 0x3, k_EReadyCheckRequestResult_UnknownError = 0x4, }; // Alignment: 4 // Size: 0x4 enum class EMatchBehaviorScoreVariance : uint32_t { k_EMatchBehaviorScoreVariance_Invalid = 0x0, k_EMatchBehaviorScoreVariance_Low = 0x1, k_EMatchBehaviorScoreVariance_Medium = 0x2, k_EMatchBehaviorScoreVariance_High = 0x3, }; // Alignment: 4 // Size: 0x9 enum class ELeagueNodeGroupType : uint32_t { INVALID_GROUP_TYPE = 0x0, ORGANIZATIONAL = 0x1, ROUND_ROBIN = 0x2, SWISS = 0x3, BRACKET_SINGLE = 0x4, BRACKET_DOUBLE_SEED_LOSER = 0x5, BRACKET_DOUBLE_ALL_WINNER = 0x6, SHOWMATCH = 0x7, GSL = 0x8, }; // Alignment: 4 // Size: 0x5 enum class ELeagueNodeType : uint32_t { INVALID_NODE_TYPE = 0x0, BEST_OF_ONE = 0x1, BEST_OF_THREE = 0x2, BEST_OF_FIVE = 0x3, BEST_OF_TWO = 0x4, }; // Alignment: 4 // Size: 0x32e enum class EDOTAGCMsg : uint32_t { k_EMsgGCDOTABase = 0x1b58, k_EMsgGCGameMatchSignOut = 0x1b5c, k_EMsgGCGameMatchSignOutResponse = 0x1b5d, k_EMsgGCJoinChatChannel = 0x1b61, k_EMsgGCJoinChatChannelResponse = 0x1b62, k_EMsgGCOtherJoinedChannel = 0x1b65, k_EMsgGCOtherLeftChannel = 0x1b66, k_EMsgServerToGCRequestStatus = 0x1b72, k_EMsgGCStartFindingMatch = 0x1b79, k_EMsgGCConnectedPlayers = 0x1b7a, k_EMsgGCAbandonCurrentGame = 0x1b7b, k_EMsgGCStopFindingMatch = 0x1b7c, k_EMsgGCPracticeLobbyCreate = 0x1b7e, k_EMsgGCPracticeLobbyLeave = 0x1b80, k_EMsgGCPracticeLobbyLaunch = 0x1b81, k_EMsgGCPracticeLobbyList = 0x1b82, k_EMsgGCPracticeLobbyListResponse = 0x1b83, k_EMsgGCPracticeLobbyJoin = 0x1b84, k_EMsgGCPracticeLobbySetDetails = 0x1b86, k_EMsgGCPracticeLobbySetTeamSlot = 0x1b87, k_EMsgGCInitialQuestionnaireResponse = 0x1b89, k_EMsgGCPracticeLobbyResponse = 0x1b8f, k_EMsgGCBroadcastNotification = 0x1b90, k_EMsgGCLiveScoreboardUpdate = 0x1b91, k_EMsgGCRequestChatChannelList = 0x1b94, k_EMsgGCRequestChatChannelListResponse = 0x1b95, k_EMsgGCReadyUp = 0x1b9e, k_EMsgGCKickedFromMatchmakingQueue = 0x1b9f, k_EMsgGCLeaverDetected = 0x1ba0, k_EMsgGCSpectateFriendGame = 0x1ba1, k_EMsgGCSpectateFriendGameResponse = 0x1ba2, k_EMsgGCReportsRemainingRequest = 0x1ba4, k_EMsgGCReportsRemainingResponse = 0x1ba5, k_EMsgGCSubmitPlayerReport = 0x1ba6, k_EMsgGCSubmitPlayerReportResponse = 0x1ba7, k_EMsgGCPracticeLobbyKick = 0x1ba9, k_EMsgGCRequestSaveGames = 0x1bac, k_EMsgGCRequestSaveGamesServer = 0x1bad, k_EMsgGCRequestSaveGamesResponse = 0x1bae, k_EMsgGCLeaverDetectedResponse = 0x1baf, k_EMsgGCPlayerFailedToConnect = 0x1bb0, k_EMsgGCGCToRelayConnect = 0x1bb1, k_EMsgGCGCToRelayConnectresponse = 0x1bb2, k_EMsgGCWatchGame = 0x1bb3, k_EMsgGCWatchGameResponse = 0x1bb4, k_EMsgGCBanStatusRequest = 0x1bb5, k_EMsgGCBanStatusResponse = 0x1bb6, k_EMsgGCMatchDetailsRequest = 0x1bb7, k_EMsgGCMatchDetailsResponse = 0x1bb8, k_EMsgGCCancelWatchGame = 0x1bb9, k_EMsgGCPopup = 0x1bbe, k_EMsgGCFriendPracticeLobbyListRequest = 0x1bc7, k_EMsgGCFriendPracticeLobbyListResponse = 0x1bc8, k_EMsgGCPracticeLobbyJoinResponse = 0x1bc9, k_EMsgGCCreateTeam = 0x1bcb, k_EMsgGCCreateTeamResponse = 0x1bcc, k_EMsgGCTeamInvite_InviterToGC = 0x1bd2, k_EMsgGCTeamInvite_GCImmediateResponseToInviter = 0x1bd3, k_EMsgGCTeamInvite_GCRequestToInvitee = 0x1bd4, k_EMsgGCTeamInvite_InviteeResponseToGC = 0x1bd5, k_EMsgGCTeamInvite_GCResponseToInviter = 0x1bd6, k_EMsgGCTeamInvite_GCResponseToInvitee = 0x1bd7, k_EMsgGCKickTeamMember = 0x1bd8, k_EMsgGCKickTeamMemberResponse = 0x1bd9, k_EMsgGCLeaveTeam = 0x1bda, k_EMsgGCLeaveTeamResponse = 0x1bdb, k_EMsgGCApplyTeamToPracticeLobby = 0x1be6, k_EMsgGCTransferTeamAdmin = 0x1be8, k_EMsgGCPracticeLobbyJoinBroadcastChannel = 0x1bed, k_EMsgGC_TournamentItemEvent = 0x1bee, k_EMsgGC_TournamentItemEventResponse = 0x1bef, k_EMsgTeamFanfare = 0x1bf4, k_EMsgResponseTeamFanfare = 0x1bf5, k_EMsgGC_GameServerUploadSaveGame = 0x1bf6, k_EMsgGC_GameServerSaveGameResult = 0x1bf7, k_EMsgGC_GameServerGetLoadGame = 0x1bf8, k_EMsgGC_GameServerGetLoadGameResult = 0x1bf9, k_EMsgGCEditTeamDetails = 0x1bfe, k_EMsgGCEditTeamDetailsResponse = 0x1bff, k_EMsgGCReadyUpStatus = 0x1c02, k_EMsgGCToGCMatchCompleted = 0x1c12, k_EMsgGCBalancedShuffleLobby = 0x1c14, k_EMsgGCMatchmakingStatsRequest = 0x1c1d, k_EMsgGCMatchmakingStatsResponse = 0x1c1e, k_EMsgGCBotGameCreate = 0x1c1f, k_EMsgGCSetMatchHistoryAccess = 0x1c20, k_EMsgGCSetMatchHistoryAccessResponse = 0x1c21, k_EMsgUpgradeLeagueItem = 0x1c23, k_EMsgUpgradeLeagueItemResponse = 0x1c24, k_EMsgGCWatchDownloadedReplay = 0x1c26, k_EMsgClientsRejoinChatChannels = 0x1c31, k_EMsgGCToGCGetUserChatInfo = 0x1c32, k_EMsgGCToGCGetUserChatInfoResponse = 0x1c33, k_EMsgGCToGCLeaveAllChatChannels = 0x1c34, k_EMsgGCToGCUpdateAccountChatBan = 0x1c35, k_EMsgGCToGCCanInviteUserToTeam = 0x1c42, k_EMsgGCToGCCanInviteUserToTeamResponse = 0x1c43, k_EMsgGCToGCGetUserRank = 0x1c44, k_EMsgGCToGCGetUserRankResponse = 0x1c45, k_EMsgGCToGCUpdateTeamStats = 0x1c48, k_EMsgGCToGCValidateTeam = 0x1c49, k_EMsgGCToGCValidateTeamResponse = 0x1c4a, k_EMsgGCToGCGetLeagueAdmin = 0x1c57, k_EMsgGCToGCGetLeagueAdminResponse = 0x1c58, k_EMsgGCLeaveChatChannel = 0x1c68, k_EMsgGCChatMessage = 0x1c69, k_EMsgGCGetHeroStandings = 0x1c6a, k_EMsgGCGetHeroStandingsResponse = 0x1c6b, k_EMsgGCItemEditorReservationsRequest = 0x1c73, k_EMsgGCItemEditorReservationsResponse = 0x1c74, k_EMsgGCItemEditorReserveItemDef = 0x1c75, k_EMsgGCItemEditorReserveItemDefResponse = 0x1c76, k_EMsgGCItemEditorReleaseReservation = 0x1c77, k_EMsgGCItemEditorReleaseReservationResponse = 0x1c78, k_EMsgGCRewardTutorialPrizes = 0x1c79, k_EMsgGCFantasyLivePlayerStats = 0x1c8c, k_EMsgGCFantasyFinalPlayerStats = 0x1c8d, k_EMsgGCFlipLobbyTeams = 0x1c98, k_EMsgGCToGCProcessPlayerReportForTarget = 0x1c9c, k_EMsgGCToGCProcessReportSuccess = 0x1c9d, k_EMsgGCNotifyAccountFlagsChange = 0x1c9e, k_EMsgGCSetProfilePrivacy = 0x1c9f, k_EMsgGCSetProfilePrivacyResponse = 0x1ca0, k_EMsgGCClientSuspended = 0x1cae, k_EMsgGCPartyMemberSetCoach = 0x1caf, k_EMsgGCPracticeLobbySetCoach = 0x1cb2, k_EMsgGCChatModeratorBan = 0x1cbf, k_EMsgGCLobbyUpdateBroadcastChannelInfo = 0x1cc7, k_EMsgGCToGCGrantTournamentItem = 0x1ccc, k_EMsgGCToGCUpgradeTwitchViewerItems = 0x1ccf, k_EMsgGCToGCGetLiveMatchAffiliates = 0x1cd0, k_EMsgGCToGCGetLiveMatchAffiliatesResponse = 0x1cd1, k_EMsgGCToGCUpdatePlayerPennantCounts = 0x1cd2, k_EMsgGCToGCGetPlayerPennantCounts = 0x1cd3, k_EMsgGCToGCGetPlayerPennantCountsResponse = 0x1cd4, k_EMsgGCGameMatchSignOutPermissionRequest = 0x1cd5, k_EMsgGCGameMatchSignOutPermissionResponse = 0x1cd6, k_EMsgDOTAAwardEventPoints = 0x1cd8, k_EMsgDOTAGetEventPoints = 0x1cdb, k_EMsgDOTAGetEventPointsResponse = 0x1cdc, k_EMsgGCPartyLeaderWatchGamePrompt = 0x1ce5, k_EMsgGCCompendiumSetSelection = 0x1ced, k_EMsgGCCompendiumDataRequest = 0x1cee, k_EMsgGCCompendiumDataResponse = 0x1cef, k_EMsgDOTAGetPlayerMatchHistory = 0x1cf0, k_EMsgDOTAGetPlayerMatchHistoryResponse = 0x1cf1, k_EMsgGCToGCMatchmakingAddParty = 0x1cf2, k_EMsgGCToGCMatchmakingRemoveParty = 0x1cf3, k_EMsgGCToGCMatchmakingRemoveAllParties = 0x1cf4, k_EMsgGCToGCMatchmakingMatchFound = 0x1cf5, k_EMsgGCToGCUpdateMatchManagementStats = 0x1cf6, k_EMsgGCToGCUpdateMatchmakingStats = 0x1cf7, k_EMsgGCToServerPingRequest = 0x1cf8, k_EMsgGCToServerPingResponse = 0x1cf9, k_EMsgGCToGCProcessMatchLeaver = 0x1d02, k_EMsgGCNotificationsRequest = 0x1d03, k_EMsgGCNotificationsResponse = 0x1d04, k_EMsgGCToGCModifyNotification = 0x1d05, k_EMsgGCLeagueAdminList = 0x1d0a, k_EMsgGCNotificationsMarkReadRequest = 0x1d0b, k_EMsgServerToGCRequestBatchPlayerResources = 0x1d1a, k_EMsgServerToGCRequestBatchPlayerResourcesResponse = 0x1d1b, k_EMsgGCCompendiumSetSelectionResponse = 0x1d1d, k_EMsgGCPlayerInfoSubmit = 0x1d20, k_EMsgGCPlayerInfoSubmitResponse = 0x1d21, k_EMsgGCToGCGetAccountLevel = 0x1d22, k_EMsgGCToGCGetAccountLevelResponse = 0x1d23, k_EMsgDOTAGetWeekendTourneySchedule = 0x1d28, k_EMsgDOTAWeekendTourneySchedule = 0x1d29, k_EMsgGCJoinableCustomGameModesRequest = 0x1d2a, k_EMsgGCJoinableCustomGameModesResponse = 0x1d2b, k_EMsgGCJoinableCustomLobbiesRequest = 0x1d2c, k_EMsgGCJoinableCustomLobbiesResponse = 0x1d2d, k_EMsgGCQuickJoinCustomLobby = 0x1d2e, k_EMsgGCQuickJoinCustomLobbyResponse = 0x1d2f, k_EMsgGCToGCGrantEventPointAction = 0x1d30, k_EMsgGCToGCSetCompendiumSelection = 0x1d36, k_EMsgGCHasItemQuery = 0x1d3c, k_EMsgGCHasItemResponse = 0x1d3d, k_EMsgGCToGCGrantEventPointActionMsg = 0x1d40, k_EMsgGCToGCGetCompendiumSelections = 0x1d44, k_EMsgGCToGCGetCompendiumSelectionsResponse = 0x1d45, k_EMsgServerToGCMatchConnectionStats = 0x1d46, k_EMsgGCToClientTournamentItemDrop = 0x1d47, k_EMsgSQLDelayedGrantLeagueDrop = 0x1d48, k_EMsgServerGCUpdateSpectatorCount = 0x1d49, k_EMsgGCToGCEmoticonUnlock = 0x1d4d, k_EMsgSignOutDraftInfo = 0x1d4e, k_EMsgClientToGCEmoticonDataRequest = 0x1d4f, k_EMsgGCToClientEmoticonData = 0x1d50, k_EMsgGCPracticeLobbyToggleBroadcastChannelCameramanStatus = 0x1d51, k_EMsgDOTARedeemItem = 0x1d5e, k_EMsgDOTARedeemItemResponse = 0x1d5f, k_EMsgClientToGCGetAllHeroProgress = 0x1d61, k_EMsgClientToGCGetAllHeroProgressResponse = 0x1d62, k_EMsgGCToGCGetServerForClient = 0x1d63, k_EMsgGCToGCGetServerForClientResponse = 0x1d64, k_EMsgSQLProcessTournamentGameOutcome = 0x1d65, k_EMsgSQLGrantTrophyToAccount = 0x1d66, k_EMsgClientToGCGetTrophyList = 0x1d67, k_EMsgClientToGCGetTrophyListResponse = 0x1d68, k_EMsgGCToClientTrophyAwarded = 0x1d69, k_EMsgGCGameBotMatchSignOut = 0x1d6a, k_EMsgGCGameBotMatchSignOutPermissionRequest = 0x1d6b, k_EMsgSignOutBotInfo = 0x1d6c, k_EMsgGCToGCUpdateProfileCards = 0x1d6d, k_EMsgClientToGCGetProfileCard = 0x1d6e, k_EMsgClientToGCGetProfileCardResponse = 0x1d6f, k_EMsgClientToGCGetBattleReport = 0x1d70, k_EMsgClientToGCGetBattleReportResponse = 0x1d71, k_EMsgClientToGCSetProfileCardSlots = 0x1d72, k_EMsgGCToClientProfileCardUpdated = 0x1d73, k_EMsgServerToGCVictoryPredictions = 0x1d74, k_EMsgClientToGCGetBattleReportAggregateStats = 0x1d75, k_EMsgClientToGCGetBattleReportAggregateStatsResponse = 0x1d76, k_EMsgClientToGCGetBattleReportInfo = 0x1d77, k_EMsgClientToGCGetBattleReportInfoResponse = 0x1d78, k_EMsgSignOutCommunicationSummary = 0x1d79, k_EMsgServerToGCRequestStatus_Response = 0x1d7a, k_EMsgClientToGCCreateHeroStatue = 0x1d7b, k_EMsgGCToClientHeroStatueCreateResult = 0x1d7c, k_EMsgGCGCToLANServerRelayConnect = 0x1d7d, k_EMsgClientToGCAcknowledgeBattleReport = 0x1d7e, k_EMsgClientToGCAcknowledgeBattleReportResponse = 0x1d7f, k_EMsgClientToGCGetBattleReportMatchHistory = 0x1d80, k_EMsgClientToGCGetBattleReportMatchHistoryResponse = 0x1d81, k_EMsgServerToGCReportKillSummaries = 0x1d82, k_EMsgGCToGCUpdatePlayerPredictions = 0x1d89, k_EMsgGCToServerPredictionResult = 0x1d8a, k_EMsgGCToGCReplayMonitorValidateReplay = 0x1d91, k_EMsgLobbyEventPoints = 0x1d94, k_EMsgGCToGCGetCustomGameTickets = 0x1d95, k_EMsgGCToGCGetCustomGameTicketsResponse = 0x1d96, k_EMsgGCToGCCustomGamePlayed = 0x1d98, k_EMsgGCToGCGrantEventPointsToUser = 0x1d99, k_EMsgGameserverCrashReport = 0x1d9b, k_EMsgGameserverCrashReportResponse = 0x1d9c, k_EMsgGCToClientSteamDatagramTicket = 0x1d9d, k_EMsgGCToGCSendAccountsEventPoints = 0x1d9f, k_EMsgClientToGCRerollPlayerChallenge = 0x1da0, k_EMsgServerToGCRerollPlayerChallenge = 0x1da1, k_EMsgGCRerollPlayerChallengeResponse = 0x1da2, k_EMsgSignOutUpdatePlayerChallenge = 0x1da3, k_EMsgClientToGCSetPartyLeader = 0x1da4, k_EMsgClientToGCCancelPartyInvites = 0x1da5, k_EMsgSQLGrantLeagueMatchToTicketHolders = 0x1da8, k_EMsgGCToGCEmoticonUnlockNoRollback = 0x1daa, k_EMsgClientToGCApplyGemCombiner = 0x1db3, k_EMsgClientToGCGetAllHeroOrder = 0x1db6, k_EMsgClientToGCGetAllHeroOrderResponse = 0x1db7, k_EMsgSQLGCToGCGrantBadgePoints = 0x1db8, k_EMsgGCToGCCheckOwnsEntireEmoticonRange = 0x1dbb, k_EMsgGCToGCCheckOwnsEntireEmoticonRangeResponse = 0x1dbc, k_EMsgGCToClientRequestLaneSelection = 0x1dc7, k_EMsgGCToClientRequestLaneSelectionResponse = 0x1dc8, k_EMsgServerToGCCavernCrawlIsHeroActive = 0x1dc9, k_EMsgServerToGCCavernCrawlIsHeroActiveResponse = 0x1dca, k_EMsgClientToGCPlayerCardSpecificPurchaseRequest = 0x1dcb, k_EMsgClientToGCPlayerCardSpecificPurchaseResponse = 0x1dcc, k_EMsgGCtoServerTensorflowInstance = 0x1dcd, k_EMsgSQLSetIsLeagueAdmin = 0x1dce, k_EMsgGCToGCGetLiveLeagueMatches = 0x1dcf, k_EMsgGCToGCGetLiveLeagueMatchesResponse = 0x1dd0, k_EMsgDOTALeagueInfoListAdminsRequest = 0x1dd1, k_EMsgDOTALeagueInfoListAdminsReponse = 0x1dd2, k_EMsgGCToGCLeagueMatchStarted = 0x1ddd, k_EMsgGCToGCLeagueMatchCompleted = 0x1dde, k_EMsgGCToGCLeagueMatchStartedResponse = 0x1ddf, k_EMsgDOTALeagueAvailableLobbyNodesRequest = 0x1de2, k_EMsgDOTALeagueAvailableLobbyNodes = 0x1de3, k_EMsgGCToGCLeagueRequest = 0x1de4, k_EMsgGCToGCLeagueResponse = 0x1de5, k_EMsgGCToGCLeagueNodeGroupRequest = 0x1de6, k_EMsgGCToGCLeagueNodeGroupResponse = 0x1de7, k_EMsgGCToGCLeagueNodeRequest = 0x1de8, k_EMsgGCToGCLeagueNodeResponse = 0x1de9, k_EMsgGCToGCRealtimeStatsTerseRequest = 0x1dea, k_EMsgGCToGCRealtimeStatsTerseResponse = 0x1deb, k_EMsgGCToGCGetTopMatchesRequest = 0x1dec, k_EMsgGCToGCGetTopMatchesResponse = 0x1ded, k_EMsgClientToGCGetFilteredPlayers = 0x1dee, k_EMsgGCToClientGetFilteredPlayersResponse = 0x1def, k_EMsgClientToGCRemoveFilteredPlayer = 0x1df0, k_EMsgGCToClientRemoveFilteredPlayerResponse = 0x1df1, k_EMsgGCToClientPlayerBeaconState = 0x1df2, k_EMsgGCToClientPartyBeaconUpdate = 0x1df3, k_EMsgGCToClientPartySearchInvite = 0x1df4, k_EMsgClientToGCUpdatePartyBeacon = 0x1df5, k_EMsgClientToGCRequestActiveBeaconParties = 0x1df6, k_EMsgGCToClientRequestActiveBeaconPartiesResponse = 0x1df7, k_EMsgClientToGCManageFavorites = 0x1df8, k_EMsgGCToClientManageFavoritesResponse = 0x1df9, k_EMsgClientToGCJoinPartyFromBeacon = 0x1dfa, k_EMsgGCToClientJoinPartyFromBeaconResponse = 0x1dfb, k_EMsgClientToGCGetFavoritePlayers = 0x1dfc, k_EMsgGCToClientGetFavoritePlayersResponse = 0x1dfd, k_EMsgClientToGCVerifyFavoritePlayers = 0x1dfe, k_EMsgGCToClientVerifyFavoritePlayersResponse = 0x1dff, k_EMsgGCToClientPartySearchInvites = 0x1e00, k_EMsgGCToClientRequestMMInfo = 0x1e01, k_EMsgClientToGCMMInfo = 0x1e02, k_EMsgSignOutTextMuteInfo = 0x1e03, k_EMsgClientToGCPurchaseLabyrinthBlessings = 0x1e04, k_EMsgClientToGCPurchaseLabyrinthBlessingsResponse = 0x1e05, k_EMsgClientToGCPurchaseFilteredPlayerSlot = 0x1e06, k_EMsgGCToClientPurchaseFilteredPlayerSlotResponse = 0x1e07, k_EMsgClientToGCUpdateFilteredPlayerNote = 0x1e08, k_EMsgGCToClientUpdateFilteredPlayerNoteResponse = 0x1e09, k_EMsgClientToGCClaimSwag = 0x1e0a, k_EMsgGCToClientClaimSwagResponse = 0x1e0b, k_EMsgServerToGCLockCharmTrading = 0x1f44, k_EMsgClientToGCPlayerStatsRequest = 0x1f46, k_EMsgGCToClientPlayerStatsResponse = 0x1f47, k_EMsgGCClearPracticeLobbyTeam = 0x1f48, k_EMsgClientToGCFindTopSourceTVGames = 0x1f49, k_EMsgGCToClientFindTopSourceTVGamesResponse = 0x1f4a, k_EMsgGCLobbyList = 0x1f4b, k_EMsgGCLobbyListResponse = 0x1f4c, k_EMsgGCPlayerStatsMatchSignOut = 0x1f4d, k_EMsgClientToGCSocialFeedPostCommentRequest = 0x1f50, k_EMsgGCToClientSocialFeedPostCommentResponse = 0x1f51, k_EMsgClientToGCCustomGamesFriendsPlayedRequest = 0x1f52, k_EMsgGCToClientCustomGamesFriendsPlayedResponse = 0x1f53, k_EMsgClientToGCFriendsPlayedCustomGameRequest = 0x1f54, k_EMsgGCToClientFriendsPlayedCustomGameResponse = 0x1f55, k_EMsgGCTopCustomGamesList = 0x1f58, k_EMsgClientToGCSetPartyOpen = 0x1f5d, k_EMsgClientToGCMergePartyInvite = 0x1f5e, k_EMsgGCToClientMergeGroupInviteReply = 0x1f5f, k_EMsgClientToGCMergePartyResponse = 0x1f60, k_EMsgGCToClientMergePartyResponseReply = 0x1f61, k_EMsgClientToGCGetProfileCardStats = 0x1f62, k_EMsgClientToGCGetProfileCardStatsResponse = 0x1f63, k_EMsgClientToGCTopLeagueMatchesRequest = 0x1f64, k_EMsgClientToGCTopFriendMatchesRequest = 0x1f65, k_EMsgGCToClientProfileCardStatsUpdated = 0x1f68, k_EMsgServerToGCRealtimeStats = 0x1f69, k_EMsgGCToServerRealtimeStatsStartStop = 0x1f6a, k_EMsgGCToGCGetServersForClients = 0x1f6d, k_EMsgGCToGCGetServersForClientsResponse = 0x1f6e, k_EMsgGCPracticeLobbyKickFromTeam = 0x1f6f, k_EMsgDOTAChatGetMemberCount = 0x1f70, k_EMsgDOTAChatGetMemberCountResponse = 0x1f71, k_EMsgClientToGCSocialFeedPostMessageRequest = 0x1f72, k_EMsgGCToClientSocialFeedPostMessageResponse = 0x1f73, k_EMsgCustomGameListenServerStartedLoading = 0x1f74, k_EMsgCustomGameClientFinishedLoading = 0x1f75, k_EMsgGCPracticeLobbyCloseBroadcastChannel = 0x1f76, k_EMsgGCStartFindingMatchResponse = 0x1f77, k_EMsgSQLGCToGCGrantAccountFlag = 0x1f79, k_EMsgGCToClientTopLeagueMatchesResponse = 0x1f7d, k_EMsgGCToClientTopFriendMatchesResponse = 0x1f7e, k_EMsgClientToGCMatchesMinimalRequest = 0x1f7f, k_EMsgClientToGCMatchesMinimalResponse = 0x1f80, k_EMsgGCToClientChatRegionsEnabled = 0x1f83, k_EMsgClientToGCPingData = 0x1f84, k_EMsgGCToGCEnsureAccountInParty = 0x1f87, k_EMsgGCToGCEnsureAccountInPartyResponse = 0x1f88, k_EMsgClientToGCGetProfileTickets = 0x1f89, k_EMsgClientToGCGetProfileTicketsResponse = 0x1f8a, k_EMsgGCToClientMatchGroupsVersion = 0x1f8b, k_EMsgClientToGCH264Unsupported = 0x1f8c, k_EMsgClientToGCGetQuestProgress = 0x1f8e, k_EMsgClientToGCGetQuestProgressResponse = 0x1f8f, k_EMsgSignOutXPCoins = 0x1f90, k_EMsgGCToClientMatchSignedOut = 0x1f91, k_EMsgGCGetHeroStatsHistory = 0x1f92, k_EMsgGCGetHeroStatsHistoryResponse = 0x1f93, k_EMsgClientToGCPrivateChatInvite = 0x1f94, k_EMsgClientToGCPrivateChatKick = 0x1f98, k_EMsgClientToGCPrivateChatPromote = 0x1f99, k_EMsgClientToGCPrivateChatDemote = 0x1f9a, k_EMsgGCToClientPrivateChatResponse = 0x1f9b, k_EMsgClientToGCLatestConductScorecardRequest = 0x1f9f, k_EMsgClientToGCLatestConductScorecard = 0x1fa0, k_EMsgClientToGCWageringRequest = 0x1fa3, k_EMsgGCToClientWageringResponse = 0x1fa4, k_EMsgClientToGCEventGoalsRequest = 0x1fa7, k_EMsgClientToGCEventGoalsResponse = 0x1fa8, k_EMsgGCToGCLeaguePredictionsUpdate = 0x1fac, k_EMsgGCToGCAddUserToPostGameChat = 0x1fae, k_EMsgClientToGCHasPlayerVotedForMVP = 0x1faf, k_EMsgClientToGCHasPlayerVotedForMVPResponse = 0x1fb0, k_EMsgClientToGCVoteForMVP = 0x1fb1, k_EMsgClientToGCVoteForMVPResponse = 0x1fb2, k_EMsgGCToGCGetEventOwnership = 0x1fb3, k_EMsgGCToGCGetEventOwnershipResponse = 0x1fb4, k_EMsgGCToClientAutomatedTournamentStateChange = 0x1fb5, k_EMsgClientToGCWeekendTourneyOpts = 0x1fb6, k_EMsgClientToGCWeekendTourneyOptsResponse = 0x1fb7, k_EMsgClientToGCWeekendTourneyLeave = 0x1fb8, k_EMsgClientToGCWeekendTourneyLeaveResponse = 0x1fb9, k_EMsgClientToGCTeammateStatsRequest = 0x1fbc, k_EMsgClientToGCTeammateStatsResponse = 0x1fbd, k_EMsgClientToGCGetGiftPermissions = 0x1fbe, k_EMsgClientToGCGetGiftPermissionsResponse = 0x1fbf, k_EMsgClientToGCVoteForArcana = 0x1fc0, k_EMsgClientToGCVoteForArcanaResponse = 0x1fc1, k_EMsgClientToGCRequestArcanaVotesRemaining = 0x1fc2, k_EMsgClientToGCRequestArcanaVotesRemainingResponse = 0x1fc3, k_EMsgGCTransferTeamAdminResponse = 0x1fc4, k_EMsgGCToClientTeamInfo = 0x1fc7, k_EMsgGCToClientTeamsInfo = 0x1fc8, k_EMsgClientToGCMyTeamInfoRequest = 0x1fc9, k_EMsgClientToGCPublishUserStat = 0x1fcc, k_EMsgGCToGCSignoutSpendWager = 0x1fcd, k_EMsgGCSubmitLobbyMVPVote = 0x1fd0, k_EMsgGCSubmitLobbyMVPVoteResponse = 0x1fd1, k_EMsgSignOutCommunityGoalProgress = 0x1fd6, k_EMsgGCToClientLobbyMVPAwarded = 0x1fd8, k_EMsgGCToClientQuestProgressUpdated = 0x1fd9, k_EMsgGCToClientWageringUpdate = 0x1fda, k_EMsgGCToClientArcanaVotesUpdate = 0x1fdb, k_EMsgClientToGCSetSpectatorLobbyDetails = 0x1fdd, k_EMsgClientToGCSetSpectatorLobbyDetailsResponse = 0x1fde, k_EMsgClientToGCCreateSpectatorLobby = 0x1fdf, k_EMsgClientToGCCreateSpectatorLobbyResponse = 0x1fe0, k_EMsgClientToGCSpectatorLobbyList = 0x1fe1, k_EMsgClientToGCSpectatorLobbyListResponse = 0x1fe2, k_EMsgSpectatorLobbyGameDetails = 0x1fe3, k_EMsgServerToGCCompendiumInGamePredictionResults = 0x1fe6, k_EMsgServerToGCCloseCompendiumInGamePredictionVoting = 0x1fe7, k_EMsgClientToGCOpenPlayerCardPack = 0x1fe8, k_EMsgClientToGCOpenPlayerCardPackResponse = 0x1fe9, k_EMsgClientToGCSelectCompendiumInGamePrediction = 0x1fea, k_EMsgClientToGCSelectCompendiumInGamePredictionResponse = 0x1feb, k_EMsgClientToGCWeekendTourneyGetPlayerStats = 0x1fec, k_EMsgClientToGCWeekendTourneyGetPlayerStatsResponse = 0x1fed, k_EMsgClientToGCRecyclePlayerCard = 0x1fee, k_EMsgClientToGCRecyclePlayerCardResponse = 0x1fef, k_EMsgClientToGCCreatePlayerCardPack = 0x1ff0, k_EMsgClientToGCCreatePlayerCardPackResponse = 0x1ff1, k_EMsgClientToGCGetPlayerCardRosterRequest = 0x1ff2, k_EMsgClientToGCGetPlayerCardRosterResponse = 0x1ff3, k_EMsgClientToGCSetPlayerCardRosterRequest = 0x1ff4, k_EMsgClientToGCSetPlayerCardRosterResponse = 0x1ff5, k_EMsgServerToGCCloseCompendiumInGamePredictionVotingResponse = 0x1ff7, k_EMsgLobbyBattleCupVictory = 0x1ffa, k_EMsgGCGetPlayerCardItemInfo = 0x1ffb, k_EMsgGCGetPlayerCardItemInfoResponse = 0x1ffc, k_EMsgClientToGCRequestSteamDatagramTicket = 0x1ffd, k_EMsgClientToGCRequestSteamDatagramTicketResponse = 0x1ffe, k_EMsgGCToClientBattlePassRollupRequest = 0x1fff, k_EMsgGCToClientBattlePassRollupResponse = 0x2000, k_EMsgClientToGCTransferSeasonalMMRRequest = 0x2001, k_EMsgClientToGCTransferSeasonalMMRResponse = 0x2002, k_EMsgGCToGCPublicChatCommunicationBan = 0x2003, k_EMsgGCToGCUpdateAccountInfo = 0x2004, k_EMsgGCChatReportPublicSpam = 0x2005, k_EMsgClientToGCSetPartyBuilderOptions = 0x2006, k_EMsgClientToGCSetPartyBuilderOptionsResponse = 0x2007, k_EMsgGCToClientPlaytestStatus = 0x2008, k_EMsgClientToGCJoinPlaytest = 0x2009, k_EMsgClientToGCJoinPlaytestResponse = 0x200a, k_EMsgLobbyPlaytestDetails = 0x200b, k_EMsgDOTASetFavoriteTeam = 0x200c, k_EMsgGCToClientBattlePassRollupListRequest = 0x200d, k_EMsgGCToClientBattlePassRollupListResponse = 0x200e, k_EMsgDOTAClaimEventAction = 0x2011, k_EMsgDOTAClaimEventActionResponse = 0x2012, k_EMsgDOTAGetPeriodicResource = 0x2013, k_EMsgDOTAGetPeriodicResourceResponse = 0x2014, k_EMsgDOTAPeriodicResourceUpdated = 0x2015, k_EMsgServerToGCSpendWager = 0x2016, k_EMsgGCToGCSignoutSpendWagerToken = 0x2017, k_EMsgSubmitTriviaQuestionAnswer = 0x2018, k_EMsgSubmitTriviaQuestionAnswerResponse = 0x2019, k_EMsgClientToGCGiveTip = 0x201a, k_EMsgClientToGCGiveTipResponse = 0x201b, k_EMsgStartTriviaSession = 0x201c, k_EMsgStartTriviaSessionResponse = 0x201d, k_EMsgAnchorPhoneNumberRequest = 0x201e, k_EMsgAnchorPhoneNumberResponse = 0x201f, k_EMsgUnanchorPhoneNumberRequest = 0x2020, k_EMsgUnanchorPhoneNumberResponse = 0x2021, k_EMsgGCToGCSignoutSpendRankWager = 0x2025, k_EMsgGCToGCGetFavoriteTeam = 0x2026, k_EMsgGCToGCGetFavoriteTeamResponse = 0x2027, k_EMsgSignOutEventGameData = 0x2028, k_EMsgClientToGCQuickStatsRequest = 0x202e, k_EMsgClientToGCQuickStatsResponse = 0x202f, k_EMsgGCToGCSubtractEventPointsFromUser = 0x2030, k_EMsgSelectionPriorityChoiceRequest = 0x2031, k_EMsgSelectionPriorityChoiceResponse = 0x2032, k_EMsgGCToGCCompendiumInGamePredictionResults = 0x2033, k_EMsgGameAutographReward = 0x2034, k_EMsgGameAutographRewardResponse = 0x2035, k_EMsgDestroyLobbyRequest = 0x2036, k_EMsgDestroyLobbyResponse = 0x2037, k_EMsgPurchaseItemWithEventPoints = 0x2038, k_EMsgPurchaseItemWithEventPointsResponse = 0x2039, k_EMsgServerToGCMatchPlayerItemPurchaseHistory = 0x203a, k_EMsgGCToGCGrantPlusHeroMatchResults = 0x203b, k_EMsgServerToGCMatchStateHistory = 0x203f, k_EMsgPurchaseHeroRandomRelic = 0x2042, k_EMsgPurchaseHeroRandomRelicResponse = 0x2043, k_EMsgClientToGCClaimEventActionUsingItem = 0x2044, k_EMsgClientToGCClaimEventActionUsingItemResponse = 0x2045, k_EMsgPartyReadyCheckRequest = 0x2046, k_EMsgPartyReadyCheckResponse = 0x2047, k_EMsgPartyReadyCheckAcknowledge = 0x2048, k_EMsgGetRecentPlayTimeFriendsRequest = 0x2049, k_EMsgGetRecentPlayTimeFriendsResponse = 0x204a, k_EMsgGCToClientCommendNotification = 0x204b, k_EMsgProfileRequest = 0x204c, k_EMsgProfileResponse = 0x204d, k_EMsgProfileUpdate = 0x204e, k_EMsgProfileUpdateResponse = 0x204f, k_EMsgHeroGlobalDataRequest = 0x2052, k_EMsgHeroGlobalDataResponse = 0x2053, k_EMsgClientToGCRequestPlusWeeklyChallengeResult = 0x2054, k_EMsgClientToGCRequestPlusWeeklyChallengeResultResponse = 0x2055, k_EMsgGCToGCGrantPlusPrepaidTime = 0x2056, k_EMsgPrivateMetadataKeyRequest = 0x2057, k_EMsgPrivateMetadataKeyResponse = 0x2058, k_EMsgGCToGCReconcilePlusStatus = 0x2059, k_EMsgGCToGCCheckPlusStatus = 0x205a, k_EMsgGCToGCCheckPlusStatusResponse = 0x205b, k_EMsgGCToGCReconcilePlusAutoGrantItems = 0x205c, k_EMsgGCToGCReconcilePlusStatusUnreliable = 0x205d, k_EMsgGCToClientCavernCrawlMapPathCompleted = 0x2060, k_EMsgClientToGCCavernCrawlClaimRoom = 0x2061, k_EMsgClientToGCCavernCrawlClaimRoomResponse = 0x2062, k_EMsgClientToGCCavernCrawlUseItemOnRoom = 0x2063, k_EMsgClientToGCCavernCrawlUseItemOnRoomResponse = 0x2064, k_EMsgClientToGCCavernCrawlUseItemOnPath = 0x2065, k_EMsgClientToGCCavernCrawlUseItemOnPathResponse = 0x2066, k_EMsgClientToGCCavernCrawlRequestMapState = 0x2067, k_EMsgClientToGCCavernCrawlRequestMapStateResponse = 0x2068, k_EMsgSignOutTips = 0x2069, k_EMsgClientToGCRequestEventPointLogV2 = 0x206a, k_EMsgClientToGCRequestEventPointLogResponseV2 = 0x206b, k_EMsgClientToGCRequestEventTipsSummary = 0x206c, k_EMsgClientToGCRequestEventTipsSummaryResponse = 0x206d, k_EMsgClientToGCRequestSocialFeed = 0x206f, k_EMsgClientToGCRequestSocialFeedResponse = 0x2070, k_EMsgClientToGCRequestSocialFeedComments = 0x2071, k_EMsgClientToGCRequestSocialFeedCommentsResponse = 0x2072, k_EMsgClientToGCCavernCrawlGetClaimedRoomCount = 0x2074, k_EMsgClientToGCCavernCrawlGetClaimedRoomCountResponse = 0x2075, k_EMsgGCToGCReconcilePlusAutoGrantItemsUnreliable = 0x2076, k_EMsgServerToGCAddBroadcastTimelineEvent = 0x2077, k_EMsgGCToServerUpdateSteamBroadcasting = 0x2078, k_EMsgClientToGCRecordContestVote = 0x2079, k_EMsgGCToClientRecordContestVoteResponse = 0x207a, k_EMsgGCToGCGrantAutograph = 0x207b, k_EMsgGCToGCGrantAutographResponse = 0x207c, k_EMsgSignOutConsumableUsage = 0x207d, k_EMsgLobbyEventGameDetails = 0x207e, k_EMsgDevGrantEventPoints = 0x207f, k_EMsgDevGrantEventPointsResponse = 0x2080, k_EMsgDevGrantEventAction = 0x2081, k_EMsgDevGrantEventActionResponse = 0x2082, k_EMsgDevResetEventState = 0x2083, k_EMsgDevResetEventStateResponse = 0x2084, k_EMsgGCToGCReconcileEventOwnership = 0x2085, k_EMsgConsumeEventSupportGrantItem = 0x2086, k_EMsgConsumeEventSupportGrantItemResponse = 0x2087, k_EMsgGCToClientClaimEventActionUsingItemCompleted = 0x2088, k_EMsgGCToClientCavernCrawlMapUpdated = 0x2089, k_EMsgServerToGCRequestPlayerRecentAccomplishments = 0x208a, k_EMsgServerToGCRequestPlayerRecentAccomplishmentsResponse = 0x208b, k_EMsgClientToGCRequestPlayerRecentAccomplishments = 0x208c, k_EMsgClientToGCRequestPlayerRecentAccomplishmentsResponse = 0x208d, k_EMsgClientToGCRequestPlayerHeroRecentAccomplishments = 0x208e, k_EMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse = 0x208f, k_EMsgSignOutEventActionGrants = 0x2090, k_EMsgClientToGCRequestPlayerCoachMatches = 0x2091, k_EMsgClientToGCRequestPlayerCoachMatchesResponse = 0x2092, k_EMsgClientToGCSubmitCoachTeammateRating = 0x2095, k_EMsgClientToGCSubmitCoachTeammateRatingResponse = 0x2096, k_EMsgGCToClientCoachTeammateRatingsChanged = 0x2097, k_EMsgClientToGCRequestPlayerCoachMatch = 0x2099, k_EMsgClientToGCRequestPlayerCoachMatchResponse = 0x209a, k_EMsgClientToGCRequestContestVotes = 0x209b, k_EMsgClientToGCRequestContestVotesResponse = 0x209c, k_EMsgClientToGCMVPVoteTimeout = 0x209d, k_EMsgClientToGCMVPVoteTimeoutResponse = 0x209e, k_EMsgDetailedGameStats = 0x20a1, k_EMsgMatchMatchmakingStats = 0x20a8, k_EMsgClientToGCSubmitPlayerMatchSurvey = 0x20a9, k_EMsgClientToGCSubmitPlayerMatchSurveyResponse = 0x20aa, k_EMsgSQLGCToGCGrantAllHeroProgressAccount = 0x20ab, k_EMsgSQLGCToGCGrantAllHeroProgressVictory = 0x20ac, k_EMsgDevDeleteEventActions = 0x20ad, k_EMsgDevDeleteEventActionsResponse = 0x20ae, k_EMsgGCToGCGetAllHeroCurrent = 0x21bb, k_EMsgGCToGCGetAllHeroCurrentResponse = 0x21bc, k_EMsgGCSubmitPlayerAvoidRequest = 0x21bd, k_EMsgGCSubmitPlayerAvoidRequestResponse = 0x21be, k_EMsgGCToClientNotificationsUpdated = 0x21bf, k_EMsgGCtoGCAssociatedExploiterAccountInfo = 0x21c0, k_EMsgGCtoGCAssociatedExploiterAccountInfoResponse = 0x21c1, k_EMsgGCtoGCRequestRecalibrationCheck = 0x21c2, k_EMsgGCToClientVACReminder = 0x21c3, k_EMsgClientToGCUnderDraftBuy = 0x21c4, k_EMsgClientToGCUnderDraftBuyResponse = 0x21c5, k_EMsgClientToGCUnderDraftReroll = 0x21c6, k_EMsgClientToGCUnderDraftRerollResponse = 0x21c7, k_EMsgNeutralItemStats = 0x21c8, k_EMsgClientToGCCreateGuild = 0x21c9, k_EMsgClientToGCCreateGuildResponse = 0x21ca, k_EMsgClientToGCSetGuildInfo = 0x21cb, k_EMsgClientToGCSetGuildInfoResponse = 0x21cc, k_EMsgClientToGCAddGuildRole = 0x21cd, k_EMsgClientToGCAddGuildRoleResponse = 0x21ce, k_EMsgClientToGCModifyGuildRole = 0x21cf, k_EMsgClientToGCModifyGuildRoleResponse = 0x21d0, k_EMsgClientToGCRemoveGuildRole = 0x21d1, k_EMsgClientToGCRemoveGuildRoleResponse = 0x21d2, k_EMsgClientToGCJoinGuild = 0x21d3, k_EMsgClientToGCJoinGuildResponse = 0x21d4, k_EMsgClientToGCLeaveGuild = 0x21d5, k_EMsgClientToGCLeaveGuildResponse = 0x21d6, k_EMsgClientToGCInviteToGuild = 0x21d7, k_EMsgClientToGCInviteToGuildResponse = 0x21d8, k_EMsgClientToGCDeclineInviteToGuild = 0x21d9, k_EMsgClientToGCDeclineInviteToGuildResponse = 0x21da, k_EMsgClientToGCCancelInviteToGuild = 0x21db, k_EMsgClientToGCCancelInviteToGuildResponse = 0x21dc, k_EMsgClientToGCKickGuildMember = 0x21dd, k_EMsgClientToGCKickGuildMemberResponse = 0x21de, k_EMsgClientToGCSetGuildMemberRole = 0x21df, k_EMsgClientToGCSetGuildMemberRoleResponse = 0x21e0, k_EMsgClientToGCRequestGuildData = 0x21e1, k_EMsgClientToGCRequestGuildDataResponse = 0x21e2, k_EMsgGCToClientGuildDataUpdated = 0x21e3, k_EMsgClientToGCRequestGuildMembership = 0x21e4, k_EMsgClientToGCRequestGuildMembershipResponse = 0x21e5, k_EMsgGCToClientGuildMembershipUpdated = 0x21e6, k_EMsgClientToGCAcceptInviteToGuild = 0x21e9, k_EMsgClientToGCAcceptInviteToGuildResponse = 0x21ea, k_EMsgClientToGCSetGuildRoleOrder = 0x21eb, k_EMsgClientToGCSetGuildRoleOrderResponse = 0x21ec, k_EMsgClientToGCRequestGuildFeed = 0x21ed, k_EMsgClientToGCRequestGuildFeedResponse = 0x21ee, k_EMsgClientToGCRequestAccountGuildEventData = 0x21ef, k_EMsgClientToGCRequestAccountGuildEventDataResponse = 0x21f0, k_EMsgGCToClientAccountGuildEventDataUpdated = 0x21f1, k_EMsgClientToGCRequestActiveGuildContracts = 0x21f2, k_EMsgClientToGCRequestActiveGuildContractsResponse = 0x21f3, k_EMsgGCToClientActiveGuildContractsUpdated = 0x21f4, k_EMsgGCToClientGuildFeedUpdated = 0x21f5, k_EMsgClientToGCSelectGuildContract = 0x21f6, k_EMsgClientToGCSelectGuildContractResponse = 0x21f7, k_EMsgGCToGCCompleteGuildContracts = 0x21f8, k_EMsgClientToGCAddPlayerToGuildChat = 0x21fa, k_EMsgClientToGCAddPlayerToGuildChatResponse = 0x21fb, k_EMsgClientToGCUnderDraftSell = 0x21fc, k_EMsgClientToGCUnderDraftSellResponse = 0x21fd, k_EMsgClientToGCUnderDraftRequest = 0x21fe, k_EMsgClientToGCUnderDraftResponse = 0x21ff, k_EMsgClientToGCUnderDraftRedeemReward = 0x2200, k_EMsgClientToGCUnderDraftRedeemRewardResponse = 0x2201, k_EMsgGCToServerLobbyHeroBanRates = 0x2204, k_EMsgSignOutGuildContractProgress = 0x2207, k_EMsgSignOutMVPStats = 0x2208, k_EMsgClientToGCRequestActiveGuildChallenge = 0x2209, k_EMsgClientToGCRequestActiveGuildChallengeResponse = 0x220a, k_EMsgGCToClientActiveGuildChallengeUpdated = 0x220b, k_EMsgSignOutGuildChallengeProgress = 0x2210, k_EMsgClientToGCRequestGuildEventMembers = 0x2211, k_EMsgClientToGCRequestGuildEventMembersResponse = 0x2212, k_EMsgClientToGCReportGuildContent = 0x2215, k_EMsgClientToGCReportGuildContentResponse = 0x2216, k_EMsgClientToGCRequestAccountGuildPersonaInfo = 0x2217, k_EMsgClientToGCRequestAccountGuildPersonaInfoResponse = 0x2218, k_EMsgClientToGCRequestAccountGuildPersonaInfoBatch = 0x2219, k_EMsgClientToGCRequestAccountGuildPersonaInfoBatchResponse = 0x221a, k_EMsgGCToClientUnderDraftGoldUpdated = 0x221b, k_EMsgGCToServerRecordTrainingData = 0x221c, k_EMsgSignOutBounties = 0x221d, k_EMsgLobbyFeaturedGamemodeProgress = 0x221e, k_EMsgLobbyGauntletProgress = 0x221f, k_EMsgClientToGCSubmitDraftTriviaMatchAnswer = 0x2220, k_EMsgClientToGCSubmitDraftTriviaMatchAnswerResponse = 0x2221, k_EMsgGCToGCSignoutSpendBounty = 0x2222, k_EMsgClientToGCApplyGauntletTicket = 0x2223, k_EMsgClientToGCUnderDraftRollBackBench = 0x2224, k_EMsgClientToGCUnderDraftRollBackBenchResponse = 0x2225, k_EMsgGCToGCGetEventActionScore = 0x2226, k_EMsgGCToGCGetEventActionScoreResponse = 0x2227, k_EMsgServerToGCGetGuildContracts = 0x2228, k_EMsgServerToGCGetGuildContractsResponse = 0x2229, k_EMsgLobbyEventGameData = 0x222a, k_EMsgGCToClientGuildMembersDataUpdated = 0x222b, k_EMsgSignOutReportActivityMarkers = 0x222c, k_EMsgSignOutDiretideCandy = 0x222d, k_EMsgGCToClientPostGameItemAwardNotification = 0x222e, k_EMsgClientToGCGetOWMatchDetails = 0x222f, k_EMsgClientToGCGetOWMatchDetailsResponse = 0x2230, k_EMsgClientToGCSubmitOWConviction = 0x2231, k_EMsgClientToGCSubmitOWConvictionResponse = 0x2232, k_EMsgGCToGCGetAccountSteamChina = 0x2233, k_EMsgGCToGCGetAccountSteamChinaResponse = 0x2234, k_EMsgClientToGCClaimLeaderboardRewards = 0x2235, k_EMsgClientToGCClaimLeaderboardRewardsResponse = 0x2236, k_EMsgClientToGCRecalibrateMMR = 0x2237, k_EMsgClientToGCRecalibrateMMRResponse = 0x2238, k_EMsgGCToGCGrantEventPointActionList = 0x2239, k_EMsgClientToGCChinaSSAURLRequest = 0x223c, k_EMsgClientToGCChinaSSAURLResponse = 0x223d, k_EMsgClientToGCChinaSSAAcceptedRequest = 0x223e, k_EMsgClientToGCChinaSSAAcceptedResponse = 0x223f, k_EMsgSignOutOverwatchSuspicion = 0x2240, k_EMsgServerToGCGetSuspicionConfig = 0x2241, k_EMsgServerToGCGetSuspicionConfigResponse = 0x2242, k_EMsgGCToGCGrantPlusHeroChallengeMatchResults = 0x2243, k_EMsgGCToClientOverwatchCasesAvailable = 0x2244, k_EMsgServerToGCAccountCheck = 0x2245, k_EMsgClientToGCStartWatchingOverwatch = 0x2246, k_EMsgClientToGCStopWatchingOverwatch = 0x2247, k_EMsgSignOutPerfData = 0x2248, k_EMsgClientToGCGetDPCFavorites = 0x2249, k_EMsgClientToGCGetDPCFavoritesResponse = 0x224a, k_EMsgClientToGCSetDPCFavoriteState = 0x224b, k_EMsgClientToGCSetDPCFavoriteStateResponse = 0x224c, k_EMsgClientToGCOverwatchReplayError = 0x224d, k_EMsgServerToGCPlayerChallengeHistory = 0x224e, k_EMsgSignOutBanData = 0x224f, k_EMsgWebapiDPCSeasonResults = 0x2250, k_EMsgClientToGCCoachFriend = 0x2251, k_EMsgClientToGCCoachFriendResponse = 0x2252, k_EMsgClientToGCRequestPrivateCoachingSession = 0x2253, k_EMsgClientToGCRequestPrivateCoachingSessionResponse = 0x2254, k_EMsgClientToGCAcceptPrivateCoachingSession = 0x2255, k_EMsgClientToGCAcceptPrivateCoachingSessionResponse = 0x2256, k_EMsgClientToGCLeavePrivateCoachingSession = 0x2257, k_EMsgClientToGCLeavePrivateCoachingSessionResponse = 0x2258, k_EMsgClientToGCGetCurrentPrivateCoachingSession = 0x2259, k_EMsgClientToGCGetCurrentPrivateCoachingSessionResponse = 0x225a, k_EMsgGCToClientPrivateCoachingSessionUpdated = 0x225b, k_EMsgClientToGCSubmitPrivateCoachingSessionRating = 0x225c, k_EMsgClientToGCSubmitPrivateCoachingSessionRatingResponse = 0x225d, k_EMsgClientToGCGetAvailablePrivateCoachingSessions = 0x225e, k_EMsgClientToGCGetAvailablePrivateCoachingSessionsResponse = 0x225f, k_EMsgClientToGCGetAvailablePrivateCoachingSessionsSummary = 0x2260, k_EMsgClientToGCGetAvailablePrivateCoachingSessionsSummaryResponse = 0x2261, k_EMsgClientToGCJoinPrivateCoachingSessionLobby = 0x2262, k_EMsgClientToGCJoinPrivateCoachingSessionLobbyResponse = 0x2263, k_EMsgClientToGCRespondToCoachFriendRequest = 0x2264, k_EMsgClientToGCRespondToCoachFriendRequestResponse = 0x2265, k_EMsgClientToGCSetEventActiveSeasonID = 0x2266, k_EMsgClientToGCSetEventActiveSeasonIDResponse = 0x2267, k_EMsgServerToGCMatchPlayerNeutralItemEquipHistory = 0x2268, k_EMsgServerToGCCompendiumChosenInGamePredictions = 0x2269, k_EMsgClientToGCCreateTeamPlayerCardPack = 0x226a, k_EMsgClientToGCCreateTeamPlayerCardPackResponse = 0x226b, k_EMsgGCToServerSubmitCheerData = 0x226c, k_EMsgGCToServerCheerConfig = 0x226d, k_EMsgServerToGCGetCheerConfig = 0x226e, k_EMsgServerToGCGetCheerConfigResponse = 0x226f, k_EMsgGCToGCGrantAutographByID = 0x2270, k_EMsgGCToServerCheerScalesOverride = 0x2271, k_EMsgGCToServerGetCheerState = 0x2272, k_EMsgServerToGCReportCheerState = 0x2273, k_EMsgGCToServerScenarioSave = 0x2274, k_EMsgGCToServerAbilityDraftLobbyData = 0x2275, k_EMsgSignOutReportCommunications = 0x2276, k_EMsgClientToGCBatchGetPlayerCardRosterRequest = 0x2277, k_EMsgClientToGCBatchGetPlayerCardRosterResponse = 0x2278, k_EMsgClientToGCGetStickerbookRequest = 0x2279, k_EMsgClientToGCGetStickerbookResponse = 0x227a, k_EMsgClientToGCCreateStickerbookPageRequest = 0x227b, k_EMsgClientToGCCreateStickerbookPageResponse = 0x227c, k_EMsgClientToGCDeleteStickerbookPageRequest = 0x227d, k_EMsgClientToGCDeleteStickerbookPageResponse = 0x227e, k_EMsgClientToGCPlaceStickersRequest = 0x227f, k_EMsgClientToGCPlaceStickersResponse = 0x2280, k_EMsgClientToGCPlaceCollectionStickersRequest = 0x2281, k_EMsgClientToGCPlaceCollectionStickersResponse = 0x2282, k_EMsgClientToGCOrderStickerbookTeamPageRequest = 0x2283, k_EMsgClientToGCOrderStickerbookTeamPageResponse = 0x2284, k_EMsgServerToGCGetStickerHeroes = 0x2285, k_EMsgServerToGCGetStickerHeroesResponse = 0x2286, k_EMsgClientToGCCandyShopGetUserData = 0x2288, k_EMsgClientToGCCandyShopGetUserDataResponse = 0x2289, k_EMsgGCToClientCandyShopUserDataUpdated = 0x228a, k_EMsgClientToGCCandyShopPurchaseReward = 0x228b, k_EMsgClientToGCCandyShopPurchaseRewardResponse = 0x228c, k_EMsgClientToGCCandyShopDoExchange = 0x228d, k_EMsgClientToGCCandyShopDoExchangeResponse = 0x228e, k_EMsgClientToGCCandyShopDoVariableExchange = 0x228f, k_EMsgClientToGCCandyShopDoVariableExchangeResponse = 0x2290, k_EMsgClientToGCCandyShopRerollRewards = 0x2291, k_EMsgClientToGCCandyShopRerollRewardsResponse = 0x2292, k_EMsgClientToGCSetHeroSticker = 0x2293, k_EMsgClientToGCSetHeroStickerResponse = 0x2294, k_EMsgClientToGCGetHeroStickers = 0x2295, k_EMsgClientToGCGetHeroStickersResponse = 0x2296, k_EMsgClientToGCSetFavoritePage = 0x2297, k_EMsgClientToGCSetFavoritePageResponse = 0x2298, k_EMsgClientToGCCandyShopDevGrantCandy = 0x2299, k_EMsgClientToGCCandyShopDevGrantCandyResponse = 0x229a, k_EMsgClientToGCCandyShopDevClearInventory = 0x229b, k_EMsgClientToGCCandyShopDevClearInventoryResponse = 0x229c, k_EMsgClientToGCCandyShopOpenBags = 0x229d, k_EMsgClientToGCCandyShopOpenBagsResponse = 0x229e, k_EMsgClientToGCCandyShopDevGrantCandyBags = 0x229f, k_EMsgClientToGCCandyShopDevGrantCandyBagsResponse = 0x22a0, k_EMsgClientToGCCandyShopDevShuffleExchange = 0x22a1, k_EMsgClientToGCCandyShopDevShuffleExchangeResponse = 0x22a2, k_EMsgClientToGCCandyShopDevGrantRerollCharges = 0x22a3, k_EMsgClientToGCCandyShopDevGrantRerollChargesResponse = 0x22a4, k_EMsgLobbyAdditionalAccountData = 0x22a5, k_EMsgServerToGCLobbyInitialized = 0x22a6, k_EMsgClientToGCCollectorsCacheAvailableDataRequest = 0x22a7, k_EMsgGCToClientCollectorsCacheAvailableDataResponse = 0x22a8, k_EMsgClientToGCUploadMatchClip = 0x22a9, k_EMsgGCToClientUploadMatchClipResponse = 0x22aa, k_EMsgGCToServerSetSteamLearnDisable = 0x22ab, k_EMsgGCToServerSetSteamLearnKeysChanged = 0x22ac, k_EMsgSignOutMuertaMinigame = 0x22ad, k_EMsgGCToServerLobbyHeroRoleStats = 0x22ae, }; // Alignment: 4 // Size: 0x4 enum class EPoorNetworkConditionsType : uint32_t { k_EPoorNetworkConditions_None = 0x0, k_EPoorNetworkConditions_Unknown = 0x1, k_EPoorNetworkConditions_MassDisconnect = 0x2, k_EPoorNetworkConditions_ExcessBadQosIntervals = 0x3, }; // Alignment: 4 // Size: 0x4 enum class EPingSource : uint32_t { k_ePingSource_Default = 0x0, k_ePingSource_Warning = 0x1, k_ePingSource_Wheel = 0x2, k_ePingSource_System = 0x3, }; // Alignment: 4 // Size: 0x6 enum class EDOTAStatPopupTypes : uint32_t { k_EDOTA_SPT_Textline = 0x0, k_EDOTA_SPT_Basic = 0x1, k_EDOTA_SPT_Poll = 0x2, k_EDOTA_SPT_Grid = 0x3, k_EDOTA_SPT_DualImage = 0x4, k_EDOTA_SPT_Movie = 0x5, }; // Alignment: 4 // Size: 0x28 enum class dotaunitorder_t : uint32_t { DOTA_UNIT_ORDER_NONE = 0x0, DOTA_UNIT_ORDER_MOVE_TO_POSITION = 0x1, DOTA_UNIT_ORDER_MOVE_TO_TARGET = 0x2, DOTA_UNIT_ORDER_ATTACK_MOVE = 0x3, DOTA_UNIT_ORDER_ATTACK_TARGET = 0x4, DOTA_UNIT_ORDER_CAST_POSITION = 0x5, DOTA_UNIT_ORDER_CAST_TARGET = 0x6, DOTA_UNIT_ORDER_CAST_TARGET_TREE = 0x7, DOTA_UNIT_ORDER_CAST_NO_TARGET = 0x8, DOTA_UNIT_ORDER_CAST_TOGGLE = 0x9, DOTA_UNIT_ORDER_HOLD_POSITION = 0xa, DOTA_UNIT_ORDER_TRAIN_ABILITY = 0xb, DOTA_UNIT_ORDER_DROP_ITEM = 0xc, DOTA_UNIT_ORDER_GIVE_ITEM = 0xd, DOTA_UNIT_ORDER_PICKUP_ITEM = 0xe, DOTA_UNIT_ORDER_PICKUP_RUNE = 0xf, DOTA_UNIT_ORDER_PURCHASE_ITEM = 0x10, DOTA_UNIT_ORDER_SELL_ITEM = 0x11, DOTA_UNIT_ORDER_DISASSEMBLE_ITEM = 0x12, DOTA_UNIT_ORDER_MOVE_ITEM = 0x13, DOTA_UNIT_ORDER_CAST_TOGGLE_AUTO = 0x14, DOTA_UNIT_ORDER_STOP = 0x15, DOTA_UNIT_ORDER_TAUNT = 0x16, DOTA_UNIT_ORDER_BUYBACK = 0x17, DOTA_UNIT_ORDER_GLYPH = 0x18, DOTA_UNIT_ORDER_EJECT_ITEM_FROM_STASH = 0x19, DOTA_UNIT_ORDER_CAST_RUNE = 0x1a, DOTA_UNIT_ORDER_PING_ABILITY = 0x1b, DOTA_UNIT_ORDER_MOVE_TO_DIRECTION = 0x1c, DOTA_UNIT_ORDER_PATROL = 0x1d, DOTA_UNIT_ORDER_VECTOR_TARGET_POSITION = 0x1e, DOTA_UNIT_ORDER_RADAR = 0x1f, DOTA_UNIT_ORDER_SET_ITEM_COMBINE_LOCK = 0x20, DOTA_UNIT_ORDER_CONTINUE = 0x21, DOTA_UNIT_ORDER_VECTOR_TARGET_CANCELED = 0x22, DOTA_UNIT_ORDER_CAST_RIVER_PAINT = 0x23, DOTA_UNIT_ORDER_PREGAME_ADJUST_ITEM_ASSIGNMENT = 0x24, DOTA_UNIT_ORDER_DROP_ITEM_AT_FOUNTAIN = 0x25, DOTA_UNIT_ORDER_TAKE_ITEM_FROM_NEUTRAL_ITEM_STASH = 0x26, DOTA_UNIT_ORDER_MOVE_RELATIVE = 0x27, }; // Alignment: 4 // Size: 0x3 enum class EDOTAVersusScenePlayerBehavior : uint32_t { VS_PLAYER_BEHAVIOR_PLAY_ACTIVITY = 0x1, VS_PLAYER_BEHAVIOR_CHAT_WHEEL = 0x2, VS_PLAYER_BEHAVIOR_PLAYBACK_RATE = 0x3, }; // Alignment: 4 // Size: 0x5c enum class EDotaClientMessages : uint32_t { DOTA_CM_MapLine = 0x12d, DOTA_CM_AspectRatio = 0x12e, DOTA_CM_MapPing = 0x12f, DOTA_CM_UnitsAutoAttack = 0x130, DOTA_CM_SearchString = 0x133, DOTA_CM_Pause = 0x134, DOTA_CM_ShopViewMode = 0x135, DOTA_CM_SetUnitShareFlag = 0x136, DOTA_CM_SwapRequest = 0x137, DOTA_CM_SwapAccept = 0x138, DOTA_CM_WorldLine = 0x139, DOTA_CM_RequestGraphUpdate = 0x13a, DOTA_CM_ItemAlert = 0x13b, DOTA_CM_ChatWheel = 0x13c, DOTA_CM_SendStatPopup = 0x13d, DOTA_CM_BeginLastHitChallenge = 0x13e, DOTA_CM_UpdateQuickBuy = 0x13f, DOTA_CM_UpdateCoachListen = 0x140, DOTA_CM_CoachHUDPing = 0x141, DOTA_CM_RecordVote = 0x142, DOTA_CM_UnitsAutoAttackAfterSpell = 0x143, DOTA_CM_WillPurchaseAlert = 0x144, DOTA_CM_PlayerShowCase = 0x145, DOTA_CM_TeleportRequiresHalt = 0x146, DOTA_CM_CameraZoomAmount = 0x147, DOTA_CM_BroadcasterUsingCamerman = 0x148, DOTA_CM_BroadcasterUsingAssistedCameraOperator = 0x149, DOTA_CM_EnemyItemAlert = 0x14a, DOTA_CM_FreeInventory = 0x14b, DOTA_CM_BuyBackStateAlert = 0x14c, DOTA_CM_QuickBuyAlert = 0x14d, DOTA_CM_HeroStatueLike = 0x14e, DOTA_CM_ModifierAlert = 0x14f, DOTA_CM_TeamShowcaseEditor = 0x150, DOTA_CM_HPManaAlert = 0x151, DOTA_CM_GlyphAlert = 0x152, DOTA_CM_TeamShowcaseClientData = 0x153, DOTA_CM_PlayTeamShowcase = 0x154, DOTA_CM_EventCNY2015Cmd = 0x155, DOTA_CM_FillEmptySlotsWithBots = 0x156, DOTA_CM_DemoHero = 0x157, DOTA_CM_AbilityLearnModeToggled = 0x158, DOTA_CM_AbilityStartUse = 0x159, DOTA_CM_ChallengeSelect = 0x15a, DOTA_CM_ChallengeReroll = 0x15b, DOTA_CM_ClickedBuff = 0x15c, DOTA_CM_CoinWager = 0x15d, DOTA_CM_ExecuteOrders = 0x15e, DOTA_CM_XPAlert = 0x15f, DOTA_CM_EventPointsTip = 0x161, DOTA_CM_KillMyHero = 0x163, DOTA_CM_QuestStatus = 0x164, DOTA_CM_ToggleAutoattack = 0x165, DOTA_CM_SpecialAbility = 0x166, DOTA_CM_KillcamDamageTaken = 0x167, DOTA_CM_SetEnemyStartingPosition = 0x168, DOTA_CM_SetDesiredWardPlacement = 0x169, DOTA_CM_RollDice = 0x16a, DOTA_CM_FlipCoin = 0x16b, DOTA_CM_RequestItemSuggestions = 0x16c, DOTA_CM_MakeTeamCaptain = 0x16d, DOTA_CM_CoinWagerToken = 0x16e, DOTA_CM_RankWager = 0x16f, DOTA_CM_DismissAllStatPopups = 0x170, DOTA_CM_HelpTipSystemStateChanged = 0x171, DOTA_CM_ChannelRequiresHalt = 0x172, DOTA_CM_RequestBulkCombatLog = 0x173, DOTA_CM_AbilityDraftRequestAbility = 0x174, DOTA_CM_GuideSelectOption = 0x175, DOTA_CM_GuideSelected = 0x176, DOTA_CM_DamageReport = 0x177, DOTA_CM_SalutePlayer = 0x178, DOTA_CM_SprayWheel = 0x179, DOTA_CM_TipAlert = 0x17a, DOTA_CM_EmptyTeleportAlert = 0x17b, DOTA_CM_RadarAlert = 0x17c, DOTA_CM_TalentTreeAlert = 0x17d, DOTA_CM_SetCavernMapVariant = 0x17e, DOTA_CM_PauseGameOrder = 0x17f, DOTA_CM_VersusScene_PlayerBehavior = 0x180, DOTA_CM_PlayerBounty = 0x181, DOTA_CM_PlayerBountyCancel = 0x182, DOTA_CM_EmptyItemSlotAlert = 0x184, DOTA_CM_AddOverwatchReportMarker = 0x185, DOTA_CM_AghsStatusAlert = 0x186, DOTA_CM_PerfReport = 0x187, DOTA_CM_ContextualTips_Subscribe = 0x189, DOTA_CM_ChatMessage = 0x18a, DOTA_CM_AddCommunicationsReportMarker = 0x18b, DOTA_CM_AddCommunicationsBlockMarker = 0x18c, DOTA_CM_NeutralCampAlert = 0x18d, DOTA_CM_DuelAccepted = 0x18e, }; // Alignment: 4 // Size: 0x9a enum class EDotaUserMessages : uint32_t { DOTA_UM_AddUnitToSelection = 0x1d0, DOTA_UM_AIDebugLine = 0x1d1, DOTA_UM_ChatEvent = 0x1d2, DOTA_UM_CombatHeroPositions = 0x1d3, DOTA_UM_CombatLogData = 0x1d4, DOTA_UM_CombatLogBulkData = 0x1d6, DOTA_UM_CreateLinearProjectile = 0x1d7, DOTA_UM_DestroyLinearProjectile = 0x1d8, DOTA_UM_DodgeTrackingProjectiles = 0x1d9, DOTA_UM_GlobalLightColor = 0x1da, DOTA_UM_GlobalLightDirection = 0x1db, DOTA_UM_InvalidCommand = 0x1dc, DOTA_UM_LocationPing = 0x1dd, DOTA_UM_MapLine = 0x1de, DOTA_UM_MiniKillCamInfo = 0x1df, DOTA_UM_MinimapDebugPoint = 0x1e0, DOTA_UM_MinimapEvent = 0x1e1, DOTA_UM_NevermoreRequiem = 0x1e2, DOTA_UM_OverheadEvent = 0x1e3, DOTA_UM_SetNextAutobuyItem = 0x1e4, DOTA_UM_SharedCooldown = 0x1e5, DOTA_UM_SpectatorPlayerClick = 0x1e6, DOTA_UM_TutorialTipInfo = 0x1e7, DOTA_UM_UnitEvent = 0x1e8, DOTA_UM_ParticleManager = 0x1e9, DOTA_UM_BotChat = 0x1ea, DOTA_UM_HudError = 0x1eb, DOTA_UM_ItemPurchased = 0x1ec, DOTA_UM_Ping = 0x1ed, DOTA_UM_ItemFound = 0x1ee, DOTA_UM_CharacterSpeakConcept = 0x1ef, DOTA_UM_SwapVerify = 0x1f0, DOTA_UM_WorldLine = 0x1f1, DOTA_UM_TournamentDrop = 0x1f2, DOTA_UM_ItemAlert = 0x1f3, DOTA_UM_HalloweenDrops = 0x1f4, DOTA_UM_ChatWheel = 0x1f5, DOTA_UM_ReceivedXmasGift = 0x1f6, DOTA_UM_UpdateSharedContent = 0x1f7, DOTA_UM_TutorialRequestExp = 0x1f8, DOTA_UM_TutorialPingMinimap = 0x1f9, DOTA_UM_GamerulesStateChanged = 0x1fa, DOTA_UM_ShowSurvey = 0x1fb, DOTA_UM_TutorialFade = 0x1fc, DOTA_UM_AddQuestLogEntry = 0x1fd, DOTA_UM_SendStatPopup = 0x1fe, DOTA_UM_TutorialFinish = 0x1ff, DOTA_UM_SendRoshanPopup = 0x200, DOTA_UM_SendGenericToolTip = 0x201, DOTA_UM_SendFinalGold = 0x202, DOTA_UM_CustomMsg = 0x203, DOTA_UM_CoachHUDPing = 0x204, DOTA_UM_ClientLoadGridNav = 0x205, DOTA_UM_TE_Projectile = 0x206, DOTA_UM_TE_ProjectileLoc = 0x207, DOTA_UM_TE_DotaBloodImpact = 0x208, DOTA_UM_TE_UnitAnimation = 0x209, DOTA_UM_TE_UnitAnimationEnd = 0x20a, DOTA_UM_AbilityPing = 0x20b, DOTA_UM_ShowGenericPopup = 0x20c, DOTA_UM_VoteStart = 0x20d, DOTA_UM_VoteUpdate = 0x20e, DOTA_UM_VoteEnd = 0x20f, DOTA_UM_BoosterState = 0x210, DOTA_UM_WillPurchaseAlert = 0x211, DOTA_UM_TutorialMinimapPosition = 0x212, DOTA_UM_PlayerMMR = 0x213, DOTA_UM_AbilitySteal = 0x214, DOTA_UM_CourierKilledAlert = 0x215, DOTA_UM_EnemyItemAlert = 0x216, DOTA_UM_StatsMatchDetails = 0x217, DOTA_UM_MiniTaunt = 0x218, DOTA_UM_BuyBackStateAlert = 0x219, DOTA_UM_SpeechBubble = 0x21a, DOTA_UM_CustomHeaderMessage = 0x21b, DOTA_UM_QuickBuyAlert = 0x21c, DOTA_UM_StatsHeroDetails = 0x21d, DOTA_UM_PredictionResult = 0x21e, DOTA_UM_ModifierAlert = 0x21f, DOTA_UM_HPManaAlert = 0x220, DOTA_UM_GlyphAlert = 0x221, DOTA_UM_BeastChat = 0x222, DOTA_UM_SpectatorPlayerUnitOrders = 0x223, DOTA_UM_CustomHudElement_Create = 0x224, DOTA_UM_CustomHudElement_Modify = 0x225, DOTA_UM_CustomHudElement_Destroy = 0x226, DOTA_UM_CompendiumState = 0x227, DOTA_UM_ProjectionAbility = 0x228, DOTA_UM_ProjectionEvent = 0x229, DOTA_UM_CombatLogDataHLTV = 0x22a, DOTA_UM_XPAlert = 0x22b, DOTA_UM_UpdateQuestProgress = 0x22c, DOTA_UM_MatchMetadata = 0x22d, DOTA_UM_MatchDetails = 0x22e, DOTA_UM_QuestStatus = 0x22f, DOTA_UM_SuggestHeroPick = 0x230, DOTA_UM_SuggestHeroRole = 0x231, DOTA_UM_KillcamDamageTaken = 0x232, DOTA_UM_SelectPenaltyGold = 0x233, DOTA_UM_RollDiceResult = 0x234, DOTA_UM_FlipCoinResult = 0x235, DOTA_UM_RequestItemSuggestions = 0x236, DOTA_UM_TeamCaptainChanged = 0x237, DOTA_UM_SendRoshanSpectatorPhase = 0x238, DOTA_UM_ChatWheelCooldown = 0x239, DOTA_UM_DismissAllStatPopups = 0x23a, DOTA_UM_TE_DestroyProjectile = 0x23b, DOTA_UM_HeroRelicProgress = 0x23c, DOTA_UM_AbilityDraftRequestAbility = 0x23d, DOTA_UM_ItemSold = 0x23e, DOTA_UM_DamageReport = 0x23f, DOTA_UM_SalutePlayer = 0x240, DOTA_UM_TipAlert = 0x241, DOTA_UM_ReplaceQueryUnit = 0x242, DOTA_UM_EmptyTeleportAlert = 0x243, DOTA_UM_MarsArenaOfBloodAttack = 0x244, DOTA_UM_ESArcanaCombo = 0x245, DOTA_UM_ESArcanaComboSummary = 0x246, DOTA_UM_HighFiveLeftHanging = 0x247, DOTA_UM_HighFiveCompleted = 0x248, DOTA_UM_ShovelUnearth = 0x249, DOTA_EM_InvokerSpellCast = 0x24a, DOTA_UM_RadarAlert = 0x24b, DOTA_UM_AllStarEvent = 0x24c, DOTA_UM_TalentTreeAlert = 0x24d, DOTA_UM_QueuedOrderRemoved = 0x24e, DOTA_UM_DebugChallenge = 0x24f, DOTA_UM_OMArcanaCombo = 0x250, DOTA_UM_FoundNeutralItem = 0x251, DOTA_UM_OutpostCaptured = 0x252, DOTA_UM_OutpostGrantedXP = 0x253, DOTA_UM_MoveCameraToUnit = 0x254, DOTA_UM_PauseMinigameData = 0x255, DOTA_UM_VersusScene_PlayerBehavior = 0x256, DOTA_UM_QoP_ArcanaSummary = 0x258, DOTA_UM_HotPotato_Created = 0x259, DOTA_UM_HotPotato_Exploded = 0x25a, DOTA_UM_WK_Arcana_Progress = 0x25b, DOTA_UM_GuildChallenge_Progress = 0x25c, DOTA_UM_WRArcanaProgress = 0x25d, DOTA_UM_WRArcanaSummary = 0x25e, DOTA_UM_EmptyItemSlotAlert = 0x25f, DOTA_UM_AghsStatusAlert = 0x260, DOTA_UM_PingConfirmation = 0x261, DOTA_UM_MutedPlayers = 0x262, DOTA_UM_ContextualTip = 0x263, DOTA_UM_ChatMessage = 0x264, DOTA_UM_NeutralCampAlert = 0x265, DOTA_UM_RockPaperScissorsStarted = 0x266, DOTA_UM_RockPaperScissorsFinished = 0x267, DOTA_UM_DuelOpponentKilled = 0x268, DOTA_UM_DuelAccepted = 0x269, DOTA_UM_DuelRequested = 0x26a, DOTA_UM_MuertaReleaseEvent_AssignedTargetKilled = 0x26b, }; // Alignment: 4 // Size: 0x6c enum class DOTA_CHAT_MESSAGE : uint32_t { CHAT_MESSAGE_INVALID = 0xffffffffffffffff, CHAT_MESSAGE_HERO_KILL = 0x0, CHAT_MESSAGE_HERO_DENY = 0x1, CHAT_MESSAGE_BARRACKS_KILL = 0x2, CHAT_MESSAGE_TOWER_KILL = 0x3, CHAT_MESSAGE_TOWER_DENY = 0x4, CHAT_MESSAGE_FIRSTBLOOD = 0x5, CHAT_MESSAGE_STREAK_KILL = 0x6, CHAT_MESSAGE_BUYBACK = 0x7, CHAT_MESSAGE_AEGIS = 0x8, CHAT_MESSAGE_ROSHAN_KILL = 0x9, CHAT_MESSAGE_COURIER_LOST = 0xa, CHAT_MESSAGE_COURIER_RESPAWNED = 0xb, CHAT_MESSAGE_GLYPH_USED = 0xc, CHAT_MESSAGE_ITEM_PURCHASE = 0xd, CHAT_MESSAGE_CONNECT = 0xe, CHAT_MESSAGE_DISCONNECT = 0xf, CHAT_MESSAGE_DISCONNECT_WAIT_FOR_RECONNECT = 0x10, CHAT_MESSAGE_DISCONNECT_TIME_REMAINING = 0x11, CHAT_MESSAGE_DISCONNECT_TIME_REMAINING_PLURAL = 0x12, CHAT_MESSAGE_RECONNECT = 0x13, CHAT_MESSAGE_PLAYER_LEFT = 0x14, CHAT_MESSAGE_SAFE_TO_LEAVE = 0x15, CHAT_MESSAGE_RUNE_PICKUP = 0x16, CHAT_MESSAGE_RUNE_BOTTLE = 0x17, CHAT_MESSAGE_RUNE_DENY = 0x72, CHAT_MESSAGE_INTHEBAG = 0x18, CHAT_MESSAGE_SECRETSHOP = 0x19, CHAT_MESSAGE_ITEM_AUTOPURCHASED = 0x1a, CHAT_MESSAGE_ITEMS_COMBINED = 0x1b, CHAT_MESSAGE_SUPER_CREEPS = 0x1c, CHAT_MESSAGE_CANT_USE_ACTION_ITEM = 0x1d, CHAT_MESSAGE_CANTPAUSE = 0x1f, CHAT_MESSAGE_NOPAUSESLEFT = 0x20, CHAT_MESSAGE_CANTPAUSEYET = 0x21, CHAT_MESSAGE_PAUSED = 0x22, CHAT_MESSAGE_UNPAUSE_COUNTDOWN = 0x23, CHAT_MESSAGE_UNPAUSED = 0x24, CHAT_MESSAGE_AUTO_UNPAUSED = 0x25, CHAT_MESSAGE_YOUPAUSED = 0x26, CHAT_MESSAGE_CANTUNPAUSETEAM = 0x27, CHAT_MESSAGE_VOICE_TEXT_BANNED = 0x29, CHAT_MESSAGE_SPECTATORS_WATCHING_THIS_GAME = 0x2a, CHAT_MESSAGE_REPORT_REMINDER = 0x2b, CHAT_MESSAGE_ECON_ITEM = 0x2c, CHAT_MESSAGE_TAUNT = 0x2d, CHAT_MESSAGE_RANDOM = 0x2e, CHAT_MESSAGE_RD_TURN = 0x2f, CHAT_MESSAGE_DROP_RATE_BONUS = 0x31, CHAT_MESSAGE_NO_BATTLE_POINTS = 0x32, CHAT_MESSAGE_DENIED_AEGIS = 0x33, CHAT_MESSAGE_INFORMATIONAL = 0x34, CHAT_MESSAGE_AEGIS_STOLEN = 0x35, CHAT_MESSAGE_ROSHAN_CANDY = 0x36, CHAT_MESSAGE_ITEM_GIFTED = 0x37, CHAT_MESSAGE_HERO_KILL_WITH_GREEVIL = 0x38, CHAT_MESSAGE_HOLDOUT_TOWER_DESTROYED = 0x39, CHAT_MESSAGE_HOLDOUT_WALL_DESTROYED = 0x3a, CHAT_MESSAGE_HOLDOUT_WALL_FINISHED = 0x3b, CHAT_MESSAGE_PLAYER_LEFT_LIMITED_HERO = 0x3e, CHAT_MESSAGE_ABANDON_LIMITED_HERO_EXPLANATION = 0x3f, CHAT_MESSAGE_DISCONNECT_LIMITED_HERO = 0x40, CHAT_MESSAGE_LOW_PRIORITY_COMPLETED_EXPLANATION = 0x41, CHAT_MESSAGE_RECRUITMENT_DROP_RATE_BONUS = 0x42, CHAT_MESSAGE_FROSTIVUS_SHINING_BOOSTER_ACTIVE = 0x43, CHAT_MESSAGE_PLAYER_LEFT_AFK = 0x49, CHAT_MESSAGE_PLAYER_LEFT_DISCONNECTED_TOO_LONG = 0x4a, CHAT_MESSAGE_PLAYER_ABANDONED = 0x4b, CHAT_MESSAGE_PLAYER_ABANDONED_AFK = 0x4c, CHAT_MESSAGE_PLAYER_ABANDONED_DISCONNECTED_TOO_LONG = 0x4d, CHAT_MESSAGE_WILL_NOT_BE_SCORED = 0x4e, CHAT_MESSAGE_WILL_NOT_BE_SCORED_RANKED = 0x4f, CHAT_MESSAGE_WILL_NOT_BE_SCORED_NETWORK = 0x50, CHAT_MESSAGE_WILL_NOT_BE_SCORED_NETWORK_RANKED = 0x51, CHAT_MESSAGE_CAN_QUIT_WITHOUT_ABANDON = 0x52, CHAT_MESSAGE_RANKED_GAME_STILL_SCORED_LEAVERS_GET_LOSS = 0x53, CHAT_MESSAGE_ABANDON_RANKED_BEFORE_FIRST_BLOOD_PARTY = 0x54, CHAT_MESSAGE_COMPENDIUM_LEVEL = 0x55, CHAT_MESSAGE_VICTORY_PREDICTION_STREAK = 0x56, CHAT_MESSAGE_ASSASSIN_ANNOUNCE = 0x57, CHAT_MESSAGE_ASSASSIN_SUCCESS = 0x58, CHAT_MESSAGE_ASSASSIN_DENIED = 0x59, CHAT_MESSAGE_VICTORY_PREDICTION_SINGLE_USER_CONFIRM = 0x5a, CHAT_MESSAGE_EFFIGY_KILL = 0x5b, CHAT_MESSAGE_VOICE_TEXT_BANNED_OVERFLOW = 0x5c, CHAT_MESSAGE_YEAR_BEAST_KILLED = 0x5d, CHAT_MESSAGE_PAUSE_COUNTDOWN = 0x5e, CHAT_MESSAGE_COINS_WAGERED = 0x5f, CHAT_MESSAGE_HERO_NOMINATED_BAN = 0x60, CHAT_MESSAGE_HERO_BANNED = 0x61, CHAT_MESSAGE_HERO_BAN_COUNT = 0x62, CHAT_MESSAGE_RIVER_PAINTED = 0x63, CHAT_MESSAGE_SCAN_USED = 0x64, CHAT_MESSAGE_SHRINE_KILLED = 0x65, CHAT_MESSAGE_WAGER_TOKEN_SPENT = 0x66, CHAT_MESSAGE_RANK_WAGER = 0x67, CHAT_MESSAGE_NEW_PLAYER_REMINDER = 0x68, CHAT_MESSAGE_OBSERVER_WARD_KILLED = 0x69, CHAT_MESSAGE_SENTRY_WARD_KILLED = 0x6a, CHAT_MESSAGE_ITEM_PLACED_IN_NEUTRAL_STASH = 0x6b, CHAT_MESSAGE_HERO_CHOICE_INVALID = 0x6c, CHAT_MESSAGE_BOUNTY = 0x6d, CHAT_MESSAGE_ABILITY_DRAFT_START = 0x6e, CHAT_MESSAGE_HERO_FOUND_CANDY = 0x6f, CHAT_MESSAGE_ABILITY_DRAFT_RANDOMED = 0x70, CHAT_MESSAGE_PRIVATE_COACH_CONNECTED = 0x71, CHAT_MESSAGE_CANT_PAUSE_TOO_EARLY = 0x73, CHAT_MESSAGE_HERO_KILL_WITH_PENGUIN = 0x74, }; // Alignment: 4 // Size: 0x4 enum class DOTA_NO_BATTLE_POINTS_REASONS : uint32_t { NO_BATTLE_POINTS_WRONG_LOBBY_TYPE = 0x1, NO_BATTLE_POINTS_PRACTICE_BOTS = 0x2, NO_BATTLE_POINTS_CHEATS_ENABLED = 0x3, NO_BATTLE_POINTS_LOW_PRIORITY = 0x4, }; // Alignment: 4 // Size: 0x5 enum class DOTA_CHAT_INFORMATIONAL : uint32_t { INFO_COOP_BATTLE_POINTS_RULES = 0x1, INFO_FROSTIVUS_ABANDON_REMINDER = 0x2, INFO_RANKED_REMINDER = 0x3, INFO_COOP_LOW_PRIORITY_PASSIVE_REMINDER = 0x4, INFO_CUSTOM_GAME_PENALTY_REMINDER = 0x5, }; // Alignment: 4 // Size: 0x10 enum class DOTA_ABILITY_PING_TYPE : uint32_t { ABILITY_PING_READY = 0x1, ABILITY_PING_MANA = 0x2, ABILITY_PING_COOLDOWN = 0x3, ABILITY_PING_ENEMY = 0x4, ABILITY_PING_UNLEARNED = 0x5, ABILITY_PING_INBACKPACK = 0x6, ABILITY_PING_INSTASH = 0x7, ABILITY_PING_ONCOURIER = 0x8, ABILITY_PING_ALLY = 0x9, ABILITY_PING_LEARN_READY = 0xa, ABILITY_PING_WILL_LEARN = 0xb, ABILITY_PING_FUTURE_LEARN = 0xc, ABILITY_PING_NEUTRAL_OFFER = 0xd, ABILITY_PING_NEUTRAL_REQUEST = 0xe, ABILITY_PING_NEUTRAL_EQUIP = 0xf, ABILITY_PING_INCOURIERBACKPACK = 0x10, }; // Alignment: 4 // Size: 0x6 enum class DOTA_REPLAY_STATE_EVENT : uint32_t { DOTA_REPLAY_STATE_EVENT_GAME_START = 0x1, DOTA_REPLAY_STATE_EVENT_STARTING_HORN = 0x2, DOTA_REPLAY_STATE_EVENT_FIRST_BLOOD = 0x3, DOTA_REPLAY_STATE_EVENT_SHOWCASE = 0x4, DOTA_REPLAY_STATE_EVENT_POST_GAME = 0x5, DOTA_REPLAY_STATE_EVENT_WAIT_FOR_MAP = 0x6, }; // Alignment: 4 // Size: 0x7 enum class EDotaEntityMessages : uint32_t { DOTA_UNIT_SPEECH = 0x0, DOTA_UNIT_SPEECH_MUTE = 0x1, DOTA_UNIT_ADD_GESTURE = 0x2, DOTA_UNIT_REMOVE_GESTURE = 0x3, DOTA_UNIT_REMOVE_ALL_GESTURES = 0x4, DOTA_UNIT_FADE_GESTURE = 0x6, DOTA_UNIT_SPEECH_CLIENTSIDE_RULES = 0x7, }; // Alignment: 4 // Size: 0x19 enum class DOTA_OVERHEAD_ALERT : uint32_t { OVERHEAD_ALERT_GOLD = 0x0, OVERHEAD_ALERT_DENY = 0x1, OVERHEAD_ALERT_CRITICAL = 0x2, OVERHEAD_ALERT_XP = 0x3, OVERHEAD_ALERT_BONUS_SPELL_DAMAGE = 0x4, OVERHEAD_ALERT_MISS = 0x5, OVERHEAD_ALERT_DAMAGE = 0x6, OVERHEAD_ALERT_EVADE = 0x7, OVERHEAD_ALERT_BLOCK = 0x8, OVERHEAD_ALERT_BONUS_POISON_DAMAGE = 0x9, OVERHEAD_ALERT_HEAL = 0xa, OVERHEAD_ALERT_MANA_ADD = 0xb, OVERHEAD_ALERT_MANA_LOSS = 0xc, OVERHEAD_ALERT_LAST_HIT_EARLY = 0xd, OVERHEAD_ALERT_LAST_HIT_CLOSE = 0xe, OVERHEAD_ALERT_LAST_HIT_MISS = 0xf, OVERHEAD_ALERT_MAGICAL_BLOCK = 0x10, OVERHEAD_ALERT_INCOMING_DAMAGE = 0x11, OVERHEAD_ALERT_OUTGOING_DAMAGE = 0x12, OVERHEAD_ALERT_DISABLE_RESIST = 0x13, OVERHEAD_ALERT_DEATH = 0x14, OVERHEAD_ALERT_BLOCKED = 0x15, OVERHEAD_ALERT_ITEM_RECEIVED = 0x16, OVERHEAD_ALERT_SHARD = 0x17, OVERHEAD_ALERT_DEADLY_BLOW = 0x18, }; // Alignment: 4 // Size: 0x3 enum class DOTA_ROSHAN_PHASE : uint32_t { k_SRSP_ROSHAN_ALIVE = 0x0, k_SRSP_ROSHAN_BASE_TIMER = 0x1, k_SRSP_ROSHAN_VISIBLE_TIMER = 0x2, }; // Alignment: 4 // Size: 0x10 enum class DOTA_POSITION_CATEGORY : uint32_t { DOTA_POSITION_NONE = 0x0, DOTA_POSITION_BOTTOM_LANE = 0x1, DOTA_POSITION_MID_LANE = 0x2, DOTA_POSITION_TOP_LANE = 0x3, DOTA_POSITION_RADIANT_JUNGLE = 0x4, DOTA_POSITION_DIRE_JUNGLE = 0x5, DOTA_POSITION_RADIANT_ANCIENTS = 0x6, DOTA_POSITION_DIRE_ANCIENTS = 0x7, DOTA_POSITION_RADIANT_SECRET_SHOP = 0x8, DOTA_POSITION_DIRE_SECRET_SHOP = 0x9, DOTA_POSITION_RIVER = 0xa, DOTA_POSITION_ROSHAN_PIT = 0xb, DOTA_POSITION_RADIANT_BASE = 0xc, DOTA_POSITION_DIRE_BASE = 0xd, DOTA_POSITION_FOUNTAIN = 0xe, DOTA_POSITION_OTHER = 0xf, }; // Alignment: 4 // Size: 0x6 enum class DOTA_ABILITY_TARGET_TYPE : uint32_t { DOTA_ABILITY_TARGET_NONE = 0x0, DOTA_ABILITY_TARGET_SELF = 0x1, DOTA_ABILITY_TARGET_ALLY_HERO = 0x2, DOTA_ABILITY_TARGET_ALLY_CREEP = 0x3, DOTA_ABILITY_TARGET_ENEMY_HERO = 0x4, DOTA_ABILITY_TARGET_ENEMY_CREEP = 0x5, }; // Alignment: 4 // Size: 0x16 enum class EHeroStatType : uint32_t { k_EHeroStatType_None = 0x0, k_EHeroStatType_AxeTotalDamage = 0x7d0, k_EHeroStatType_BattleHungerDamage = 0x7d1, k_EHeroStatType_CounterHelixDamage = 0x7d2, k_EHeroStatType_CullingBladeDamage = 0x7d3, k_EHeroStatType_BerserkersCallCastCount = 0x7d4, k_EHeroStatType_BerserkersCallHeroesHitAverage = 0x7d5, k_EHeroStatType_BerserkersCallOtherUnitsHit = 0x7d6, k_EHeroStatType_BerserkersCallHeroAttacksTaken = 0x7d7, k_EHeroStatType_BerserkersCallOtherAttacksTaken = 0x7d8, k_EHeroStatType_BattleHungerCastCount = 0x7d9, k_EHeroStatType_BattleHungerPotentialDuration = 0x7da, k_EHeroStatType_BattleHungerAverageDuration = 0x7db, k_EHeroStatType_CounterHelixProcCount = 0x7dc, k_EHeroStatType_CounterHelixHeroProcCount = 0x7dd, k_EHeroStatType_CounterHelixHeroesHitAverage = 0x7de, k_EHeroStatType_CounterHelixOtherUnitsHitCount = 0x7df, k_EHeroStatType_CullingBladeCastCount = 0x7e0, k_EHeroStatType_CullingBladeKillCount = 0x7e1, k_EHeroStatType_CullingBladeAverageHealthCulled = 0x7e2, k_EHeroStatType_CullingBladeAverageDamageAvailable = 0x7e3, k_EHeroStatType_CullingBladeHeroBuffAverage = 0x7e4, }; // Alignment: 4 // Size: 0x14 enum class EPlayerVoiceListenState : uint32_t { kPVLS_None = 0x0, kPVLS_DeniedChatBanned = 0x1, kPVLS_DeniedPartner = 0x2, kPVLS_DeniedHLTVTalkerNotSpectator = 0x3, kPVLS_DeniedHLTVNoTalkerPlayerID = 0x4, kPVLS_DeniedHLTVTalkerNotBroadcaster = 0x5, kPVLS_DeniedTeamSpectator = 0x6, kPVLS_DeniedStudent = 0x8, kPVLS_DeniedPrivateCoach = 0x9, kPVLS_Denied = 0x40, kPVLS_AllowHLTVTalkerIsBroadcaster = 0x41, kPVLS_AllowCoBroadcaster = 0x42, kPVLS_AllowAllChat = 0x43, kPVLS_AllowStudentToCoach = 0x44, kPVLS_AllowFellowStudent = 0x45, kPVLS_AllowTalkerIsCoach = 0x46, kPVLS_AllowCoachHearTeam = 0x47, kPVLS_AllowSameTeam = 0x48, kPVLS_AllowShowcase = 0x49, kPVLS_AllowPrivateCoach = 0x4a, }; // Alignment: 4 // Size: 0x2 enum class EProjectionEvent : uint32_t { ePE_FirstBlood = 0x0, ePE_Killstreak_godlike = 0x1, }; // Alignment: 4 // Size: 0x2 enum class EDotaBroadcastMessages : uint32_t { DOTA_BM_LANLobbyRequest = 0x1, DOTA_BM_LANLobbyReply = 0x2, }; // Alignment: 4 // Size: 0x2 enum class DOTA_MODIFIER_ENTRY_TYPE : uint32_t { DOTA_MODIFIER_ENTRY_TYPE_ACTIVE = 0x1, DOTA_MODIFIER_ENTRY_TYPE_REMOVED = 0x2, }; // Alignment: 4 // Size: 0x109 enum class GameActivity_t : uint32_t { ACT_DOTA_IDLE = 0x5dc, ACT_DOTA_IDLE_RARE = 0x5dd, ACT_DOTA_RUN = 0x5de, ACT_DOTA_ATTACK = 0x5df, ACT_DOTA_ATTACK2 = 0x5e0, ACT_DOTA_ATTACK_EVENT = 0x5e1, ACT_DOTA_DIE = 0x5e2, ACT_DOTA_FLINCH = 0x5e3, ACT_DOTA_FLAIL = 0x5e4, ACT_DOTA_DISABLED = 0x5e5, ACT_DOTA_CAST_ABILITY_1 = 0x5e6, ACT_DOTA_CAST_ABILITY_2 = 0x5e7, ACT_DOTA_CAST_ABILITY_3 = 0x5e8, ACT_DOTA_CAST_ABILITY_4 = 0x5e9, ACT_DOTA_CAST_ABILITY_5 = 0x5ea, ACT_DOTA_CAST_ABILITY_6 = 0x5eb, ACT_DOTA_OVERRIDE_ABILITY_1 = 0x5ec, ACT_DOTA_OVERRIDE_ABILITY_2 = 0x5ed, ACT_DOTA_OVERRIDE_ABILITY_3 = 0x5ee, ACT_DOTA_OVERRIDE_ABILITY_4 = 0x5ef, ACT_DOTA_CHANNEL_ABILITY_1 = 0x5f0, ACT_DOTA_CHANNEL_ABILITY_2 = 0x5f1, ACT_DOTA_CHANNEL_ABILITY_3 = 0x5f2, ACT_DOTA_CHANNEL_ABILITY_4 = 0x5f3, ACT_DOTA_CHANNEL_ABILITY_5 = 0x5f4, ACT_DOTA_CHANNEL_ABILITY_6 = 0x5f5, ACT_DOTA_CHANNEL_END_ABILITY_1 = 0x5f6, ACT_DOTA_CHANNEL_END_ABILITY_2 = 0x5f7, ACT_DOTA_CHANNEL_END_ABILITY_3 = 0x5f8, ACT_DOTA_CHANNEL_END_ABILITY_4 = 0x5f9, ACT_DOTA_CHANNEL_END_ABILITY_5 = 0x5fa, ACT_DOTA_CHANNEL_END_ABILITY_6 = 0x5fb, ACT_DOTA_CONSTANT_LAYER = 0x5fc, ACT_DOTA_CAPTURE = 0x5fd, ACT_DOTA_SPAWN = 0x5fe, ACT_DOTA_KILLTAUNT = 0x5ff, ACT_DOTA_TAUNT = 0x600, ACT_DOTA_THIRST = 0x601, ACT_DOTA_CAST_DRAGONBREATH = 0x602, ACT_DOTA_ECHO_SLAM = 0x603, ACT_DOTA_CAST_ABILITY_1_END = 0x604, ACT_DOTA_CAST_ABILITY_2_END = 0x605, ACT_DOTA_CAST_ABILITY_3_END = 0x606, ACT_DOTA_CAST_ABILITY_4_END = 0x607, ACT_MIRANA_LEAP_END = 0x608, ACT_WAVEFORM_START = 0x609, ACT_WAVEFORM_END = 0x60a, ACT_DOTA_CAST_ABILITY_ROT = 0x60b, ACT_DOTA_DIE_SPECIAL = 0x60c, ACT_DOTA_RATTLETRAP_BATTERYASSAULT = 0x60d, ACT_DOTA_RATTLETRAP_POWERCOGS = 0x60e, ACT_DOTA_RATTLETRAP_HOOKSHOT_START = 0x60f, ACT_DOTA_RATTLETRAP_HOOKSHOT_LOOP = 0x610, ACT_DOTA_RATTLETRAP_HOOKSHOT_END = 0x611, ACT_STORM_SPIRIT_OVERLOAD_RUN_OVERRIDE = 0x612, ACT_DOTA_TINKER_REARM1 = 0x613, ACT_DOTA_TINKER_REARM2 = 0x614, ACT_DOTA_TINKER_REARM3 = 0x615, ACT_TINY_AVALANCHE = 0x616, ACT_TINY_TOSS = 0x617, ACT_TINY_GROWL = 0x618, ACT_DOTA_WEAVERBUG_ATTACH = 0x619, ACT_DOTA_CAST_WILD_AXES_END = 0x61a, ACT_DOTA_CAST_LIFE_BREAK_START = 0x61b, ACT_DOTA_CAST_LIFE_BREAK_END = 0x61c, ACT_DOTA_NIGHTSTALKER_TRANSITION = 0x61d, ACT_DOTA_LIFESTEALER_RAGE = 0x61e, ACT_DOTA_LIFESTEALER_OPEN_WOUNDS = 0x61f, ACT_DOTA_SAND_KING_BURROW_IN = 0x620, ACT_DOTA_SAND_KING_BURROW_OUT = 0x621, ACT_DOTA_EARTHSHAKER_TOTEM_ATTACK = 0x622, ACT_DOTA_WHEEL_LAYER = 0x623, ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_START = 0x624, ACT_DOTA_ALCHEMIST_CONCOCTION = 0x625, ACT_DOTA_JAKIRO_LIQUIDFIRE_START = 0x626, ACT_DOTA_JAKIRO_LIQUIDFIRE_LOOP = 0x627, ACT_DOTA_LIFESTEALER_INFEST = 0x628, ACT_DOTA_LIFESTEALER_INFEST_END = 0x629, ACT_DOTA_LASSO_LOOP = 0x62a, ACT_DOTA_ALCHEMIST_CONCOCTION_THROW = 0x62b, ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_END = 0x62c, ACT_DOTA_CAST_COLD_SNAP = 0x62d, ACT_DOTA_CAST_GHOST_WALK = 0x62e, ACT_DOTA_CAST_TORNADO = 0x62f, ACT_DOTA_CAST_EMP = 0x630, ACT_DOTA_CAST_ALACRITY = 0x631, ACT_DOTA_CAST_CHAOS_METEOR = 0x632, ACT_DOTA_CAST_SUN_STRIKE = 0x633, ACT_DOTA_CAST_FORGE_SPIRIT = 0x634, ACT_DOTA_CAST_ICE_WALL = 0x635, ACT_DOTA_CAST_DEAFENING_BLAST = 0x636, ACT_DOTA_VICTORY = 0x637, ACT_DOTA_DEFEAT = 0x638, ACT_DOTA_SPIRIT_BREAKER_CHARGE_POSE = 0x639, ACT_DOTA_SPIRIT_BREAKER_CHARGE_END = 0x63a, ACT_DOTA_TELEPORT = 0x63b, ACT_DOTA_TELEPORT_END = 0x63c, ACT_DOTA_CAST_REFRACTION = 0x63d, ACT_DOTA_CAST_ABILITY_7 = 0x63e, ACT_DOTA_CANCEL_SIREN_SONG = 0x63f, ACT_DOTA_CHANNEL_ABILITY_7 = 0x640, ACT_DOTA_LOADOUT = 0x641, ACT_DOTA_FORCESTAFF_END = 0x642, ACT_DOTA_POOF_END = 0x643, ACT_DOTA_SLARK_POUNCE = 0x644, ACT_DOTA_MAGNUS_SKEWER_START = 0x645, ACT_DOTA_MAGNUS_SKEWER_END = 0x646, ACT_DOTA_MEDUSA_STONE_GAZE = 0x647, ACT_DOTA_RELAX_START = 0x648, ACT_DOTA_RELAX_LOOP = 0x649, ACT_DOTA_RELAX_END = 0x64a, ACT_DOTA_CENTAUR_STAMPEDE = 0x64b, ACT_DOTA_BELLYACHE_START = 0x64c, ACT_DOTA_BELLYACHE_LOOP = 0x64d, ACT_DOTA_BELLYACHE_END = 0x64e, ACT_DOTA_ROQUELAIRE_LAND = 0x64f, ACT_DOTA_ROQUELAIRE_LAND_IDLE = 0x650, ACT_DOTA_GREEVIL_CAST = 0x651, ACT_DOTA_GREEVIL_OVERRIDE_ABILITY = 0x652, ACT_DOTA_GREEVIL_HOOK_START = 0x653, ACT_DOTA_GREEVIL_HOOK_END = 0x654, ACT_DOTA_GREEVIL_BLINK_BONE = 0x655, ACT_DOTA_IDLE_SLEEPING = 0x656, ACT_DOTA_INTRO = 0x657, ACT_DOTA_GESTURE_POINT = 0x658, ACT_DOTA_GESTURE_ACCENT = 0x659, ACT_DOTA_SLEEPING_END = 0x65a, ACT_DOTA_AMBUSH = 0x65b, ACT_DOTA_ITEM_LOOK = 0x65c, ACT_DOTA_STARTLE = 0x65d, ACT_DOTA_FRUSTRATION = 0x65e, ACT_DOTA_TELEPORT_REACT = 0x65f, ACT_DOTA_TELEPORT_END_REACT = 0x660, ACT_DOTA_SHRUG = 0x661, ACT_DOTA_RELAX_LOOP_END = 0x662, ACT_DOTA_PRESENT_ITEM = 0x663, ACT_DOTA_IDLE_IMPATIENT = 0x664, ACT_DOTA_SHARPEN_WEAPON = 0x665, ACT_DOTA_SHARPEN_WEAPON_OUT = 0x666, ACT_DOTA_IDLE_SLEEPING_END = 0x667, ACT_DOTA_BRIDGE_DESTROY = 0x668, ACT_DOTA_TAUNT_SNIPER = 0x669, ACT_DOTA_DEATH_BY_SNIPER = 0x66a, ACT_DOTA_LOOK_AROUND = 0x66b, ACT_DOTA_CAGED_CREEP_RAGE = 0x66c, ACT_DOTA_CAGED_CREEP_RAGE_OUT = 0x66d, ACT_DOTA_CAGED_CREEP_SMASH = 0x66e, ACT_DOTA_CAGED_CREEP_SMASH_OUT = 0x66f, ACT_DOTA_IDLE_IMPATIENT_SWORD_TAP = 0x670, ACT_DOTA_INTRO_LOOP = 0x671, ACT_DOTA_BRIDGE_THREAT = 0x672, ACT_DOTA_DAGON = 0x673, ACT_DOTA_CAST_ABILITY_2_ES_ROLL_START = 0x674, ACT_DOTA_CAST_ABILITY_2_ES_ROLL = 0x675, ACT_DOTA_CAST_ABILITY_2_ES_ROLL_END = 0x676, ACT_DOTA_NIAN_PIN_START = 0x677, ACT_DOTA_NIAN_PIN_LOOP = 0x678, ACT_DOTA_NIAN_PIN_END = 0x679, ACT_DOTA_LEAP_STUN = 0x67a, ACT_DOTA_LEAP_SWIPE = 0x67b, ACT_DOTA_NIAN_INTRO_LEAP = 0x67c, ACT_DOTA_AREA_DENY = 0x67d, ACT_DOTA_NIAN_PIN_TO_STUN = 0x67e, ACT_DOTA_RAZE_1 = 0x67f, ACT_DOTA_RAZE_2 = 0x680, ACT_DOTA_RAZE_3 = 0x681, ACT_DOTA_UNDYING_DECAY = 0x682, ACT_DOTA_UNDYING_SOUL_RIP = 0x683, ACT_DOTA_UNDYING_TOMBSTONE = 0x684, ACT_DOTA_WHIRLING_AXES_RANGED = 0x685, ACT_DOTA_SHALLOW_GRAVE = 0x686, ACT_DOTA_COLD_FEET = 0x687, ACT_DOTA_ICE_VORTEX = 0x688, ACT_DOTA_CHILLING_TOUCH = 0x689, ACT_DOTA_ENFEEBLE = 0x68a, ACT_DOTA_FATAL_BONDS = 0x68b, ACT_DOTA_MIDNIGHT_PULSE = 0x68c, ACT_DOTA_ANCESTRAL_SPIRIT = 0x68d, ACT_DOTA_THUNDER_STRIKE = 0x68e, ACT_DOTA_KINETIC_FIELD = 0x68f, ACT_DOTA_STATIC_STORM = 0x690, ACT_DOTA_MINI_TAUNT = 0x691, ACT_DOTA_ARCTIC_BURN_END = 0x692, ACT_DOTA_LOADOUT_RARE = 0x693, ACT_DOTA_SWIM = 0x694, ACT_DOTA_FLEE = 0x695, ACT_DOTA_TROT = 0x696, ACT_DOTA_SHAKE = 0x697, ACT_DOTA_SWIM_IDLE = 0x698, ACT_DOTA_WAIT_IDLE = 0x699, ACT_DOTA_GREET = 0x69a, ACT_DOTA_TELEPORT_COOP_START = 0x69b, ACT_DOTA_TELEPORT_COOP_WAIT = 0x69c, ACT_DOTA_TELEPORT_COOP_END = 0x69d, ACT_DOTA_TELEPORT_COOP_EXIT = 0x69e, ACT_DOTA_SHOPKEEPER_PET_INTERACT = 0x69f, ACT_DOTA_ITEM_PICKUP = 0x6a0, ACT_DOTA_ITEM_DROP = 0x6a1, ACT_DOTA_CAPTURE_PET = 0x6a2, ACT_DOTA_PET_WARD_OBSERVER = 0x6a3, ACT_DOTA_PET_WARD_SENTRY = 0x6a4, ACT_DOTA_PET_LEVEL = 0x6a5, ACT_DOTA_CAST_BURROW_END = 0x6a6, ACT_DOTA_LIFESTEALER_ASSIMILATE = 0x6a7, ACT_DOTA_LIFESTEALER_EJECT = 0x6a8, ACT_DOTA_ATTACK_EVENT_BASH = 0x6a9, ACT_DOTA_CAPTURE_RARE = 0x6aa, ACT_DOTA_AW_MAGNETIC_FIELD = 0x6ab, ACT_DOTA_CAST_GHOST_SHIP = 0x6ac, ACT_DOTA_FXANIM = 0x6ad, ACT_DOTA_VICTORY_START = 0x6ae, ACT_DOTA_DEFEAT_START = 0x6af, ACT_DOTA_DP_SPIRIT_SIPHON = 0x6b0, ACT_DOTA_TRICKS_END = 0x6b1, ACT_DOTA_ES_STONE_CALLER = 0x6b2, ACT_DOTA_MK_STRIKE = 0x6b3, ACT_DOTA_VERSUS = 0x6b4, ACT_DOTA_CAPTURE_CARD = 0x6b5, ACT_DOTA_MK_SPRING_SOAR = 0x6b6, ACT_DOTA_MK_SPRING_END = 0x6b7, ACT_DOTA_MK_TREE_SOAR = 0x6b8, ACT_DOTA_MK_TREE_END = 0x6b9, ACT_DOTA_MK_FUR_ARMY = 0x6ba, ACT_DOTA_MK_SPRING_CAST = 0x6bb, ACT_DOTA_NECRO_GHOST_SHROUD = 0x6bc, ACT_DOTA_OVERRIDE_ARCANA = 0x6bd, ACT_DOTA_SLIDE = 0x6be, ACT_DOTA_SLIDE_LOOP = 0x6bf, ACT_DOTA_GENERIC_CHANNEL_1 = 0x6c0, ACT_DOTA_GS_SOUL_CHAIN = 0x6c1, ACT_DOTA_GS_INK_CREATURE = 0x6c2, ACT_DOTA_TRANSITION = 0x6c3, ACT_DOTA_BLINK_DAGGER = 0x6c4, ACT_DOTA_BLINK_DAGGER_END = 0x6c5, ACT_DOTA_CUSTOM_TOWER_ATTACK = 0x6c6, ACT_DOTA_CUSTOM_TOWER_IDLE = 0x6c7, ACT_DOTA_CUSTOM_TOWER_DIE = 0x6c8, ACT_DOTA_CAST_COLD_SNAP_ORB = 0x6c9, ACT_DOTA_CAST_GHOST_WALK_ORB = 0x6ca, ACT_DOTA_CAST_TORNADO_ORB = 0x6cb, ACT_DOTA_CAST_EMP_ORB = 0x6cc, ACT_DOTA_CAST_ALACRITY_ORB = 0x6cd, ACT_DOTA_CAST_CHAOS_METEOR_ORB = 0x6ce, ACT_DOTA_CAST_SUN_STRIKE_ORB = 0x6cf, ACT_DOTA_CAST_FORGE_SPIRIT_ORB = 0x6d0, ACT_DOTA_CAST_ICE_WALL_ORB = 0x6d1, ACT_DOTA_CAST_DEAFENING_BLAST_ORB = 0x6d2, ACT_DOTA_NOTICE = 0x6d3, ACT_DOTA_CAST_ABILITY_2_ALLY = 0x6d4, ACT_DOTA_SHUFFLE_L = 0x6d5, ACT_DOTA_SHUFFLE_R = 0x6d6, ACT_DOTA_OVERRIDE_LOADOUT = 0x6d7, ACT_DOTA_TAUNT_SPECIAL = 0x6d8, ACT_DOTA_TELEPORT_START = 0x6d9, ACT_DOTA_GENERIC_CHANNEL_1_START = 0x6da, ACT_DOTA_CUSTOM_TOWER_IDLE_RARE = 0x6db, ACT_DOTA_CUSTOM_TOWER_TAUNT = 0x6dc, ACT_DOTA_CUSTOM_TOWER_HIGH_FIVE = 0x6dd, ACT_DOTA_ATTACK_SPECIAL = 0x6de, ACT_DOTA_TRANSITION_IDLE = 0x6df, ACT_DOTA_PIERCE_THE_VEIL = 0x6e0, ACT_DOTA_RUN_RARE = 0x6e1, ACT_DOTA_VIPER_DIVE = 0x6e2, ACT_DOTA_VIPER_DIVE_END = 0x6e3, ACT_DOTA_MK_STRIKE_END = 0x6e4, }; // Alignment: 4 // Size: 0x22 enum class DOTAHUDVisibility_t : uint32_t { DOTA_HUD_VISIBILITY_INVALID = 0xffffffffffffffff, DOTA_HUD_VISIBILITY_TOP_TIMEOFDAY = 0x0, DOTA_HUD_VISIBILITY_TOP_HEROES = 0x1, DOTA_HUD_VISIBILITY_TOP_SCOREBOARD = 0x2, DOTA_HUD_VISIBILITY_ACTION_PANEL = 0x3, DOTA_HUD_VISIBILITY_ACTION_MINIMAP = 0x4, DOTA_HUD_VISIBILITY_INVENTORY_PANEL = 0x5, DOTA_HUD_VISIBILITY_INVENTORY_SHOP = 0x6, DOTA_HUD_VISIBILITY_INVENTORY_ITEMS = 0x7, DOTA_HUD_VISIBILITY_INVENTORY_QUICKBUY = 0x8, DOTA_HUD_VISIBILITY_INVENTORY_COURIER = 0x9, DOTA_HUD_VISIBILITY_INVENTORY_PROTECT = 0xa, DOTA_HUD_VISIBILITY_INVENTORY_GOLD = 0xb, DOTA_HUD_VISIBILITY_SHOP_SUGGESTEDITEMS = 0xc, DOTA_HUD_VISIBILITY_SHOP_COMMONITEMS = 0xd, DOTA_HUD_VISIBILITY_HERO_SELECTION_TEAMS = 0xe, DOTA_HUD_VISIBILITY_HERO_SELECTION_GAME_NAME = 0xf, DOTA_HUD_VISIBILITY_HERO_SELECTION_CLOCK = 0x10, DOTA_HUD_VISIBILITY_HERO_SELECTION_HEADER = 0x11, DOTA_HUD_VISIBILITY_TOP_MENU_BUTTONS = 0x12, DOTA_HUD_VISIBILITY_TOP_BAR_BACKGROUND = 0x13, DOTA_HUD_VISIBILITY_TOP_BAR_RADIANT_TEAM = 0x14, DOTA_HUD_VISIBILITY_TOP_BAR_DIRE_TEAM = 0x15, DOTA_HUD_VISIBILITY_TOP_BAR_SCORE = 0x16, DOTA_HUD_VISIBILITY_ENDGAME = 0x17, DOTA_HUD_VISIBILITY_ENDGAME_CHAT = 0x18, DOTA_HUD_VISIBILITY_QUICK_STATS = 0x19, DOTA_HUD_VISIBILITY_PREGAME_STRATEGYUI = 0x1a, DOTA_HUD_VISIBILITY_KILLCAM = 0x1b, DOTA_HUD_VISIBILITY_FIGHT_RECAP = 0x1c, DOTA_HUD_VISIBILITY_TOP_BAR = 0x1d, DOTA_HUD_CUSTOMUI_BEHIND_HUD_ELEMENTS = 0x1e, DOTA_HUD_VISIBILITY_AGHANIMS_STATUS = 0x1f, DOTA_HUD_VISIBILITY_COUNT = 0x20, }; // Alignment: 1 // Size: 0x6 enum class EDOTASpecialBonusOperation : uint8_t { SPECIAL_BONUS_ADD = 0x0, SPECIAL_BONUS_MULTIPLY = 0x1, SPECIAL_BONUS_SUBTRACT = 0x2, SPECIAL_BONUS_PERCENTAGE_ADD = 0x3, SPECIAL_BONUS_PERCENTAGE_SUBTRACT = 0x4, SPECIAL_BONUS_SET = 0x5, }; // Alignment: 4 // Size: 0x8 enum class ItemQuality_t : uint32_t { DOTA_ITEM_QUALITY_CONSUMABLE = 0x0, DOTA_ITEM_QUALITY_PLAIN = 0x1, DOTA_ITEM_QUALITY_COMMON = 0x2, DOTA_ITEM_QUALITY_RARE = 0x3, DOTA_ITEM_QUALITY_EPIC = 0x4, DOTA_ITEM_QUALITY_ARTIFACT = 0x5, DOTA_ITEM_QUALITY_SECRET_SHOP = 0x6, NUM_ITEM_QUALITY_LEVELS = 0x7, }; // Alignment: 4 // Size: 0xe enum class DOTAMinimapEvent_t : uint32_t { DOTA_MINIMAP_EVENT_ANCIENT_UNDER_ATTACK = 0x2, DOTA_MINIMAP_EVENT_BASE_UNDER_ATTACK = 0x4, DOTA_MINIMAP_EVENT_BASE_GLYPHED = 0x8, DOTA_MINIMAP_EVENT_TEAMMATE_UNDER_ATTACK = 0x10, DOTA_MINIMAP_EVENT_TEAMMATE_TELEPORTING = 0x20, DOTA_MINIMAP_EVENT_TEAMMATE_DIED = 0x40, DOTA_MINIMAP_EVENT_TUTORIAL_TASK_ACTIVE = 0x80, DOTA_MINIMAP_EVENT_TUTORIAL_TASK_FINISHED = 0x100, DOTA_MINIMAP_EVENT_HINT_LOCATION = 0x200, DOTA_MINIMAP_EVENT_ENEMY_TELEPORTING = 0x400, DOTA_MINIMAP_EVENT_CANCEL_TELEPORTING = 0x800, DOTA_MINIMAP_EVENT_RADAR = 0x1000, DOTA_MINIMAP_EVENT_RADAR_TARGET = 0x2000, DOTA_MINIMAP_EVENT_MOVE_TO_TARGET = 0x4000, }; // Alignment: 4 // Size: 0x3 enum class ERoshanSpawnPhase : uint32_t { ROSHAN_SPAWN_PHASE_ALIVE = 0x0, ROSHAN_SPAWN_PHASE_BASE_TIMER = 0x1, ROSHAN_SPAWN_PHASE_VISIBLE_TIMER = 0x2, }; // Alignment: 4 // Size: 0x3f enum class DOTA_HeroPickState : uint32_t { DOTA_HEROPICK_STATE_NONE = 0x0, DOTA_HEROPICK_STATE_AP_SELECT = 0x1, DOTA_HEROPICK_STATE_SD_SELECT = 0x2, DOTA_HEROPICK_STATE_INTRO_SELECT_UNUSED = 0x3, DOTA_HEROPICK_STATE_RD_SELECT_UNUSED = 0x4, DOTA_HEROPICK_STATE_CM_INTRO = 0x5, DOTA_HEROPICK_STATE_CM_CAPTAINPICK = 0x6, DOTA_HEROPICK_STATE_CM_BAN1 = 0x7, DOTA_HEROPICK_STATE_CM_BAN2 = 0x8, DOTA_HEROPICK_STATE_CM_BAN3 = 0x9, DOTA_HEROPICK_STATE_CM_BAN4 = 0xa, DOTA_HEROPICK_STATE_CM_BAN5 = 0xb, DOTA_HEROPICK_STATE_CM_BAN6 = 0xc, DOTA_HEROPICK_STATE_CM_BAN7 = 0xd, DOTA_HEROPICK_STATE_CM_BAN8 = 0xe, DOTA_HEROPICK_STATE_CM_BAN9 = 0xf, DOTA_HEROPICK_STATE_CM_BAN10 = 0x10, DOTA_HEROPICK_STATE_CM_BAN11 = 0x11, DOTA_HEROPICK_STATE_CM_BAN12 = 0x12, DOTA_HEROPICK_STATE_CM_BAN13 = 0x13, DOTA_HEROPICK_STATE_CM_BAN14 = 0x14, DOTA_HEROPICK_STATE_CM_SELECT1 = 0x15, DOTA_HEROPICK_STATE_CM_SELECT2 = 0x16, DOTA_HEROPICK_STATE_CM_SELECT3 = 0x17, DOTA_HEROPICK_STATE_CM_SELECT4 = 0x18, DOTA_HEROPICK_STATE_CM_SELECT5 = 0x19, DOTA_HEROPICK_STATE_CM_SELECT6 = 0x1a, DOTA_HEROPICK_STATE_CM_SELECT7 = 0x1b, DOTA_HEROPICK_STATE_CM_SELECT8 = 0x1c, DOTA_HEROPICK_STATE_CM_SELECT9 = 0x1d, DOTA_HEROPICK_STATE_CM_SELECT10 = 0x1e, DOTA_HEROPICK_STATE_CM_PICK = 0x1f, DOTA_HEROPICK_STATE_AR_SELECT = 0x20, DOTA_HEROPICK_STATE_MO_SELECT = 0x21, DOTA_HEROPICK_STATE_FH_SELECT = 0x22, DOTA_HEROPICK_STATE_CD_INTRO = 0x23, DOTA_HEROPICK_STATE_CD_CAPTAINPICK = 0x24, DOTA_HEROPICK_STATE_CD_BAN1 = 0x25, DOTA_HEROPICK_STATE_CD_BAN2 = 0x26, DOTA_HEROPICK_STATE_CD_BAN3 = 0x27, DOTA_HEROPICK_STATE_CD_BAN4 = 0x28, DOTA_HEROPICK_STATE_CD_BAN5 = 0x29, DOTA_HEROPICK_STATE_CD_BAN6 = 0x2a, DOTA_HEROPICK_STATE_CD_SELECT1 = 0x2b, DOTA_HEROPICK_STATE_CD_SELECT2 = 0x2c, DOTA_HEROPICK_STATE_CD_SELECT3 = 0x2d, DOTA_HEROPICK_STATE_CD_SELECT4 = 0x2e, DOTA_HEROPICK_STATE_CD_SELECT5 = 0x2f, DOTA_HEROPICK_STATE_CD_SELECT6 = 0x30, DOTA_HEROPICK_STATE_CD_SELECT7 = 0x31, DOTA_HEROPICK_STATE_CD_SELECT8 = 0x32, DOTA_HEROPICK_STATE_CD_SELECT9 = 0x33, DOTA_HEROPICK_STATE_CD_SELECT10 = 0x34, DOTA_HEROPICK_STATE_CD_PICK = 0x35, DOTA_HEROPICK_STATE_BD_SELECT = 0x36, DOTA_HERO_PICK_STATE_ABILITY_DRAFT_SELECT = 0x37, DOTA_HERO_PICK_STATE_ARDM_SELECT = 0x38, DOTA_HEROPICK_STATE_ALL_DRAFT_SELECT = 0x39, DOTA_HERO_PICK_STATE_CUSTOMGAME_SELECT = 0x3a, DOTA_HEROPICK_STATE_SELECT_PENALTY = 0x3b, DOTA_HEROPICK_STATE_CUSTOM_PICK_RULES = 0x3c, DOTA_HEROPICK_STATE_SCENARIO_PICK = 0x3d, DOTA_HEROPICK_STATE_COUNT = 0x3e, }; // Alignment: 4 // Size: 0x2 enum class HeroPickType : uint32_t { HERO_PICK = 0x0, HERO_BAN = 0x1, }; // Alignment: 4 // Size: 0x2 enum class DOTACustomHeroPickRulesPhase_t : uint32_t { PHASE_Ban = 0x0, PHASE_Pick = 0x1, }; // Alignment: 4 // Size: 0x6 enum class DOTAModifierAttribute_t : uint32_t { MODIFIER_ATTRIBUTE_NONE = 0x0, MODIFIER_ATTRIBUTE_PERMANENT = 0x1, MODIFIER_ATTRIBUTE_MULTIPLE = 0x2, MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE = 0x4, MODIFIER_ATTRIBUTE_AURA_PRIORITY = 0x8, MODIFIER_ATTRIBUTE_IGNORE_DODGE = 0x10, }; // Alignment: 4 // Size: 0x5 enum class Attributes : uint32_t { DOTA_ATTRIBUTE_STRENGTH = 0x0, DOTA_ATTRIBUTE_AGILITY = 0x1, DOTA_ATTRIBUTE_INTELLECT = 0x2, DOTA_ATTRIBUTE_MAX = 0x3, DOTA_ATTRIBUTE_INVALID = 0xffffffffffffffff, }; // Alignment: 4 // Size: 0x9 enum class AttributeDerivedStats : uint32_t { DOTA_ATTRIBUTE_STRENGTH_DAMAGE = 0x0, DOTA_ATTRIBUTE_STRENGTH_HP = 0x1, DOTA_ATTRIBUTE_STRENGTH_HP_REGEN = 0x2, DOTA_ATTRIBUTE_AGILITY_DAMAGE = 0x3, DOTA_ATTRIBUTE_AGILITY_ARMOR = 0x4, DOTA_ATTRIBUTE_AGILITY_ATTACK_SPEED = 0x5, DOTA_ATTRIBUTE_INTELLIGENCE_DAMAGE = 0x6, DOTA_ATTRIBUTE_INTELLIGENCE_MANA = 0x7, DOTA_ATTRIBUTE_INTELLIGENCE_MANA_REGEN = 0x8, }; // Alignment: 4 // Size: 0x3 enum class AbilityBarType_t : uint32_t { ABILITY_BAR_TYPE_MAIN = 0x0, ABILITY_BAR_TYPE_SECONDARY = 0x1, ABILITY_BAR_TYPE_TERTIARY = 0x2, }; // Alignment: 4 // Size: 0x7 enum class DAMAGE_TYPES : uint32_t { DAMAGE_TYPE_NONE = 0x0, DAMAGE_TYPE_PHYSICAL = 0x1, DAMAGE_TYPE_MAGICAL = 0x2, DAMAGE_TYPE_PURE = 0x4, DAMAGE_TYPE_HP_REMOVAL = 0x8, DAMAGE_TYPE_ABILITY_DEFINED = 0x16, DAMAGE_TYPE_ALL = 0x7, }; // Alignment: 4 // Size: 0x4 enum class ABILITY_TYPES : uint32_t { ABILITY_TYPE_BASIC = 0x0, ABILITY_TYPE_ULTIMATE = 0x1, ABILITY_TYPE_ATTRIBUTES = 0x2, ABILITY_TYPE_HIDDEN = 0x3, }; // Alignment: 4 // Size: 0x6 enum class SPELL_IMMUNITY_TYPES : uint32_t { SPELL_IMMUNITY_NONE = 0x0, SPELL_IMMUNITY_ALLIES_YES = 0x1, SPELL_IMMUNITY_ALLIES_NO = 0x2, SPELL_IMMUNITY_ENEMIES_YES = 0x3, SPELL_IMMUNITY_ENEMIES_NO = 0x4, SPELL_IMMUNITY_ALLIES_YES_ENEMIES_NO = 0x5, }; // Alignment: 4 // Size: 0x4 enum class SPELL_DISPELLABLE_TYPES : uint32_t { SPELL_DISPELLABLE_NONE = 0x0, SPELL_DISPELLABLE_YES_STRONG = 0x1, SPELL_DISPELLABLE_YES = 0x2, SPELL_DISPELLABLE_NO = 0x3, }; // Alignment: 4 // Size: 0x3 enum class DOTAUnitMoveCapability_t : uint32_t { DOTA_UNIT_CAP_MOVE_NONE = 0x0, DOTA_UNIT_CAP_MOVE_GROUND = 0x1, DOTA_UNIT_CAP_MOVE_FLY = 0x2, }; // Alignment: 4 // Size: 0x5 enum class DOTAUnitAttackCapability_t : uint32_t { DOTA_UNIT_CAP_NO_ATTACK = 0x0, DOTA_UNIT_CAP_MELEE_ATTACK = 0x1, DOTA_UNIT_CAP_RANGED_ATTACK = 0x2, DOTA_UNIT_CAP_RANGED_ATTACK_DIRECTIONAL = 0x4, DOTA_UNIT_ATTACK_CAPABILITY_BIT_COUNT = 0x3, }; // Alignment: 4 // Size: 0xd enum class CLICK_BEHAVIORS : uint32_t { DOTA_CLICK_BEHAVIOR_NONE = 0x0, DOTA_CLICK_BEHAVIOR_MOVE = 0x1, DOTA_CLICK_BEHAVIOR_ATTACK = 0x2, DOTA_CLICK_BEHAVIOR_CAST = 0x3, DOTA_CLICK_BEHAVIOR_DROP_ITEM = 0x4, DOTA_CLICK_BEHAVIOR_DROP_SHOP_ITEM = 0x5, DOTA_CLICK_BEHAVIOR_DRAG = 0x6, DOTA_CLICK_BEHAVIOR_LEARN_ABILITY = 0x7, DOTA_CLICK_BEHAVIOR_PATROL = 0x8, DOTA_CLICK_BEHAVIOR_VECTOR_CAST = 0x9, DOTA_CLICK_BEHAVIOR_UNUSED = 0xa, DOTA_CLICK_BEHAVIOR_RADAR = 0xb, DOTA_CLICK_BEHAVIOR_LAST = 0xc, }; // Alignment: 8 // Size: 0x29 enum class DOTA_ABILITY_BEHAVIOR : uint64_t { DOTA_ABILITY_BEHAVIOR_NONE = 0x0, DOTA_ABILITY_BEHAVIOR_HIDDEN = 0x1, DOTA_ABILITY_BEHAVIOR_PASSIVE = 0x2, DOTA_ABILITY_BEHAVIOR_NO_TARGET = 0x4, DOTA_ABILITY_BEHAVIOR_UNIT_TARGET = 0x8, DOTA_ABILITY_BEHAVIOR_POINT = 0x10, DOTA_ABILITY_BEHAVIOR_AOE = 0x20, DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE = 0x40, DOTA_ABILITY_BEHAVIOR_CHANNELLED = 0x80, DOTA_ABILITY_BEHAVIOR_ITEM = 0x100, DOTA_ABILITY_BEHAVIOR_TOGGLE = 0x200, DOTA_ABILITY_BEHAVIOR_DIRECTIONAL = 0x400, DOTA_ABILITY_BEHAVIOR_IMMEDIATE = 0x800, DOTA_ABILITY_BEHAVIOR_AUTOCAST = 0x1000, DOTA_ABILITY_BEHAVIOR_OPTIONAL_UNIT_TARGET = 0x2000, DOTA_ABILITY_BEHAVIOR_OPTIONAL_POINT = 0x4000, DOTA_ABILITY_BEHAVIOR_OPTIONAL_NO_TARGET = 0x8000, DOTA_ABILITY_BEHAVIOR_AURA = 0x10000, DOTA_ABILITY_BEHAVIOR_ATTACK = 0x20000, DOTA_ABILITY_BEHAVIOR_DONT_RESUME_MOVEMENT = 0x40000, DOTA_ABILITY_BEHAVIOR_ROOT_DISABLES = 0x80000, DOTA_ABILITY_BEHAVIOR_UNRESTRICTED = 0x100000, DOTA_ABILITY_BEHAVIOR_IGNORE_PSEUDO_QUEUE = 0x200000, DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL = 0x400000, DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_MOVEMENT = 0x800000, DOTA_ABILITY_BEHAVIOR_DONT_ALERT_TARGET = 0x1000000, DOTA_ABILITY_BEHAVIOR_DONT_RESUME_ATTACK = 0x2000000, DOTA_ABILITY_BEHAVIOR_NORMAL_WHEN_STOLEN = 0x4000000, DOTA_ABILITY_BEHAVIOR_IGNORE_BACKSWING = 0x8000000, DOTA_ABILITY_BEHAVIOR_RUNE_TARGET = 0x10000000, DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_CHANNEL = 0x20000000, DOTA_ABILITY_BEHAVIOR_VECTOR_TARGETING = 0x40000000, DOTA_ABILITY_BEHAVIOR_LAST_RESORT_POINT = 0x80000000, DOTA_ABILITY_BEHAVIOR_CAN_SELF_CAST = 0x100000000, DOTA_ABILITY_BEHAVIOR_SHOW_IN_GUIDES = 0x200000000, DOTA_ABILITY_BEHAVIOR_UNLOCKED_BY_EFFECT_INDEX = 0x400000000, DOTA_ABILITY_BEHAVIOR_SUPPRESS_ASSOCIATED_CONSUMABLE = 0x800000000, DOTA_ABILITY_BEHAVIOR_FREE_DRAW_TARGETING = 0x1000000000, DOTA_ABILITY_BEHAVIOR_IGNORE_SILENCE = 0x2000000000, DOTA_ABILITY_BEHAVIOR_OVERSHOOT = 0x4000000000, DOTA_ABILITY_BEHAVIOR_IGNORE_MUTED = 0x8000000000, }; // Alignment: 4 // Size: 0x16 enum class EDOTA_ModifyGold_Reason : uint32_t { DOTA_ModifyGold_Unspecified = 0x0, DOTA_ModifyGold_Death = 0x1, DOTA_ModifyGold_Buyback = 0x2, DOTA_ModifyGold_PurchaseConsumable = 0x3, DOTA_ModifyGold_PurchaseItem = 0x4, DOTA_ModifyGold_AbandonedRedistribute = 0x5, DOTA_ModifyGold_SellItem = 0x6, DOTA_ModifyGold_AbilityCost = 0x7, DOTA_ModifyGold_CheatCommand = 0x8, DOTA_ModifyGold_SelectionPenalty = 0x9, DOTA_ModifyGold_GameTick = 0xa, DOTA_ModifyGold_Building = 0xb, DOTA_ModifyGold_HeroKill = 0xc, DOTA_ModifyGold_CreepKill = 0xd, DOTA_ModifyGold_NeutralKill = 0xe, DOTA_ModifyGold_RoshanKill = 0xf, DOTA_ModifyGold_CourierKill = 0x10, DOTA_ModifyGold_BountyRune = 0x11, DOTA_ModifyGold_SharedGold = 0x12, DOTA_ModifyGold_AbilityGold = 0x13, DOTA_ModifyGold_WardKill = 0x14, DOTA_ModifyGold_CourierKilledByThisPlayer = 0x15, }; // Alignment: 4 // Size: 0x7 enum class EDOTA_ModifyXP_Reason : uint32_t { DOTA_ModifyXP_Unspecified = 0x0, DOTA_ModifyXP_HeroKill = 0x1, DOTA_ModifyXP_CreepKill = 0x2, DOTA_ModifyXP_RoshanKill = 0x3, DOTA_ModifyXP_TomeOfKnowledge = 0x4, DOTA_ModifyXP_Outpost = 0x5, DOTA_ModifyXP_MAX = 0x6, }; // Alignment: 4 // Size: 0x1d enum class UnitFilterResult : uint32_t { UF_SUCCESS = 0x0, UF_FAIL_FRIENDLY = 0x1, UF_FAIL_ENEMY = 0x2, UF_FAIL_HERO = 0x3, UF_FAIL_CONSIDERED_HERO = 0x4, UF_FAIL_CREEP = 0x5, UF_FAIL_BUILDING = 0x6, UF_FAIL_COURIER = 0x7, UF_FAIL_OTHER = 0x8, UF_FAIL_ANCIENT = 0x9, UF_FAIL_ILLUSION = 0xa, UF_FAIL_SUMMONED = 0xb, UF_FAIL_DOMINATED = 0xc, UF_FAIL_MELEE = 0xd, UF_FAIL_RANGED = 0xe, UF_FAIL_DEAD = 0xf, UF_FAIL_MAGIC_IMMUNE_ALLY = 0x10, UF_FAIL_MAGIC_IMMUNE_ENEMY = 0x11, UF_FAIL_INVULNERABLE = 0x12, UF_FAIL_IN_FOW = 0x13, UF_FAIL_INVISIBLE = 0x14, UF_FAIL_NOT_PLAYER_CONTROLLED = 0x15, UF_FAIL_ATTACK_IMMUNE = 0x16, UF_FAIL_CUSTOM = 0x17, UF_FAIL_INVALID_LOCATION = 0x18, UF_FAIL_DISABLE_HELP = 0x19, UF_FAIL_OUT_OF_WORLD = 0x1a, UF_FAIL_NIGHTMARED = 0x1b, UF_FAIL_OBSTRUCTED = 0x1c, }; // Alignment: 4 // Size: 0x5 enum class DOTA_UNIT_TARGET_TEAM : uint32_t { DOTA_UNIT_TARGET_TEAM_NONE = 0x0, DOTA_UNIT_TARGET_TEAM_FRIENDLY = 0x1, DOTA_UNIT_TARGET_TEAM_ENEMY = 0x2, DOTA_UNIT_TARGET_TEAM_CUSTOM = 0x4, DOTA_UNIT_TARGET_TEAM_BOTH = 0x3, }; // Alignment: 4 // Size: 0xb enum class DOTA_UNIT_TARGET_TYPE : uint32_t { DOTA_UNIT_TARGET_NONE = 0x0, DOTA_UNIT_TARGET_HERO = 0x1, DOTA_UNIT_TARGET_CREEP = 0x2, DOTA_UNIT_TARGET_BUILDING = 0x4, DOTA_UNIT_TARGET_COURIER = 0x10, DOTA_UNIT_TARGET_OTHER = 0x20, DOTA_UNIT_TARGET_TREE = 0x40, DOTA_UNIT_TARGET_CUSTOM = 0x80, DOTA_UNIT_TARGET_SELF = 0x100, DOTA_UNIT_TARGET_BASIC = 0x12, DOTA_UNIT_TARGET_ALL = 0x37, }; // Alignment: 4 // Size: 0x16 enum class DOTA_UNIT_TARGET_FLAGS : uint32_t { DOTA_UNIT_TARGET_FLAG_NONE = 0x0, DOTA_UNIT_TARGET_FLAG_RANGED_ONLY = 0x2, DOTA_UNIT_TARGET_FLAG_MELEE_ONLY = 0x4, DOTA_UNIT_TARGET_FLAG_DEAD = 0x8, DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES = 0x10, DOTA_UNIT_TARGET_FLAG_NOT_MAGIC_IMMUNE_ALLIES = 0x20, DOTA_UNIT_TARGET_FLAG_INVULNERABLE = 0x40, DOTA_UNIT_TARGET_FLAG_FOW_VISIBLE = 0x80, DOTA_UNIT_TARGET_FLAG_NO_INVIS = 0x100, DOTA_UNIT_TARGET_FLAG_NOT_ANCIENTS = 0x200, DOTA_UNIT_TARGET_FLAG_PLAYER_CONTROLLED = 0x400, DOTA_UNIT_TARGET_FLAG_NOT_DOMINATED = 0x800, DOTA_UNIT_TARGET_FLAG_NOT_SUMMONED = 0x1000, DOTA_UNIT_TARGET_FLAG_NOT_ILLUSIONS = 0x2000, DOTA_UNIT_TARGET_FLAG_NOT_ATTACK_IMMUNE = 0x4000, DOTA_UNIT_TARGET_FLAG_MANA_ONLY = 0x8000, DOTA_UNIT_TARGET_FLAG_CHECK_DISABLE_HELP = 0x10000, DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO = 0x20000, DOTA_UNIT_TARGET_FLAG_OUT_OF_WORLD = 0x40000, DOTA_UNIT_TARGET_FLAG_NOT_NIGHTMARED = 0x80000, DOTA_UNIT_TARGET_FLAG_PREFER_ENEMIES = 0x100000, DOTA_UNIT_TARGET_FLAG_RESPECT_OBSTRUCTIONS = 0x200000, }; // Alignment: 4 // Size: 0x7 enum class DOTA_PURGE_FLAGS : uint32_t { DOTA_PURGE_FLAG_NONE = 0x0, DOTA_PURGE_FLAG_REMOVE_BUFFS = 0x2, DOTA_PURGE_FLAG_REMOVE_DEBUFFS = 0x4, DOTA_PURGE_FLAG_REMOVE_STUNS = 0x8, DOTA_PURGE_FLAG_REMOVE_EXCEPTIONS = 0x10, DOTA_PURGE_FLAG_REMOVE_THIS_FRAME_ONLY = 0x20, DOTA_PURGE_FLAG_REMOVE_UNPURGABLE = 0x40, }; // Alignment: 4 // Size: 0x11 enum class DOTATeam_t : uint32_t { DOTA_TEAM_FIRST = 0x2, DOTA_TEAM_GOODGUYS = 0x2, DOTA_TEAM_BADGUYS = 0x3, DOTA_TEAM_NEUTRALS = 0x4, DOTA_TEAM_NOTEAM = 0x5, DOTA_TEAM_CUSTOM_1 = 0x6, DOTA_TEAM_CUSTOM_2 = 0x7, DOTA_TEAM_CUSTOM_3 = 0x8, DOTA_TEAM_CUSTOM_4 = 0x9, DOTA_TEAM_CUSTOM_5 = 0xa, DOTA_TEAM_CUSTOM_6 = 0xb, DOTA_TEAM_CUSTOM_7 = 0xc, DOTA_TEAM_CUSTOM_8 = 0xd, DOTA_TEAM_COUNT = 0xe, DOTA_TEAM_CUSTOM_MIN = 0x6, DOTA_TEAM_CUSTOM_MAX = 0xd, DOTA_TEAM_CUSTOM_COUNT = 0x8, }; // Alignment: 4 // Size: 0x35 enum class modifierstate : uint32_t { MODIFIER_STATE_ROOTED = 0x0, MODIFIER_STATE_DISARMED = 0x1, MODIFIER_STATE_ATTACK_IMMUNE = 0x2, MODIFIER_STATE_SILENCED = 0x3, MODIFIER_STATE_MUTED = 0x4, MODIFIER_STATE_STUNNED = 0x5, MODIFIER_STATE_HEXED = 0x6, MODIFIER_STATE_INVISIBLE = 0x7, MODIFIER_STATE_INVULNERABLE = 0x8, MODIFIER_STATE_MAGIC_IMMUNE = 0x9, MODIFIER_STATE_PROVIDES_VISION = 0xa, MODIFIER_STATE_NIGHTMARED = 0xb, MODIFIER_STATE_BLOCK_DISABLED = 0xc, MODIFIER_STATE_EVADE_DISABLED = 0xd, MODIFIER_STATE_UNSELECTABLE = 0xe, MODIFIER_STATE_CANNOT_TARGET_ENEMIES = 0xf, MODIFIER_STATE_CANNOT_TARGET_BUILDINGS = 0x10, MODIFIER_STATE_CANNOT_MISS = 0x11, MODIFIER_STATE_SPECIALLY_DENIABLE = 0x12, MODIFIER_STATE_FROZEN = 0x13, MODIFIER_STATE_COMMAND_RESTRICTED = 0x14, MODIFIER_STATE_NOT_ON_MINIMAP = 0x15, MODIFIER_STATE_LOW_ATTACK_PRIORITY = 0x16, MODIFIER_STATE_NO_HEALTH_BAR = 0x17, MODIFIER_STATE_NO_HEALTH_BAR_FOR_ENEMIES = 0x18, MODIFIER_STATE_FLYING = 0x19, MODIFIER_STATE_NO_UNIT_COLLISION = 0x1a, MODIFIER_STATE_NO_TEAM_MOVE_TO = 0x1b, MODIFIER_STATE_NO_TEAM_SELECT = 0x1c, MODIFIER_STATE_PASSIVES_DISABLED = 0x1d, MODIFIER_STATE_DOMINATED = 0x1e, MODIFIER_STATE_BLIND = 0x1f, MODIFIER_STATE_OUT_OF_GAME = 0x20, MODIFIER_STATE_FAKE_ALLY = 0x21, MODIFIER_STATE_FLYING_FOR_PATHING_PURPOSES_ONLY = 0x22, MODIFIER_STATE_TRUESIGHT_IMMUNE = 0x23, MODIFIER_STATE_UNTARGETABLE = 0x24, MODIFIER_STATE_IGNORING_MOVE_AND_ATTACK_ORDERS = 0x25, MODIFIER_STATE_ALLOW_PATHING_THROUGH_TREES = 0x26, MODIFIER_STATE_NOT_ON_MINIMAP_FOR_ENEMIES = 0x27, MODIFIER_STATE_UNSLOWABLE = 0x28, MODIFIER_STATE_TETHERED = 0x29, MODIFIER_STATE_IGNORING_STOP_ORDERS = 0x2a, MODIFIER_STATE_FEARED = 0x2b, MODIFIER_STATE_TAUNTED = 0x2c, MODIFIER_STATE_CANNOT_BE_MOTION_CONTROLLED = 0x2d, MODIFIER_STATE_FORCED_FLYING_VISION = 0x2e, MODIFIER_STATE_ATTACK_ALLIES = 0x2f, MODIFIER_STATE_ALLOW_PATHING_THROUGH_CLIFFS = 0x30, MODIFIER_STATE_ALLOW_PATHING_THROUGH_FISSURE = 0x31, MODIFIER_STATE_SPECIALLY_UNDENIABLE = 0x32, MODIFIER_STATE_ALLOW_PATHING_THROUGH_OBSTRUCTIONS = 0x33, MODIFIER_STATE_LAST = 0x34, }; // Alignment: 4 // Size: 0x5 enum class DOTA_LANE : uint32_t { DOTA_LANE_NONE = 0x0, DOTA_LANE_TOP = 0x1, DOTA_LANE_MIDDLE = 0x2, DOTA_LANE_BOTTOM = 0x3, DOTA_LANE_MAX = 0x4, }; // Alignment: 4 // Size: 0x9 enum class DOTA_SHOP_TYPE : uint32_t { DOTA_SHOP_HOME = 0x0, DOTA_SHOP_SIDE = 0x1, DOTA_SHOP_SECRET = 0x2, DOTA_SHOP_GROUND = 0x3, DOTA_SHOP_SIDE2 = 0x4, DOTA_SHOP_SECRET2 = 0x5, DOTA_SHOP_CUSTOM = 0x6, DOTA_SHOP_NEUTRALS = 0x7, DOTA_SHOP_NONE = 0x8, }; // Alignment: 4 // Size: 0x5 enum class DOTA_HOLDOUT_TOWER_TYPE : uint32_t { DOTA_HOLDOUT_TOWER_NONE = 0x0, DOTA_HOLDOUT_TOWER_LIGHTFAST = 0x1, DOTA_HOLDOUT_TOWER_HEAVYSLOW = 0x2, DOTA_HOLDOUT_TOWER_REDUCESPEED = 0x3, DOTA_HOLDOUT_TOWER_COUNT = 0x4, }; // Alignment: 4 // Size: 0x4 enum class ECrowdLevel : uint32_t { CROWD_NONE = 0x0, CROWD_LOW = 0x1, CROWD_MEDIUM = 0x2, CROWD_HIGH = 0x3, }; // Alignment: 4 // Size: 0x2 enum class ShopItemViewMode_t : uint32_t { SHOP_VIEW_MODE_LIST = 0x0, SHOP_VIEW_MODE_GRID = 0x1, }; // Alignment: 4 // Size: 0x11 enum class DOTA_SHOP_CATEGORY : uint32_t { DOTA_SHOP_CATEGORY_NONE = 0xffffffffffffffff, DOTA_SHOP_CATEGORY_CONSUMABLES = 0x0, DOTA_SHOP_CATEGORY_ATTRIBUTES = 0x1, DOTA_SHOP_CATEGORY_WEAPONS_ARMOR = 0x2, DOTA_SHOP_CATEGORY_MISC = 0x3, DOTA_SHOP_CATEGORY_BASICS = 0x4, DOTA_SHOP_CATEGORY_SUPPORT = 0x5, DOTA_SHOP_CATEGORY_MAGICS = 0x6, DOTA_SHOP_CATEGORY_WEAPONS = 0x7, DOTA_SHOP_CATEGORY_DEFENSE = 0x8, DOTA_SHOP_CATEGORY_ARTIFACTS = 0x9, DOTA_SHOP_CATEGORY_SIDE_SHOP_PAGE_1 = 0xa, DOTA_SHOP_CATEGORY_SIDE_SHOP_PAGE_2 = 0xb, DOTA_SHOP_CATEGORY_SECRET_SHOP = 0xc, DOTA_SHOP_CATEGORY_RECOMMENDED_ITEMS = 0xd, DOTA_SHOP_CATEGORY_SEARCH_RESULTS = 0xe, NUM_SHOP_CATEGORIES = 0xf, }; // Alignment: 4 // Size: 0xa enum class DOTA_RUNES : uint32_t { DOTA_RUNE_INVALID = 0xffffffffffffffff, DOTA_RUNE_DOUBLEDAMAGE = 0x0, DOTA_RUNE_HASTE = 0x1, DOTA_RUNE_ILLUSION = 0x2, DOTA_RUNE_INVISIBILITY = 0x3, DOTA_RUNE_REGENERATION = 0x4, DOTA_RUNE_BOUNTY = 0x5, DOTA_RUNE_ARCANE = 0x6, DOTA_RUNE_WATER = 0x7, DOTA_RUNE_COUNT = 0x8, }; // Alignment: 4 // Size: 0x78 enum class DOTA_INVALID_ORDERS : uint32_t { DOTA_ORDER_SUCCESS = 0xffffffffffffffff, DOTA_INVALID_ORDER_NOT_CONTROLLABLE_BY_PLAYER = 0x0, DOTA_INVALID_ORDER_UNIT_IS_NOT_NPC = 0x1, DOTA_INVALID_ORDER_BAD_ABILITY_ENTITY = 0x2, DOTA_INVALID_ORDER_UNRECOGNIZED_ORDER = 0x3, DOTA_INVALID_ORDER_ABILITY_REQUIRED = 0x4, DOTA_INVALID_ORDER_NPC_TARGET_REQUIRED = 0x5, DOTA_INVALID_ORDER_TARGET_TREE_INDEX_NOT_A_TREE = 0x6, DOTA_INVALID_ORDER_TARGET_ENTITY_INDEX_OUT_OF_RANGE = 0x7, DOTA_INVALID_ORDER_ABILITY_NOT_AN_ITEM = 0x8, DOTA_INVALID_ORDER_PHYSICAL_ITEM_TARGET_REQUIRED = 0x9, DOTA_INVALID_ORDER_RUNE_TARGET_REQUIRED = 0xa, DOTA_INVALID_ORDER_ABILITY_NOT_OWNED_BY_UNIT = 0xb, DOTA_INVALID_ORDER_ABILITY_CANT_BE_UPGRADED = 0xc, DOTA_INVALID_ORDER_NO_POINTS_FOR_ABILITY_UPGRADE = 0xd, DOTA_INVALID_ORDER_NOT_ENOUGH_MANA = 0xe, DOTA_INVALID_ORDER_ABILITY_IN_COOLDOWN = 0xf, DOTA_INVALID_ORDER_ABILITY_NOT_LEARNED = 0x10, DOTA_INVALID_ORDER_CANT_CAST_PASSIVE_ABILITY = 0x11, DOTA_INVALID_ORDER_PHANTOM_TARGET = 0x12, DOTA_INVALID_ORDER_DEAD_TARGET = 0x13, DOTA_INVALID_ORDER_UNIT_IS_DEAD = 0x14, DOTA_INVALID_ORDER_TARGET_MAGIC_IMMUNE_ENEMY = 0x15, DOTA_INVALID_ORDER_TARGET_INVULNERABLE = 0x16, DOTA_INVALID_ORDER_TARGET_ATTACK_IMMUNE = 0x17, DOTA_INVALID_ORDER_UNIT_SILENCED = 0x18, DOTA_INVALID_ORDER_ABILITY_CANT_BE_TOGGLED = 0x19, DOTA_INVALID_ORDER_TARGET_CANT_BE_SEEN = 0x1a, DOTA_INVALID_ORDER_TARGET_INVISIBLE = 0x1b, DOTA_INVALID_ORDER_HERO_CANT_BE_DENIED = 0x1c, DOTA_INVALID_ORDER_CANT_CAST_ON_TEAMMATE = 0x1d, DOTA_INVALID_ORDER_CANT_CAST_ON_ENEMY = 0x1e, DOTA_INVALID_ORDER_UNIT_CANT_MOVE = 0x1f, DOTA_INVALID_ORDER_CANT_CAST_ON_ATTACK_IMMUNE = 0x20, DOTA_INVALID_ORDER_PURCHASE_INVALID_ITEM = 0x21, DOTA_INVALID_ORDER_ITEM_NOT_IN_INVENTORY = 0x22, DOTA_INVALID_ORDER_ITEM_NOT_IN_UNIT_INVENTORY = 0x23, DOTA_INVALID_ORDER_TARGET_UNSELECTABLE = 0x24, DOTA_INVALID_ORDER_ITEM_NOT_IN_ACTIVE_INVENTORY = 0x25, DOTA_INVALID_ORDER_UNIT_CANT_PICK_UP_RUNES = 0x26, DOTA_INVALID_ORDER_UNIT_CANT_MANIPULATE_ITEMS = 0x27, DOTA_INVALID_ORDER_UNIT_IS_ILLUSION = 0x28, DOTA_INVALID_ORDER_UNIT_CANT_ATTACK = 0x29, DOTA_INVALID_ORDER_ITEM_CANT_BE_DROPPED = 0x2a, DOTA_INVALID_ORDER_TARGET_TREE_NOT_ACTIVE = 0x2b, DOTA_INVALID_ORDER_ABILITY_CANT_AUTO_CAST = 0x2c, DOTA_INVALID_ORDER_TARGET_POSITION_OFF_MAP = 0x2d, DOTA_INVALID_ORDER_UNIT_CANT_MOVE_TARGET_OUT_OF_RANGE = 0x2e, DOTA_INVALID_ORDER_CANT_CAST_ON_HERO = 0x2f, DOTA_INVALID_ORDER_CANT_CAST_ON_OTHER = 0x30, DOTA_INVALID_ORDER_CANT_CAST_ON_BUILDING = 0x31, DOTA_INVALID_ORDER_CANT_CAST_ON_ANCIENT = 0x32, DOTA_INVALID_ORDER_ITEM_CANT_BE_MOVED_TO_STASH = 0x33, DOTA_INVALID_ORDER_ITEM_CANT_BE_MOVED_TO_SLOT = 0x34, DOTA_INVALID_ORDER_CANT_CAST_ON_MECHANICAL = 0x35, DOTA_INVALID_ORDER_CANT_ACCEPT_ATTACK_TARGET = 0x36, DOTA_INVALID_ORDER_CANT_CAST_NO_CHARGES = 0x37, DOTA_INVALID_ORDER_CANT_CAST_ON_CREEP = 0x38, DOTA_INVALID_ORDER_TARGET_CANT_TAKE_ITEMS = 0x39, DOTA_INVALID_ORDER_CANT_GIVE_ITEM_TO_ENEMY = 0x3a, DOTA_INVALID_ORDER_CANT_CAST_ON_COURIER = 0x3b, DOTA_INVALID_ORDER_ABILITY_IS_HIDDEN = 0x3c, DOTA_INVALID_ORDER_ITEM_IN_COOLDOWN = 0x3d, DOTA_INVALID_ORDER_SECRET_SHOP_NOT_IN_RANGE = 0x3e, DOTA_INVALID_ORDER_NOT_ENOUGH_GOLD = 0x3f, DOTA_INVALID_ORDER_PURCHASE_AUTOCOMBINE_RECIPE = 0x40, DOTA_INVALID_ORDER_CANT_DENY_HEALTH_TOO_HIGH = 0x41, DOTA_INVALID_ORDER_SIDE_SHOP_NOT_IN_RANGE = 0x42, DOTA_INVALID_ORDER_HOME_SHOP_NOT_IN_RANGE = 0x43, DOTA_INVALID_ORDER_CANT_PICK_UP_ITEM = 0x44, DOTA_INVALID_ORDER_CANT_SELL_NO_SHOP_IN_RANGE = 0x45, DOTA_INVALID_ORDER_CANT_SELL_ITEM = 0x46, DOTA_INVALID_ORDER_CANT_SELL_ITEM_WHILE_DEAD = 0x47, DOTA_INVALID_ORDER_TARGET_CANT_BE_DENIED = 0x48, DOTA_INVALID_ORDER_ABILITY_DISABLED_BY_ROOT = 0x49, DOTA_INVALID_ORDER_UNIT_COMMAND_RESTRICTED = 0x4a, DOTA_INVALID_ORDER_UNIT_MUTED = 0x4b, DOTA_INVALID_ORDER_CANT_CAST_ON_SUMMONED = 0x4c, DOTA_INVALID_ORDER_TARGET_MAGIC_IMMUNE_ALLY = 0x4d, DOTA_INVALID_ORDER_CANT_PURCHASE_DISALLOWED_ITEM = 0x4e, DOTA_INVALID_ORDER_CANT_CAST_ON_DOMINATED = 0x4f, DOTA_INVALID_ORDER_CAST_CUSTOM = 0x50, DOTA_INVALID_ORDER_ITEM_NOT_DISASSEMBLABLE = 0x51, DOTA_INVALID_ORDER_ITEM_OUT_OF_STOCK = 0x52, DOTA_INVALID_ORDER_ABILITY_CANT_BE_UPGRADED_AT_MAX = 0x53, DOTA_INVALID_ORDER_ABILITY_INACTIVE = 0x54, DOTA_INVALID_ORDER_ITEM_NOT_IN_MAIN_INVENTORY = 0x55, DOTA_INVALID_ORDER_CANT_GLYPH = 0x56, DOTA_INVALID_ORDER_CANT_DRAG_CHANNELING_ITEM = 0x57, DOTA_INVALID_ORDER_CANT_BUYBACK_UNIT_NOT_A_HERO = 0x58, DOTA_INVALID_ORDER_CANT_BUYBACK_UNIT_NOT_DEAD = 0x59, DOTA_INVALID_ORDER_CANT_BUYBACK_NOT_ENOUGH_GOLD = 0x5a, DOTA_INVALID_ORDER_CANT_BUYBACK_IN_COOLDOWN = 0x5b, DOTA_INVALID_ORDER_CANT_DISASSEMBLE_STASH_OUT_OF_RANGE = 0x5c, DOTA_INVALID_ORDER_CANT_EJECT_ITEM_NOT_IN_STASH = 0x5d, DOTA_INVALID_ORDER_GAME_IS_PAUSED = 0x5e, DOTA_INVALID_ORDER_CANT_CAST_ON_CONSIDERED_HERO = 0x5f, DOTA_INVALID_ORDER_CANT_SHOP_AUTO_BUY_ENABLED = 0x60, DOTA_INVALID_ORDER_ONLY_DELIBERATE_CHANNELING_CANCEL = 0x61, DOTA_INVALID_ORDER_CANT_BUYBACK_REAPERS_SCYTHE = 0x62, DOTA_INVALID_ORDER_CANT_BUYBACK_DISABLED_BY_GAME_MODE = 0x63, DOTA_INVALID_ORDER_CANT_ABILITY_PING_BAD_TEAM = 0x64, DOTA_INVALID_ORDER_ABILITY_NOT_POSITIONED = 0x65, DOTA_INVALID_ORDER_ABILITY_NOT_TARGETTED = 0x66, DOTA_INVALID_ORDER_ABILITY_REQUIRES_TARGET = 0x67, DOTA_INVALID_ORDER_CANT_RADAR = 0x68, DOTA_INVALID_ORDER_NO_COURIER = 0x69, DOTA_INVALID_ORDER_CUSTOM_SHOP_NOT_IN_RANGE = 0x6a, DOTA_INVALID_ORDER_CANT_CAST_RIVER_PAINT = 0x6b, DOTA_INVALID_ORDER_UNIT_OBSTRUCTED = 0x6c, DOTA_INVALID_ORDER_CANT_CAST_DRAG_REQUIRED = 0x6d, DOTA_INVALID_ORDER_ABILITY_DISABLED_BY_TETHER = 0x6e, DOTA_INVALID_ORDER_ABILITY_NOT_UNLOCKED = 0x6f, DOTA_INVALID_ORDER_CANT_FOUNTAIN_DROP_UNIT_NOT_DEAD = 0x70, DOTA_INVALID_ORDER_ITEM_NOT_IN_NEUTRAL_ITEM_STASH = 0x71, DOTA_INVALID_ORDER_ITEM_ALREADY_PURCHASED = 0x72, DOTA_INVALID_ORDER_BEYOND_PHYSICAL_ITEM_LIMIT = 0x73, DOTA_INVALID_ORDER_ABILITY_PING_DEAD_ALLY = 0x74, DOTA_INVALID_ORDER_CANT_LOCKCOMBINE_NEUTRAL_ITEMS = 0x75, DOTA_INVALID_ORDER_COUNT = 0x76, }; // Alignment: 4 // Size: 0x22 enum class DotaDefaultUIElement_t : uint32_t { DOTA_DEFAULT_UI_INVALID = 0xffffffffffffffff, DOTA_DEFAULT_UI_TOP_TIMEOFDAY = 0x0, DOTA_DEFAULT_UI_TOP_HEROES = 0x1, DOTA_DEFAULT_UI_FLYOUT_SCOREBOARD = 0x2, DOTA_DEFAULT_UI_ACTION_PANEL = 0x3, DOTA_DEFAULT_UI_ACTION_MINIMAP = 0x4, DOTA_DEFAULT_UI_INVENTORY_PANEL = 0x5, DOTA_DEFAULT_UI_INVENTORY_SHOP = 0x6, DOTA_DEFAULT_UI_INVENTORY_ITEMS = 0x7, DOTA_DEFAULT_UI_INVENTORY_QUICKBUY = 0x8, DOTA_DEFAULT_UI_INVENTORY_COURIER = 0x9, DOTA_DEFAULT_UI_INVENTORY_PROTECT = 0xa, DOTA_DEFAULT_UI_INVENTORY_GOLD = 0xb, DOTA_DEFAULT_UI_SHOP_SUGGESTEDITEMS = 0xc, DOTA_DEFAULT_UI_SHOP_COMMONITEMS = 0xd, DOTA_DEFAULT_UI_HERO_SELECTION_TEAMS = 0xe, DOTA_DEFAULT_UI_HERO_SELECTION_GAME_NAME = 0xf, DOTA_DEFAULT_UI_HERO_SELECTION_CLOCK = 0x10, DOTA_DEFAULT_UI_HERO_SELECTION_HEADER = 0x11, DOTA_DEFAULT_UI_TOP_MENU_BUTTONS = 0x12, DOTA_DEFAULT_UI_TOP_BAR_BACKGROUND = 0x13, DOTA_DEFAULT_UI_TOP_BAR_RADIANT_TEAM = 0x14, DOTA_DEFAULT_UI_TOP_BAR_DIRE_TEAM = 0x15, DOTA_DEFAULT_UI_TOP_BAR_SCORE = 0x16, DOTA_DEFAULT_UI_ENDGAME = 0x17, DOTA_DEFAULT_UI_ENDGAME_CHAT = 0x18, DOTA_DEFAULT_UI_QUICK_STATS = 0x19, DOTA_DEFAULT_UI_PREGAME_STRATEGYUI = 0x1a, DOTA_DEFAULT_UI_KILLCAM = 0x1b, DOTA_DEFAULT_UI_FIGHT_RECAP = 0x1c, DOTA_DEFAULT_UI_TOP_BAR = 0x1d, DOTA_DEFAULT_UI_CUSTOMUI_BEHIND_HUD_ELEMENTS = 0x1e, DOTA_DEFAULT_UI_AGHANIMS_STATUS = 0x1f, DOTA_DEFAULT_UI_ELEMENT_COUNT = 0x20, }; // Alignment: 4 // Size: 0x8 enum class DOTALimits_t : uint32_t { DOTA_MAX_PLAYERS = 0x40, DOTA_MAX_TEAM = 0x18, DOTA_MAX_PLAYER_TEAMS = 0xa, DOTA_MAX_TEAM_PLAYERS = 0x18, DOTA_MAX_SPECTATOR_TEAM_SIZE = 0x28, DOTA_MAX_SPECTATOR_LOBBY_SIZE = 0xf, DOTA_DEFAULT_MAX_TEAM = 0x5, DOTA_DEFAULT_MAX_TEAM_PLAYERS = 0xa, }; // Alignment: 4 // Size: 0x5 enum class DOTA_MOTION_CONTROLLER_PRIORITY : uint32_t { DOTA_MOTION_CONTROLLER_PRIORITY_LOWEST = 0x0, DOTA_MOTION_CONTROLLER_PRIORITY_LOW = 0x1, DOTA_MOTION_CONTROLLER_PRIORITY_MEDIUM = 0x2, DOTA_MOTION_CONTROLLER_PRIORITY_HIGH = 0x3, DOTA_MOTION_CONTROLLER_PRIORITY_HIGHEST = 0x4, }; // Alignment: 4 // Size: 0x6 enum class DOTAMusicStatus_t : uint32_t { DOTA_MUSIC_STATUS_NONE = 0x0, DOTA_MUSIC_STATUS_EXPLORATION = 0x1, DOTA_MUSIC_STATUS_BATTLE = 0x2, DOTA_MUSIC_STATUS_PRE_GAME_EXPLORATION = 0x3, DOTA_MUSIC_STATUS_DEAD = 0x4, DOTA_MUSIC_STATUS_LAST = 0x5, }; // Alignment: 4 // Size: 0x7 enum class DOTAPortraitEnvironmentType_t : uint32_t { DOTA_PORTRAIT_ENVIRONMENT_INVALID = 0xffffffffffffffff, DOTA_PORTRAIT_ENVIRONMENT_DEFAULT = 0x0, DOTA_PORTRAIT_ENVIRONMENT_FULL_BODY = 0x1, DOTA_PORTRAIT_ENVIRONMENT_CARD = 0x2, DOTA_PORTRAIT_ENVIRONMENT_WEBPAGE = 0x3, DOTA_PORTRAIT_ENVIRONMENT_FULL_BODY_RIGHT_SIDE = 0x4, DOTA_PORTRAIT_ENVIRONMENT_TYPE_COUNT = 0x5, }; // Alignment: 4 // Size: 0x4 enum class PortraitSoundMode_t : uint32_t { PORTRAIT_SOUND_MODE_INVALID = 0xffffffffffffffff, PORTRAIT_SOUND_MODE_NO_SOUNDS = 0x0, PORTRAIT_SOUND_MODE_ONLY_TAUNT_SOUNDS = 0x1, PORTRAIT_SOUND_MODE_ALL_SOUNDS = 0x2, }; // Alignment: 4 // Size: 0x5 enum class PortraitSummonsDisplayMode_t : uint32_t { PORTRAIT_SUMMONS_DISPLAY_MODE_INVALID = 0xffffffffffffffff, PORTRAIT_SUMMONS_DISPLAY_MODE_NONE = 0x0, PORTRAIT_SUMMONS_DISPLAY_MODE_ALL = 0x1, PORTRAIT_SUMMONS_DISPLAY_MODE_NON_DEFAULT = 0x2, PORTRAIT_SUMMONS_DISPLAY_MODE_TYPE_COUNT = 0x3, }; // Alignment: 4 // Size: 0x3 enum class DOTAPostGameLayout_t : uint32_t { DOTA_POST_GAME_LAYOUT_DOUBLE_COLUMN = 0x0, DOTA_POST_GAME_LAYOUT_SINGLE_COLUMN = 0x1, DOTA_POST_GAME_LAYOUT_MAX = 0x2, }; // Alignment: 4 // Size: 0xb enum class DOTAPostGameColumn_t : uint32_t { DOTA_POST_GAME_COLUMN_LEVEL = 0x0, DOTA_POST_GAME_COLUMN_ITEMS = 0x1, DOTA_POST_GAME_COLUMN_KILLS = 0x2, DOTA_POST_GAME_COLUMN_DEATHS = 0x3, DOTA_POST_GAME_COLUMN_ASSISTS = 0x4, DOTA_POST_GAME_COLUMN_NET_WORTH = 0x5, DOTA_POST_GAME_COLUMN_LAST_HITS = 0x6, DOTA_POST_GAME_COLUMN_DENIES = 0x7, DOTA_POST_GAME_COLUMN_DAMAGE = 0x8, DOTA_POST_GAME_COLUMN_HEALING = 0x9, DOTA_POST_GAME_COLUMN_MAX = 0xa, }; // Alignment: 4 // Size: 0x8 enum class attackfail : uint32_t { DOTA_ATTACK_RECORD_FAIL_NO = 0x0, DOTA_ATTACK_RECORD_FAIL_TERRAIN_MISS = 0x1, DOTA_ATTACK_RECORD_FAIL_SOURCE_MISS = 0x2, DOTA_ATTACK_RECORD_FAIL_TARGET_EVADED = 0x3, DOTA_ATTACK_RECORD_FAIL_TARGET_INVULNERABLE = 0x4, DOTA_ATTACK_RECORD_FAIL_TARGET_OUT_OF_RANGE = 0x5, DOTA_ATTACK_RECORD_CANNOT_FAIL = 0x6, DOTA_ATTACK_RECORD_FAIL_BLOCKED_BY_OBSTRUCTION = 0x7, }; // Alignment: 4 // Size: 0x7 enum class DOTAProjectileAttachment_t : uint32_t { DOTA_PROJECTILE_ATTACHMENT_NONE = 0x0, DOTA_PROJECTILE_ATTACHMENT_ATTACK_1 = 0x1, DOTA_PROJECTILE_ATTACHMENT_ATTACK_2 = 0x2, DOTA_PROJECTILE_ATTACHMENT_HITLOCATION = 0x3, DOTA_PROJECTILE_ATTACHMENT_ATTACK_3 = 0x4, DOTA_PROJECTILE_ATTACHMENT_ATTACK_4 = 0x5, DOTA_PROJECTILE_ATTACHMENT_LAST = 0x6, }; // Alignment: 4 // Size: 0x2 enum class DamageCategory_t : uint32_t { DOTA_DAMAGE_CATEGORY_SPELL = 0x0, DOTA_DAMAGE_CATEGORY_ATTACK = 0x1, }; // Alignment: 4 // Size: 0x13 enum class DOTADamageFlag_t : uint32_t { DOTA_DAMAGE_FLAG_NONE = 0x0, DOTA_DAMAGE_FLAG_IGNORES_MAGIC_ARMOR = 0x1, DOTA_DAMAGE_FLAG_IGNORES_PHYSICAL_ARMOR = 0x2, DOTA_DAMAGE_FLAG_BYPASSES_INVULNERABILITY = 0x4, DOTA_DAMAGE_FLAG_BYPASSES_BLOCK = 0x8, DOTA_DAMAGE_FLAG_REFLECTION = 0x10, DOTA_DAMAGE_FLAG_HPLOSS = 0x20, DOTA_DAMAGE_FLAG_NO_DIRECTOR_EVENT = 0x40, DOTA_DAMAGE_FLAG_NON_LETHAL = 0x80, DOTA_DAMAGE_FLAG_USE_COMBAT_PROFICIENCY = 0x100, DOTA_DAMAGE_FLAG_NO_DAMAGE_MULTIPLIERS = 0x200, DOTA_DAMAGE_FLAG_NO_SPELL_AMPLIFICATION = 0x400, DOTA_DAMAGE_FLAG_DONT_DISPLAY_DAMAGE_IF_SOURCE_HIDDEN = 0x800, DOTA_DAMAGE_FLAG_NO_SPELL_LIFESTEAL = 0x1000, DOTA_DAMAGE_FLAG_PROPERTY_FIRE = 0x2000, DOTA_DAMAGE_FLAG_IGNORES_BASE_PHYSICAL_ARMOR = 0x4000, DOTA_DAMAGE_FLAG_SECONDARY_PROJECTILE_ATTACK = 0x8000, DOTA_DAMAGE_FLAG_FORCE_SPELL_AMPLIFICATION = 0x10000, DOTA_DAMAGE_FLAG_MAGIC_AUTO_ATTACK = 0x20000, }; // Alignment: 4 // Size: 0x2 enum class DOTAAbilitySpeakTrigger_t : uint32_t { DOTA_ABILITY_SPEAK_START_ACTION_PHASE = 0x0, DOTA_ABILITY_SPEAK_CAST = 0x1, }; // Alignment: 4 // Size: 0x3 enum class EShareAbility : uint32_t { ITEM_FULLY_SHAREABLE = 0x0, ITEM_PARTIALLY_SHAREABLE = 0x1, ITEM_NOT_SHAREABLE = 0x2, }; // Alignment: 4 // Size: 0x5 enum class AbilityLearnResult_t : uint32_t { ABILITY_CAN_BE_UPGRADED = 0x0, ABILITY_CANNOT_BE_UPGRADED_NOT_UPGRADABLE = 0x1, ABILITY_CANNOT_BE_UPGRADED_AT_MAX = 0x2, ABILITY_CANNOT_BE_UPGRADED_REQUIRES_LEVEL = 0x3, ABILITY_NOT_LEARNABLE = 0x4, }; // Alignment: 4 // Size: 0xf enum class DOTAScriptInventorySlot_t : uint32_t { DOTA_ITEM_SLOT_1 = 0x0, DOTA_ITEM_SLOT_2 = 0x1, DOTA_ITEM_SLOT_3 = 0x2, DOTA_ITEM_SLOT_4 = 0x3, DOTA_ITEM_SLOT_5 = 0x4, DOTA_ITEM_SLOT_6 = 0x5, DOTA_ITEM_SLOT_7 = 0x6, DOTA_ITEM_SLOT_8 = 0x7, DOTA_ITEM_SLOT_9 = 0x8, DOTA_STASH_SLOT_1 = 0x9, DOTA_STASH_SLOT_2 = 0xa, DOTA_STASH_SLOT_3 = 0xb, DOTA_STASH_SLOT_4 = 0xc, DOTA_STASH_SLOT_5 = 0xd, DOTA_STASH_SLOT_6 = 0xe, }; // Alignment: 4 // Size: 0x2 enum class DOTA_ITEM_STATE : uint32_t { DOTA_ITEM_NEEDS_EQUIPPED = 0x0, DOTA_ITEM_READY = 0x1, }; // Alignment: 4 // Size: 0x7 enum class DOTAInventoryFlags_t : uint32_t { DOTA_INVENTORY_ALLOW_NONE = 0x0, DOTA_INVENTORY_ALLOW_MAIN = 0x1, DOTA_INVENTORY_ALLOW_STASH = 0x2, DOTA_INVENTORY_ALLOW_DROP_ON_GROUND = 0x4, DOTA_INVENTORY_ALLOW_DROP_AT_FOUNTAIN = 0x8, DOTA_INVENTORY_LIMIT_DROP_ON_GROUND = 0x10, DOTA_INVENTORY_ALL_ACCESS = 0x3, }; // Alignment: 4 // Size: 0xc enum class DotaGestureSlot_t : uint32_t { GESTURE_SLOT_NONE = 0xffffffffffffffff, GESTURE_SLOT_ATTACK = 0x0, GESTURE_SLOT_ABILITY = 0x1, GESTURE_SLOT_OVERRIDE = 0x2, GESTURE_SLOT_CUSTOM = 0x3, GESTURE_SLOT_CUSTOM2 = 0x4, GESTURE_SLOT_CUSTOM3 = 0x5, GESTURE_SLOT_CONSTANT = 0x6, GESTURE_SLOT_TAUNT = 0x7, GESTURE_SLOT_ABSOLUTE = 0x8, GESTURE_SLOT_COUNT = 0x9, GESTURE_SLOT_STOLEN_ABILITY_BIT = 0x80, }; // Alignment: 4 // Size: 0x56 enum class DotaPseudoRandomType : uint32_t { DOTA_PSEUDO_RANDOM_NONE = 0x0, DOTA_PSEUDO_RANDOM_MAGNUS_SHARD = 0x1, DOTA_PSEUDO_RANDOM_PHANTOMASSASSIN_CRIT = 0x2, DOTA_PSEUDO_RANDOM_PHANTOMASSASSIN_DAGGER = 0x3, DOTA_PSEUDO_RANDOM_PHANTOMLANCER_JUXTAPOSE = 0x4, DOTA_PSEUDO_RANDOM_TINY_CRAGGY = 0x5, DOTA_PSEUDO_RANDOM_COLD_REBUKE = 0x6, DOTA_PSEUDO_RANDOM_WOLF_CRIT = 0x7, DOTA_PSEUDO_RANDOM_AXE_HELIX = 0x8, DOTA_PSEUDO_RANDOM_AXE_HELIX_ATTACK = 0x9, DOTA_PSEUDO_RANDOM_LEGION_MOMENT = 0xa, DOTA_PSEUDO_RANDOM_SLARDAR_BASH = 0xb, DOTA_PSEUDO_RANDOM_OD_ESSENCE = 0xc, DOTA_PSEUDO_RANDOM_DROW_MARKSMANSHIP = 0xd, DOTA_PSEUDO_RANDOM_OGRE_MAGI_FIREBLAST = 0xe, DOTA_PSEUDO_RANDOM_OGRE_ITEM_MULTICAST = 0xf, DOTA_PSEUDO_RANDOM_SPIRITBREAKER_GREATERBASH = 0x10, DOTA_PSEUDO_RANDOM_LONE_DRUID_ENTANGLE = 0x11, DOTA_PSEUDO_RANDOM_FACELESS_BASH = 0x12, DOTA_PSEUDO_RANDOM_FACELESS_EVADE_SPELL = 0x13, DOTA_PSEUDO_RANDOM_FACELESS_EVADE_ATTACK = 0x14, DOTA_PSEUDO_RANDOM_FACELESS_VOID_BACKTRACK = 0x15, DOTA_PSEUDO_RANDOM_BREWMASTER_CRIT = 0x16, DOTA_PSEUDO_RANDOM_BREWMASTER_CINDER_BREW = 0x17, DOTA_PSEUDO_RANDOM_SNIPER_HEADSHOT = 0x18, DOTA_PSEUDO_RANDOM_ATOS = 0x19, DOTA_PSEUDO_RANDOM_JUGG_CRIT = 0x1a, DOTA_PSEUDO_RANDOM_DAZZLE_SCEPTER = 0x1b, DOTA_PSEUDO_RANDOM_CHAOS_CRIT = 0x1c, DOTA_PSEUDO_RANDOM_LYCAN_CRIT = 0x1d, DOTA_PSEUDO_RANDOM_TUSK_CRIT = 0x1e, DOTA_PSEUDO_RANDOM_CM_FREEZING_FIELD = 0x1f, DOTA_PSEUDO_RANDOM_GENERIC_BASHER = 0x20, DOTA_PSEUDO_RANDOM_SKELETONKING_CRIT = 0x21, DOTA_PSEUDO_RANDOM_SKELETONKING_CRIT_MORTAL = 0x22, DOTA_PSEUDO_RANDOM_ITEM_GREATERCRIT = 0x23, DOTA_PSEUDO_RANDOM_ITEM_LESSERCRIT = 0x24, DOTA_PSEUDO_RANDOM_ITEM_BASHER = 0x25, DOTA_PSEUDO_RANDOM_ITEM_SOLAR_CREST = 0x26, DOTA_PSEUDO_RANDOM_ITEM_JAVELIN_ACCURACY = 0x27, DOTA_PSEUDO_RANDOM_ITEM_TRIDENT = 0x28, DOTA_PSEUDO_RANDOM_ITEM_ABYSSAL = 0x29, DOTA_PSEUDO_RANDOM_ITEM_ABYSSAL_BLOCK = 0x2a, DOTA_PSEUDO_RANDOM_ITEM_STOUT = 0x2b, DOTA_PSEUDO_RANDOM_ITEM_VANGUARD = 0x2c, DOTA_PSEUDO_RANDOM_ITEM_CRIMSON_GUARD = 0x2d, DOTA_PSEUDO_RANDOM_ITEM_PMS = 0x2e, DOTA_PSEUDO_RANDOM_ITEM_HALBRED_MAIM = 0x2f, DOTA_PSEUDO_RANDOM_ITEM_SANGEYASHA_MAIM = 0x30, DOTA_PSEUDO_RANDOM_ITEM_SANGEKAYA_MAIM = 0x31, DOTA_PSEUDO_RANDOM_ITEM_SANGE_MAIM = 0x32, DOTA_PSEUDO_RANDOM_ITEM_BUTTERFLY = 0x33, DOTA_PSEUDO_RANDOM_ITEM_MAELSTROM = 0x34, DOTA_PSEUDO_RANDOM_ITEM_MJOLLNIR = 0x35, DOTA_PSEUDO_RANDOM_ITEM_MJOLLNIR_STATIC = 0x36, DOTA_PSEUDO_RANDOM_ITEM_MKB = 0x37, DOTA_PSEUDO_RANDOM_ITEM_SILVER_EDGE = 0x38, DOTA_PSEUDO_RANDOM_ITEM_NAGINATA = 0x39, DOTA_PSEUDO_RANDOM_TROLL_BASH = 0x3a, DOTA_PSEUDO_RANDOM_RIKI_SMOKE_SCREEN = 0x3b, DOTA_PSEUDO_RANDOM_CHAOS_DOUBLE_CRIT = 0x3c, DOTA_PSEUDO_RANDOM_CHAOS_TRIPLE_CRIT = 0x3d, DOTA_PSEUDO_RANDOM_GENERIC_EVASION = 0x3e, DOTA_PSEUDO_RANDOM_GENERIC_HEIGHT_MISS = 0x3f, DOTA_PSEUDO_RANDOM_GENERIC_MISS = 0x40, DOTA_PSEUDO_RANDOM_ARMADILLO_HEARTPIERCER = 0x41, DOTA_PSEUDO_RANDOM_MARS_SHIELD = 0x42, DOTA_PSEUDO_RANDOM_ANTIMAGE_SILENT = 0x43, DOTA_PSEUDO_RANDOM_NEUTRAL_DROP_TIER1 = 0x44, DOTA_PSEUDO_RANDOM_NEUTRAL_DROP_TIER2 = 0x45, DOTA_PSEUDO_RANDOM_NEUTRAL_DROP_TIER3 = 0x46, DOTA_PSEUDO_RANDOM_NEUTRAL_DROP_TIER4 = 0x47, DOTA_PSEUDO_RANDOM_NEUTRAL_DROP_TIER5 = 0x48, DOTA_PSEUDO_RANDOM_MARS_BULWARK = 0x49, DOTA_PSEUDO_RANDOM_MUERTA_GUNSLINGER = 0x4a, DOTA_PSEUDO_RANDOM_BATRIDER_NAPALM = 0x4b, DOTA_PSEUDO_RANDOM_CUSTOM_GENERIC = 0x4c, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_1 = 0x4d, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_2 = 0x4e, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_3 = 0x4f, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_4 = 0x50, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_5 = 0x51, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_6 = 0x52, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_7 = 0x53, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_8 = 0x54, DOTA_PSEUDO_RANDOM_CUSTOM_GAME_9 = 0x55, }; // Alignment: 4 // Size: 0x3 enum class modifierremove : uint32_t { DOTA_BUFF_REMOVE_ALL = 0x0, DOTA_BUFF_REMOVE_ENEMY = 0x1, DOTA_BUFF_REMOVE_ALLY = 0x2, }; // Alignment: 4 // Size: 0x5 enum class modifierpriority : uint32_t { MODIFIER_PRIORITY_LOW = 0x0, MODIFIER_PRIORITY_NORMAL = 0x1, MODIFIER_PRIORITY_HIGH = 0x2, MODIFIER_PRIORITY_ULTRA = 0x3, MODIFIER_PRIORITY_SUPER_ULTRA = 0x4, }; // Alignment: 4 // Size: 0x108 enum class modifierfunction : uint32_t { MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE = 0x0, MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_TARGET = 0x1, MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_PROC = 0x2, MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_POST_CRIT = 0x3, MODIFIER_PROPERTY_BASEATTACK_BONUSDAMAGE = 0x4, MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PHYSICAL = 0x5, MODIFIER_PROPERTY_PROCATTACK_CONVERT_PHYSICAL_TO_MAGICAL = 0x6, MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_MAGICAL = 0x7, MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PURE = 0x8, MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_MAGICAL_TARGET = 0x9, MODIFIER_PROPERTY_PROCATTACK_FEEDBACK = 0xa, MODIFIER_PROPERTY_OVERRIDE_ATTACK_DAMAGE = 0xb, MODIFIER_PROPERTY_PRE_ATTACK = 0xc, MODIFIER_PROPERTY_INVISIBILITY_LEVEL = 0xd, MODIFIER_PROPERTY_INVISIBILITY_ATTACK_BEHAVIOR_EXCEPTION = 0xe, MODIFIER_PROPERTY_PERSISTENT_INVISIBILITY = 0xf, MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT = 0x10, MODIFIER_PROPERTY_MOVESPEED_BASE_OVERRIDE = 0x11, MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE = 0x12, MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE = 0x13, MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE = 0x14, MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE_2 = 0x15, MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT_UNIQUE = 0x16, MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT_UNIQUE_2 = 0x17, MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE = 0x18, MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE_MIN = 0x19, MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE_MAX = 0x1a, MODIFIER_PROPERTY_IGNORE_MOVESPEED_LIMIT = 0x1b, MODIFIER_PROPERTY_MOVESPEED_LIMIT = 0x1c, MODIFIER_PROPERTY_ATTACKSPEED_BASE_OVERRIDE = 0x1d, MODIFIER_PROPERTY_FIXED_ATTACK_RATE = 0x1e, MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT = 0x1f, MODIFIER_PROPERTY_IGNORE_ATTACKSPEED_LIMIT = 0x20, MODIFIER_PROPERTY_COOLDOWN_REDUCTION_CONSTANT = 0x21, MODIFIER_PROPERTY_MANACOST_REDUCTION_CONSTANT = 0x22, MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT = 0x23, MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT_ADJUST = 0x24, MODIFIER_PROPERTY_BASE_ATTACK_TIME_PERCENTAGE = 0x25, MODIFIER_PROPERTY_ATTACK_POINT_CONSTANT = 0x26, MODIFIER_PROPERTY_BONUSDAMAGEOUTGOING_PERCENTAGE = 0x27, MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE = 0x28, MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION = 0x29, MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION_AMPLIFY = 0x2a, MODIFIER_PROPERTY_TOTALDAMAGEOUTGOING_PERCENTAGE = 0x2b, MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE_CREEP = 0x2c, MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE = 0x2d, MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE_UNIQUE = 0x2e, MODIFIER_PROPERTY_HEAL_AMPLIFY_PERCENTAGE_SOURCE = 0x2f, MODIFIER_PROPERTY_HEAL_AMPLIFY_PERCENTAGE_TARGET = 0x30, MODIFIER_PROPERTY_HP_REGEN_CAN_BE_NEGATIVE = 0x31, MODIFIER_PROPERTY_HP_REGEN_AMPLIFY_PERCENTAGE = 0x32, MODIFIER_PROPERTY_LIFESTEAL_AMPLIFY_PERCENTAGE = 0x33, MODIFIER_PROPERTY_SPELL_LIFESTEAL_AMPLIFY_PERCENTAGE = 0x34, MODIFIER_PROPERTY_MP_REGEN_AMPLIFY_PERCENTAGE = 0x35, MODIFIER_PROPERTY_MANA_DRAIN_AMPLIFY_PERCENTAGE = 0x36, MODIFIER_PROPERTY_MP_RESTORE_AMPLIFY_PERCENTAGE = 0x37, MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE = 0x38, MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE_UNIQUE = 0x39, MODIFIER_PROPERTY_INCOMING_DAMAGE_PERCENTAGE = 0x3a, MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_PERCENTAGE = 0x3b, MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_CONSTANT = 0x3c, MODIFIER_PROPERTY_INCOMING_SPELL_DAMAGE_CONSTANT = 0x3d, MODIFIER_PROPERTY_EVASION_CONSTANT = 0x3e, MODIFIER_PROPERTY_NEGATIVE_EVASION_CONSTANT = 0x3f, MODIFIER_PROPERTY_STATUS_RESISTANCE = 0x40, MODIFIER_PROPERTY_STATUS_RESISTANCE_STACKING = 0x41, MODIFIER_PROPERTY_STATUS_RESISTANCE_CASTER = 0x42, MODIFIER_PROPERTY_AVOID_DAMAGE = 0x43, MODIFIER_PROPERTY_AVOID_SPELL = 0x44, MODIFIER_PROPERTY_MISS_PERCENTAGE = 0x45, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BASE_PERCENTAGE = 0x46, MODIFIER_PROPERTY_PHYSICAL_ARMOR_TOTAL_PERCENTAGE = 0x47, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS = 0x48, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE = 0x49, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE_ACTIVE = 0x4a, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_POST = 0x4b, MODIFIER_PROPERTY_IGNORE_PHYSICAL_ARMOR = 0x4c, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BASE_REDUCTION = 0x4d, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DIRECT_MODIFICATION = 0x4e, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS = 0x4f, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS_ILLUSIONS = 0x50, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DECREPIFY_UNIQUE = 0x51, MODIFIER_PROPERTY_BASE_MANA_REGEN = 0x52, MODIFIER_PROPERTY_MANA_REGEN_CONSTANT = 0x53, MODIFIER_PROPERTY_MANA_REGEN_CONSTANT_UNIQUE = 0x54, MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE = 0x55, MODIFIER_PROPERTY_HEALTH_REGEN_CONSTANT = 0x56, MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE = 0x57, MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE_UNIQUE = 0x58, MODIFIER_PROPERTY_HEALTH_BONUS = 0x59, MODIFIER_PROPERTY_MANA_BONUS = 0x5a, MODIFIER_PROPERTY_EXTRA_STRENGTH_BONUS = 0x5b, MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS = 0x5c, MODIFIER_PROPERTY_EXTRA_MANA_BONUS = 0x5d, MODIFIER_PROPERTY_EXTRA_MANA_BONUS_PERCENTAGE = 0x5e, MODIFIER_PROPERTY_EXTRA_HEALTH_PERCENTAGE = 0x5f, MODIFIER_PROPERTY_EXTRA_MANA_PERCENTAGE = 0x60, MODIFIER_PROPERTY_STATS_STRENGTH_BONUS = 0x61, MODIFIER_PROPERTY_STATS_AGILITY_BONUS = 0x62, MODIFIER_PROPERTY_STATS_INTELLECT_BONUS = 0x63, MODIFIER_PROPERTY_STATS_STRENGTH_BONUS_PERCENTAGE = 0x64, MODIFIER_PROPERTY_STATS_AGILITY_BONUS_PERCENTAGE = 0x65, MODIFIER_PROPERTY_STATS_INTELLECT_BONUS_PERCENTAGE = 0x66, MODIFIER_PROPERTY_CAST_RANGE_BONUS = 0x67, MODIFIER_PROPERTY_CAST_RANGE_BONUS_PERCENTAGE = 0x68, MODIFIER_PROPERTY_CAST_RANGE_BONUS_TARGET = 0x69, MODIFIER_PROPERTY_CAST_RANGE_BONUS_STACKING = 0x6a, MODIFIER_PROPERTY_ATTACK_RANGE_BASE_OVERRIDE = 0x6b, MODIFIER_PROPERTY_ATTACK_RANGE_BONUS = 0x6c, MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_UNIQUE = 0x6d, MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_PERCENTAGE = 0x6e, MODIFIER_PROPERTY_MAX_ATTACK_RANGE = 0x6f, MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS = 0x70, MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS_PERCENTAGE = 0x71, MODIFIER_PROPERTY_PROJECTILE_NAME = 0x72, MODIFIER_PROPERTY_REINCARNATION = 0x73, MODIFIER_PROPERTY_RESPAWNTIME = 0x74, MODIFIER_PROPERTY_RESPAWNTIME_PERCENTAGE = 0x75, MODIFIER_PROPERTY_RESPAWNTIME_STACKING = 0x76, MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE = 0x77, MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_ONGOING = 0x78, MODIFIER_PROPERTY_CASTTIME_PERCENTAGE = 0x79, MODIFIER_PROPERTY_ATTACK_ANIM_TIME_PERCENTAGE = 0x7a, MODIFIER_PROPERTY_MANACOST_PERCENTAGE = 0x7b, MODIFIER_PROPERTY_MANACOST_PERCENTAGE_STACKING = 0x7c, MODIFIER_PROPERTY_DEATHGOLDCOST = 0x7d, MODIFIER_PROPERTY_EXP_RATE_BOOST = 0x7e, MODIFIER_PROPERTY_GOLD_RATE_BOOST = 0x7f, MODIFIER_PROPERTY_PREATTACK_CRITICALSTRIKE = 0x80, MODIFIER_PROPERTY_PREATTACK_TARGET_CRITICALSTRIKE = 0x81, MODIFIER_PROPERTY_MAGICAL_CONSTANT_BLOCK = 0x82, MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK = 0x83, MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK_SPECIAL = 0x84, MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK_UNAVOIDABLE_PRE_ARMOR = 0x85, MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK = 0x86, MODIFIER_PROPERTY_OVERRIDE_ANIMATION = 0x87, MODIFIER_PROPERTY_OVERRIDE_ANIMATION_WEIGHT = 0x88, MODIFIER_PROPERTY_OVERRIDE_ANIMATION_RATE = 0x89, MODIFIER_PROPERTY_ABSORB_SPELL = 0x8a, MODIFIER_PROPERTY_REFLECT_SPELL = 0x8b, MODIFIER_PROPERTY_DISABLE_AUTOATTACK = 0x8c, MODIFIER_PROPERTY_BONUS_DAY_VISION = 0x8d, MODIFIER_PROPERTY_BONUS_NIGHT_VISION = 0x8e, MODIFIER_PROPERTY_BONUS_NIGHT_VISION_UNIQUE = 0x8f, MODIFIER_PROPERTY_BONUS_VISION_PERCENTAGE = 0x90, MODIFIER_PROPERTY_FIXED_DAY_VISION = 0x91, MODIFIER_PROPERTY_FIXED_NIGHT_VISION = 0x92, MODIFIER_PROPERTY_MIN_HEALTH = 0x93, MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PHYSICAL = 0x94, MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_MAGICAL = 0x95, MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PURE = 0x96, MODIFIER_PROPERTY_IS_ILLUSION = 0x97, MODIFIER_PROPERTY_ILLUSION_LABEL = 0x98, MODIFIER_PROPERTY_STRONG_ILLUSION = 0x99, MODIFIER_PROPERTY_SUPER_ILLUSION = 0x9a, MODIFIER_PROPERTY_SUPER_ILLUSION_WITH_ULTIMATE = 0x9b, MODIFIER_PROPERTY_XP_DURING_DEATH = 0x9c, MODIFIER_PROPERTY_TURN_RATE_PERCENTAGE = 0x9d, MODIFIER_PROPERTY_TURN_RATE_OVERRIDE = 0x9e, MODIFIER_PROPERTY_DISABLE_HEALING = 0x9f, MODIFIER_PROPERTY_ALWAYS_ALLOW_ATTACK = 0xa0, MODIFIER_PROPERTY_ALWAYS_ETHEREAL_ATTACK = 0xa1, MODIFIER_PROPERTY_OVERRIDE_ATTACK_MAGICAL = 0xa2, MODIFIER_PROPERTY_UNIT_STATS_NEEDS_REFRESH = 0xa3, MODIFIER_PROPERTY_BOUNTY_CREEP_MULTIPLIER = 0xa4, MODIFIER_PROPERTY_BOUNTY_OTHER_MULTIPLIER = 0xa5, MODIFIER_PROPERTY_UNIT_DISALLOW_UPGRADING = 0xa6, MODIFIER_PROPERTY_DODGE_PROJECTILE = 0xa7, MODIFIER_PROPERTY_TRIGGER_COSMETIC_AND_END_ATTACK = 0xa8, MODIFIER_PROPERTY_MAX_DEBUFF_DURATION = 0xa9, MODIFIER_PROPERTY_PRIMARY_STAT_DAMAGE_MULTIPLIER = 0xaa, MODIFIER_PROPERTY_PREATTACK_DEADLY_BLOW = 0xab, MODIFIER_PROPERTY_ALWAYS_AUTOATTACK_WHILE_HOLD_POSITION = 0xac, MODIFIER_EVENT_ON_SPELL_TARGET_READY = 0xad, MODIFIER_EVENT_ON_ATTACK_RECORD = 0xae, MODIFIER_EVENT_ON_ATTACK_START = 0xaf, MODIFIER_EVENT_ON_ATTACK = 0xb0, MODIFIER_EVENT_ON_ATTACK_LANDED = 0xb1, MODIFIER_EVENT_ON_ATTACK_FAIL = 0xb2, MODIFIER_EVENT_ON_ATTACK_ALLIED = 0xb3, MODIFIER_EVENT_ON_PROJECTILE_DODGE = 0xb4, MODIFIER_EVENT_ON_ORDER = 0xb5, MODIFIER_EVENT_ON_UNIT_MOVED = 0xb6, MODIFIER_EVENT_ON_ABILITY_START = 0xb7, MODIFIER_EVENT_ON_ABILITY_EXECUTED = 0xb8, MODIFIER_EVENT_ON_ABILITY_FULLY_CAST = 0xb9, MODIFIER_EVENT_ON_BREAK_INVISIBILITY = 0xba, MODIFIER_EVENT_ON_ABILITY_END_CHANNEL = 0xbb, MODIFIER_EVENT_ON_PROCESS_UPGRADE = 0xbc, MODIFIER_EVENT_ON_REFRESH = 0xbd, MODIFIER_EVENT_ON_TAKEDAMAGE = 0xbe, MODIFIER_EVENT_ON_DEATH_PREVENTED = 0xbf, MODIFIER_EVENT_ON_STATE_CHANGED = 0xc0, MODIFIER_EVENT_ON_ORB_EFFECT = 0xc1, MODIFIER_EVENT_ON_PROCESS_CLEAVE = 0xc2, MODIFIER_EVENT_ON_DAMAGE_CALCULATED = 0xc3, MODIFIER_EVENT_ON_MAGIC_DAMAGE_CALCULATED = 0xc4, MODIFIER_EVENT_ON_ATTACKED = 0xc5, MODIFIER_EVENT_ON_DEATH = 0xc6, MODIFIER_EVENT_ON_RESPAWN = 0xc7, MODIFIER_EVENT_ON_SPENT_MANA = 0xc8, MODIFIER_EVENT_ON_TELEPORTING = 0xc9, MODIFIER_EVENT_ON_TELEPORTED = 0xca, MODIFIER_EVENT_ON_SET_LOCATION = 0xcb, MODIFIER_EVENT_ON_HEALTH_GAINED = 0xcc, MODIFIER_EVENT_ON_MANA_GAINED = 0xcd, MODIFIER_EVENT_ON_TAKEDAMAGE_KILLCREDIT = 0xce, MODIFIER_EVENT_ON_HERO_KILLED = 0xcf, MODIFIER_EVENT_ON_HEAL_RECEIVED = 0xd0, MODIFIER_EVENT_ON_BUILDING_KILLED = 0xd1, MODIFIER_EVENT_ON_MODEL_CHANGED = 0xd2, MODIFIER_EVENT_ON_MODIFIER_ADDED = 0xd3, MODIFIER_PROPERTY_TOOLTIP = 0xd4, MODIFIER_PROPERTY_MODEL_CHANGE = 0xd5, MODIFIER_PROPERTY_MODEL_SCALE = 0xd6, MODIFIER_PROPERTY_MODEL_SCALE_ANIMATE_TIME = 0xd7, MODIFIER_PROPERTY_IS_SCEPTER = 0xd8, MODIFIER_PROPERTY_IS_SHARD = 0xd9, MODIFIER_PROPERTY_RADAR_COOLDOWN_REDUCTION = 0xda, MODIFIER_PROPERTY_TRANSLATE_ACTIVITY_MODIFIERS = 0xdb, MODIFIER_PROPERTY_TRANSLATE_ATTACK_SOUND = 0xdc, MODIFIER_PROPERTY_LIFETIME_FRACTION = 0xdd, MODIFIER_PROPERTY_PROVIDES_FOW_POSITION = 0xde, MODIFIER_PROPERTY_SPELLS_REQUIRE_HP = 0xdf, MODIFIER_PROPERTY_FORCE_DRAW_MINIMAP = 0xe0, MODIFIER_PROPERTY_DISABLE_TURNING = 0xe1, MODIFIER_PROPERTY_IGNORE_CAST_ANGLE = 0xe2, MODIFIER_PROPERTY_CHANGE_ABILITY_VALUE = 0xe3, MODIFIER_PROPERTY_OVERRIDE_ABILITY_SPECIAL = 0xe4, MODIFIER_PROPERTY_OVERRIDE_ABILITY_SPECIAL_VALUE = 0xe5, MODIFIER_PROPERTY_ABILITY_LAYOUT = 0xe6, MODIFIER_EVENT_ON_DOMINATED = 0xe7, MODIFIER_EVENT_ON_KILL = 0xe8, MODIFIER_EVENT_ON_ASSIST = 0xe9, MODIFIER_PROPERTY_TEMPEST_DOUBLE = 0xea, MODIFIER_PROPERTY_PRESERVE_PARTICLES_ON_MODEL_CHANGE = 0xeb, MODIFIER_EVENT_ON_ATTACK_FINISHED = 0xec, MODIFIER_PROPERTY_IGNORE_COOLDOWN = 0xed, MODIFIER_PROPERTY_CAN_ATTACK_TREES = 0xee, MODIFIER_PROPERTY_VISUAL_Z_DELTA = 0xef, MODIFIER_PROPERTY_VISUAL_Z_SPEED_BASE_OVERRIDE = 0xf0, MODIFIER_PROPERTY_INCOMING_DAMAGE_ILLUSION = 0xf1, MODIFIER_PROPERTY_DONT_GIVE_VISION_OF_ATTACKER = 0xf2, MODIFIER_PROPERTY_TOOLTIP2 = 0xf3, MODIFIER_EVENT_ON_ATTACK_RECORD_DESTROY = 0xf4, MODIFIER_EVENT_ON_PROJECTILE_OBSTRUCTION_HIT = 0xf5, MODIFIER_PROPERTY_SUPPRESS_TELEPORT = 0xf6, MODIFIER_EVENT_ON_ATTACK_CANCELLED = 0xf7, MODIFIER_PROPERTY_SUPPRESS_CLEAVE = 0xf8, MODIFIER_PROPERTY_BOT_ATTACK_SCORE_BONUS = 0xf9, MODIFIER_PROPERTY_ATTACKSPEED_REDUCTION_PERCENTAGE = 0xfa, MODIFIER_PROPERTY_MOVESPEED_REDUCTION_PERCENTAGE = 0xfb, MODIFIER_PROPERTY_ATTACK_WHILE_MOVING_TARGET = 0xfc, MODIFIER_PROPERTY_ATTACKSPEED_PERCENTAGE = 0xfd, MODIFIER_EVENT_ON_ATTEMPT_PROJECTILE_DODGE = 0xfe, MODIFIER_EVENT_ON_PREDEBUFF_APPLIED = 0xff, MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_STACKING = 0x100, MODIFIER_PROPERTY_SPELL_REDIRECT_TARGET = 0x101, MODIFIER_PROPERTY_TURN_RATE_CONSTANT = 0x102, MODIFIER_PROPERTY_RAT_PACK = 0x103, MODIFIER_PROPERTY_PHYSICALDAMAGEOUTGOING_PERCENTAGE = 0x104, MODIFIER_PROPERTY_KNOCKBACK_AMPLIFICATION_PERCENTAGE = 0x105, MODIFIER_FUNCTION_LAST = 0x106, MODIFIER_FUNCTION_INVALID = 0xffff, }; // Alignment: 4 // Size: 0x5 enum class LuaModifierType : uint32_t { LUA_MODIFIER_MOTION_NONE = 0x0, LUA_MODIFIER_MOTION_HORIZONTAL = 0x1, LUA_MODIFIER_MOTION_VERTICAL = 0x2, LUA_MODIFIER_MOTION_BOTH = 0x3, LUA_MODIFIER_INVALID = 0x4, }; // Alignment: 4 // Size: 0x8 enum class CourierState_t : uint32_t { COURIER_STATE_INIT = 0xffffffffffffffff, COURIER_STATE_IDLE = 0x0, COURIER_STATE_AT_BASE = 0x1, COURIER_STATE_MOVING = 0x2, COURIER_STATE_DELIVERING_ITEMS = 0x3, COURIER_STATE_RETURNING_TO_BASE = 0x4, COURIER_STATE_DEAD = 0x5, COURIER_NUM_STATES = 0x6, }; // Alignment: 4 // Size: 0x67 enum class DOTASlotType_t : uint32_t { DOTA_LOADOUT_TYPE_INVALID = 0xffffffffffffffff, DOTA_LOADOUT_TYPE_WEAPON = 0x0, DOTA_LOADOUT_TYPE_OFFHAND_WEAPON = 0x1, DOTA_LOADOUT_TYPE_WEAPON2 = 0x2, DOTA_LOADOUT_TYPE_OFFHAND_WEAPON2 = 0x3, DOTA_LOADOUT_TYPE_HEAD = 0x4, DOTA_LOADOUT_TYPE_SHOULDER = 0x5, DOTA_LOADOUT_TYPE_ARMS = 0x6, DOTA_LOADOUT_TYPE_ARMOR = 0x7, DOTA_LOADOUT_TYPE_BELT = 0x8, DOTA_LOADOUT_TYPE_NECK = 0x9, DOTA_LOADOUT_TYPE_BACK = 0xa, DOTA_LOADOUT_TYPE_GLOVES = 0xb, DOTA_LOADOUT_TYPE_LEGS = 0xc, DOTA_LOADOUT_TYPE_TAIL = 0xd, DOTA_LOADOUT_TYPE_MISC = 0xe, DOTA_LOADOUT_TYPE_COSTUME = 0xf, DOTA_LOADOUT_TYPE_BODY_HEAD = 0x10, DOTA_LOADOUT_TYPE_MOUNT = 0x11, DOTA_LOADOUT_TYPE_SUMMON = 0x12, DOTA_LOADOUT_TYPE_SHAPESHIFT = 0x13, DOTA_LOADOUT_TYPE_TAUNT = 0x14, DOTA_LOADOUT_TYPE_AMBIENT_EFFECTS = 0x15, DOTA_LOADOUT_TYPE_ABILITY_ATTACK = 0x16, DOTA_LOADOUT_TYPE_ABILITY1 = 0x17, DOTA_LOADOUT_TYPE_ABILITY2 = 0x18, DOTA_LOADOUT_TYPE_ABILITY3 = 0x19, DOTA_LOADOUT_TYPE_ABILITY4 = 0x1a, DOTA_LOADOUT_TYPE_ABILITY_ULTIMATE = 0x1b, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_1 = 0x1c, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_2 = 0x1d, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_3 = 0x1e, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_4 = 0x1f, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_5 = 0x20, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_6 = 0x21, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_7 = 0x22, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_8 = 0x23, DOTA_LOADOUT_TYPE_ABILITY_EFFECTS_9 = 0x24, DOTA_LOADOUT_TYPE_VOICE = 0x25, DOTA_LOADOUT_TYPE_WEAPON_PERSONA_1 = 0x26, DOTA_LOADOUT_TYPE_OFFHAND_WEAPON_PERSONA_1 = 0x27, DOTA_LOADOUT_TYPE_WEAPON2_PERSONA_1 = 0x28, DOTA_LOADOUT_TYPE_OFFHAND_WEAPON2_PERSONA_1 = 0x29, DOTA_LOADOUT_TYPE_HEAD_PERSONA_1 = 0x2a, DOTA_LOADOUT_TYPE_SHOULDER_PERSONA_1 = 0x2b, DOTA_LOADOUT_TYPE_ARMS_PERSONA_1 = 0x2c, DOTA_LOADOUT_TYPE_ARMOR_PERSONA_1 = 0x2d, DOTA_LOADOUT_TYPE_BELT_PERSONA_1 = 0x2e, DOTA_LOADOUT_TYPE_NECK_PERSONA_1 = 0x2f, DOTA_LOADOUT_TYPE_BACK_PERSONA_1 = 0x30, DOTA_LOADOUT_TYPE_LEGS_PERSONA_1 = 0x31, DOTA_LOADOUT_TYPE_GLOVES_PERSONA_1 = 0x32, DOTA_LOADOUT_TYPE_TAIL_PERSONA_1 = 0x33, DOTA_LOADOUT_TYPE_MISC_PERSONA_1 = 0x34, DOTA_LOADOUT_TYPE_BODY_HEAD_PERSONA_1 = 0x35, DOTA_LOADOUT_TYPE_MOUNT_PERSONA_1 = 0x36, DOTA_LOADOUT_TYPE_SUMMON_PERSONA_1 = 0x37, DOTA_LOADOUT_TYPE_SHAPESHIFT_PERSONA_1 = 0x38, DOTA_LOADOUT_TYPE_TAUNT_PERSONA_1 = 0x39, DOTA_LOADOUT_TYPE_AMBIENT_EFFECTS_PERSONA_1 = 0x3a, DOTA_LOADOUT_TYPE_ABILITY_ATTACK_PERSONA_1 = 0x3b, DOTA_LOADOUT_TYPE_ABILITY1_PERSONA_1 = 0x3c, DOTA_LOADOUT_TYPE_ABILITY2_PERSONA_1 = 0x3d, DOTA_LOADOUT_TYPE_ABILITY3_PERSONA_1 = 0x3e, DOTA_LOADOUT_TYPE_ABILITY4_PERSONA_1 = 0x3f, DOTA_LOADOUT_TYPE_ABILITY_ULTIMATE_PERSONA_1 = 0x40, DOTA_LOADOUT_TYPE_VOICE_PERSONA_1 = 0x41, DOTA_LOADOUT_PERSONA_1_START = 0x26, DOTA_LOADOUT_PERSONA_1_END = 0x41, DOTA_LOADOUT_TYPE_PERSONA_SELECTOR = 0x42, DOTA_LOADOUT_TYPE_COURIER = 0x43, DOTA_LOADOUT_TYPE_ANNOUNCER = 0x44, DOTA_LOADOUT_TYPE_MEGA_KILLS = 0x45, DOTA_LOADOUT_TYPE_MUSIC = 0x46, DOTA_LOADOUT_TYPE_WARD = 0x47, DOTA_LOADOUT_TYPE_HUD_SKIN = 0x48, DOTA_LOADOUT_TYPE_LOADING_SCREEN = 0x49, DOTA_LOADOUT_TYPE_WEATHER = 0x4a, DOTA_LOADOUT_TYPE_HEROIC_STATUE = 0x4b, DOTA_LOADOUT_TYPE_MULTIKILL_BANNER = 0x4c, DOTA_LOADOUT_TYPE_CURSOR_PACK = 0x4d, DOTA_LOADOUT_TYPE_TELEPORT_EFFECT = 0x4e, DOTA_LOADOUT_TYPE_BLINK_EFFECT = 0x4f, DOTA_LOADOUT_TYPE_EMBLEM = 0x50, DOTA_LOADOUT_TYPE_TERRAIN = 0x51, DOTA_LOADOUT_TYPE_RADIANT_CREEPS = 0x52, DOTA_LOADOUT_TYPE_DIRE_CREEPS = 0x53, DOTA_LOADOUT_TYPE_RADIANT_TOWER = 0x54, DOTA_LOADOUT_TYPE_DIRE_TOWER = 0x55, DOTA_LOADOUT_TYPE_VERSUS_SCREEN = 0x56, DOTA_LOADOUT_TYPE_STREAK_EFFECT = 0x57, DOTA_LOADOUT_TYPE_KILL_EFFECT = 0x58, DOTA_LOADOUT_TYPE_DEATH_EFFECT = 0x59, DOTA_LOADOUT_TYPE_HEAD_EFFECT = 0x5a, DOTA_LOADOUT_TYPE_MAP_EFFECT = 0x5b, DOTA_LOADOUT_TYPE_COURIER_EFFECT = 0x5c, DOTA_LOADOUT_TYPE_RADIANT_SIEGE_CREEPS = 0x5d, DOTA_LOADOUT_TYPE_DIRE_SIEGE_CREEPS = 0x5e, DOTA_LOADOUT_TYPE_ROSHAN = 0x5f, DOTA_PLAYER_LOADOUT_START = 0x43, DOTA_PLAYER_LOADOUT_END = 0x5f, DOTA_LOADOUT_TYPE_NONE = 0x60, DOTA_LOADOUT_TYPE_COUNT = 0x61, }; // Alignment: 4 // Size: 0x5 enum class DOTA_ThreatLevel : uint32_t { DOTA_THREATLEVEL_Ultra = 0x0, DOTA_THREATLEVEL_High = 0x1, DOTA_THREATLEVEL_Medium = 0x2, DOTA_THREATLEVEL_Low = 0x3, DOTA_THREATLEVEL_None = 0x4, }; // Alignment: 4 // Size: 0x3 enum class PingConfirmationIconType : uint32_t { PING_CONFIRMATION_STATE_ICON_TYPE_ATTACK = 0x0, PING_CONFIRMATION_STATE_ICON_TYPE_DEFEND = 0x1, PING_CONFIRMATION_STATE_ICON_TYPE_SMOKE = 0x2, }; // Alignment: 4 // Size: 0x5 enum class ObstructionRelationshipClass_t : uint32_t { DOTA_OBSTRUCTION_RELATIONSHIP_NONE = 0x0, DOTA_OBSTRUCTION_RELATIONSHIP_BUILDING = 0x1, DOTA_OBSTRUCTION_RELATIONSHIP_PLAYER_CONTROLLED = 0x2, DOTA_OBSTRUCTION_RELATIONSHIP_NPC = 0x3, DOTA_OBSTRUCTION_RELATIONSHIP_LAST = 0x4, }; // Alignment: 4 // Size: 0x5 enum class quest_hud_types_t : uint32_t { QUEST_HUD_TYPE_DEFAULT = 0x0, QUEST_HUD_TYPE_GOLD = 0x1, QUEST_HUD_TYPE_ATTACK = 0x2, QUEST_HUD_TYPE_DEFEND = 0x3, QUEST_NUM_HUD_TYPES = 0x4, }; // Alignment: 4 // Size: 0x5 enum class quest_text_replace_values_t : uint32_t { QUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE = 0x0, QUEST_TEXT_REPLACE_VALUE_TARGET_VALUE = 0x1, QUEST_TEXT_REPLACE_VALUE_ROUND = 0x2, QUEST_TEXT_REPLACE_VALUE_REWARD = 0x3, QUEST_NUM_TEXT_REPLACE_VALUES = 0x4, }; // Alignment: 4 // Size: 0x3 enum class subquest_text_replace_values_t : uint32_t { SUBQUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE = 0x0, SUBQUEST_TEXT_REPLACE_VALUE_TARGET_VALUE = 0x1, SUBQUEST_NUM_TEXT_REPLACE_VALUES = 0x2, }; // Alignment: 4 // Size: 0x5 enum class subquest_player_stat_types_t : uint32_t { SUBQUEST_PLAYER_STAT_GOLD = 0x0, SUBQUEST_PLAYER_STAT_LEVEL = 0x1, SUBQUEST_PLAYER_STAT_LAST_HITS = 0x2, SUBQUEST_PLAYER_STAT_DENIES = 0x3, SUBQUEST_NUM_PLAYER_STATS = 0x4, }; // Alignment: 4 // Size: 0xb enum class DOTASpeechType_t : uint32_t { DOTA_SPEECH_USER_INVALID = 0x0, DOTA_SPEECH_USER_SINGLE = 0x1, DOTA_SPEECH_USER_TEAM = 0x2, DOTA_SPEECH_USER_TEAM_NEARBY = 0x3, DOTA_SPEECH_USER_NEARBY = 0x4, DOTA_SPEECH_USER_ALL = 0x5, DOTA_SPEECH_GOOD_TEAM = 0x6, DOTA_SPEECH_BAD_TEAM = 0x7, DOTA_SPEECH_SPECTATOR = 0x8, DOTA_SPEECH_USER_TEAM_NOSPECTATOR = 0x9, DOTA_SPEECH_RECIPIENT_TYPE_MAX = 0xa, }; // Alignment: 4 // Size: 0x2 enum class FowBlockerShape_t : uint32_t { FOW_BLOCKER_SHAPE_RECTANGLE = 0x0, FOW_BLOCKER_SHAPE_RECTANGLE_OUTLINE = 0x1, }; // Alignment: 4 // Size: 0x3 enum class CDOTA_BaseNPC_AghsFort_Watch_Tower__ExitDirection_t : uint32_t { EXIT_DIRECTION_LEFT = 0x0, EXIT_DIRECTION_TOP = 0x1, EXIT_DIRECTION_RIGHT = 0x2, }; // Alignment: 4 // Size: 0x5 enum class TowerState_t : uint32_t { TOWER_STATE_ACTIVE = 0x0, TOWER_STATE_SELECTED = 0x1, TOWER_STATE_INACTIVE = 0x2, TOWER_STATE_NO_BEAM_MOVEMENT = 0x3, TOWER_STATE_ACTIVE_CHANNELED = 0x4, }; // Alignment: 1 // Size: 0xb enum class CavernCrawlItemType_t : uint8_t { CAVERN_CRAWL_ITEM_TYPE_INVALID = 0xff, CAVERN_CRAWL_ITEM_TYPE_KEY = 0x0, CAVERN_CRAWL_ITEM_TYPE_FLARE = 0x1, CAVERN_CRAWL_ITEM_TYPE_SWAP = 0x2, CAVERN_CRAWL_ITEM_TYPE_CULLING_BLADE = 0x3, CAVERN_CRAWL_ITEM_TYPE_SHOVEL = 0x4, CAVERN_CRAWL_ITEM_TYPE_COUNT = 0x5, CAVERN_CRAWL_ITEM_TYPE_FIRST_FAKE = 0x80, CAVERN_CRAWL_ITEM_TYPE_TREASURE_MAP = 0x80, CAVERN_CRAWL_ITEM_TYPE_AFTER_FAKES = 0x81, CAVERN_CRAWL_ITEM_TYPE_FAKE_COUNT = 0x1, }; // Alignment: 1 // Size: 0x6 enum class CavernCrawlChallengeType_t : uint8_t { CAVERN_CRAWL_CHALLENGE_TYPE_INVALID = 0x0, CAVERN_CRAWL_CHALLENGE_FIRST_CUSTOM_TYPE = 0xa0, CAVERN_CRAWL_CHALLENGE_FIRST_VALID_SPECIAL_TYPE = 0xf0, CAVERN_CRAWL_CHALLENGE_TYPE_LOCKED_DOOR = 0xf0, CAVERN_CRAWL_CHALLENGE_TYPE_CAVE_IN = 0xf1, CAVERN_CRAWL_CHALLENGE_LAST_VALID_TYPE_PLUS_ONE = 0xf2, }; // Alignment: 4 // Size: 0x6 enum class PetCoopStates_t : uint32_t { COOP_IGNORE = 0x0, COOPTELEPORT_START_PERFORMING = 0x1, COOPTELEPORT_PLAY_ENDANIM = 0x2, COOPTELEPORT_PLAY_EXITANIM = 0x3, COOP_WARD_OBSERVER = 0x4, COOP_WARD_SENTRY = 0x5, }; // Alignment: 4 // Size: 0x3 enum class CreatureAbilityType : uint32_t { CREATURE_ABILITY_OFFENSIVE = 0x0, CREATURE_ABILITY_DEFENSIVE = 0x1, CREATURE_ABILITY_ESCAPE = 0x2, }; // Alignment: 4 // Size: 0x3 enum class TrackOrientationType_t : uint32_t { TrackOrientation_Fixed = 0x0, TrackOrientation_FacePath = 0x1, TrackOrientation_FacePathAngles = 0x2, }; // Alignment: 4 // Size: 0x8 enum class MLBot_MessageId : uint32_t { mlbot_MatchMetadata = 0x1, mlbot_TickBoundary = 0x2, mlbot_TeamState_Radiant = 0x3, mlbot_TeamState_Radiant_Delta = 0x4, mlbot_TeamState_Dire = 0x5, mlbot_TeamState_Dire_Delta = 0x6, mlbot_PlayerCommand = 0x7, mlbot_PlayerOrder = 0x8, }; struct ChangeAccessorFieldPathIndex_t; struct CEntityIdentity; struct CScriptComponent; struct CGameSceneNode; struct CNetworkVarChainer; struct CSkeletonInstance; struct GameTime_t; struct CSkillFloat; struct AttachmentHandle_t; struct fogplayerparams_t; struct audioparams_t; struct CInButtonState; struct AmmoIndex_t; struct WheeledPhysicsVehicleTireModelData_t; struct WheeledPhysicsVehicleDrivetrainData_t; struct WheeledPhysicsVehicleAeroData_t; struct WheeledPhysicsVehicleLookSteeringData_t; struct CRangeInt; struct CRangeFloat; struct CBaseAnimGraphController; struct ModelConfigHandle_t; struct CEntityInstance; struct CGameSceneNodeHandle; struct CNetworkOriginCellCoordQuantizedVector; struct HSequence; struct CModelState; struct ResponseFollowup; struct ResponseParams; struct CRR_Response; struct CBaseFlex; struct CResponseCriteriaSet; struct CSoundEnvelope; struct CCopyRecipientFilter; struct CBodyComponent; struct CNetworkTransmitComponent; struct GameTick_t; struct CEntityIOOutput; struct CNetworkVelocityVector; struct CCollisionProperty; struct VelocitySampler; struct SimpleConstraintSoundProfile; struct sky3dparams_t; struct CSkyCamera; struct CBaseEntity; struct ParticleIndex_t; struct VPhysicsCollisionAttribute_t; struct fogparams_t; struct CTakeDamageInfo; struct CTakeDamageResult; struct CAttributeManager; struct attrib_definition_index_t; struct CEconItemView; struct INextBotReply; struct CNetworkedSequenceOperation; struct CSequenceTransitioner2; struct CBaseAnimatingController; struct CBaseAnimatingOverlayController; struct CDOTAGameManager; struct DOTALevelingAbilityBonus_t; struct AbilityID_t; struct item_definition_index_t; struct DOTASpecialAbility_t; struct PlayerID_t; struct CDOTAGameRules; struct AABB_t; struct CountdownTimer; struct itemid_t; struct DOTA_AssassinMinigameNetworkState; struct MatchID_t; struct EngineCountdownTimer; struct LeagueID_t; struct CDOTA_Orb; struct CDOTA_BaseNPC; struct CDOTA_ArcanaDataEntity_DrowRanger; struct CDOTA_ArcanaDataEntity_FacelessVoid; struct CDOTA_ArcanaDataEntity_Razor; struct CavernCrawlPathID_t; struct CavernCrawlRoomID_t; struct CDOTA_Buff; struct CDOTABaseAbility; struct PeriodicResourceID_t; struct GuildID_t; struct CavernCrawlMapVariant_t; struct CDOTA_UnitInventory; struct CDotaEntityFilterFlags; struct CDOTASpectatorGraphManager; struct CModifierParams; struct CavernCrawlRewardType_t; struct style_index_t; struct BlessingTypeID_t; struct BlessingID_t; struct PingWheelMessageID_t; struct CDOTA_TeamCommander; struct CDOTABehaviorMoveTo; struct CPointCamera; struct WheeledPhysicsVehiclePhysicsData_t; struct WheeledPhysicsVehicleControlsData_t; struct WheeledPhysicsVehicleCameraData_t; struct CRenderComponent; struct CHitboxComponent; struct CGlowProperty; struct CNetworkViewOffsetVector; struct CPhysicsShake; struct CPathKeyFrame; struct CConstantForceController; struct CMotorController; struct ConstraintSoundInfo; struct constraint_hingeparams_t; struct dynpitchvol_t; struct CBuoyancyHelper; struct ragdoll_t; struct CAttributeList; struct CSoundPatch; struct sSpiritInfo; struct CDOTA_Tree; struct CPathTrack; struct CLightComponent; struct PhysicsRagdollPose_t; struct IChoreoServices; struct CFuncTrackTrain; struct CAttributeContainer; struct CPlayer_WeaponServices; struct CPlayer_ItemServices; struct CPlayer_AutoaimServices; struct CPlayer_ObserverServices; struct CPlayer_WaterServices; struct CPlayer_UseServices; struct CPlayer_FlashlightServices; struct CPlayer_CameraServices; struct CPlayer_MovementServices; struct CAI_Expresser; struct CDOTA_ModifierManager; struct CLocomotionBase; struct IBody; struct CUnitOrders; struct CLocalNPCObstructionsCache; struct CDOTA_CreepKillInfo; struct CDOTA_BaseNPC_Hero::KillInfo_t; struct sLoadoutItem; struct CDOTAMusicProbabilityEntry; // Alignment: 1 // Size: 0x8 class CRangeFloat { public: float m_pValue[2]; // 0x0 }; // Alignment: 1 // Size: 0x8 class CRangeInt { public: int32_t m_pValue[2]; // 0x0 }; // Alignment: 2 // Size: 0x18 class Extent { public: Vector lo; // 0x0 Vector hi; // 0xc }; // Alignment: 0 // Size: 0x70 class CNavVolume { public: // no members available }; // Alignment: 1 // Size: 0x98 class CNavVolumeVector : public CNavVolume { public: bool m_bHasBeenPreFiltered; // 0x78 }; // Alignment: 0 // Size: 0x98 class CNavVolumeAll : public CNavVolumeVector { public: // no members available }; // Alignment: 2 // Size: 0x80 class CNavVolumeSphere : public CNavVolume { public: Vector m_vCenter; // 0x70 float m_flRadius; // 0x7c }; // Alignment: 1 // Size: 0x88 class CNavVolumeSphericalShell : public CNavVolumeSphere { public: float m_flRadiusInner; // 0x80 }; // Alignment: 11 // Size: 0x78 class CEntityIdentity { public: // MNetworkEnable // MNetworkChangeCallback "entityIdentityNameChanged" int32_t m_nameStringableIndex; // 0x14 CUtlSymbolLarge m_name; // 0x18 CUtlSymbolLarge m_designerName; // 0x20 private: [[maybe_unused]] uint8_t __pad0028[0x8]; // 0x28 public: uint32_t m_flags; // 0x30 private: [[maybe_unused]] uint8_t __pad0034[0x4]; // 0x34 public: // MNetworkDisable WorldGroupId_t m_worldGroupId; // 0x38 uint32_t m_fDataObjectTypes; // 0x3c // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex ChangeAccessorFieldPathIndex_t m_PathIndex; // 0x40 private: [[maybe_unused]] uint8_t __pad0042[0x16]; // 0x42 public: CEntityIdentity* m_pPrev; // 0x58 CEntityIdentity* m_pNext; // 0x60 CEntityIdentity* m_pPrevByClass; // 0x68 CEntityIdentity* m_pNextByClass; // 0x70 }; // Alignment: 3 // Size: 0x30 class CEntityInstance : public IHandleEntity { public: // MNetworkDisable CUtlSymbolLarge m_iszPrivateVScripts; // 0x8 // MNetworkEnable // MNetworkPriority "56" CEntityIdentity* m_pEntity; // 0x10 private: [[maybe_unused]] uint8_t __pad0018[0x10]; // 0x18 public: // MNetworkEnable // MNetworkDisable CScriptComponent* m_CScriptComponent; // 0x28 }; // Alignment: 1 // Size: 0x38 class CScriptComponent : public CEntityComponent { public: CUtlSymbolLarge m_scriptClassName; // 0x30 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 2 // Size: 0x50 class CBodyComponent : public CEntityComponent { public: // MNetworkDisable CGameSceneNode* m_pSceneNode; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x10]; // 0x10 public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x20 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 7 // Size: 0x30 class CNetworkOriginCellCoordQuantizedVector { public: // MNetworkEnable // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "cellx" uint16_t m_cellX; // 0x10 // MNetworkEnable // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "celly" uint16_t m_cellY; // 0x12 // MNetworkEnable // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "cellz" uint16_t m_cellZ; // 0x14 // MNetworkEnable uint16_t m_nOutsideWorld; // 0x16 // MNetworkBitCount "13" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posx" CNetworkedQuantizedFloat m_vecX; // 0x18 // MNetworkBitCount "13" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posy" CNetworkedQuantizedFloat m_vecY; // 0x20 // MNetworkBitCount "13" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkChangeCallback "OnCellChanged" // MNetworkPriority "31" // MNetworkSerializer "posz" CNetworkedQuantizedFloat m_vecZ; // 0x28 }; // Alignment: 2 // Size: 0x10 class CGameSceneNodeHandle { public: // MNetworkEnable CEntityHandle m_hOwner; // 0x8 // MNetworkEnable CUtlStringToken m_name; // 0xc }; // Alignment: 1 // Size: 0x28 class CHitboxComponent : public CEntityComponent { public: // MNetworkEnable uint32_t m_bvDisabledHitGroups[1]; // 0x24 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_referenced_but_impl_is_contained(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CHitboxComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 1 // Size: 0x4 struct GameTime_t { public: float m_Value; // 0x0 static GameTime_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("GameTime_t")->m_static_fields[0]->m_instance);}; }; // Alignment: 1 // Size: 0x1a0 class CNetworkTransmitComponent { public: uint8_t m_nTransmitStateOwnedCounter; // 0x16c static int32_t &Get_s_nDebugStateChange(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_s_nWatchTransmitEntity(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[1]->m_instance);}; static bool &Get_s_bUseNetworkVars(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[2]->m_instance);}; static bool &Get_s_bNetworkVarPerFieldTracking(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[3]->m_instance);}; static bool &Get_s_bNetworkVarValidate(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[4]->m_instance);}; static bool &Get_s_bUsingPVSConvars(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[5]->m_instance);}; }; // Alignment: 5 // Size: 0xb8 class CRenderComponent : public CEntityComponent { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x10 private: [[maybe_unused]] uint8_t __pad0038[0x18]; // 0x38 public: bool m_bIsRenderingWithViewModels; // 0x50 private: [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 public: uint32_t m_nSplitscreenFlags; // 0x54 private: [[maybe_unused]] uint8_t __pad0058[0x8]; // 0x58 public: bool m_bEnableRendering; // 0x60 private: [[maybe_unused]] uint8_t __pad0061[0x4f]; // 0x61 public: bool m_bInterpolationReadyToDraw; // 0xb0 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRenderComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 1 // Size: 0x20 class CBuoyancyHelper { public: float m_flFluidDensity; // 0x18 }; // Alignment: 1 // Size: 0x10 class CSkillFloat { public: float m_pValue[4]; // 0x0 }; // Alignment: 1 // Size: 0x10 class CSkillInt { public: int32_t m_pValue[4]; // 0x0 }; // Alignment: 2 // Size: 0x14 class CSkillDamage { public: // MPropertyDescription "Damage Dealt (in the case of NPC vs NPC damage, medium skill is used)" CSkillFloat m_flDamage; // 0x0 // MPropertyDescription "If specified, the damage used to compute physics forces. Otherwise normal damage is used." float m_flPhysicsForceDamage; // 0x10 }; // Alignment: 1 // Size: 0x10 class CRemapFloat { public: float m_pValue[4]; // 0x0 }; // Alignment: 2 // Size: 0xa0 class CScriptUniformRandomStream { public: HSCRIPT m_hScriptScope; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x8c]; // 0x10 public: int32_t m_nInitialSeed; // 0x9c static CUtlVector< CScriptUniformRandomStream* > &Get_sm_UniformStreams(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CScriptUniformRandomStream")->m_static_fields[0]->m_instance);}; }; // Alignment: 5 // Size: 0x38 struct BaseVehiclePotentialExitAnim_t { public: // MPropertyDescription "Attachment name indicating where the player will exit" // MPropertyAttributeEditor "VDataModelAttachment( m_sModelName )" CUtlString m_sExitPointAttachmentName; // 0x0 // MPropertyDescription "Escape exits have lower priority" bool m_bIsEscapeExit; // 0x8 // MPropertyDescription "Is this exit appropriate only if the vehicle is overturned?" bool m_bIsOverturnedExit; // 0x9 private: [[maybe_unused]] uint8_t __pad000a[0x6]; // 0xa public: // MPropertyFriendlyName "Vehicle Exit Animgraph Parameter" // MPropertyDescription "The animgraph parameter that is set on the vehicle to animate the passenger getting in." // MPropertyAttributeEditor "VDataAnimGraphParam( m_sModelName )" CAnimGraphSymbolWithStorage m_sAnimgraphParamExit; // 0x10 // MPropertyFriendlyName "Vehicle Exit Animgraph Finish Tag" // MPropertyDescription "The animgraph status tag that will be set by the animgraph when it has finished performing the 'Exit Animgraph Parameter' step." // MPropertyAttributeEditor "VDataAnimGraphTag( m_sModelName )" CUtlString m_sAnimgraphFinishTagExit; // 0x30 }; // Alignment: 6 // Size: 0x68 struct BaseVehicleAllowedPassenger_t { public: // MPropertyDescription "The subclass of the allowed passenger" CSubclassNameGeneric m_sAllowedSubclass; // 0x0 // MPropertyDescription "The pawn subclass to create to control the vehicle (player passengers only)" CSubclassNameGeneric m_sPawnSubclassToCreate; // 0x10 // MPropertyDescription "Attachment name to attached the spawned pawn subclass to" // MPropertyAttributeEditor "VDataModelAttachment( m_sModelName )" CUtlString m_sPawnAttachmentName; // 0x20 // MPropertyFriendlyName "Vehicle Entry Animgraph Parameter" // MPropertyDescription "The animgraph parameter that is set on the vehicle to animate the passenger getting in." // MPropertyGroupName "Animation" // MPropertyAttributeEditor "VDataAnimGraphParam( m_sModelName )" CAnimGraphSymbolWithStorage m_sAnimgraphParamEnter; // 0x28 // MPropertyFriendlyName "Vehicle Entry Animgraph Finish Tag" // MPropertyDescription "The animgraph status tag that will be set by the animgraph when it has finished performing the 'Entry Animgraph Parameter' step." // MPropertyGroupName "Animation" // MPropertyAttributeEditor "VDataAnimGraphTag( m_sModelName )" CUtlString m_sAnimgraphFinishTagEnter; // 0x48 // MPropertyGroupName "Animation" CUtlVector< BaseVehiclePotentialExitAnim_t > m_vecExitAnimations; // 0x50 }; // Alignment: 10 // Size: 0x48 struct BaseVehicleRole_t { public: CUtlSymbolLarge m_sRoleName; // 0x0 bool m_bIsNonDriverPassenger; // 0x8 private: [[maybe_unused]] uint8_t __pad0009[0x7]; // 0x9 public: // MPropertyAttributeEditor "VDataModelHitboxSet( m_sModelName )" CUtlString m_sEntryHitboxSetName; // 0x10 // MPropertyGroupName "View" float m_flCameraFOV; // 0x18 // MPropertyGroupName "View" float m_flHighSpeedFOVScale; // 0x1c // MPropertyGroupName "View" float m_flFractionOfTopSpeedForStandardFOV; // 0x20 // MPropertyGroupName "View" float m_flFractionOfTopSpeedForHighSpeedFOV; // 0x24 // MPropertyGroupName "View" float m_flCameraZNearOverride; // 0x28 // MPropertyGroupName "View" float m_flCameraZFarOverride; // 0x2c CUtlVector< BaseVehicleAllowedPassenger_t > m_vecAllowedPassengers; // 0x30 }; // Alignment: 13 // Size: 0x60 struct VehiclePassengerInternalInfo_t { public: CUtlSymbolLarge m_sRoleName; // 0x0 AttachmentHandle_t m_hAttachment; // 0x8 VehiclePassengerState_t m_nState; // 0x9 private: [[maybe_unused]] uint8_t __pad000a[0x2]; // 0xa public: CHandle< CBaseCombatCharacter > m_hPassenger; // 0xc CHandle< CBasePlayerPawn > m_hPassengerPawn; // 0x10 CHandle< CBasePlayerWeapon > m_hPassengerWeapon; // 0x14 CUtlStringToken m_nStateChangeFinishTag; // 0x18 int32_t m_nAllowedPassengerIndex; // 0x1c int32_t m_nExitAnimIndex; // 0x20 bool m_bExitForced; // 0x24 private: [[maybe_unused]] uint8_t __pad0025[0xb]; // 0x25 public: CTransform m_xAbsExitLocation; // 0x30 CHandle< CEntityBlocker > m_hExitBlocker; // 0x50 GameTime_t m_flEntryTime; // 0x54 }; // Alignment: 12 // Size: 0x50 struct CommandToolCommand_t { public: bool m_bEnabled; // 0x0 bool m_bOpened; // 0x1 private: [[maybe_unused]] uint8_t __pad0002[0x2]; // 0x2 public: uint32_t m_InternalId; // 0x4 CUtlString m_ShortName; // 0x8 CommandExecMode_t m_ExecMode; // 0x10 private: [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 public: CUtlString m_SpawnGroup; // 0x18 float m_PeriodicExecDelay; // 0x20 CommandEntitySpecType_t m_SpecType; // 0x24 CUtlString m_EntitySpec; // 0x28 CUtlString m_Commands; // 0x30 DebugOverlayBits_t m_SetDebugBits; // 0x38 DebugOverlayBits_t m_ClearDebugBits; // 0x40 }; // Alignment: 1 // Size: 0x40 class CPlayerPawnComponent { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x8 }; // Alignment: 1 // Size: 0x40 class CPlayerControllerComponent { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x8 }; // Alignment: 0 // Size: 0x40 class CPlayer_AutoaimServices : public CPlayerPawnComponent { public: // no members available }; // Alignment: 5 // Size: 0x78 struct audioparams_t { public: // MNetworkEnable // MNetworkEncoder Vector localSound[8]; // 0x8 // MNetworkEnable int32_t soundscapeIndex; // 0x68 // MNetworkEnable uint8_t localBits; // 0x6c private: [[maybe_unused]] uint8_t __pad006d[0x3]; // 0x6d public: // MNetworkEnable int32_t soundscapeEntityListIndex; // 0x70 // MNetworkEnable uint32_t soundEventHash; // 0x74 }; // Alignment: 14 // Size: 0x40 struct fogplayerparams_t { public: // MNetworkEnable // MNetworkUserGroup "PlayerFogController" CHandle< CFogController > m_hCtrl; // 0x8 float m_flTransitionTime; // 0xc Color m_OldColor; // 0x10 float m_flOldStart; // 0x14 float m_flOldEnd; // 0x18 float m_flOldMaxDensity; // 0x1c float m_flOldHDRColorScale; // 0x20 float m_flOldFarZ; // 0x24 Color m_NewColor; // 0x28 float m_flNewStart; // 0x2c float m_flNewEnd; // 0x30 float m_flNewMaxDensity; // 0x34 float m_flNewHDRColorScale; // 0x38 float m_flNewFarZ; // 0x3c }; // Alignment: 0 // Size: 0x40 class CPlayer_FlashlightServices : public CPlayerPawnComponent { public: // no members available }; // Alignment: 0 // Size: 0x40 class CPlayer_ItemServices : public CPlayerPawnComponent { public: // no members available }; // Alignment: 1 // Size: 0x20 class CInButtonState { public: uint64_t m_pButtonStates[3]; // 0x8 }; // Alignment: 13 // Size: 0x1b8 class CPlayer_MovementServices : public CPlayerPawnComponent { public: int32_t m_nImpulse; // 0x40 private: [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 public: CInButtonState m_nButtons; // 0x48 uint64_t m_nQueuedButtonDownMask; // 0x68 uint64_t m_nQueuedButtonChangeMask; // 0x70 uint64_t m_nButtonDoublePressed; // 0x78 uint32_t m_pButtonPressedCmdNumber[64]; // 0x80 uint32_t m_nLastCommandNumberProcessed; // 0x180 private: [[maybe_unused]] uint8_t __pad0184[0x4]; // 0x184 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" uint64_t m_nToggleButtonDownMask; // 0x188 // MNetworkEnable // MNetworkBitCount "12" // MNetworkMinValue "0" // MNetworkMaxValue "2048" // MNetworkEncodeFlags float m_flMaxspeed; // 0x190 float m_flForwardMove; // 0x194 float m_flLeftMove; // 0x198 float m_flUpMove; // 0x19c QAngle m_vecOldViewAngles; // 0x1a0 }; // Alignment: 4 // Size: 0x50 class CPlayer_ObserverServices : public CPlayerPawnComponent { public: // MNetworkEnable // MNetworkChangeCallback "OnObserverModeChanged" uint8_t m_iObserverMode; // 0x40 private: [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 public: // MNetworkEnable // MNetworkChangeCallback "OnObserverTargetChanged" CHandle< CBaseEntity > m_hObserverTarget; // 0x44 ObserverMode_t m_iObserverLastMode; // 0x48 bool m_bForcedObserverMode; // 0x4c }; // Alignment: 0 // Size: 0x40 class CPlayer_UseServices : public CPlayerPawnComponent { public: // no members available }; // Alignment: 0 // Size: 0x40 class CPlayer_WaterServices : public CPlayerPawnComponent { public: // no members available }; // Alignment: 6 // Size: 0xb0 class CPlayer_WeaponServices : public CPlayerPawnComponent { public: bool m_bAllowSwitchToNoWeapon; // 0x40 private: [[maybe_unused]] uint8_t __pad0041[0x7]; // 0x41 public: // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBasePlayerWeapon > > m_hMyWeapons; // 0x48 // MNetworkEnable CHandle< CBasePlayerWeapon > m_hActiveWeapon; // 0x60 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" CHandle< CBasePlayerWeapon > m_hLastWeapon; // 0x64 // MNetworkEnable uint16_t m_iAmmo[32]; // 0x68 bool m_bPreventWeaponPickup; // 0xa8 }; // Alignment: 1 // Size: 0x1 struct AmmoIndex_t { public: int8_t m_Value; // 0x0 }; // Alignment: 8 // Size: 0x40 struct WheeledPhysicsVehicleAeroData_t { public: // MPropertyDescription "Decays chassis linear velocity exponentially. Overrides the linear damping value from the model." float m_flLinearDamping; // 0x0 // MPropertyDescription "Decays chassis angular velocity exponentially. Overrides the angular damping value from the model." float m_flAngularDamping; // 0x4 // MPropertyDescription "Linear drag scale along each axis (X: Longitudinal, Y: Lateral, Z: Vertical). Multiplied by squared velocity along that axis to get the drag force." Vector m_vLinearDragParams; // 0x8 // MPropertyDescription "Angular drag scale about each axis (X: Roll, Y: Pitch, Z: Yaw). Multiplied by squared angular velocity (deg / sec) along that axis to get the drag torque." Vector m_vAngularDragParams; // 0x14 // MPropertyDescription "Front downforce scale from squared velocity along each axis (X: Longitudinal, Y: Lateral, Z: Vertical). Negative values generate lift." Vector m_vFrontDownforceParams; // 0x20 // MPropertyDescription "Rear downforce scale from squared velocity along each axis (X: Longitudinal, Y: Lateral, Z: Vertical). Negative values generate lift." Vector m_vRearDownforceParams; // 0x2c // MPropertyDescription "How far away from the center of mass is the linear drag applied, as a fraction of the maximum extent in the front (positive) or rear (negative) direction?" float m_flLinearDragLeverAsFractionOfExtent; // 0x38 // MPropertyDescription "How far away from the center of mass are the downforce forces applied, as a fraction of the maximum extent in that direction?" float m_flDownforceLeverAsFractionOfExtent; // 0x3c }; // Alignment: 5 // Size: 0x14 struct WheeledPhysicsVehicleDrivetrainData_t { public: // MPropertyDescription "Scale on the torque at low wheelspeeds, to help the wheels get unstuck from obstacles" float m_flDriveTorqueScaleAtLowSpinAngVel; // 0x0 // MPropertyDescription "Spin angular velocity above which DriveTorqueScaleAtLowSpinAngVel is fully disabled" float m_flLowSpinAngVelThreshold; // 0x4 // MPropertyDescription "Drivetrain-limited top speed in kilometers per hour (not incorporating drag or other losses)" float m_flDrivetrainLimitedTopSpeedKPH; // 0x8 // MPropertyDescription "Drivetrain-limited top speed in kilometers per hour when the car is in reverse (not incorporating drag or other losses)" float m_flDrivetrainLimitedTopSpeedReverseKPH; // 0xc // MPropertyDescription "Scale on the strength of the traction contol effect (0 to 1)" float m_flTractionControlScale; // 0x10 }; // Alignment: 5 // Size: 0x14 struct WheeledPhysicsVehicleTireModelData_t { public: // MPropertyDescription "Effective friction coefficient at the peak of the slip curve" float m_flPeakEffectiveFrictionCoeff; // 0x0 // MPropertyDescription "Friction coefficient at full sliding" float m_flSlidingFrictionCoeff; // 0x4 // MPropertyDescription "Slip value for peak force" float m_flPeakSlip; // 0x8 // MPropertyDescription "Slip value at the start of the full sliding region" float m_flFullSlidingSlip; // 0xc // MPropertyDescription "Initial slope of the linear portion of the slip curve (delta mu / delta slip)" float m_flSlope; // 0x10 }; // Alignment: 5 // Size: 0x38 struct WheeledPhysicsVehicleWheelData_t { public: // MPropertyDescription "Name of the physics body for this wheel" CUtlString m_sBodyName; // 0x0 WheeledPhysicsVehicleTireModelData_t m_LateralTireParams; // 0x8 WheeledPhysicsVehicleTireModelData_t m_LongitudinalTireParams; // 0x1c // MPropertyDescription "Linear drag on the wheel body (scaled by velocity, not velocity squared)" float m_flLinearDrag; // 0x30 // MPropertyDescription "Angular drag on the wheel body (scaled by angular velocity, not ang vel squared)" float m_flAngularDrag; // 0x34 }; // Alignment: 6 // Size: 0x30 struct WheeledPhysicsVehicleAxleData_t { public: // MPropertyDescription "Names of the physics bodies for the wheels associated with this axle" CUtlVector< CUtlString > m_vecWheelNames; // 0x0 // MPropertyDescription "Maximum drive torque (in Newton-meters) sent to this axle when the vehicle is moving forward" float m_flMaxDriveTorqueNm; // 0x18 // MPropertyDescription "Maximum drive torque (in Newton-meters) sent to this axle when the vehicle is in reverse" float m_flMaxDriveTorqueReverseNm; // 0x1c // MPropertyDescription "Maximum brake torque delivered to this axle" float m_flMaxBrakeTorqueNm; // 0x20 // MPropertyDescription "Maximum handbrake torque delivered to this axle" float m_flMaxHandbrakeTorqueNm; // 0x24 // MPropertyDescription "Is this axle steered?" bool m_bIsSteered; // 0x28 }; // Alignment: 23 // Size: 0xd8 struct WheeledPhysicsVehiclePhysicsData_t { public: CUtlString m_sChassisBodyName; // 0x0 // MPropertyDescription "How is the vehicle oriented relative to its root bone in ModelDoc?" WheeledPhysicsVehicleChassisFrame_t m_nChassisFrame; // 0x8 private: [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc public: CUtlVector< WheeledPhysicsVehicleWheelData_t > m_vecWheels; // 0x10 CUtlVector< WheeledPhysicsVehicleAxleData_t > m_vecAxles; // 0x28 WheeledPhysicsVehicleDrivetrainData_t m_Drivetrain; // 0x40 WheeledPhysicsVehicleAeroData_t m_Aero; // 0x54 // MPropertyDescription "Wheel angular velocity at which we start blending between stationary (Coulomb) friction and rolling tire friction" float m_flRollingFrictionBlendMinWheelSpinAngVel; // 0x94 // MPropertyDescription "Wheel angular velocity at which rolling tire friction fully blended in" float m_flRollingFrictionBlendMaxWheelSpinAngVel; // 0x98 // MPropertyDescription "Angle (from horizontal) at which a surface is considered "steep" and uses different tire behavior to make it harder to drive on" float m_flSteepSurfaceAngle; // 0x9c // MPropertyDescription "Friction scale to use on a steep surface" float m_flSteepSurfaceFrictionScale; // 0xa0 float m_flShallowSurfaceLongitudinalCollisionScale; // 0xa4 float m_flShallowSurfaceLateralCollisionScale; // 0xa8 float m_flSteepSurfaceLongitudinalCollisionScale; // 0xac float m_flSteepSurfaceLateralCollisionScale; // 0xb0 // MPropertyDescription "The maximum angle (in degrees) we allow the player to steer" float m_flMaxSteeringAngle; // 0xb4 // MPropertyDescription "Converts upward contact force on the vehicle chassis (which reduces available tire grip) into an artificial thrust force to help the vehicle get unstuck when high-centered." float m_flHighCenteredThrustScale; // 0xb8 // MPropertyDescription "Yaw damping applied to help straighten the vehicle out when steering straight" float m_flStraighteningYawDampingScale; // 0xbc // MPropertyDescription "Steering input at which the straightening yaw damping is fully faded out" float m_flMaxSteeringInputForStraighteningYawDamping; // 0xc0 // MPropertyDescription "Should gameplay code manually control the vehicle's roll angle?" bool m_bStabilizeRoll; // 0xc4 // MPropertyDescription "Should gameplay code manually control the vehicle's pitch angle?" bool m_bStabilizePitch; // 0xc5 private: [[maybe_unused]] uint8_t __pad00c6[0x2]; // 0xc6 public: // MPropertyDescription "Scale on the gravity force applied to the vehicle's bodies" float m_flGravityScale; // 0xc8 // MPropertyDescription "Angular damping applied to the wheels when the vehicle is unmanned. We want this to be nonzero so the wheels don't spin forever when the vehicle is flipped over" float m_flUnmannedWheelAngularDamping; // 0xcc // MPropertyDescription "Scale on the force of buoyancy and water drag" float m_flBuoyancyFactor; // 0xd0 }; // Alignment: 4 // Size: 0x10 struct WheeledPhysicsVehicleLookSteeringData_t { public: float m_flLowSpeedKPHForSensitivity; // 0x0 float m_flHighSpeedKPHForSensitivity; // 0x4 float m_flSensitivityAtLowSpeed; // 0x8 float m_flSensitivityAtHighSpeed; // 0xc }; // Alignment: 20 // Size: 0x5c struct WheeledPhysicsVehicleControlsData_t { public: // MPropertyDescription "Rate at which the throttle input increases when the user is pressing a throttle button" float m_flThrottleRiseRate; // 0x0 // MPropertyDescription "Rate at which the throttle input decreases when the user is not pressing a throttle button" float m_flThrottleFallRate; // 0x4 // MPropertyDescription "Rate at which the brake input increases when the user is pressing the brake button" float m_flBrakeRiseRate; // 0x8 // MPropertyDescription "Rate at which the brake input decreases when the user is not pressing the brake button" float m_flBrakeFallRate; // 0xc // MPropertyDescription "The in-game throttle / brake input must reach this value before we start to accelerate / brake" float m_flThrottleBrakeDeadzone; // 0x10 // MPropertyDescription "Rate at which the handbrake input increases when the user is pressing the brake button" float m_flHandbrakeRiseRate; // 0x14 // MPropertyDescription "Rate at which the handbrake input decreases when the user is not pressing the brake button" float m_flHandbrakeFallRate; // 0x18 // MPropertyDescription "Rate at which the steering input increases when the user is pressing the left or right steering button" float m_flSteeringRiseRate; // 0x1c // MPropertyDescription "Rate at which the steering input decreases when the user is not pressing a steering button" float m_flSteeringFallRate; // 0x20 // MPropertyDescription "The in-game steering input must reach this value before we start to steer. (Helps the user drive straight forward/backward on a gamepad) " float m_flSteeringDeadzone; // 0x24 // MPropertyDescription "If we're below this speed and we're holding down the brake button, we'll switch to reverse" float m_flMaxSpeedToEnterReverseKPH; // 0x28 // MPropertyDescription "If we're below this speed and not pushing any controls, we'll automatically apply the brake" float m_flMaxSpeedToAutoBrakeKPH; // 0x2c // MPropertyDescription "Max steering range at low speed" float m_flSteeringRangeAtLowSpeed; // 0x30 // MPropertyDescription "Max steering range at high speed" float m_flSteeringRangeAtHighSpeed; // 0x34 // MPropertyDescription "Fraction of top speed below which we use the full steering range (between the low and high speed thresholds, we blend the range)" float m_flLowSpeedFractionForSteeringRangeScale; // 0x38 // MPropertyDescription "Fraction of top speed above which we use the limited steering range (between the low and high speed thresholds, we blend the range) " float m_flHighSpeedFractionForSteeringRangeScale; // 0x3c // MPropertyDescription "Scale on the steering rise and fall rates at high speeds" float m_flSteeringRateScaleAtHighSpeed; // 0x40 // MPropertyDescription "Fraction of top speed below which we use the base steering rise/fall rates (between the low and high speed thresholds, we blend the rates)" float m_flLowSpeedFractionForSteeringRateScale; // 0x44 // MPropertyDescription "Fraction of top speed above which we use the scaled steering rise/fall rates (between the low and high speed thresholds, we blend the rates) " float m_flHighSpeedFractionForSteeringRateScale; // 0x48 WheeledPhysicsVehicleLookSteeringData_t m_LookSteering; // 0x4c }; // Alignment: 5 // Size: 0x14 struct WheeledPhysicsVehicleCameraData_t { public: // MPropertyDescription "There must be at least this much difference between the current and desired camera pitch angle before we start to adjust the camera." float m_flPitchDeadzone; // 0x0 // MPropertyDescription "If the desired camera pitch is more upward than the current pitch, we'll wait this long before we start to adjust the camera." float m_flTimeBeforeResolvingUpwardPitchViolation; // 0x4 // MPropertyDescription "If the desired camera pitch is more downward than the current pitch, we'll wait this long before we start to adjust the camera." float m_flTimeBeforeResolvingDownwardPitchViolation; // 0x8 // MPropertyDescription "If the desired camera pitch is within the deadzone, we'll wait this long before restoring the camera to 0 pitch." float m_flTimeBeforeRestoringCameraToZeroPitch; // 0xc // MPropertyDescription "Time in which the camera tries to reach 63% of its target pitch angle" float m_flTargetPitchSmoothingTimeConstant; // 0x10 }; // Alignment: 5 // Size: 0x38 struct AmmoTypeInfo_t { public: int32_t m_nMaxCarry; // 0x10 private: [[maybe_unused]] uint8_t __pad0014[0x8]; // 0x14 public: CRangeInt m_nSplashSize; // 0x1c AmmoFlags_t m_nFlags; // 0x24 float m_flMass; // 0x28 CRangeFloat m_flSpeed; // 0x2c }; // Alignment: 33 // Size: 0x150 class CGameSceneNode { public: // MNetworkDisable CTransform m_nodeToWorld; // 0x10 // MNetworkDisable CEntityInstance* m_pOwner; // 0x30 // MNetworkDisable CGameSceneNode* m_pParent; // 0x38 // MNetworkDisable CGameSceneNode* m_pChild; // 0x40 // MNetworkDisable CGameSceneNode* m_pNextSibling; // 0x48 private: [[maybe_unused]] uint8_t __pad0050[0x20]; // 0x50 public: // MNetworkEnable // MNetworkSerializer "gameSceneNode" // MNetworkChangeCallback "gameSceneNodeHierarchyParentChanged" // MNetworkPriority "32" // MNetworkVarEmbeddedFieldOffsetDelta "8" CGameSceneNodeHandle m_hParent; // 0x70 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Origin" // MNetworkChangeCallback "gameSceneNodeLocalOriginChanged" CNetworkOriginCellCoordQuantizedVector m_vecOrigin; // 0x80 private: [[maybe_unused]] uint8_t __pad00b0[0x8]; // 0xb0 public: // MNetworkEnable // MNetworkPriority "32" // MNetworkSerializer "gameSceneNodeStepSimulationAnglesSerializer" // MNetworkChangeCallback "gameSceneNodeLocalAnglesChanged" QAngle m_angRotation; // 0xb8 // MNetworkEnable // MNetworkChangeCallback "gameSceneNodeLocalScaleChanged" // MNetworkPriority "32" float m_flScale; // 0xc4 // MNetworkDisable Vector m_vecAbsOrigin; // 0xc8 // MNetworkDisable QAngle m_angAbsRotation; // 0xd4 // MNetworkDisable float m_flAbsScale; // 0xe0 // MNetworkDisable int16_t m_nParentAttachmentOrBone; // 0xe4 // MNetworkDisable bool m_bDebugAbsOriginChanges; // 0xe6 // MNetworkDisable bool m_bDormant; // 0xe7 // MNetworkDisable bool m_bForceParentToBeNetworked; // 0xe8 struct { // MNetworkDisable uint8_t m_bDirtyHierarchy: 1; // MNetworkDisable uint8_t m_bDirtyBoneMergeInfo: 1; // MNetworkDisable uint8_t m_bNetworkedPositionChanged: 1; // MNetworkDisable uint8_t m_bNetworkedAnglesChanged: 1; // MNetworkDisable uint8_t m_bNetworkedScaleChanged: 1; // MNetworkDisable uint8_t m_bWillBeCallingPostDataUpdate: 1; // MNetworkDisable uint8_t m_bNotifyBoneTransformsChanged: 1; // MNetworkDisable uint8_t m_bBoneMergeFlex: 1; // MNetworkDisable uint8_t m_nLatchAbsOrigin: 2; // MNetworkDisable uint8_t m_bDirtyBoneMergeBoneToRoot: 1; uint16_t __pad0: 13; }; // 24 bits // MNetworkDisable uint8_t m_nHierarchicalDepth; // 0xeb // MNetworkDisable uint8_t m_nHierarchyType; // 0xec // MNetworkDisable uint8_t m_nDoNotSetAnimTimeInInvalidatePhysicsCount; // 0xed private: [[maybe_unused]] uint8_t __pad00ee[0x2]; // 0xee public: // MNetworkEnable CUtlStringToken m_name; // 0xf0 private: [[maybe_unused]] uint8_t __pad00f4[0x3c]; // 0xf4 public: // MNetworkEnable // MNetworkChangeCallback "gameSceneNodeHierarchyAttachmentChanged" CUtlStringToken m_hierarchyAttachName; // 0x130 // MNetworkDisable float m_flZOffset; // 0x134 // MNetworkDisable Vector m_vRenderOrigin; // 0x138 }; // Alignment: 2 // Size: 0x48 struct EntityRenderAttribute_t { public: // MNetworkEnable CUtlStringToken m_ID; // 0x30 // MNetworkEnable Vector4D m_Values; // 0x34 }; // Alignment: 1 // Size: 0x4 struct ModelConfigHandle_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 4 // Size: 0x68 struct ActiveModelConfig_t { public: // MNetworkEnable ModelConfigHandle_t m_Handle; // 0x28 private: [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c public: // MNetworkEnable CUtlSymbolLarge m_Name; // 0x30 // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_AssociatedEntities; // 0x38 // MNetworkEnable CNetworkUtlVectorBase< CUtlSymbolLarge > m_AssociatedEntityNames; // 0x50 }; // Alignment: 8 // Size: 0x240 class CModelState { public: // MNetworkEnable // MNetworkChangeCallback "skeletonModelChanged" CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0xa0 // MNetworkDisable CUtlSymbolLarge m_ModelName; // 0xa8 private: [[maybe_unused]] uint8_t __pad00b0[0x40]; // 0xb0 public: // MNetworkEnable bool m_bClientClothCreationSuppressed; // 0xf0 private: [[maybe_unused]] uint8_t __pad00f1[0x97]; // 0xf1 public: // MNetworkEnable // MNetworkChangeCallback "skeletonMeshGroupMaskChanged" uint64_t m_MeshGroupMask; // 0x188 private: [[maybe_unused]] uint8_t __pad0190[0x9a]; // 0x190 public: // MNetworkEnable // MNetworkChangeCallback "skeletonMotionTypeChanged" int8_t m_nIdealMotionType; // 0x22a // MNetworkDisable int8_t m_nForceLOD; // 0x22b // MNetworkDisable bool m_bIsJiggleBonesEnabled; // 0x22c // MNetworkDisable int8_t m_nClothUpdateFlags; // 0x22d }; // Alignment: 8 // Size: 0x400 class CSkeletonInstance : public CGameSceneNode { public: // MNetworkEnable CModelState m_modelState; // 0x160 // MNetworkEnable bool m_bIsAnimationEnabled; // 0x3a0 // MNetworkEnable bool m_bUseParentRenderBounds; // 0x3a1 // MNetworkDisable bool m_bDisableSolidCollisionsForHierarchy; // 0x3a2 struct { // MNetworkDisable uint8_t m_bDirtyMotionType: 1; // MNetworkDisable uint8_t m_bIsGeneratingLatchedParentSpaceState: 1; uint16_t __pad1: 14; }; // 16 bits // MNetworkEnable // MNetworkChangeCallback "skeletonMaterialGroupChanged" CUtlStringToken m_materialGroup; // 0x3a4 // MNetworkEnable uint8_t m_nHitboxSet; // 0x3a8 }; // Alignment: 3 // Size: 0x28 class CNetworkOriginQuantizedVector { public: // MNetworkBitCount "19" // MNetworkMinValue "-16384" // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "19" // MNetworkMinValue "-16384" // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "19" // MNetworkMinValue "-16384" // MNetworkMaxValue "16384" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkOriginQuantizedVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 }; // Alignment: 3 // Size: 0x28 class CNetworkVelocityVector { public: // MNetworkBitCount "18" // MNetworkMinValue "-4096" // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "18" // MNetworkMinValue "-4096" // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "18" // MNetworkMinValue "-4096" // MNetworkMaxValue "4096" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkVelocityVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 }; // Alignment: 3 // Size: 0x28 class CNetworkViewOffsetVector { public: // MNetworkBitCount "10" // MNetworkMinValue "-64" // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecX; // 0x10 // MNetworkBitCount "10" // MNetworkMinValue "-64" // MNetworkMaxValue "64" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecY; // 0x18 // MNetworkBitCount "20" // MNetworkMinValue "0" // MNetworkMaxValue "128" // MNetworkEncodeFlags // MNetworkChangeCallback "CNetworkViewOffsetVector" CNetworkedQuantizedFloat m_vecZ; // 0x20 }; // Alignment: 71 // Size: 0x1d8 class CLightComponent : public CEntityComponent { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x48 private: [[maybe_unused]] uint8_t __pad0070[0x15]; // 0x70 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" Color m_Color; // 0x85 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" Color m_SecondaryColor; // 0x89 private: [[maybe_unused]] uint8_t __pad008d[0x3]; // 0x8d public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flBrightness; // 0x90 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flBrightnessScale; // 0x94 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flBrightnessMult; // 0x98 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flRange; // 0x9c // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flFalloff; // 0xa0 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flAttenuation0; // 0xa4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flAttenuation1; // 0xa8 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flAttenuation2; // 0xac // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flTheta; // 0xb0 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flPhi; // 0xb4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightCookie; // 0xb8 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nCascades; // 0xc0 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nCastShadows; // 0xc4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowWidth; // 0xc8 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowHeight; // 0xcc // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bRenderDiffuse; // 0xd0 private: [[maybe_unused]] uint8_t __pad00d1[0x3]; // 0xd1 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nRenderSpecular; // 0xd4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bRenderTransmissive; // 0xd8 private: [[maybe_unused]] uint8_t __pad00d9[0x3]; // 0xd9 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flOrthoLightWidth; // 0xdc // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flOrthoLightHeight; // 0xe0 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nStyle; // 0xe4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" CUtlString m_Pattern; // 0xe8 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nCascadeRenderStaticObjects; // 0xf0 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeCrossFade; // 0xf4 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeDistanceFade; // 0xf8 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeDistance0; // 0xfc // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeDistance1; // 0x100 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeDistance2; // 0x104 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowCascadeDistance3; // 0x108 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowCascadeResolution0; // 0x10c // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowCascadeResolution1; // 0x110 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowCascadeResolution2; // 0x114 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowCascadeResolution3; // 0x118 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nBakeLightIndex; // 0x11c // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flBakeLightIndexScale; // 0x120 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bUsesIndexedBakedLighting; // 0x124 private: [[maybe_unused]] uint8_t __pad0125[0x3]; // 0x125 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nPriority; // 0x128 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nShadowPriority; // 0x12c // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" int32_t m_nBakedShadowIndex; // 0x130 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bRenderToCubemaps; // 0x134 private: [[maybe_unused]] uint8_t __pad0135[0x3]; // 0x135 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" CUtlSymbolLarge m_LightGroups; // 0x138 // MNetworkEnable int32_t m_nDirectLight; // 0x140 // MNetworkEnable int32_t m_nIndirectLight; // 0x144 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flFadeMinDist; // 0x148 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flFadeMaxDist; // 0x14c // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowFadeMinDist; // 0x150 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flShadowFadeMaxDist; // 0x154 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bEnabled; // 0x158 // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" bool m_bFlicker; // 0x159 // MNetworkEnable bool m_bPrecomputedFieldsValid; // 0x15a private: [[maybe_unused]] uint8_t __pad015b[0x1]; // 0x15b public: // MNetworkEnable Vector m_vPrecomputedBoundsMins; // 0x15c // MNetworkEnable Vector m_vPrecomputedBoundsMaxs; // 0x168 // MNetworkEnable Vector m_vPrecomputedOBBOrigin; // 0x174 // MNetworkEnable QAngle m_vPrecomputedOBBAngles; // 0x180 // MNetworkEnable Vector m_vPrecomputedOBBExtent; // 0x18c // MNetworkEnable float m_flPrecomputedMaxRange; // 0x198 // MNetworkEnable int32_t m_nFogLightingMode; // 0x19c // MNetworkEnable float m_flFogContributionStength; // 0x1a0 // MNetworkEnable float m_flNearClipPlane; // 0x1a4 // MNetworkEnable Color m_SkyColor; // 0x1a8 // MNetworkEnable float m_flSkyIntensity; // 0x1ac // MNetworkEnable Color m_SkyAmbientBounce; // 0x1b0 // MNetworkEnable bool m_bUseSecondaryColor; // 0x1b4 // MNetworkEnable // MNetworkChangeCallback "MixedShadowsChanged" bool m_bMixedShadows; // 0x1b5 private: [[maybe_unused]] uint8_t __pad01b6[0x2]; // 0x1b6 public: // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" GameTime_t m_flLightStyleStartTime; // 0x1b8 // MNetworkEnable float m_flCapsuleLength; // 0x1bc // MNetworkEnable // MNetworkChangeCallback "LightRenderingChanged" float m_flMinRoughness; // 0x1c0 private: [[maybe_unused]] uint8_t __pad01c4[0xc]; // 0x1c4 public: bool m_bPvsModifyEntity; // 0x1d0 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CLightComponent")->m_static_fields[1]->m_instance);}; }; // Alignment: 1 // Size: 0x4 struct GameTick_t { public: int32_t m_Value; // 0x0 static GameTick_t &Get_Zero(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("GameTick_t")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 // Size: 0x480 class CBodyComponentSkeletonInstance : public CBodyComponent { public: // MNetworkEnable CSkeletonInstance m_skeletonInstance; // 0x50 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x450 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentSkeletonInstance")->m_static_fields[1]->m_instance);}; }; // Alignment: 2 // Size: 0x1d0 class CBodyComponentPoint : public CBodyComponent { public: // MNetworkEnable CGameSceneNode m_sceneNode; // 0x50 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x1a0 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentPoint")->m_static_fields[1]->m_instance);}; }; // Alignment: 0 // Size: 0x8 class IChoreoServices { public: static uint32_t &Get_ms_uSequenceId(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("IChoreoServices")->m_static_fields[0]->m_instance);}; // no members available }; // Alignment: 14 // Size: 0x208 class CPlayer_MovementServices_Humanoid : public CPlayer_MovementServices { public: float m_flStepSoundTime; // 0x1b8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkBitCount "17" // MNetworkMinValue "-4096" // MNetworkMaxValue "4096" // MNetworkEncodeFlags float m_flFallVelocity; // 0x1bc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" bool m_bInCrouch; // 0x1c0 private: [[maybe_unused]] uint8_t __pad01c1[0x3]; // 0x1c1 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" uint32_t m_nCrouchState; // 0x1c4 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" GameTime_t m_flCrouchTransitionStartTime; // 0x1c8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" bool m_bDucked; // 0x1cc // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" bool m_bDucking; // 0x1cd // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" bool m_bInDuckJump; // 0x1ce private: [[maybe_unused]] uint8_t __pad01cf[0x1]; // 0x1cf public: Vector m_groundNormal; // 0x1d0 float m_flSurfaceFriction; // 0x1dc CUtlStringToken m_surfaceProps; // 0x1e0 private: [[maybe_unused]] uint8_t __pad01e4[0xc]; // 0x1e4 public: int32_t m_nStepside; // 0x1f0 int32_t m_iTargetVolume; // 0x1f4 Vector m_vecSmoothedVelocity; // 0x1f8 }; // Alignment: 10 // Size: 0x60 class JiggleData { public: int32_t bone; // 0x0 int32_t id; // 0x4 float lastUpdate; // 0x8 Vector basePos; // 0xc Vector baseLastPos; // 0x18 Vector baseVel; // 0x24 Vector baseAccel; // 0x30 Vector tipPos; // 0x3c Vector tipVel; // 0x48 Vector tipAccel; // 0x54 }; // Alignment: 0 // Size: 0x20 class CJiggleBones { public: // no members available }; // Alignment: 1 // Size: 0x10 class CSkeletonAnimationController { public: // MNetworkDisable CSkeletonInstance* m_pSkeletonInstance; // 0x8 }; // Alignment: 8 // Size: 0x28 class CNetworkedSequenceOperation { public: // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkChangeCallback "sequenceOpSequenceChanged" // MNetworkPriority "32" HSequence m_hSequence; // 0x8 // MNetworkEnable // MNetworkBitCount "15" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter // MNetworkUserGroup "m_flCycle" float m_flPrevCycle; // 0xc // MNetworkEnable // MNetworkBitCount "15" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkSendProxyRecipientsFilter // MNetworkUserGroup "m_flCycle" // MNetworkChangeCallback "sequenceOpCycleChanged" float m_flCycle; // 0x10 // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags CNetworkedQuantizedFloat m_flWeight; // 0x14 // MNetworkDisable bool m_bSequenceChangeNetworked; // 0x1c // MNetworkDisable bool m_bDiscontinuity; // 0x1d private: [[maybe_unused]] uint8_t __pad001e[0x2]; // 0x1e public: // MNetworkDisable float m_flPrevCycleFromDiscontinuity; // 0x20 // MNetworkDisable float m_flPrevCycleForAnimEventDetection; // 0x24 }; // Alignment: 1 // Size: 0x4b0 class CBodyComponentBaseModelEntity : public CBodyComponentSkeletonInstance { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x480 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseModelEntity")->m_static_fields[1]->m_instance);}; }; // Alignment: 11 // Size: 0x108 class CBaseAnimGraphController : public CSkeletonAnimationController { public: // MNetworkEnable // MNetworkChangeCallback "baseAnimBaseLayerChangedCompat" CNetworkedSequenceOperation m_baseLayer; // 0x18 private: [[maybe_unused]] uint8_t __pad0040[0x8]; // 0x40 public: // MNetworkDisable bool m_bSequenceFinished; // 0x48 private: [[maybe_unused]] uint8_t __pad0049[0x3]; // 0x49 public: // MNetworkDisable float m_flGroundSpeed; // 0x4c // MNetworkDisable float m_flLastEventCycle; // 0x50 // MNetworkDisable float m_flLastEventAnimTime; // 0x54 // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "5" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkChangeCallback "playbackRateChangedCompat" CNetworkedQuantizedFloat m_flPlaybackRate; // 0x58 // MNetworkDisable float m_flPrevAnimTime; // 0x60 // MNetworkEnable // MNetworkChangeCallback "clientSideAnimationChangedCompat" bool m_bClientSideAnimation; // 0x64 // MNetworkDisable bool m_bNetworkedAnimationInputsChanged; // 0x65 private: [[maybe_unused]] uint8_t __pad0066[0x2]; // 0x66 public: // MNetworkEnable // MNetworkPriority "32" // MNetworkChangeCallback "clientSideAnimCycleResetCompat" int32_t m_nNewSequenceParity; // 0x68 // MNetworkEnable // MNetworkPriority "32" int32_t m_nResetEventsParity; // 0x6c }; // Alignment: 2 // Size: 0x10 class IntervalTimer { public: // MNetworkEnable GameTime_t m_timestamp; // 0x8 // MNetworkEnable WorldGroupId_t m_nWorldGroupId; // 0xc }; // Alignment: 4 // Size: 0x18 class CountdownTimer { public: // MNetworkEnable float m_duration; // 0x8 // MNetworkEnable GameTime_t m_timestamp; // 0xc // MNetworkEnable float m_timescale; // 0x10 // MNetworkEnable WorldGroupId_t m_nWorldGroupId; // 0x14 }; // Alignment: 3 // Size: 0x18 class EngineCountdownTimer { public: // MNetworkEnable float m_duration; // 0x8 // MNetworkEnable float m_timestamp; // 0xc // MNetworkEnable float m_timescale; // 0x10 }; // Alignment: 7 // Size: 0x228 class CTimeline : public IntervalTimer { public: // MNetworkEnable float m_flValues[64]; // 0x10 // MNetworkEnable int32_t m_nValueCounts[64]; // 0x110 // MNetworkEnable int32_t m_nBucketCount; // 0x210 // MNetworkEnable float m_flInterval; // 0x214 // MNetworkEnable float m_flFinalValue; // 0x218 // MNetworkEnable TimelineCompression_t m_nCompressionType; // 0x21c // MNetworkEnable bool m_bStopped; // 0x220 }; // Alignment: 20 // Size: 0x1a8 class CAnimGraphNetworkedVariables { public: // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetBoolVarChanged" // MNetworkAlias "m_PredBoolVariables" CNetworkUtlVectorBase< uint32 > m_PredNetBoolVariables; // 0x8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetByteVarChanged" // MNetworkAlias "m_PredByteVariables" CNetworkUtlVectorBase< uint8 > m_PredNetByteVariables; // 0x20 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetUInt16VarChanged" // MNetworkAlias "m_PredUInt16Variables" CNetworkUtlVectorBase< uint16 > m_PredNetUInt16Variables; // 0x38 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetIntVarChanged" // MNetworkAlias "m_PredIntVariables" CNetworkUtlVectorBase< int32 > m_PredNetIntVariables; // 0x50 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetUInt32VarChanged" // MNetworkAlias "m_PredUInt32Variables" CNetworkUtlVectorBase< uint32 > m_PredNetUInt32Variables; // 0x68 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetFloatVarChanged" // MNetworkAlias "m_PredFloatVariables" CNetworkUtlVectorBase< float32 > m_PredNetFloatVariables; // 0x80 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetVectorVarChanged" // MNetworkAlias "m_PredVectorVariables" CNetworkUtlVectorBase< Vector > m_PredNetVectorVariables; // 0x98 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkChangeCallback "OnNetQuaternionVarChanged" // MNetworkAlias "m_PredQuaternionVariables" CNetworkUtlVectorBase< Quaternion > m_PredNetQuaternionVariables; // 0xb0 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOBoolVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetBoolVariables" CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetBoolVariables; // 0xc8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOByteVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetByteVariables" CNetworkUtlVectorBase< uint8 > m_OwnerOnlyPredNetByteVariables; // 0xe0 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt16VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt16Variables" CNetworkUtlVectorBase< uint16 > m_OwnerOnlyPredNetUInt16Variables; // 0xf8 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOIntVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetIntVariables" CNetworkUtlVectorBase< int32 > m_OwnerOnlyPredNetIntVariables; // 0x110 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOUInt32VarChanged" // MNetworkAlias "m_OwnerOnlyPredNetUInt32Variables" CNetworkUtlVectorBase< uint32 > m_OwnerOnlyPredNetUInt32Variables; // 0x128 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOFloatVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetFloatVariables" CNetworkUtlVectorBase< float32 > m_OwnerOnlyPredNetFloatVariables; // 0x140 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOVectorVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetVectorVariables" CNetworkUtlVectorBase< Vector > m_OwnerOnlyPredNetVectorVariables; // 0x158 // MNetworkEnable // MNetworkUserGroup "animationgraph" // MNetworkSendProxyRecipientsFilter // MNetworkChangeCallback "OnNetOOQuaternionVarChanged" // MNetworkAlias "m_OwnerOnlyPredNetQuaternionVariables" CNetworkUtlVectorBase< Quaternion > m_OwnerOnlyPredNetQuaternionVariables; // 0x170 // MNetworkEnable int32_t m_nBoolVariablesCount; // 0x188 // MNetworkEnable int32_t m_nOwnerOnlyBoolVariablesCount; // 0x18c // MNetworkEnable int32_t m_nRandomSeedOffset; // 0x190 // MNetworkEnable // MNetworkUserGroup "animationgraph" float m_flLastTeleportTime; // 0x194 }; // Alignment: 0 // Size: 0x8 class CFootstepTableHandle { public: // no members available }; // Alignment: 8 // Size: 0x31 class ResponseFollowup { public: char* followup_concept; // 0x0 char* followup_contexts; // 0x8 float followup_delay; // 0x10 char* followup_target; // 0x14 char* followup_entityiotarget; // 0x1c char* followup_entityioinput; // 0x24 float followup_entityiodelay; // 0x2c bool bFired; // 0x30 }; // Alignment: 3 // Size: 0x20 class ResponseParams { public: int16_t odds; // 0x10 int16_t flags; // 0x12 private: [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 public: ResponseFollowup* m_pFollowup; // 0x18 }; // Alignment: 2 // Size: 0x30 class CResponseCriteriaSet { public: int32_t m_nNumPrefixedContexts; // 0x28 bool m_bOverrideOnAppend; // 0x2c }; // Alignment: 10 // Size: 0x1e8 class CRR_Response { public: uint8_t m_Type; // 0x0 char m_szResponseName[192]; // 0x1 char m_szMatchingRule[128]; // 0xc1 private: [[maybe_unused]] uint8_t __pad0141[0x7]; // 0x141 public: ResponseParams m_Params; // 0x148 float m_fMatchScore; // 0x168 private: [[maybe_unused]] uint8_t __pad016c[0x4]; // 0x16c public: char* m_szSpeakerContext; // 0x170 char* m_szWorldContext; // 0x178 ResponseFollowup m_Followup; // 0x180 private: [[maybe_unused]] uint8_t __pad01b1[0x7]; // 0x1b1 public: CUtlVector< CUtlSymbol > m_pchCriteriaNames; // 0x1b8 CUtlVector< char* > m_pchCriteriaValues; // 0x1d0 }; // Alignment: 2 // Size: 0x1f0 struct ConceptHistory_t { public: float timeSpoken; // 0x0 CRR_Response m_response; // 0x8 }; // Alignment: 9 // Size: 0x60 class CAI_Expresser { public: GameTime_t m_flStopTalkTime; // 0x38 GameTime_t m_flStopTalkTimeWithoutDelay; // 0x3c GameTime_t m_flBlockedTalkTime; // 0x40 int32_t m_voicePitch; // 0x44 GameTime_t m_flLastTimeAcceptedSpeak; // 0x48 bool m_bAllowSpeakingInterrupts; // 0x4c bool m_bConsiderSceneInvolvementAsSpeech; // 0x4d private: [[maybe_unused]] uint8_t __pad004e[0x2]; // 0x4e public: int32_t m_nLastSpokenPriority; // 0x50 private: [[maybe_unused]] uint8_t __pad0054[0x4]; // 0x54 public: CBaseFlex* m_pOuter; // 0x58 }; // Alignment: 1 // Size: 0x68 class CResponseQueue { public: CUtlVector< CAI_Expresser* > m_ExpresserTargets; // 0x50 }; // Alignment: 5 // Size: 0x240 class CResponseQueue::CDeferredResponse { public: CResponseCriteriaSet m_contexts; // 0x10 float m_fDispatchTime; // 0x40 CHandle< CBaseEntity > m_hIssuer; // 0x44 private: [[maybe_unused]] uint8_t __pad0048[0x8]; // 0x48 public: CRR_Response m_response; // 0x50 bool m_bResponseValid; // 0x238 }; // Alignment: 1 // Size: 0x70 class CAI_ExpresserWithFollowup : public CAI_Expresser { public: ResponseFollowup* m_pPostponedFollowup; // 0x60 }; // Alignment: 1 // Size: 0x78 class CMultiplayer_Expresser : public CAI_ExpresserWithFollowup { public: bool m_bAllowMultipleScenes; // 0x70 }; // Alignment: 10 // Size: 0x60 class CCommentarySystem { public: bool m_bCommentaryConvarsChanging; // 0x11 bool m_bCommentaryEnabledMidGame; // 0x12 private: [[maybe_unused]] uint8_t __pad0013[0x1]; // 0x13 public: GameTime_t m_flNextTeleportTime; // 0x14 int32_t m_iTeleportStage; // 0x18 bool m_bCheatState; // 0x1c bool m_bIsFirstSpawnGroupToLoad; // 0x1d private: [[maybe_unused]] uint8_t __pad001e[0x1a]; // 0x1e public: CHandle< CPointCommentaryNode > m_hCurrentNode; // 0x38 CHandle< CPointCommentaryNode > m_hActiveCommentaryNode; // 0x3c CHandle< CPointCommentaryNode > m_hLastCommentaryNode; // 0x40 private: [[maybe_unused]] uint8_t __pad0044[0x4]; // 0x44 public: CUtlVector< CHandle< CPointCommentaryNode > > m_vecNodes; // 0x48 }; // Alignment: 1 // Size: 0x18 class CPhysicsShake { public: Vector m_force; // 0x8 }; // Alignment: 16 // Size: 0x5c class CGameScriptedMoveData { public: Vector m_vDest; // 0x0 Vector m_vSrc; // 0xc QAngle m_angSrc; // 0x18 QAngle m_angDst; // 0x24 QAngle m_angCurrent; // 0x30 float m_flAngRate; // 0x3c float m_flDuration; // 0x40 GameTime_t m_flStartTime; // 0x44 MoveType_t m_nPrevMoveType; // 0x48 bool m_bActive; // 0x49 bool m_bTeleportOnEnd; // 0x4a bool m_bIgnoreRotation; // 0x4b ScriptedMoveType_t m_nType; // 0x4c bool m_bSuccess; // 0x50 private: [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 public: ForcedCrouchState_t m_nForcedCrouchState; // 0x54 bool m_bIgnoreCollisions; // 0x58 }; // Alignment: 5 // Size: 0x20 class CGameChoreoServices : public IChoreoServices { public: CHandle< CBaseAnimGraph > m_hOwner; // 0x8 CHandle< CScriptedSequence > m_hScriptedSequence; // 0xc IChoreoServices::ScriptState_t m_scriptState; // 0x10 IChoreoServices::ChoreoState_t m_choreoState; // 0x14 GameTime_t m_flTimeStartedState; // 0x18 }; // Alignment: 9 // Size: 0x9 struct HullFlags_t { public: bool m_bHull_Human; // 0x0 bool m_bHull_SmallCentered; // 0x1 bool m_bHull_WideHuman; // 0x2 bool m_bHull_Tiny; // 0x3 bool m_bHull_Medium; // 0x4 bool m_bHull_TinyCentered; // 0x5 bool m_bHull_Large; // 0x6 bool m_bHull_LargeCentered; // 0x7 bool m_bHull_MediumTall; // 0x8 }; // Alignment: 4 // Size: 0x40 class CConstantForceController { public: Vector m_linear; // 0xc RotationVector m_angular; // 0x18 Vector m_linearSave; // 0x24 RotationVector m_angularSave; // 0x30 }; // Alignment: 4 // Size: 0x20 class CMotorController { public: float m_speed; // 0x8 float m_maxTorque; // 0xc Vector m_axis; // 0x10 float m_inertiaFactor; // 0x1c }; // Alignment: 4 // Size: 0x10 class CSoundEnvelope { public: float m_current; // 0x0 float m_target; // 0x4 float m_rate; // 0x8 bool m_forceupdate; // 0xc }; // Alignment: 2 // Size: 0x28 class CCopyRecipientFilter { public: int32_t m_Flags; // 0x8 private: [[maybe_unused]] uint8_t __pad000c[0x4]; // 0xc public: CUtlVector< CPlayerSlot > m_Recipients; // 0x10 }; // Alignment: 13 // Size: 0x90 class CSoundPatch { public: CSoundEnvelope m_pitch; // 0x8 CSoundEnvelope m_volume; // 0x18 private: [[maybe_unused]] uint8_t __pad0028[0x8]; // 0x28 public: float m_shutdownTime; // 0x30 float m_flLastTime; // 0x34 CUtlSymbolLarge m_iszSoundScriptName; // 0x38 CHandle< CBaseEntity > m_hEnt; // 0x40 CEntityIndex m_soundEntityIndex; // 0x44 Vector m_soundOrigin; // 0x48 int32_t m_isPlaying; // 0x54 CCopyRecipientFilter m_Filter; // 0x58 float m_flCloseCaptionDuration; // 0x80 bool m_bUpdatedSoundOrigin; // 0x84 private: [[maybe_unused]] uint8_t __pad0085[0x3]; // 0x85 public: CUtlSymbolLarge m_iszClassName; // 0x88 static int32_t &Get_g_SoundPatchCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CSoundPatch")->m_static_fields[0]->m_instance);}; }; // Alignment: 0 // Size: 0x20 class CTouchExpansionComponent : public CEntityComponent { public: static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTouchExpansionComponent")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_referenced_but_impl_is_contained(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTouchExpansionComponent")->m_static_fields[1]->m_instance);}; // no members available }; // Alignment: 25 // Size: 0x64 struct dynpitchvol_base_t { public: int32_t preset; // 0x0 int32_t pitchrun; // 0x4 int32_t pitchstart; // 0x8 int32_t spinup; // 0xc int32_t spindown; // 0x10 int32_t volrun; // 0x14 int32_t volstart; // 0x18 int32_t fadein; // 0x1c int32_t fadeout; // 0x20 int32_t lfotype; // 0x24 int32_t lforate; // 0x28 int32_t lfomodpitch; // 0x2c int32_t lfomodvol; // 0x30 int32_t cspinup; // 0x34 int32_t cspincount; // 0x38 int32_t pitch; // 0x3c int32_t spinupsav; // 0x40 int32_t spindownsav; // 0x44 int32_t pitchfrac; // 0x48 int32_t vol; // 0x4c int32_t fadeinsav; // 0x50 int32_t fadeoutsav; // 0x54 int32_t volfrac; // 0x58 int32_t lfofrac; // 0x5c int32_t lfomult; // 0x60 }; // Alignment: 0 // Size: 0x64 struct dynpitchvol_t : public dynpitchvol_base_t { public: // no members available }; // Alignment: 3 // Size: 0x18 struct ResponseContext_t { public: CUtlSymbolLarge m_iszName; // 0x0 CUtlSymbolLarge m_iszValue; // 0x8 GameTime_t m_fExpirationTime; // 0x10 }; // Alignment: 2 // Size: 0x8 struct Relationship_t { public: Disposition_t disposition; // 0x0 int32_t priority; // 0x4 }; // Alignment: 77 // Size: 0x498 class CBaseEntity : public CEntityInstance { public: // MNetworkEnable // MNetworkUserGroup "CBodyComponent" // MNetworkAlias "CBodyComponent" // MNetworkTypeAlias "CBodyComponent" // MNetworkPriority "48" CBodyComponent* m_CBodyComponent; // 0x30 CNetworkTransmitComponent m_NetworkTransmitComponent; // 0x38 private: [[maybe_unused]] uint8_t __pad01d8[0x40]; // 0x1d8 public: CUtlVector< thinkfunc_t > m_aThinkFunctions; // 0x218 int32_t m_iCurrentThinkContext; // 0x230 GameTick_t m_nLastThinkTick; // 0x234 private: [[maybe_unused]] uint8_t __pad0238[0x8]; // 0x238 public: CBitVec< 64 > m_isSteadyState; // 0x240 float m_lastNetworkChange; // 0x248 private: [[maybe_unused]] uint8_t __pad024c[0xc]; // 0x24c public: CUtlVector< ResponseContext_t > m_ResponseContexts; // 0x258 CUtlSymbolLarge m_iszResponseContext; // 0x270 private: [[maybe_unused]] uint8_t __pad0278[0x20]; // 0x278 public: // MNetworkEnable // MNetworkSerializer "ClampHealth" // MNetworkUserGroup "Player" // MNetworkPriority "32" int32_t m_iHealth; // 0x298 // MNetworkEnable int32_t m_iMaxHealth; // 0x29c // MNetworkEnable // MNetworkUserGroup "Player" // MNetworkPriority "32" uint8_t m_lifeState; // 0x2a0 private: [[maybe_unused]] uint8_t __pad02a1[0x3]; // 0x2a1 public: float m_flDamageAccumulator; // 0x2a4 // MNetworkEnable DamageOptions_t m_takedamage; // 0x2a8 // MNetworkEnable bool m_bTakesDamage; // 0x2a9 private: [[maybe_unused]] uint8_t __pad02aa[0x2]; // 0x2aa public: // MNetworkEnable TakeDamageFlags_t m_nTakeDamageFlags; // 0x2ac private: [[maybe_unused]] uint8_t __pad02b0[0x1]; // 0x2b0 public: // MNetworkEnable MoveCollide_t m_MoveCollide; // 0x2b1 // MNetworkEnable MoveType_t m_MoveType; // 0x2b2 uint8_t m_nWaterTouch; // 0x2b3 uint8_t m_nSlimeTouch; // 0x2b4 bool m_bRestoreInHierarchy; // 0x2b5 private: [[maybe_unused]] uint8_t __pad02b6[0x2]; // 0x2b6 public: CUtlSymbolLarge m_target; // 0x2b8 float m_flMoveDoneTime; // 0x2c0 CHandle< CBaseFilter > m_hDamageFilter; // 0x2c4 CUtlSymbolLarge m_iszDamageFilterName; // 0x2c8 // MNetworkEnable // MNetworkSendProxyRecipientsFilter CUtlStringToken m_nSubclassID; // 0x2d0 private: [[maybe_unused]] uint8_t __pad02d4[0xc]; // 0x2d4 public: // MNetworkEnable // MNetworkPriority "0" // MNetworkSerializer "animTimeSerializer" // MNetworkSendProxyRecipientsFilter float m_flAnimTime; // 0x2e0 // MNetworkEnable // MNetworkPriority "1" // MNetworkSerializer "simulationTimeSerializer" float m_flSimulationTime; // 0x2e4 // MNetworkEnable GameTime_t m_flCreateTime; // 0x2e8 // MNetworkEnable bool m_bClientSideRagdoll; // 0x2ec // MNetworkEnable uint8_t m_ubInterpolationFrame; // 0x2ed private: [[maybe_unused]] uint8_t __pad02ee[0x2]; // 0x2ee public: Vector m_vPrevVPhysicsUpdatePos; // 0x2f0 // MNetworkEnable uint8_t m_iTeamNum; // 0x2fc private: [[maybe_unused]] uint8_t __pad02fd[0x3]; // 0x2fd public: CUtlSymbolLarge m_iGlobalname; // 0x300 int32_t m_iSentToClients; // 0x308 float m_flSpeed; // 0x30c CUtlString m_sUniqueHammerID; // 0x310 // MNetworkEnable uint32_t m_spawnflags; // 0x318 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" GameTick_t m_nNextThinkTick; // 0x31c int32_t m_nSimulationTick; // 0x320 private: [[maybe_unused]] uint8_t __pad0324[0x4]; // 0x324 public: CEntityIOOutput m_OnKilled; // 0x328 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" uint32_t m_fFlags; // 0x350 Vector m_vecAbsVelocity; // 0x354 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" // MNetworkPriority "32" CNetworkVelocityVector m_vecVelocity; // 0x360 private: [[maybe_unused]] uint8_t __pad0388[0x8]; // 0x388 public: int32_t m_nPushEnumCount; // 0x390 private: [[maybe_unused]] uint8_t __pad0394[0x4]; // 0x394 public: CCollisionProperty* m_pCollision; // 0x398 // MNetworkEnable CHandle< CBaseEntity > m_hEffectEntity; // 0x3a0 // MNetworkEnable // MNetworkPriority "32" CHandle< CBaseEntity > m_hOwnerEntity; // 0x3a4 // MNetworkEnable // MNetworkChangeCallback "OnEffectsChanged" uint32_t m_fEffects; // 0x3a8 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" CHandle< CBaseEntity > m_hGroundEntity; // 0x3ac // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "4" // MNetworkEncodeFlags // MNetworkUserGroup "LocalPlayerExclusive" float m_flFriction; // 0x3b0 // MNetworkEnable // MNetworkEncoder float m_flElasticity; // 0x3b4 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" float m_flGravityScale; // 0x3b8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" float m_flTimeScale; // 0x3bc // MNetworkEnable // MNetworkUserGroup "Water" // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags float m_flWaterLevel; // 0x3c0 // MNetworkEnable bool m_bSimulatedEveryTick; // 0x3c4 // MNetworkEnable bool m_bAnimatedEveryTick; // 0x3c5 // MNetworkEnable // MNetworkUserGroup "ScalabilityOptions" uint8_t m_nMinCPULevel; // 0x3c6 // MNetworkEnable // MNetworkUserGroup "ScalabilityOptions" uint8_t m_nMaxCPULevel; // 0x3c7 // MNetworkEnable // MNetworkUserGroup "ScalabilityOptions" uint8_t m_nMinGPULevel; // 0x3c8 // MNetworkEnable // MNetworkUserGroup "ScalabilityOptions" uint8_t m_nMaxGPULevel; // 0x3c9 bool m_bDisableLowViolence; // 0x3ca uint8_t m_nWaterType; // 0x3cb int32_t m_iEFlags; // 0x3cc CEntityIOOutput m_OnUser1; // 0x3d0 CEntityIOOutput m_OnUser2; // 0x3f8 CEntityIOOutput m_OnUser3; // 0x420 CEntityIOOutput m_OnUser4; // 0x448 int32_t m_iInitialTeamNum; // 0x470 // MNetworkEnable GameTime_t m_flNavIgnoreUntilTime; // 0x474 QAngle m_vecAngVelocity; // 0x478 bool m_bNetworkQuantizeOriginAndAngles; // 0x484 bool m_bLagCompensate; // 0x485 private: [[maybe_unused]] uint8_t __pad0486[0x2]; // 0x486 public: float m_flOverriddenFriction; // 0x488 CHandle< CBaseEntity > m_pBlocker; // 0x48c float m_flLocalTime; // 0x490 float m_flVPhysicsUpdateLocalTime; // 0x494 static Relationship_t** &Get_sm_DefaultRelationship(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[0]->m_instance);}; static bool &Get_sm_bAccurateTriggerBboxChecks(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[1]->m_instance);}; static bool &Get_sm_bDisableTouchFuncs(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[2]->m_instance);}; static bool &Get_m_bAllowPrecache(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[3]->m_instance);}; static bool &Get_s_bAbsQueriesValid(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[4]->m_instance);}; static bool &Get_s_bPreventingSetAnimRunAnimEvents(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[5]->m_instance);}; static int32_t &Get_m_nPredictionRandomSeed(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[6]->m_instance);}; static CBasePlayerController* &Get_m_pPredictionPlayerController(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[7]->m_instance);}; static bool &Get_sm_bDatadescValidating(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[8]->m_instance);}; }; // Alignment: 0 // Size: 0x498 class CServerOnlyEntity : public CBaseEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CServerOnlyPointEntity : public CServerOnlyEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CLogicalEntity : public CServerOnlyEntity { public: // no members available }; // Alignment: 17 // Size: 0x6d0 class CColorCorrection : public CBaseEntity { public: // MNetworkEnable float m_flFadeInDuration; // 0x498 // MNetworkEnable float m_flFadeOutDuration; // 0x49c float m_flStartFadeInWeight; // 0x4a0 float m_flStartFadeOutWeight; // 0x4a4 GameTime_t m_flTimeStartFadeIn; // 0x4a8 GameTime_t m_flTimeStartFadeOut; // 0x4ac // MNetworkEnable float m_flMaxWeight; // 0x4b0 bool m_bStartDisabled; // 0x4b4 // MNetworkEnable bool m_bEnabled; // 0x4b5 // MNetworkEnable bool m_bMaster; // 0x4b6 // MNetworkEnable bool m_bClientSide; // 0x4b7 // MNetworkEnable bool m_bExclusive; // 0x4b8 private: [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 public: // MNetworkEnable float m_MinFalloff; // 0x4bc // MNetworkEnable float m_MaxFalloff; // 0x4c0 // MNetworkEnable float m_flCurWeight; // 0x4c4 // MNetworkEnable char m_netlookupFilename[512]; // 0x4c8 CUtlSymbolLarge m_lookupFilename; // 0x6c8 }; // Alignment: 3 // Size: 0x4f0 class CBaseFilter : public CLogicalEntity { public: bool m_bNegated; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x7]; // 0x499 public: CEntityIOOutput m_OnPass; // 0x4a0 CEntityIOOutput m_OnFail; // 0x4c8 }; // Alignment: 4 // Size: 0x578 class CFilterMultiple : public CBaseFilter { public: filter_t m_nFilterType; // 0x4f0 private: [[maybe_unused]] uint8_t __pad04f4[0x4]; // 0x4f4 public: CUtlSymbolLarge m_iFilterName[10]; // 0x4f8 CHandle< CBaseEntity > m_hFilter[10]; // 0x548 int32_t m_nFilterCount; // 0x570 }; // Alignment: 1 // Size: 0x4f8 class CFilterProximity : public CBaseFilter { public: float m_flRadius; // 0x4f0 }; // Alignment: 0 // Size: 0x4f0 class CFilterLOS : public CBaseFilter { public: // no members available }; // Alignment: 1 // Size: 0x4f8 class CFilterClass : public CBaseFilter { public: CUtlSymbolLarge m_iFilterClass; // 0x4f0 }; // Alignment: 0 // Size: 0x830 class CInfoData : public CServerOnlyEntity { public: // no members available }; // Alignment: 3 // Size: 0x20 struct locksound_t { public: CUtlSymbolLarge sLockedSound; // 0x8 CUtlSymbolLarge sUnlockedSound; // 0x10 GameTime_t flwaitSound; // 0x18 }; // Alignment: 4 // Size: 0x508 class CLogicBranch : public CLogicalEntity { public: bool m_bInValue; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x7]; // 0x499 public: CUtlVector< CHandle< CBaseEntity > > m_Listeners; // 0x4a0 CEntityIOOutput m_OnTrue; // 0x4b8 CEntityIOOutput m_OnFalse; // 0x4e0 }; // Alignment: 7 // Size: 0x528 class CLogicDistanceCheck : public CLogicalEntity { public: CUtlSymbolLarge m_iszEntityA; // 0x498 CUtlSymbolLarge m_iszEntityB; // 0x4a0 float m_flZone1Distance; // 0x4a8 float m_flZone2Distance; // 0x4ac CEntityIOOutput m_InZone1; // 0x4b0 CEntityIOOutput m_InZone2; // 0x4d8 CEntityIOOutput m_InZone3; // 0x500 }; // Alignment: 3 // Size: 0x14 class VelocitySampler { public: Vector m_prevSample; // 0x0 GameTime_t m_fPrevSampleTime; // 0xc float m_fIdealSampleRate; // 0x10 }; // Alignment: 3 // Size: 0x20 class SimpleConstraintSoundProfile { public: SimpleConstraintSoundProfile::SimpleConstraintsSoundProfileKeypoints_t eKeypoints; // 0x8 float m_keyPoints[2]; // 0xc float m_reversalSoundThresholds[3]; // 0x14 }; // Alignment: 8 // Size: 0x88 class ConstraintSoundInfo { public: VelocitySampler m_vSampler; // 0x8 private: [[maybe_unused]] uint8_t __pad001c[0x4]; // 0x1c public: SimpleConstraintSoundProfile m_soundProfile; // 0x20 Vector m_forwardAxis; // 0x40 private: [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c public: CUtlSymbolLarge m_iszTravelSoundFwd; // 0x50 CUtlSymbolLarge m_iszTravelSoundBack; // 0x58 private: [[maybe_unused]] uint8_t __pad0060[0x8]; // 0x60 public: CUtlSymbolLarge m_iszReversalSounds[3]; // 0x68 bool m_bPlayTravelSound; // 0x80 bool m_bPlayReversalSound; // 0x81 }; // Alignment: 5 // Size: 0x20 class CSmoothFunc { public: float m_flSmoothAmplitude; // 0x8 float m_flSmoothBias; // 0xc float m_flSmoothDuration; // 0x10 float m_flSmoothRemainingTime; // 0x14 int32_t m_nSmoothDir; // 0x18 }; // Alignment: 1 // Size: 0x10 struct magnetted_objects_t { public: CHandle< CBaseEntity > hEntity; // 0x8 }; // Alignment: 3 // Size: 0x4b0 class CPointPrefab : public CServerOnlyPointEntity { public: CUtlSymbolLarge m_targetMapName; // 0x498 CUtlSymbolLarge m_forceWorldGroupID; // 0x4a0 bool m_fixupNames; // 0x4a8 }; // Alignment: 2 // Size: 0x4a0 class CSkyboxReference : public CBaseEntity { public: WorldGroupId_t m_worldGroupId; // 0x498 CHandle< CSkyCamera > m_hSkyCamera; // 0x49c }; // Alignment: 25 // Size: 0x68 struct fogparams_t { public: // MNetworkEnable // MNetworkEncoder Vector dirPrimary; // 0x8 // MNetworkEnable Color colorPrimary; // 0x14 // MNetworkEnable Color colorSecondary; // 0x18 // MNetworkEnable // MNetworkUserGroup "FogController" Color colorPrimaryLerpTo; // 0x1c // MNetworkEnable // MNetworkUserGroup "FogController" Color colorSecondaryLerpTo; // 0x20 // MNetworkEnable float start; // 0x24 // MNetworkEnable float end; // 0x28 // MNetworkEnable // MNetworkUserGroup "FogController" float farz; // 0x2c // MNetworkEnable float maxdensity; // 0x30 // MNetworkEnable float exponent; // 0x34 // MNetworkEnable float HDRColorScale; // 0x38 // MNetworkEnable // MNetworkUserGroup "FogController" float skyboxFogFactor; // 0x3c // MNetworkEnable // MNetworkUserGroup "FogController" float skyboxFogFactorLerpTo; // 0x40 // MNetworkEnable // MNetworkUserGroup "FogController" float startLerpTo; // 0x44 // MNetworkEnable // MNetworkUserGroup "FogController" float endLerpTo; // 0x48 // MNetworkEnable // MNetworkUserGroup "FogController" float maxdensityLerpTo; // 0x4c // MNetworkEnable // MNetworkUserGroup "FogController" GameTime_t lerptime; // 0x50 // MNetworkEnable // MNetworkUserGroup "FogController" float duration; // 0x54 // MNetworkEnable // MNetworkUserGroup "FogController" float blendtobackground; // 0x58 // MNetworkEnable // MNetworkUserGroup "FogController" float scattering; // 0x5c // MNetworkEnable // MNetworkUserGroup "FogController" float locallightscale; // 0x60 // MNetworkEnable bool enable; // 0x64 // MNetworkEnable bool blend; // 0x65 // MNetworkEnable bool m_bNoReflectionFog; // 0x66 bool m_bPadding; // 0x67 }; // Alignment: 12 // Size: 0x34 class CSound { public: CHandle< CBaseEntity > m_hOwner; // 0x0 CHandle< CBaseEntity > m_hTarget; // 0x4 int32_t m_iVolume; // 0x8 float m_flOcclusionScale; // 0xc int32_t m_iType; // 0x10 int32_t m_iNextAudible; // 0x14 GameTime_t m_flExpireTime; // 0x18 int16_t m_iNext; // 0x1c bool m_bNoExpirationTime; // 0x1e private: [[maybe_unused]] uint8_t __pad001f[0x1]; // 0x1f public: int32_t m_ownerChannelIndex; // 0x20 Vector m_vecOrigin; // 0x24 bool m_bHasOwner; // 0x30 }; // Alignment: 11 // Size: 0x530 class CEnvSoundscape : public CServerOnlyEntity { public: CEntityIOOutput m_OnPlay; // 0x498 float m_flRadius; // 0x4c0 private: [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: CUtlSymbolLarge m_soundscapeName; // 0x4c8 CUtlSymbolLarge m_soundEventName; // 0x4d0 bool m_bOverrideWithEvent; // 0x4d8 private: [[maybe_unused]] uint8_t __pad04d9[0x3]; // 0x4d9 public: int32_t m_soundscapeIndex; // 0x4dc int32_t m_soundscapeEntityListId; // 0x4e0 uint32_t m_soundEventHash; // 0x4e4 CUtlSymbolLarge m_positionNames[8]; // 0x4e8 CHandle< CEnvSoundscape > m_hProxySoundscape; // 0x528 bool m_bDisabled; // 0x52c }; // Alignment: 1 // Size: 0x538 class CEnvSoundscapeProxy : public CEnvSoundscape { public: CUtlSymbolLarge m_MainSoundscapeName; // 0x530 }; // Alignment: 0 // Size: 0x530 class CEnvSoundscapeTriggerable : public CEnvSoundscape { public: // no members available }; // Alignment: 27 // Size: 0x548 class CTriggerCamera : public CBaseEntity { public: CHandle< CBaseEntity > m_hPlayer; // 0x498 CHandle< CBaseEntity > m_hTarget; // 0x49c CBaseEntity* m_pPath; // 0x4a0 CUtlSymbolLarge m_sPath; // 0x4a8 float m_flWait; // 0x4b0 GameTime_t m_flReturnTime; // 0x4b4 GameTime_t m_flStopTime; // 0x4b8 float m_moveDistance; // 0x4bc float m_targetSpeed; // 0x4c0 float m_initialSpeed; // 0x4c4 float m_acceleration; // 0x4c8 float m_deceleration; // 0x4cc int32_t m_state; // 0x4d0 Vector m_vecMoveDir; // 0x4d4 float m_fov; // 0x4e0 float m_fovSpeed; // 0x4e4 CUtlSymbolLarge m_iszTargetAttachment; // 0x4e8 AttachmentHandle_t m_iAttachmentIndex; // 0x4f0 bool m_bSnapToGoal; // 0x4f1 bool m_bInterpolatePosition; // 0x4f2 private: [[maybe_unused]] uint8_t __pad04f3[0x1]; // 0x4f3 public: Vector m_vStartPos; // 0x4f4 Vector m_vEndPos; // 0x500 GameTime_t m_flInterpStartTime; // 0x50c uint64_t m_nPlayerButtons; // 0x510 bool m_bOldTakesDamage; // 0x518 private: [[maybe_unused]] uint8_t __pad0519[0x3]; // 0x519 public: TakeDamageFlags_t m_nOldTakeDamageFlags; // 0x51c CEntityIOOutput m_OnEndFollow; // 0x520 static float &Get_kflPosInterpTime(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTriggerCamera")->m_static_fields[0]->m_instance);}; }; // Alignment: 1 // Size: 0x4 struct ParticleIndex_t { public: int32_t m_Value; // 0x0 }; // Alignment: 2 // Size: 0x10 class CNavLinkAnimgraphVar { public: // MPropertyFriendlyName "Animgraph Variable" // MPropertyDescription "Animgraph variable to use for animation for this movement." CUtlString m_strAnimgraphVar; // 0x0 // MPropertyFriendlyName "Alignment Degrees" // MPropertyDescription "Amount of angular slack the animation has when aligning to the navlink. 0 indicates that it must be strictly aligned." uint32_t m_unAlignmentDegrees; // 0x8 }; // Alignment: 3 // Size: 0x20 class CNavLinkMovementVData { public: // MPropertyFriendlyName "Is Interpolated" // MPropertyDescription "Indicates that the animation has a segment that's interpolated. In general using this on navlinks that traverse +/- 50% of the recommended distance should look okay." bool m_bIsInterpolated; // 0x0 // MPropertyFriendlyName "Recommended Distance" // MPropertyDescription "Recommended distance this movement traverses" uint32_t m_unRecommendedDistance; // 0x4 // MPropertyFriendlyName "Animgraph Variables" // MPropertyDescription "List of animgraph variables to use when moving through this navlink. Can include multiple, with different amounts of angular slack. The most permissive animgraph variable that exists on the entity's animgraph will be used," // MPropertyAutoExpandSelf CUtlVector< CNavLinkAnimgraphVar > m_vecAnimgraphVars; // 0x8 }; // Alignment: 0 // Size: 0xd8 class CNavVolumeMarkupVolume : public CNavVolume { public: // no members available }; // Alignment: 0 // Size: 0x98 class CNavVolumeCalculatedVector : public CNavVolume { public: // no members available }; // Alignment: 2 // Size: 0xb8 class CNavVolumeBreadthFirstSearch : public CNavVolumeCalculatedVector { public: Vector m_vStartPos; // 0xa0 float m_flSearchDist; // 0xac }; // Alignment: 8 // Size: 0x30 struct VPhysicsCollisionAttribute_t { public: // MNetworkEnable uint64_t m_nInteractsAs; // 0x8 // MNetworkEnable uint64_t m_nInteractsWith; // 0x10 // MNetworkEnable uint64_t m_nInteractsExclude; // 0x18 // MNetworkEnable uint32_t m_nEntityId; // 0x20 // MNetworkEnable uint32_t m_nOwnerId; // 0x24 // MNetworkEnable uint16_t m_nHierarchyId; // 0x28 // MNetworkEnable uint8_t m_nCollisionGroup; // 0x2a // MNetworkEnable uint8_t m_nCollisionFunctionMask; // 0x2b }; // Alignment: 17 // Size: 0xb0 class CCollisionProperty { public: // MNetworkEnable // MNetworkChangeCallback "CollisionAttributeChanged" VPhysicsCollisionAttribute_t m_collisionAttribute; // 0x10 // MNetworkEnable // MNetworkChangeCallback "OnUpdateOBB" Vector m_vecMins; // 0x40 // MNetworkEnable // MNetworkChangeCallback "OnUpdateOBB" Vector m_vecMaxs; // 0x4c private: [[maybe_unused]] uint8_t __pad0058[0x2]; // 0x58 public: // MNetworkEnable // MNetworkChangeCallback "OnUpdateSolidFlags" uint8_t m_usSolidFlags; // 0x5a // MNetworkEnable // MNetworkChangeCallback "OnUpdateSolidType" SolidType_t m_nSolidType; // 0x5b // MNetworkEnable // MNetworkChangeCallback "MarkSurroundingBoundsDirty" uint8_t m_triggerBloat; // 0x5c // MNetworkEnable // MNetworkChangeCallback "MarkSurroundingBoundsDirty" SurroundingBoundsType_t m_nSurroundType; // 0x5d // MNetworkEnable uint8_t m_CollisionGroup; // 0x5e // MNetworkEnable // MNetworkChangeCallback "OnUpdateEnablePhysics" uint8_t m_nEnablePhysics; // 0x5f float m_flBoundingRadius; // 0x60 // MNetworkEnable // MNetworkChangeCallback "MarkSurroundingBoundsDirty" Vector m_vecSpecifiedSurroundingMins; // 0x64 // MNetworkEnable // MNetworkChangeCallback "MarkSurroundingBoundsDirty" Vector m_vecSpecifiedSurroundingMaxs; // 0x70 Vector m_vecSurroundingMaxs; // 0x7c Vector m_vecSurroundingMins; // 0x88 // MNetworkEnable Vector m_vCapsuleCenter1; // 0x94 // MNetworkEnable Vector m_vCapsuleCenter2; // 0xa0 // MNetworkEnable float m_flCapsuleRadius; // 0xac }; // Alignment: 21 // Size: 0x70 class CEffectData { public: // MNetworkEnable // MNetworkEncoder Vector m_vOrigin; // 0x8 // MNetworkEnable // MNetworkEncoder Vector m_vStart; // 0x14 // MNetworkEnable // MNetworkEncoder Vector m_vNormal; // 0x20 // MNetworkEnable // MNetworkEncoder QAngle m_vAngles; // 0x2c // MNetworkEnable CEntityHandle m_hEntity; // 0x38 // MNetworkEnable CEntityHandle m_hOtherEntity; // 0x3c // MNetworkEnable float m_flScale; // 0x40 // MNetworkEnable // MNetworkBitCount "12" // MNetworkMinValue "0" // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flMagnitude; // 0x44 // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "1023" // MNetworkEncodeFlags float m_flRadius; // 0x48 // MNetworkEnable CUtlStringToken m_nSurfaceProp; // 0x4c // MNetworkEnable CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > m_nEffectIndex; // 0x50 // MNetworkEnable uint32_t m_nDamageType; // 0x58 // MNetworkEnable uint8_t m_nPenetrate; // 0x5c private: [[maybe_unused]] uint8_t __pad005d[0x1]; // 0x5d public: // MNetworkEnable uint16_t m_nMaterial; // 0x5e // MNetworkEnable uint16_t m_nHitBox; // 0x60 // MNetworkEnable uint8_t m_nColor; // 0x62 // MNetworkEnable uint8_t m_fFlags; // 0x63 // MNetworkEnable AttachmentHandle_t m_nAttachmentIndex; // 0x64 private: [[maybe_unused]] uint8_t __pad0065[0x3]; // 0x65 public: // MNetworkEnable CUtlStringToken m_nAttachmentName; // 0x68 // MNetworkEnable uint16_t m_iEffectName; // 0x6c // MNetworkEnable uint8_t m_nExplosionType; // 0x6e }; // Alignment: 2 // Size: 0x4a0 class CEnvDetailController : public CBaseEntity { public: // MNetworkEnable float m_flFadeStartDist; // 0x498 // MNetworkEnable float m_flFadeEndDist; // 0x49c }; // Alignment: 31 // Size: 0x258 class CEnvWindShared { public: // MNetworkEnable GameTime_t m_flStartTime; // 0x8 // MNetworkEnable uint32_t m_iWindSeed; // 0xc // MNetworkEnable uint16_t m_iMinWind; // 0x10 // MNetworkEnable uint16_t m_iMaxWind; // 0x12 // MNetworkEnable int32_t m_windRadius; // 0x14 // MNetworkEnable uint16_t m_iMinGust; // 0x18 // MNetworkEnable uint16_t m_iMaxGust; // 0x1a // MNetworkEnable float m_flMinGustDelay; // 0x1c // MNetworkEnable float m_flMaxGustDelay; // 0x20 // MNetworkEnable float m_flGustDuration; // 0x24 // MNetworkEnable uint16_t m_iGustDirChange; // 0x28 private: [[maybe_unused]] uint8_t __pad002a[0x2]; // 0x2a public: // MNetworkEnable // MNetworkEncoder Vector m_location; // 0x2c int32_t m_iszGustSound; // 0x38 int32_t m_iWindDir; // 0x3c float m_flWindSpeed; // 0x40 Vector m_currentWindVector; // 0x44 Vector m_CurrentSwayVector; // 0x50 Vector m_PrevSwayVector; // 0x5c // MNetworkEnable uint16_t m_iInitialWindDir; // 0x68 private: [[maybe_unused]] uint8_t __pad006a[0x2]; // 0x6a public: // MNetworkEnable float m_flInitialWindSpeed; // 0x6c CEntityIOOutput m_OnGustStart; // 0x70 CEntityIOOutput m_OnGustEnd; // 0x98 GameTime_t m_flVariationTime; // 0xc0 GameTime_t m_flSwayTime; // 0xc4 GameTime_t m_flSimTime; // 0xc8 GameTime_t m_flSwitchTime; // 0xcc float m_flAveWindSpeed; // 0xd0 bool m_bGusting; // 0xd4 private: [[maybe_unused]] uint8_t __pad00d5[0x3]; // 0xd5 public: float m_flWindAngleVariation; // 0xd8 float m_flWindSpeedVariation; // 0xdc CEntityIndex m_iEntIndex; // 0xe0 }; // Alignment: 2 // Size: 0x8 struct CEnvWindShared__WindAveEvent_t { public: float m_flStartWindSpeed; // 0x0 float m_flAveWindSpeed; // 0x4 }; // Alignment: 2 // Size: 0x8 struct CEnvWindShared__WindVariationEvent_t { public: float m_flWindAngleVariation; // 0x0 float m_flWindSpeedVariation; // 0x4 }; // Alignment: 0 // Size: 0x498 class CGameRulesProxy : public CBaseEntity { public: // no members available }; // Alignment: 2 // Size: 0x90 class CGameRules { public: char m_szQuestName[128]; // 0x8 int32_t m_nQuestPhase; // 0x88 }; // Alignment: 10 // Size: 0x58 class CGlowProperty { public: Vector m_fGlowColor; // 0x8 private: [[maybe_unused]] uint8_t __pad0014[0x1c]; // 0x14 public: // MNetworkEnable // MNetworkChangeCallback "OnGlowTypeChanged" int32_t m_iGlowType; // 0x30 // MNetworkEnable int32_t m_iGlowTeam; // 0x34 // MNetworkEnable int32_t m_nGlowRange; // 0x38 // MNetworkEnable int32_t m_nGlowRangeMin; // 0x3c // MNetworkEnable // MNetworkChangeCallback "OnGlowColorChanged" Color m_glowColorOverride; // 0x40 // MNetworkEnable bool m_bFlashing; // 0x44 private: [[maybe_unused]] uint8_t __pad0045[0x3]; // 0x45 public: // MNetworkEnable float m_flGlowTime; // 0x48 // MNetworkEnable float m_flGlowStartTime; // 0x4c bool m_bGlowing; // 0x50 }; // Alignment: 0 // Size: 0x90 class CMultiplayRules : public CGameRules { public: // no members available }; // Alignment: 6 // Size: 0x90 struct sky3dparams_t { public: // MNetworkEnable int16_t scale; // 0x8 private: [[maybe_unused]] uint8_t __pad000a[0x2]; // 0xa public: // MNetworkEnable // MNetworkEncoder Vector origin; // 0xc // MNetworkEnable bool bClip3DSkyBoxNearToWorldFar; // 0x18 private: [[maybe_unused]] uint8_t __pad0019[0x3]; // 0x19 public: // MNetworkEnable float flClip3DSkyBoxNearToWorldFarOffset; // 0x1c // MNetworkEnable fogparams_t fog; // 0x20 // MNetworkEnable WorldGroupId_t m_nWorldGroupID; // 0x88 }; // Alignment: 14 // Size: 0x170 class CPlayer_CameraServices : public CPlayerPawnComponent { public: // MNetworkEnable uint32_t m_iFOV; // 0x40 // MNetworkEnable uint32_t m_iFOVStart; // 0x44 // MNetworkEnable GameTime_t m_flFOVTime; // 0x48 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" float m_flFOVRate; // 0x4c // MNetworkEnable CHandle< CBaseEntity > m_hZoomOwner; // 0x50 private: [[maybe_unused]] uint8_t __pad0054[0x4]; // 0x54 public: // MNetworkEnable fogplayerparams_t m_PlayerFog; // 0x58 // MNetworkEnable CHandle< CColorCorrection > m_hColorCorrectionCtrl; // 0x98 // MNetworkEnable CHandle< CBaseEntity > m_hViewEntity; // 0x9c // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" CHandle< CTonemapController2 > m_hTonemapController; // 0xa0 private: [[maybe_unused]] uint8_t __pad00a4[0x4]; // 0xa4 public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" audioparams_t m_audio; // 0xa8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerAndObserversExclusive" CNetworkUtlVectorBase< CHandle< CPostProcessingVolume > > m_PostProcessingVolumes; // 0x120 float m_flOldPlayerZ; // 0x138 float m_flOldPlayerViewOffsetZ; // 0x13c private: [[maybe_unused]] uint8_t __pad0140[0x18]; // 0x140 public: CUtlVector< CHandle< CEnvSoundscapeTriggerable > > m_hTriggerSoundscapeList; // 0x158 }; // Alignment: 4 // Size: 0x538 class CSkyCamera : public CBaseEntity { public: // MNetworkEnable sky3dparams_t m_skyboxData; // 0x498 // MNetworkEnable CUtlStringToken m_skyboxSlotToken; // 0x528 bool m_bUseAngles; // 0x52c private: [[maybe_unused]] uint8_t __pad052d[0x3]; // 0x52d public: CSkyCamera* m_pNext; // 0x530 }; // Alignment: 0 // Size: 0x8 class IRagdoll { public: // no members available }; // Alignment: 3 // Size: 0x28 struct ragdollelement_t { public: Vector originParentSpace; // 0x0 int32_t parentIndex; // 0x20 float m_flRadius; // 0x24 }; // Alignment: 4 // Size: 0x38 struct ragdoll_t { public: CUtlVector< ragdollelement_t > list; // 0x0 CUtlVector< int32 > boneIndex; // 0x18 bool allowStretch; // 0x30 bool unused; // 0x31 }; // Alignment: 2 // Size: 0x48 struct PhysicsRagdollPose_t { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x8 // MNetworkEnable // MNetworkChangeCallback "OnTransformChanged" CNetworkUtlVectorBase< CTransform > m_Transforms; // 0x30 }; // Alignment: 17 // Size: 0x60 class CSceneEventInfo { public: int32_t m_iLayer; // 0x0 int32_t m_iPriority; // 0x4 HSequence m_hSequence; // 0x8 float m_flWeight; // 0xc bool m_bIsMoving; // 0x10 bool m_bHasArrived; // 0x11 private: [[maybe_unused]] uint8_t __pad0012[0x2]; // 0x12 public: float m_flInitialYaw; // 0x14 float m_flTargetYaw; // 0x18 float m_flFacingYaw; // 0x1c int32_t m_nType; // 0x20 GameTime_t m_flNext; // 0x24 bool m_bIsGesture; // 0x28 bool m_bShouldRemove; // 0x29 private: [[maybe_unused]] uint8_t __pad002a[0x2a]; // 0x2a public: CHandle< CBaseEntity > m_hTarget; // 0x54 uint32_t m_nSceneEventId; // 0x58 bool m_bClientSide; // 0x5c bool m_bStarted; // 0x5d }; // Alignment: 6 // Size: 0x40 struct lerpdata_t { public: CHandle< CBaseEntity > m_hEnt; // 0x0 MoveType_t m_MoveType; // 0x4 private: [[maybe_unused]] uint8_t __pad0005[0x3]; // 0x5 public: GameTime_t m_flStartTime; // 0x8 Vector m_vecStartOrigin; // 0xc private: [[maybe_unused]] uint8_t __pad0018[0x8]; // 0x18 public: Quaternion m_qStartRot; // 0x20 ParticleIndex_t m_nFXIndex; // 0x30 }; // Alignment: 23 // Size: 0x310 class CBasePlayerWeaponVData { public: // MPropertyDescription "The name of the weapon entity to spawn for this NPC weapon." CUtlString m_szClassName; // 0x10 // MPropertyDescription "Model used on the ground or held by an entity" // MPropertyGroupName "Visuals" CResourceNameTyped< CWeakHandle< InfoForResourceTypeCModel > > m_szWorldModel; // 0x18 // MPropertyDescription "Was the weapon was built right-handed?" // MPropertyGroupName "Visuals" bool m_bBuiltRightHanded; // 0xf8 // MPropertyDescription "Allows flipping the model, regardless of whether it is built left or right handed" // MPropertyGroupName "Visuals" bool m_bAllowFlipping; // 0xf9 bool m_bIsFullAuto; // 0xfa private: [[maybe_unused]] uint8_t __pad00fb[0x1]; // 0xfb public: int32_t m_nNumBullets; // 0xfc // MPropertyGroupName "Visuals" // MPropertyDescription "Attachment to fire bullets from" // MPropertyAttributeEditor "VDataModelAttachment( m_szWorldModel )" CUtlString m_sMuzzleAttachment; // 0x100 // MPropertyDescription "Effect when firing this weapon" // MPropertyGroupName "Visuals" CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szMuzzleFlashParticle; // 0x108 // MPropertyDescription "Effect to actually fire into the world from this weapon" // MPropertyGroupName "Visuals" CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szTracerParticle; // 0x1e8 ItemFlagTypes_t m_iFlags; // 0x2c8 // MPropertyAttributeEditor "VDataChoice( scripts/ammo.vdata )" // MPropertyGroupName "Ammo" // MPropertyCustomFGDType AmmoIndex_t m_nPrimaryAmmoType; // 0x2c9 // MPropertyAttributeEditor "VDataChoice( scripts/ammo.vdata )" // MPropertyGroupName "Ammo" // MPropertyCustomFGDType AmmoIndex_t m_nSecondaryAmmoType; // 0x2ca private: [[maybe_unused]] uint8_t __pad02cb[0x1]; // 0x2cb public: // MPropertyFriendlyName "Primary Clip Size" // MPropertyDescription "How many bullets this gun can fire before it reloads (0 if no clip)" // MPropertyAttributeRange "0 255" // MPropertyGroupName "Ammo" int32_t m_iMaxClip1; // 0x2cc // MPropertyFriendlyName "Secondary Clip Size" // MPropertyDescription "How many secondary bullets this gun can fire before it reloads (0 if no clip)" // MPropertyGroupName "Ammo" // MPropertyAttributeRange "0 255" int32_t m_iMaxClip2; // 0x2d0 // MPropertyDescription "Primary Initial Clip (-1 means use clip size)" // MPropertyGroupName "Ammo" // MPropertyAttributeRange "-1 255" int32_t m_iDefaultClip1; // 0x2d4 // MPropertyDescription "Secondary Initial Clip (-1 means use clip size)" // MPropertyGroupName "Ammo" // MPropertyAttributeRange "-1 255" int32_t m_iDefaultClip2; // 0x2d8 // MPropertyDescription "This value used to determine this weapon's importance in autoselection" // MPropertyGroupName "UI" int32_t m_iWeight; // 0x2dc // MPropertyFriendlyName "Safe To Auto-Switch To" // MPropertyDescription "Whether this weapon is safe to automatically switch to (should be false for eg. explosives that can the player may accidentally hurt themselves with)" // MPropertyGroupName "UI" bool m_bAutoSwitchTo; // 0x2e0 // MPropertyFriendlyName "Safe To Auto-Switch Away From" // MPropertyGroupName "UI" bool m_bAutoSwitchFrom; // 0x2e1 private: [[maybe_unused]] uint8_t __pad02e2[0x2]; // 0x2e2 public: // MPropertyGroupName "UI" RumbleEffect_t m_iRumbleEffect; // 0x2e4 CUtlMap< WeaponSound_t, CSoundEventName > m_aShootSounds; // 0x2e8 // MPropertyFriendlyName "HUD Bucket" // MPropertyDescription "Which 'column' to display this weapon in the HUD" // MPropertyGroupName "UI" int32_t m_iSlot; // 0x308 // MPropertyFriendlyName "HUD Bucket Position" // MPropertyDescription "Which 'row' to display this weapon in the HUD" // MPropertyGroupName "UI" int32_t m_iPosition; // 0x30c }; // Alignment: 0 // Size: 0x28 class CEntitySubclassVDataBase { public: // no members available }; // Alignment: 4 // Size: 0x20 struct thinkfunc_t { public: HSCRIPT m_hFn; // 0x8 CUtlStringToken m_nContext; // 0x10 GameTick_t m_nNextThinkTick; // 0x14 GameTick_t m_nLastThinkTick; // 0x18 }; // Alignment: 2 // Size: 0x10 struct RagdollCreationParams_t { public: Vector m_vForce; // 0x0 int32_t m_nForceBone; // 0xc }; // Alignment: 6 // Size: 0x14 struct hudtextparms_t { public: Color color1; // 0x0 Color color2; // 0x4 uint8_t effect; // 0x8 uint8_t channel; // 0x9 private: [[maybe_unused]] uint8_t __pad000a[0x2]; // 0xa public: float x; // 0xc float y; // 0x10 }; // Alignment: 2 // Size: 0x8 class CSimpleSimTimer { public: GameTime_t m_next; // 0x0 WorldGroupId_t m_nWorldGroupId; // 0x4 }; // Alignment: 1 // Size: 0xc class CSimTimer : public CSimpleSimTimer { public: float m_interval; // 0x8 }; // Alignment: 2 // Size: 0x10 class CRandSimTimer : public CSimpleSimTimer { public: float m_minInterval; // 0x8 float m_maxInterval; // 0xc }; // Alignment: 1 // Size: 0xc class CStopwatchBase : public CSimpleSimTimer { public: bool m_fIsRunning; // 0x8 }; // Alignment: 0 // Size: 0xc class CSimpleStopwatch : public CStopwatchBase { public: // no members available }; // Alignment: 1 // Size: 0x10 class CStopwatch : public CStopwatchBase { public: float m_interval; // 0xc }; // Alignment: 2 // Size: 0x14 class CRandStopwatch : public CStopwatchBase { public: float m_minInterval; // 0xc float m_maxInterval; // 0x10 }; // Alignment: 1 // Size: 0x98 class CSingleplayRules : public CGameRules { public: bool m_bSinglePlayerGameEnding; // 0x90 }; // Alignment: 9 // Size: 0x530 class CSoundOpvarSetPointBase : public CBaseEntity { public: bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: CEntityHandle m_hSource; // 0x49c private: [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: CUtlSymbolLarge m_iszSourceEntityName; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04b0[0x50]; // 0x4b0 public: Vector m_vLastPosition; // 0x500 private: [[maybe_unused]] uint8_t __pad050c[0x4]; // 0x50c public: // MNetworkEnable CUtlSymbolLarge m_iszStackName; // 0x510 // MNetworkEnable CUtlSymbolLarge m_iszOperatorName; // 0x518 // MNetworkEnable CUtlSymbolLarge m_iszOpvarName; // 0x520 // MNetworkEnable int32_t m_iOpvarIndex; // 0x528 // MNetworkEnable bool m_bUseAutoCompare; // 0x52c }; // Alignment: 21 // Size: 0x630 class CSoundOpvarSetPointEntity : public CSoundOpvarSetPointBase { public: CEntityIOOutput m_OnEnter; // 0x530 CEntityIOOutput m_OnExit; // 0x558 bool m_bAutoDisable; // 0x580 private: [[maybe_unused]] uint8_t __pad0581[0x43]; // 0x581 public: float m_flDistanceMin; // 0x5c4 float m_flDistanceMax; // 0x5c8 float m_flDistanceMapMin; // 0x5cc float m_flDistanceMapMax; // 0x5d0 float m_flOcclusionRadius; // 0x5d4 float m_flOcclusionMin; // 0x5d8 float m_flOcclusionMax; // 0x5dc float m_flValSetOnDisable; // 0x5e0 bool m_bSetValueOnDisable; // 0x5e4 private: [[maybe_unused]] uint8_t __pad05e5[0x3]; // 0x5e5 public: int32_t m_nSimulationMode; // 0x5e8 int32_t m_nVisibilitySamples; // 0x5ec Vector m_vDynamicProxyPoint; // 0x5f0 float m_flDynamicMaximumOcclusion; // 0x5fc CEntityHandle m_hDynamicEntity; // 0x600 private: [[maybe_unused]] uint8_t __pad0604[0x4]; // 0x604 public: CUtlSymbolLarge m_iszDynamicEntityName; // 0x608 float m_flPathingDistanceNormFactor; // 0x610 Vector m_vPathingSourcePos; // 0x614 Vector m_vPathingListenerPos; // 0x620 }; // Alignment: 9 // Size: 0x698 class CSoundOpvarSetAABBEntity : public CSoundOpvarSetPointEntity { public: Vector m_vDistanceInnerMins; // 0x630 Vector m_vDistanceInnerMaxs; // 0x63c Vector m_vDistanceOuterMins; // 0x648 Vector m_vDistanceOuterMaxs; // 0x654 int32_t m_nAABBDirection; // 0x660 Vector m_vInnerMins; // 0x664 Vector m_vInnerMaxs; // 0x670 Vector m_vOuterMins; // 0x67c Vector m_vOuterMaxs; // 0x688 }; // Alignment: 0 // Size: 0x698 class CSoundOpvarSetOBBEntity : public CSoundOpvarSetAABBEntity { public: // no members available }; // Alignment: 3 // Size: 0x658 class CSoundOpvarSetPathCornerEntity : public CSoundOpvarSetPointEntity { public: float m_flDistMinSqr; // 0x648 float m_flDistMaxSqr; // 0x64c CUtlSymbolLarge m_iszPathCornerEntityName; // 0x650 }; // Alignment: 8 // Size: 0x570 class CSoundOpvarSetOBBWindEntity : public CSoundOpvarSetPointBase { public: Vector m_vMins; // 0x530 Vector m_vMaxs; // 0x53c Vector m_vDistanceMins; // 0x548 Vector m_vDistanceMaxs; // 0x554 float m_flWindMin; // 0x560 float m_flWindMax; // 0x564 float m_flWindMapMin; // 0x568 float m_flWindMapMax; // 0x56c }; // Alignment: 19 // Size: 0xb0 class CTakeDamageInfo { public: Vector m_vecDamageForce; // 0x8 Vector m_vecDamagePosition; // 0x14 Vector m_vecReportedPosition; // 0x20 Vector m_vecDamageDirection; // 0x2c CHandle< CBaseEntity > m_hInflictor; // 0x38 CHandle< CBaseEntity > m_hAttacker; // 0x3c CHandle< CBaseEntity > m_hAbility; // 0x40 float m_flDamage; // 0x44 int32_t m_bitsDamageType; // 0x48 int32_t m_iDamageCustom; // 0x4c AmmoIndex_t m_iAmmoType; // 0x50 private: [[maybe_unused]] uint8_t __pad0051[0xf]; // 0x51 public: float m_flOriginalDamage; // 0x60 private: [[maybe_unused]] uint8_t __pad0064[0xc]; // 0x64 public: TakeDamageFlags_t m_nDamageFlags; // 0x70 int32_t m_bitsDotaDamageType; // 0x74 int32_t m_nDotaDamageCategory; // 0x78 float m_flCombatLogCreditFactor; // 0x7c int16_t m_iRecord; // 0x80 private: [[maybe_unused]] uint8_t __pad0082[0x6]; // 0x82 public: HSCRIPT m_hScriptInstance; // 0x88 private: [[maybe_unused]] uint8_t __pad0090[0x18]; // 0x90 public: bool m_bInTakeDamageFlow; // 0xa8 static CTakeDamageInfo &Get_EmptyInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTakeDamageInfo")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 // Size: 0x8 class CTakeDamageResult { public: int32_t m_nHealthLost; // 0x0 int32_t m_nDamageTaken; // 0x4 }; // Alignment: 4 // Size: 0xc8 struct SummaryTakeDamageInfo_t { public: int32_t nSummarisedCount; // 0x0 CTakeDamageInfo info; // 0x8 CTakeDamageResult result; // 0xb8 CHandle< CBaseEntity > hTarget; // 0xc0 }; // Alignment: 1 // Size: 0x20 class CTakeDamageSummaryScopeGuard { public: CUtlVector< SummaryTakeDamageInfo_t* > m_vecSummaries; // 0x8 static SummaryTakeDamageInfo_t &Get_EmptySummary(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CTakeDamageSummaryScopeGuard")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 // Size: 0x60 class CAttributeList { public: // MNetworkEnable // MNetworkTypeAlias "CUtlVector< CEconItemAttribute >" CUtlVectorEmbeddedNetworkVar< CEconItemAttribute > m_Attributes; // 0x8 CAttributeManager* m_pManager; // 0x58 }; // Alignment: 1 // Size: 0x2 struct attrib_definition_index_t { public: uint16_t m_Value; // 0x0 }; // Alignment: 0 // Size: 0x8 class IEconItemInterface { public: // no members available }; // Alignment: 7 // Size: 0x68 class CAttributeManager { public: CUtlVector< CHandle< CBaseEntity > > m_Providers; // 0x8 CUtlVector< CHandle< CBaseEntity > > m_Receivers; // 0x20 // MNetworkEnable int32_t m_iReapplyProvisionParity; // 0x38 // MNetworkEnable CHandle< CBaseEntity > m_hOuter; // 0x3c bool m_bPreventLoopback; // 0x40 private: [[maybe_unused]] uint8_t __pad0041[0x3]; // 0x41 public: // MNetworkEnable attributeprovidertypes_t m_ProviderType; // 0x44 CUtlVector< CAttributeManager::cached_attribute_float_t > m_CachedResults; // 0x48 }; // Alignment: 3 // Size: 0x18 struct CAttributeManager__cached_attribute_float_t { public: float flIn; // 0x0 CUtlSymbolLarge iAttribHook; // 0x8 float flOut; // 0x10 }; // Alignment: 1 // Size: 0x1 struct style_index_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 0 // Size: 0x8 class IHasAttributes { public: // no members available }; // Alignment: 3 // Size: 0xc struct CEconEntity__AttachedParticleInfo_t { public: ParticleIndex_t m_nAttachedParticleIndex; // 0x0 CUtlStringToken m_customType; // 0x4 bool m_bShouldDestroyImmediately; // 0x8 }; // Alignment: 1 // Size: 0x1 struct HeroPersona_t { public: int8_t m_Value; // 0x0 }; // Alignment: 2 // Size: 0x38 class CEconItemAttribute { public: // MNetworkEnable attrib_definition_index_t m_iAttributeDefinitionIndex; // 0x30 private: [[maybe_unused]] uint8_t __pad0032[0x2]; // 0x32 public: // MNetworkEnable // MNetworkAlias "m_iRawValue32" float m_flValue; // 0x34 }; // Alignment: 1 // Size: 0x4 struct attrib_definition_index_db32_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct item_definition_index_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x8 struct itemid_t { public: uint64_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x1 struct item_steam_cache_version_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 17 // Size: 0xc0 class CEconItemView : public IEconItemInterface { public: // MNetworkEnable item_definition_index_t m_iItemDefinitionIndex; // 0x8 // MNetworkEnable int32_t m_iEntityQuality; // 0xc // MNetworkEnable uint32_t m_iEntityLevel; // 0x10 private: [[maybe_unused]] uint8_t __pad0014[0x4]; // 0x14 public: // MNetworkEnable itemid_t m_iItemID; // 0x18 // MNetworkEnable uint32_t m_iAccountID; // 0x20 // MNetworkEnable uint32_t m_iInventoryPosition; // 0x24 private: [[maybe_unused]] uint8_t __pad0028[0x8]; // 0x28 public: // MNetworkEnable bool m_bInitialized; // 0x30 // MNetworkEnable style_index_t m_nOverrideStyle; // 0x31 bool m_bIsStoreItem; // 0x32 bool m_bIsTradeItem; // 0x33 bool m_bHasComputedAttachedParticles; // 0x34 bool m_bHasAttachedParticles; // 0x35 private: [[maybe_unused]] uint8_t __pad0036[0x2]; // 0x36 public: int32_t m_iEntityQuantity; // 0x38 uint8_t m_unClientFlags; // 0x3c private: [[maybe_unused]] uint8_t __pad003d[0x3]; // 0x3d public: eEconItemOrigin m_unOverrideOrigin; // 0x40 private: [[maybe_unused]] uint8_t __pad0044[0xc]; // 0x44 public: char* m_pszGrayedOutReason; // 0x50 // MNetworkEnable CAttributeList m_AttributeList; // 0x58 }; // Alignment: 6 // Size: 0x20 class CHeadLookParams { public: CHeadLookParams::HeadLookPriority_t m_LookPriority; // 0x0 float m_flLookDuration; // 0x4 INextBotReply* m_pReplyWhenAimed; // 0x8 char* m_pReasonStr; // 0x10 bool m_bWaitForSteady; // 0x18 private: [[maybe_unused]] uint8_t __pad0019[0x3]; // 0x19 public: float m_flEaseInTime; // 0x1c static CHeadLookParams &Get_ms_Defaults(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CHeadLookParams")->m_static_fields[0]->m_instance);}; }; // Alignment: 0 // Size: 0x8 class INextBotReply { public: // no members available }; // Alignment: 0 // Size: 0x8 class INextBotEventResponder { public: // no members available }; // Alignment: 0 // Size: 0x8 class IContextualQuery { public: // no members available }; // Alignment: 15 // Size: 0xa0 class CAnimationLayer { public: // MNetworkEnable // MNetworkChangeCallback "animationLayerOpChanged" CNetworkedSequenceOperation m_op; // 0x30 // MNetworkEnable // MNetworkChangeCallback "animationLayerOrderChanged" int32_t m_nOrder; // 0x58 // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "5" // MNetworkEncodeFlags // MNetworkSendProxyRecipientsFilter CNetworkedQuantizedFloat m_flPlaybackRate; // 0x5c // MNetworkEnable // MNetworkSendProxyRecipientsFilter bool m_bLooping; // 0x64 private: [[maybe_unused]] uint8_t __pad0065[0x3]; // 0x65 public: // MNetworkEnable // MNetworkPriority "32" // MNetworkChangeCallback "animationLayerCycleReset" // MNetworkSendProxyRecipientsFilter int32_t m_nNewSequenceParity; // 0x68 // MNetworkDisable int32_t m_nFlags; // 0x6c // MNetworkDisable bool m_bSequenceFinished; // 0x70 private: [[maybe_unused]] uint8_t __pad0071[0x3]; // 0x71 public: // MNetworkDisable float m_flKillRate; // 0x74 // MNetworkDisable float m_flKillDelay; // 0x78 // MNetworkDisable float m_flLayerAnimtime; // 0x7c // MNetworkDisable float m_flLayerFadeOuttime; // 0x80 // MNetworkDisable int32_t m_nActivity; // 0x84 // MNetworkDisable int32_t m_nPriority; // 0x88 // MNetworkDisable float m_flLastEventCycle; // 0x8c // MNetworkDisable float m_flLastAccess; // 0x90 }; // Alignment: 5 // Size: 0x160 class CSequenceTransitioner2 { public: CNetworkedSequenceOperation m_currentOp; // 0x8 float m_flCurrentPlaybackRate; // 0x30 float m_flCurrentAnimTime; // 0x34 TransitioningLayer_t m_transitioningLayers[4]; // 0x38 CBaseAnimatingController* m_pOwner; // 0x158 }; // Alignment: 13 // Size: 0x230 class CBaseAnimatingController : public CSkeletonAnimationController { public: // MNetworkEnable // MNetworkChangeCallback "baseAnimBaseLayerChanged" CNetworkedSequenceOperation m_baseLayer; // 0x10 // MNetworkDisable bool m_bSequenceFinished; // 0x38 private: [[maybe_unused]] uint8_t __pad0039[0x3]; // 0x39 public: // MNetworkDisable float m_flGroundSpeed; // 0x3c // MNetworkDisable float m_flLastEventCycle; // 0x40 // MNetworkDisable float m_flLastEventAnimTime; // 0x44 // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "5" // MNetworkEncodeFlags // MNetworkPriority "32" // MNetworkChangeCallback "playbackRateChanged" CNetworkedQuantizedFloat m_flPlaybackRate; // 0x48 // MNetworkDisable float m_flPrevAnimTime; // 0x50 // MNetworkEnable // MNetworkBitCount "11" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkUserGroup "m_flPoseParameter" // MNetworkChangeCallback "poseParametersChanged" float m_flPoseParameter[24]; // 0x54 // MNetworkEnable // MNetworkChangeCallback "clientSideAnimationChanged" bool m_bClientSideAnimation; // 0xb4 // MNetworkDisable bool m_bNetworkedAnimationInputsChanged; // 0xb5 private: [[maybe_unused]] uint8_t __pad00b6[0x2]; // 0xb6 public: // MNetworkEnable // MNetworkPriority "32" // MNetworkChangeCallback "clientSideAnimCycleReset" int32_t m_nNewSequenceParity; // 0xb8 // MNetworkEnable // MNetworkPriority "32" int32_t m_nResetEventsParity; // 0xbc private: [[maybe_unused]] uint8_t __pad00c0[0x10]; // 0xc0 public: // MNetworkDisable CSequenceTransitioner2 m_SequenceTransitioner; // 0xd0 }; // Alignment: 1 // Size: 0x288 class CBaseAnimatingOverlayController : public CBaseAnimatingController { public: // MNetworkEnable // MNetworkUserGroup "overlay_vars" // MNetworkChangeCallback "OnOverlaysChanged2" CUtlVectorEmbeddedNetworkVar< CAnimationLayer > m_AnimOverlay; // 0x230 }; // Alignment: 2 // Size: 0x730 class CBodyComponentBaseAnimatingOverlay : public CBodyComponentSkeletonInstance { public: // MNetworkEnable CBaseAnimatingOverlayController m_animationController; // 0x480 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x708 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimatingOverlay")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimatingOverlay")->m_static_fields[1]->m_instance);}; }; // Alignment: 7 // Size: 0x48 struct TransitioningLayer_t { public: CNetworkedSequenceOperation m_op; // 0x8 float m_flStartAnimTime; // 0x30 float m_flStartWeight; // 0x34 float m_flAnimTime; // 0x38 int32_t m_nOrder; // 0x3c float m_flPlaybackRate; // 0x40 float m_flFadeOutDuration; // 0x44 }; // Alignment: 2 // Size: 0x6e0 class CBodyComponentBaseAnimating : public CBodyComponentSkeletonInstance { public: // MNetworkEnable CBaseAnimatingController m_animationController; // 0x480 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x6b0 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimating")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimating")->m_static_fields[1]->m_instance);}; }; // Alignment: 28 // Size: 0xc0 class CBaseAchievement { public: char* m_pszName; // 0x18 int32_t m_iAchievementID; // 0x20 int32_t m_iFlags; // 0x24 int32_t m_iGoal; // 0x28 int32_t m_iProgressMsgIncrement; // 0x2c int32_t m_iProgressMsgMinimum; // 0x30 int32_t m_iPointValue; // 0x34 bool m_bHideUntilAchieved; // 0x38 bool m_bStoreProgressInSteam; // 0x39 private: [[maybe_unused]] uint8_t __pad003a[0x6]; // 0x3a public: char* m_pInflictorClassNameFilter; // 0x40 char* m_pInflictorEntityNameFilter; // 0x48 char* m_pVictimClassNameFilter; // 0x50 char* m_pAttackerClassNameFilter; // 0x58 char* m_pMapNameFilter; // 0x60 char* m_pGameDirFilter; // 0x68 char** m_pszComponentNames; // 0x70 char** m_pszComponentDisplayNames; // 0x78 int32_t m_iNumComponents; // 0x80 private: [[maybe_unused]] uint8_t __pad0084[0x4]; // 0x84 public: char* m_pszComponentPrefix; // 0x88 int32_t m_iComponentPrefixLen; // 0x90 bool m_bAchieved; // 0x94 private: [[maybe_unused]] uint8_t __pad0095[0x3]; // 0x95 public: int32_t m_iCount; // 0x98 int32_t m_iProgressShown; // 0x9c uint64_t m_iComponentBits; // 0xa0 private: [[maybe_unused]] uint8_t __pad00a8[0x8]; // 0xa8 public: int32_t m_nUserSlot; // 0xb0 int32_t m_iDisplayOrder; // 0xb4 bool m_bShowOnHUD; // 0xb8 private: [[maybe_unused]] uint8_t __pad00b9[0x3]; // 0xb9 public: int32_t m_iAssetAwardID; // 0xbc }; // Alignment: 2 // Size: 0xc8 class CFailableAchievement : public CBaseAchievement { public: bool m_bActivated; // 0xc0 bool m_bFailed; // 0xc1 }; // Alignment: 4 // Size: 0x4c0 class CDOTA_SimpleObstruction : public CBaseEntity { public: // MNetworkEnable bool m_bEnabled; // 0x4b0 // MNetworkEnable bool m_bBlockFoW; // 0x4b1 private: [[maybe_unused]] uint8_t __pad04b2[0x2]; // 0x4b2 public: uint32_t m_unOccluderID; // 0x4b4 bool m_bBlockingGridNav; // 0x4b8 }; // Alignment: 1 // Size: 0x4a0 class CDOTAGameManagerProxy : public CBaseEntity { public: // MNetworkEnable // MNetworkTypeAlias "CDOTAGameManager*" CDOTAGameManager* m_pGameManager; // 0x498 static CDOTAGameManagerProxy* &Get_s_pGameManagerProxy(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTAGameManagerProxy")->m_static_fields[0]->m_instance);}; }; // Alignment: 18 // Size: 0xa50 class CDOTAGameManager { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x30 private: [[maybe_unused]] uint8_t __pad0058[0x368]; // 0x58 public: bool m_bCustomGame; // 0x3c0 bool m_bEventGame; // 0x3c1 bool m_bGameModeWantsDefaultNeutralItemSchema; // 0x3c2 bool m_bGameModeFilteredAbilities; // 0x3c3 char m_szAddOnGame[128]; // 0x3c4 char m_szAddOnMap[128]; // 0x444 private: [[maybe_unused]] uint8_t __pad04c4[0x354]; // 0x4c4 public: KeyValues* m_pTutorialLessonKeyValues; // 0x818 KeyValues* m_pDivisionKeyValues; // 0x820 KeyValues* m_pMatchGroupsKeyValues; // 0x828 KeyValues* m_pAnimationStatues; // 0x830 KeyValues* m_pBotScriptsDedicatedServer; // 0x838 KeyValues* m_pkvWardPlacementLocations; // 0x840 KeyValues* m_pRegionKeyValues; // 0x848 KeyValues* m_pSurveyQuestionData; // 0x850 KeyValues3 m_AddonInfoKeyValues; // 0x858 private: [[maybe_unused]] uint8_t __pad0868[0x20]; // 0x868 public: KeyValues* m_pCountryKeyValues; // 0x888 private: [[maybe_unused]] uint8_t __pad0890[0xc0]; // 0x890 public: // MNetworkEnable bool m_CurrentHeroAvailable[256]; // 0x950 }; // Alignment: 3 // Size: 0x10 struct DOTASpecialAbilityBonus_t { public: char* m_pszName; // 0x0 float m_fValue; // 0x8 EDOTASpecialBonusOperation m_eOperation; // 0xc }; // Alignment: 3 // Size: 0x28 struct DOTALevelingAbilityBonus_t { public: char* m_pszName; // 0x0 CUtlVector< float32 > m_vecValues; // 0x8 EDOTASpecialBonusOperation m_eOperation; // 0x20 }; // Alignment: 4 // Size: 0x18 struct DOTAOutgoingBonus_t { public: char* m_pszAbilityName; // 0x0 char* m_pszSpecialName; // 0x8 float m_fValue; // 0x10 EDOTASpecialBonusOperation m_eOperation; // 0x14 }; // Alignment: 17 // Size: 0x120 struct DOTASpecialAbility_t { public: char* m_pszName; // 0x0 char* m_pszValue; // 0x8 char* m_pszLevelKey; // 0x10 char* m_pszSpecialBonusAbility; // 0x18 char* m_pszSpecialBonusField; // 0x20 char* m_pszSpecialBonusADLinkedAbilities; // 0x28 int32_t m_nCount; // 0x30 float m_Values[20]; // 0x34 int32_t m_nBonusesCount; // 0x84 DOTASpecialAbilityBonus_t m_Bonuses[4]; // 0x88 DOTALevelingAbilityBonus_t m_ScepterBonus; // 0xc8 DOTALevelingAbilityBonus_t m_ShardBonus; // 0xf0 int32_t m_nDamageTypeField; // 0x118 bool m_bSpellDamageField; // 0x11c bool m_bScepterField; // 0x11d bool m_bShardField; // 0x11e EDOTASpecialBonusOperation m_eSpecialBonusOperation; // 0x11f }; // Alignment: 2 // Size: 0x20 struct ItemRecipe_t { public: CUtlVector< AbilityID_t > m_vecRecipeComponents; // 0x0 int32_t m_nPrimaryComponentIndex; // 0x18 }; // Alignment: 1 // Size: 0x4 struct AbilityID_t { public: int32_t m_Value; // 0x0 }; // Alignment: 6 // Size: 0x588 class CDOTAGameEvents : public CBaseEntity { public: CEntityIOOutput m_OnDayStarted; // 0x498 CEntityIOOutput m_OnNightStarted; // 0x4c0 CEntityIOOutput m_OnRadiantFortDestroyed; // 0x4e8 CEntityIOOutput m_OnDireFortDestroyed; // 0x510 CEntityIOOutput m_OnGameEnded; // 0x538 CEntityIOOutput m_OnGameStarted; // 0x560 }; // Alignment: 1 // Size: 0x4 struct PlayerID_t { public: int32_t m_Value; // 0x0 }; // Alignment: 0 // Size: 0x588 class CDOTACustomGameEvents : public CDOTAGameEvents { public: // no members available }; // Alignment: 1 // Size: 0x4a0 class CDOTAGamerulesProxy : public CGameRulesProxy { public: // MNetworkEnable // MNetworkTypeAlias "CDOTAGameRules*" // MNetworkPriority "32" CDOTAGameRules* m_pGameRules; // 0x498 }; // Alignment: 3 // Size: 0xc struct HeroPickRecord_t { public: HeroPickType eType; // 0x0 int32_t nHeroID; // 0x4 int32_t nTeam; // 0x8 }; // Alignment: 4 // Size: 0x10 struct HeroDeathRecord_t { public: PlayerID_t nKillerPlayerID; // 0x0 PlayerID_t nVictimPlayerID; // 0x4 float fTime; // 0x8 float fTimeRespawn; // 0xc }; // Alignment: 5 // Size: 0x38 struct NeutralSpawnBoxes_t { public: AABB_t neutralSpawnBoxes; // 0x0 Vector vSpawnBoxOrigin; // 0x18 private: [[maybe_unused]] uint8_t __pad0024[0x4]; // 0x24 public: CUtlString strCampName; // 0x28 CEntityIndex iSpawnerEntIndex; // 0x30 int32_t nCampType; // 0x34 }; // Alignment: 4 // Size: 0x18 class CDOTA_ReconnectInfo { public: uint64_t m_playerSteamId; // 0x0 int32_t m_iTeam; // 0x8 CEntityIndex m_iUnitControlled; // 0xc bool m_bWantsRandomHero; // 0x10 }; // Alignment: 9 // Size: 0x58 class CDOTA_ItemStockInfo { public: // MNetworkEnable int32_t iTeamNumber; // 0x30 // MNetworkEnable AbilityID_t nItemAbilityID; // 0x34 // MNetworkEnable float fStockDuration; // 0x38 // MNetworkEnable GameTime_t fStockTime; // 0x3c // MNetworkEnable int32_t iStockCount; // 0x40 // MNetworkEnable int32_t iMaxCount; // 0x44 // MNetworkEnable float fInitialStockDuration; // 0x48 // MNetworkEnable PlayerID_t iPlayerID; // 0x4c // MNetworkEnable int32_t iBonusDelayedStockCount; // 0x50 }; // Alignment: 1 // Size: 0x48 class CHeroesPerPlayer { public: // MNetworkEnable CNetworkUtlVectorBase< int32 > m_vecHeroIDs; // 0x30 }; // Alignment: 2 // Size: 0x38 class CHeroStatueLiked { public: // MNetworkEnable PlayerID_t m_iPlayerIDLiker; // 0x30 // MNetworkEnable PlayerID_t m_iPlayerIDLiked; // 0x34 }; // Alignment: 2 // Size: 0x10 class DOTA_AssassinMinigameNetworkState { public: // MNetworkEnable uint16_t nAssassinState; // 0x8 // MNetworkEnable uint16_t nVictimHeroID; // 0xa }; // Alignment: 3 // Size: 0x40 class CDOTA_AbilityDraftAbilityState { public: // MNetworkEnable AbilityID_t m_nAbilityID; // 0x30 // MNetworkEnable PlayerID_t m_unPlayerID; // 0x34 // MNetworkEnable int32_t m_unAbilityPlayerSlot; // 0x38 }; // Alignment: 1 // Size: 0x8 struct MatchID_t { public: uint64_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4a0 class CDOTA_DisplacementVisibility : public CBaseEntity { public: // MNetworkEnable int32_t m_HiddenDisplacement; // 0x498 }; // Alignment: 0 // Size: 0x498 class CDOTABaseCustomHeroPickRules : public CBaseEntity { public: // no members available }; // Alignment: 3 // Size: 0x138 class CDOTACustomShopItemInfo { public: // MNetworkEnable AbilityID_t m_nAbilityID; // 0x30 // MNetworkEnable int32_t m_nStockCount; // 0x34 // MNetworkEnable char m_Category[256]; // 0x38 }; // Alignment: 2 // Size: 0x1a0 class CDOTACustomShopInfo { public: // MNetworkEnable char m_CustomShopName[256]; // 0x30 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CDOTACustomShopItemInfo > m_CustomShopItems; // 0x130 }; // Alignment: 102 // Size: 0x750 class CDOTABaseGameMode : public CBaseEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnForcedHUDSkinChanged" CUtlString m_ForcedHUDSkin; // 0x4a0 // MNetworkEnable int32_t m_nCustomGameForceHeroSelectionId; // 0x4a8 // MNetworkEnable bool m_bAlwaysShowPlayerInventory; // 0x4ac // MNetworkEnable bool m_bGoldSoundDisabled; // 0x4ad // MNetworkEnable bool m_bRecommendedItemsDisabled; // 0x4ae // MNetworkEnable bool m_bStickyItemDisabled; // 0x4af // MNetworkEnable bool m_bStashPurchasingDisabled; // 0x4b0 // MNetworkEnable bool m_bFogOfWarDisabled; // 0x4b1 // MNetworkEnable bool m_bUseUnseenFOW; // 0x4b2 // MNetworkEnable bool m_bUseCustomBuybackCost; // 0x4b3 // MNetworkEnable bool m_bUseCustomBuybackCooldown; // 0x4b4 // MNetworkEnable bool m_bBuybackEnabled; // 0x4b5 // MNetworkEnable bool m_bUseTurboCouriers; // 0x4b6 private: [[maybe_unused]] uint8_t __pad04b7[0x1]; // 0x4b7 public: // MNetworkEnable float m_flCameraDistanceOverride; // 0x4b8 // MNetworkEnable int32_t m_nCameraSmoothCountOverride; // 0x4bc // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hOverrideSelectionEntity; // 0x4c0 // MNetworkEnable bool m_bTopBarTeamValuesOverride; // 0x4c4 // MNetworkEnable bool m_bTopBarTeamValuesVisible; // 0x4c5 private: [[maybe_unused]] uint8_t __pad04c6[0x2]; // 0x4c6 public: // MNetworkEnable int32_t m_nTeamGoodGuysTopBarValue; // 0x4c8 // MNetworkEnable int32_t m_nTeamBadGuysTopBarValue; // 0x4cc // MNetworkEnable bool m_bAlwaysShowPlayerNames; // 0x4d0 // MNetworkEnable bool m_bUseCustomHeroLevels; // 0x4d1 private: [[maybe_unused]] uint8_t __pad04d2[0x6]; // 0x4d2 public: // MNetworkEnable CNetworkUtlVectorBase< int32 > m_nCustomXPRequiredToReachNextLevel; // 0x4d8 // MNetworkEnable bool m_bTowerBackdoorProtectionEnabled; // 0x4f0 // MNetworkEnable bool m_bBotThinkingEnabled; // 0x4f1 // MNetworkEnable bool m_bAnnouncerDisabled; // 0x4f2 // MNetworkEnable bool m_bAnnouncerGameModeAnnounceDisabled; // 0x4f3 // MNetworkEnable bool m_bDeathTipsDisabled; // 0x4f4 // MNetworkEnable bool m_bFilterPlayerHeroAvailability; // 0x4f5 // MNetworkEnable bool m_bKillingSpreeAnnouncerDisabled; // 0x4f6 private: [[maybe_unused]] uint8_t __pad04f7[0x1]; // 0x4f7 public: // MNetworkEnable float m_flFixedRespawnTime; // 0x4f8 // MNetworkEnable float m_flBuybackCostScale; // 0x4fc // MNetworkEnable float m_flRespawnTimeScale; // 0x500 // MNetworkEnable bool m_bLoseGoldOnDeath; // 0x504 // MNetworkEnable bool m_bKillableTombstones; // 0x505 private: [[maybe_unused]] uint8_t __pad0506[0x2]; // 0x506 public: // MNetworkEnable uint32_t m_nHUDVisibilityBits; // 0x508 // MNetworkEnable float m_flMinimumAttackSpeed; // 0x50c // MNetworkEnable float m_flMaximumAttackSpeed; // 0x510 // MNetworkEnable bool m_bIsDaynightCycleDisabled; // 0x514 private: [[maybe_unused]] uint8_t __pad0515[0x3]; // 0x515 public: // MNetworkEnable float m_flDaynightCycleAdvanceRate; // 0x518 // MNetworkEnable bool m_bAreWeatherEffectsDisabled; // 0x51c // MNetworkEnable bool m_bDisableHudFlip; // 0x51d // MNetworkEnable bool m_bEnableFriendlyBuildingMoveTo; // 0x51e // MNetworkEnable bool m_bIsDeathOverlayDisabled; // 0x51f // MNetworkEnable bool m_bIsHudCombatEventsDisabled; // 0x520 private: [[maybe_unused]] uint8_t __pad0521[0x7]; // 0x521 public: // MNetworkEnable CUtlString m_strDefaultStickyItem; // 0x528 // MNetworkEnable CUtlString m_sCustomTerrainWeatherEffect; // 0x530 // MNetworkEnable CUtlString m_strTPScrollSlotItemOverride; // 0x538 // MNetworkEnable float m_flStrengthDamage; // 0x540 // MNetworkEnable float m_flStrengthHP; // 0x544 // MNetworkEnable float m_flStrengthHPRegen; // 0x548 // MNetworkEnable float m_flAgilityDamage; // 0x54c // MNetworkEnable float m_flAgilityArmor; // 0x550 // MNetworkEnable float m_flAgilityAttackSpeed; // 0x554 // MNetworkEnable float m_flAgilityMovementSpeedPercent; // 0x558 // MNetworkEnable float m_flIntelligenceDamage; // 0x55c // MNetworkEnable float m_flIntelligenceMana; // 0x560 // MNetworkEnable float m_flIntelligenceManaRegen; // 0x564 // MNetworkEnable float m_flIntelligenceSpellAmpPercent; // 0x568 // MNetworkEnable float m_flStrengthMagicResistancePercent; // 0x56c // MNetworkEnable float m_flDraftingHeroPickSelectTimeOverride; // 0x570 // MNetworkEnable float m_flDraftingBanningTimeOverride; // 0x574 // MNetworkEnable bool m_bPauseEnabled; // 0x578 private: [[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579 public: // MNetworkEnable float m_flCustomScanCooldown; // 0x57c // MNetworkEnable float m_flCustomGlyphCooldown; // 0x580 // MNetworkEnable float m_flCustomBackpackSwapCooldown; // 0x584 // MNetworkEnable float m_flCustomBackpackCooldownPercent; // 0x588 // MNetworkEnable bool m_bDefaultRuneSpawnLogic; // 0x58c // MNetworkEnable bool m_bEnableFreeCourierMode; // 0x58d // MNetworkEnable bool m_bAllowNeutralItemDrops; // 0x58e // MNetworkEnable bool m_bEnableNeutralStash; // 0x58f // MNetworkEnable bool m_bEnableNeutralStashTeamViewOnly; // 0x590 // MNetworkEnable bool m_bEnableNeutralItemHideUndiscovered; // 0x591 // MNetworkEnable bool m_bEnableSendToStash; // 0x592 // MNetworkEnable bool m_bForceRightClickAttackDisabled; // 0x593 private: [[maybe_unused]] uint8_t __pad0594[0x4]; // 0x594 public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CDOTACustomShopInfo > m_vecCustomShopInfo; // 0x598 // MNetworkEnable bool m_bCanSellAnywhere; // 0x5e8 private: [[maybe_unused]] uint8_t __pad05e9[0x3]; // 0x5e9 public: // MNetworkEnable float m_flCameraNearZ; // 0x5ec // MNetworkEnable float m_flCameraFarZ; // 0x5f0 // MNetworkEnable int32_t m_nCustomRadiantScore; // 0x5f4 // MNetworkEnable int32_t m_nCustomDireScore; // 0x5f8 // MNetworkEnable bool m_bAbilityUpgradeWhitelistEnabled; // 0x5fc private: [[maybe_unused]] uint8_t __pad05fd[0x3]; // 0x5fd public: // MNetworkEnable CNetworkUtlVectorBase< AbilityID_t > m_vecAbilityUpgradeWhitelist; // 0x600 // MNetworkEnable bool m_bGiveFreeTPOnDeath; // 0x618 private: [[maybe_unused]] uint8_t __pad0619[0x3]; // 0x619 public: // MNetworkEnable int32_t m_nInnateMeleeDamageBlockPct; // 0x61c // MNetworkEnable int32_t m_nInnateMeleeDamageBlockAmount; // 0x620 // MNetworkEnable int32_t m_nInnateMeleeDamageBlockPerLevelAmount; // 0x624 // MNetworkEnable float m_flWaterRuneSpawnInterval; // 0x628 private: [[maybe_unused]] uint8_t __pad062c[0x1c]; // 0x62c public: bool m_bSelectionGoldPenaltyEnabled; // 0x648 bool m_bRemoveIllusionsOnDeath; // 0x649 bool m_bRandomHeroBonusItemGrantDisabled; // 0x64a bool m_bDisableClumpingBehaviorByDefault; // 0x64b bool m_bRuneTypeEnabled[8]; // 0x64c bool m_bOverrideBotLateGame; // 0x654 bool m_bBotsAlwaysPushWithHuman; // 0x655 bool m_bBotsInLateGame; // 0x656 private: [[maybe_unused]] uint8_t __pad0657[0x1]; // 0x657 public: int32_t m_nBotMaxPushTier; // 0x658 float m_flFountainPercentageHealthRegen; // 0x65c float m_flFountainPercentageManaRegen; // 0x660 float m_flFountainConstantManaRegen; // 0x664 float m_flPowerRuneSpawnInterval; // 0x668 float m_flBountyRuneSpawnInterval; // 0x66c }; // Alignment: 11 // Size: 0x800 class CDOTATurboGameMode : public CDOTABaseGameMode { public: int32_t m_nHighestLevelInCurrentGame; // 0x768 private: [[maybe_unused]] uint8_t __pad076c[0x34]; // 0x76c public: CUtlVector< float32 > m_ExtraMeleeCreepTimes; // 0x7a0 CUtlVector< float32 > m_ExtraRangedCreepTimes; // 0x7b8 CUtlVector< float32 > m_ExtraSiegeCreepTimes; // 0x7d0 int32_t m_nExtraGoldPerWave; // 0x7e8 int32_t m_nExtraXPPerWave; // 0x7ec float m_flNextRewardDistributionTime; // 0x7f0 float m_flNextWaveRecalculationTime; // 0x7f4 float m_flNextNeutralItemDistributionTime; // 0x7f8 bool m_bInOvertime; // 0x7fc bool m_bDistributingPassiveGoldAndXp; // 0x7fd }; // Alignment: 5 // Size: 0x808 class CDOTANewPlayerPoolGameMode : public CDOTABaseGameMode { public: int32_t m_nHighestLevelInCurrentGame; // 0x750 private: [[maybe_unused]] uint8_t __pad0754[0x64]; // 0x754 public: CUtlVector< float32 > m_ExtraMeleeCreepTimes; // 0x7b8 CUtlVector< float32 > m_ExtraRangedCreepTimes; // 0x7d0 CUtlVector< float32 > m_ExtraSiegeCreepTimes; // 0x7e8 bool m_bInOvertime; // 0x800 }; // Alignment: 0 // Size: 0x750 class CDOTAMutationGameMode : public CDOTABaseGameMode { public: // no members available }; // Alignment: 1 // Size: 0x4a0 class CDOTATurboHeroPickRules : public CDOTABaseCustomHeroPickRules { public: // MNetworkEnable DOTACustomHeroPickRulesPhase_t m_Phase; // 0x498 }; // Alignment: 4 // Size: 0x4a8 class CDOTACustomGameHeroPickRules : public CDOTABaseCustomHeroPickRules { public: // MNetworkEnable DOTACustomHeroPickRulesPhase_t m_Phase; // 0x498 // MNetworkEnable int32_t m_nNumBansPerTeam; // 0x49c // MNetworkEnable GameTime_t m_flEnterTime; // 0x4a0 int32_t m_nNumHeroesPicked; // 0x4a4 }; // Alignment: 4 // Size: 0x18 struct GameChatLogEntry_t { public: int32_t m_nTeam; // 0x0 PlayerID_t m_nPlayerID; // 0x4 CUtlString m_sText; // 0x8 GameTime_t m_flGameTime; // 0x10 }; // Alignment: 1 // Size: 0x1 struct GCPlayerSlot_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 84 // Size: 0x228 struct DOTAAbilityDefinition_t { public: char* m_pszAbilityName; // 0x0 char* m_pszTextureName; // 0x8 char* m_pszSharedCooldownName; // 0x10 char* m_pszKeyOverride; // 0x18 char* m_pszItemRecipeName; // 0x20 char* m_pszLinkedAbility; // 0x28 int32_t m_castActivity; // 0x30 DotaGestureSlot_t m_castActivityGestureSlot; // 0x34 KeyValues* m_pKVData; // 0x38 AbilityID_t m_iAbilityID; // 0x40 int32_t m_iAbilityType; // 0x44 uint64_t m_iAbilityBehavior; // 0x48 int32_t m_iAbilityTargetTeam; // 0x50 int32_t m_iAbilityTargetType; // 0x54 int32_t m_iAbilityTargetFlags; // 0x58 int32_t m_iAbilityDamageType; // 0x5c int32_t m_iAbilityImmunityType; // 0x60 int32_t m_iAbilityDispellableType; // 0x64 int32_t m_iFightRecapLevel; // 0x68 item_definition_index_t m_iAssociatedConsumableItemDef; // 0x6c uint32_t m_nRequiredEffectsMask; // 0x70 int32_t m_iAssociatedEventID; // 0x74 int32_t m_iMaxLevel; // 0x78 int32_t m_iItemBaseLevel; // 0x7c float m_flItemLevelByGameTime; // 0x80 int32_t m_iItemCost; // 0x84 int32_t m_iItemInitialCharges; // 0x88 int32_t m_iItemNeutralTierIndex; // 0x8c int32_t m_iItemStockMax; // 0x90 float m_fItemStockTime; // 0x94 int32* m_pItemShopTagKeys; // 0x98 AbilityID_t m_nRecipeResultAbilityID; // 0xa0 private: [[maybe_unused]] uint8_t __pad00a4[0x4]; // 0xa4 public: CUtlVector< AbilityID_t > m_vecItemCombinesInto; // 0xa8 CUtlVector< ItemRecipe_t > m_vecItemRecipes; // 0xc0 int32_t m_nUpgradeGoal; // 0xd8 ItemQuality_t m_ItemQuality; // 0xdc float m_flModifierValue; // 0xe0 float m_flModifierValueBonus; // 0xe4 CUtlVector< CUtlString > m_InvalidHeroes; // 0xe8 private: [[maybe_unused]] uint8_t __pad0100[0xb4]; // 0x100 public: bool m_bHasScepterUpgrade; // 0x1b4 bool m_bHasShardUpgrade; // 0x1b5 bool m_bSharedWithTeammates; // 0x1b6 private: [[maybe_unused]] uint8_t __pad01b7[0x1]; // 0x1b7 public: int32_t m_nCastRangeBuffer; // 0x1b8 int32_t m_nSpecialAbilities; // 0x1bc DOTASpecialAbility_t* m_pSpecialAbilities; // 0x1c0 CUtlVector< DOTAOutgoingBonus_t > m_OutgoingBonuses; // 0x1c8 char* m_pModelName; // 0x1e0 char* m_pModelAlternateName; // 0x1e8 char* m_pEffectName; // 0x1f0 char* m_pPingOverrideText; // 0x1f8 char* m_pszRequiredCustomShopName; // 0x200 char* m_pszLinkedScepterAbility; // 0x208 char* m_pszLinkedShardAbility; // 0x210 int32_t m_nKillToastOverride; // 0x218 int32_t m_iLevelsBetweenUpgrades; // 0x21c int32_t m_iRequiredLevel; // 0x220 struct { uint8_t m_bIsItem: 1; uint8_t m_bItemIsRecipe: 1; uint8_t m_bItemIsRecipeGenerated: 1; uint8_t m_bItemAvailableAtSecretShop: 1; uint8_t m_bItemAvailableAtGlobalShop: 1; uint8_t m_bItemAvailableAtSideShop: 1; uint8_t m_bItemAvailableAtCustomShop: 1; uint8_t m_bItemIsPureSupport: 1; uint8_t m_bItemIsPurchasable: 1; uint8_t m_bItemIsUpgradeable: 1; uint8_t m_bItemStackable: 1; uint8_t m_bDisplayAdditionalHeroes: 1; uint8_t m_bItemContributesToNetWorthWhenDropped: 1; uint8_t m_bOnCastbar: 1; uint8_t m_bOnLearnbar: 1; uint8_t m_bIsGrantedByScepter: 1; uint8_t m_bIsGrantedByShard: 1; uint8_t m_bIsCastableWhileHidden: 1; uint8_t m_bAnimationIgnoresModelScale: 1; uint8_t m_bIsPlayerSpecificCooldown: 1; uint8_t m_bIsAllowedInBackpack: 1; uint8_t m_bIsObsolete: 1; uint8_t m_bItemRequiresCustomShop: 1; uint8_t m_bShouldBeSuggested: 1; uint8_t m_bShouldBeInitiallySuggested: 1; uint8_t m_bHasCastAnimation: 1; uint8_t m_bItemHasPassive: 1; uint8_t m_bDisplayOverheadAlertOnReceived: 1; uint32_t __pad2: 28; // @note: autoaligned }; // 56 bits }; // Alignment: 1 // Size: 0x4 struct LeagueID_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 294 // Size: 0x5628 class CDOTAGameRules : public CMultiplayRules { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x90 private: [[maybe_unused]] uint8_t __pad00b8[0x50]; // 0xb8 public: // MNetworkEnable int32_t m_nTotalPausedTicks; // 0x108 // MNetworkEnable int32_t m_nPauseStartTick; // 0x10c // MNetworkEnable bool m_bGamePaused; // 0x110 private: [[maybe_unused]] uint8_t __pad0111[0x7]; // 0x111 public: double m_flPauseTime; // 0x118 PlayerID_t m_pausingPlayerId; // 0x120 PlayerID_t m_unpausingPlayerId; // 0x124 float m_fPauseRawTime; // 0x128 float m_fPauseCurTime; // 0x12c float m_fUnpauseRawTime; // 0x130 float m_fUnpauseCurTime; // 0x134 int32_t m_nPausesRemaining[64]; // 0x138 float m_nLastPauseTime[64]; // 0x238 private: [[maybe_unused]] uint8_t __pad0338[0x8]; // 0x338 public: // MNetworkEnable int32_t m_iMiscHeroPickCounter; // 0x340 // MNetworkEnable CHandle< CBaseEntity > m_hEndGameCinematicEntity; // 0x344 CountdownTimer m_EndGameCinematicTimer; // 0x348 // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hOverlayHealthBarUnit; // 0x360 // MNetworkEnable int32_t m_nOverlayHealthBarType; // 0x364 // MNetworkEnable // MNetworkChangeCallback "OnCinematicModeChanged" bool m_bIsInCinematicMode; // 0x368 bool m_bIsInClientSideCinematicMode; // 0x369 // MNetworkEnable bool m_bFreeCourierMode; // 0x36a private: [[maybe_unused]] uint8_t __pad036b[0x1]; // 0x36b public: int32_t m_nStartingGold; // 0x36c int32_t m_nGoldPerTick; // 0x370 float m_flGoldTickTime; // 0x374 bool m_bEnableSuggestAbilities; // 0x378 bool m_bEnableSuggestItems; // 0x379 private: [[maybe_unused]] uint8_t __pad037a[0x1e]; // 0x37a public: // MNetworkEnable uint32_t m_unFanfareGoodGuys; // 0x398 // MNetworkEnable uint32_t m_unFanfareBadGuys; // 0x39c GameTime_t m_flFanfareTime; // 0x3a0 bool m_bSpeechUseSpawnInsteadOfRespawnConcept; // 0x3a4 bool m_bSpeechSendTeamSpeaksToSpectators; // 0x3a5 bool m_bIgnoreLobbyTeamsInCustomGames; // 0x3a6 private: [[maybe_unused]] uint8_t __pad03a7[0x1]; // 0x3a7 public: int32_t m_nCustomGameBansPerTeam; // 0x3a8 int32_t m_iFOWDefeatedTempViewer; // 0x3ac private: [[maybe_unused]] uint8_t __pad03b0[0x48]; // 0x3b0 public: // MNetworkEnable int32_t m_nGameState; // 0x3f8 // MNetworkEnable DOTA_HeroPickState m_nHeroPickState; // 0x3fc // MNetworkEnable bool m_bAlternateHeroGridsEnabled; // 0x400 private: [[maybe_unused]] uint8_t __pad0401[0x3]; // 0x401 public: // MNetworkEnable GameTime_t m_flStateTransitionTime; // 0x404 // MNetworkEnable float m_flOverride_dota_hero_selection_time; // 0x408 // MNetworkEnable float m_flOverride_dota_pregame_time; // 0x40c // MNetworkEnable float m_flOverride_dota_postgame_time; // 0x410 // MNetworkEnable float m_flOverride_dota_strategy_time; // 0x414 // MNetworkEnable float m_flOverride_dota_team_showcase_duration; // 0x418 // MNetworkEnable float m_flOverride_dota_rune_spawn_time; // 0x41c // MNetworkEnable float m_flShowcaseTime[14]; // 0x420 // MNetworkEnable float m_flNeutralInitialSpawnOffset; // 0x458 float m_flOverride_dota_tree_regrow_time; // 0x45c // MNetworkEnable int32_t m_iGameMode; // 0x460 // MNetworkEnable // MNetworkChangeCallback "OnGameModeEntityChanged" CHandle< CBaseEntity > m_hGameModeEntity; // 0x464 // MNetworkEnable CHandle< CBaseEntity > m_hCustomHeroPickRulesEntity; // 0x468 // MNetworkEnable GameTime_t m_flHeroPickStateTransitionTime; // 0x46c // MNetworkEnable // MNetworkEncoder uint64_t m_iPlayerIDsInControl; // 0x470 // MNetworkEnable bool m_bSameHeroSelectionEnabled; // 0x478 // MNetworkEnable bool m_bUseCustomHeroXPValue; // 0x479 // MNetworkEnable bool m_bUseBaseGoldBountyOnHeroes; // 0x47a // MNetworkEnable bool m_bUseUniversalShopMode; // 0x47b // MNetworkEnable bool m_bHideKillMessageHeaders; // 0x47c private: [[maybe_unused]] uint8_t __pad047d[0x3]; // 0x47d public: // MNetworkEnable float m_flHeroMinimapIconScale; // 0x480 // MNetworkEnable float m_flCreepMinimapIconScale; // 0x484 // MNetworkEnable bool m_bCreepSpawningEnabled; // 0x488 private: [[maybe_unused]] uint8_t __pad0489[0x3]; // 0x489 public: // MNetworkEnable float m_flRuneMinimapIconScale; // 0x48c // MNetworkEnable char m_CustomVictoryMessage[256]; // 0x490 // MNetworkEnable float m_flCustomGameEndDelay; // 0x590 // MNetworkEnable float m_flCustomGameSetupAutoLaunchDelay; // 0x594 // MNetworkEnable float m_flCustomGameSetupTimeout; // 0x598 // MNetworkEnable float m_flCustomVictoryMessageDuration; // 0x59c // MNetworkEnable float m_flHeroSelectPenaltyTime; // 0x5a0 // MNetworkEnable bool m_bCustomGameSetupAutoLaunchEnabled; // 0x5a4 // MNetworkEnable bool m_bCustomGameTeamSelectionLocked; // 0x5a5 // MNetworkEnable bool m_bCustomGameEnablePickRules; // 0x5a6 // MNetworkEnable bool m_bCustomGameAllowHeroPickMusic; // 0x5a7 // MNetworkEnable bool m_bCustomGameAllowMusicAtGameStart; // 0x5a8 // MNetworkEnable bool m_bCustomGameAllowBattleMusic; // 0x5a9 // MNetworkEnable bool m_bCustomGameDisableIK; // 0x5aa // MNetworkEnable bool m_bCustomGameAllowSecondaryAbilitiesOnOtherUnits; // 0x5ab // MNetworkEnable int32_t m_iCMModePickBanOrder; // 0x5ac // MNetworkEnable int32_t m_iCDModePickBanOrder; // 0x5b0 // MNetworkEnable int32_t m_nGGTeam; // 0x5b4 // MNetworkEnable GameTime_t m_flGGEndsAtTime; // 0x5b8 // MNetworkEnable bool m_bGGCalled; // 0x5bc // MNetworkEnable bool m_bWhiteListEnabled; // 0x5bd private: [[maybe_unused]] uint8_t __pad05be[0x2]; // 0x5be public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnWhitelistChanged" uint64_t m_bItemWhiteList[4]; // 0x5c0 // MNetworkEnable int32_t m_nLastHitUIMode; // 0x5e0 // MNetworkEnable bool m_bHUDTimerTutorialMode; // 0x5e4 private: [[maybe_unused]] uint8_t __pad05e5[0x3]; // 0x5e5 public: CountdownTimer m_HeroPickMiscTimer; // 0x5e8 CountdownTimer m_ExtraTimeTimer; // 0x600 // MNetworkEnable float m_fExtraTimeRemaining[2]; // 0x618 // MNetworkEnable bool m_bHeroRespawnEnabled; // 0x620 // MNetworkEnable bool m_bIsRandomingEnabled; // 0x621 private: [[maybe_unused]] uint8_t __pad0622[0x6]; // 0x622 public: CUtlVector< int32 > m_HeroPickPhaseBitfield; // 0x628 bool m_bHasSwapped[64]; // 0x640 // MNetworkEnable PlayerID_t m_iCaptainPlayerIDs[2]; // 0x680 // MNetworkEnable int32_t m_BannedHeroes[24]; // 0x688 // MNetworkEnable int32_t m_SelectedHeroes[24]; // 0x6e8 // MNetworkEnable int32_t m_iActiveTeam; // 0x748 // MNetworkEnable int32_t m_iStartingTeam; // 0x74c // MNetworkEnable int32_t m_iPenaltyLevelRadiant; // 0x750 // MNetworkEnable int32_t m_iPenaltyLevelDire; // 0x754 // MNetworkEnable bool m_bIsLoadingScenario; // 0x758 private: [[maybe_unused]] uint8_t __pad0759[0x7]; // 0x759 public: CUtlVector< int32 > m_vecBanNominatedHeroes; // 0x760 // MNetworkEnable CNetworkUtlVectorBase< int32 > m_vecNewBannedHeroes; // 0x778 // MNetworkEnable CNetworkUtlVectorBase< int32 > m_vecWhitelistedHeroes; // 0x790 // MNetworkEnable CNetworkUtlVectorBase< int32 > m_vecBlacklistedHeroes; // 0x7a8 // MNetworkEnable bool m_bHideBlacklistedHeroes; // 0x7c0 private: [[maybe_unused]] uint8_t __pad07c1[0x3]; // 0x7c1 public: // MNetworkEnable int32_t m_nSeriesType; // 0x7c4 // MNetworkEnable int32_t m_nRadiantSeriesWins; // 0x7c8 // MNetworkEnable int32_t m_nDireSeriesWins; // 0x7cc // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecAvailableHerosPerPlayerID; // 0x7d0 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecLockedHerosByPlayerID; // 0x840 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecDisabledRandomHerosByPlayerID; // 0x8b0 int32_t m_CustomGameForceSelectHero[24]; // 0x920 float m_flGoldTime; // 0x980 float m_flXPTime; // 0x984 GameTime_t m_flCreepSpawntime; // 0x988 float m_flAnnounceStartTime; // 0x98c // MNetworkEnable int32_t m_iGoodTomeCount; // 0x990 // MNetworkEnable int32_t m_iBadTomeCount; // 0x994 // MNetworkEnable GameTime_t m_flPreGameStartTime; // 0x998 // MNetworkEnable GameTime_t m_flGameStartTime; // 0x99c // MNetworkEnable GameTime_t m_flGameEndTime; // 0x9a0 // MNetworkEnable float m_flGameLoadTime; // 0x9a4 // MNetworkEnable int32_t m_iCustomGameScore[2]; // 0x9a8 // MNetworkEnable int32_t m_nCustomGameDifficulty; // 0x9b0 bool m_bEnemyModifiersEnabled; // 0x9b4 private: [[maybe_unused]] uint8_t __pad09b5[0x3]; // 0x9b5 public: int32_t m_iWaves; // 0x9b8 int32_t m_iCreepUpgradeState; // 0x9bc // MNetworkEnable GameTime_t m_fGoodGlyphCooldown; // 0x9c0 // MNetworkEnable GameTime_t m_fBadGlyphCooldown; // 0x9c4 // MNetworkEnable GameTime_t m_flGlyphCooldowns[14]; // 0x9c8 // MNetworkEnable GameTime_t m_fGoodRadarCooldown; // 0xa00 // MNetworkEnable GameTime_t m_fBadRadarCooldown; // 0xa04 // MNetworkEnable GameTime_t m_flRadarCooldowns[14]; // 0xa08 // MNetworkEnable float m_flOutpostTimes[24]; // 0xa40 // MNetworkEnable bool m_bIsNightstalkerNight; // 0xaa0 // MNetworkEnable bool m_bIsTemporaryNight; // 0xaa1 // MNetworkEnable bool m_bIsTemporaryDay; // 0xaa2 private: [[maybe_unused]] uint8_t __pad0aa3[0x1]; // 0xaa3 public: // MNetworkEnable int32_t m_nRiverType; // 0xaa4 // MNetworkEnable PlayerID_t m_nTeamFeaturedPlayerID[14]; // 0xaa8 // MNetworkEnable item_definition_index_t m_nTeamVersusScreen[14]; // 0xae0 float m_flGoldRedistributeTime; // 0xb18 int32_t m_nGoldToRedistribute[2]; // 0xb1c GameTime_t m_flNextPreGameThink; // 0xb24 GameTime_t m_flNextAllDraftGoldThink; // 0xb28 private: [[maybe_unused]] uint8_t __pad0b2c[0x4]; // 0xb2c public: double m_flTimeEnteredState; // 0xb30 uint32_t m_unRiverAccountID; // 0xb38 private: [[maybe_unused]] uint8_t __pad0b3c[0x4]; // 0xb3c public: itemid_t m_ulRiverItemID; // 0xb40 private: [[maybe_unused]] uint8_t __pad0b48[0x40]; // 0xb48 public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CDOTA_ItemStockInfo > m_vecItemStockInfo; // 0xb88 // MNetworkEnable DOTA_AssassinMinigameNetworkState m_AssassinMiniGameNetData; // 0xbf8 // MNetworkEnable int32_t m_nGameWinner; // 0xc08 private: [[maybe_unused]] uint8_t __pad0c0c[0x4]; // 0xc0c public: // MNetworkEnable MatchID_t m_unMatchID64; // 0xc10 // MNetworkEnable bool m_bMatchSignoutComplete; // 0xc18 private: [[maybe_unused]] uint8_t __pad0c19[0x3]; // 0xc19 public: // MNetworkEnable CHandle< CBaseEntity > m_hSideShop1; // 0xc1c // MNetworkEnable CHandle< CBaseEntity > m_hSideShop2; // 0xc20 // MNetworkEnable CHandle< CBaseEntity > m_hSecretShop1; // 0xc24 // MNetworkEnable CHandle< CBaseEntity > m_hSecretShop2; // 0xc28 // MNetworkEnable CHandle< CBaseEntity > m_hTeamFountains[14]; // 0xc2c // MNetworkEnable CHandle< CBaseEntity > m_hTeamForts[14]; // 0xc64 // MNetworkEnable CHandle< CBaseEntity > m_hTeamShops[14]; // 0xc9c // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerGood; // 0xcd4 // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerBad; // 0xcd8 // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerSpectator; // 0xcdc // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerGood_KillingSpree; // 0xce0 // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerBad_KillingSpree; // 0xce4 // MNetworkEnable CHandle< CBaseEntity > m_hAnnouncerSpectator_KillingSpree; // 0xce8 // MNetworkEnable bool m_arrTier1TowerDestroyed[14]; // 0xcec // MNetworkEnable bool m_arrTier2TowerDestroyed[14]; // 0xcfa // MNetworkEnable bool m_arrTier3TowerDestroyed[14]; // 0xd08 // MNetworkEnable bool m_bTier1TowerDestroyed; // 0xd16 // MNetworkEnable bool m_bTier2TowerDestroyed; // 0xd17 // MNetworkEnable bool m_bTier3TowerDestroyed; // 0xd18 private: [[maybe_unused]] uint8_t __pad0d19[0x3]; // 0xd19 public: float m_fTimeOfDay; // 0xd1c // MNetworkEnable // MNetworkPriority "32" int32_t m_iNetTimeOfDay; // 0xd20 // MNetworkEnable int32_t m_nLoadedPlayers; // 0xd24 // MNetworkEnable int32_t m_nExpectedPlayers; // 0xd28 private: [[maybe_unused]] uint8_t __pad0d2c[0xc]; // 0xd2c public: // MNetworkEnable int32_t m_iMinimapDebugGridState; // 0xd38 private: [[maybe_unused]] uint8_t __pad0d3c[0x74]; // 0xd3c public: // MNetworkEnable // MNetworkPriority "32" int32_t m_iFoWFrameNumber; // 0xdb0 // MNetworkEnable Vector m_vWeatherWindDirection; // 0xdb4 KeyValues* m_pKVPostGameTable; // 0xdc0 KeyValues* m_pKVEventMatchMetadata; // 0xdc8 KeyValues* m_pKVEventSignout; // 0xdd0 private: [[maybe_unused]] uint8_t __pad0dd8[0x58]; // 0xdd8 public: // MNetworkEnable int32_t m_vecRequiredPlaytestHeroesStorage[24]; // 0xe30 // MNetworkEnable int32_t m_vecRecommendedPlaytestHeroesStorage[24]; // 0xe90 // MNetworkEnable bool m_bAllRequiredPlaytestHeroesPicked; // 0xef0 private: [[maybe_unused]] uint8_t __pad0ef1[0x3]; // 0xef1 public: // MNetworkEnable int32_t m_nLastPlaytestPickPhase; // 0xef4 int32_t m_nCustomGameFowTeamCount; // 0xef8 bool m_bUseAlternateABRules; // 0xefc bool m_bLobbyIsAssociatedWithGame; // 0xefd private: [[maybe_unused]] uint8_t __pad0efe[0x2]; // 0xefe public: CountdownTimer m_BotDebugTimer; // 0xf00 // MNetworkEnable // MNetworkPriority "48" uint8_t m_BotDebugPushLane[18]; // 0xf18 // MNetworkEnable uint8_t m_BotDebugDefendLane[18]; // 0xf2a // MNetworkEnable uint8_t m_BotDebugFarmLane[6]; // 0xf3c // MNetworkEnable uint8_t m_BotDebugRoam[8]; // 0xf42 private: [[maybe_unused]] uint8_t __pad0f4a[0x2]; // 0xf4a public: // MNetworkEnable CHandle< CBaseEntity > m_hBotDebugRoamTarget[2]; // 0xf4c // MNetworkEnable uint8_t m_BotDebugRoshan[2]; // 0xf54 private: [[maybe_unused]] uint8_t __pad0f56[0x2]; // 0xf56 public: // MNetworkEnable ERoshanSpawnPhase m_nRoshanRespawnPhase; // 0xf58 // MNetworkEnable GameTime_t m_flRoshanRespawnPhaseEndTime; // 0xf5c // MNetworkEnable // MNetworkTypeAlias "CDOTA_AbilityDraftAbilityState[MAX_ABILITY_DRAFT_ABILITIES]" CUtlVectorEmbeddedNetworkVar< CDOTA_AbilityDraftAbilityState > m_AbilityDraftAbilities; // 0xf60 // MNetworkEnable bool m_bAbilityDraftCurrentPlayerHasPicked; // 0xfd0 private: [[maybe_unused]] uint8_t __pad0fd1[0x3]; // 0xfd1 public: // MNetworkEnable int32_t m_nAbilityDraftPlayerTracker; // 0xfd4 // MNetworkEnable int32_t m_nAbilityDraftRoundNumber; // 0xfd8 // MNetworkEnable int32_t m_nAbilityDraftAdvanceSteps; // 0xfdc // MNetworkEnable int32_t m_nAbilityDraftPhase; // 0xfe0 // MNetworkEnable // MNetworkChangeCallback "OnAbilityDraftHeroesChanged" int32_t m_nAbilityDraftHeroesChosen[13]; // 0xfe4 CUtlVector< KeyValues* > m_vecARDMHeroes[2]; // 0x1018 int32_t m_nARDMHeroesPrecached; // 0x1048 float m_fLastARDMPrecache; // 0x104c // MNetworkEnable int32_t m_nAllDraftPhase; // 0x1050 // MNetworkEnable bool m_bAllDraftRadiantFirst; // 0x1054 // MNetworkEnable bool m_bAllowOverrideVPK; // 0x1055 private: [[maybe_unused]] uint8_t __pad1056[0x2]; // 0x1056 public: // MNetworkEnable int32_t m_nARDMHeroesRemaining[2]; // 0x1058 CUtlVector< CHandle< CDOTA_BaseNPC_Pet > > m_hGlobalPetList; // 0x1060 private: [[maybe_unused]] uint8_t __pad1078[0x50]; // 0x1078 public: int32_t m_nRadiantRoshanKills; // 0x10c8 int32_t m_nDireRoshanKills; // 0x10cc private: [[maybe_unused]] uint8_t __pad10d0[0xc]; // 0x10d0 public: int32_t m_nDistanceCalculations; // 0x10dc bool m_bLaneVictoryPredicted; // 0x10e0 private: [[maybe_unused]] uint8_t __pad10e1[0x7]; // 0x10e1 public: CUtlOrderedMap< PlayerID_t, int32 > m_mapSuccessfulSmokes; // 0x10e8 private: [[maybe_unused]] uint8_t __pad1110[0x10]; // 0x1110 public: // MNetworkEnable bool m_bExperimentalGameplay; // 0x1120 private: [[maybe_unused]] uint8_t __pad1121[0x1f]; // 0x1121 public: CUtlVector< HeroPickRecord_t > m_vecHeroPickRecord; // 0x1140 private: [[maybe_unused]] uint8_t __pad1158[0x20]; // 0x1158 public: CUtlVector< HeroDeathRecord_t > m_vecHeroDeathRecord; // 0x1178 private: [[maybe_unused]] uint8_t __pad1190[0x18]; // 0x1190 public: CUtlVector< CHandle< CBaseEntity > > m_BadResultPositionTriggers; // 0x11a8 CUtlVector< CHandle< CBaseEntity > > m_RoshanPositionTriggers; // 0x11c0 CUtlVector< HeroPickRecord_t > m_vecAllDraftHeroPickRecord; // 0x11d8 CUtlOrderedMap< PlayerID_t, CUtlVector< AbilityID_t > > m_vecAbilityDraftOrder; // 0x11f0 private: [[maybe_unused]] uint8_t __pad1218[0x18]; // 0x1218 public: int32_t m_nAllDraftHeroPickCollisionsThisPhase; // 0x1230 private: [[maybe_unused]] uint8_t __pad1234[0x4]; // 0x1234 public: CUtlVector< CHandle< CBaseEntity > > m_hRuneSpawners; // 0x1238 CUtlVector< CHandle< CBaseEntity > > m_hBountyRuneSpawners; // 0x1250 CUtlVector< CHandle< CBaseEntity > > m_hNeutralSpawners[2]; // 0x1268 int32_t m_iPreviousRune1; // 0x1298 int32_t m_iPreviousRune2; // 0x129c float m_fNextPowerupRuneSpawnTime; // 0x12a0 float m_fNextBountyRuneSpawnTime; // 0x12a4 float m_fNextBountyRunePrepTime; // 0x12a8 bool m_bFirstPowerupRune; // 0x12ac bool m_bFirstBountyRune; // 0x12ad bool m_bFilterMoreGold; // 0x12ae bool m_bAllowOutpostXP; // 0x12af CHandle< CBaseEntity > m_hRoshanSpawner; // 0x12b0 int32_t m_iPreviousSpectators; // 0x12b4 uint32_t m_nMaxSpectators; // 0x12b8 private: [[maybe_unused]] uint8_t __pad12bc[0x4]; // 0x12bc public: CUtlVector< CHandle< CBaseEntity > > m_hDroppedItems; // 0x12c0 CUtlVector< CHandle< CBaseEntity > > m_hWards; // 0x12d8 CHandle< CBaseEntity > m_hGameEvents; // 0x12f0 private: [[maybe_unused]] uint8_t __pad12f4[0x1c]; // 0x12f4 public: CUtlVector< CHandle< CBaseEntity > > m_Towers; // 0x1310 CUtlVector< CHandle< CDOTA_BaseNPC_Tower > > m_TeamTowers[10]; // 0x1328 CUtlVector< CHandle< CBaseEntity > > m_Outposts; // 0x1418 CUtlVector< Vector > m_TeamTowerPositions[10]; // 0x1430 CUtlVector< int32 > m_TeamTowerLevels[10]; // 0x1520 CUtlVector< int32 > m_TeamTowerLanes[10]; // 0x1610 CUtlVector< CHandle< CDOTA_BaseNPC_Building > > m_TeamBarracks[10]; // 0x1700 CUtlVector< CHandle< CDOTA_BaseNPC_Building > > m_TeamShrines[10]; // 0x17f0 CountdownTimer m_TempDayTimer; // 0x18e0 CountdownTimer m_TempNightTimer; // 0x18f8 CountdownTimer m_NightstalkerNightTimer; // 0x1910 CountdownTimer m_TempRiverTimer; // 0x1928 bool m_bUseLenientAFK[2]; // 0x1940 bool m_bFirstBlood; // 0x1942 private: [[maybe_unused]] uint8_t __pad1943[0x1]; // 0x1943 public: int32_t m_nFirstBloodTime; // 0x1944 CountdownTimer m_CheckIdleTimer; // 0x1948 PlayerID_t m_nAnnounceHeroPickRadiantPlayerID; // 0x1960 PlayerID_t m_nAnnounceHeroPickDirePlayerID; // 0x1964 CUtlString m_pszLastUsedAbility[64]; // 0x1968 CUtlVector< CDOTA_ReconnectInfo > m_reconnectinfos; // 0x1b68 CUtlVector< CHandle< CBaseEntity > > m_hEnemyCreepsInBase[10]; // 0x1b80 bool m_bTeamHasAbandonedPlayer[10]; // 0x1c70 bool m_bLobbyHasLeaverDetected; // 0x1c7a bool m_bGameIsForcedSafeToLeave; // 0x1c7b bool m_bLobbyHasDicardMatchResults; // 0x1c7c private: [[maybe_unused]] uint8_t __pad1c7d[0x3]; // 0x1c7d public: int32_t m_iGameEndReason; // 0x1c80 bool m_bNotifiedPlayerLeaverStatus[64]; // 0x1c84 bool m_bUploadedReplay; // 0x1cc4 private: [[maybe_unused]] uint8_t __pad1cc5[0x3]; // 0x1cc5 public: float m_flLobbyWaitTime; // 0x1cc8 bool m_bGameWasLoaded; // 0x1ccc private: [[maybe_unused]] uint8_t __pad1ccd[0x3]; // 0x1ccd public: int32_t m_nLoadPauseFrameCount; // 0x1cd0 private: [[maybe_unused]] uint8_t __pad1cd4[0x4]; // 0x1cd4 public: double m_flStateFallbackTransitionTime; // 0x1cd8 EngineCountdownTimer m_timerFinishReplay; // 0x1ce0 CUtlVector< GameChatLogEntry_t > m_vecChatLog; // 0x1cf8 private: [[maybe_unused]] uint8_t __pad1d10[0x2658]; // 0x1d10 public: bool m_bFatalErrorAbortGame; // 0x4368 bool m_bFillEmptySlotsWithBots; // 0x4369 private: [[maybe_unused]] uint8_t __pad436a[0x2]; // 0x436a public: uint32_t m_dotaMapSpawnGroup; // 0x436c private: [[maybe_unused]] uint8_t __pad4370[0x28]; // 0x4370 public: // MNetworkEnable uint32_t m_lobbyType; // 0x4398 // MNetworkEnable LeagueID_t m_lobbyLeagueID; // 0x439c // MNetworkEnable char m_lobbyGameName[256]; // 0x43a0 // MNetworkEnable // MNetworkChangeCallback "OnHeroStatueLiked" CUtlVectorEmbeddedNetworkVar< CHeroStatueLiked > m_vecHeroStatueLiked; // 0x44a0 // MNetworkEnable int32_t m_CustomGameTeamMaxPlayers[14]; // 0x4510 private: [[maybe_unused]] uint8_t __pad4548[0x38]; // 0x4548 public: // MNetworkEnable int32_t m_iMutations[5]; // 0x4580 private: [[maybe_unused]] uint8_t __pad4594[0x4]; // 0x4594 public: // MNetworkEnable CNetworkUtlVectorBase< CHandle< CIngameEvent_Base > > m_vecIngameEvents; // 0x4598 // MNetworkEnable int8_t m_nPrimaryIngameEventIndex; // 0x45b0 private: [[maybe_unused]] uint8_t __pad45b1[0x3]; // 0x45b1 public: uint32_t m_nOfrendaPledges; // 0x45b4 uint32_t m_nRadiantOfrendas; // 0x45b8 uint32_t m_nDireOfrendas; // 0x45bc // MNetworkEnable bool m_bOfrendaEnabled; // 0x45c0 private: [[maybe_unused]] uint8_t __pad45c1[0x1f]; // 0x45c1 public: // MNetworkEnable CNetworkUtlVectorBase< NeutralSpawnBoxes_t > m_NeutralSpawnBoxes; // 0x45e0 double m_flLastItemSuggestionRequestTime[14]; // 0x45f8 private: [[maybe_unused]] uint8_t __pad4668[0xfb8]; // 0x4668 public: double m_flLastPerfSampleTime; // 0x5620 static int32_t &Get_s_GameStateTransitionsIndex(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTAGameRules")->m_static_fields[0]->m_instance);}; }; // Alignment: 1 // Size: 0x4 struct FantasyPeriod_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x2 struct LeagueNodeID_t { public: uint16_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x2 struct LeagueNodeGroupID_t { public: uint16_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct GuildID_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct PeriodicResourceID_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct ChatWheelMessageID_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct PingWheelMessageID_t { public: uint32_t m_Value; // 0x0 }; // Alignment: 7 // Size: 0x148 class CSpeechBubbleInfo { public: // MNetworkEnable char m_LocalizationStr[256]; // 0x30 // MNetworkEnable CHandle< CBaseEntity > m_hNPC; // 0x130 // MNetworkEnable GameTime_t m_flStartTime; // 0x134 // MNetworkEnable float m_flDuration; // 0x138 // MNetworkEnable uint32_t m_unOffsetX; // 0x13c // MNetworkEnable uint32_t m_unOffsetY; // 0x140 // MNetworkEnable uint16_t m_unCount; // 0x144 }; // Alignment: 8 // Size: 0x40 class CUnitOrders { public: CUtlVector< CEntityIndex > m_nUnits; // 0x0 Vector m_vPosition; // 0x18 PlayerID_t m_nIssuerPlayerIndex; // 0x24 int32_t m_nOrderSequenceNumber; // 0x28 int32_t m_nOrderType; // 0x2c CEntityIndex m_nTargetIndex; // 0x30 CEntityIndex m_nAbilityIndex; // 0x34 uint32_t m_nFlags; // 0x38 }; // Alignment: 2 // Size: 0x8 struct WeightedAbilitySuggestion_t { public: // MNetworkEnable AbilityID_t nSuggestion; // 0x0 // MNetworkEnable float fWeight; // 0x4 }; // Alignment: 2 // Size: 0x8 struct WeightedSuggestion_t { public: // MNetworkEnable int32_t nSuggestion; // 0x0 // MNetworkEnable float fWeight; // 0x4 }; // Alignment: 53 // Size: 0xe0 class CDOTA_AttackRecord { public: CHandle< CBaseEntity > m_hSource; // 0x8 CHandle< CBaseEntity > m_hInflictor; // 0xc CHandle< CBaseEntity > m_hTarget; // 0x10 CHandle< CBaseEntity > m_hProjectileSource; // 0x14 float m_flDamage; // 0x18 float m_flOriginalDamage; // 0x1c float m_flDamagePhysical; // 0x20 float m_flDamagePhysical_IllusionDisplay; // 0x24 float m_flDamageMagical; // 0x28 float m_flDamageComposite; // 0x2c float m_flDamagePure; // 0x30 int16_t m_iRecord; // 0x34 private: [[maybe_unused]] uint8_t __pad0036[0x2]; // 0x36 public: int32_t m_iDamageCategory; // 0x38 int32_t m_iFailType; // 0x3c int32_t m_iDamageType; // 0x40 int32_t m_iFlags; // 0x44 int32_t m_animation; // 0x48 private: [[maybe_unused]] uint8_t __pad004c[0x4]; // 0x4c public: CDOTA_Orb* m_pOrb; // 0x50 CDOTA_Orb* m_pOrb2; // 0x58 struct { uint8_t m_bAttack: 1; uint8_t m_bRangedAttack: 1; uint8_t m_bDirectionalRangedAttack: 1; uint8_t m_bSkipRangeCheck: 1; uint8_t m_bFakeAttack: 1; uint8_t m_bNeverMiss: 1; uint8_t m_bLethalAttack: 1; uint8_t m_bTriggeredAttack: 1; uint8_t m_bNoCooldown: 1; uint8_t m_bProcessProcs: 1; uint8_t m_bUseProjectile: 1; uint8_t m_bUseCastAttackOrb: 1; uint8_t m_bAutoCastAttack: 1; uint8_t m_bIgnoreBaseArmor: 1; uint8_t m_bIgnoreObstructions: 1; uint8_t m_bSuppressAttackSounds: 1; uint8_t m_bSuppressDamageSounds: 1; uint8_t m_bSuppressDamageEffects: 1; uint128_t __pad3: 78; }; // 96 bits int32_t m_nBashSource; // 0x64 float m_flAttackHeight; // 0x68 float m_flCombatLogCreditFactor; // 0x6c float m_flCriticalBonus; // 0x70 float m_flCriticalDamage; // 0x74 float m_flCriticalDisplay; // 0x78 float m_flDeadlyBlowBonus; // 0x7c float m_flDeadlyBlowDamage; // 0x80 float m_flDeadlyBlowDisplay; // 0x84 int32_t m_iProjectileSpeed; // 0x88 Vector m_vForceDirectionOverride; // 0x8c Vector m_vTargetLoc; // 0x98 Vector m_vBlockLoc; // 0xa4 CUtlSymbolLarge m_iszAutoAttackRangedParticle; // 0xb0 private: [[maybe_unused]] uint8_t __pad00b8[0x8]; // 0xb8 public: ParticleIndex_t m_iCustomFXIndex; // 0xc0 DOTAProjectileAttachment_t m_iCustomProjectileAttachment; // 0xc4 }; // Alignment: 5 // Size: 0x20 class sSpiritInfo { public: Vector vTargetLoc; // 0x4 CHandle< CBaseEntity > hTarget; // 0x10 bool bHit; // 0x14 private: [[maybe_unused]] uint8_t __pad0015[0x3]; // 0x15 public: int32_t iHealAmount; // 0x18 ParticleIndex_t nFXAmbientIndex; // 0x1c }; // Alignment: 3 // Size: 0x10 class sSpiritDef { public: CDOTA_BaseNPC* pSpirit; // 0x0 ParticleIndex_t nSpiritFXIndex; // 0x8 int32_t nSpiritState; // 0xc }; // Alignment: 3 // Size: 0x10 class sSharedCooldownInfo { public: CUtlString cooldownName; // 0x0 float cooldownLength; // 0x8 GameTime_t cooldownTime; // 0xc }; // Alignment: 8 // Size: 0xd0 class CDOTA_UnitInventory { public: CUtlVector< sSharedCooldownInfo > m_SharedCooldownList; // 0x8 // MNetworkEnable CHandle< CBaseEntity > m_hItems[19]; // 0x20 bool m_bItemQueried[19]; // 0x6c private: [[maybe_unused]] uint8_t __pad007f[0x1]; // 0x7f public: // MNetworkEnable // MNetworkChangeCallback "OnInventoryParityChanged" int32_t m_iParity; // 0x80 // MNetworkEnable CHandle< CBaseEntity > m_hInventoryParent; // 0x84 bool m_bIsActive; // 0x88 // MNetworkEnable bool m_bStashEnabled; // 0x89 private: [[maybe_unused]] uint8_t __pad008a[0x2]; // 0x8a public: // MNetworkEnable CHandle< CBaseEntity > m_hTransientCastItem; // 0x8c }; // Alignment: 2 // Size: 0x4a0 class CDOTA_BinaryObject : public CBaseEntity { public: bool m_bActive; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: int32_t m_nBinaryID; // 0x49c }; // Alignment: 1 // Size: 0x30 class CDOTA_ArcanaDataEntity_Base { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x8 }; // Alignment: 3 // Size: 0x108 class CDOTA_ArcanaDataEntity_DrowRanger : public CDOTA_ArcanaDataEntity_Base { public: // MNetworkEnable // MNetworkChangeCallback "OnDrowArcanaChanged" int8_t m_vecDrowRangerArcanaTargetPlayerID[24]; // 0x30 // MNetworkEnable // MNetworkChangeCallback "OnDrowArcanaChanged" GameTime_t m_vecDrowRangerArcanaDeathTime[24]; // 0x48 // MNetworkEnable // MNetworkChangeCallback "OnDrowArcanaChanged" GameTime_t m_vecDrowRangerArcanaKillTime[24]; // 0xa8 }; // Alignment: 2 // Size: 0x48 class CDOTA_ArcanaDataEntity_FacelessVoid : public CDOTA_ArcanaDataEntity_Base { public: // MNetworkEnable int32_t m_nNumPoints; // 0x3c // MNetworkEnable // MNetworkChangeCallback "OnFacelessVoidArcanaChanged" GameTime_t m_flShowPopupTime; // 0x40 }; // Alignment: 1 // Size: 0x38 class CDOTA_ArcanaDataEntity_Razor : public CDOTA_ArcanaDataEntity_Base { public: // MNetworkEnable // MNetworkChangeCallback "OnRazorArcanaChanged" int32_t m_nEmpoweredKills; // 0x30 }; // Alignment: 3 // Size: 0x4b0 class CDOTA_ArcanaDataEntity : public CBaseEntity { public: // MNetworkEnable CDOTA_ArcanaDataEntity_DrowRanger* m_pArcanaData_CDOTA_ArcanaDataEntity_DrowRanger; // 0x498 // MNetworkEnable CDOTA_ArcanaDataEntity_FacelessVoid* m_pArcanaData_CDOTA_ArcanaDataEntity_FacelessVoid; // 0x4a0 // MNetworkEnable CDOTA_ArcanaDataEntity_Razor* m_pArcanaData_CDOTA_ArcanaDataEntity_Razor; // 0x4a8 }; // Alignment: 2 // Size: 0x18 class CDOTA_Orb { public: CHandle< CBaseEntity > m_hCaster; // 0x10 CHandle< CBaseEntity > m_hAbility; // 0x14 }; // Alignment: 15 // Size: 0x70 class CDOTA_PlayerChallengeInfo { public: // MNetworkEnable int32_t nType; // 0x30 // MNetworkEnable int32_t nQuestID; // 0x34 // MNetworkEnable int32_t nQuestChallengeID; // 0x38 // MNetworkEnable int32_t nTier; // 0x3c // MNetworkEnable int32_t nParam0; // 0x40 // MNetworkEnable int32_t nParam1; // 0x44 // MNetworkEnable int32_t nSlotID; // 0x48 // MNetworkEnable int32_t nProgress; // 0x4c // MNetworkEnable int32_t nCompletionThreshold; // 0x50 // MNetworkEnable PlayerID_t nPlayerID; // 0x54 // MNetworkEnable int32_t nQueryIndex; // 0x58 // MNetworkEnable int32_t nEventID; // 0x5c // MNetworkEnable int32_t nSequenceID; // 0x60 // MNetworkEnable int32_t nCompleted; // 0x64 // MNetworkEnable int32_t nRank; // 0x68 }; // Alignment: 11 // Size: 0x60 class CDOTASubChallengeInfo { public: // MNetworkEnable int32_t nType; // 0x30 // MNetworkEnable int32_t nTier; // 0x34 // MNetworkEnable int32_t nSlotID; // 0x38 // MNetworkEnable int32_t nProgress; // 0x3c // MNetworkEnable int32_t nCompletionThreshold; // 0x40 // MNetworkEnable PlayerID_t nPlayerID; // 0x44 // MNetworkEnable int32_t nQueryIndex; // 0x48 // MNetworkEnable int32_t nEventID; // 0x4c // MNetworkEnable int32_t nSequenceID; // 0x50 // MNetworkEnable int32_t nRequiredHero; // 0x54 // MNetworkEnable int32_t nCompleted; // 0x58 }; // Alignment: 1 // Size: 0x1 struct CavernCrawlRoomID_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 4 // Size: 0x38 class CDOTA_CombatLogQueryProgress { public: // MNetworkEnable PlayerID_t m_nPlayerID; // 0x28 // MNetworkEnable int32_t m_nQueryID; // 0x2c // MNetworkEnable int32_t m_nQueryRank; // 0x30 // MNetworkEnable int32_t m_nMultiQueryID; // 0x34 }; // Alignment: 38 // Size: 0x1a10 class CIngameEvent_Base : public CBaseEntity { public: bool m_bInitialized; // 0x4b8 private: [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 public: // MNetworkEnable int32_t m_CompendiumChallengeEventID[24]; // 0x4bc // MNetworkEnable int32_t m_CompendiumChallengeSequenceID[24]; // 0x51c // MNetworkEnable int32_t m_CompendiumChallengeCoinReward[24]; // 0x57c // MNetworkEnable int32_t m_CompendiumChallengeCoinSplash[24]; // 0x5dc // MNetworkEnable int32_t m_CompendiumChallengePointReward[24]; // 0x63c // MNetworkEnable // MNetworkChangeCallback "OnClientPlayerChallengeProgressChanged" bool m_CompendiumChallengeCompleted[24]; // 0x69c // MNetworkEnable // MNetworkChangeCallback "OnClientPlayerChallengeProgressChanged" bool m_CompendiumChallengeFailed[24]; // 0x6b4 // MNetworkEnable // MNetworkChangeCallback "OnClientPlayerChallengeProgressChanged" int32_t m_CompendiumChallengeProgress[24]; // 0x6cc // MNetworkEnable int32_t m_QueryIDForProgress[24]; // 0x72c private: [[maybe_unused]] uint8_t __pad078c[0x4]; // 0x78c public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CDOTASubChallengeInfo > m_SubChallenges; // 0x790 // MNetworkEnable // MNetworkChangeCallback "OnWagerChanged" int32_t m_CompendiumCoinWager[10]; // 0x7e0 // MNetworkEnable // MNetworkChangeCallback "OnWagerChanged" itemid_t m_CompendiumTokenWagerItemID[10]; // 0x808 // MNetworkEnable // MNetworkChangeCallback "OnWagerChanged" int32_t m_CompendiumWagerTokenBonusPct[10]; // 0x858 // MNetworkEnable int32_t m_CompendiumCoinWagerResults[10]; // 0x880 // MNetworkEnable // MNetworkChangeCallback "OnWagerChanged" int32_t m_CompendiumRankWagers[10]; // 0x8a8 // MNetworkEnable // MNetworkChangeCallback "OnWagerTimeChanged" float m_flWagerTimer; // 0x8d0 // MNetworkEnable GameTime_t m_flWagerEndTime; // 0x8d4 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< CDOTA_PlayerChallengeInfo > m_CompendiumChallengeInfo; // 0x8d8 // MNetworkEnable // MNetworkTypeAlias "DOTA_CombatLogQueryProgress" CUtlVectorEmbeddedNetworkVar< CDOTA_CombatLogQueryProgress > m_PlayerQueryIDs; // 0x1398 // MNetworkEnable // MNetworkChangeCallback "OnClientPlayerChallengeProgressChanged" int32_t m_ProgressForQueryID[100]; // 0x13e8 // MNetworkEnable int32_t m_GoalForQueryID[100]; // 0x1578 // MNetworkEnable int32_t m_PlayerQuestRankPreviouslyCompleted[10]; // 0x1708 // MNetworkEnable // MNetworkChangeCallback "OnClientPlayerQuestRankChanged" int32_t m_PlayerQuestRankCompleted[10]; // 0x1730 // MNetworkEnable PlayerID_t m_PlayerBountyTarget[10]; // 0x1758 // MNetworkEnable GameTime_t m_flPlayerBountyTimestamp[10]; // 0x1780 // MNetworkEnable int32_t m_PlayerBountyCount[10]; // 0x17a8 bool m_bHasSpentWager[10]; // 0x17d0 bool m_bPendingWagerSpend[10]; // 0x17da bool m_bCavernCrawlActive[24]; // 0x17e4 CavernCrawlMapVariant_t m_nCavernCrawlMapVariant[24]; // 0x17fc bool m_bCavernHalfCredit; // 0x1814 bool m_bBountyReminded[24]; // 0x1815 bool m_bBountyAnnounced[24]; // 0x182d private: [[maybe_unused]] uint8_t __pad1845[0x3]; // 0x1845 public: uint32_t m_pCavernCrawlWinnings[24]; // 0x1848 uint32_t m_pCavernCrawlPlusShardWinnings[24]; // 0x18a8 CUtlVector< DOTACavernCrawlMapResult_t >* m_ppVecCavernCrawlMapResult[24]; // 0x1908 int32_t m_event_lobby_updated; // 0x19c8 }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_FM2015 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_WM2016 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_TI6 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_FM2016 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_WM2017 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_TI7 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a18 class CIngameEvent_TI8 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_DotaPlus : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_DotaPrime : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_FV2018 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_NewBloom2019 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_TI9 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_FV2019 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_NB2020 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_TI2020 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a18 class CIngameEvent_Diretide2020 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_Spring2021 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_Fall2021 : public CIngameEvent_Base { public: // no members available }; // Alignment: 0 // Size: 0x1a10 class CIngameEvent_TI2022 : public CIngameEvent_Base { public: // no members available }; // Alignment: 5 // Size: 0x1a58 class CIngameEvent_MuertaReleaseSpring2023 : public CIngameEvent_Base { public: // MNetworkEnable // MNetworkChangeCallback "OnMuertaReleaseEventMiniGameActiveChanged" bool m_bMiniGameActive; // 0x1a10 // MNetworkEnable // MNetworkChangeCallback "OnMuertaReleaseEventTargetAssignmentsChanged" int8_t m_vecTargetAssignments[10]; // 0x1a11 // MNetworkEnable // MNetworkChangeCallback "OnMuertaReleaseEventMiniGamePointsChanged" uint8_t m_vecMiniGamePoints[10]; // 0x1a1b // MNetworkEnable uint8_t m_vecMiniGameKills[10]; // 0x1a25 private: [[maybe_unused]] uint8_t __pad1a2f[0x11]; // 0x1a2f public: CUtlVector< ParticleIndex_t > m_activeGravestones; // 0x1a40 }; // Alignment: 7 // Size: 0x260 class CDOTA_ModifierManager { public: // MNetworkEnable CHandle< CBaseEntity > m_hModifierParent; // 0x8 private: [[maybe_unused]] uint8_t __pad000c[0x240]; // 0xc public: uint16_t m_nHasTruesightForTeam; // 0x24c uint16_t m_nHasTruesightForTeamValid; // 0x24e uint16_t m_nProvidesFOWPositionForTeam; // 0x250 uint16_t m_nProvidesFOWPositionForTeamValid; // 0x252 int32_t m_iBuffIndex; // 0x254 int32_t m_iLockRefCount; // 0x258 }; // Alignment: 57 // Size: 0x1c8 class CModifierParams { public: CHandle< CDOTABaseAbility > ability; // 0x0 float fDamage; // 0x4 float fOriginalDamage; // 0x8 int32_t nActivity; // 0xc bool bTooltip; // 0x10 private: [[maybe_unused]] uint8_t __pad0011[0x3]; // 0x11 public: int32_t nTooltipParam; // 0x14 bool bIgnoreInvis; // 0x18 bool bNoCooldown; // 0x19 bool bIgnoreBaseArmor; // 0x1a bool bReincarnate; // 0x1b bool bDoNotConsume; // 0x1c private: [[maybe_unused]] uint8_t __pad001d[0x3]; // 0x1d public: float fDistance; // 0x20 float fGain; // 0x24 float fAttackTimeRemaining; // 0x28 PlayerID_t m_nIssuerPlayerIndex; // 0x2c PlayerID_t m_nVictimPlayerID; // 0x30 CHandle< CBaseEntity > inflictor; // 0x34 int32_t nDamageType; // 0x38 int32_t nDamageflags; // 0x3c int32_t nDamageCategory; // 0x40 int32_t iFailType; // 0x44 int16_t iRecord; // 0x48 private: [[maybe_unused]] uint8_t __pad004a[0x6]; // 0x4a public: CDOTA_Orb* pOrb; // 0x50 CDOTA_Orb* pOrb2; // 0x58 int32_t nCost; // 0x60 int32_t nOrdertype; // 0x64 Vector vOldLoc; // 0x68 Vector vNewLoc; // 0x74 Vector vCastLocation; // 0x80 bool bCraniumBasherTested; // 0x8c bool bMKBTested; // 0x8d bool bOctarineTested; // 0x8e bool bHeartRegenApplied; // 0x8f bool bSangeAmpApplied; // 0x90 bool bLocketAmpApplied; // 0x91 bool bPaladinAmpApplied; // 0x92 bool bBlademailApplied; // 0x93 bool bForceFieldApplied; // 0x94 bool bKayaApplied; // 0x95 bool bStoutConsidered; // 0x96 bool bInterrupted; // 0x97 bool bDiffusalApplied; // 0x98 bool bChainLightningConsidered; // 0x99 bool bSuppressDamage; // 0x9a bool bRangedAttack; // 0x9b bool bProcessProcs; // 0x9c bool bProjectileIsFromIllusion; // 0x9d bool bHasMagicComponent; // 0x9e bool bIsSpellLifesteal; // 0x9f CEntityIndex pnMagicStickProcEntityIndices[64]; // 0xa0 bool bBloodstoneRegenApplied; // 0x1a0 private: [[maybe_unused]] uint8_t __pad01a1[0x7]; // 0x1a1 public: char* pszAbilitySpecialName; // 0x1a8 int32_t nAbilitySpecialLevel; // 0x1b0 CHandle< CBaseEntity > hattacker; // 0x1b4 CHandle< CBaseEntity > htarget; // 0x1b8 CHandle< CBaseEntity > hunit; // 0x1bc CDOTA_Buff* pAddedBuff; // 0x1c0 static CModifierParams &Get_s_Default(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CModifierParams")->m_static_fields[0]->m_instance);}; }; // Alignment: 6 // Size: 0xc class CDOTA_BuffParticle { public: ParticleIndex_t m_iIndex; // 0x0 int32_t m_iPriority; // 0x4 bool m_bDestroyImmediatly; // 0x8 bool m_bStatusEffect; // 0x9 bool m_bHeroEffect; // 0xa bool m_bOverheadEffectOffset; // 0xb }; // Alignment: 3 // Size: 0x20 class sLilShredderBounceInfo { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x20 class sAghsfortWardBounceInfo { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x20 class sAghsFortGlaiveInfo { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x10 class sGlaiveDef { public: CDOTA_BaseNPC* pGlaive; // 0x0 ParticleIndex_t nGlaiveFXIndex; // 0x8 int32_t nGlaiveState; // 0xc }; // Alignment: 3 // Size: 0x30 struct WaveData_t { public: Vector m_vStart; // 0x0 CUtlVector< CHandle< CBaseEntity > > m_hAlreadyHitList; // 0x10 int32_t m_hProjectileHandle; // 0x28 }; // Alignment: 3 // Size: 0x20 class sGlaiveInfoStorm { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x20 class sBounceInfo { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x14 struct NianDamageTaken_t { public: int32_t nDamage; // 0x0 PlayerID_t nPlayerID; // 0x4 Vector vPos; // 0x8 }; // Alignment: 2 // Size: 0x10 class sAbilityHistory { public: GameTime_t flAppliedTime; // 0x0 CDOTABaseAbility* pAbility; // 0x8 }; // Alignment: 3 // Size: 0x20 class sGlaiveInfo { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 3 // Size: 0x20 class sGlaiveInfoSilencer { public: int32_t iAttackIndex; // 0x0 int32_t iBounceCount; // 0x4 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x8 }; // Alignment: 2 // Size: 0x8 struct RemnantData_t { public: CHandle< CBaseEntity > m_hRemnant; // 0x0 int32_t m_nProjectileHandle; // 0x4 }; // Alignment: 2 // Size: 0x10 class sRevenantDef { public: CDOTA_BaseNPC* pRevenant; // 0x0 ParticleIndex_t nRevenantFXIndex; // 0x8 }; // Alignment: 10 // Size: 0x548 class CDOTAAppCheers : public CBaseEntity { public: // MNetworkEnable int16_t m_nRadiantCheers; // 0x52e // MNetworkEnable int16_t m_nRadiantBronzeCheers; // 0x530 // MNetworkEnable int16_t m_nRadiantSilverCheers; // 0x532 // MNetworkEnable int16_t m_nRadiantGoldCheers; // 0x534 private: [[maybe_unused]] uint8_t __pad0536[0x2]; // 0x536 public: // MNetworkEnable ECrowdLevel m_nRadiantCrowdLevel; // 0x538 // MNetworkEnable int16_t m_nDireCheers; // 0x53c // MNetworkEnable int16_t m_nDireBronzeCheers; // 0x53e // MNetworkEnable int16_t m_nDireSilverCheers; // 0x540 // MNetworkEnable int16_t m_nDireGoldCheers; // 0x542 // MNetworkEnable ECrowdLevel m_nDireCrowdLevel; // 0x544 }; // Alignment: 6 // Size: 0x4a8 class CDOTACheers : public CBaseEntity { public: // MNetworkEnable int16_t m_nRadiantCheers; // 0x498 // MNetworkEnable int16_t m_nDireCheers; // 0x49a // MNetworkEnable int16_t m_nRadiantPremiumCheers; // 0x49c // MNetworkEnable int16_t m_nDirePremiumCheers; // 0x49e // MNetworkEnable ECrowdLevel m_nRadiantCrowdLevel; // 0x4a0 // MNetworkEnable ECrowdLevel m_nDireCrowdLevel; // 0x4a4 }; // Alignment: 4 // Size: 0x4a8 class CDOTA_Hero_Recorder : public CBaseEntity { public: // MNetworkEnable bool m_bStartRecording; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hHero; // 0x49c // MNetworkEnable CHandle< CDOTAPlayerController > m_hPlayer; // 0x4a0 GameTime_t m_flStartRecordingTime; // 0x4a4 }; // Alignment: 0 // Size: 0x170 class CDOTAPlayer_CameraServices : public CPlayer_CameraServices { public: // no members available }; // Alignment: 0 // Size: 0x1b8 class CDOTAPlayer_MovementServices : public CPlayer_MovementServices { public: // no members available }; // Alignment: 39 // Size: 0x550 class CDOTABaseAbility : public CBaseEntity { public: int32_t m_iAbilityIndex; // 0x4a0 int32_t m_nStolenActivity; // 0x4a4 bool m_bChanneling; // 0x4a8 bool m_bReflection; // 0x4a9 // MNetworkEnable bool m_bRefCountsModifiers; // 0x4aa private: [[maybe_unused]] uint8_t __pad04ab[0x1]; // 0x4ab public: int32_t m_iModifierRefCount; // 0x4ac bool m_bWantsToNeutralCast; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: CHandle< CBaseEntity > m_hNeutralCastTarget; // 0x4b4 bool m_bServerOnlyAbility; // 0x4b8 bool m_bGrantedAbilityChargesFromScepter; // 0x4b9 bool m_bGrantedAbilityChargesFromShard; // 0x4ba bool m_bIsDefaultHeroAbility; // 0x4bb bool m_bConsiderOvershootInGetCastRange; // 0x4bc // MNetworkEnable bool m_bHidden; // 0x4bd // MNetworkEnable bool m_bActivated; // 0x4be private: [[maybe_unused]] uint8_t __pad04bf[0x1]; // 0x4bf public: // MNetworkEnable AbilityBarType_t m_nAbilityBarType; // 0x4c0 // MNetworkEnable int32_t m_iDirtyButtons; // 0x4c4 // MNetworkEnable // MNetworkPriority "32" int32_t m_iLevel; // 0x4c8 // MNetworkEnable bool m_bToggleState; // 0x4cc // MNetworkEnable // MNetworkPriority "32" bool m_bInAbilityPhase; // 0x4cd private: [[maybe_unused]] uint8_t __pad04ce[0x2]; // 0x4ce public: // MNetworkEnable float m_flAbilityMuteDuration; // 0x4d0 // MNetworkEnable // MNetworkPriority "32" float m_fCooldown; // 0x4d4 // MNetworkEnable // MNetworkBitCount "15" // MNetworkMinValue "0" // MNetworkMaxValue "1024" float m_flCooldownLength; // 0x4d8 // MNetworkEnable // MNetworkPriority "32" int32_t m_iManaCost; // 0x4dc // MNetworkEnable // MNetworkPriority "32" bool m_bAutoCastState; // 0x4e0 private: [[maybe_unused]] uint8_t __pad04e1[0x3]; // 0x4e1 public: // MNetworkEnable GameTime_t m_flChannelStartTime; // 0x4e4 // MNetworkEnable GameTime_t m_flCastStartTime; // 0x4e8 // MNetworkEnable bool m_bInIndefiniteCooldown; // 0x4ec // MNetworkEnable bool m_bFrozenCooldown; // 0x4ed private: [[maybe_unused]] uint8_t __pad04ee[0x2]; // 0x4ee public: // MNetworkEnable float m_flOverrideCastPoint; // 0x4f0 // MNetworkEnable bool m_bStolen; // 0x4f4 // MNetworkEnable bool m_bReplicated; // 0x4f5 // MNetworkEnable bool m_bStealable; // 0x4f6 private: [[maybe_unused]] uint8_t __pad04f7[0x1]; // 0x4f7 public: // MNetworkEnable int32_t m_nAbilityCurrentCharges; // 0x4f8 // MNetworkEnable // MNetworkPriority "32" float m_fAbilityChargeRestoreTimeRemaining; // 0x4fc // MNetworkEnable bool m_bUpgradeRecommended; // 0x500 private: [[maybe_unused]] uint8_t __pad0501[0x3]; // 0x501 public: CHandle< CBaseEntity > m_hReflectionCause; // 0x504 private: [[maybe_unused]] uint8_t __pad0508[0x20]; // 0x508 public: CHandle< CBaseEntity > m_pReflectionSourceAbility; // 0x528 private: [[maybe_unused]] uint8_t __pad052c[0xc]; // 0x52c public: item_definition_index_t m_nBackedByEconItemIndex; // 0x538 }; // Alignment: 55 // Size: 0x5f8 class CDOTA_Item : public CDOTABaseAbility { public: int32_t m_iState; // 0x550 int32_t m_CastAnimation; // 0x554 // MNetworkEnable bool m_bCombinable; // 0x558 // MNetworkEnable // MNetworkPriority "32" bool m_bPermanent; // 0x559 // MNetworkEnable // MNetworkPriority "32" bool m_bStackable; // 0x55a private: [[maybe_unused]] uint8_t __pad055b[0x1]; // 0x55b public: // MNetworkEnable // MNetworkPriority "32" int32_t m_iStackableMax; // 0x55c // MNetworkEnable bool m_bRecipe; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0x3]; // 0x561 public: // MNetworkEnable // MNetworkPriority "32" int32_t m_iSharability; // 0x564 // MNetworkEnable bool m_bDroppable; // 0x568 // MNetworkEnable bool m_bPurchasable; // 0x569 // MNetworkEnable bool m_bSellable; // 0x56a // MNetworkEnable bool m_bInitiallySellable; // 0x56b // MNetworkEnable bool m_bForceUnsellable; // 0x56c // MNetworkEnable bool m_bRequiresCharges; // 0x56d // MNetworkEnable bool m_bKillable; // 0x56e // MNetworkEnable bool m_bGloballyCombinable; // 0x56f // MNetworkEnable bool m_bDisassemblable; // 0x570 bool m_bNeverDisassemble; // 0x571 bool m_bIsTempestDoubleClonable; // 0x572 // MNetworkEnable bool m_bIsNeutralDrop; // 0x573 // MNetworkEnable int32_t m_nNeutralDropTeam; // 0x574 // MNetworkEnable bool m_bAlertable; // 0x578 private: [[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579 public: // MNetworkEnable // MNetworkPriority "32" int32_t m_iInitialCharges; // 0x57c // MNetworkEnable bool m_bCastOnPickup; // 0x580 // MNetworkEnable bool m_bOnlyPlayerHeroPickup; // 0x581 // MNetworkEnable bool m_bCreepHeroPickup; // 0x582 // MNetworkEnable bool m_bCanBeUsedOutOfInventory; // 0x583 // MNetworkEnable bool m_bItemEnabled; // 0x584 private: [[maybe_unused]] uint8_t __pad0585[0x3]; // 0x585 public: // MNetworkEnable // MNetworkPriority "32" GameTime_t m_flEnableTime; // 0x588 // MNetworkEnable GameTime_t m_flReclaimTime; // 0x58c // MNetworkEnable bool m_bDisplayOwnership; // 0x590 // MNetworkEnable bool m_bShowOnMinimap; // 0x591 private: [[maybe_unused]] uint8_t __pad0592[0x2]; // 0x592 public: // MNetworkEnable float m_flMinimapIconSize; // 0x594 // MNetworkEnable bool m_bIsUpgradeable; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 public: // MNetworkEnable int32_t m_nUpgradeProgress; // 0x59c // MNetworkEnable int32_t m_nUpgradeGoal; // 0x5a0 private: [[maybe_unused]] uint8_t __pad05a4[0x4]; // 0x5a4 public: // MNetworkEnable CNetworkUtlVectorBase< uint8 > m_vecPreGameTransferPlayerIDs; // 0x5a8 bool m_bStackWithOtherOwners; // 0x5c0 bool m_bTemporarilyUncombinable; // 0x5c1 bool m_bHasCommentedOnEquip; // 0x5c2 private: [[maybe_unused]] uint8_t __pad05c3[0x1]; // 0x5c3 public: int32_t m_iDeclarationFlags; // 0x5c4 bool m_bCreatedByDisassemble; // 0x5c8 bool m_bHasMixedOwnership; // 0x5c9 bool m_bIsClonedItemProxy; // 0x5ca bool m_bNeutralItemRequestDrop; // 0x5cb // MNetworkEnable // MNetworkPriority "32" GameTime_t m_flPurchaseTime; // 0x5cc // MNetworkEnable GameTime_t m_flAssembledTime; // 0x5d0 // MNetworkEnable // MNetworkPriority "32" int32_t m_iCurrentCharges; // 0x5d4 // MNetworkEnable int32_t m_iValuelessCharges; // 0x5d8 // MNetworkEnable int32_t m_iSecondaryCharges; // 0x5dc // MNetworkEnable bool m_bCombineLocked; // 0x5e0 private: [[maybe_unused]] uint8_t __pad05e1[0x3]; // 0x5e1 public: CHandle< CDOTA_Item_Physical > m_hContainer; // 0x5e4 // MNetworkEnable PlayerID_t m_iPlayerOwnerID; // 0x5e8 // MNetworkEnable bool m_bPurchasedWhileDead; // 0x5ec private: [[maybe_unused]] uint8_t __pad05ed[0x3]; // 0x5ed public: int32_t m_nCombineVersion; // 0x5f0 }; // Alignment: 3 // Size: 0xc struct TimedKillEvent_t { public: int32_t m_nKillTime; // 0x0 float m_flKillValue; // 0x4 PlayerID_t m_nPlayerID; // 0x8 }; // Alignment: 3 // Size: 0xc struct DamageShareEvent_t { public: float m_flOriginalDamage; // 0x0 float m_flTakenDamage; // 0x4 PlayerID_t m_nPlayerID; // 0x8 }; // Alignment: 3 // Size: 0xc class sPendingTreeRemoval { public: int32_t nTeam; // 0x0 int32_t nIndex; // 0x4 GameTime_t fTimestamp; // 0x8 }; // Alignment: 4 // Size: 0x18 class sPendingTreeModelChange { public: int32_t nTeam; // 0x0 int32_t nIndex; // 0x4 CUtlString strModel; // 0x8 int32_t nChangeToken; // 0x10 }; // Alignment: 2 // Size: 0x8 struct PurchasedItem_t { public: int32_t nItemID; // 0x0 float flPurchaseTime; // 0x4 }; // Alignment: 33 // Size: 0x74 struct TimedHeroStats_t { public: uint32_t m_nTime; // 0x0 uint32_t m_nNetWorth; // 0x4 uint16_t m_nXP; // 0x8 uint16_t m_nKills; // 0xa uint16_t m_nDeaths; // 0xc uint16_t m_nAssists; // 0xe uint16_t m_nLastHits; // 0x10 uint16_t m_nDenies; // 0x12 uint16_t m_nObserverWardsDestroyed; // 0x14 uint16_t m_nBountyRuneGold; // 0x16 uint32_t m_nRangeCreepUpgradeGold; // 0x18 uint32_t m_nReliableGoldEarned; // 0x1c uint32_t m_nGoldLossPrevented; // 0x20 uint32_t m_nHeroKillGold; // 0x24 uint32_t m_nCreepKillGold; // 0x28 uint32_t m_nBuildingGold; // 0x2c uint32_t m_nOtherGold; // 0x30 uint32_t m_nComebackGold; // 0x34 uint32_t m_nExperimentalGold; // 0x38 uint32_t m_nExperimental2Gold; // 0x3c uint32_t m_nTPScrollsPurchased; // 0x40 uint32_t m_nCreepDenyGold; // 0x44 uint32_t m_nNeutralGold; // 0x48 uint32_t m_nCourierGold; // 0x4c uint32_t m_nRoshanGold; // 0x50 uint32_t m_nIncomeGold; // 0x54 uint32_t m_nCustomStats; // 0x58 uint32_t m_unItemValue; // 0x5c uint32_t m_unSupportGoldSpent; // 0x60 uint32_t m_unWardsPlaced; // 0x64 uint32_t m_unCampsStacked; // 0x68 uint32_t m_unTripleKills; // 0x6c uint32_t m_unRampages; // 0x70 }; // Alignment: 5 // Size: 0xc struct TimedTeamStats_t { public: uint32_t m_nTime; // 0x0 uint16_t m_nEnemyTowerStatus; // 0x4 uint16_t m_nEnemyBarracksStatus; // 0x6 uint8_t m_nEnemyTowersKilled; // 0x8 uint8_t m_nEnemyBarracksKilled; // 0x9 }; // Alignment: 117 // Size: -0x4e98 class CDOTA_PlayerResource : public CBaseEntity { public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PlayerResourcePlayerTeamData_t > m_vecPlayerTeamData; // 0x498 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PlayerResourcePlayerData_t > m_vecPlayerData; // 0x4e8 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PlayerResourceBroadcasterData_t > m_vecBrodcasterData; // 0x538 // MNetworkEnable CNetworkUtlVectorBase< uint32 > m_vecEventsForDisplay; // 0x588 // MNetworkEnable int8_t m_nPrimaryEventIndex; // 0x5a0 private: [[maybe_unused]] uint8_t __pad05a1[0x13]; // 0x5a1 public: CHandle< CBaseEntity > m_playerIDToPlayer[64]; // 0x5b4 private: [[maybe_unused]] uint8_t __pad06b4[0x244]; // 0x6b4 public: CUtlVector< sPendingTreeRemoval > m_vecPendingTreeRemovals; // 0x8f8 CUtlVector< sPendingTreeModelChange > m_vecPendingTreeModelChanges; // 0x910 float m_flClaimedFarm[24]; // 0x928 float m_flEarnedCreepFarm[24]; // 0x988 int32_t m_iScaledPlayerDamage[24]; // 0x9e8 int32_t m_iScaledTowerDamage[24]; // 0xa48 int32_t m_iScaledHealing[24]; // 0xaa8 int32_t m_iSupportAbilityValue[24]; // 0xb08 int32_t m_nNumMouseClickCastOrders[24]; // 0xb68 float m_flTimeWithUnspentSkillPoints[24]; // 0xbc8 int32_t m_iRawPlayerDamage[24]; // 0xc28 int32_t m_iRawTowerDamage[24]; // 0xc88 int32_t m_iRawHealing[24]; // 0xce8 int32_t m_iRawPlayerDamageReceivedPreReduction[3][24]; // 0xd48 int32_t m_iRawPlayerDamageReceivedPostReduction[3][24]; // 0xe68 int32_t m_iTotalPlayerDamageMatrix[24][24]; // 0xf88 int32_t m_iRawPlayerDamageMatrix[24][24]; // 0x1888 int32_t m_iAssistsMatrix[24][24]; // 0x2188 int32_t m_iTimeLastSeen[24]; // 0x2a88 int32_t m_iTotalDisconnectedTime[24]; // 0x2ae8 double m_dTimeLastRecieved[24]; // 0x2b48 int32_t m_iGoldBonusEarned[24]; // 0x2c08 int32_t m_iExperimentalGoldEarned[24]; // 0x2c68 int32_t m_iExperimental2GoldEarned[24]; // 0x2cc8 int32_t m_iCreepDenyGoldEarned[24]; // 0x2d28 int32_t m_iTPScrollsPurchased[24]; // 0x2d88 float m_flCustomStats[24]; // 0x2de8 int32_t m_iAegisPickups[24]; // 0x2e48 int32_t m_iTeleportsUsed[24]; // 0x2ea8 int32_t m_iNumConsumablesPurchased[24]; // 0x2f08 int32_t m_iNumItemsPurchased[24]; // 0x2f68 CUtlVector< PurchasedItem_t > m_vecItemsPurchased[24]; // 0x2fc8 float m_flTimeOfLastItemPurchase[24]; // 0x3208 float m_flTimeOfLastConsumablePurchase[24]; // 0x3268 float m_flTimeOfLastDeath[24]; // 0x32c8 int32_t m_iTowerDamageTaken[24]; // 0x3328 int32_t m_iCreepDamageTaken[24]; // 0x3388 int32_t m_iHeroDamageTaken[24]; // 0x33e8 int32_t m_iTotalTowerDamageTaken[24]; // 0x3448 int32_t m_iTotalCreepDamageTaken[24]; // 0x34a8 int32_t m_iTotalHeroDamageTaken[24]; // 0x3508 int32_t m_iRank[24]; // 0x3568 bool m_bRankCalibrated[24]; // 0x35c8 bool m_bTextChatBanned[24]; // 0x35e0 bool m_bLowPriority[24]; // 0x35f8 bool m_bWasHeroPickDotaPlusSuggestion[24]; // 0x3610 bool m_bIdleInFountain[24]; // 0x3628 bool m_bLoggedInElsewhere[24]; // 0x3640 bool m_bPlayerLoadedCompletely[64]; // 0x3658 int32_t m_iDisconnectionReason[64]; // 0x3698 uint64_t m_SelectedGuide[64]; // 0x3798 bool m_bIsUsingPlusGuide[64]; // 0x3998 int32_t m_iCustomTeamAssignments[24]; // 0x39d8 CUtlVector< float32 > m_vecPlayerLevelUpTimes[24]; // 0x3a38 int32_t m_iManaSpent[64][6]; // 0x3c78 bool m_bLeaverAlreadyDetected; // 0x4278 private: [[maybe_unused]] uint8_t __pad4279[0x427]; // 0x4279 public: CUtlVector< TimedKillEvent_t > m_TimedKillList; // 0x46a0 CUtlVector< TimedKillEvent_t > m_TimedAssistList; // 0x46b8 CUtlVector< TimedKillEvent_t > m_TimedDeathList; // 0x46d0 uint32_t m_unLastHeroPickOrder; // 0x46e8 int32_t m_iBountyGoldEarned[24]; // 0x46ec int32_t m_iRangeCreepUpgradeGoldEarned[24]; // 0x474c int32_t m_iObserverWardsDestroyed[24]; // 0x47ac int32_t m_iReliableGoldEarned[24]; // 0x480c int32_t m_iGoldLossPrevented[24]; // 0x486c private: [[maybe_unused]] uint8_t __pad48cc[0x1c]; // 0x48cc public: CUtlVector< CHandle< CDOTA_Unit_Courier > > m_hTeamCouriers[14]; // 0x48e8 CUtlVector< CHandle< CDOTA_Unit_Courier > > m_hPlayerCouriers[64]; // 0x4a38 float m_flAvailableLaneGold[14]; // 0x5038 CUtlVector< DamageShareEvent_t > m_DamageShareList[24]; // 0x5070 DamageShareEvent_t m_AbsorbedDamageRollup[24][25]; // 0x52b0 AbilityID_t m_playerAbilityUpgradeOrder[24][25]; // 0x6ed0 int32_t m_playerAbilityUpgradeTimes[24][25]; // 0x7830 int32_t m_playerAbilityUpgradeCount[24]; // 0x8190 private: [[maybe_unused]] uint8_t __pad81f0[0x40]; // 0x81f0 public: int32_t m_fullUpdateCount[64]; // 0x8230 int32_t m_iCouriersDeployed[24]; // 0x8330 int32_t m_iCouriersPotentiallyKilled[24]; // 0x8390 int32_t m_iCommandsIssued[24]; // 0x83f0 uint32_t m_hHeroSpawnGroup[24]; // 0x8450 private: [[maybe_unused]] uint8_t __pad84b0[0x17c0]; // 0x84b0 public: float m_fNextLaneDetectionUpdate; // 0x9c70 float m_fNextTimedHeroStatsUpdate; // 0x9c74 private: [[maybe_unused]] uint8_t __pad9c78[0x2a0]; // 0x9c78 public: bool m_bInitializedLaneWaypoints; // 0x9f18 private: [[maybe_unused]] uint8_t __pad9f19[0x757]; // 0x9f19 public: uint32_t m_nLastWardSuggestionBuildingState; // 0xa670 uint32_t m_nLastWardSuggestionUpdateNum; // 0xa674 bool m_bLastWardSuggestionRoshanAlive; // 0xa678 bool bDoFinalPregameSuggestion[10]; // 0xa679 private: [[maybe_unused]] uint8_t __pada683[0x1]; // 0xa683 public: int32_t m_hAbilitiesSuggestion[10]; // 0xa684 int32_t m_hPregameItemsSuggestion[10]; // 0xa6ac int32_t m_hItemsSuggestion[10]; // 0xa6d4 int32_t m_hTopNItemsSuggestion[10]; // 0xa6fc int32_t m_hNeutralItemsSuggestion[10]; // 0xa724 int32_t m_hLanesSuggestion[14]; // 0xa74c int32_t m_hWinProbabilitySuggestion; // 0xa784 int32_t m_hHeroSuggestion[10]; // 0xa788 int32_t m_hWardLocationsSuggestion[14]; // 0xa7b0 float m_fNextCreepDistanceUpdate; // 0xa7e8 float m_fCreepDistanceSafe[14]; // 0xa7ec float m_fCreepDistanceMid[14]; // 0xa824 float m_fCreepDistanceOff[14]; // 0xa85c GameTime_t m_fLastSuggestionTime; // 0xa894 bool m_bHasRevealedAnonymizedEnemyPlayerInfo; // 0xa898 private: [[maybe_unused]] uint8_t __pada899[0x607]; // 0xa899 public: PlayerID_t m_nRequestedBotPlayerID; // 0xaea0 float m_fNextCombatLogLocationUpdateTime; // 0xaea4 float m_fNextAPMUpdateTime; // 0xaea8 private: [[maybe_unused]] uint8_t __padaeac[0x4]; // 0xaeac public: CUtlVector< uint32 > m_vecPendingPlayerResourceRequests; // 0xaeb0 int32_t m_iRampages[24]; // 0xaec8 int32_t m_iTripleKills[24]; // 0xaf28 int32_t m_iCouriersKilled[24]; // 0xaf88 int32_t m_iAegisesSnatched[24]; // 0xafe8 int32_t m_iCheesesEaten[24]; // 0xb048 int32_t m_iRapiersPurchased[24]; // 0xb0a8 float m_flPushingDamage[24]; // 0xb108 static uint64_t &Get_s_unLobbySteamID(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_PlayerResource")->m_static_fields[0]->m_instance);}; static uint64_t &Get_s_unLobbyPartyID(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_PlayerResource")->m_static_fields[1]->m_instance);}; }; // Alignment: 8 // Size: 0xb0 struct PingConfirmationState_t { public: // MNetworkEnable int32_t m_nInitiatingPlayerID; // 0x30 // MNetworkEnable int32_t m_PingWheelMessageID; // 0x34 // MNetworkEnable float m_flActiveUntilTime; // 0x38 // MNetworkEnable Vector2D m_vLocation; // 0x3c // MNetworkEnable int32_t m_nPingedEntityEntIndex; // 0x44 // MNetworkEnable int32_t m_nID; // 0x48 // MNetworkEnable PingConfirmationIconType m_IconType; // 0x4c // MNetworkEnable int32_t m_nAgreeState[24]; // 0x50 }; // Alignment: 3 // Size: 0x40 struct PlayerResourcePlayerPeriodicResourceData_t { public: // MNetworkEnable PeriodicResourceID_t m_unPeriodicResourceID; // 0x30 // MNetworkEnable uint32_t m_unPeriodicResourceMax; // 0x34 // MNetworkEnable uint32_t m_unPeriodicResourceRemaining; // 0x38 }; // Alignment: 23 // Size: 0x100 struct PlayerResourcePlayerEventData_t { public: // MNetworkEnable uint32_t m_iEventID; // 0x30 // MNetworkEnable uint32_t m_iEventPoints; // 0x34 // MNetworkEnable uint32_t m_iEventPremiumPoints; // 0x38 // MNetworkEnable uint32_t m_iEventEffectsMask; // 0x3c // MNetworkEnable uint16_t m_iEventRanks; // 0x40 // MNetworkEnable bool m_bIsEventOwned; // 0x42 private: [[maybe_unused]] uint8_t __pad0043[0x1]; // 0x43 public: // MNetworkEnable uint32_t m_iFavoriteTeam; // 0x44 // MNetworkEnable uint16_t m_iFavoriteTeamQuality; // 0x48 // MNetworkEnable uint8_t m_iAvailableSalutes; // 0x4a // MNetworkEnable uint8_t m_iSaluteAmountIndex; // 0x4b // MNetworkEnable uint32_t m_iEventWagerStreak; // 0x4c // MNetworkEnable uint8_t m_iEventTeleportFXLevel; // 0x50 private: [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 public: // MNetworkEnable int32_t m_nCandyPointsReason[5]; // 0x54 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PlayerResourcePlayerPeriodicResourceData_t > m_vecPeriodicResources; // 0x68 // MNetworkEnable // MNetworkAlias "m_iSaluteAmounts" uint8_t m_iObsoleteSaluteAmounts; // 0xd8 private: [[maybe_unused]] uint8_t __pad00d9[0x3]; // 0xd9 public: // MNetworkEnable // MNetworkAlias "m_iEventArcanaPeriodicResourceRemaining" uint32_t m_iObsoleteEventArcanaPeriodicResourceRemaining; // 0xdc // MNetworkEnable // MNetworkAlias "m_iEventArcanaPeriodicResourceMax" uint32_t m_iObsoleteEventArcanaPeriodicResourceMax; // 0xe0 // MNetworkEnable // MNetworkAlias "m_iEventWagerTokensRemaining" uint32_t m_iObsoleteEventWagerTokensRemaining; // 0xe4 // MNetworkEnable // MNetworkAlias "m_iEventWagerTokensMax" uint32_t m_iObsoleteEventWagerTokensMax; // 0xe8 // MNetworkEnable // MNetworkAlias "m_iEventBountiesRemaining" uint32_t m_iObsoleteEventBountiesRemaining; // 0xec // MNetworkEnable // MNetworkAlias "m_iRankWagersAvailable" uint32_t m_iObsoleteRankWagersAvailable; // 0xf0 // MNetworkEnable // MNetworkAlias "m_iRankWagersMax" uint32_t m_iObsoleteRankWagersMax; // 0xf4 // MNetworkEnable // MNetworkAlias "m_iEventPointAdjustmentsRemaining" uint32_t m_iObsoleteEventPointAdjustmentsRemaining; // 0xf8 }; // Alignment: 2 // Size: 0x38 struct DOTAThreatLevelInfo_t { public: // MNetworkEnable float m_flKillability; // 0x30 // MNetworkEnable int32_t m_nEntIndex; // 0x34 }; // Alignment: 61 // Size: 0x1f0 struct PlayerResourcePlayerTeamData_t { public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< DOTAThreatLevelInfo_t > m_ThreatLevelInfos; // 0x30 // MNetworkEnable // MNetworkChangeCallback "OnSelectionDirty" int32_t m_nSelectedHeroID; // 0xa0 // MNetworkEnable int32_t m_iKills; // 0xa4 // MNetworkEnable int32_t m_iAssists; // 0xa8 // MNetworkEnable int32_t m_iDeaths; // 0xac // MNetworkEnable int32_t m_iStreak; // 0xb0 // MNetworkEnable int32_t m_iLevel; // 0xb4 // MNetworkEnable int32_t m_iCustomIntParam; // 0xb8 // MNetworkEnable int32_t m_iRespawnSeconds; // 0xbc // MNetworkEnable GameTime_t m_flLastBuybackTime; // 0xc0 // MNetworkEnable CHandle< CBaseEntity > m_hSelectedHero; // 0xc4 // MNetworkEnable bool m_bAFK; // 0xc8 private: [[maybe_unused]] uint8_t __pad00c9[0x3]; // 0xc9 public: // MNetworkEnable // MNetworkChangeCallback "OnSelectionDirty" int32_t m_nSuggestedHeroes[4]; // 0xcc // MNetworkEnable // MNetworkChangeCallback "OnSelectionDirty" bool m_bBanSuggestedHeroes[4]; // 0xdc // MNetworkEnable bool m_bVoiceChatBanned; // 0xe0 private: [[maybe_unused]] uint8_t __pad00e1[0x3]; // 0xe1 public: // MNetworkEnable item_definition_index_t m_iTimedRewardDrops; // 0xe4 // MNetworkEnable int32_t m_iTimedRewardDropOrigins; // 0xe8 // MNetworkEnable item_definition_index_t m_iTimedRewardCrates; // 0xec // MNetworkEnable item_definition_index_t m_iTimedRewardEvents; // 0xf0 // MNetworkEnable uint16_t m_unCompendiumLevel; // 0xf4 // MNetworkEnable bool m_bCanRepick; // 0xf6 // MNetworkEnable bool m_bCanEarnRewards; // 0xf7 // MNetworkEnable bool m_bHasRandomed; // 0xf8 private: [[maybe_unused]] uint8_t __pad00f9[0x3]; // 0xf9 public: // MNetworkEnable int32_t m_nRandomedHeroID; // 0xfc // MNetworkEnable bool m_bBattleBonusActive; // 0x100 private: [[maybe_unused]] uint8_t __pad0101[0x1]; // 0x101 public: // MNetworkEnable uint16_t m_iBattleBonusRate; // 0x102 // MNetworkEnable int32_t m_iCustomBuybackCost; // 0x104 // MNetworkEnable Color m_CustomPlayerColor; // 0x108 // MNetworkEnable bool m_bQualifiesForPAContractReward; // 0x10c // MNetworkEnable bool m_bHasPredictedVictory; // 0x10d private: [[maybe_unused]] uint8_t __pad010e[0x2]; // 0x10e public: // MNetworkEnable int32_t m_UnitShareMasks; // 0x110 // MNetworkEnable int32_t m_iTeamSlot; // 0x114 // MNetworkEnable uint8_t m_iBattleCupWinStreak; // 0x118 private: [[maybe_unused]] uint8_t __pad0119[0x7]; // 0x119 public: // MNetworkEnable uint64_t m_iBattleCupWinDate; // 0x120 // MNetworkEnable uint16_t m_iBattleCupSkillLevel; // 0x128 private: [[maybe_unused]] uint8_t __pad012a[0x2]; // 0x12a public: // MNetworkEnable uint32_t m_iBattleCupTeamID; // 0x12c // MNetworkEnable uint32_t m_iBattleCupTournamentID; // 0x130 // MNetworkEnable uint8_t m_iBattleCupDivision; // 0x134 private: [[maybe_unused]] uint8_t __pad0135[0x3]; // 0x135 public: // MNetworkEnable float m_flTeamFightParticipation; // 0x138 // MNetworkEnable int32_t m_iFirstBloodClaimed; // 0x13c // MNetworkEnable int32_t m_iFirstBloodGiven; // 0x140 // MNetworkEnable uint32_t m_unPickOrder; // 0x144 // MNetworkEnable GameTime_t m_flTimeOfLastSaluteSent; // 0x148 private: [[maybe_unused]] uint8_t __pad014c[0x4]; // 0x14c public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PlayerResourcePlayerEventData_t > m_vecPlayerEventData; // 0x150 // MNetworkEnable uint32_t m_unSelectedHeroBadgeXP; // 0x1c0 // MNetworkEnable uint8_t m_iBountyRunes; // 0x1c4 // MNetworkEnable uint8_t m_iPowerRunes; // 0x1c5 // MNetworkEnable uint8_t m_iWaterRunes; // 0x1c6 // MNetworkEnable uint8_t m_iOutpostsCaptured; // 0x1c7 // MNetworkEnable uint8_t m_unGuildTier; // 0x1c8 private: [[maybe_unused]] uint8_t __pad01c9[0x1]; // 0x1c9 public: // MNetworkEnable uint16_t m_unGuildLevel; // 0x1ca // MNetworkEnable uint8_t m_unGuildPrimaryColor; // 0x1cc // MNetworkEnable uint8_t m_unGuildSecondaryColor; // 0x1cd // MNetworkEnable uint8_t m_unGuildPattern; // 0x1ce private: [[maybe_unused]] uint8_t __pad01cf[0x1]; // 0x1cf public: // MNetworkEnable uint64_t m_unGuildLogo; // 0x1d0 // MNetworkEnable uint32_t m_unGuildFlags; // 0x1d8 // MNetworkEnable bool m_bIsPartyGuild; // 0x1dc private: [[maybe_unused]] uint8_t __pad01dd[0x3]; // 0x1dd public: // MNetworkEnable GuildID_t m_unGuildID; // 0x1e0 // MNetworkEnable item_definition_index_t m_unHeroStickerDefIndex; // 0x1e4 // MNetworkEnable uint8_t m_eHeroStickerQuality; // 0x1e8 // MNetworkEnable uint8_t m_eLaneSelectionFlags; // 0x1e9 }; // Alignment: 1 // Size: 0x1 struct CavernCrawlMapVariant_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 3 // Size: 0x48 struct PlayerResourceBroadcasterData_t { public: // MNetworkEnable CUtlSymbolLarge m_iszBroadcasterChannelDescription; // 0x30 // MNetworkEnable CUtlSymbolLarge m_iszBroadcasterChannelCountryCode; // 0x38 // MNetworkEnable CUtlSymbolLarge m_iszBroadcasterChannelLanguageCode; // 0x40 }; // Alignment: 80 // Size: 0x478 struct DataTeamPlayer_t { public: // MNetworkEnable // MNetworkPriority "48" int32_t m_iReliableGold; // 0x30 // MNetworkEnable // MNetworkPriority "48" int32_t m_iUnreliableGold; // 0x34 // MNetworkEnable // MNetworkChangeCallback "OnStartingPositionsChanged" int32_t m_iStartingPosition; // 0x38 // MNetworkEnable // MNetworkPriority "32" int32_t m_iTotalEarnedGold; // 0x3c // MNetworkEnable int32_t m_iTotalEarnedXP; // 0x40 // MNetworkEnable int32_t m_iSharedGold; // 0x44 // MNetworkEnable int32_t m_iHeroKillGold; // 0x48 // MNetworkEnable int32_t m_iCreepKillGold; // 0x4c // MNetworkEnable int32_t m_iNeutralKillGold; // 0x50 // MNetworkEnable int32_t m_iCourierGold; // 0x54 // MNetworkEnable int32_t m_iBountyGold; // 0x58 // MNetworkEnable int32_t m_iRoshanGold; // 0x5c // MNetworkEnable int32_t m_iBuildingGold; // 0x60 // MNetworkEnable int32_t m_iOtherGold; // 0x64 // MNetworkEnable int32_t m_iComebackGold; // 0x68 // MNetworkEnable int32_t m_iExperimentalGold; // 0x6c // MNetworkEnable int32_t m_iExperimental2Gold; // 0x70 // MNetworkEnable int32_t m_iCreepDenyGold; // 0x74 // MNetworkEnable int32_t m_iTPScrollsPurchased; // 0x78 // MNetworkEnable float m_flCustomStats; // 0x7c // MNetworkEnable int32_t m_iIncomeGold; // 0x80 // MNetworkEnable int32_t m_iWardKillGold; // 0x84 // MNetworkEnable int32_t m_iAbilityGold; // 0x88 // MNetworkEnable int32_t m_iNetWorth; // 0x8c // MNetworkEnable int32_t m_iDenyCount; // 0x90 // MNetworkEnable int32_t m_iLastHitCount; // 0x94 // MNetworkEnable int32_t m_iLastHitStreak; // 0x98 // MNetworkEnable int32_t m_iLastHitMultikill; // 0x9c // MNetworkEnable int32_t m_iNearbyCreepDeathCount; // 0xa0 // MNetworkEnable int32_t m_iClaimedDenyCount; // 0xa4 // MNetworkEnable int32_t m_iClaimedMissCount; // 0xa8 // MNetworkEnable int32_t m_iMissCount; // 0xac // MNetworkEnable // MNetworkChangeCallback "OnSelectionDirty" int32_t m_nPossibleHeroSelection; // 0xb0 // MNetworkEnable uint16_t m_iMetaLevel; // 0xb4 // MNetworkEnable uint16_t m_iMetaExperience; // 0xb6 // MNetworkEnable uint16_t m_iMetaExperienceAwarded; // 0xb8 private: [[maybe_unused]] uint8_t __pad00ba[0x2]; // 0xba public: // MNetworkEnable GameTime_t m_flBuybackCooldownTime; // 0xbc // MNetworkEnable GameTime_t m_flBuybackGoldLimitTime; // 0xc0 // MNetworkEnable float m_flBuybackCostTime; // 0xc4 // MNetworkEnable float m_flCustomBuybackCooldown; // 0xc8 // MNetworkEnable float m_fStuns; // 0xcc // MNetworkEnable float m_fHealing; // 0xd0 // MNetworkEnable float m_fRegeneratedHealth; // 0xd4 // MNetworkEnable int32_t m_iTowerKills; // 0xd8 // MNetworkEnable int32_t m_iRoshanKills; // 0xdc // MNetworkEnable CHandle< CBaseEntity > m_hCameraTarget; // 0xe0 // MNetworkEnable CHandle< CBaseEntity > m_hOverrideSelectionEntity; // 0xe4 // MNetworkEnable int32_t m_iObserverWardsPlaced; // 0xe8 // MNetworkEnable int32_t m_iSentryWardsPlaced; // 0xec // MNetworkEnable int32_t m_iCreepsStacked; // 0xf0 // MNetworkEnable int32_t m_iCampsStacked; // 0xf4 // MNetworkEnable int32_t m_iRunePickups; // 0xf8 // MNetworkEnable int32_t m_iGoldSpentOnSupport; // 0xfc // MNetworkEnable int32_t m_iHeroDamage; // 0x100 // MNetworkEnable int32_t m_iTowerDamage; // 0x104 // MNetworkEnable int32_t m_iWardsPurchased; // 0x108 // MNetworkEnable int32_t m_iWardsDestroyed; // 0x10c // MNetworkEnable CDOTA_UnitInventory m_PreGameInventory; // 0x110 // MNetworkEnable int32_t m_nKillsPerOpposingTeamMember[24]; // 0x1e0 // MNetworkEnable AbilityID_t m_iSuggestedAbilities[5]; // 0x240 // MNetworkEnable float m_fSuggestedAbilityWeights[5]; // 0x254 // MNetworkEnable // MNetworkChangeCallback "OnSuggestedItemsChanged" AbilityID_t m_iSuggestedPregameItems[15]; // 0x268 // MNetworkEnable // MNetworkChangeCallback "OnSuggestedItemsChanged" AbilityID_t m_iSuggestedItemSequences[30]; // 0x2a4 // MNetworkEnable // MNetworkChangeCallback "OnSuggestedItemsChanged" WeightedAbilitySuggestion_t m_iSuggestedWeightedItems[15]; // 0x31c // MNetworkEnable // MNetworkChangeCallback "OnSuggestedItemsChanged" WeightedAbilitySuggestion_t m_iSuggestedTopNItems[3]; // 0x394 // MNetworkEnable // MNetworkChangeCallback "OnSuggestedItemsChanged" WeightedAbilitySuggestion_t m_iSuggestedNeutralItems[5]; // 0x3ac // MNetworkEnable uint32_t m_iSuggestedHeroes[10]; // 0x3d4 // MNetworkEnable float m_flSuggestedHeroesWeights[10]; // 0x3fc // MNetworkEnable int32_t m_iDamageByTypeReceivedPreReduction[3]; // 0x424 // MNetworkEnable int32_t m_iDamageByTypeReceivedPostReduction[3]; // 0x430 // MNetworkEnable int32_t m_iOutgoingDamageByTypePreReduction[3]; // 0x43c // MNetworkEnable int32_t m_iOutgoingDamageByTypePostReduction[3]; // 0x448 // MNetworkEnable int32_t m_iCommandsIssued; // 0x454 // MNetworkEnable int32_t m_iGoldSpentOnConsumables; // 0x458 // MNetworkEnable int32_t m_iGoldSpentOnItems; // 0x45c // MNetworkEnable int32_t m_iGoldSpentOnBuybacks; // 0x460 // MNetworkEnable int32_t m_iGoldLostToDeath; // 0x464 // MNetworkEnable bool m_bIsNewPlayer; // 0x468 // MNetworkEnable bool m_bIsGuidePlayer; // 0x469 private: [[maybe_unused]] uint8_t __pad046a[0x6]; // 0x46a public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnPlayerSteamIDsChanged" uint64_t m_iPlayerSteamID; // 0x470 }; // Alignment: 3 // Size: 0x238 struct TreeModelReplacement_t { public: // MNetworkEnable int32_t m_nBinaryObjectID; // 0x30 // MNetworkEnable char m_szModel[512]; // 0x34 // MNetworkDisable int32_t m_nChangeToken; // 0x234 }; // Alignment: 18 // Size: 0xeb0 class CDOTA_DataNonSpectator : public CBaseEntity { public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< DataTeamPlayer_t > m_vecDataTeam; // 0x498 // MNetworkEnable // MNetworkEncoder uint64_t m_bWorldTreeState[256]; // 0x4e8 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< TreeModelReplacement_t > m_vecWorldTreeModelReplacements; // 0xce8 // MNetworkEnable Vector2D m_vDesiredWardPlacement[2]; // 0xd38 // MNetworkEnable int32_t m_nEnemyStartingPosition[5]; // 0xd48 // MNetworkEnable int32_t m_nCaptainInspectedHeroID; // 0xd5c // MNetworkEnable float m_flSuggestedWardWeights[20]; // 0xd60 // MNetworkEnable uint8_t m_nSuggestedWardIndexes[20]; // 0xdb0 // MNetworkEnable int32_t m_iSuggestedLanes[5]; // 0xdc4 // MNetworkEnable float m_iSuggestedLaneWeights[5]; // 0xdd8 // MNetworkEnable bool m_bSuggestedLaneRoam[5]; // 0xdec // MNetworkEnable bool m_bSuggestedLaneJungle[5]; // 0xdf1 private: [[maybe_unused]] uint8_t __pad0df6[0x2]; // 0xdf6 public: // MNetworkEnable CNetworkUtlVectorBase< AbilityID_t > m_vecNeutralItemsEarned; // 0xdf8 // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_vecNeutralStashItems; // 0xe10 // MNetworkEnable CNetworkUtlVectorBase< AbilityID_t > m_vecNeutralItemsConsumed; // 0xe28 // MNetworkEnable CUtlVectorEmbeddedNetworkVar< PingConfirmationState_t > m_PingConfirmationStates; // 0xe40 // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_vecKnownClearCamps; // 0xe90 int32_t m_iTowerKills; // 0xea8 }; // Alignment: 0 // Size: 0xeb0 class CDOTA_DataRadiant : public CDOTA_DataNonSpectator { public: // no members available }; // Alignment: 0 // Size: 0xeb0 class CDOTA_DataDire : public CDOTA_DataNonSpectator { public: // no members available }; // Alignment: 0 // Size: 0xeb0 class CDOTA_DataCustomTeam : public CDOTA_DataNonSpectator { public: // no members available }; // Alignment: 9 // Size: 0xf80 class CDOTA_DataSpectator : public CDOTA_DataNonSpectator { public: // MNetworkEnable CHandle< CBaseEntity > m_hPowerupRune_1; // 0xeb0 // MNetworkEnable CHandle< CBaseEntity > m_hPowerupRune_2; // 0xeb4 // MNetworkEnable CHandle< CBaseEntity > m_hBountyRune_1; // 0xeb8 // MNetworkEnable CHandle< CBaseEntity > m_hBountyRune_2; // 0xebc // MNetworkEnable CHandle< CBaseEntity > m_hBountyRune_3; // 0xec0 // MNetworkEnable CHandle< CBaseEntity > m_hBountyRune_4; // 0xec4 // MNetworkEnable int32_t m_iNetWorth[24]; // 0xec8 // MNetworkEnable float m_fRadiantWinProbability; // 0xf28 private: [[maybe_unused]] uint8_t __pad0f2c[0x4]; // 0xf2c public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< DOTAThreatLevelInfo_t > m_ThreatLevelInfos; // 0xf30 }; // Alignment: 0 // Size: 0x4c0 class CDOTA_MapTree : public CDOTA_BinaryObject { public: // no members available }; // Alignment: 5 // Size: 0x38 struct InGamePredictionData_t { public: // MNetworkEnable uint32_t m_nID; // 0x28 // MNetworkEnable uint32_t m_nValue; // 0x2c // MNetworkEnable uint32_t m_nRawValue; // 0x30 // MNetworkEnable uint8_t m_nValueState; // 0x34 // MNetworkEnable bool m_bValueIsMask; // 0x35 }; // Alignment: 4 // Size: 0x4f8 class CDOTAInGamePredictionState : public CBaseEntity { public: // MNetworkEnable bool m_bVotingClosed; // 0x498 // MNetworkEnable // MNetworkChangeCallback "OnAllPredictionsFinished" bool m_bAllPredictionsFinished; // 0x499 private: [[maybe_unused]] uint8_t __pad049a[0x6]; // 0x49a public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< InGamePredictionData_t > m_vecPredictions; // 0x4a0 // MNetworkEnable LeagueID_t m_nLeagueID; // 0x4f0 }; // Alignment: 1 // Size: 0x18 class CObstructionObject { public: int32_t m_nObstructionProperties; // 0x10 }; // Alignment: 14 // Size: 0x20 class CDotaEntityFilterFlags { public: bool m_bInvertFilter; // 0x0 bool m_bEveryUnit; // 0x1 private: [[maybe_unused]] uint8_t __pad0002[0x2]; // 0x2 public: int32_t m_nTeamNumber; // 0x4 CUtlSymbolLarge m_UnitName; // 0x8 bool m_bIsAncient; // 0x10 bool m_bIsNeutralUnitType; // 0x11 bool m_bIsSummoned; // 0x12 bool m_bIsHero; // 0x13 bool m_bIsRealHero; // 0x14 bool m_bIsTower; // 0x15 bool m_bIsPhantom; // 0x16 bool m_bIsIllusion; // 0x17 bool m_bIsCreep; // 0x18 bool m_bIsLaneCreep; // 0x19 }; // Alignment: 1 // Size: 0x510 class CFilterDotaEntities : public CBaseFilter { public: CDotaEntityFilterFlags m_FilterFlags; // 0x4f0 }; // Alignment: 1 // Size: 0x4a0 class CDotaParticleRelay : public CBaseEntity { public: CUtlSymbolLarge m_particleSystemName; // 0x498 }; // Alignment: 11 // Size: 0xc28 class CDotaTutorialNetworker : public CBaseEntity { public: // MNetworkEnable int32_t m_nTutorialState; // 0x498 // MNetworkEnable int32_t m_nTaskProgress; // 0x49c // MNetworkEnable int32_t m_nTaskSteps; // 0x4a0 // MNetworkEnable int32_t m_nTaskSecondsRemianing; // 0x4a4 // MNetworkEnable int32_t m_nUIState; // 0x4a8 // MNetworkEnable int32_t m_nShopState; // 0x4ac // MNetworkEnable Vector m_TargetLocation; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc public: // MNetworkEnable // MNetworkTypeAlias "m_SpeechBubbles" CUtlVectorEmbeddedNetworkVar< CSpeechBubbleInfo > m_SpeechBubbles; // 0x4c0 // MNetworkEnable int32_t m_nLocationID; // 0xa20 // MNetworkEnable char m_GuideStr[256]; // 0xa24 // MNetworkEnable char m_QuickBuyStr[256]; // 0xb24 }; // Alignment: 0 // Size: 0x498 class CDotaQuestBase : public CBaseEntity { public: // no members available }; // Alignment: 9 // Size: 0x6f0 class CDotaSubquestBase : public CBaseEntity { public: // MNetworkEnable char m_pszSubquestText[256]; // 0x498 // MNetworkEnable bool m_bHidden; // 0x598 // MNetworkEnable bool m_bCompleted; // 0x599 // MNetworkEnable bool m_bShowProgressBar; // 0x59a private: [[maybe_unused]] uint8_t __pad059b[0x1]; // 0x59b public: // MNetworkEnable int32_t m_nProgressBarHueShift; // 0x59c // MNetworkEnable int32_t m_pnTextReplaceValuesCDotaSubquestBase[2]; // 0x5a0 // MNetworkEnable char m_pszTextReplaceString[64]; // 0x5a8 // MNetworkEnable int32_t m_nTextReplaceValueVersion; // 0x5e8 char m_pszSubquestName[256]; // 0x5ec }; // Alignment: 14 // Size: 0x918 class CDotaQuest : public CBaseEntity { public: // MNetworkEnable char m_pszQuestTitle[256]; // 0x498 // MNetworkEnable char m_pszQuestText[256]; // 0x598 // MNetworkEnable int32_t m_nQuestType; // 0x698 // MNetworkEnable CHandle< CDotaSubquestBase > m_hSubquests[8]; // 0x69c // MNetworkEnable bool m_bHidden; // 0x6bc // MNetworkEnable bool m_bCompleted; // 0x6bd // MNetworkEnable bool m_bWinIfCompleted; // 0x6be // MNetworkEnable bool m_bLoseIfCompleted; // 0x6bf // MNetworkEnable char m_pszGameEndText[256]; // 0x6c0 // MNetworkEnable int32_t m_pnTextReplaceValuesCDotaQuest[4]; // 0x7c0 // MNetworkEnable char m_pszTextReplaceString[64]; // 0x7d0 // MNetworkEnable int32_t m_nTextReplaceValueVersion; // 0x810 int32_t m_nQuestCompleteFadeAlpha; // 0x814 char m_pszQuestName[256]; // 0x818 }; // Alignment: 1 // Size: 0x708 class CDotaSubquestBuyItems : public CDotaSubquestBase { public: CUtlVector< char* > m_itemList; // 0x6f0 }; // Alignment: 1 // Size: 0x708 class CDotaSubquestEntityDeath : public CDotaSubquestBase { public: CUtlVector< CUtlSymbolLarge > m_entityNameList; // 0x6f0 }; // Alignment: 1 // Size: 0x6f8 class CDotaSubquestTutorialEvent : public CDotaSubquestBase { public: CUtlSymbolLarge m_sTutorialEvent; // 0x6f0 }; // Alignment: 3 // Size: 0x700 class CDotaSubquestPlayerStat : public CDotaSubquestBase { public: subquest_player_stat_types_t m_ePlayerStatType; // 0x6f0 int32_t m_nPlayerStatValue; // 0x6f4 int32_t m_nStartingStatOffset; // 0x6f8 }; // Alignment: 4 // Size: 0x700 class CDotaSubquestAbilityCastCount : public CDotaSubquestBase { public: int32_t m_sAbilityNameSymbol; // 0x6f0 int32_t m_nTargetCastCount; // 0x6f4 int32_t m_nCurrentCastCount; // 0x6f8 bool m_bRequiresChannelSuccess; // 0x6fc }; // Alignment: 7 // Size: 0x4b0 class CDotaTutorialNPCBlocker : public CBaseEntity { public: CHandle< CDOTA_BaseNPC > m_hAura; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: CUtlSymbolLarge m_iOtherBlockerName; // 0x4a0 CHandle< CBaseEntity > m_hOtherBlocker; // 0x4a8 bool m_bEndPoint; // 0x4ac bool m_bEnabled; // 0x4ad bool m_bStartDisabled; // 0x4ae bool m_bHidden; // 0x4af }; // Alignment: 2 // Size: 0x4b0 class CDOTACameraBounds : public CBaseEntity { public: // MNetworkEnable Vector m_vecBoundsMin; // 0x498 // MNetworkEnable Vector m_vecBoundsMax; // 0x4a4 }; // Alignment: 2 // Size: 0xa00 class CSpeechBubbleManager : public CBaseEntity { public: // MNetworkEnable // MNetworkTypeAlias "m_SpeechBubbles" CUtlVectorEmbeddedNetworkVar< CSpeechBubbleInfo > m_SpeechBubbles; // 0x498 uint16_t m_unBubbleCount; // 0x9f8 }; // Alignment: 0 // Size: 0x8 class dota_minimap_boundary : public CEmptyEntityInstance { public: // no members available }; // Alignment: 0 // Size: 0x498 class CFoWBlockerEntity : public CBaseEntity { public: // no members available }; // Alignment: 2 // Size: 0x4a0 class CFoWRevealerEntity : public CBaseEntity { public: uint32_t m_unViewerTeam; // 0x498 int32_t m_nVisionRange; // 0x49c }; // Alignment: 6 // Size: 0x48 struct FowBlocker_t { public: // MNetworkEnable float m_flMinX; // 0x30 // MNetworkEnable float m_flMaxX; // 0x34 // MNetworkEnable float m_flMinY; // 0x38 // MNetworkEnable float m_flMaxY; // 0x3c // MNetworkEnable FowBlockerShape_t m_fowBlockerShape; // 0x40 // MNetworkEnable bool m_bClearRegion; // 0x44 }; // Alignment: 6 // Size: 0x500 class CFoWBlockerRegion : public CBaseEntity { public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< FowBlocker_t > m_vecFowBlockers; // 0x498 // MNetworkEnable float m_flMinX; // 0x4e8 // MNetworkEnable float m_flMaxX; // 0x4ec // MNetworkEnable float m_flMinY; // 0x4f0 // MNetworkEnable float m_flMaxY; // 0x4f4 // MNetworkEnable float m_flGridSize; // 0x4f8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AttributeBonus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Base : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Undefined : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Ability_Draft : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl15_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl20_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl25_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl10_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl15_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl20_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_lvl25_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_125 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_225 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_275 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_325 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_350 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_375 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_450 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_475 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_500 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_600 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_650 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_700 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_800 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_900 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_1000 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_125 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_225 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_275 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_350 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_500 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_600 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_700 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_800 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_1000 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Base_Attack_Rate_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_45 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_55 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_70 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_80 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_110 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_120 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_140 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_160 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Speed_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Corruption_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Corruption_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Corruption_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Corruption_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_130 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_140 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cleave_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Haste : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_TrueStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Reincarnation_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Reincarnation_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Reincarnation_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Block_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Block_18 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Block_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Break_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Break_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Break_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Break_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Break_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Immunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_HP_Regen_80 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_125 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_Amp_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Reduction_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Reduction_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Mana_Reduction_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_MP_Regen_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Speed_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_45 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_65 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_90 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Movement_Speed_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_All_Stats_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attributes : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_And_Intelligence_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Intelligence_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_18 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Strength_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_80 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Agility_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Armor_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Status_Resistance_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Status_Resistance_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Status_Resistance_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Status_Resistance_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_80 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Magic_Resistance_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Day_Vision_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Night_Vision_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Night_Vision_500 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Night_Vision_600 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Night_Vision_800 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Night_Vision_1000 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Vision_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_45 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_18 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_45 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_55 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_65 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_70 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_80 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_90 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_120 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_160 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_251 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_252 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Damage_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_125 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_275 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_325 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Attack_Range_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_125 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_175 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_200 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_225 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_250 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_275 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_325 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_350 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cast_Range_400 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_18 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Amplify_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_65 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_45 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Respawn_Reduction_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_90 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_120 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_150 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_180 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_210 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_240 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_300 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Gold_Income_420 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_16 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Evasion_75 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_70 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_18 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Lifesteal_100 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_20_Bash_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_24_Crit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_30_Crit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_20_Crit_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_50_Crit_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_15 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_20 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_25 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_30 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_35 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_40 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_50 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Exp_Boost_60 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Broodmother_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Broodmother_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Broodmother_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Broodmother_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Broodmother_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wisp_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Techies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Techies_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Techies_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Techies_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Techies_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Invoker_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pugna_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Windranger_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sniper_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Riki_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tusk_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Medusa : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Medusa_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Medusa_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Medusa_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Medusa_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Silencer_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slark_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spectre_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tinker_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Viper_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Luna_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nyx_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Weaver_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Ursa_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lycan_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bristleback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bristleback_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bristleback_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bristleback_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Abaddon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Abaddon_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Abaddon_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Abaddon_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Abaddon_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Alchemist_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Juggernaut : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Terrorblade : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phoenix_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enchantress_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enchantress_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enchantress_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enchantress_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enchantress_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Kunkka_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Timbersaw : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Huskar_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sand_King_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morphling_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bane_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Nevermore_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Doom_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Venomancer_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Warlock_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dazzle_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dazzle_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dazzle_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dazzle_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dazzle_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Visage_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Omniknight_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Necrophos_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Antimage_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Mirana_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Treant_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pangolier_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x6a0 class CDOTASpecGraphPlayerData : public CBaseEntity { public: // MNetworkEnable int32_t m_rgGoldPerMinute[64]; // 0x498 // MNetworkEnable int32_t m_rgXPPerMinute[64]; // 0x598 // MNetworkEnable PlayerID_t m_nCreatedByPlayerID; // 0x698 }; // Alignment: 6 // Size: 0x30 class sPlayerSnapshot { public: AbilityID_t m_nItemAbilityID[10]; // 0x0 float m_fGameTime; // 0x28 uint8_t unKills; // 0x2c uint8_t unDeaths; // 0x2d uint8_t unAssists; // 0x2e uint8_t unLevel; // 0x2f }; // Alignment: 23 // Size: 0xa70 class CDOTASpectatorGraphManager { public: // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x28 int32_t m_nPlayerDataCount; // 0x50 private: [[maybe_unused]] uint8_t __pad0054[0x4]; // 0x54 public: CountdownTimer m_SendTeamStatsTimer; // 0x58 bool m_bTrackingTeamStats; // 0x70 private: [[maybe_unused]] uint8_t __pad0071[0x3]; // 0x71 public: GameTime_t m_flStartTime; // 0x74 PlayerID_t m_nNextUpdatePlayer; // 0x78 private: [[maybe_unused]] uint8_t __pad007c[0x4]; // 0x7c public: // MNetworkEnable CHandle< CDOTASpecGraphPlayerData > m_rgPlayerGraphData[24]; // 0x80 // MNetworkEnable int32_t m_rgRadiantTotalEarnedGold[64]; // 0xe0 // MNetworkEnable int32_t m_rgDireTotalEarnedGold[64]; // 0x1e0 // MNetworkEnable int32_t m_rgRadiantTotalEarnedXP[64]; // 0x2e0 // MNetworkEnable int32_t m_rgDireTotalEarnedXP[64]; // 0x3e0 // MNetworkEnable int32_t m_rgRadiantNetWorth[64]; // 0x4e0 // MNetworkEnable int32_t m_rgDireNetWorth[64]; // 0x5e0 // MNetworkEnable GameTime_t m_flTotalEarnedGoldStartTime; // 0x6e0 // MNetworkEnable GameTime_t m_flTotalEarnedGoldEndTime; // 0x6e4 // MNetworkEnable int32_t m_nGoldGraphVersion; // 0x6e8 // MNetworkEnable int32_t m_rgRadiantWinChance[64]; // 0x6ec private: [[maybe_unused]] uint8_t __pad07ec[0x4]; // 0x7ec public: CountdownTimer m_TeamStatsUpdateTimer; // 0x7f0 CountdownTimer m_HeroInventorySnapshotTimer; // 0x808 CUtlVector< sPlayerSnapshot > m_vecPlayerSnapshots[24]; // 0x820 int32_t m_event_dota_player_killed; // 0xa60 int32_t m_event_server_pre_shutdown; // 0xa64 int32_t m_event_dota_player_pick_hero; // 0xa68 }; // Alignment: 1 // Size: 0x4a0 class CDOTASpectatorGraphManagerProxy : public CBaseEntity { public: // MNetworkEnable // MNetworkTypeAlias "CDOTASpectatorGraphManager*" CDOTASpectatorGraphManager* m_pGraphManager; // 0x498 static CDOTASpectatorGraphManagerProxy* &Get_s_pDotaSpectatorGraphProxy(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTASpectatorGraphManagerProxy")->m_static_fields[0]->m_instance);}; }; // Alignment: 10 // Size: 0x50 struct TempViewerInfo_t { public: // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" int32_t m_nGridX; // 0x30 // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" int32_t m_nGridY; // 0x34 // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" int32_t m_nRadius; // 0x38 // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" int8_t m_nViewerType; // 0x3c // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" bool m_bObstructedVision; // 0x3d // MNetworkEnable // MNetworkChangeCallback "OnFieldChanged" bool m_bValid; // 0x3e // MNetworkDisable bool m_bDirty; // 0x3f // MNetworkDisable GameTime_t flEndTime; // 0x40 // MNetworkDisable int32_t nFoWID; // 0x44 // MNetworkDisable CHandle< CBaseEntity > hOwner; // 0x48 }; // Alignment: 3 // Size: 0x518 class CDOTAFogOfWarTempViewers : public CBaseEntity { public: // MNetworkEnable uint32_t m_FoWTempViewerVersion; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: // MNetworkEnable CUtlVectorEmbeddedNetworkVar< TempViewerInfo_t > m_TempViewerInfo; // 0x4a0 GameTime_t m_flEndTimeMin; // 0x4f0 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Consumable_Hidden : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Throw_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Throw_Coal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Healing_Campfire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ShootFirework : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Throw_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Summon_Snowman : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Seasonal_Summon_Penguin : public CDOTABaseAbility { public: int32_t spawn_offset; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Decorate_Tree : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Festive_Firework : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Firecrackers : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Summon_Dragon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Summon_CNY_Tree : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Summon_CNY_Balloon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_Summon_TI9_Balloon : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x590 class CDOTA_Ability_Seasonal_TI9_Banner : public CDOTABaseAbility { public: CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI9_Instruments : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Seasonal_TI9_Shovel : public CDOTABaseAbility { public: Vector m_vChannelPos; // 0x550 bool m_bIsUnderwater; // 0x55c private: [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: ParticleIndex_t m_nPhaseStartFXIndex; // 0x560 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI9_Monkey : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x18 class CDOTA_ActionRunner { public: // MNetworkDisable CModifierParams* m_pEventContext; // 0x8 // MNetworkDisable CDOTA_BaseNPC* m_pCaster; // 0x10 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lesser_NightCrawler_Pounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Zombie_Berserk : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Corspselord_Revive : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slithereen_Riptide : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x598 class CDOTA_Ability_Creature_Fire_Breath : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t projectile_count; // 0x554 float rotation_angle; // 0x558 float damage; // 0x55c float radius; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CountdownTimer ctTimer; // 0x568 Vector m_vecStartRot; // 0x580 Vector m_vecEndRot; // 0x58c }; // Alignment: 9 // Size: 0x598 class CDOTA_Ability_Creature_Ice_Breath : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t projectile_count; // 0x554 float rotation_angle; // 0x558 float damage; // 0x55c float radius; // 0x560 float slow_duration; // 0x564 CountdownTimer ctTimer; // 0x568 Vector m_vecStartRot; // 0x580 Vector m_vecEndRot; // 0x58c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Creature_IceSlam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_GreaterClarity : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UpgradedMortar : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UpgradedBarricade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BagOfGold : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Throw_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Summon_Snowman : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Decorate_Tree : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Festive_Firework : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_FacelessVoid_TimeLock : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x8 class CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeWalk_Tracker::sDamageSources { public: GameTime_t flTime; // 0x0 float flAmount; // 0x4 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Frostivus2018_Luna_LucentBeam : public CDOTABaseAbility { public: int32_t radius; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Frostivus2018_Luna_Eclipse : public CDOTABaseAbility { public: bool m_bIsScepterCast; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Clinkz_Strafe : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Clinkz_SearingArrows : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Clinkz_WindWalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Frostivus2018_Clinkz_Burning_Army : public CDOTABaseAbility { public: int32_t range; // 0x550 Vector m_vEndpoint; // 0x554 Vector m_vSlashDir; // 0x560 int32_t m_nDashProjectileID; // 0x56c Vector m_vDashProjectileLocation; // 0x570 }; // Alignment: 7 // Size: 0x570 class CDOTA_Ability_Tusk_SnowballMeteor : public CDOTABaseAbility { public: int32_t area_of_effect; // 0x550 float damage_interval; // 0x554 int32_t vision_distance; // 0x558 float end_vision_duration; // 0x55c float main_damage; // 0x560 float burn_duration; // 0x564 float burn_dps; // 0x568 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Frostivus2018_Tusk_WalrusKick : public CDOTABaseAbility { public: ParticleIndex_t m_nFXKickIndex; // 0x550 }; // Alignment: 4 // Size: 0x580 class CDOTA_Ability_Frostivus2018_Windrunner_Shackleshot : public CDOTABaseAbility { public: int32_t shackle_count; // 0x550 Vector m_vArrowStartPos; // 0x554 CHandle< CBaseEntity > m_hTarget; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x568 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_DarkWillow_ShadowRealm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_DarkWillow_BrambleMaze : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_DarkWillow_Bedlam : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Frostivus2018_Puck_DreamCoil : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Frostivus2018_Spectre_ActiveDispersion : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 float duration; // 0x554 }; // Alignment: 10 // Size: 0x590 class CDOTA_Ability_Frostivus2018_Centaur_Stampede : public CDOTABaseAbility { public: float duration; // 0x550 int32_t base_damage; // 0x554 float strength_damage; // 0x558 float slow_duration; // 0x55c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560 int32_t armor_amount; // 0x578 float armor_duration; // 0x57c int32_t max_armor_stacks; // 0x580 int32_t m_nHeroesHit; // 0x584 bool m_bHitInvisibleHero; // 0x588 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Centaur_Return : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Centaur_DoubleEdge : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Huskar_Inner_Fire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Huskar_Burning_Spear : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Omniknight_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Omniknight_Degen_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Omniknight_Repel : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x570 class CDOTA_Ability_Frostivus2018_Magnataur_Skewer : public CDOTABaseAbility { public: int32_t skewer_radius; // 0x550 int32_t skewer_speed; // 0x554 int32_t range; // 0x558 int32_t tree_radius; // 0x55c int32_t m_nProjectileID; // 0x560 int32_t m_nVisibleTargetCount; // 0x564 int32_t m_nTargetsHit; // 0x568 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Pangolier_ShieldCrash : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Frostivus2018_TrollWarlord_BattleTrance : public CDOTABaseAbility { public: float trance_duration; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_TrollWarlord_Fervor : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_Frostivus2018_Rubick_GhostShip : public CDOTABaseAbility { public: float buff_duration; // 0x550 float stun_duration; // 0x554 int32_t ghostship_width; // 0x558 int32_t ghostship_speed; // 0x55c int32_t ghostship_distance; // 0x560 Vector m_vFinalDestination; // 0x564 Vector m_vStartingPoint; // 0x570 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Frostivus2018_Weaver_GeminateAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_Tower_BlastWave : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 float duration; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TempBuff_CorpseExplosion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Reward_HPAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Reward_CritAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Reward_MagicResistAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Reward_ArmorAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ascension_PlasmaField : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ascension_Bulwark : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ascension_AcidBlood : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ascension_Firefly : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Ascension_Silence : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ascension_MagneticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Ascension_Invis : public CDOTABaseAbility { public: float warning_duration; // 0x550 }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Morty_Hop : public CDOTABaseAbility { public: float max_distance; // 0x550 Vector m_vTarget; // 0x554 int32_t m_iTrackerProjectile; // 0x560 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morty_Hop_Launch : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_ExplosiveBarrel : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x620 class CDOTA_Ability_AghsFort_Ravage_Potion : public CDOTA_Item { public: CUtlVector< CHandle< CBaseEntity > > m_hEntsHit; // 0x5f8 int32_t damage; // 0x610 float duration; // 0x614 float spend_charge_delay; // 0x618 }; // Alignment: 7 // Size: 0x618 class CDOTA_Ability_AghsFort_Dragon_Potion : public CDOTA_Item { public: int32_t bonus_movement_speed; // 0x5f8 int32_t bonus_attack_damage; // 0x5fc int32_t bonus_attack_range; // 0x600 int32_t magic_resistance; // 0x604 int32_t model_scale; // 0x608 int32_t skin_number; // 0x60c bool flying_movement; // 0x610 }; // Alignment: 2 // Size: 0x600 class CDOTA_Ability_AghsFort_Arcanist_Potion : public CDOTA_Item { public: int32_t cooldown_reduction_pct; // 0x5f8 int32_t manacost_reduction_pct; // 0x5fc }; // Alignment: 6 // Size: 0x610 class CDOTA_Ability_AghsFort_EchoSlamPotion : public CDOTA_Item { public: int32_t echo_slam_damage_range; // 0x5f8 int32_t echo_slam_echo_search_range; // 0x5fc int32_t echo_slam_echo_range; // 0x600 int32_t echo_slam_echo_damage; // 0x604 int32_t echo_slam_initial_damage; // 0x608 float spend_charge_delay; // 0x60c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Ability_AghsFort_ShadowWaveEffectPotion : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_AghsFort_RefresherOrb_Shard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Minor_Stats_Upgrade : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Aghsfort_BootsOfTravel : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Aghsfort_BootsOfTravel_2 : public CDOTA_Item_Aghsfort_BootsOfTravel { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_RestorativeFlower : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x578 class CDOTA_Ability_AghsFort_StonehallGeneral_OverwhelmingOdds : public CDOTABaseAbility { public: int32_t max_steps; // 0x550 Vector m_vTarget; // 0x554 Vector m_vDir; // 0x560 int32_t m_nSteps; // 0x56c GameTime_t m_flChannelStartTime; // 0x570 ParticleIndex_t m_nFXIndex; // 0x574 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_Spectre_ActiveDispersion : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 float duration; // 0x554 }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_AghsFort_RockGolem_Smash : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 Vector m_vTargetLoc; // 0x554 private: [[maybe_unused]] uint8_t __pad0560[0x8]; // 0x560 public: int32_t radius; // 0x568 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Creature_Phoenix_FireSpirits : public CDOTABaseAbility { public: int32_t hp_cost_perc; // 0x550 }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_AghsFort_Creature_Phoenix_LaunchFireSpirit : public CDOTABaseAbility { public: int32_t spirit_speed; // 0x550 float duration; // 0x554 int32_t radius; // 0x558 int32_t hp_cost_perc; // 0x55c ParticleIndex_t m_nFXIndex; // 0x560 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Creature_Phoenix_Supernova : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PudgeMiniboss_HatefulStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PudgeMiniboss_ArmorCorruption : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_AghsFort_Wave_Blast : public CDOTABaseAbility { public: int32_t damage; // 0x550 float knockback_duration; // 0x554 float disarm_duration; // 0x558 private: [[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560 ParticleIndex_t m_nPreviewFX; // 0x578 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Waveblaster_Leap : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_AghsFort_Creature_Impale : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 int32_t width; // 0x554 float duration; // 0x558 int32_t length; // 0x55c int32_t speed; // 0x560 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Creature_SpikedCarapace : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Creature_Flamestrike : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 }; // Alignment: 6 // Size: 0x570 class CDOTA_Ability_AghsFort_DragonKnight_BreatheFire : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 int32_t start_radius; // 0x554 int32_t end_radius; // 0x558 Vector m_vStartPos; // 0x55c GameTime_t m_fStartTime; // 0x568 float m_fTotalTime; // 0x56c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Gyrocopter_Multi_Homing_Missile : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_PineCone_ShieldBash : public CDOTABaseAbility { public: ParticleIndex_t m_nPreviewFX; // 0x550 }; // Alignment: 5 // Size: 0x588 class CDOTA_Ability_PineCone_AcornShot : public CDOTABaseAbility { public: // MNetworkEnable uint32_t m_nAcornTree; // 0x570 float projectile_speed; // 0x574 float bounce_delay; // 0x578 int32_t bounce_range; // 0x57c int32_t bounce_count; // 0x580 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Lifestealer_Enraged_Pulse : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x5b8 class CDOTA_Ability_Aghanim_UrnUpheaval : public CDOTABaseAbility { public: Vector m_vPosition; // 0x550 float aoe; // 0x55c float slow_rate; // 0x560 float slow_rate_duration; // 0x564 float duration; // 0x568 float max_slow; // 0x56c float burn_damage; // 0x570 float m_flCurrentSlow; // 0x574 ParticleIndex_t m_nFXIndex; // 0x578 private: [[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c public: CountdownTimer m_SlowTimer; // 0x580 CountdownTimer m_timer; // 0x598 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_UpheavalUrn_Reincarnation : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghanimsFortress_SkeletonKing_VampiricAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x590 class CDOTA_Ability_AghsFort_Shadow_Demon_Shadow_Poison : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hPoisonedUnits; // 0x550 int32_t radius; // 0x568 private: [[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c public: CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x570 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Shadow_Demon_Shadow_Poison_Release : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_ShadowShaman_Shackles : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hShackleTarget; // 0x550 ParticleIndex_t nShackleFXIndex; // 0x554 }; // Alignment: 5 // Size: 0x5a8 class CDOTA_Ability_Aghanim_Spear : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 CUtlVector< int32 > m_vecProjectileHandles; // 0x568 private: [[maybe_unused]] uint8_t __pad0580[0x8]; // 0x580 public: Vector m_vTarget; // 0x588 Vector m_vSourcePosition; // 0x594 int32_t damage; // 0x5a0 }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Aghsfort_Wildwing_Tornado_Blast : public CDOTABaseAbility { public: float disable_duration; // 0x550 float damage; // 0x554 ParticleIndex_t m_nPreviewFX; // 0x558 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_TreantMiniboss_NaturesGuise : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_Creature_Venomancer_PoisonNova : public CDOTABaseAbility { public: ParticleIndex_t m_nFXPreview; // 0x550 int32_t radius; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_AghsFort_Ability_Creature_Venomancer_PoisonSting : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Firestorm : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Portal_Warp : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Dark_Portal : public CDOTABaseAbility { public: float duration; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Aghsfort_Ability_CrystalMaiden_CrystalNova : public CDOTABaseAbility { public: int32_t nova_damage; // 0x550 }; // Alignment: 2 // Size: 0x558 class CDOTA_Aghsfort_AbilityCrystalMaiden_FreezingField : public CDOTABaseAbility { public: ParticleIndex_t m_nWarningFX; // 0x550 ParticleIndex_t m_nRadiusFX; // 0x554 }; // Alignment: 5 // Size: 0x568 class CDOTA_Aghsfort_Ability_Creature_Magnus_Push_Skewer : public CDOTABaseAbility { public: int32_t skewer_radius; // 0x550 int32_t skewer_speed; // 0x554 int32_t range; // 0x558 int32_t tree_radius; // 0x55c int32_t m_nProjectileID; // 0x560 }; // Alignment: 1 // Size: 0x558 class CDOTA_Aghsfort_Ability_Hoodwink_HuntersBoomerang : public CDOTABaseAbility { public: int32_t min_distance; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Pugna_Grandmaster_NetherWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_AssaultCaptain_SearingChains : public CDOTABaseAbility { public: ParticleIndex_t m_nWarningFX; // 0x550 ParticleIndex_t m_nRadiusFX; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_AssaultCaptain_SunRay : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x570 class CDOTA_Ability_AghsFort_TrapRoom_Hookshot : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 Vector m_vProjectileVelocity; // 0x554 bool m_bRetract; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0xb]; // 0x561 public: CHandle< CBaseEntity > m_hSourceCaster; // 0x56c }; // Alignment: 5 // Size: 0x4b8 class CDOTA_AghsFort_BossPreview : public CBaseEntity { public: CUtlSymbolLarge m_strBossUnit; // 0x498 CUtlSymbolLarge m_strModelName; // 0x4a0 float m_flBossModelScale; // 0x4a8 float m_flExtraModelScale; // 0x4ac int32_t m_nEncounterType; // 0x4b0 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_AghsFort_Capture : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hTarget; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CDOTA_Buff* m_pMyBuff; // 0x558 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_HighFive : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jungle_Spirit_Reductions : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jungle_Spirit_RiverRejuvenation : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_TreantLevel : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_CDOTA_Item_BagOfGold_Caster_Only : public CDOTA_Item { public: CHandle< CBaseEntity > m_hThinker; // 0x5f8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morokai_JungleHealBeam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SummonCreeps : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SecondBeam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_ThirdBeam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_BeamRange : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_BeamHeal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SummonCreeps_Interval : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_Treant_Level : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x578 class CDOTA_Ability_JungleSpirit_Volcano_Eruption : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x558 int32_t primary_explosion_radius; // 0x55c int32_t secondary_explosion_radius; // 0x560 int32_t split_radius; // 0x564 char* szProjectileFXName; // 0x568 char* szGroundMarkerFXName; // 0x570 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_JungleSpirit_Volcano_Multitarget : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_JungleSpirit_Volcano_Splinter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_JungleSpirit_Volcano_Damage_Bonus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_JungleSpirit_Storm_Cyclone : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Projectiles : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Debuff_Duration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jungle_Spirit_Range_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_Range_Attack_Projectile_Duration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Morokai_Range_Attack_Aoe_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Movement_Speed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Spell_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Evasion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Bonus_Health : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Cooldown_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Magic_Resistance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Spell_Amplify : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Attack_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Health_Regen : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Bonus_Armor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI10_Portal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI10_DiscoBall : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_TI10_DiscoBall_Channel : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hTarget; // 0x550 // MNetworkEnable float m_flChannelTime; // 0x554 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Seasonal_TI10_SoccerBall : public CDOTABaseAbility { public: Vector m_vEndpoint; // 0x550 static char* &Get_PARTICLE_SPAWN(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[0]->m_instance);}; static char* &Get_PARTICLE_POST(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[1]->m_instance);}; static char* &Get_PARTICLE_IMPACT(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[2]->m_instance);}; static char* &Get_PARTICLE_GOAL(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[3]->m_instance);}; static char* &Get_PARTICLE_FAIL(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[4]->m_instance);}; static char* &Get_PARTICLE_TRAIL(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[5]->m_instance);}; static char* &Get_PARTICLE_POST_LEFT(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[6]->m_instance);}; static char* &Get_PARTICLE_POST_RIGHT(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Ability_Seasonal_TI10_SoccerBall")->m_static_fields[7]->m_instance);}; }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Seasonal_TI10_HotPotato : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x8]; // 0x554 public: int32_t projectile_speed; // 0x55c float time_to_explode; // 0x560 GameTime_t throw_time; // 0x564 }; // Alignment: 0 // Size: 0x568 class CDOTA_Ability_Seasonal_TI10_HotPotato_ThrowExistingPotato : public CDOTA_Ability_Seasonal_TI10_HotPotato { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TI10_HighFive : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x590 class CDOTA_Ability_Seasonal_TI10_GuildBanner : public CDOTABaseAbility { public: CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_BubbleGun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_RockPaperScissors : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_Rock : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_Paper : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Seasonal_TI11_Scissors : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base { public: // no members available }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Seasonal_TI11_Balloon : public CDOTABaseAbility { public: float charge_use_interval; // 0x550 float max_usable_charges; // 0x554 GameTime_t m_flLastChargeUseTime; // 0x558 CHandle< CBaseEntity > m_hBalloon; // 0x55c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Seasonal_TI11_Duel : public CDOTABaseAbility { public: float model_scale; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Seasonal_TI11_CongaLine : public CDOTABaseAbility { public: float max_duration; // 0x550 }; // Alignment: 7 // Size: 0x620 class CDOTA_Item_SpookyTeleportScroll : public CDOTA_Item { public: CHandle< CBaseEntity > m_hTeleportTarget; // 0x5f8 ParticleIndex_t m_nFXOrigin; // 0x5fc ParticleIndex_t m_nFXDestination; // 0x600 Vector m_vDestination; // 0x604 int32_t m_iMinDistance; // 0x610 float m_flBaseTeleportTime; // 0x614 float m_flExtraTeleportTime; // 0x618 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Diretide_Portal : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x570 class CDOTA_Ability_Diretide_Portal_Channel : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 CHandle< CBaseEntity > m_hInitialPortal; // 0x554 Vector m_vDestination; // 0x558 // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hTarget; // 0x564 CDOTA_Buff* m_pMyBuff; // 0x568 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Diretide2020_HighFive : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x608 class CDOTA_Item_Spring2021_DefusalBomb : public CDOTA_Item { public: CHandle< CBaseEntity > m_hThinker; // 0x5f8 int32_t m_nOwnerTeamNumber; // 0x5fc bool m_bInBombSite; // 0x600 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Spring2021_DefusalBomb_Defuse : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hTarget; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spring2021_TowerDeathRing : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Plus_HighFive : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x590 class CDOTA_Ability_Plus_GuildBanner : public CDOTABaseAbility { public: CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x550 }; // Alignment: 12 // Size: 0x648 class CDOTA_Item_Muertas_Gun : public CDOTA_Item { public: int32_t radius; // 0x5f8 int32_t ricochet_radius_start; // 0x5fc int32_t ricochet_radius_end; // 0x600 int32_t speed; // 0x604 Vector m_vTargetPos; // 0x608 Vector m_vEndpoint; // 0x614 CHandle< CBaseEntity > m_hTreeTarget; // 0x620 bool m_bHasRicocheted; // 0x624 bool m_bHasRicochetDamaged; // 0x625 private: [[maybe_unused]] uint8_t __pad0626[0x2]; // 0x626 public: Vector m_vRicochetDir; // 0x628 private: [[maybe_unused]] uint8_t __pad0634[0x8]; // 0x634 public: int32_t m_iTempViewerRadiant; // 0x63c int32_t m_iTempViewerDire; // 0x640 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ofrenda_Pledge : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ofrenda : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x618 class CDOTA_Item_Ofrenda_Shovel : public CDOTA_Item { public: Vector m_vTreasurePos; // 0x5f8 Vector m_vChannelPos; // 0x604 bool m_bIsUnderwater; // 0x610 private: [[maybe_unused]] uint8_t __pad0611[0x3]; // 0x611 public: ParticleIndex_t m_nPhaseStartFXIndex; // 0x614 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_AghsFort_Bloodstone : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_AghsFort_Bloodstone : public CDOTA_Item { public: // no members available }; // Alignment: 26 // Size: 0xd0 struct PlayerResourcePlayerData_t { public: // MNetworkEnable bool m_bIsValid; // 0x30 private: [[maybe_unused]] uint8_t __pad0031[0x7]; // 0x31 public: // MNetworkEnable // MNetworkChangeCallback "OnPlayerNamesChanged" CUtlSymbolLarge m_iszPlayerName; // 0x38 // MNetworkEnable // MNetworkChangeCallback "OnTeamChanged" int32_t m_iPlayerTeam; // 0x40 // MNetworkEnable bool m_bFullyJoinedServer; // 0x44 // MNetworkEnable // MNetworkChangeCallback "OnFakeClientChanged" bool m_bFakeClient; // 0x45 // MNetworkEnable bool m_bIsBroadcaster; // 0x46 private: [[maybe_unused]] uint8_t __pad0047[0x1]; // 0x47 public: // MNetworkEnable uint32_t m_iBroadcasterChannel; // 0x48 // MNetworkEnable uint32_t m_iBroadcasterChannelSlot; // 0x4c // MNetworkEnable bool m_bIsBroadcasterChannelCameraman; // 0x50 private: [[maybe_unused]] uint8_t __pad0051[0x3]; // 0x51 public: // MNetworkEnable // MNetworkChangeCallback "OnPlayerConnectionStateChanged" int32_t m_iConnectionState; // 0x54 // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnPlayerSteamIDsChanged" uint64_t m_iPlayerSteamID; // 0x58 // MNetworkEnable DOTATeam_t m_eCoachTeam; // 0x60 private: [[maybe_unused]] uint8_t __pad0064[0x4]; // 0x64 public: // MNetworkEnable // MNetworkChangeCallback "OnPlayerCoachedPlayerIDsChanged" CNetworkUtlVectorBase< PlayerID_t > m_vecPrivateCoachPlayerIDs; // 0x68 // MNetworkEnable uint32_t m_unCoachRating; // 0x80 // MNetworkEnable DOTATeam_t m_eLiveSpectatorTeam; // 0x84 // MNetworkEnable int32_t m_nLiveSpectatorSpectatedHeroIndex; // 0x88 // MNetworkEnable bool m_bIsPlusSubscriber; // 0x8c // MNetworkEnable bool m_bWasMVPLastGame; // 0x8d // MNetworkEnable CavernCrawlMapVariant_t m_nCavernCrawlMapVariant; // 0x8e private: [[maybe_unused]] uint8_t __pad008f[0x1]; // 0x8f public: // MNetworkEnable int32_t m_eAccoladeType[3]; // 0x90 private: [[maybe_unused]] uint8_t __pad009c[0x4]; // 0x9c public: // MNetworkEnable uint64_t m_unAccoladeData[3]; // 0xa0 // MNetworkEnable int32_t m_iRankTier; // 0xb8 // MNetworkEnable int32_t m_iTitle; // 0xbc // MNetworkEnable uint64_t m_unFavTeamPacked; // 0xc0 // MNetworkEnable CPlayerSlot m_nPlayerSlot; // 0xc8 // MNetworkEnable bool m_bIsBot; // 0xcc }; // Alignment: 1 // Size: 0x1 struct CavernCrawlPathID_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 2 // Size: 0x2 struct DOTACavernCrawlMapResult_t { public: CavernCrawlPathID_t m_nCompletedPathID; // 0x0 CavernCrawlRoomID_t m_nClaimedRoomID; // 0x1 }; // Alignment: 1 // Size: 0x1 struct CavernCrawlRewardType_t { public: uint8_t m_Value; // 0x0 }; // Alignment: 12 // Size: 0x38 struct CavernCrawlReward_t { public: uint32_t m_nActionID; // 0x0 CUtlString m_rewardName; // 0x8 CavernCrawlItemType_t m_nItemType; // 0x10 private: [[maybe_unused]] uint8_t __pad0011[0x7]; // 0x11 public: CUtlString m_locString; // 0x18 CUtlString m_tooltipString; // 0x20 CUtlString m_image; // 0x28 CavernCrawlRewardType_t m_nStyleUnlockRewardType; // 0x30 uint8_t m_nPriority; // 0x31 style_index_t m_nBundleItemDefStyle; // 0x32 bool m_bImageIsBundleItemDef; // 0x33 bool m_bCannotBeReplacedWithUltraRareReward; // 0x34 bool m_bIsUltraRareReward; // 0x35 }; // Alignment: 6 // Size: 0x18 struct CavernCrawlRoom_t { public: Vector2D m_vecPosition; // 0x0 char* m_pCSSClass; // 0x8 float m_flRoomRadius; // 0x10 bool m_bAlwaysVisible; // 0x14 bool m_bStartingRoom; // 0x15 bool m_bFinalTreasure; // 0x16 }; // Alignment: 4 // Size: 0x18 struct CavernCrawlPath_t { public: CavernCrawlRoomID_t m_nStartingRoomID; // 0x0 CavernCrawlRoomID_t m_nEndingRoomID; // 0x1 private: [[maybe_unused]] uint8_t __pad0002[0x6]; // 0x2 public: char* m_pCSSClass; // 0x8 bool m_bCannotBeSwapped; // 0x10 }; // Alignment: 1 // Size: 0x4 struct BlessingTypeID_t { public: int32_t m_Value; // 0x0 }; // Alignment: 1 // Size: 0x4 struct BlessingID_t { public: int32_t m_Value; // 0x0 }; // Alignment: 5 // Size: 0x30 struct BlessingPath_t { public: // MPropertyAttributeEditor "VDataNodePicker(//m_mapBlessings/*)" CUtlString Node1; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x8]; // 0x10 public: // MPropertyAttributeEditor "VDataNodePicker(//m_mapBlessings/*)" CUtlString Node2; // 0x18 private: [[maybe_unused]] uint8_t __pad0020[0x4]; // 0x20 public: // MPropertyDescription "This edge only allows unlocks in the direction of the arrow." bool bOneWay; // 0x24 private: [[maybe_unused]] uint8_t __pad0025[0x3]; // 0x25 public: // MPropertyAttributeRange "-1 1" // MPropertyDescription "0 = line, + = curve to the 'right' from node 1 to node 2, - = curve left" float flCircleInvRadius; // 0x28 // MPropertyDescription "path particle color" Color color; // 0x2c }; // Alignment: 12 // Size: 0x198 class CDOTALabyrinthBlessingsMap { public: CUtlString m_strBlessingEventAction; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x8]; // 0x10 public: // MPropertyAttributeEditor "locked_int()" BlessingTypeID_t m_nNextBlessingTypeID; // 0x18 // MPropertyAttributeEditor "locked_int()" BlessingID_t m_nNextBlessingID; // 0x1c // MPropertyAttributeEditor "VDataNodePicker(//m_mapBlessingTypes/*)" CUtlString m_UnlockHeroBlessingType; // 0x20 private: [[maybe_unused]] uint8_t __pad0028[0x8]; // 0x28 public: CUtlVector< CUtlString > m_vecHeroNames; // 0x30 private: [[maybe_unused]] uint8_t __pad0048[0x18]; // 0x48 public: int32_t m_nNumStartingHeroesUnlocked; // 0x60 private: [[maybe_unused]] uint8_t __pad0064[0x4]; // 0x64 public: // MPropertyAttributeEditor "VDataNodePicker(//m_mapBlessingTypes/*)" CUtlString m_UnlockLegacyHeroBlessingType; // 0x68 private: [[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70 public: CUtlVector< CUtlString > m_vecLegacyHeroNames; // 0x78 private: [[maybe_unused]] uint8_t __pad0090[0x18]; // 0x90 public: int32_t m_nNumStartingLegacyHeroesUnlocked; // 0xa8 private: [[maybe_unused]] uint8_t __pad00ac[0x4]; // 0xac public: // MVDataPromoteField CUtlDict< BlessingType_t > m_mapBlessingTypes; // 0xb0 private: [[maybe_unused]] uint8_t __pad00d8[0x40]; // 0xd8 public: // MVDataPromoteField CUtlDict< Blessing_t > m_mapBlessings; // 0x118 private: [[maybe_unused]] uint8_t __pad0140[0x28]; // 0x140 public: // MVDataPromoteField CUtlVector< BlessingPath_t > m_vecPaths; // 0x168 }; // Alignment: 2 // Size: 0x20 struct BlessingType_t { public: // MVDataUniqueMonotonicInt // MPropertyAttributeEditor "locked_int()" BlessingTypeID_t nID; // 0x0 CPanoramaImageName szIconImage; // 0x10 }; // Alignment: 8 // Size: 0x38 struct Blessing_t { public: // MVDataUniqueMonotonicInt // MPropertyAttributeEditor "locked_int()" BlessingID_t nID; // 0x0 // MPropertyAttributeEditor "VDataNodePicker(//m_mapBlessingTypes/*)" CUtlString BlessingType; // 0x8 private: [[maybe_unused]] uint8_t __pad0010[0x4]; // 0x10 public: // MPropertyDescription "fragment cost" int32_t nCost; // 0x14 // MPropertyDescription "number of grants of action to give" int32_t nValue; // 0x18 // MPropertyDescription "can you unlock this node without owning any connected nodes?" bool bStartNode; // 0x1c private: [[maybe_unused]] uint8_t __pad001d[0xb]; // 0x1d public: Vector2D vecPos; // 0x28 // MPropertyAttributeRange "0 10" float flSize; // 0x30 // MPropertyDescription "node color" Color color; // 0x34 }; // Alignment: 1 // Size: 0x4 struct BlessingPathID_t { public: int32_t m_Value; // 0x0 }; // Alignment: 3 // Size: 0x18 struct TrophyLevel_t { public: // MPropertyDescription "the score at which this level is unlocked" uint32_t m_nScore; // 0x0 // MPropertyDescription "points to award for achieving this trophy level" int32_t m_nBadgePoints; // 0x4 // MPropertyDescription "the image used to represent this level" CPanoramaImageName m_sImage; // 0x8 }; // Alignment: 14 // Size: 0x68 class CDOTATrophyDefinition { public: // MPropertyDescription "unique integer ID of this trophy" // MVDataUniqueMonotonicInt // MPropertyAttributeEditor "locked_int()" uint16_t m_nID; // 0x8 // MPropertyDescription "is this trophy still obtainable? This way we can have different presentations based on past and current trophies" bool m_bObtainable; // 0xa // MPropertyDescription "should we render a progrss bar of progress towards the next tier" bool m_bShowProgressBar; // 0xb // MPropertyDescription "should we show the popup when you earn the first tier of this trophy" bool m_bShowInitialEarn; // 0xc private: [[maybe_unused]] uint8_t __pad000d[0x3]; // 0xd public: // MPropertyDescription "the date this trophy was introduced (YYYY-MM-DD or YYYY-MM-DD hh:mm:ss)" CUtlString m_sCreationDate; // 0x10 private: [[maybe_unused]] uint8_t __pad0018[0x4]; // 0x18 public: // MPropertyDescription "how many badge points to grant for each increment" // MPropertyHideField uint32_t m_nBadgePointsPerUnit; // 0x1c // MPropertyDescription "how many units need to be leveled up in order to get the badge point grant" // MPropertyHideField uint32_t m_nUnitsPerBadgePoint; // 0x20 // MPropertyDescription "the cutoff for where badge points stop granting (0 is disable this limit)" // MPropertyHideField uint32_t m_nMaxUnitsForBadgePoints; // 0x24 // MPropertyDescription "higher sort tiers come first in presentation" // MPropertyHideField uint32_t m_nSortTier; // 0x28 private: [[maybe_unused]] uint8_t __pad002c[0x4]; // 0x2c public: // MPropertyDescription "localization string ID to use for the user facing category trophy belongs to" CUtlString m_sLocCategory; // 0x30 // MPropertyDescription "localization string ID to use for the user facing name of this trophy" CUtlString m_sLocName; // 0x38 // MPropertyDescription "localization string ID to use for the user facing descriptiontrophy" CUtlString m_sLocDescription; // 0x40 // MPropertyDescription "pluralizable localization string ID to use for the user facing unit to display on the trophy tooltip (e.g. 1 Challenge Completed / 3 Challenges Completed)" CUtlString m_sLocUnitsPluralizable; // 0x48 // MPropertyAutoExpandSelf CUtlVector< TrophyLevel_t > m_vecLevels; // 0x50 }; // Alignment: 7 // Size: 0x50 class CDOTAFeaturedGamemodeDefinition { public: // MPropertyDescription "unique integer ID of this weekly featured game mode" // MVDataUniqueMonotonicInt // MPropertyAttributeEditor "locked_int()" uint16_t m_nID; // 0x18 private: [[maybe_unused]] uint8_t __pad001a[0x2]; // 0x1a public: // MPropertyDescription "Game Mode; use DOTA_GAMEMODE_EVENT for custom games and include custom game name" DOTA_GameMode m_eGameMode; // 0x1c // MPropertyDescription "custom game addon name if any; references event_games.txt" CUtlString m_sCustomGame; // 0x20 // MPropertyDescription "shards per win" int32_t m_nShardsPerWin; // 0x28 // MPropertyDescription "shards per loss" int32_t m_nShardsPerLoss; // 0x2c // MPropertyDescription "the date/time this mode starts (YYYY-MM-DD hh:mm:ss) UTC" CUtlString m_sStartTime; // 0x30 private: [[maybe_unused]] uint8_t __pad0038[0x8]; // 0x38 public: // MPropertyDescription "the date/time this mode ends (YYYY-MM-DD hh:mm:ss) UTC" CUtlString m_sEndTime; // 0x40 }; // Alignment: 12 // Size: 0x210 class SPingWheelMessageDefinition { public: // MPropertyDescription "unique integer ID of this ping wheel message" // MVDataUniqueMonotonicInt // MPropertyAttributeEditor "locked_int()" PingWheelMessageID_t nID; // 0xc // MPropertyDescription "localization string ID for name of ping" CUtlString sLocName; // 0x10 // MPropertyDescription "Particle system of ping effect" CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > sParticle; // 0x18 // MPropertyDescription "Particle system of ping effect when targetting an npc (optional)" CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > sParticleTarget; // 0xf8 // MPropertyDescription "Color of ping effect. Leave default to use pinging player color." // MPropertyColorPlusAlpha Color color; // 0x1d8 private: [[maybe_unused]] uint8_t __pad01dc[0x4]; // 0x1dc public: // MPropertyDescription "Image shown while customizing ping wheel" CPanoramaImageName sImage; // 0x1e0 // MPropertyDescription "Sound played when pinging" // MPropertyCustomFGDType CUtlString sSound; // 0x1f0 // MPropertyDescription "localization string ID for chat message when pinging" CUtlString sChat; // 0x1f8 // MPropertyDescription "Multiplier to apply to 3 second base duration (dota_minimap_ping_duration)" float fDurationMultiplier; // 0x200 // MPropertyDescription "Event for tracking expiration. See EEvent enum" EEvent eUnlockEvent; // 0x204 // MPropertyDescription "Action of the unlock event which awards this ping wheel" uint32_t nUnlockEventActionID; // 0x208 // MPropertyDescription "ID of icon to show on minimap. See scripts/minimap_icons.txt" int32_t nMinimapIcon; // 0x20c }; // Alignment: 68 // Size: -0x78e8 class CDOTA_Bot { public: int32_t m_iLifesteal; // 0x10 int32_t m_iBlock; // 0x14 bool m_bForceIdle; // 0x18 bool m_bForceCreepAttack; // 0x19 private: [[maybe_unused]] uint8_t __pad001a[0x2]; // 0x1a public: float m_fExecutionTime[30]; // 0x1c int32_t m_iCurExecutionTime; // 0x94 PlayerID_t m_iPlayerID; // 0x98 CHandle< CBaseEntity > m_hUnit; // 0x9c CDOTA_TeamCommander* m_pTeamCommander; // 0xa0 int32_t m_iUnitType; // 0xa8 float m_fAggressionFactor; // 0xac bool m_bBotControlled; // 0xb0 bool m_bLiquidate; // 0xb1 bool m_bDoNotPurchase; // 0xb2 private: [[maybe_unused]] uint8_t __pad00b3[0x1]; // 0xb3 public: int32_t m_iDifficulty; // 0xb4 bool m_bIsFullScriptTakeover; // 0xb8 private: [[maybe_unused]] uint8_t __pad00b9[0x3]; // 0xb9 public: DOTA_LANE m_CurrentLane; // 0xbc DOTA_LANE m_MostRecentLane; // 0xc0 DOTA_LANE m_AssignedLane; // 0xc4 DOTA_LANE m_TargetLane; // 0xc8 DOTA_LANE m_ForcedLane; // 0xcc float m_fCurrentLaneAmount; // 0xd0 bool m_bIsNPXCarry; // 0xd4 private: [[maybe_unused]] uint8_t __pad00d5[0x3]; // 0xd5 public: float m_fEstimatedUnitDamage; // 0xd8 float m_fEstimatedMaxUnitDamage; // 0xdc float m_fEstimatedBuildingDamage; // 0xe0 bool m_bWantsToCast; // 0xe4 private: [[maybe_unused]] uint8_t __pad00e5[0x3]; // 0xe5 public: int32_t m_iWantsToCastFrame; // 0xe8 bool m_bWantsToAttack; // 0xec private: [[maybe_unused]] uint8_t __pad00ed[0x3]; // 0xed public: int32_t m_iWantsToAttackFrame; // 0xf0 private: [[maybe_unused]] uint8_t __pad00f4[0x4]; // 0xf4 public: CountdownTimer m_UpdateCurrentLaneTimer; // 0xf8 CountdownTimer m_UpdateModeTimer; // 0x110 CountdownTimer m_ModeThinkTimer; // 0x128 CountdownTimer m_InteralRatingsTimer; // 0x140 CountdownTimer m_BuybackDelayTimer; // 0x158 CountdownTimer m_CourierUsageTimer; // 0x170 CountdownTimer m_AbilityMutedTimer; // 0x188 CountdownTimer m_AbilityMutedCheckTimer; // 0x1a0 GameTime_t m_HitByTowerTime; // 0x1b8 GameTime_t m_HitByHeroTime[24]; // 0x1bc GameTime_t m_HitByCreepTime; // 0x21c GameTick_t m_nEstimatedDamageUpdatedTick; // 0x220 GameTick_t m_nNearbyUnitsUpdatedTick; // 0x224 private: [[maybe_unused]] uint8_t __pad0228[0xc0]; // 0x228 public: CUtlVector< int32 > m_NearbyTrees; // 0x2e8 int32_t m_nNearbyEnemyCreeps; // 0x300 int32_t m_nAttackingCreeps; // 0x304 int32_t m_nAttackingTowers; // 0x308 int32_t m_nAttackingHeroes; // 0x30c GameTime_t m_fLastSeen; // 0x310 int32_t m_nFailedPaths; // 0x314 CHandle< CBaseEntity > m_hTarget; // 0x318 Vector m_vTargetLoc; // 0x31c GameTime_t m_fTargetLastSeen; // 0x328 CHandle< CBaseEntity > m_hTargetLastHitCreep; // 0x32c bool m_bWasInvisible; // 0x330 bool m_bKnownInvisible; // 0x331 private: [[maybe_unused]] uint8_t __pad0332[0x2]; // 0x332 public: Vector m_vLastSeenLoc; // 0x334 Vector m_vRequestedBlinkLoc; // 0x340 GameTime_t m_fRequestedBlinkStart; // 0x34c GameTime_t m_fRequestedBlinkExpire; // 0x350 private: [[maybe_unused]] uint8_t __pad0354[0x4]; // 0x354 public: CUtlVector< CHandle< CBaseEntity > > m_hMinions; // 0x358 CUtlVector< CDOTABaseAbility* > m_Build; // 0x370 private: [[maybe_unused]] uint8_t __pad0388[0x82e0]; // 0x388 public: float m_fModeDesires[27]; // 0x8668 int32_t m_iPreviousBotModeType; // 0x86d4 private: [[maybe_unused]] uint8_t __pad86d8[0x30]; // 0x86d8 public: GameTime_t m_fPendingActionExecuteTime; // 0x8708 bool m_bPendingActionBypass; // 0x870c private: [[maybe_unused]] uint8_t __pad870d[0x3]; // 0x870d public: int32_t m_nForceAbility; // 0x8710 GameTime_t m_flLastDebugTime; // 0x8714 }; // Alignment: 74 // Size: 0x1480 class CDOTA_TeamCommander { public: GameTick_t m_nLastUnitsCollectTick; // 0x10 private: [[maybe_unused]] uint8_t __pad0014[0x2b4]; // 0x14 public: CountdownTimer m_LaneFrontUpdate; // 0x2c8 uint64_t m_ulBotScriptUGC; // 0x2e0 uint32_t m_rtBotScriptUpdated; // 0x2e8 private: [[maybe_unused]] uint8_t __pad02ec[0x4]; // 0x2ec public: CountdownTimer m_AvoidanceGridTimer; // 0x2f0 CountdownTimer m_EnemyVisibilityGridTimer; // 0x308 CountdownTimer m_LaneStatusTimer; // 0x320 CountdownTimer m_ChatThrottleTimer; // 0x338 DOTATeam_t m_eTeam; // 0x350 private: [[maybe_unused]] uint8_t __pad0354[0x6c]; // 0x354 public: bool m_bLateGame; // 0x3c0 private: [[maybe_unused]] uint8_t __pad03c1[0x3]; // 0x3c1 public: float m_LaneLengths[4]; // 0x3c4 float m_LaneFrontCreepsAmounts[2][4]; // 0x3d4 float m_LaneFrontTowersAmounts[2][4]; // 0x3f4 private: [[maybe_unused]] uint8_t __pad0414[0x4]; // 0x414 public: CountdownTimer m_LaneReassignTimer; // 0x418 CUtlVector< int32 > m_AvoidanceGrid; // 0x430 GameTime_t m_fNextPotentialLocationTick[24]; // 0x448 int32_t m_iPotentialLocationBuffer[24]; // 0x4a8 CUtlVector< uint8 > m_PotentialLocationGrid[2][24]; // 0x508 CHandle< CBaseEntity > m_hRoamingUnit; // 0x988 DOTA_LANE m_RoamTargetLane; // 0x98c private: [[maybe_unused]] uint8_t __pad0990[0x30]; // 0x990 public: CHandle< CBaseEntity > m_Buildings[4][8]; // 0x9c0 float m_fBuildingFortTimings[4][8]; // 0xa40 CHandle< CBaseEntity > m_LaneNodes[4][9]; // 0xac0 float m_fPushLaneDesire[4]; // 0xb50 float m_fPushLaneRawDesire[4]; // 0xb60 float m_fPushLaneConvenienceDesire[4]; // 0xb70 float m_fDefendLaneDesire[4]; // 0xb80 float m_fDefendLaneUrgencyDesire[4]; // 0xb90 float m_fDefendLanePowerDesire[4]; // 0xba0 float m_fFarmLaneDesire[4]; // 0xbb0 int32_t m_iLastSeenRoshanHealth; // 0xbc0 float m_fRoshanDesire; // 0xbc4 CUtlVector< CHandle< CBaseEntity > > m_hProposedPushUnits[4]; // 0xbc8 CUtlVector< CHandle< CBaseEntity > > m_hProposedDefendUnits[4]; // 0xc28 CUtlVector< CHandle< CBaseEntity > > m_hProposedRoamUnits; // 0xc88 CUtlVector< CHandle< CBaseEntity > > m_hProposedRoshanUnits; // 0xca0 float m_fRoamDesire; // 0xcb8 float m_fRoamOffensivePowerFactor; // 0xcbc float m_fRoamDistanceFactor; // 0xcc0 float m_fRoamPositionFactor; // 0xcc4 CHandle< CBaseEntity > m_hRoamTarget; // 0xcc8 Vector m_vRoamTargetLoc; // 0xccc float m_fHeroSelectionTimes[24]; // 0xcd8 private: [[maybe_unused]] uint8_t __pad0d38[0x18]; // 0xd38 public: Vector m_vBaseLocation; // 0xd50 private: [[maybe_unused]] uint8_t __pad0d5c[0x4]; // 0xd5c public: CUtlVector< CHandle< CBaseEntity > > m_AllUnits; // 0xd60 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedUnits; // 0xd78 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedHeroes; // 0xd90 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedCreeps; // 0xda8 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedWards; // 0xdc0 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedBuildings; // 0xdd8 CUtlVector< CHandle< CBaseEntity > > m_AllAlliedOther; // 0xdf0 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyUnits; // 0xe08 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyHeroes; // 0xe20 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyCreeps; // 0xe38 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyWards; // 0xe50 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyBuildings; // 0xe68 CUtlVector< CHandle< CBaseEntity > > m_AllEnemyOther; // 0xe80 CUtlVector< CHandle< CBaseEntity > > m_AllNeutralCreeps; // 0xe98 CUtlVector< CHandle< CBaseEntity > > m_ThinkerUnits; // 0xeb0 CUtlVector< CHandle< CBaseEntity > > m_AllUnitsIncludingDead; // 0xec8 private: [[maybe_unused]] uint8_t __pad0ee0[0x30]; // 0xee0 public: CUtlVector< CHandle< CBaseEntity > > m_hCouriers; // 0xf10 CUtlVector< CHandle< CBaseEntity > > m_hDisabledBots; // 0xf28 private: [[maybe_unused]] uint8_t __pad0f40[0x380]; // 0xf40 public: GameTime_t m_fGoodLuckFlavorTextTime; // 0x12c0 GameTime_t m_fTeamfightFlavorTextTime; // 0x12c4 GameTime_t m_fCongratulateHeroFlavorTextTime; // 0x12c8 GameTime_t m_fLastAliveHeroHistorySnapshotTime; // 0x12cc int32_t m_iAliveHeroHistoryIndex; // 0x12d0 int32_t m_iAliveHeroHistory[5]; // 0x12d4 private: [[maybe_unused]] uint8_t __pad12e8[0x8]; // 0x12e8 public: CUtlString m_sScriptDirectory; // 0x12f0 HSCRIPT m_hHeroSelectionScriptScope; // 0x12f8 HSCRIPT m_hTeamLevelDesiresScriptScope; // 0x1300 private: [[maybe_unused]] uint8_t __pad1308[0x68]; // 0x1308 public: GameTick_t m_nScriptPathAvoidanceUpdateTick; // 0x1370 float m_fExecutionTime[30]; // 0x1374 int32_t m_iCurExecutionTime; // 0x13ec }; // Alignment: 3 // Size: 0x20 class CLocalNPCObstructionsCache { public: GameTick_t m_nLastUpdatedTick; // 0x0 float m_flRadius; // 0x4 CUtlVector< CHandle< CDOTA_BaseNPC > > m_hCachedNPCs; // 0x8 }; // Alignment: 4 // Size: 0x20 class CDOTA_CreepKillInfo { public: GameTime_t m_flTimeOfDeath; // 0x0 float m_flDeathFlightDuration; // 0x4 Vector m_vWsKillDirection; // 0x8 Vector m_vWsKillOrigin; // 0x14 }; // Alignment: 2 // Size: 0x28 class CDOTAMusicProbabilityEntry { public: CUtlVector< float32 > m_flProbabilityElements; // 0x8 float m_flProbability; // 0x20 }; // Alignment: 9 // Size: 0x60 class sAcquireHistory { public: AbilityID_t m_nAbilityID; // 0x0 int32_t m_nLevel; // 0x4 int32_t m_nGold; // 0x8 int32_t m_nNetWorth; // 0xc int32_t m_bCombinedItem; // 0x10 float m_fGameTime; // 0x14 CUtlVector< AbilityID_t > m_vecItemList; // 0x18 CUtlVector< AbilityID_t > m_vecTalentSkilledList; // 0x30 CUtlVector< AbilityID_t > m_vecAvailableNeutralItemList; // 0x48 }; // Alignment: 4 // Size: 0x18 class sLoadoutItem { public: CUtlSymbolLarge name; // 0x0 int32_t iFlags; // 0x8 AbilityID_t iAbilityID; // 0xc bool bPurchased; // 0x10 }; // Alignment: 2 // Size: 0x8 class CDOTA_BaseNPC_Hero::sHeroDamageInfo { public: PlayerID_t nDamagingPlayerID; // 0x0 GameTime_t fTime; // 0x4 }; // Alignment: 4 // Size: 0x10 class CDOTA_BaseNPC_Hero::sHeroRecentModifierInfo { public: PlayerID_t nSourcePlayerID; // 0x0 bool bBuff; // 0x4 private: [[maybe_unused]] uint8_t __pad0005[0x3]; // 0x5 public: int32_t nAbilityIndex; // 0x8 GameTime_t fTime; // 0xc }; // Alignment: 6 // Size: 0x20 struct CDOTA_BaseNPC_Hero__KillInfo_t { public: CUtlSymbolLarge m_victimname; // 0x0 CUtlSymbolLarge m_inflictorname; // 0x8 bool m_bEnemyInFOW; // 0x10 bool m_bWasFirstBlood; // 0x11 private: [[maybe_unused]] uint8_t __pad0012[0x2]; // 0x12 public: int32_t m_iKillCount; // 0x14 float m_flBlinkTime; // 0x18 }; // Alignment: 2 // Size: 0x8 struct CDOTA_ScriptedSpawner__scripted_moveto_t { public: CHandle< CBaseEntity > hMoveToTarget; // 0x0 CHandle< CBaseEntity > hGivenToNPC; // 0x4 }; // Alignment: 20 // Size: 0x2c struct CreatureAbilityData_t { public: CHandle< CBaseEntity > hAbility; // 0x0 bool bIsDamage; // 0x4 bool bIsDebuff; // 0x5 bool bIsStun; // 0x6 bool bIsAOE; // 0x7 bool bIsLinear; // 0x8 bool bUseOnCreeps; // 0x9 bool bIsHeal; // 0xa bool bIsBuff; // 0xb bool bUseSelfishly; // 0xc bool bCanHelpOthersEscape; // 0xd bool bUseOnTrees; // 0xe bool bUseOnStrongestAlly; // 0xf int32_t nUseAtHealthPercent; // 0x10 int32_t nRadius; // 0x14 int32_t nMinimumTargets; // 0x18 int32_t nMaximumTargets; // 0x1c int32_t nMinimumHP; // 0x20 int32_t nMinimumRange; // 0x24 CreatureAbilityType nAbilityType; // 0x28 }; // Alignment: 5 // Size: 0x18 struct CreatureStateData_t { public: char* pszName; // 0x0 float flAggression; // 0x8 float flAvoidance; // 0xc float flSupport; // 0x10 float flRoamDistance; // 0x14 }; // Alignment: 4 // Size: 0x28 struct ItemDropData_t { public: CUtlVector< CUtlString > sItemNames; // 0x0 float flChance; // 0x18 int32_t nReqLevel; // 0x1c bool bMustBeChampion; // 0x20 }; // Alignment: 1 // Size: 0x80 class CDOTABehaviorDie { public: CountdownTimer m_timer; // 0x68 }; // Alignment: 1 // Size: 0x80 class CDOTABehaviorIdle { public: CountdownTimer m_IdleRareAnimationTime; // 0x68 }; // Alignment: 0 // Size: 0x80 class CDOTABehaviorTutorialIdle : public CDOTABehaviorIdle { public: // no members available }; // Alignment: 2 // Size: 0x98 class CDOTABehaviorTutorialVictory { public: CountdownTimer m_StartAnimationTime; // 0x68 CountdownTimer m_FinishAnimationTime; // 0x80 }; // Alignment: 7 // Size: 0xe0 class CDOTABehaviorMoveTo { public: CountdownTimer m_repathTimer; // 0xb8 bool m_bSetAnimation; // 0xd0 bool m_bUseSwimAnimations; // 0xd1 private: [[maybe_unused]] uint8_t __pad00d2[0x2]; // 0xd2 public: int32_t m_nRunActivity; // 0xd4 float m_flTargetDist; // 0xd8 bool m_bIsDirectional; // 0xdc bool m_bIsRelative; // 0xdd }; // Alignment: 5 // Size: 0xa8 class CDOTABehaviorNeutralAggro { public: Vector m_vHomePosition; // 0x68 bool m_bNoLeashTime; // 0x74 bool m_bShortLeashTime; // 0x75 private: [[maybe_unused]] uint8_t __pad0076[0x2]; // 0x76 public: CountdownTimer m_LeashTimer; // 0x78 CountdownTimer m_FleeAgainTimer; // 0x90 }; // Alignment: 5 // Size: 0x160 class CDOTABehaviorCommandMoveToNPC { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hTarget; // 0x150 int32_t m_nMovementState; // 0x154 bool m_bInRange; // 0x158 bool m_bWasAttacking; // 0x159 }; // Alignment: 5 // Size: 0x160 class CDOTABehaviorCommandMoveToNPCToGive { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hTarget; // 0x150 int32_t m_nMovementState; // 0x154 CHandle< CBaseEntity > m_hItem; // 0x158 float m_flRange; // 0x15c }; // Alignment: 11 // Size: 0x178 class CDOTABehaviorCommandMoveToTargetToAttack { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hTarget; // 0x150 int32_t m_nMovementState; // 0x154 bool m_bFailedCast; // 0x158 private: [[maybe_unused]] uint8_t __pad0159[0x3]; // 0x159 public: float m_flTargetRange; // 0x15c bool m_bDeny; // 0x160 bool m_bInvisBreak; // 0x161 bool m_bNightmareAttack; // 0x162 bool m_bTurningToTarget; // 0x163 float m_flTargetAngle; // 0x164 Vector m_vMoveToOrderPosition; // 0x168 }; // Alignment: 13 // Size: 0x188 class CDOTABehaviorCommandVampireThrall { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hTarget; // 0x150 private: [[maybe_unused]] uint8_t __pad0154[0x4]; // 0x154 public: float m_flTargetRange; // 0x158 bool m_bDeny; // 0x15c bool m_bInvisBreak; // 0x15d bool m_bNightmareAttack; // 0x15e bool m_bTurningToTarget; // 0x15f bool m_bHasPositionOrder; // 0x160 bool m_bIsAggressive; // 0x161 private: [[maybe_unused]] uint8_t __pad0162[0x2]; // 0x162 public: float m_flTargetAngle; // 0x164 Vector m_vFollowOffset; // 0x168 Vector m_vMoveToPosition; // 0x174 CHandle< CBaseEntity > m_hMaster; // 0x180 }; // Alignment: 5 // Size: 0x168 class CDOTABehaviorPuppetMasterVoodooDoll { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 float m_flDistanceFromMaster; // 0x150 Vector m_vLastDir; // 0x154 CHandle< CDOTA_BaseNPC > m_hMaster; // 0x160 CHandle< CDOTA_BaseNPC > m_hTarget; // 0x164 }; // Alignment: 8 // Size: 0x1a0 class CDOTABehaviorMoveToNPCToAttack { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 private: [[maybe_unused]] uint8_t __pad0150[0x8]; // 0x150 public: bool m_bMovingToLastKnownTargetPosition; // 0x158 private: [[maybe_unused]] uint8_t __pad0159[0x7]; // 0x159 public: CountdownTimer m_AttackDelay; // 0x160 CountdownTimer m_ChaseLimit; // 0x178 bool m_bInAttackPosition; // 0x190 bool m_bTurningToTarget; // 0x191 private: [[maybe_unused]] uint8_t __pad0192[0x2]; // 0x192 public: float m_flTargetAngle; // 0x194 bool m_bAttackMove; // 0x198 }; // Alignment: 1 // Size: 0x1b8 class CDOTABehaviorTutorialRazorMoveToNPCToAttack : public CDOTABehaviorMoveToNPCToAttack { public: CountdownTimer m_PlasmaFieldDelay; // 0x1a0 }; // Alignment: 5 // Size: 0x188 class CDOTABehaviorNeutralHome { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 Vector m_vHomePosition; // 0x150 Vector m_vHomeFacing; // 0x15c bool m_bHomePositionSet; // 0x168 private: [[maybe_unused]] uint8_t __pad0169[0x7]; // 0x169 public: CountdownTimer m_IdleRareAnimationTime; // 0x170 }; // Alignment: 5 // Size: 0xc0 class CDOTABehaviorAttack { public: CHandle< CBaseEntity > m_hTarget; // 0x68 private: [[maybe_unused]] uint8_t __pad006c[0x24]; // 0x6c public: CountdownTimer m_backSwingTimer; // 0x90 bool m_bCastAttack; // 0xa8 private: [[maybe_unused]] uint8_t __pad00a9[0x3]; // 0xa9 public: float m_flBackswingTime; // 0xac float m_flAnimSpeed; // 0xb0 }; // Alignment: 5 // Size: 0x160 class CDOTABehaviorInvade { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_goalEntity; // 0x150 CHandle< CBaseEntity > m_nextGoalEntity; // 0x154 bool m_bReachedFinalGoal; // 0x158 bool m_bRequireReachingEndPath; // 0x159 }; // Alignment: 4 // Size: 0x160 class CDOTABehaviorCommandMoveToPosition { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 Vector m_vPosition; // 0x150 bool m_bDirectional; // 0x15c bool m_bRelative; // 0x15d }; // Alignment: 5 // Size: 0x180 class CDOTABehaviorCommandPatrol { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 Vector m_vOrderPosition; // 0x150 private: [[maybe_unused]] uint8_t __pad015c[0x4]; // 0x15c public: CUtlVector< Vector > m_vPatrolPoints; // 0x160 int32_t m_nCurrentTargetIndex; // 0x178 int32_t m_nDirection; // 0x17c }; // Alignment: 3 // Size: 0x160 class CDOTABehaviorCommandMoveToPositionToDropItem { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 Vector m_vPosition; // 0x150 CHandle< CBaseEntity > m_hItem; // 0x15c }; // Alignment: 2 // Size: 0x158 class CDOTABehaviorCommandMoveToRuneToTake { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hRune; // 0x150 }; // Alignment: 2 // Size: 0x158 class CDOTABehaviorCommandMoveToItemToTake { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hItem; // 0x150 }; // Alignment: 10 // Size: 0xd0 class CDOTABehaviorAttackPhase { public: CHandle< CBaseEntity > m_hTarget; // 0x68 private: [[maybe_unused]] uint8_t __pad006c[0x4]; // 0x6c public: CountdownTimer m_attackTimer; // 0x70 bool m_bAttackComplete; // 0x88 private: [[maybe_unused]] uint8_t __pad0089[0x27]; // 0x89 public: bool m_bDeny; // 0xb0 bool m_bCastAttack; // 0xb1 bool m_bTargetTeleported; // 0xb2 private: [[maybe_unused]] uint8_t __pad00b3[0x1]; // 0xb3 public: float m_flBackswingDuration; // 0xb4 float m_flAnimSpeed; // 0xb8 float m_flAttackPortionPriorToTimer; // 0xbc HSequence m_iSequence; // 0xc0 }; // Alignment: 7 // Size: 0xa8 class CDOTABehaviorAbilityPhase { public: CountdownTimer m_abilityTimer; // 0x68 CountdownTimer m_backSwingTimer; // 0x80 bool m_bBackswinging; // 0x98 private: [[maybe_unused]] uint8_t __pad0099[0x3]; // 0x99 public: CHandle< CBaseEntity > m_hAbility; // 0x9c bool m_bActionLocked; // 0xa0 bool m_bTargetTeleported; // 0xa1 bool m_bOriginalTargetTeleported; // 0xa2 }; // Alignment: 5 // Size: 0x168 class CDOTABehaviorCommandMoveToPositionToCast { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 Vector m_vPosition; // 0x150 CHandle< CBaseEntity > m_hAbility; // 0x15c bool m_bTurningToTarget; // 0x160 private: [[maybe_unused]] uint8_t __pad0161[0x3]; // 0x161 public: float m_flTargetAngle; // 0x164 }; // Alignment: 8 // Size: 0x170 class CDOTABehaviorCommandMoveToTargetToCast { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hTarget; // 0x150 CHandle< CBaseEntity > m_hAbility; // 0x154 int32_t m_nMovementState; // 0x158 bool m_bFailedCast; // 0x15c private: [[maybe_unused]] uint8_t __pad015d[0x3]; // 0x15d public: float m_flTargetRange; // 0x160 bool m_bTurningToTarget; // 0x164 private: [[maybe_unused]] uint8_t __pad0165[0x3]; // 0x165 public: float m_flTargetAngle; // 0x168 }; // Alignment: 5 // Size: 0x90 class CDOTABehaviorAbilityChannel { public: CountdownTimer m_timer; // 0x68 float m_flAbilityChannelDuration; // 0x80 CHandle< CBaseEntity > m_hAbility; // 0x84 CHandle< CBaseEntity > m_hTarget; // 0x88 bool m_bCompletedChanneling; // 0x8c }; // Alignment: 6 // Size: 0x180 class CDOTABehaviorCompanion { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_goalEntity; // 0x150 Vector m_vOffset; // 0x154 int32_t m_iRightOffset; // 0x160 int32_t m_iForwardOffset; // 0x164 CountdownTimer m_PositionFuzziness; // 0x168 }; // Alignment: 0 // Size: 0x180 class CDOTABehaviorCreatureCompanion : public CDOTABehaviorCompanion { public: // no members available }; // Alignment: 26 // Size: 0x2f0 class CDOTABehaviorPet : public CDOTABehaviorCompanion { public: float m_flThreatLevel; // 0x190 private: [[maybe_unused]] uint8_t __pad0194[0x4]; // 0x194 public: CountdownTimer m_ThreatTimer; // 0x198 CountdownTimer m_StuckTimer; // 0x1b0 bool m_bHasVanished; // 0x1c8 private: [[maybe_unused]] uint8_t __pad01c9[0x7]; // 0x1c9 public: CountdownTimer m_VanishOnThreatTimer; // 0x1d0 Vector m_vecFleeCurrentTarget; // 0x1e8 Vector m_vecFleeDirection; // 0x1f4 Vector m_vecOldFleeDirection; // 0x200 private: [[maybe_unused]] uint8_t __pad020c[0x4]; // 0x20c public: CountdownTimer m_FleePersistTimer; // 0x210 CountdownTimer m_CombatRepositionTimer; // 0x228 CHandle< CDOTA_BaseNPC > m_hNearestEnemyHero; // 0x240 GameTime_t m_flLastInWater; // 0x244 Vector m_vecHomeBasePosition; // 0x248 bool m_bReturnToBase; // 0x254 private: [[maybe_unused]] uint8_t __pad0255[0x3]; // 0x255 public: CountdownTimer m_ReturnToBaseTimer; // 0x258 PetCoopStates_t m_nCoopTeleportState; // 0x270 private: [[maybe_unused]] uint8_t __pad0274[0x4]; // 0x274 public: CountdownTimer m_CarryItemTimer; // 0x278 CountdownTimer m_PickupDelayTimer; // 0x290 CountdownTimer m_LevelupCheckTimer; // 0x2a8 bool m_bIsEmoting; // 0x2c0 private: [[maybe_unused]] uint8_t __pad02c1[0x3]; // 0x2c1 public: CHandle< CDOTA_BaseNPC > m_hEmoteTarget; // 0x2c4 CountdownTimer m_EmoteTimer; // 0x2c8 int32_t m_nEmoteActivity; // 0x2e0 CHandle< CBaseEntity > m_tempGoalEntity; // 0x2e4 bool m_bFollowingTempGoal; // 0x2e8 private: [[maybe_unused]] uint8_t __pad02e9[0x3]; // 0x2e9 public: int32_t m_event_dota_illusions_created; // 0x2ec }; // Alignment: 7 // Size: 0x180 class CDOTABehaviorChase { public: CDOTABehaviorMoveTo m_MoveTo; // 0x70 CHandle< CBaseEntity > m_hChaseEntity; // 0x150 bool m_bTargetMoves; // 0x154 private: [[maybe_unused]] uint8_t __pad0155[0x3]; // 0x155 public: float m_flFollowDistance[2]; // 0x158 float m_flForwardDistance; // 0x160 float m_flRightDistance; // 0x164 CountdownTimer m_PositionFuzziness; // 0x168 }; // Alignment: 0 // Size: 0x10 class CHorizontalMotionController { public: // no members available }; // Alignment: 0 // Size: 0x10 class CVerticalMotionController { public: // no members available }; // Alignment: 0 // Size: 0x498 class CPointEntity : public CBaseEntity { public: // no members available }; // Alignment: 25 // Size: 0x1618 class CEnvCombinedLightProbeVolume : public CBaseEntity { public: // MNetworkEnable // MNetworkChangeCallback "StateChanged" Color m_Color; // 0x1568 // MNetworkEnable // MNetworkChangeCallback "StateChanged" float m_flBrightness; // 0x156c // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x1570 // MNetworkEnable bool m_bCustomCubemapTexture; // 0x1578 private: [[maybe_unused]] uint8_t __pad1579[0x7]; // 0x1579 public: // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1580 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1588 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1590 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1598 // MNetworkEnable Vector m_vBoxMins; // 0x15a0 // MNetworkEnable Vector m_vBoxMaxs; // 0x15ac // MNetworkEnable CUtlSymbolLarge m_LightGroups; // 0x15b8 // MNetworkEnable bool m_bMoveable; // 0x15c0 private: [[maybe_unused]] uint8_t __pad15c1[0x3]; // 0x15c1 public: // MNetworkEnable int32_t m_nHandshake; // 0x15c4 // MNetworkEnable int32_t m_nEnvCubeMapArrayIndex; // 0x15c8 // MNetworkEnable int32_t m_nPriority; // 0x15cc // MNetworkEnable bool m_bStartDisabled; // 0x15d0 private: [[maybe_unused]] uint8_t __pad15d1[0x3]; // 0x15d1 public: // MNetworkEnable float m_flEdgeFadeDist; // 0x15d4 // MNetworkEnable Vector m_vEdgeFadeDists; // 0x15d8 // MNetworkEnable int32_t m_nLightProbeSizeX; // 0x15e4 // MNetworkEnable int32_t m_nLightProbeSizeY; // 0x15e8 // MNetworkEnable int32_t m_nLightProbeSizeZ; // 0x15ec // MNetworkEnable int32_t m_nLightProbeAtlasX; // 0x15f0 // MNetworkEnable int32_t m_nLightProbeAtlasY; // 0x15f4 // MNetworkEnable int32_t m_nLightProbeAtlasZ; // 0x15f8 private: [[maybe_unused]] uint8_t __pad15fc[0x15]; // 0x15fc public: // MNetworkEnable bool m_bEnabled; // 0x1611 }; // Alignment: 19 // Size: 0x5f8 class CEnvCubemap : public CBaseEntity { public: // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hCubemapTexture; // 0x588 // MNetworkEnable bool m_bCustomCubemapTexture; // 0x590 private: [[maybe_unused]] uint8_t __pad0591[0x3]; // 0x591 public: // MNetworkEnable float m_flInfluenceRadius; // 0x594 // MNetworkEnable Vector m_vBoxProjectMins; // 0x598 // MNetworkEnable Vector m_vBoxProjectMaxs; // 0x5a4 // MNetworkEnable CUtlSymbolLarge m_LightGroups; // 0x5b0 // MNetworkEnable bool m_bMoveable; // 0x5b8 private: [[maybe_unused]] uint8_t __pad05b9[0x3]; // 0x5b9 public: // MNetworkEnable int32_t m_nHandshake; // 0x5bc // MNetworkEnable int32_t m_nEnvCubeMapArrayIndex; // 0x5c0 // MNetworkEnable int32_t m_nPriority; // 0x5c4 // MNetworkEnable float m_flEdgeFadeDist; // 0x5c8 // MNetworkEnable Vector m_vEdgeFadeDists; // 0x5cc // MNetworkEnable float m_flDiffuseScale; // 0x5d8 // MNetworkEnable bool m_bStartDisabled; // 0x5dc // MNetworkEnable bool m_bDefaultEnvMap; // 0x5dd // MNetworkEnable bool m_bDefaultSpecEnvMap; // 0x5de // MNetworkEnable bool m_bIndoorCubeMap; // 0x5df // MNetworkEnable bool m_bCopyDiffuseFromDefaultCubemap; // 0x5e0 private: [[maybe_unused]] uint8_t __pad05e1[0xf]; // 0x5e1 public: // MNetworkEnable bool m_bEnabled; // 0x5f0 }; // Alignment: 0 // Size: 0x5f8 class CEnvCubemapBox : public CEnvCubemap { public: // no members available }; // Alignment: 18 // Size: 0x4e8 class CEnvCubemapFog : public CBaseEntity { public: // MNetworkEnable float m_flEndDistance; // 0x498 // MNetworkEnable float m_flStartDistance; // 0x49c // MNetworkEnable float m_flFogFalloffExponent; // 0x4a0 // MNetworkEnable bool m_bHeightFogEnabled; // 0x4a4 private: [[maybe_unused]] uint8_t __pad04a5[0x3]; // 0x4a5 public: // MNetworkEnable float m_flFogHeightWidth; // 0x4a8 // MNetworkEnable float m_flFogHeightEnd; // 0x4ac // MNetworkEnable float m_flFogHeightStart; // 0x4b0 // MNetworkEnable float m_flFogHeightExponent; // 0x4b4 // MNetworkEnable float m_flLODBias; // 0x4b8 // MNetworkEnable bool m_bActive; // 0x4bc // MNetworkEnable bool m_bStartDisabled; // 0x4bd private: [[maybe_unused]] uint8_t __pad04be[0x2]; // 0x4be public: // MNetworkEnable float m_flFogMaxOpacity; // 0x4c0 // MNetworkEnable int32_t m_nCubemapSourceType; // 0x4c4 // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x4c8 // MNetworkEnable CUtlSymbolLarge m_iszSkyEntity; // 0x4d0 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogCubemapTexture; // 0x4d8 // MNetworkEnable bool m_bHasHeightFogEnd; // 0x4e0 bool m_bFirstTime; // 0x4e1 }; // Alignment: 18 // Size: 0x14f0 class CEnvLightProbeVolume : public CBaseEntity { public: // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeTexture; // 0x1478 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightIndicesTexture; // 0x1480 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightScalarsTexture; // 0x1488 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hLightProbeDirectLightShadowsTexture; // 0x1490 // MNetworkEnable Vector m_vBoxMins; // 0x1498 // MNetworkEnable Vector m_vBoxMaxs; // 0x14a4 // MNetworkEnable CUtlSymbolLarge m_LightGroups; // 0x14b0 // MNetworkEnable bool m_bMoveable; // 0x14b8 private: [[maybe_unused]] uint8_t __pad14b9[0x3]; // 0x14b9 public: // MNetworkEnable int32_t m_nHandshake; // 0x14bc // MNetworkEnable int32_t m_nPriority; // 0x14c0 // MNetworkEnable bool m_bStartDisabled; // 0x14c4 private: [[maybe_unused]] uint8_t __pad14c5[0x3]; // 0x14c5 public: // MNetworkEnable int32_t m_nLightProbeSizeX; // 0x14c8 // MNetworkEnable int32_t m_nLightProbeSizeY; // 0x14cc // MNetworkEnable int32_t m_nLightProbeSizeZ; // 0x14d0 // MNetworkEnable int32_t m_nLightProbeAtlasX; // 0x14d4 // MNetworkEnable int32_t m_nLightProbeAtlasY; // 0x14d8 // MNetworkEnable int32_t m_nLightProbeAtlasZ; // 0x14dc private: [[maybe_unused]] uint8_t __pad14e0[0x9]; // 0x14e0 public: // MNetworkEnable bool m_bEnabled; // 0x14e9 }; // Alignment: 8 // Size: 0x4c0 class CTonemapController2 : public CBaseEntity { public: // MNetworkEnable float m_flAutoExposureMin; // 0x498 // MNetworkEnable float m_flAutoExposureMax; // 0x49c // MNetworkEnable float m_flTonemapPercentTarget; // 0x4a0 // MNetworkEnable float m_flTonemapPercentBrightPixels; // 0x4a4 // MNetworkEnable float m_flTonemapMinAvgLum; // 0x4a8 // MNetworkEnable float m_flExposureAdaptationSpeedUp; // 0x4ac // MNetworkEnable float m_flExposureAdaptationSpeedDown; // 0x4b0 // MNetworkEnable float m_flTonemapEVSmoothingRange; // 0x4b4 }; // Alignment: 28 // Size: 0x518 class CEnvVolumetricFogController : public CBaseEntity { public: // MNetworkEnable float m_flScattering; // 0x498 // MNetworkEnable float m_flAnisotropy; // 0x49c // MNetworkEnable float m_flFadeSpeed; // 0x4a0 // MNetworkEnable float m_flDrawDistance; // 0x4a4 // MNetworkEnable float m_flFadeInStart; // 0x4a8 // MNetworkEnable float m_flFadeInEnd; // 0x4ac // MNetworkEnable float m_flIndirectStrength; // 0x4b0 // MNetworkEnable int32_t m_nIndirectTextureDimX; // 0x4b4 // MNetworkEnable int32_t m_nIndirectTextureDimY; // 0x4b8 // MNetworkEnable int32_t m_nIndirectTextureDimZ; // 0x4bc // MNetworkEnable Vector m_vBoxMins; // 0x4c0 // MNetworkEnable Vector m_vBoxMaxs; // 0x4cc // MNetworkEnable bool m_bActive; // 0x4d8 private: [[maybe_unused]] uint8_t __pad04d9[0x3]; // 0x4d9 public: // MNetworkEnable GameTime_t m_flStartAnisoTime; // 0x4dc // MNetworkEnable GameTime_t m_flStartScatterTime; // 0x4e0 // MNetworkEnable GameTime_t m_flStartDrawDistanceTime; // 0x4e4 // MNetworkEnable float m_flStartAnisotropy; // 0x4e8 // MNetworkEnable float m_flStartScattering; // 0x4ec // MNetworkEnable float m_flStartDrawDistance; // 0x4f0 // MNetworkEnable float m_flDefaultAnisotropy; // 0x4f4 // MNetworkEnable float m_flDefaultScattering; // 0x4f8 // MNetworkEnable float m_flDefaultDrawDistance; // 0x4fc // MNetworkEnable bool m_bStartDisabled; // 0x500 // MNetworkEnable bool m_bEnableIndirect; // 0x501 // MNetworkEnable bool m_bIsMaster; // 0x502 private: [[maybe_unused]] uint8_t __pad0503[0x5]; // 0x503 public: // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hFogIndirectTexture; // 0x508 // MNetworkEnable int32_t m_nForceRefreshCount; // 0x510 bool m_bFirstTime; // 0x514 }; // Alignment: 7 // Size: 0x4c8 class CEnvVolumetricFogVolume : public CBaseEntity { public: // MNetworkEnable bool m_bActive; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: // MNetworkEnable Vector m_vBoxMins; // 0x49c // MNetworkEnable Vector m_vBoxMaxs; // 0x4a8 // MNetworkEnable bool m_bStartDisabled; // 0x4b4 private: [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: // MNetworkEnable float m_flStrength; // 0x4b8 // MNetworkEnable int32_t m_nFalloffShape; // 0x4bc // MNetworkEnable float m_flFalloffExponent; // 0x4c0 }; // Alignment: 3 // Size: 0x508 class CFogController : public CBaseEntity { public: // MNetworkEnable fogparams_t m_fog; // 0x498 bool m_bUseAngles; // 0x500 private: [[maybe_unused]] uint8_t __pad0501[0x3]; // 0x501 public: int32_t m_iChangedVariables; // 0x504 }; // Alignment: 0 // Size: 0x498 class CInfoTarget : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoParticleTarget : public CPointEntity { public: // no members available }; // Alignment: 3 // Size: 0x4b0 class CInfoVisibilityBox : public CBaseEntity { public: // MNetworkEnable int32_t m_nMode; // 0x49c // MNetworkEnable Vector m_vBoxSize; // 0x4a0 // MNetworkEnable bool m_bEnabled; // 0x4ac }; // Alignment: 7 // Size: 0x4d8 class CInfoWorldLayer : public CBaseEntity { public: CEntityIOOutput m_pOutputOnEntitiesSpawned; // 0x498 // MNetworkEnable CUtlSymbolLarge m_worldName; // 0x4c0 // MNetworkEnable CUtlSymbolLarge m_layerName; // 0x4c8 // MNetworkEnable bool m_bWorldLayerVisible; // 0x4d0 // MNetworkEnable bool m_bEntitiesSpawned; // 0x4d1 bool m_bCreateAsChildSpawnGroup; // 0x4d2 private: [[maybe_unused]] uint8_t __pad04d3[0x1]; // 0x4d3 public: uint32_t m_hLayerSpawnGroup; // 0x4d4 }; // Alignment: 8 // Size: 0x4d8 class CMultiLightProxy : public CLogicalEntity { public: CUtlSymbolLarge m_iszLightNameFilter; // 0x498 CUtlSymbolLarge m_iszLightClassFilter; // 0x4a0 float m_flLightRadiusFilter; // 0x4a8 float m_flBrightnessDelta; // 0x4ac bool m_bPerformScreenFade; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b1[0x3]; // 0x4b1 public: float m_flTargetBrightnessMultiplier; // 0x4b4 float m_flCurrentBrightnessMultiplier; // 0x4b8 private: [[maybe_unused]] uint8_t __pad04bc[0x4]; // 0x4bc public: CUtlVector< CHandle< CLightEntity > > m_vecLights; // 0x4c0 }; // Alignment: 25 // Size: 0x500 class CPointCamera : public CBaseEntity { public: // MNetworkEnable float m_FOV; // 0x498 // MNetworkEnable float m_Resolution; // 0x49c // MNetworkEnable bool m_bFogEnable; // 0x4a0 // MNetworkEnable Color m_FogColor; // 0x4a1 private: [[maybe_unused]] uint8_t __pad04a5[0x3]; // 0x4a5 public: // MNetworkEnable float m_flFogStart; // 0x4a8 // MNetworkEnable float m_flFogEnd; // 0x4ac // MNetworkEnable float m_flFogMaxDensity; // 0x4b0 // MNetworkEnable bool m_bActive; // 0x4b4 // MNetworkEnable bool m_bUseScreenAspectRatio; // 0x4b5 private: [[maybe_unused]] uint8_t __pad04b6[0x2]; // 0x4b6 public: // MNetworkEnable float m_flAspectRatio; // 0x4b8 // MNetworkEnable bool m_bNoSky; // 0x4bc private: [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd public: // MNetworkEnable float m_fBrightness; // 0x4c0 // MNetworkEnable float m_flZFar; // 0x4c4 // MNetworkEnable float m_flZNear; // 0x4c8 // MNetworkEnable float m_flOverrideShadowFarZ; // 0x4cc // MNetworkEnable bool m_bDofEnabled; // 0x4d0 private: [[maybe_unused]] uint8_t __pad04d1[0x3]; // 0x4d1 public: // MNetworkEnable float m_flDofNearBlurry; // 0x4d4 // MNetworkEnable float m_flDofNearCrisp; // 0x4d8 // MNetworkEnable float m_flDofFarCrisp; // 0x4dc // MNetworkEnable float m_flDofFarBlurry; // 0x4e0 // MNetworkEnable float m_flDofTiltToGround; // 0x4e4 float m_TargetFOV; // 0x4e8 float m_DegreesPerSecond; // 0x4ec bool m_bIsOn; // 0x4f0 private: [[maybe_unused]] uint8_t __pad04f1[0x7]; // 0x4f1 public: CPointCamera* m_pNext; // 0x4f8 }; // Alignment: 1 // Size: 0x508 class CPointCameraVFOV : public CPointCamera { public: float m_flVerticalFOV; // 0x500 }; // Alignment: 12 // Size: 0x528 class CPointTemplate : public CLogicalEntity { public: CUtlSymbolLarge m_iszWorldName; // 0x498 CUtlSymbolLarge m_iszSource2EntityLumpName; // 0x4a0 CUtlSymbolLarge m_iszEntityFilterName; // 0x4a8 float m_flTimeoutInterval; // 0x4b0 bool m_bAsynchronouslySpawnEntities; // 0x4b4 private: [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: CEntityIOOutput m_pOutputOnSpawned; // 0x4b8 PointTemplateClientOnlyEntityBehavior_t m_clientOnlyEntityBehavior; // 0x4e0 PointTemplateOwnerSpawnGroupType_t m_ownerSpawnGroupType; // 0x4e4 CUtlVector< uint32 > m_createdSpawnGroupHandles; // 0x4e8 CUtlVector< CEntityHandle > m_SpawnedEntityHandles; // 0x500 HSCRIPT m_ScriptSpawnCallback; // 0x518 HSCRIPT m_ScriptCallbackScope; // 0x520 }; // Alignment: 4 // Size: 0x4c8 class CGameGibManager : public CBaseEntity { public: bool m_bAllowNewGibs; // 0x4b8 private: [[maybe_unused]] uint8_t __pad04b9[0x3]; // 0x4b9 public: int32_t m_iCurrentMaxPieces; // 0x4bc int32_t m_iMaxPieces; // 0x4c0 int32_t m_iLastFrame; // 0x4c4 }; // Alignment: 3 // Size: 0x4b8 class CSoundAreaEntityBase : public CBaseEntity { public: // MNetworkEnable bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x7]; // 0x499 public: // MNetworkEnable CUtlSymbolLarge m_iszSoundAreaType; // 0x4a0 // MNetworkEnable Vector m_vPos; // 0x4a8 }; // Alignment: 1 // Size: 0x4c0 class CSoundAreaEntitySphere : public CSoundAreaEntityBase { public: // MNetworkEnable float m_flRadius; // 0x4b8 }; // Alignment: 2 // Size: 0x4d0 class CSoundAreaEntityOrientedBox : public CSoundAreaEntityBase { public: // MNetworkEnable Vector m_vMin; // 0x4b8 // MNetworkEnable Vector m_vMax; // 0x4c4 }; // Alignment: 4 // Size: 0x550 class CTeam : public CBaseEntity { public: // MNetworkEnable // MNetworkAlias "m_aPlayers" CNetworkUtlVectorBase< CHandle< CBasePlayerController > > m_aPlayerControllers; // 0x498 // MNetworkEnable // MNetworkAlias "m_aPawns" CNetworkUtlVectorBase< CHandle< CBasePlayerPawn > > m_aPlayers; // 0x4b0 // MNetworkEnable int32_t m_iScore; // 0x4c8 // MNetworkEnable char m_szTeamname[129]; // 0x4cc }; // Alignment: 25 // Size: 0x658 class CBasePlayerController : public CBaseEntity { public: uint64_t m_nInButtonsWhichAreToggles; // 0x4a0 // MNetworkEnable // MNetworkPriority "1" // MNetworkUserGroup "LocalPlayerExclusive" uint32_t m_nTickBase; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x2c]; // 0x4ac public: // MNetworkEnable // MNetworkChangeCallback "OnPawnChanged" CHandle< CBasePlayerPawn > m_hPawn; // 0x4d8 CSplitScreenSlot m_nSplitScreenSlot; // 0x4dc CHandle< CBasePlayerController > m_hSplitOwner; // 0x4e0 private: [[maybe_unused]] uint8_t __pad04e4[0x4]; // 0x4e4 public: CUtlVector< CHandle< CBasePlayerController > > m_hSplitScreenPlayers; // 0x4e8 bool m_bIsHLTV; // 0x500 private: [[maybe_unused]] uint8_t __pad0501[0x3]; // 0x501 public: // MNetworkEnable // MNetworkChangeCallback "OnConnectionStateChanged" PlayerConnectedState m_iConnected; // 0x504 // MNetworkEnable // MNetworkChangeCallback "OnPlayerControllerNameChanged" char m_iszPlayerName[128]; // 0x508 CUtlString m_szNetworkIDString; // 0x588 float m_fLerpTime; // 0x590 bool m_bLagCompensation; // 0x594 bool m_bPredict; // 0x595 bool m_bAutoKickDisabled; // 0x596 bool m_bIsLowViolence; // 0x597 bool m_bGamePaused; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x6f]; // 0x599 public: int32_t m_nHighestCommandNumberReceived; // 0x608 private: [[maybe_unused]] uint8_t __pad060c[0x4]; // 0x60c public: int64_t m_nUsecTimestampLastUserCmdReceived; // 0x610 private: [[maybe_unused]] uint8_t __pad0618[0x10]; // 0x618 public: ChatIgnoreType_t m_iIgnoreGlobalChat; // 0x628 float m_flLastPlayerTalkTime; // 0x62c float m_flLastEntitySteadyState; // 0x630 int32_t m_nAvailableEntitySteadyState; // 0x634 bool m_bHasAnySteadyStateEnts; // 0x638 private: [[maybe_unused]] uint8_t __pad0639[0xf]; // 0x639 public: // MNetworkEnable // MNetworkEncoder // MNetworkChangeCallback "OnSteamIDChanged" uint64_t m_steamID; // 0x648 // MNetworkEnable uint32_t m_iDesiredFOV; // 0x650 }; // Alignment: 14 // Size: 0x178 class CBasePlayerVData : public CEntitySubclassVDataBase { public: CResourceNameTyped< CWeakHandle< InfoForResourceTypeCModel > > m_sModelName; // 0x28 CSkillFloat m_flHeadDamageMultiplier; // 0x108 CSkillFloat m_flChestDamageMultiplier; // 0x118 CSkillFloat m_flStomachDamageMultiplier; // 0x128 CSkillFloat m_flArmDamageMultiplier; // 0x138 CSkillFloat m_flLegDamageMultiplier; // 0x148 // MPropertyGroupName "Water" float m_flHoldBreathTime; // 0x158 // MPropertyGroupName "Water" // MPropertyDescription "Seconds between drowning ticks" float m_flDrowningDamageInterval; // 0x15c // MPropertyGroupName "Water" // MPropertyDescription "Amount of damage done on the first drowning tick (+1 each subsequent interval)" int32_t m_nDrowningDamageInitial; // 0x160 // MPropertyGroupName "Water" // MPropertyDescription "Max damage done by a drowning tick" int32_t m_nDrowningDamageMax; // 0x164 // MPropertyGroupName "Water" int32_t m_nWaterSpeed; // 0x168 // MPropertyGroupName "Use" float m_flUseRange; // 0x16c // MPropertyGroupName "Use" float m_flUseAngleTolerance; // 0x170 // MPropertyGroupName "Crouch" // MPropertyDescription "Time to move between crouch and stand" float m_flCrouchTime; // 0x174 }; // Alignment: 14 // Size: 0x178 class CBaseVehicleVData : public CEntitySubclassVDataBase { public: // MPropertyGroupName "Visuals" CResourceNameTyped< CWeakHandle< InfoForResourceTypeCModel > > m_sModelName; // 0x28 // MPropertyGroupName "Visuals" // MPropertyDescription "Identifier for this vehicle in player's animgraph" CUtlString m_sAnimGraphPropEnumValue; // 0x108 // MPropertyDescription "Scales the use range for players near this vehicle, so they can enter from farther away" float m_flUseRangeScale; // 0x110 float m_flMaximumSpeedToEnterExit; // 0x114 bool m_bAllowBlockedExits; // 0x118 bool m_bAllowMidairExits; // 0x119 private: [[maybe_unused]] uint8_t __pad011a[0x6]; // 0x11a public: // MPropertyDescription "Attachment name indicating the start location of the trace we perform to determine where a player can exit" // MPropertyAttributeEditor "VDataModelAttachment( m_sModelName )" CUtlString m_sExitTraceOriginAttachmentName; // 0x120 // MPropertyDescription "What angle from upright does this vehicle need to be to be considered overturned if it has a passenger? Determines when player is kicked out of an overturned vehicle. (0 == never is overturned)" float m_flOverturnedAngleWithPassenger; // 0x128 // MPropertyDescription "What angle from upright does this vehicle need to be to be considered overturned if there are no passengers? Determines what happens when a player tries to enter an overturned vehicle. (0 == never is overturned)" float m_flOverturnedAngleNoPassenger; // 0x12c // MPropertyDescription "Should we automatically enter the vehicle after flipping it upright" bool m_bAutoEnterAfterFlip; // 0x130 private: [[maybe_unused]] uint8_t __pad0131[0x3]; // 0x131 public: // MPropertyDescription "Minimum delay from the time we start flipping the vehicle to the time we auto-enter" float m_flMinTimeAfterFlipToAutoEnter; // 0x134 // MPropertyDescription "Maximum delay from the time we start flipping the vehicle to the time we auto-enter (if we can't enter at this point, we cancel the auto-enter attempt)" float m_flMaxTimeAfterFlipToAutoEnter; // 0x138 private: [[maybe_unused]] uint8_t __pad013c[0x4]; // 0x13c public: CUtlVector< BaseVehicleRole_t > m_vecPassengerRoles; // 0x140 // MPropertyFriendlyName "Fallback Exit Animgraph Parameter" // MPropertyDescription "If none of the actual animations are appropriate, we just teleport -- need to inform the graph." // MPropertyGroupName "Animation" // MPropertyAttributeEditor "VDataAnimGraphParam( m_sModelName )" CAnimGraphSymbolWithStorage m_sAnimgraphParamExitFallback; // 0x158 }; // Alignment: 0 // Size: 0x178 class CVehicleEntityIOVData : public CBaseVehicleVData { public: // no members available }; // Alignment: 16 // Size: 0x3d8 class CWheeledPhysicsVehicleVData : public CBaseVehicleVData { public: // MPropertyGroupName "Visuals" // MPropertyDescription "A particle effect that releases smoke when the wheels are slipping heavily" CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szWheelSmokeEffect; // 0x178 // MPropertyGroupName "Visuals" // MPropertyDescription "Exponential moving average time constant used to smooth increases in the wheel smoke intensity -- i.e. time to reach 63% of target intensity" float m_flWheelSmokeIntensityRiseTimeConstant; // 0x258 // MPropertyGroupName "Visuals" // MPropertyDescription "Exponential moving average time constant used to smooth decreases in the wheel smoke intensity -- i.e. time to reach 63% of target intensity" float m_flWheelSmokeIntensityDecayTimeConstant; // 0x25c // MPropertyGroupName "Airborne" // MPropertyDescription "Subclass we switch to when the vehicle gets airborne" CUtlString m_sAirborneSubclass; // 0x260 // MPropertyGroupName "Airborne" // MPropertyDescription "Time with wheels off the ground before we enter airborne mode" float m_flTimeOffGroundToEnterAirborne; // 0x268 // MPropertyGroupName "Airborne" // MPropertyDescription "Time with wheels on the ground before we leave airborne mode" float m_flTimeOnGroundToExitAirborne; // 0x26c // MPropertyDescription "Angular velocity delta (degrees / sec) to apply when flipping a vehicle that's on its side" float m_flFlipFromSidewaysAngularVelocityDelta; // 0x270 // MPropertyDescription "Vertical (upward) velocity delta to apply when flipping a vehicle that's on its side" float m_flFlipFromSidewaysVerticalVelocityDelta; // 0x274 // MPropertyDescription "Angular velocity delta (degrees / sec) to apply when flipping a vehicle that's upside down" float m_flFlipFromUpsideDownAngularVelocityDelta; // 0x278 // MPropertyDescription "Vertical (upward) velocity delta to apply when flipping a vehicle that's upside down" float m_flFlipFromUpsideDownVerticalVelocityDelta; // 0x27c // MPropertyDescription "Velocity delta to apply in the direction away from the player when flipping a vehicle" float m_flFlipPushVelocityDelta; // 0x280 // MPropertyDescription "Minimum time between attempts to flip the vehicle" float m_flMinTimeBetweenFlipAttempts; // 0x284 // MPropertyDescription "If vehicle is overturned for this amount of time, the player will be ejected" float m_flOverturnedExitWaitTime; // 0x288 private: [[maybe_unused]] uint8_t __pad028c[0x4]; // 0x28c public: WheeledPhysicsVehiclePhysicsData_t m_PhysicsData; // 0x290 WheeledPhysicsVehicleControlsData_t m_ControlsData; // 0x368 WheeledPhysicsVehicleCameraData_t m_CameraData; // 0x3c4 }; // Alignment: 2 // Size: 0x4a8 class CInfoGameEventProxy : public CPointEntity { public: CUtlSymbolLarge m_iszEventName; // 0x498 float m_flRange; // 0x4a0 }; // Alignment: 2 // Size: 0x4a0 class CProjectedDecal : public CPointEntity { public: int32_t m_nTexture; // 0x498 float m_flDistance; // 0x49c }; // Alignment: 2 // Size: 0x5b0 class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance { public: // MNetworkEnable CBaseAnimGraphController m_animationController; // 0x480 // MNetworkDisable // MNetworkChangeAccessorFieldPathIndex CNetworkVarChainer __m_pChainEntity; // 0x588 static EntComponentInfo_t &Get_s_EntComponentInfo(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[0]->m_instance);}; static int32_t &Get_entity_component_error_class_decl_says_contained_but_impl_is_referenced(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBodyComponentBaseAnimGraph")->m_static_fields[1]->m_instance);}; }; // Alignment: 30 // Size: 0x748 class CBaseModelEntity : public CBaseEntity { public: // MNetworkEnable // MNetworkUserGroup "CRenderComponent" // MNetworkAlias "CRenderComponent" // MNetworkTypeAlias "CRenderComponent" CRenderComponent* m_CRenderComponent; // 0x498 // MNetworkEnable // MNetworkUserGroup "CHitboxComponent" // MNetworkAlias "CHitboxComponent" // MNetworkTypeAlias "CHitboxComponent" CHitboxComponent m_CHitboxComponent; // 0x4a0 GameTime_t m_flDissolveStartTime; // 0x4c8 private: [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc public: CEntityIOOutput m_OnIgnite; // 0x4d0 int32_t m_iViewerID; // 0x4f8 private: [[maybe_unused]] uint8_t __pad04fc[0x44]; // 0x4fc public: int32_t m_iTeamVisibilityBitmask; // 0x540 // MNetworkEnable RenderMode_t m_nRenderMode; // 0x544 bool m_bVisibilityDirtyFlag; // 0x545 int16_t m_iFOWTempViewerID[10]; // 0x546 // MNetworkEnable RenderFx_t m_nRenderFX; // 0x55a bool m_bAllowFadeInView; // 0x55b // MNetworkEnable // MNetworkChangeCallback "OnColorChanged" Color m_clrRender; // 0x55c // MNetworkEnable // MNetworkChangeCallback "OnRenderAttributesChanged" CUtlVectorEmbeddedNetworkVar< EntityRenderAttribute_t > m_vecRenderAttributes; // 0x560 // MNetworkEnable // MNetworkChangeCallback "OnLightGroupChanged" CUtlStringToken m_LightGroup; // 0x5b0 // MNetworkEnable bool m_bRenderToCubemaps; // 0x5b4 private: [[maybe_unused]] uint8_t __pad05b5[0x3]; // 0x5b5 public: // MNetworkEnable CCollisionProperty m_Collision; // 0x5b8 // MNetworkEnable CGlowProperty m_Glow; // 0x668 // MNetworkEnable float m_flGlowBackfaceMult; // 0x6c0 // MNetworkEnable float m_fadeMinDist; // 0x6c4 // MNetworkEnable float m_fadeMaxDist; // 0x6c8 // MNetworkEnable float m_flFadeScale; // 0x6cc // MNetworkEnable float m_flShadowStrength; // 0x6d0 // MNetworkEnable uint8_t m_nObjectCulling; // 0x6d4 private: [[maybe_unused]] uint8_t __pad06d5[0x3]; // 0x6d5 public: // MNetworkEnable int32_t m_nAddDecal; // 0x6d8 // MNetworkEnable Vector m_vDecalPosition; // 0x6dc // MNetworkEnable Vector m_vDecalForwardAxis; // 0x6e8 // MNetworkEnable float m_flDecalHealBloodRate; // 0x6f4 // MNetworkEnable float m_flDecalHealHeightRate; // 0x6f8 private: [[maybe_unused]] uint8_t __pad06fc[0x4]; // 0x6fc public: // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_ConfigEntitiesToPropagateMaterialDecalsTo; // 0x700 // MNetworkEnable // MNetworkPriority "32" // MNetworkUserGroup "Player" CNetworkViewOffsetVector m_vecViewOffset; // 0x718 }; // Alignment: 0 // Size: 0x748 class CServerOnlyModelEntity : public CBaseModelEntity { public: // no members available }; // Alignment: 0 // Size: 0x748 class CModelPointEntity : public CBaseModelEntity { public: // no members available }; // Alignment: 7 // Size: 0x4f0 class CLogicRelay : public CLogicalEntity { public: CEntityIOOutput m_OnTrigger; // 0x498 CEntityIOOutput m_OnSpawn; // 0x4c0 bool m_bDisabled; // 0x4e8 bool m_bWaitForRefire; // 0x4e9 bool m_bTriggerOnce; // 0x4ea bool m_bFastRetrigger; // 0x4eb bool m_bPassthoughCaller; // 0x4ec }; // Alignment: 21 // Size: 0xcc0 class CParticleSystem : public CBaseModelEntity { public: // MNetworkEnable char m_szSnapshotFileName[512]; // 0x748 // MNetworkEnable bool m_bActive; // 0x948 // MNetworkEnable bool m_bFrozen; // 0x949 private: [[maybe_unused]] uint8_t __pad094a[0x2]; // 0x94a public: // MNetworkEnable float m_flFreezeTransitionDuration; // 0x94c // MNetworkEnable int32_t m_nStopType; // 0x950 // MNetworkEnable bool m_bAnimateDuringGameplayPause; // 0x954 private: [[maybe_unused]] uint8_t __pad0955[0x3]; // 0x955 public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x958 // MNetworkEnable GameTime_t m_flStartTime; // 0x960 // MNetworkEnable float m_flPreSimTime; // 0x964 // MNetworkEnable Vector m_vServerControlPoints[4]; // 0x968 // MNetworkEnable uint8_t m_iServerControlPointAssignments[4]; // 0x998 // MNetworkEnable CHandle< CBaseEntity > m_hControlPointEnts[64]; // 0x99c // MNetworkEnable bool m_bNoSave; // 0xa9c // MNetworkEnable bool m_bNoFreeze; // 0xa9d bool m_bStartActive; // 0xa9e private: [[maybe_unused]] uint8_t __pad0a9f[0x1]; // 0xa9f public: CUtlSymbolLarge m_iszEffectName; // 0xaa0 CUtlSymbolLarge m_iszControlPointNames[64]; // 0xaa8 int32_t m_nDataCP; // 0xca8 Vector m_vecDataCPValue; // 0xcac int32_t m_nTintCP; // 0xcb8 Color m_clrTint; // 0xcbc }; // Alignment: 16 // Size: 0x578 class CPathParticleRope : public CBaseEntity { public: bool m_bStartActive; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: float m_flMaxSimulationTime; // 0x49c CUtlSymbolLarge m_iszEffectName; // 0x4a0 CUtlVector< CUtlSymbolLarge > m_PathNodes_Name; // 0x4a8 // MNetworkEnable float m_flParticleSpacing; // 0x4c0 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" float m_flSlack; // 0x4c4 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" float m_flRadius; // 0x4c8 // MNetworkEnable // MNetworkChangeCallback "parametersChanged" Color m_ColorTint; // 0x4cc // MNetworkEnable // MNetworkChangeCallback "effectStateChanged" int32_t m_nEffectState; // 0x4d0 private: [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_iEffectIndex; // 0x4d8 // MNetworkEnable CNetworkUtlVectorBase< Vector > m_PathNodes_Position; // 0x4e0 // MNetworkEnable CNetworkUtlVectorBase< Vector > m_PathNodes_TangentIn; // 0x4f8 // MNetworkEnable CNetworkUtlVectorBase< Vector > m_PathNodes_TangentOut; // 0x510 // MNetworkEnable CNetworkUtlVectorBase< Vector > m_PathNodes_Color; // 0x528 // MNetworkEnable // MNetworkChangeCallback "pinStateChanged" CNetworkUtlVectorBase< bool > m_PathNodes_PinEnabled; // 0x540 // MNetworkEnable CNetworkUtlVectorBase< float32 > m_PathNodes_RadiusScale; // 0x558 }; // Alignment: 1 // Size: 0x750 class CFuncWall : public CBaseModelEntity { public: int32_t m_nState; // 0x748 }; // Alignment: 0 // Size: 0x750 class CFuncWallToggle : public CFuncWall { public: // no members available }; // Alignment: 0 // Size: 0x748 class CFuncVehicleClip : public CBaseModelEntity { public: // no members available }; // Alignment: 0 // Size: 0x748 class CFuncIllusionary : public CBaseModelEntity { public: // no members available }; // Alignment: 1 // Size: 0x750 class CFuncVPhysicsClip : public CBaseModelEntity { public: bool m_bDisabled; // 0x748 }; // Alignment: 3 // Size: 0x760 class CFuncInteractionLayerClip : public CBaseModelEntity { public: bool m_bDisabled; // 0x748 private: [[maybe_unused]] uint8_t __pad0749[0x7]; // 0x749 public: CUtlSymbolLarge m_iszInteractsAs; // 0x750 CUtlSymbolLarge m_iszInteractsWith; // 0x758 }; // Alignment: 3 // Size: 0x510 class CCommentaryAuto : public CBaseEntity { public: CEntityIOOutput m_OnCommentaryNewGame; // 0x498 CEntityIOOutput m_OnCommentaryMidGame; // 0x4c0 CEntityIOOutput m_OnCommentaryMultiplayerSpawn; // 0x4e8 }; // Alignment: 9 // Size: 0x760 class CDynamicLight : public CBaseModelEntity { public: uint8_t m_ActualFlags; // 0x748 // MNetworkEnable uint8_t m_Flags; // 0x749 // MNetworkEnable uint8_t m_LightStyle; // 0x74a bool m_On; // 0x74b // MNetworkEnable float m_Radius; // 0x74c // MNetworkEnable int32_t m_Exponent; // 0x750 // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "360" float m_InnerAngle; // 0x754 // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "360" float m_OuterAngle; // 0x758 // MNetworkEnable float m_SpotRadius; // 0x75c }; // Alignment: 1 // Size: 0x5480 class CDebugHistory : public CBaseEntity { public: int32_t m_nNpcEvents; // 0x1f44d8 }; // Alignment: 12 // Size: 0x538 class CEnvEntityMaker : public CPointEntity { public: Vector m_vecEntityMins; // 0x498 Vector m_vecEntityMaxs; // 0x4a4 CHandle< CBaseEntity > m_hCurrentInstance; // 0x4b0 CHandle< CBaseEntity > m_hCurrentBlocker; // 0x4b4 Vector m_vecBlockerOrigin; // 0x4b8 QAngle m_angPostSpawnDirection; // 0x4c4 float m_flPostSpawnDirectionVariance; // 0x4d0 float m_flPostSpawnSpeed; // 0x4d4 bool m_bPostSpawnUseAngles; // 0x4d8 private: [[maybe_unused]] uint8_t __pad04d9[0x7]; // 0x4d9 public: CUtlSymbolLarge m_iszTemplate; // 0x4e0 CEntityIOOutput m_pOutputOnSpawned; // 0x4e8 CEntityIOOutput m_pOutputOnFailedSpawn; // 0x510 }; // Alignment: 0 // Size: 0x498 class CInfoInstructorHintTarget : public CPointEntity { public: // no members available }; // Alignment: 24 // Size: 0x508 class CEnvInstructorHint : public CPointEntity { public: CUtlSymbolLarge m_iszName; // 0x498 CUtlSymbolLarge m_iszReplace_Key; // 0x4a0 CUtlSymbolLarge m_iszHintTargetEntity; // 0x4a8 int32_t m_iTimeout; // 0x4b0 int32_t m_iDisplayLimit; // 0x4b4 CUtlSymbolLarge m_iszIcon_Onscreen; // 0x4b8 CUtlSymbolLarge m_iszIcon_Offscreen; // 0x4c0 CUtlSymbolLarge m_iszCaption; // 0x4c8 CUtlSymbolLarge m_iszActivatorCaption; // 0x4d0 Color m_Color; // 0x4d8 float m_fIconOffset; // 0x4dc float m_fRange; // 0x4e0 uint8_t m_iPulseOption; // 0x4e4 uint8_t m_iAlphaOption; // 0x4e5 uint8_t m_iShakeOption; // 0x4e6 bool m_bStatic; // 0x4e7 bool m_bNoOffscreen; // 0x4e8 bool m_bForceCaption; // 0x4e9 private: [[maybe_unused]] uint8_t __pad04ea[0x2]; // 0x4ea public: int32_t m_iInstanceType; // 0x4ec bool m_bSuppressRest; // 0x4f0 private: [[maybe_unused]] uint8_t __pad04f1[0x7]; // 0x4f1 public: CUtlSymbolLarge m_iszBinding; // 0x4f8 bool m_bAllowNoDrawTarget; // 0x500 bool m_bAutoStart; // 0x501 bool m_bLocalPlayerOnly; // 0x502 }; // Alignment: 9 // Size: 0x4d8 class CEnvInstructorVRHint : public CPointEntity { public: CUtlSymbolLarge m_iszName; // 0x498 CUtlSymbolLarge m_iszHintTargetEntity; // 0x4a0 int32_t m_iTimeout; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_iszCaption; // 0x4b0 CUtlSymbolLarge m_iszStartSound; // 0x4b8 int32_t m_iLayoutFileType; // 0x4c0 private: [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: CUtlSymbolLarge m_iszCustomLayoutFile; // 0x4c8 int32_t m_iAttachType; // 0x4d0 float m_flHeightOffset; // 0x4d4 }; // Alignment: 3 // Size: 0x4b0 class CInstructorEventEntity : public CPointEntity { public: CUtlSymbolLarge m_iszName; // 0x498 CUtlSymbolLarge m_iszHintTargetEntity; // 0x4a0 CHandle< CBasePlayerPawn > m_hTargetPlayer; // 0x4a8 }; // Alignment: 5 // Size: 0x520 class CEnvScreenOverlay : public CPointEntity { public: // MNetworkEnable CUtlSymbolLarge m_iszOverlayNames[10]; // 0x498 // MNetworkEnable // MNetworkBitCount "11" // MNetworkMinValue "-1" // MNetworkMaxValue "63" float m_flOverlayTimes[10]; // 0x4e8 // MNetworkEnable GameTime_t m_flStartTime; // 0x510 // MNetworkEnable int32_t m_iDesiredOverlay; // 0x514 // MNetworkEnable bool m_bIsActive; // 0x518 }; // Alignment: 2 // Size: 0x4a0 class CEnvZoom : public CPointEntity { public: float m_flSpeed; // 0x498 int32_t m_nFOV; // 0x49c }; // Alignment: 4 // Size: 0x4d0 class CEnvFade : public CLogicalEntity { public: // MNetworkEnable Color m_fadeColor; // 0x498 float m_Duration; // 0x49c float m_HoldDuration; // 0x4a0 private: [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 public: CEntityIOOutput m_OnBeginFade; // 0x4a8 }; // Alignment: 3 // Size: 0x4c8 class CCredits : public CPointEntity { public: CEntityIOOutput m_OnCreditsDone; // 0x498 bool m_bRolledOutroCredits; // 0x4c0 private: [[maybe_unused]] uint8_t __pad04c1[0x3]; // 0x4c1 public: float m_flLogoLength; // 0x4c4 }; // Alignment: 10 // Size: 0x4e8 class CEnvShake : public CPointEntity { public: CUtlSymbolLarge m_limitToEntity; // 0x498 float m_Amplitude; // 0x4a0 float m_Frequency; // 0x4a4 float m_Duration; // 0x4a8 float m_Radius; // 0x4ac GameTime_t m_stopTime; // 0x4b0 GameTime_t m_nextShake; // 0x4b4 float m_currentAmp; // 0x4b8 Vector m_maxForce; // 0x4bc private: [[maybe_unused]] uint8_t __pad04c8[0x8]; // 0x4c8 public: CPhysicsShake m_shakeCallback; // 0x4d0 }; // Alignment: 4 // Size: 0x4a8 class CEnvTilt : public CPointEntity { public: float m_Duration; // 0x498 float m_Radius; // 0x49c float m_TiltTime; // 0x4a0 GameTime_t m_stopTime; // 0x4a4 }; // Alignment: 5 // Size: 0x4d0 class CEnvSpark : public CPointEntity { public: float m_flDelay; // 0x498 int32_t m_nMagnitude; // 0x49c int32_t m_nTrailLength; // 0x4a0 int32_t m_nType; // 0x4a4 CEntityIOOutput m_OnSpark; // 0x4a8 }; // Alignment: 0 // Size: 0x748 class CShower : public CModelPointEntity { public: // no members available }; // Alignment: 15 // Size: 0x7a0 class CEnvExplosion : public CModelPointEntity { public: int32_t m_iMagnitude; // 0x748 float m_flPlayerDamage; // 0x74c int32_t m_iRadiusOverride; // 0x750 float m_flInnerRadius; // 0x754 int32_t m_spriteScale; // 0x758 float m_flDamageForce; // 0x75c CHandle< CBaseEntity > m_hInflictor; // 0x760 int32_t m_iCustomDamageType; // 0x764 private: [[maybe_unused]] uint8_t __pad0768[0x8]; // 0x768 public: CUtlSymbolLarge m_iszExplosionType; // 0x770 CUtlSymbolLarge m_iszCustomEffectName; // 0x778 CUtlSymbolLarge m_iszCustomSoundName; // 0x780 Class_T m_iClassIgnore; // 0x788 Class_T m_iClassIgnore2; // 0x78c CUtlSymbolLarge m_iszEntityIgnoreName; // 0x790 CHandle< CBaseEntity > m_hEntityIgnore; // 0x798 }; // Alignment: 1 // Size: 0x4f8 class CFilterName : public CBaseFilter { public: CUtlSymbolLarge m_iFilterName; // 0x4f0 }; // Alignment: 1 // Size: 0x4f8 class CFilterModel : public CBaseFilter { public: CUtlSymbolLarge m_iFilterModel; // 0x4f0 }; // Alignment: 1 // Size: 0x4f8 class CFilterContext : public CBaseFilter { public: CUtlSymbolLarge m_iFilterContext; // 0x4f0 }; // Alignment: 1 // Size: 0x4f8 class FilterTeam : public CBaseFilter { public: int32_t m_iFilterTeam; // 0x4f0 }; // Alignment: 1 // Size: 0x4f8 class CFilterMassGreater : public CBaseFilter { public: float m_fFilterMass; // 0x4f0 }; // Alignment: 1 // Size: 0x4f8 class FilterDamageType : public CBaseFilter { public: int32_t m_iDamageType; // 0x4f0 }; // Alignment: 3 // Size: 0x500 class FilterHealth : public CBaseFilter { public: bool m_bAdrenalineActive; // 0x4f0 private: [[maybe_unused]] uint8_t __pad04f1[0x3]; // 0x4f1 public: int32_t m_iHealthMin; // 0x4f4 int32_t m_iHealthMax; // 0x4f8 }; // Alignment: 5 // Size: 0x510 class CFilterEnemy : public CBaseFilter { public: CUtlSymbolLarge m_iszEnemyName; // 0x4f0 float m_flRadius; // 0x4f8 float m_flOuterRadius; // 0x4fc int32_t m_nMaxSquadmatesPerEnemy; // 0x500 private: [[maybe_unused]] uint8_t __pad0504[0x4]; // 0x504 public: CUtlSymbolLarge m_iszPlayerName; // 0x508 }; // Alignment: 1 // Size: 0x4f8 class CFilterAttributeInt : public CBaseFilter { public: CUtlStringToken m_sAttributeName; // 0x4f0 }; // Alignment: 5 // Size: 0x4b0 class CFuncTimescale : public CBaseEntity { public: float m_flDesiredTimescale; // 0x498 float m_flAcceleration; // 0x49c float m_flMinBlendRate; // 0x4a0 float m_flBlendDeltaMultiplier; // 0x4a4 bool m_isStarted; // 0x4a8 }; // Alignment: 5 // Size: 0x4d0 class CGameWeaponManager : public CBaseEntity { public: CUtlSymbolLarge m_iszWeaponName; // 0x498 private: [[maybe_unused]] uint8_t __pad04a0[0x8]; // 0x4a0 public: int32_t m_iMaxPieces; // 0x4a8 float m_flAmmoMod; // 0x4ac bool m_bExpectingWeapon; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b1[0x7]; // 0x4b1 public: CUtlVector< CHandle< CBaseEntity > > m_ManagedNonWeapons; // 0x4b8 }; // Alignment: 7 // Size: 0x768 class CLightGlow : public CBaseModelEntity { public: // MNetworkEnable uint32_t m_nHorizontalSize; // 0x748 // MNetworkEnable uint32_t m_nVerticalSize; // 0x74c // MNetworkEnable uint32_t m_nMinDist; // 0x750 // MNetworkEnable uint32_t m_nMaxDist; // 0x754 // MNetworkEnable uint32_t m_nOuterMaxDist; // 0x758 // MNetworkEnable // MNetworkBitCount "6" // MNetworkMinValue "0" // MNetworkMaxValue "64" // MNetworkEncodeFlags float m_flGlowProxySize; // 0x75c // MNetworkEnable // MNetworkMinValue "0" // MNetworkMaxValue "100" float m_flHDRColorScale; // 0x760 }; // Alignment: 3 // Size: 0x4d0 class CLogicAchievement : public CLogicalEntity { public: bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x7]; // 0x499 public: CUtlSymbolLarge m_iszAchievementEventID; // 0x4a0 CEntityIOOutput m_OnFired; // 0x4a8 }; // Alignment: 5 // Size: 0x4e8 class CLogicGameEventListener : public CLogicalEntity { public: CEntityIOOutput m_OnEventFired; // 0x4a8 CUtlSymbolLarge m_iszGameEventName; // 0x4d0 CUtlSymbolLarge m_iszGameEventItem; // 0x4d8 // MNetworkEnable bool m_bEnabled; // 0x4e0 bool m_bStartDisabled; // 0x4e1 }; // Alignment: 9 // Size: 0x4c8 class CLogicMeasureMovement : public CLogicalEntity { public: CUtlSymbolLarge m_strMeasureTarget; // 0x498 CUtlSymbolLarge m_strMeasureReference; // 0x4a0 CUtlSymbolLarge m_strTargetReference; // 0x4a8 CHandle< CBaseEntity > m_hMeasureTarget; // 0x4b0 CHandle< CBaseEntity > m_hMeasureReference; // 0x4b4 CHandle< CBaseEntity > m_hTarget; // 0x4b8 CHandle< CBaseEntity > m_hTargetReference; // 0x4bc float m_flScale; // 0x4c0 int32_t m_nMeasureType; // 0x4c4 }; // Alignment: 2 // Size: 0x4a8 class CLogicNavigation : public CLogicalEntity { public: bool m_isOn; // 0x4a0 private: [[maybe_unused]] uint8_t __pad04a1[0x3]; // 0x4a1 public: navproperties_t m_navProperty; // 0x4a4 }; // Alignment: 48 // Size: 0x7d8 class CLogicNPCCounter : public CBaseEntity { public: CEntityIOOutput m_OnMinCountAll; // 0x498 CEntityIOOutput m_OnMaxCountAll; // 0x4c0 CEntityOutputTemplate< float32 > m_OnFactorAll; // 0x4e8 CEntityOutputTemplate< float32 > m_OnMinPlayerDistAll; // 0x510 CEntityIOOutput m_OnMinCount_1; // 0x538 CEntityIOOutput m_OnMaxCount_1; // 0x560 CEntityOutputTemplate< float32 > m_OnFactor_1; // 0x588 CEntityOutputTemplate< float32 > m_OnMinPlayerDist_1; // 0x5b0 CEntityIOOutput m_OnMinCount_2; // 0x5d8 CEntityIOOutput m_OnMaxCount_2; // 0x600 CEntityOutputTemplate< float32 > m_OnFactor_2; // 0x628 CEntityOutputTemplate< float32 > m_OnMinPlayerDist_2; // 0x650 CEntityIOOutput m_OnMinCount_3; // 0x678 CEntityIOOutput m_OnMaxCount_3; // 0x6a0 CEntityOutputTemplate< float32 > m_OnFactor_3; // 0x6c8 CEntityOutputTemplate< float32 > m_OnMinPlayerDist_3; // 0x6f0 CEntityHandle m_hSource; // 0x718 private: [[maybe_unused]] uint8_t __pad071c[0x4]; // 0x71c public: CUtlSymbolLarge m_iszSourceEntityName; // 0x720 float m_flDistanceMax; // 0x728 bool m_bDisabled; // 0x72c private: [[maybe_unused]] uint8_t __pad072d[0x3]; // 0x72d public: int32_t m_nMinCountAll; // 0x730 int32_t m_nMaxCountAll; // 0x734 int32_t m_nMinFactorAll; // 0x738 int32_t m_nMaxFactorAll; // 0x73c private: [[maybe_unused]] uint8_t __pad0740[0x8]; // 0x740 public: CUtlSymbolLarge m_iszNPCClassname_1; // 0x748 int32_t m_nNPCState_1; // 0x750 bool m_bInvertState_1; // 0x754 private: [[maybe_unused]] uint8_t __pad0755[0x3]; // 0x755 public: int32_t m_nMinCount_1; // 0x758 int32_t m_nMaxCount_1; // 0x75c int32_t m_nMinFactor_1; // 0x760 int32_t m_nMaxFactor_1; // 0x764 private: [[maybe_unused]] uint8_t __pad0768[0x4]; // 0x768 public: float m_flDefaultDist_1; // 0x76c CUtlSymbolLarge m_iszNPCClassname_2; // 0x770 int32_t m_nNPCState_2; // 0x778 bool m_bInvertState_2; // 0x77c private: [[maybe_unused]] uint8_t __pad077d[0x3]; // 0x77d public: int32_t m_nMinCount_2; // 0x780 int32_t m_nMaxCount_2; // 0x784 int32_t m_nMinFactor_2; // 0x788 int32_t m_nMaxFactor_2; // 0x78c private: [[maybe_unused]] uint8_t __pad0790[0x4]; // 0x790 public: float m_flDefaultDist_2; // 0x794 CUtlSymbolLarge m_iszNPCClassname_3; // 0x798 int32_t m_nNPCState_3; // 0x7a0 bool m_bInvertState_3; // 0x7a4 private: [[maybe_unused]] uint8_t __pad07a5[0x3]; // 0x7a5 public: int32_t m_nMinCount_3; // 0x7a8 int32_t m_nMaxCount_3; // 0x7ac int32_t m_nMinFactor_3; // 0x7b0 int32_t m_nMaxFactor_3; // 0x7b4 private: [[maybe_unused]] uint8_t __pad07b8[0x4]; // 0x7b8 public: float m_flDefaultDist_3; // 0x7bc }; // Alignment: 4 // Size: 0x808 class CLogicNPCCounterAABB : public CLogicNPCCounter { public: Vector m_vDistanceOuterMins; // 0x7d8 Vector m_vDistanceOuterMaxs; // 0x7e4 Vector m_vOuterMins; // 0x7f0 Vector m_vOuterMaxs; // 0x7fc }; // Alignment: 0 // Size: 0x808 class CLogicNPCCounterOBB : public CLogicNPCCounterAABB { public: // no members available }; // Alignment: 5 // Size: 0x540 class CLogicPlayerProxy : public CLogicalEntity { public: CHandle< CBaseEntity > m_hPlayer; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: CEntityIOOutput m_PlayerHasAmmo; // 0x4a0 CEntityIOOutput m_PlayerHasNoAmmo; // 0x4c8 CEntityIOOutput m_PlayerDied; // 0x4f0 CEntityOutputTemplate< int32 > m_RequestedPlayerHealth; // 0x518 }; // Alignment: 11 // Size: 0x630 class CLogicAuto : public CBaseEntity { public: CEntityIOOutput m_OnMapSpawn; // 0x498 CEntityIOOutput m_OnDemoMapSpawn; // 0x4c0 CEntityIOOutput m_OnNewGame; // 0x4e8 CEntityIOOutput m_OnLoadGame; // 0x510 CEntityIOOutput m_OnMapTransition; // 0x538 CEntityIOOutput m_OnBackgroundMap; // 0x560 CEntityIOOutput m_OnMultiNewMap; // 0x588 CEntityIOOutput m_OnMultiNewRound; // 0x5b0 CEntityIOOutput m_OnVREnabled; // 0x5d8 CEntityIOOutput m_OnVRNotEnabled; // 0x600 CUtlSymbolLarge m_globalstate; // 0x628 }; // Alignment: 0 // Size: 0x498 class CLogicScript : public CPointEntity { public: // no members available }; // Alignment: 13 // Size: 0x538 class CTimerEntity : public CLogicalEntity { public: CEntityIOOutput m_OnTimer; // 0x498 CEntityIOOutput m_OnTimerHigh; // 0x4c0 CEntityIOOutput m_OnTimerLow; // 0x4e8 int32_t m_iDisabled; // 0x510 float m_flInitialDelay; // 0x514 float m_flRefireTime; // 0x518 bool m_bUpDownState; // 0x51c private: [[maybe_unused]] uint8_t __pad051d[0x3]; // 0x51d public: int32_t m_iUseRandomTime; // 0x520 bool m_bPauseAfterFiring; // 0x524 private: [[maybe_unused]] uint8_t __pad0525[0x3]; // 0x525 public: float m_flLowerRandomBound; // 0x528 float m_flUpperRandomBound; // 0x52c float m_flRemainingTime; // 0x530 bool m_bPaused; // 0x534 }; // Alignment: 4 // Size: 0x4d0 class CLogicLineToEntity : public CLogicalEntity { public: CEntityOutputTemplate< Vector > m_Line; // 0x498 CUtlSymbolLarge m_SourceName; // 0x4c0 CHandle< CBaseEntity > m_StartEntity; // 0x4c8 CHandle< CBaseEntity > m_EndEntity; // 0x4cc }; // Alignment: 11 // Size: 0x578 class CMathRemap : public CLogicalEntity { public: float m_flInMin; // 0x498 float m_flInMax; // 0x49c float m_flOut1; // 0x4a0 float m_flOut2; // 0x4a4 float m_flOldInValue; // 0x4a8 bool m_bEnabled; // 0x4ac private: [[maybe_unused]] uint8_t __pad04ad[0x3]; // 0x4ad public: CEntityOutputTemplate< float32 > m_OutValue; // 0x4b0 CEntityIOOutput m_OnRoseAboveMin; // 0x4d8 CEntityIOOutput m_OnRoseAboveMax; // 0x500 CEntityIOOutput m_OnFellBelowMin; // 0x528 CEntityIOOutput m_OnFellBelowMax; // 0x550 }; // Alignment: 5 // Size: 0x4d0 class CMathColorBlend : public CLogicalEntity { public: float m_flInMin; // 0x498 float m_flInMax; // 0x49c Color m_OutColor1; // 0x4a0 Color m_OutColor2; // 0x4a4 CEntityOutputTemplate< Color > m_OutValue; // 0x4a8 }; // Alignment: 5 // Size: 0x4d8 class CEnvGlobal : public CLogicalEntity { public: CEntityOutputTemplate< int32 > m_outCounter; // 0x498 CUtlSymbolLarge m_globalstate; // 0x4c0 int32_t m_triggermode; // 0x4c8 int32_t m_initialstate; // 0x4cc int32_t m_counter; // 0x4d0 }; // Alignment: 5 // Size: 0x5d0 class CMultiSource : public CLogicalEntity { public: CHandle< CBaseEntity > m_rgEntities[32]; // 0x498 int32_t m_rgTriggered[32]; // 0x518 CEntityIOOutput m_OnTrigger; // 0x598 int32_t m_iTotal; // 0x5c0 private: [[maybe_unused]] uint8_t __pad05c4[0x4]; // 0x5c4 public: CUtlSymbolLarge m_globalstate; // 0x5c8 }; // Alignment: 11 // Size: 0x598 class CMathCounter : public CLogicalEntity { public: float m_flMin; // 0x498 float m_flMax; // 0x49c bool m_bHitMin; // 0x4a0 bool m_bHitMax; // 0x4a1 bool m_bDisabled; // 0x4a2 private: [[maybe_unused]] uint8_t __pad04a3[0x5]; // 0x4a3 public: CEntityOutputTemplate< float32 > m_OutValue; // 0x4a8 CEntityOutputTemplate< float32 > m_OnGetValue; // 0x4d0 CEntityIOOutput m_OnHitMin; // 0x4f8 CEntityIOOutput m_OnHitMax; // 0x520 CEntityIOOutput m_OnChangedFromMin; // 0x548 CEntityIOOutput m_OnChangedFromMax; // 0x570 }; // Alignment: 6 // Size: 0xae8 class CLogicCase : public CLogicalEntity { public: CUtlSymbolLarge m_nCase[32]; // 0x498 int32_t m_nShuffleCases; // 0x598 int32_t m_nLastShuffleCase; // 0x59c uint8_t m_uchShuffleCaseMap[32]; // 0x5a0 CEntityIOOutput m_OnCase[32]; // 0x5c0 CEntityOutputTemplate< CVariantBase< CVariantDefaultAllocator > > m_OnDefault; // 0xac0 }; // Alignment: 6 // Size: 0x540 class CLogicCompare : public CLogicalEntity { public: float m_flInValue; // 0x498 float m_flCompareValue; // 0x49c CEntityOutputTemplate< float32 > m_OnLessThan; // 0x4a0 CEntityOutputTemplate< float32 > m_OnEqualTo; // 0x4c8 CEntityOutputTemplate< float32 > m_OnNotEqualTo; // 0x4f0 CEntityOutputTemplate< float32 > m_OnGreaterThan; // 0x518 }; // Alignment: 3 // Size: 0x4a8 class CLogicAutosave : public CLogicalEntity { public: bool m_bForceNewLevelUnit; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: int32_t m_minHitPoints; // 0x49c int32_t m_minHitPointsToCommit; // 0x4a0 }; // Alignment: 4 // Size: 0x4b8 class CLogicActiveAutosave : public CLogicAutosave { public: int32_t m_TriggerHitPoints; // 0x4a8 float m_flTimeToTrigger; // 0x4ac GameTime_t m_flStartTime; // 0x4b0 float m_flDangerousTime; // 0x4b4 }; // Alignment: 6 // Size: 0x4b0 class CLogicDistanceAutosave : public CLogicalEntity { public: CUtlSymbolLarge m_iszTargetEntity; // 0x498 float m_flDistanceToPlayer; // 0x4a0 bool m_bForceNewLevelUnit; // 0x4a4 bool m_bCheckCough; // 0x4a5 bool m_bThinkDangerous; // 0x4a6 private: [[maybe_unused]] uint8_t __pad04a7[0x1]; // 0x4a7 public: float m_flDangerousTime; // 0x4a8 }; // Alignment: 4 // Size: 0x4b0 class CLogicCollisionPair : public CLogicalEntity { public: CUtlSymbolLarge m_nameAttach1; // 0x498 CUtlSymbolLarge m_nameAttach2; // 0x4a0 bool m_disabled; // 0x4a8 bool m_succeeded; // 0x4a9 }; // Alignment: 6 // Size: 0x5b0 class CLogicBranchList : public CLogicalEntity { public: CUtlSymbolLarge m_nLogicBranchNames[16]; // 0x498 CUtlVector< CHandle< CBaseEntity > > m_LogicBranchList; // 0x518 CLogicBranchList::LogicBranchListenerLastState_t m_eLastState; // 0x530 private: [[maybe_unused]] uint8_t __pad0534[0x4]; // 0x534 public: CEntityIOOutput m_OnAllTrue; // 0x538 CEntityIOOutput m_OnAllFalse; // 0x560 CEntityIOOutput m_OnMixed; // 0x588 }; // Alignment: 1 // Size: 0x4a0 class CLogicGameEvent : public CLogicalEntity { public: CUtlSymbolLarge m_iszEventName; // 0x498 }; // Alignment: 5 // Size: 0x4b0 class CMessageEntity : public CPointEntity { public: int32_t m_radius; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: CUtlSymbolLarge m_messageText; // 0x4a0 bool m_drawText; // 0x4a8 bool m_bDeveloperOnly; // 0x4a9 bool m_bEnabled; // 0x4aa }; // Alignment: 5 // Size: 0x7c8 class CTriggerBrush : public CBaseModelEntity { public: CEntityIOOutput m_OnStartTouch; // 0x748 CEntityIOOutput m_OnEndTouch; // 0x770 CEntityIOOutput m_OnUse; // 0x798 int32_t m_iInputFilter; // 0x7c0 int32_t m_iDontMessageParent; // 0x7c4 }; // Alignment: 8 // Size: 0x4f0 class CPathKeyFrame : public CLogicalEntity { public: Vector m_Origin; // 0x498 QAngle m_Angles; // 0x4a4 Quaternion m_qAngle; // 0x4b0 CUtlSymbolLarge m_iNextKey; // 0x4c0 float m_flNextTime; // 0x4c8 private: [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc public: CPathKeyFrame* m_pNextKey; // 0x4d0 CPathKeyFrame* m_pPrevKey; // 0x4d8 float m_flSpeed; // 0x4e0 }; // Alignment: 11 // Size: 0x530 class CBaseMoveBehavior : public CPathKeyFrame { public: int32_t m_iPositionInterpolator; // 0x4f0 int32_t m_iRotationInterpolator; // 0x4f4 float m_flAnimStartTime; // 0x4f8 float m_flAnimEndTime; // 0x4fc float m_flAverageSpeedAcrossFrame; // 0x500 private: [[maybe_unused]] uint8_t __pad0504[0x4]; // 0x504 public: CPathKeyFrame* m_pCurrentKeyFrame; // 0x508 CPathKeyFrame* m_pTargetKeyFrame; // 0x510 CPathKeyFrame* m_pPreKeyFrame; // 0x518 CPathKeyFrame* m_pPostKeyFrame; // 0x520 float m_flTimeIntoFrame; // 0x528 int32_t m_iDirection; // 0x52c }; // Alignment: 4 // Size: 0x4d0 class CPathCorner : public CPointEntity { public: float m_flWait; // 0x498 float m_flRadius; // 0x49c CEntityIOOutput m_OnPass; // 0x4a0 CUtlSymbolLarge m_MoveActivityName; // 0x4c8 }; // Alignment: 6 // Size: 0x4f8 class CPhysForce : public CPointEntity { public: CUtlSymbolLarge m_nameAttach; // 0x4a0 float m_force; // 0x4a8 float m_forceTime; // 0x4ac CHandle< CBaseEntity > m_attachedObject; // 0x4b0 bool m_wasRestored; // 0x4b4 private: [[maybe_unused]] uint8_t __pad04b5[0x3]; // 0x4b5 public: CConstantForceController m_integrator; // 0x4b8 }; // Alignment: 1 // Size: 0x508 class CPhysThruster : public CPhysForce { public: Vector m_localOrigin; // 0x4f8 }; // Alignment: 1 // Size: 0x508 class CPhysTorque : public CPhysForce { public: Vector m_axis; // 0x4f8 }; // Alignment: 7 // Size: 0x4e8 class CPhysMotor : public CLogicalEntity { public: CUtlSymbolLarge m_nameAttach; // 0x498 CHandle< CBaseEntity > m_hAttachedObject; // 0x4a0 float m_spinUp; // 0x4a4 float m_additionalAcceleration; // 0x4a8 float m_angularAcceleration; // 0x4ac GameTime_t m_lastTime; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b4[0x14]; // 0x4b4 public: CMotorController m_motor; // 0x4c8 }; // Alignment: 7 // Size: 0x4d8 class CKeepUpright : public CPointEntity { public: Vector m_worldGoalAxis; // 0x4a0 Vector m_localTestAxis; // 0x4ac private: [[maybe_unused]] uint8_t __pad04b8[0x8]; // 0x4b8 public: CUtlSymbolLarge m_nameAttach; // 0x4c0 CHandle< CBaseEntity > m_attachedObject; // 0x4c8 float m_angularLimit; // 0x4cc bool m_bActive; // 0x4d0 bool m_bDampAllRotation; // 0x4d1 }; // Alignment: 8 // Size: 0x4f0 class CPhysConstraint : public CLogicalEntity { public: CUtlSymbolLarge m_nameAttach1; // 0x4a0 CUtlSymbolLarge m_nameAttach2; // 0x4a8 CUtlSymbolLarge m_breakSound; // 0x4b0 float m_forceLimit; // 0x4b8 float m_torqueLimit; // 0x4bc uint32_t m_teleportTick; // 0x4c0 float m_minTeleportDistance; // 0x4c4 CEntityIOOutput m_OnBreak; // 0x4c8 }; // Alignment: 18 // Size: 0x690 class CPhysHinge : public CPhysConstraint { public: ConstraintSoundInfo m_soundInfo; // 0x4f8 CEntityIOOutput m_NotifyMinLimitReached; // 0x580 CEntityIOOutput m_NotifyMaxLimitReached; // 0x5a8 bool m_bAtMinLimit; // 0x5d0 bool m_bAtMaxLimit; // 0x5d1 private: [[maybe_unused]] uint8_t __pad05d2[0x2]; // 0x5d2 public: constraint_hingeparams_t m_hinge; // 0x5d4 float m_hingeFriction; // 0x614 float m_systemLoadScale; // 0x618 bool m_bIsAxisLocal; // 0x61c private: [[maybe_unused]] uint8_t __pad061d[0x3]; // 0x61d public: float m_flMinRotation; // 0x620 float m_flMaxRotation; // 0x624 float m_flInitialRotation; // 0x628 float m_flMotorFrequency; // 0x62c float m_flMotorDampingRatio; // 0x630 float m_flAngleSpeed; // 0x634 float m_flAngleSpeedThreshold; // 0x638 private: [[maybe_unused]] uint8_t __pad063c[0x4]; // 0x63c public: CEntityIOOutput m_OnStartMoving; // 0x640 CEntityIOOutput m_OnStopMoving; // 0x668 }; // Alignment: 0 // Size: 0x690 class CPhysHingeAlias_phys_hinge_local : public CPhysHinge { public: // no members available }; // Alignment: 6 // Size: 0x508 class CPhysBallSocket : public CPhysConstraint { public: float m_flFriction; // 0x4f0 bool m_bEnableSwingLimit; // 0x4f4 private: [[maybe_unused]] uint8_t __pad04f5[0x3]; // 0x4f5 public: float m_flSwingLimit; // 0x4f8 bool m_bEnableTwistLimit; // 0x4fc private: [[maybe_unused]] uint8_t __pad04fd[0x3]; // 0x4fd public: float m_flMinTwistAngle; // 0x500 float m_flMaxTwistAngle; // 0x504 }; // Alignment: 10 // Size: 0x5a8 class CPhysSlideConstraint : public CPhysConstraint { public: Vector m_axisEnd; // 0x4f8 float m_slideFriction; // 0x504 float m_systemLoadScale; // 0x508 float m_initialOffset; // 0x50c bool m_bEnableLinearConstraint; // 0x510 bool m_bEnableAngularConstraint; // 0x511 private: [[maybe_unused]] uint8_t __pad0512[0x2]; // 0x512 public: float m_flMotorFrequency; // 0x514 float m_flMotorDampingRatio; // 0x518 bool m_bUseEntityPivot; // 0x51c private: [[maybe_unused]] uint8_t __pad051d[0x3]; // 0x51d public: ConstraintSoundInfo m_soundInfo; // 0x520 }; // Alignment: 6 // Size: 0x508 class CPhysFixed : public CPhysConstraint { public: float m_flLinearFrequency; // 0x4f0 float m_flLinearDampingRatio; // 0x4f4 float m_flAngularFrequency; // 0x4f8 float m_flAngularDampingRatio; // 0x4fc bool m_bEnableLinearConstraint; // 0x500 bool m_bEnableAngularConstraint; // 0x501 }; // Alignment: 4 // Size: 0x520 class CPhysPulley : public CPhysConstraint { public: Vector m_position2; // 0x4f0 Vector m_offset[2]; // 0x4fc float m_addLength; // 0x514 float m_gearRatio; // 0x518 }; // Alignment: 6 // Size: 0x528 class CPhysLength : public CPhysConstraint { public: Vector m_offset[2]; // 0x4f0 Vector m_vecAttach; // 0x508 float m_addLength; // 0x514 float m_minLength; // 0x518 float m_totalLength; // 0x51c bool m_bEnableCollision; // 0x520 }; // Alignment: 9 // Size: 0x518 class CRagdollConstraint : public CPhysConstraint { public: float m_xmin; // 0x4f0 float m_xmax; // 0x4f4 float m_ymin; // 0x4f8 float m_ymax; // 0x4fc float m_zmin; // 0x500 float m_zmax; // 0x504 float m_xfriction; // 0x508 float m_yfriction; // 0x50c float m_zfriction; // 0x510 }; // Alignment: 48 // Size: 0x620 class CGenericConstraint : public CPhysConstraint { public: JointMotion_t m_nLinearMotionX; // 0x4f8 JointMotion_t m_nLinearMotionY; // 0x4fc JointMotion_t m_nLinearMotionZ; // 0x500 float m_flLinearFrequencyX; // 0x504 float m_flLinearFrequencyY; // 0x508 float m_flLinearFrequencyZ; // 0x50c float m_flLinearDampingRatioX; // 0x510 float m_flLinearDampingRatioY; // 0x514 float m_flLinearDampingRatioZ; // 0x518 float m_flMaxLinearImpulseX; // 0x51c float m_flMaxLinearImpulseY; // 0x520 float m_flMaxLinearImpulseZ; // 0x524 float m_flBreakAfterTimeX; // 0x528 float m_flBreakAfterTimeY; // 0x52c float m_flBreakAfterTimeZ; // 0x530 GameTime_t m_flBreakAfterTimeStartTimeX; // 0x534 GameTime_t m_flBreakAfterTimeStartTimeY; // 0x538 GameTime_t m_flBreakAfterTimeStartTimeZ; // 0x53c float m_flBreakAfterTimeThresholdX; // 0x540 float m_flBreakAfterTimeThresholdY; // 0x544 float m_flBreakAfterTimeThresholdZ; // 0x548 float m_flNotifyForceX; // 0x54c float m_flNotifyForceY; // 0x550 float m_flNotifyForceZ; // 0x554 float m_flNotifyForceMinTimeX; // 0x558 float m_flNotifyForceMinTimeY; // 0x55c float m_flNotifyForceMinTimeZ; // 0x560 GameTime_t m_flNotifyForceLastTimeX; // 0x564 GameTime_t m_flNotifyForceLastTimeY; // 0x568 GameTime_t m_flNotifyForceLastTimeZ; // 0x56c bool m_bAxisNotifiedX; // 0x570 bool m_bAxisNotifiedY; // 0x571 bool m_bAxisNotifiedZ; // 0x572 private: [[maybe_unused]] uint8_t __pad0573[0x1]; // 0x573 public: JointMotion_t m_nAngularMotionX; // 0x574 JointMotion_t m_nAngularMotionY; // 0x578 JointMotion_t m_nAngularMotionZ; // 0x57c float m_flAngularFrequencyX; // 0x580 float m_flAngularFrequencyY; // 0x584 float m_flAngularFrequencyZ; // 0x588 float m_flAngularDampingRatioX; // 0x58c float m_flAngularDampingRatioY; // 0x590 float m_flAngularDampingRatioZ; // 0x594 float m_flMaxAngularImpulseX; // 0x598 float m_flMaxAngularImpulseY; // 0x59c float m_flMaxAngularImpulseZ; // 0x5a0 private: [[maybe_unused]] uint8_t __pad05a4[0x4]; // 0x5a4 public: CEntityIOOutput m_NotifyForceReachedX; // 0x5a8 CEntityIOOutput m_NotifyForceReachedY; // 0x5d0 CEntityIOOutput m_NotifyForceReachedZ; // 0x5f8 }; // Alignment: 0 // Size: 0x538 class CSplineConstraint : public CPhysConstraint { public: // no members available }; // Alignment: 11 // Size: 0x520 class CPhysWheelConstraint : public CPhysConstraint { public: float m_flSuspensionFrequency; // 0x4f0 float m_flSuspensionDampingRatio; // 0x4f4 float m_flSuspensionHeightOffset; // 0x4f8 bool m_bEnableSuspensionLimit; // 0x4fc private: [[maybe_unused]] uint8_t __pad04fd[0x3]; // 0x4fd public: float m_flMinSuspensionOffset; // 0x500 float m_flMaxSuspensionOffset; // 0x504 bool m_bEnableSteeringLimit; // 0x508 private: [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 public: float m_flMinSteeringAngle; // 0x50c float m_flMaxSteeringAngle; // 0x510 float m_flSteeringAxisFriction; // 0x514 float m_flSpinAxisFriction; // 0x518 }; // Alignment: 4 // Size: 0x4b0 class CPhysicsEntitySolver : public CLogicalEntity { public: CHandle< CBaseEntity > m_hMovingEntity; // 0x4a0 CHandle< CBaseEntity > m_hPhysicsBlocker; // 0x4a4 float m_separationDuration; // 0x4a8 GameTime_t m_cancelTime; // 0x4ac }; // Alignment: 8 // Size: 0x4e0 class CPhysicsSpring : public CBaseEntity { public: float m_flFrequency; // 0x4a0 float m_flDampingRatio; // 0x4a4 float m_flRestLength; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_nameAttachStart; // 0x4b0 CUtlSymbolLarge m_nameAttachEnd; // 0x4b8 Vector m_start; // 0x4c0 Vector m_end; // 0x4cc uint32_t m_teleportTick; // 0x4d8 }; // Alignment: 7 // Size: 0x4c0 class CPointPush : public CPointEntity { public: bool m_bEnabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: float m_flMagnitude; // 0x49c float m_flRadius; // 0x4a0 float m_flInnerRadius; // 0x4a4 float m_flConeOfInfluence; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_iszFilterName; // 0x4b0 CHandle< CBaseFilter > m_hFilter; // 0x4b8 }; // Alignment: 1 // Size: 0x4a0 class CInfoPlayerStart : public CPointEntity { public: bool m_bDisabled; // 0x498 }; // Alignment: 7 // Size: 0x4e8 class CPointEntityFinder : public CBaseEntity { public: CHandle< CBaseEntity > m_hEntity; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: CUtlSymbolLarge m_iFilterName; // 0x4a0 CHandle< CBaseFilter > m_hFilter; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_iRefName; // 0x4b0 CHandle< CBaseEntity > m_hReference; // 0x4b8 EntFinderMethod_t m_FindMethod; // 0x4bc CEntityIOOutput m_OnFoundEntity; // 0x4c0 }; // Alignment: 3 // Size: 0x4a8 class CPointHMDAnchor : public CBaseEntity { public: // MNetworkEnable bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: // MNetworkEnable GameTime_t m_flEnableTime; // 0x49c // MNetworkEnable int32_t m_nPlayerIndex; // 0x4a0 }; // Alignment: 0 // Size: 0x4a8 class CPointHMDAnchorOverride : public CPointHMDAnchor { public: // no members available }; // Alignment: 44 // Size: 0x690 class CPointValueRemapper : public CBaseEntity { public: // MNetworkEnable bool m_bDisabled; // 0x498 // MNetworkEnable bool m_bUpdateOnClient; // 0x499 private: [[maybe_unused]] uint8_t __pad049a[0x2]; // 0x49a public: // MNetworkEnable ValueRemapperInputType_t m_nInputType; // 0x49c CUtlSymbolLarge m_iszRemapLineStartName; // 0x4a0 CUtlSymbolLarge m_iszRemapLineEndName; // 0x4a8 // MNetworkEnable CHandle< CBaseEntity > m_hRemapLineStart; // 0x4b0 // MNetworkEnable CHandle< CBaseEntity > m_hRemapLineEnd; // 0x4b4 // MNetworkEnable float m_flMaximumChangePerSecond; // 0x4b8 // MNetworkEnable float m_flDisengageDistance; // 0x4bc // MNetworkEnable float m_flEngageDistance; // 0x4c0 // MNetworkEnable bool m_bRequiresUseKey; // 0x4c4 private: [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 public: // MNetworkEnable ValueRemapperOutputType_t m_nOutputType; // 0x4c8 private: [[maybe_unused]] uint8_t __pad04cc[0x4]; // 0x4cc public: CUtlSymbolLarge m_iszOutputEntityName; // 0x4d0 CUtlSymbolLarge m_iszOutputEntity2Name; // 0x4d8 CUtlSymbolLarge m_iszOutputEntity3Name; // 0x4e0 CUtlSymbolLarge m_iszOutputEntity4Name; // 0x4e8 // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_hOutputEntities; // 0x4f0 // MNetworkEnable ValueRemapperHapticsType_t m_nHapticsType; // 0x508 // MNetworkEnable ValueRemapperMomentumType_t m_nMomentumType; // 0x50c // MNetworkEnable float m_flMomentumModifier; // 0x510 // MNetworkEnable float m_flSnapValue; // 0x514 float m_flCurrentMomentum; // 0x518 // MNetworkEnable ValueRemapperRatchetType_t m_nRatchetType; // 0x51c float m_flRatchetOffset; // 0x520 // MNetworkEnable float m_flInputOffset; // 0x524 bool m_bEngaged; // 0x528 bool m_bFirstUpdate; // 0x529 private: [[maybe_unused]] uint8_t __pad052a[0x2]; // 0x52a public: float m_flPreviousValue; // 0x52c GameTime_t m_flPreviousUpdateTickTime; // 0x530 Vector m_vecPreviousTestPoint; // 0x534 CHandle< CBasePlayerPawn > m_hUsingPlayer; // 0x540 float m_flCustomOutputValue; // 0x544 CUtlSymbolLarge m_iszSoundEngage; // 0x548 CUtlSymbolLarge m_iszSoundDisengage; // 0x550 CUtlSymbolLarge m_iszSoundReachedValueZero; // 0x558 CUtlSymbolLarge m_iszSoundReachedValueOne; // 0x560 CUtlSymbolLarge m_iszSoundMovingLoop; // 0x568 private: [[maybe_unused]] uint8_t __pad0570[0x8]; // 0x570 public: CEntityOutputTemplate< float32 > m_Position; // 0x578 CEntityOutputTemplate< float32 > m_PositionDelta; // 0x5a0 CEntityIOOutput m_OnReachedValueZero; // 0x5c8 CEntityIOOutput m_OnReachedValueOne; // 0x5f0 CEntityIOOutput m_OnReachedValueCustom; // 0x618 CEntityIOOutput m_OnEngage; // 0x640 CEntityIOOutput m_OnDisengage; // 0x668 }; // Alignment: 11 // Size: 0x9a8 class CPointWorldText : public CModelPointEntity { public: // MNetworkEnable char m_messageText[512]; // 0x748 // MNetworkEnable char m_FontName[64]; // 0x948 // MNetworkEnable bool m_bEnabled; // 0x988 // MNetworkEnable bool m_bFullbright; // 0x989 private: [[maybe_unused]] uint8_t __pad098a[0x2]; // 0x98a public: // MNetworkEnable float m_flWorldUnitsPerPx; // 0x98c // MNetworkEnable float m_flFontSize; // 0x990 // MNetworkEnable float m_flDepthOffset; // 0x994 // MNetworkEnable Color m_Color; // 0x998 // MNetworkEnable PointWorldTextJustifyHorizontal_t m_nJustifyHorizontal; // 0x99c // MNetworkEnable PointWorldTextJustifyVertical_t m_nJustifyVertical; // 0x9a0 // MNetworkEnable PointWorldTextReorientMode_t m_nReorientMode; // 0x9a4 }; // Alignment: 16 // Size: 0x5c0 class CPointAngularVelocitySensor : public CPointEntity { public: CHandle< CBaseEntity > m_hTargetEntity; // 0x498 float m_flThreshold; // 0x49c int32_t m_nLastCompareResult; // 0x4a0 int32_t m_nLastFireResult; // 0x4a4 GameTime_t m_flFireTime; // 0x4a8 float m_flFireInterval; // 0x4ac float m_flLastAngVelocity; // 0x4b0 QAngle m_lastOrientation; // 0x4b4 Vector m_vecAxis; // 0x4c0 bool m_bUseHelper; // 0x4cc private: [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd public: CEntityOutputTemplate< float32 > m_AngularVelocity; // 0x4d0 CEntityIOOutput m_OnLessThan; // 0x4f8 CEntityIOOutput m_OnLessThanOrEqualTo; // 0x520 CEntityIOOutput m_OnGreaterThan; // 0x548 CEntityIOOutput m_OnGreaterThanOrEqualTo; // 0x570 CEntityIOOutput m_OnEqualTo; // 0x598 }; // Alignment: 6 // Size: 0x4e0 class CPointVelocitySensor : public CPointEntity { public: CHandle< CBaseEntity > m_hTargetEntity; // 0x498 Vector m_vecAxis; // 0x49c bool m_bEnabled; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04a9[0x3]; // 0x4a9 public: float m_fPrevVelocity; // 0x4ac float m_flAvgInterval; // 0x4b0 private: [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: CEntityOutputTemplate< float32 > m_Velocity; // 0x4b8 }; // Alignment: 0 // Size: 0x498 class CEnableMotionFixup : public CBaseEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CFuncPropRespawnZone : public CBaseEntity { public: // no members available }; // Alignment: 3 // Size: 0x4a8 class CRagdollManager : public CBaseEntity { public: // MNetworkEnable int8_t m_iCurrentMaxRagdollCount; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: int32_t m_iMaxRagdollCount; // 0x49c bool m_bSaveImportant; // 0x4a0 }; // Alignment: 3 // Size: 0x758 class CRevertSaved : public CModelPointEntity { public: float m_loadTime; // 0x748 float m_Duration; // 0x74c float m_HoldTime; // 0x750 }; // Alignment: 3 // Size: 0x570 class CSceneListManager : public CLogicalEntity { public: CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x498 CUtlSymbolLarge m_iszScenes[16]; // 0x4b0 CHandle< CBaseEntity > m_hScenes[16]; // 0x530 }; // Alignment: 64 // Size: 0x9f8 class CSceneEntity : public CPointEntity { public: CUtlSymbolLarge m_iszSceneFile; // 0x4a0 CUtlSymbolLarge m_iszResumeSceneFile; // 0x4a8 CUtlSymbolLarge m_iszTarget1; // 0x4b0 CUtlSymbolLarge m_iszTarget2; // 0x4b8 CUtlSymbolLarge m_iszTarget3; // 0x4c0 CUtlSymbolLarge m_iszTarget4; // 0x4c8 CUtlSymbolLarge m_iszTarget5; // 0x4d0 CUtlSymbolLarge m_iszTarget6; // 0x4d8 CUtlSymbolLarge m_iszTarget7; // 0x4e0 CUtlSymbolLarge m_iszTarget8; // 0x4e8 CHandle< CBaseEntity > m_hTarget1; // 0x4f0 CHandle< CBaseEntity > m_hTarget2; // 0x4f4 CHandle< CBaseEntity > m_hTarget3; // 0x4f8 CHandle< CBaseEntity > m_hTarget4; // 0x4fc CHandle< CBaseEntity > m_hTarget5; // 0x500 CHandle< CBaseEntity > m_hTarget6; // 0x504 CHandle< CBaseEntity > m_hTarget7; // 0x508 CHandle< CBaseEntity > m_hTarget8; // 0x50c // MNetworkEnable bool m_bIsPlayingBack; // 0x510 // MNetworkEnable bool m_bPaused; // 0x511 // MNetworkEnable bool m_bMultiplayer; // 0x512 // MNetworkEnable bool m_bAutogenerated; // 0x513 // MNetworkEnable float m_flForceClientTime; // 0x514 float m_flCurrentTime; // 0x518 float m_flFrameTime; // 0x51c bool m_bCancelAtNextInterrupt; // 0x520 private: [[maybe_unused]] uint8_t __pad0521[0x3]; // 0x521 public: float m_fPitch; // 0x524 bool m_bAutomated; // 0x528 private: [[maybe_unused]] uint8_t __pad0529[0x3]; // 0x529 public: int32_t m_nAutomatedAction; // 0x52c float m_flAutomationDelay; // 0x530 float m_flAutomationTime; // 0x534 CHandle< CBaseEntity > m_hWaitingForThisResumeScene; // 0x538 bool m_bWaitingForResumeScene; // 0x53c bool m_bPausedViaInput; // 0x53d bool m_bPauseAtNextInterrupt; // 0x53e bool m_bWaitingForActor; // 0x53f bool m_bWaitingForInterrupt; // 0x540 bool m_bInterruptedActorsScenes; // 0x541 bool m_bBreakOnNonIdle; // 0x542 private: [[maybe_unused]] uint8_t __pad0543[0x5]; // 0x543 public: // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseFlex > > m_hActorList; // 0x548 CUtlVector< CHandle< CBaseEntity > > m_hRemoveActorList; // 0x560 private: [[maybe_unused]] uint8_t __pad0578[0x10]; // 0x578 public: int32_t m_nSceneFlushCounter; // 0x588 // MNetworkEnable uint16_t m_nSceneStringIndex; // 0x58c private: [[maybe_unused]] uint8_t __pad058e[0x2]; // 0x58e public: CEntityIOOutput m_OnStart; // 0x590 CEntityIOOutput m_OnCompletion; // 0x5b8 CEntityIOOutput m_OnCanceled; // 0x5e0 CEntityIOOutput m_OnPaused; // 0x608 CEntityIOOutput m_OnResumed; // 0x630 CEntityIOOutput m_OnTrigger[16]; // 0x658 private: [[maybe_unused]] uint8_t __pad08d8[0x90]; // 0x8d8 public: CHandle< CSceneEntity > m_hInterruptScene; // 0x968 int32_t m_nInterruptCount; // 0x96c bool m_bSceneMissing; // 0x970 bool m_bInterrupted; // 0x971 bool m_bCompletedEarly; // 0x972 bool m_bInterruptSceneFinished; // 0x973 bool m_bRestoring; // 0x974 private: [[maybe_unused]] uint8_t __pad0975[0x3]; // 0x975 public: CUtlVector< CHandle< CSceneEntity > > m_hNotifySceneCompletion; // 0x978 CUtlVector< CHandle< CSceneListManager > > m_hListManagers; // 0x990 private: [[maybe_unused]] uint8_t __pad09a8[0x28]; // 0x9a8 public: CUtlSymbolLarge m_iszSoundName; // 0x9d0 CHandle< CBaseFlex > m_hActor; // 0x9d8 CHandle< CBaseEntity > m_hActivator; // 0x9dc CHandle< CBaseEntity > m_hCamera; // 0x9e0 int32_t m_BusyActor; // 0x9e4 SceneOnPlayerDeath_t m_iPlayerDeathBehavior; // 0x9e8 static int32_t &Get_s_nSceneFlushCounter(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CSceneEntity")->m_static_fields[0]->m_instance);}; }; // Alignment: 58 // Size: 0x7b0 class CScriptedSequence : public CBaseEntity { public: CUtlSymbolLarge m_iszEntry; // 0x498 CUtlSymbolLarge m_iszPreIdle; // 0x4a0 CUtlSymbolLarge m_iszPlay; // 0x4a8 CUtlSymbolLarge m_iszPostIdle; // 0x4b0 CUtlSymbolLarge m_iszCustomMove; // 0x4b8 CUtlSymbolLarge m_iszModifierToAddOnPlay; // 0x4c0 CUtlSymbolLarge m_iszNextScript; // 0x4c8 CUtlSymbolLarge m_iszEntity; // 0x4d0 CUtlSymbolLarge m_iszSyncGroup; // 0x4d8 ScriptedMoveTo_t m_nMoveTo; // 0x4e0 bool m_bIsPlayingEntry; // 0x4e4 bool m_bLoopActionSequence; // 0x4e5 bool m_bSynchPostIdles; // 0x4e6 bool m_bIgnoreGravity; // 0x4e7 bool m_bDisableNPCCollisions; // 0x4e8 bool m_bKeepAnimgraphLockedPost; // 0x4e9 bool m_bDontAddModifiers; // 0x4ea private: [[maybe_unused]] uint8_t __pad04eb[0x1]; // 0x4eb public: float m_flRadius; // 0x4ec float m_flRepeat; // 0x4f0 float m_flPlayAnimFadeInTime; // 0x4f4 float m_flMoveInterpTime; // 0x4f8 float m_flAngRate; // 0x4fc int32_t m_iDelay; // 0x500 GameTime_t m_startTime; // 0x504 bool m_bWaitForBeginSequence; // 0x508 private: [[maybe_unused]] uint8_t __pad0509[0x3]; // 0x509 public: int32_t m_saved_effects; // 0x50c int32_t m_savedFlags; // 0x510 int32_t m_savedCollisionGroup; // 0x514 bool m_interruptable; // 0x518 bool m_sequenceStarted; // 0x519 bool m_bPrevAnimatedEveryTick; // 0x51a bool m_bForcedAnimatedEveryTick; // 0x51b bool m_bPositionRelativeToOtherEntity; // 0x51c private: [[maybe_unused]] uint8_t __pad051d[0x3]; // 0x51d public: CHandle< CBaseEntity > m_hTargetEnt; // 0x520 CHandle< CScriptedSequence > m_hNextCine; // 0x524 bool m_bThinking; // 0x528 bool m_bInitiatedSelfDelete; // 0x529 bool m_bIsTeleportingDueToMoveTo; // 0x52a bool m_bAllowCustomInterruptConditions; // 0x52b CHandle< CBaseEntity > m_hLastFoundEntity; // 0x52c CHandle< CBaseAnimGraph > m_hForcedTarget; // 0x530 bool m_bDontCancelOtherSequences; // 0x534 bool m_bForceSynch; // 0x535 bool m_bTargetWasAsleep; // 0x536 bool m_bPreventUpdateYawOnFinish; // 0x537 bool m_bEnsureOnNavmeshOnFinish; // 0x538 private: [[maybe_unused]] uint8_t __pad0539[0x3]; // 0x539 public: ScriptedOnDeath_t m_onDeathBehavior; // 0x53c ScriptedConflictResponse_t m_ConflictResponse; // 0x540 private: [[maybe_unused]] uint8_t __pad0544[0x4]; // 0x544 public: CEntityIOOutput m_OnBeginSequence; // 0x548 CEntityIOOutput m_OnActionStartOrLoop; // 0x570 CEntityIOOutput m_OnEndSequence; // 0x598 CEntityIOOutput m_OnPostIdleEndSequence; // 0x5c0 CEntityIOOutput m_OnCancelSequence; // 0x5e8 CEntityIOOutput m_OnCancelFailedSequence; // 0x610 CEntityIOOutput m_OnScriptEvent[8]; // 0x638 private: [[maybe_unused]] uint8_t __pad0778[0x8]; // 0x778 public: CTransform m_matOtherToMain; // 0x780 CHandle< CBaseEntity > m_hInteractionMainEntity; // 0x7a0 int32_t m_iPlayerDeathBehavior; // 0x7a4 }; // Alignment: 8 // Size: 0x4e0 class CSoundOpvarSetEntity : public CBaseEntity { public: CUtlSymbolLarge m_iszStackName; // 0x4a0 CUtlSymbolLarge m_iszOperatorName; // 0x4a8 CUtlSymbolLarge m_iszOpvarName; // 0x4b0 int32_t m_nOpvarType; // 0x4b8 int32_t m_nOpvarIndex; // 0x4bc float m_flOpvarValue; // 0x4c0 private: [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: CUtlSymbolLarge m_OpvarValueString; // 0x4c8 bool m_bSetOnSpawn; // 0x4d0 }; // Alignment: 6 // Size: 0x4b8 class CAISound : public CPointEntity { public: int32_t m_iSoundType; // 0x498 int32_t m_iSoundContext; // 0x49c int32_t m_iVolume; // 0x4a0 int32_t m_iSoundIndex; // 0x4a4 float m_flDuration; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_iszProxyEntityName; // 0x4b0 }; // Alignment: 1 // Size: 0x4a0 class CSoundStackSave : public CLogicalEntity { public: CUtlSymbolLarge m_iszStackName; // 0x498 }; // Alignment: 12 // Size: 0x540 class CSoundEventEntity : public CBaseEntity { public: bool m_bStartOnSpawn; // 0x498 bool m_bToLocalPlayer; // 0x499 bool m_bStopOnNew; // 0x49a bool m_bSaveRestore; // 0x49b bool m_bSavedIsPlaying; // 0x49c private: [[maybe_unused]] uint8_t __pad049d[0x3]; // 0x49d public: float m_flSavedElapsedTime; // 0x4a0 private: [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 public: CUtlSymbolLarge m_iszSourceEntityName; // 0x4a8 CUtlSymbolLarge m_iszAttachmentName; // 0x4b0 CEntityOutputTemplate< uint64 > m_onGUIDChanged; // 0x4b8 CEntityIOOutput m_onSoundFinished; // 0x4e0 private: [[maybe_unused]] uint8_t __pad0508[0x20]; // 0x508 public: CUtlSymbolLarge m_iszSoundName; // 0x528 private: [[maybe_unused]] uint8_t __pad0530[0x8]; // 0x530 public: CEntityHandle m_hSource; // 0x538 }; // Alignment: 0 // Size: 0x540 class CSoundEventEntityAlias_snd_event_point : public CSoundEventEntity { public: // no members available }; // Alignment: 2 // Size: 0x558 class CSoundEventAABBEntity : public CSoundEventEntity { public: Vector m_vMins; // 0x540 Vector m_vMaxs; // 0x54c }; // Alignment: 6 // Size: 0x580 class CSoundEventPathCornerEntity : public CSoundEventEntity { public: CUtlSymbolLarge m_iszPathCorner; // 0x540 int32_t m_iCountMax; // 0x548 float m_flDistanceMax; // 0x54c float m_flDistMaxSqr; // 0x550 float m_flDotProductMax; // 0x554 bool bPlaying; // 0x558 }; // Alignment: 2 // Size: 0x4b0 class CSoundEventParameter : public CBaseEntity { public: CUtlSymbolLarge m_iszParamName; // 0x4a0 float m_flFloatValue; // 0x4a8 }; // Alignment: 0 // Size: 0x538 class CEnvSoundscapeProxyAlias_snd_soundscape_proxy : public CEnvSoundscapeProxy { public: // no members available }; // Alignment: 0 // Size: 0x530 class CEnvSoundscapeAlias_snd_soundscape : public CEnvSoundscape { public: // no members available }; // Alignment: 0 // Size: 0x530 class CEnvSoundscapeTriggerableAlias_snd_soundscape_triggerable : public CEnvSoundscapeTriggerable { public: // no members available }; // Alignment: 0 // Size: 0x498 class CNullEntity : public CBaseEntity { public: // no members available }; // Alignment: 1 // Size: 0x4a0 class CBaseDMStart : public CPointEntity { public: CUtlSymbolLarge m_Master; // 0x498 }; // Alignment: 0 // Size: 0x498 class CInfoLandmark : public CPointEntity { public: // no members available }; // Alignment: 1 // Size: 0x750 class CPlatTrigger : public CBaseModelEntity { public: CHandle< CFuncPlat > m_pPlatform; // 0x748 }; // Alignment: 0 // Size: 0x748 class CFuncTrainControls : public CBaseModelEntity { public: // no members available }; // Alignment: 2 // Size: 0x758 class CTriggerVolume : public CBaseModelEntity { public: CUtlSymbolLarge m_iFilterName; // 0x748 CHandle< CBaseFilter > m_hFilter; // 0x750 }; // Alignment: 0 // Size: 0x498 class CInfoTeleportDestination : public CPointEntity { public: // no members available }; // Alignment: 1 // Size: 0x4a0 class CAI_ChangeTarget : public CBaseEntity { public: CUtlSymbolLarge m_iszNewTarget; // 0x498 }; // Alignment: 4 // Size: 0x4b8 class CAI_ChangeHintGroup : public CBaseEntity { public: int32_t m_iSearchType; // 0x498 private: [[maybe_unused]] uint8_t __pad049c[0x4]; // 0x49c public: CUtlSymbolLarge m_strSearchName; // 0x4a0 CUtlSymbolLarge m_strNewHintGroup; // 0x4a8 float m_flRadius; // 0x4b0 }; // Alignment: 0 // Size: 0x498 class CLogicProximity : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoSpawnGroupLandmark : public CPointEntity { public: // no members available }; // Alignment: 11 // Size: 0x598 class CInfoSpawnGroupLoadUnload : public CLogicalEntity { public: CEntityIOOutput m_OnSpawnGroupLoadStarted; // 0x498 CEntityIOOutput m_OnSpawnGroupLoadFinished; // 0x4c0 CEntityIOOutput m_OnSpawnGroupUnloadStarted; // 0x4e8 CEntityIOOutput m_OnSpawnGroupUnloadFinished; // 0x510 CUtlSymbolLarge m_iszSpawnGroupName; // 0x538 CUtlSymbolLarge m_iszSpawnGroupFilterName; // 0x540 CUtlSymbolLarge m_iszLandmarkName; // 0x548 CUtlString m_sFixedSpawnGroupName; // 0x550 float m_flTimeoutInterval; // 0x558 bool m_bStreamingStarted; // 0x55c bool m_bUnloadingStarted; // 0x55d }; // Alignment: 0 // Size: 0x598 class CInfoSpawnGroupLoadUnloadAlias_info_spawngroup_load : public CInfoSpawnGroupLoadUnload { public: // no members available }; // Alignment: 0 // Size: 0x598 class CInfoSpawnGroupLoadUnloadAlias_info_spawngroup_unload : public CInfoSpawnGroupLoadUnload { public: // no members available }; // Alignment: 1 // Size: 0x758 class CFuncNavObstruction : public CBaseModelEntity { public: bool m_bDisabled; // 0x750 }; // Alignment: 10 // Size: 0x530 class CAmbientGeneric : public CPointEntity { public: float m_radius; // 0x498 float m_flMaxRadius; // 0x49c soundlevel_t m_iSoundLevel; // 0x4a0 dynpitchvol_t m_dpv; // 0x4a4 bool m_fActive; // 0x508 bool m_fLooping; // 0x509 private: [[maybe_unused]] uint8_t __pad050a[0x6]; // 0x50a public: CUtlSymbolLarge m_iszSound; // 0x510 CUtlSymbolLarge m_sSourceEntName; // 0x518 CHandle< CBaseEntity > m_hSoundSource; // 0x520 CEntityIndex m_nSoundSourceEntIndex; // 0x524 }; // Alignment: 2 // Size: 0x10 struct RelationshipOverride_t : public Relationship_t { public: CHandle< CBaseEntity > entity; // 0x8 Class_T classType; // 0xc }; // Alignment: 16 // Size: 0x7c8 class CBaseToggle : public CBaseModelEntity { public: TOGGLE_STATE m_toggle_state; // 0x748 float m_flMoveDistance; // 0x74c float m_flWait; // 0x750 float m_flLip; // 0x754 bool m_bAlwaysFireBlockedOutputs; // 0x758 private: [[maybe_unused]] uint8_t __pad0759[0x3]; // 0x759 public: Vector m_vecPosition1; // 0x75c Vector m_vecPosition2; // 0x768 QAngle m_vecMoveAng; // 0x774 QAngle m_vecAngle1; // 0x780 QAngle m_vecAngle2; // 0x78c float m_flHeight; // 0x798 CHandle< CBaseEntity > m_hActivator; // 0x79c Vector m_vecFinalDest; // 0x7a0 QAngle m_vecFinalAngle; // 0x7ac int32_t m_movementType; // 0x7b8 private: [[maybe_unused]] uint8_t __pad07bc[0x4]; // 0x7bc public: CUtlSymbolLarge m_sMaster; // 0x7c0 }; // Alignment: 4 // Size: 0x4b0 class CRagdollMagnet : public CPointEntity { public: bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: float m_radius; // 0x49c float m_force; // 0x4a0 Vector m_axis; // 0x4a4 }; // Alignment: 0 // Size: 0x748 class CEntityBlocker : public CBaseModelEntity { public: // no members available }; // Alignment: 10 // Size: 0x778 class CEntityDissolve : public CBaseModelEntity { public: // MNetworkEnable float m_flFadeInStart; // 0x748 // MNetworkEnable float m_flFadeInLength; // 0x74c // MNetworkEnable float m_flFadeOutModelStart; // 0x750 // MNetworkEnable float m_flFadeOutModelLength; // 0x754 // MNetworkEnable float m_flFadeOutStart; // 0x758 // MNetworkEnable float m_flFadeOutLength; // 0x75c // MNetworkEnable GameTime_t m_flStartTime; // 0x760 // MNetworkEnable EntityDisolveType_t m_nDissolveType; // 0x764 // MNetworkEnable Vector m_vDissolverOrigin; // 0x768 // MNetworkEnable uint32_t m_nMagnitude; // 0x774 }; // Alignment: 30 // Size: 0x9b0 class CEnvProjectedTexture : public CModelPointEntity { public: // MNetworkEnable CHandle< CBaseEntity > m_hTargetEntity; // 0x748 // MNetworkEnable bool m_bState; // 0x74c // MNetworkEnable bool m_bAlwaysUpdate; // 0x74d private: [[maybe_unused]] uint8_t __pad074e[0x2]; // 0x74e public: // MNetworkEnable float m_flLightFOV; // 0x750 // MNetworkEnable bool m_bEnableShadows; // 0x754 // MNetworkEnable bool m_bSimpleProjection; // 0x755 // MNetworkEnable bool m_bLightOnlyTarget; // 0x756 // MNetworkEnable bool m_bLightWorld; // 0x757 // MNetworkEnable bool m_bCameraSpace; // 0x758 private: [[maybe_unused]] uint8_t __pad0759[0x3]; // 0x759 public: // MNetworkEnable float m_flBrightnessScale; // 0x75c // MNetworkEnable Color m_LightColor; // 0x760 // MNetworkEnable float m_flIntensity; // 0x764 // MNetworkEnable float m_flLinearAttenuation; // 0x768 // MNetworkEnable float m_flQuadraticAttenuation; // 0x76c // MNetworkEnable bool m_bVolumetric; // 0x770 private: [[maybe_unused]] uint8_t __pad0771[0x3]; // 0x771 public: // MNetworkEnable float m_flNoiseStrength; // 0x774 // MNetworkEnable float m_flFlashlightTime; // 0x778 // MNetworkEnable uint32_t m_nNumPlanes; // 0x77c // MNetworkEnable float m_flPlaneOffset; // 0x780 // MNetworkEnable float m_flVolumetricIntensity; // 0x784 // MNetworkEnable float m_flColorTransitionTime; // 0x788 // MNetworkEnable float m_flAmbient; // 0x78c // MNetworkEnable char m_SpotlightTextureName[512]; // 0x790 // MNetworkEnable int32_t m_nSpotlightTextureFrame; // 0x990 // MNetworkEnable uint32_t m_nShadowQuality; // 0x994 // MNetworkEnable // MNetworkBitCount "16" // MNetworkMinValue "0" // MNetworkMaxValue "500" // MNetworkEncodeFlags float m_flNearZ; // 0x998 // MNetworkEnable // MNetworkBitCount "18" // MNetworkMinValue "0" // MNetworkMaxValue "1500" // MNetworkEncodeFlags float m_flFarZ; // 0x99c // MNetworkEnable float m_flProjectionSize; // 0x9a0 // MNetworkEnable float m_flRotation; // 0x9a4 // MNetworkEnable bool m_bFlipHorizontal; // 0x9a8 }; // Alignment: 9 // Size: 0x768 class CEnvDecal : public CBaseModelEntity { public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_hDecalMaterial; // 0x748 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" float m_flWidth; // 0x750 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" float m_flHeight; // 0x754 // MNetworkEnable // MNetworkChangeCallback "OnDecalDimensionsChanged" float m_flDepth; // 0x758 // MNetworkEnable uint32_t m_nRenderOrder; // 0x75c // MNetworkEnable bool m_bProjectOnWorld; // 0x760 // MNetworkEnable bool m_bProjectOnCharacters; // 0x761 // MNetworkEnable bool m_bProjectOnWater; // 0x762 private: [[maybe_unused]] uint8_t __pad0763[0x1]; // 0x763 public: // MNetworkEnable float m_flDepthSortBias; // 0x764 }; // Alignment: 6 // Size: 0x4e0 class CMessage : public CPointEntity { public: CUtlSymbolLarge m_iszMessage; // 0x498 float m_MessageVolume; // 0x4a0 int32_t m_MessageAttenuation; // 0x4a4 float m_Radius; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04ac[0x4]; // 0x4ac public: CUtlSymbolLarge m_sNoise; // 0x4b0 CEntityIOOutput m_OnShowMessage; // 0x4b8 }; // Alignment: 17 // Size: 0x658 class CEnvMicrophone : public CPointEntity { public: bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: CHandle< CBaseEntity > m_hMeasureTarget; // 0x49c int32_t m_nSoundMask; // 0x4a0 float m_flSensitivity; // 0x4a4 float m_flSmoothFactor; // 0x4a8 float m_flMaxRange; // 0x4ac CUtlSymbolLarge m_iszSpeakerName; // 0x4b0 CHandle< CBaseEntity > m_hSpeaker; // 0x4b8 bool m_bAvoidFeedback; // 0x4bc private: [[maybe_unused]] uint8_t __pad04bd[0x3]; // 0x4bd public: int32_t m_iSpeakerDSPPreset; // 0x4c0 private: [[maybe_unused]] uint8_t __pad04c4[0x4]; // 0x4c4 public: CUtlSymbolLarge m_iszListenFilter; // 0x4c8 CHandle< CBaseFilter > m_hListenFilter; // 0x4d0 private: [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 public: CEntityOutputTemplate< float32 > m_SoundLevel; // 0x4d8 CEntityIOOutput m_OnRoutedSound; // 0x500 CEntityIOOutput m_OnHeardSound; // 0x528 char m_szLastSound[256]; // 0x550 int32_t m_iLastRoutedFrame; // 0x650 }; // Alignment: 21 // Size: 0x808 class CBreakable : public CBaseModelEntity { public: Materials m_Material; // 0x758 CHandle< CBaseEntity > m_hBreaker; // 0x75c Explosions m_Explosion; // 0x760 private: [[maybe_unused]] uint8_t __pad0764[0x4]; // 0x764 public: CUtlSymbolLarge m_iszSpawnObject; // 0x768 float m_flPressureDelay; // 0x770 int32_t m_iMinHealthDmg; // 0x774 CUtlSymbolLarge m_iszPropData; // 0x778 float m_impactEnergyScale; // 0x780 EOverrideBlockLOS_t m_nOverrideBlockLOS; // 0x784 CEntityIOOutput m_OnBreak; // 0x788 CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x7b0 float m_flDmgModBullet; // 0x7d8 float m_flDmgModClub; // 0x7dc float m_flDmgModExplosive; // 0x7e0 float m_flDmgModFire; // 0x7e4 CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x7e8 CUtlSymbolLarge m_iszBasePropData; // 0x7f0 int32_t m_iInteractions; // 0x7f8 PerformanceMode_t m_PerformanceMode; // 0x7fc CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x800 GameTime_t m_flLastPhysicsInfluenceTime; // 0x804 }; // Alignment: 12 // Size: 0x878 class CFuncMoveLinear : public CBaseToggle { public: MoveLinearAuthoredPos_t m_authoredPosition; // 0x7c8 QAngle m_angMoveEntitySpace; // 0x7cc Vector m_vecMoveDirParentSpace; // 0x7d8 private: [[maybe_unused]] uint8_t __pad07e4[0x4]; // 0x7e4 public: CUtlSymbolLarge m_soundStart; // 0x7e8 CUtlSymbolLarge m_soundStop; // 0x7f0 CUtlSymbolLarge m_currentSound; // 0x7f8 float m_flBlockDamage; // 0x800 float m_flStartPosition; // 0x804 float m_flMoveDistance; // 0x808 private: [[maybe_unused]] uint8_t __pad080c[0xc]; // 0x80c public: CEntityIOOutput m_OnFullyOpen; // 0x818 CEntityIOOutput m_OnFullyClosed; // 0x840 bool m_bCreateNavObstacle; // 0x868 }; // Alignment: 14 // Size: 0x7b0 class CFuncRotating : public CBaseModelEntity { public: QAngle m_vecMoveAng; // 0x748 float m_flFanFriction; // 0x754 float m_flAttenuation; // 0x758 float m_flVolume; // 0x75c float m_flTargetSpeed; // 0x760 float m_flMaxSpeed; // 0x764 float m_flBlockDamage; // 0x768 float m_flTimeScale; // 0x76c CUtlSymbolLarge m_NoiseRunning; // 0x770 bool m_bReversed; // 0x778 private: [[maybe_unused]] uint8_t __pad0779[0xb]; // 0x779 public: QAngle m_angStart; // 0x784 bool m_bStopAtStartPos; // 0x790 private: [[maybe_unused]] uint8_t __pad0791[0x3]; // 0x791 public: Vector m_vecClientOrigin; // 0x794 QAngle m_vecClientAngles; // 0x7a0 }; // Alignment: 1 // Size: 0x750 class CItemGenericTriggerHelper : public CBaseModelEntity { public: CHandle< CItemGeneric > m_hParentItem; // 0x748 }; // Alignment: 1 // Size: 0x750 class CMarkupVolume : public CBaseModelEntity { public: bool m_bEnabled; // 0x748 }; // Alignment: 5 // Size: 0x788 class CMarkupVolumeTagged : public CMarkupVolume { public: bool m_bIsGroup; // 0x780 bool m_bGroupByPrefab; // 0x781 bool m_bGroupByVolume; // 0x782 bool m_bGroupOtherGroups; // 0x783 bool m_bIsInGroup; // 0x784 }; // Alignment: 3 // Size: 0x7a0 class CMarkupVolumeWithRef : public CMarkupVolumeTagged { public: bool m_bUseRef; // 0x788 private: [[maybe_unused]] uint8_t __pad0789[0x3]; // 0x789 public: Vector m_vRefPos; // 0x78c float m_flRefDot; // 0x798 }; // Alignment: 6 // Size: 0x768 class CFuncBrush : public CBaseModelEntity { public: BrushSolidities_e m_iSolidity; // 0x748 int32_t m_iDisabled; // 0x74c bool m_bSolidBsp; // 0x750 private: [[maybe_unused]] uint8_t __pad0751[0x7]; // 0x751 public: CUtlSymbolLarge m_iszExcludedClass; // 0x758 bool m_bInvertExclusion; // 0x760 bool m_bScriptedMovement; // 0x761 }; // Alignment: 15 // Size: 0x918 class CPhysBox : public CBreakable { public: int32_t m_damageType; // 0x808 float m_massScale; // 0x80c int32_t m_damageToEnableMotion; // 0x810 float m_flForceToEnableMotion; // 0x814 QAngle m_angPreferredCarryAngles; // 0x818 bool m_bNotSolidToWorld; // 0x824 bool m_bEnableUseOutput; // 0x825 private: [[maybe_unused]] uint8_t __pad0826[0x2]; // 0x826 public: int32_t m_iExploitableByPlayer; // 0x828 float m_flTouchOutputPerEntityDelay; // 0x82c CEntityIOOutput m_OnDamaged; // 0x830 CEntityIOOutput m_OnAwakened; // 0x858 CEntityIOOutput m_OnMotionEnabled; // 0x880 CEntityIOOutput m_OnPlayerUse; // 0x8a8 CEntityIOOutput m_OnStartTouch; // 0x8d0 CHandle< CBasePlayerPawn > m_hCarryingPlayer; // 0x8f8 }; // Alignment: 9 // Size: 0x4e8 class CPhysExplosion : public CPointEntity { public: bool m_bExplodeOnSpawn; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: float m_flMagnitude; // 0x49c float m_flDamage; // 0x4a0 float m_radius; // 0x4a4 CUtlSymbolLarge m_targetEntityName; // 0x4a8 float m_flInnerRadius; // 0x4b0 float m_flPushScale; // 0x4b4 bool m_bConvertToDebrisWhenPossible; // 0x4b8 private: [[maybe_unused]] uint8_t __pad04b9[0x7]; // 0x4b9 public: CEntityIOOutput m_OnPushedPlayer; // 0x4c0 }; // Alignment: 3 // Size: 0x4a8 class CPhysImpact : public CPointEntity { public: float m_damage; // 0x498 float m_distance; // 0x49c CUtlSymbolLarge m_directionEntityName; // 0x4a0 }; // Alignment: 21 // Size: 0x7a0 class CRopeKeyframe : public CBaseModelEntity { public: // MNetworkEnable uint16_t m_RopeFlags; // 0x750 private: [[maybe_unused]] uint8_t __pad0752[0x6]; // 0x752 public: CUtlSymbolLarge m_iNextLinkName; // 0x758 // MNetworkEnable int16_t m_Slack; // 0x760 private: [[maybe_unused]] uint8_t __pad0762[0x2]; // 0x762 public: // MNetworkEnable float m_Width; // 0x764 // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0.1" // MNetworkMaxValue "10" float m_TextureScale; // 0x768 // MNetworkEnable uint8_t m_nSegments; // 0x76c // MNetworkEnable bool m_bConstrainBetweenEndpoints; // 0x76d private: [[maybe_unused]] uint8_t __pad076e[0x2]; // 0x76e public: CUtlSymbolLarge m_strRopeMaterialModel; // 0x770 // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_iRopeMaterialModelIndex; // 0x778 // MNetworkEnable uint8_t m_Subdiv; // 0x780 // MNetworkEnable uint8_t m_nChangeCount; // 0x781 // MNetworkEnable int16_t m_RopeLength; // 0x782 // MNetworkEnable uint8_t m_fLockedPoints; // 0x784 bool m_bCreatedFromMapFile; // 0x785 private: [[maybe_unused]] uint8_t __pad0786[0x2]; // 0x786 public: // MNetworkEnable float m_flScrollSpeed; // 0x788 bool m_bStartPointValid; // 0x78c bool m_bEndPointValid; // 0x78d private: [[maybe_unused]] uint8_t __pad078e[0x2]; // 0x78e public: // MNetworkEnable CHandle< CBaseEntity > m_hStartPoint; // 0x790 // MNetworkEnable CHandle< CBaseEntity > m_hEndPoint; // 0x794 // MNetworkEnable AttachmentHandle_t m_iStartAttachment; // 0x798 // MNetworkEnable AttachmentHandle_t m_iEndAttachment; // 0x799 }; // Alignment: 4 // Size: 0x1ea8 class CSoundEnt : public CPointEntity { public: int32_t m_iFreeSound; // 0x498 int32_t m_iActiveSound; // 0x49c int32_t m_cLastActiveSounds; // 0x4a0 CSound m_SoundPool[128]; // 0x4a4 }; // Alignment: 4 // Size: 0x768 class CSpotlightEnd : public CBaseModelEntity { public: // MNetworkEnable float m_flLightScale; // 0x748 // MNetworkEnable float m_Radius; // 0x74c Vector m_vSpotlightDir; // 0x750 Vector m_vSpotlightOrg; // 0x75c }; // Alignment: 36 // Size: 0x880 class CFuncTrackTrain : public CBaseModelEntity { public: CHandle< CPathTrack > m_ppath; // 0x748 float m_length; // 0x74c Vector m_controlMins; // 0x750 Vector m_controlMaxs; // 0x75c Vector m_lastBlockPos; // 0x768 int32_t m_lastBlockTick; // 0x774 float m_flVolume; // 0x778 float m_flBank; // 0x77c float m_oldSpeed; // 0x780 float m_flBlockDamage; // 0x784 float m_height; // 0x788 float m_maxSpeed; // 0x78c float m_dir; // 0x790 private: [[maybe_unused]] uint8_t __pad0794[0x4]; // 0x794 public: CUtlSymbolLarge m_iszSoundMove; // 0x798 CUtlSymbolLarge m_iszSoundMovePing; // 0x7a0 CUtlSymbolLarge m_iszSoundStart; // 0x7a8 CUtlSymbolLarge m_iszSoundStop; // 0x7b0 CUtlSymbolLarge m_strPathTarget; // 0x7b8 float m_flMoveSoundMinDuration; // 0x7c0 float m_flMoveSoundMaxDuration; // 0x7c4 GameTime_t m_flNextMoveSoundTime; // 0x7c8 float m_flMoveSoundMinPitch; // 0x7cc float m_flMoveSoundMaxPitch; // 0x7d0 TrainOrientationType_t m_eOrientationType; // 0x7d4 TrainVelocityType_t m_eVelocityType; // 0x7d8 private: [[maybe_unused]] uint8_t __pad07dc[0xc]; // 0x7dc public: CEntityIOOutput m_OnStart; // 0x7e8 CEntityIOOutput m_OnNext; // 0x810 CEntityIOOutput m_OnArrivedAtDestinationNode; // 0x838 bool m_bManualSpeedChanges; // 0x860 private: [[maybe_unused]] uint8_t __pad0861[0x3]; // 0x861 public: float m_flDesiredSpeed; // 0x864 GameTime_t m_flSpeedChangeTime; // 0x868 float m_flAccelSpeed; // 0x86c float m_flDecelSpeed; // 0x870 bool m_bAccelToSpeed; // 0x874 private: [[maybe_unused]] uint8_t __pad0875[0x3]; // 0x875 public: float m_flTimeScale; // 0x878 GameTime_t m_flNextMPSoundTime; // 0x87c }; // Alignment: 11 // Size: 0x8f0 class CBaseTrigger : public CBaseToggle { public: // MNetworkEnable bool m_bDisabled; // 0x7c8 private: [[maybe_unused]] uint8_t __pad07c9[0x7]; // 0x7c9 public: CUtlSymbolLarge m_iFilterName; // 0x7d0 CHandle< CBaseFilter > m_hFilter; // 0x7d8 private: [[maybe_unused]] uint8_t __pad07dc[0x4]; // 0x7dc public: CEntityIOOutput m_OnStartTouch; // 0x7e0 CEntityIOOutput m_OnStartTouchAll; // 0x808 CEntityIOOutput m_OnEndTouch; // 0x830 CEntityIOOutput m_OnEndTouchAll; // 0x858 CEntityIOOutput m_OnTouching; // 0x880 CEntityIOOutput m_OnNotTouching; // 0x8a8 CUtlVector< CHandle< CBaseEntity > > m_hTouchingEntities; // 0x8d0 // MNetworkEnable bool m_bClientSidePredicted; // 0x8e8 }; // Alignment: 1 // Size: 0x918 class CTriggerMultiple : public CBaseTrigger { public: CEntityIOOutput m_OnTrigger; // 0x8f0 }; // Alignment: 15 // Size: 0xc58 class CTriggerSndSosOpvar : public CBaseTrigger { public: CUtlVector< CHandle< CBaseEntity > > m_hTouchingPlayers; // 0x8f0 Vector m_flPosition; // 0x908 float m_flCenterSize; // 0x914 float m_flMinVal; // 0x918 float m_flMaxVal; // 0x91c float m_flWait; // 0x920 private: [[maybe_unused]] uint8_t __pad0924[0x4]; // 0x924 public: CUtlSymbolLarge m_opvarName; // 0x928 CUtlSymbolLarge m_stackName; // 0x930 CUtlSymbolLarge m_operatorName; // 0x938 bool m_bVolIs2D; // 0x940 char m_opvarNameChar[256]; // 0x941 char m_stackNameChar[256]; // 0xa41 char m_operatorNameChar[256]; // 0xb41 private: [[maybe_unused]] uint8_t __pad0c41[0x3]; // 0xc41 public: Vector m_VecNormPos; // 0xc44 float m_flNormCenterSize; // 0xc50 }; // Alignment: 14 // Size: 0x990 class CTriggerHurt : public CBaseTrigger { public: float m_flOriginalDamage; // 0x8f0 float m_flDamage; // 0x8f4 float m_flDamageCap; // 0x8f8 GameTime_t m_flLastDmgTime; // 0x8fc float m_flForgivenessDelay; // 0x900 int32_t m_bitsDamageInflict; // 0x904 int32_t m_damageModel; // 0x908 bool m_bNoDmgForce; // 0x90c private: [[maybe_unused]] uint8_t __pad090d[0x3]; // 0x90d public: Vector m_vDamageForce; // 0x910 bool m_thinkAlways; // 0x91c private: [[maybe_unused]] uint8_t __pad091d[0x3]; // 0x91d public: float m_hurtThinkPeriod; // 0x920 private: [[maybe_unused]] uint8_t __pad0924[0x4]; // 0x924 public: CEntityIOOutput m_OnHurt; // 0x928 CEntityIOOutput m_OnHurtPlayer; // 0x950 CUtlVector< CHandle< CBaseEntity > > m_hurtEntities; // 0x978 }; // Alignment: 0 // Size: 0x990 class CTriggerHurtGhost : public CTriggerHurt { public: // no members available }; // Alignment: 0 // Size: 0x8f8 class CTriggerCallback : public CBaseTrigger { public: // no members available }; // Alignment: 12 // Size: 0x990 class CTriggerLerpObject : public CBaseTrigger { public: CUtlSymbolLarge m_iszLerpTarget; // 0x8f0 CHandle< CBaseEntity > m_hLerpTarget; // 0x8f8 private: [[maybe_unused]] uint8_t __pad08fc[0x4]; // 0x8fc public: CUtlSymbolLarge m_iszLerpTargetAttachment; // 0x900 AttachmentHandle_t m_hLerpTargetAttachment; // 0x908 private: [[maybe_unused]] uint8_t __pad0909[0x3]; // 0x909 public: float m_flLerpDuration; // 0x90c bool m_bLerpRestoreMoveType; // 0x910 bool m_bSingleLerpObject; // 0x911 private: [[maybe_unused]] uint8_t __pad0912[0x6]; // 0x912 public: CUtlVector< lerpdata_t > m_vecLerpingObjects; // 0x918 CUtlSymbolLarge m_iszLerpEffect; // 0x930 CUtlSymbolLarge m_iszLerpSound; // 0x938 CEntityIOOutput m_OnLerpStarted; // 0x940 CEntityIOOutput m_OnLerpFinished; // 0x968 }; // Alignment: 7 // Size: 0x930 class CChangeLevel : public CBaseTrigger { public: CUtlString m_sMapName; // 0x8f0 CUtlString m_sLandmarkName; // 0x8f8 CEntityIOOutput m_OnChangeLevel; // 0x900 bool m_bTouched; // 0x928 bool m_bNoTouch; // 0x929 bool m_bNewChapter; // 0x92a bool m_bOnChangeLevelFired; // 0x92b }; // Alignment: 3 // Size: 0x900 class CTriggerTeleport : public CBaseTrigger { public: CUtlSymbolLarge m_iLandmark; // 0x8f0 bool m_bUseLandmarkAngles; // 0x8f8 bool m_bMirrorPlayer; // 0x8f9 }; // Alignment: 11 // Size: 0x940 class CTriggerFan : public CBaseTrigger { public: Vector m_vFanOrigin; // 0x8f0 Vector m_vFanEnd; // 0x8fc Vector m_vNoise; // 0x908 float m_flForce; // 0x914 float m_flPlayerForce; // 0x918 float m_flRampTime; // 0x91c bool m_bFalloff; // 0x920 bool m_bPushPlayer; // 0x921 bool m_bRampDown; // 0x922 bool m_bAddNoise; // 0x923 private: [[maybe_unused]] uint8_t __pad0924[0x4]; // 0x924 public: CountdownTimer m_RampTimer; // 0x928 }; // Alignment: 2 // Size: 0x918 class CTriggerBuoyancy : public CBaseTrigger { public: CBuoyancyHelper m_BuoyancyHelper; // 0x8f0 // MNetworkEnable float m_flFluidDensity; // 0x910 }; // Alignment: 0 // Size: 0x498 class CNavWalkable : public CPointEntity { public: // no members available }; // Alignment: 2 // Size: 0x758 class CFuncNavBlocker : public CBaseModelEntity { public: bool m_bDisabled; // 0x748 private: [[maybe_unused]] uint8_t __pad0749[0x3]; // 0x749 public: int32_t m_nBlockedTeamNumber; // 0x74c }; // Alignment: 12 // Size: 0x538 class CNavLinkAreaEntity : public CPointEntity { public: float m_flWidth; // 0x498 Vector m_vLocatorOffset; // 0x49c QAngle m_qLocatorAnglesOffset; // 0x4a8 private: [[maybe_unused]] uint8_t __pad04b4[0x4]; // 0x4b4 public: CUtlSymbolLarge m_strMovementForward; // 0x4b8 CUtlSymbolLarge m_strMovementReverse; // 0x4c0 int32_t m_nNavLinkIdForward; // 0x4c8 int32_t m_nNavLinkIdReverse; // 0x4cc bool m_bEnabled; // 0x4d0 private: [[maybe_unused]] uint8_t __pad04d1[0x7]; // 0x4d1 public: CUtlSymbolLarge m_strFilterName; // 0x4d8 CHandle< CBaseFilter > m_hFilter; // 0x4e0 private: [[maybe_unused]] uint8_t __pad04e4[0x4]; // 0x4e4 public: CEntityIOOutput m_OnNavLinkStart; // 0x4e8 CEntityIOOutput m_OnNavLinkFinish; // 0x510 }; // Alignment: 3 // Size: 0x4a0 class CNavSpaceInfo : public CPointEntity { public: bool m_bCreateTacticalConnections; // 0x498 bool m_bCreateFlightSpace; // 0x499 private: [[maybe_unused]] uint8_t __pad049a[0x2]; // 0x49a public: float m_flPhysicsOverheadBufferDist; // 0x49c }; // Alignment: 24 // Size: 0x7e8 class CBeam : public CBaseModelEntity { public: // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "-25" // MNetworkMaxValue "25" // MNetworkEncodeFlags float m_flFrameRate; // 0x748 // MNetworkEnable float m_flHDRColorScale; // 0x74c GameTime_t m_flFireTime; // 0x750 float m_flDamage; // 0x754 // MNetworkEnable uint8_t m_nNumBeamEnts; // 0x758 private: [[maybe_unused]] uint8_t __pad0759[0x7]; // 0x759 public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_hBaseMaterial; // 0x760 // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_nHaloIndex; // 0x768 // MNetworkEnable BeamType_t m_nBeamType; // 0x770 // MNetworkEnable uint32_t m_nBeamFlags; // 0x774 // MNetworkEnable CHandle< CBaseEntity > m_hAttachEntity[10]; // 0x778 // MNetworkEnable AttachmentHandle_t m_nAttachIndex[10]; // 0x7a0 private: [[maybe_unused]] uint8_t __pad07aa[0x2]; // 0x7aa public: // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "102.3" // MNetworkEncodeFlags float m_fWidth; // 0x7ac // MNetworkEnable // MNetworkBitCount "10" // MNetworkMinValue "0" // MNetworkMaxValue "102.3" // MNetworkEncodeFlags float m_fEndWidth; // 0x7b0 // MNetworkEnable float m_fFadeLength; // 0x7b4 // MNetworkEnable float m_fHaloScale; // 0x7b8 // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "64" // MNetworkEncodeFlags float m_fAmplitude; // 0x7bc // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags float m_fStartFrame; // 0x7c0 // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "100" float m_fSpeed; // 0x7c4 // MNetworkEnable // MNetworkBitCount "20" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags // MNetworkPriority "32" float m_flFrame; // 0x7c8 // MNetworkEnable BeamClipStyle_t m_nClipStyle; // 0x7cc // MNetworkEnable bool m_bTurnedOff; // 0x7d0 private: [[maybe_unused]] uint8_t __pad07d1[0x3]; // 0x7d1 public: // MNetworkEnable // MNetworkEncoder Vector m_vecEndPos; // 0x7d4 CHandle< CBaseEntity > m_hEndEntity; // 0x7e0 int32_t m_nDissolveType; // 0x7e4 }; // Alignment: 7 // Size: 0x128 class CPrecipitationVData : public CEntitySubclassVDataBase { public: CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationEffect; // 0x28 float m_flInnerDistance; // 0x108 ParticleAttachment_t m_nAttachType; // 0x10c bool m_bBatchSameVolumeType; // 0x110 private: [[maybe_unused]] uint8_t __pad0111[0x3]; // 0x111 public: int32_t m_nRTEnvCP; // 0x114 int32_t m_nRTEnvCPComponent; // 0x118 private: [[maybe_unused]] uint8_t __pad011c[0x4]; // 0x11c public: CUtlString m_szModifier; // 0x120 }; // Alignment: 9 // Size: 0x80 class CRagdoll : public IRagdoll { public: ragdoll_t m_ragdoll; // 0x8 Vector m_mins; // 0x40 Vector m_maxs; // 0x4c Vector m_origin; // 0x58 float m_lastUpdate; // 0x64 bool m_allAsleep; // 0x68 private: [[maybe_unused]] uint8_t __pad0069[0x3]; // 0x69 public: Vector m_vecLastOrigin; // 0x6c float m_flLastOriginChangeTime; // 0x78 float m_flAwakeTime; // 0x7c static uint32_t &Get_s_globalCount(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CRagdoll")->m_static_fields[0]->m_instance);}; }; // Alignment: 23 // Size: 0x7b8 class CSprite : public CBaseModelEntity { public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSpriteMaterial; // 0x748 // MNetworkEnable CHandle< CBaseEntity > m_hAttachedToEntity; // 0x750 // MNetworkEnable AttachmentHandle_t m_nAttachment; // 0x754 private: [[maybe_unused]] uint8_t __pad0755[0x3]; // 0x755 public: // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "60" // MNetworkEncodeFlags float m_flSpriteFramerate; // 0x758 // MNetworkEnable // MNetworkBitCount "20" // MNetworkMinValue "0" // MNetworkMaxValue "256" // MNetworkEncodeFlags float m_flFrame; // 0x75c GameTime_t m_flDieTime; // 0x760 private: [[maybe_unused]] uint8_t __pad0764[0xc]; // 0x764 public: // MNetworkEnable uint32_t m_nBrightness; // 0x770 // MNetworkEnable float m_flBrightnessDuration; // 0x774 // MNetworkEnable // MNetworkChangeCallback "OnSpriteScaleChanged" float m_flSpriteScale; // 0x778 // MNetworkEnable float m_flScaleDuration; // 0x77c // MNetworkEnable bool m_bWorldSpaceScale; // 0x780 private: [[maybe_unused]] uint8_t __pad0781[0x3]; // 0x781 public: // MNetworkEnable // MNetworkBitCount "6" // MNetworkMinValue "0" // MNetworkMaxValue "64" // MNetworkEncodeFlags float m_flGlowProxySize; // 0x784 // MNetworkEnable float m_flHDRColorScale; // 0x788 GameTime_t m_flLastTime; // 0x78c float m_flMaxFrame; // 0x790 float m_flStartScale; // 0x794 float m_flDestScale; // 0x798 GameTime_t m_flScaleTimeStart; // 0x79c int32_t m_nStartBrightness; // 0x7a0 int32_t m_nDestBrightness; // 0x7a4 GameTime_t m_flBrightnessTimeStart; // 0x7a8 int32_t m_nSpriteWidth; // 0x7ac int32_t m_nSpriteHeight; // 0x7b0 }; // Alignment: 0 // Size: 0x7b8 class CSpriteOriented : public CSprite { public: // no members available }; // Alignment: 14 // Size: 0x8f8 class CBaseClientUIEntity : public CBaseModelEntity { public: // MNetworkEnable bool m_bEnabled; // 0x748 private: [[maybe_unused]] uint8_t __pad0749[0x7]; // 0x749 public: // MNetworkEnable CUtlSymbolLarge m_DialogXMLName; // 0x750 // MNetworkEnable CUtlSymbolLarge m_PanelClassName; // 0x758 // MNetworkEnable CUtlSymbolLarge m_PanelID; // 0x760 CEntityIOOutput m_CustomOutput0; // 0x768 CEntityIOOutput m_CustomOutput1; // 0x790 CEntityIOOutput m_CustomOutput2; // 0x7b8 CEntityIOOutput m_CustomOutput3; // 0x7e0 CEntityIOOutput m_CustomOutput4; // 0x808 CEntityIOOutput m_CustomOutput5; // 0x830 CEntityIOOutput m_CustomOutput6; // 0x858 CEntityIOOutput m_CustomOutput7; // 0x880 CEntityIOOutput m_CustomOutput8; // 0x8a8 CEntityIOOutput m_CustomOutput9; // 0x8d0 }; // Alignment: 2 // Size: 0x900 class CPointClientUIDialog : public CBaseClientUIEntity { public: // MNetworkEnable // MNetworkChangeCallback "OnDialogActivatorChanged" CHandle< CBaseEntity > m_hActivator; // 0x8f8 bool m_bStartEnabled; // 0x8fc }; // Alignment: 23 // Size: 0x950 class CPointClientUIWorldPanel : public CBaseClientUIEntity { public: // MNetworkEnable bool m_bIgnoreInput; // 0x8f8 // MNetworkEnable bool m_bLit; // 0x8f9 // MNetworkEnable bool m_bFollowPlayerAcrossTeleport; // 0x8fa private: [[maybe_unused]] uint8_t __pad08fb[0x1]; // 0x8fb public: // MNetworkEnable float m_flWidth; // 0x8fc // MNetworkEnable float m_flHeight; // 0x900 // MNetworkEnable float m_flDPI; // 0x904 // MNetworkEnable float m_flInteractDistance; // 0x908 // MNetworkEnable float m_flDepthOffset; // 0x90c // MNetworkEnable uint32_t m_unOwnerContext; // 0x910 // MNetworkEnable uint32_t m_unHorizontalAlign; // 0x914 // MNetworkEnable uint32_t m_unVerticalAlign; // 0x918 // MNetworkEnable uint32_t m_unOrientation; // 0x91c // MNetworkEnable bool m_bAllowInteractionFromAllSceneWorlds; // 0x920 private: [[maybe_unused]] uint8_t __pad0921[0x7]; // 0x921 public: // MNetworkEnable CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x928 // MNetworkEnable bool m_bOpaque; // 0x940 // MNetworkEnable bool m_bNoDepth; // 0x941 // MNetworkEnable bool m_bRenderBackface; // 0x942 // MNetworkEnable bool m_bUseOffScreenIndicator; // 0x943 // MNetworkEnable bool m_bExcludeFromSaveGames; // 0x944 // MNetworkEnable bool m_bGrabbable; // 0x945 // MNetworkEnable bool m_bOnlyRenderToTexture; // 0x946 // MNetworkEnable bool m_bDisableMipGen; // 0x947 // MNetworkEnable int32_t m_nExplicitImageLayout; // 0x948 }; // Alignment: 1 // Size: 0xb50 class CPointClientUIWorldTextPanel : public CPointClientUIWorldPanel { public: // MNetworkEnable char m_messageText[512]; // 0x950 }; // Alignment: 0 // Size: 0x958 class CPointHintUi : public CPointClientUIWorldPanel { public: // no members available }; // Alignment: 10 // Size: 0x510 class CInfoOffscreenPanoramaTexture : public CPointEntity { public: // MNetworkEnable bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: // MNetworkEnable int32_t m_nResolutionX; // 0x49c // MNetworkEnable int32_t m_nResolutionY; // 0x4a0 private: [[maybe_unused]] uint8_t __pad04a4[0x4]; // 0x4a4 public: // MNetworkEnable CUtlSymbolLarge m_szLayoutFileName; // 0x4a8 // MNetworkEnable CUtlSymbolLarge m_RenderAttrName; // 0x4b0 // MNetworkEnable CNetworkUtlVectorBase< CHandle< CBaseModelEntity > > m_TargetEntities; // 0x4b8 // MNetworkEnable int32_t m_nTargetChangeCount; // 0x4d0 private: [[maybe_unused]] uint8_t __pad04d4[0x4]; // 0x4d4 public: // MNetworkEnable CNetworkUtlVectorBase< CUtlSymbolLarge > m_vecCSSClasses; // 0x4d8 CUtlSymbolLarge m_szTargetsName; // 0x4f0 CUtlVector< CHandle< CBaseModelEntity > > m_AdditionalTargetEntities; // 0x4f8 }; // Alignment: 1 // Size: 0x128 class CAttributeContainer : public CAttributeManager { public: // MNetworkEnable CEconItemView m_Item; // 0x68 }; // Alignment: 2 // Size: 0x20 class INextBotComponent : public INextBotEventResponder { public: GameTime_t m_lastUpdateTime; // 0x8 float m_curInterval; // 0xc }; // Alignment: 0 // Size: 0x28 class IIntention : public INextBotComponent { public: // no members available }; // Alignment: 0 // Size: 0x90 class CLocomotionBase : public INextBotComponent { public: // no members available }; // Alignment: 3 // Size: 0x758 class CBaseAnimatingActivity : public CBaseModelEntity { public: // MNetworkEnable bool m_bShouldAnimateDuringGameplayPause; // 0x748 // MNetworkEnable bool m_bInitiallyPopulateInterpHistory; // 0x749 private: [[maybe_unused]] uint8_t __pad074a[0x6]; // 0x74a public: CUtlVector< CUtlString >* m_pSuppressedAnimEventTags; // 0x750 }; // Alignment: 0 // Size: 0x758 class CBaseAnimatingOverlay : public CBaseAnimatingActivity { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_AutoDeliver : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x578 class CDOTA_Ability_Brewmaster_PrimalSplit : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hPrimary; // 0x550 // MNetworkEnable CHandle< CBaseEntity > m_hSecondary; // 0x554 // MNetworkEnable CHandle< CBaseEntity > m_hTertiary; // 0x558 // MNetworkEnable CHandle< CBaseEntity > m_hFourth; // 0x55c GameTime_t m_fHurlBoulder_CooldownTime; // 0x560 GameTime_t m_fHDispelMagic_CooldownTime; // 0x564 GameTime_t m_fCyclone_CooldownTime; // 0x568 GameTime_t m_fWindWalk_CooldownTime; // 0x56c GameTime_t m_fAstralPulse_CooldownTime; // 0x570 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_DeathProphet_Exorcism : public CDOTABaseAbility { public: CUtlVector< sSpiritInfo* > m_SpiritInfos; // 0x550 }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_Wisp_Spirits : public CDOTABaseAbility { public: CUtlVector< sSpiritDef > m_SpiritDefs; // 0x550 int32_t m_nWispDirection; // 0x568 int32_t spirit_amount; // 0x56c }; // Alignment: 8 // Size: 0x588 class CDOTA_Ability_MonkeyKing_FurArmy : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 ParticleIndex_t m_nFXIndex; // 0x554 int32_t num_first_soldiers; // 0x558 int32_t num_second_soldiers; // 0x55c bool m_bCreateMonkeys; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0x3]; // 0x561 public: GameTime_t m_flNextCreationTime; // 0x564 GameTime_t m_flScepterTime; // 0x568 private: [[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c public: CUtlVector< CHandle< CBaseEntity > > m_vecSoldiers; // 0x570 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Generic_Hidden : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Book : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BookStrength : public CDOTA_Item_Book { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BookAgility : public CDOTA_Item_Book { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BookIntelligence : public CDOTA_Item_Book { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Jungle_Varmint_Dive : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Pudge_FleshHeap : public CDOTABaseAbility { public: int32_t m_iKills; // 0x550 }; // Alignment: 6 // Size: 0x618 class CDOTA_Item_Tombstone : public CDOTA_Item { public: float m_flTimer; // 0x5f8 CHandle< CDOTA_Item_Tombstone > m_hParent; // 0x5fc CHandle< CDOTA_Item_Tombstone > m_hNextChild; // 0x600 Vector m_vContainerPosition; // 0x604 ParticleIndex_t m_nFXIndex; // 0x610 ParticleIndex_t m_nFXIndex2; // 0x614 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_VengefulSpirit_Command_Aura : public CDOTABaseAbility { public: // MNetworkEnable // MNetworkChangeCallback "OnScepterIllusionChanged" CHandle< CBaseEntity > m_hScepterIllusion; // 0x550 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Capture : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hTarget; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CDOTA_Buff* m_pMyBuff; // 0x558 }; // Alignment: 0 // Size: 0x618 class CDOTA_Item_Tombstone_Mutation : public CDOTA_Item_Tombstone { public: // no members available }; // Alignment: 0 // Size: 0x760 class CDOTA_Item_DeathGoldDropped : public CBaseAnimatingActivity { public: // no members available }; // Alignment: 4 // Size: 0x20 class CDOTA_Tree : public CObstructionObject { public: bool m_bStanding; // 0x18 bool m_bSpecialConsume; // 0x19 bool m_bSpecialPathing; // 0x1a private: [[maybe_unused]] uint8_t __pad001b[0x1]; // 0x1b public: uint32_t m_unOccluderID; // 0x1c static int32_t &Get_s_nNextChangeToken(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Tree")->m_static_fields[0]->m_instance);}; }; // Alignment: 7 // Size: 0x7d0 class CDOTA_TempTree : public CBaseAnimatingActivity { public: GameTime_t m_fExpireTime; // 0x778 // MNetworkEnable Vector m_vecTreeCircleCenter; // 0x77c // MNetworkEnable bool m_bCanApplyTreeCostume; // 0x788 // MNetworkEnable bool m_bIsMangoTree; // 0x789 private: [[maybe_unused]] uint8_t __pad078a[0x6]; // 0x78a public: CUtlVector< ParticleIndex_t > m_Particles; // 0x790 // MNetworkEnable bool m_bIsPartOfFowSystem; // 0x7a8 bool m_bForceVisible[14]; // 0x7a9 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KoboldTaskmaster_SpeedAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CentaurKhan_EnduranceAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CentaurKhan_WarStomp : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spawnlord_Master_Stomp : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spawnlord_Master_Freeze : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_GnollAssassin_EnvenomedWeapon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ghost_FrostAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PolarFurbolgUrsaWarrior_ThunderClap : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_WarpineRaider_SeedShot : public CDOTABaseAbility { public: int32_t m_iBounces; // 0x550 int32_t bounces; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Neutral_SpellImmunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_OgreMagi_FrostArmor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkTrollWarlord_Ensnare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkTrollWarlord_RaiseDead : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_GiantWolf_CriticalStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_AncientGolem_Rockslide : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MudGolem_RockDestroy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MudGolem_HurlBoulder : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AlphaWolf_CriticalStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AncientRockGolem_Weakening_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlackDrake_MagicAmplification_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AlphaWolf_CommandAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FrostbittenGolem_TimeWarpAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_IceShaman_IncendiaryBomb : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tornado_Tempest : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_EnragedWildkin_Tornado : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTornado; // 0x550 CHandle< CBaseEntity > m_hNeutralTarget; // 0x554 ParticleIndex_t m_nFXIndex; // 0x558 }; // Alignment: 6 // Size: 0x588 class CDOTA_Ability_EnragedWildkin_Hurricane : public CDOTABaseAbility { public: float distance; // 0x550 Vector m_vEndpoint; // 0x554 Vector m_vDashPosition; // 0x560 Vector m_vFacePosition; // 0x56c Vector m_vTravelDir; // 0x578 float m_fTravelDistance; // 0x584 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BerserkerTroll_Break : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Kobold_Disarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_EnragedWildkin_ToughnessAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_GraniteGolem_HPAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_GraniteGolem_Bash : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spawnlord_Master_Bash : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_SatyrTrickster_Purge : public CDOTABaseAbility { public: GameTime_t m_flTargetTime; // 0x550 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_SatyrSoulstealer_ManaBurn : public CDOTABaseAbility { public: CHandle< CBaseEntity > hNeutralTarget; // 0x550 GameTime_t m_flTimeBuffer; // 0x554 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_SatyrHellcaller_Shockwave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SatyrHellcaller_UnholyAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spawnlord_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ForestTrollHighPriest_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ForestTrollHighPriest_ManaAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ForestTrollHighPriest_HealAmp_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furbolg_Enrage_AttackSpeed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furbolg_Enrage_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_FelBeast_Haunt : public CDOTABaseAbility { public: int32_t radius; // 0x550 float duration; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KoboldTunneler_Prospecting : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_HillTroll_Rally : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_HarpyScout_TakeOff : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_OgreBruiser_OgreSmash : public CDOTABaseAbility { public: int32_t radius; // 0x550 float hero_stun_duration; // 0x554 int32_t damage; // 0x558 float damage_pct; // 0x55c GameTime_t flCooldown; // 0x560 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_GiantWolf_Intimidate : public CDOTABaseAbility { public: int32_t radius; // 0x550 float duration; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_HarpyStorm_ChainLightning : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlackDragon_Fireball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlackDragon_SplashAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlackDragon_DragonhideAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MudGolem_CloakAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlueDragonspawnSorcerer_Evasion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlueDragonspawnOverseer_Evasion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BlueDragonspawnOverseer_DevotionAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BigThunderLizard_Wardrums : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BigThunderLizard_Slam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BigThunderLizard_Frenzy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Black_Nightmare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Black_BrainSap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Blue_ColdFeet : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Greevil_Miniboss_Blue_IceVortex : public CDOTABaseAbility { public: int32_t vision_aoe; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Red_Earthshock : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Red_Overpower : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Yellow_IonShell : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Yellow_Surge : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_White_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_White_Degen_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Green_LivingArmor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Green_Overgrowth : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Orange_DragonSlave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Orange_LightStrikeArray : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Greevil_Miniboss_Purple_VenomousGale : public CDOTABaseAbility { public: float duration; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Purple_PlagueWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Greevil_Miniboss_Sight : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Neutral_Upgrade : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Creep_Siege : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Creep_Piercing : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Creep_Irresolute : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FlagBearer_Creep_Aura_Effect : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Filler_Tooltip : public CDOTABaseAbility { public: // no members available }; // Alignment: 34 // Size: 0x1138 class CDOTA_Buff : public CHorizontalMotionController { public: CUtlSymbolLarge m_name; // 0x28 private: [[maybe_unused]] uint8_t __pad0030[0x8]; // 0x30 public: CUtlSymbolLarge m_szModifierAura; // 0x38 private: [[maybe_unused]] uint8_t __pad0040[0x8]; // 0x40 public: int32_t m_iSerialNumber; // 0x48 // MFieldVerificationName int32_t m_iStringIndex; // 0x4c int32_t m_iIndex; // 0x50 GameTime_t m_flCreationTime; // 0x54 int32_t m_iCreationFrame; // 0x58 GameTime_t m_flLastAppliedTime; // 0x5c float m_flDuration; // 0x60 GameTime_t m_flDieTime; // 0x64 CHandle< CBaseEntity > m_hCaster; // 0x68 CHandle< CBaseEntity > m_hAbility; // 0x6c CHandle< CBaseEntity > m_hParent; // 0x70 CHandle< CBaseEntity > m_hAuraOwner; // 0x74 int32_t m_iStackCount; // 0x78 int16_t m_iAuraSearchTeam; // 0x7c int16_t m_iAuraSearchType; // 0x7e int32_t m_iAuraSearchFlags; // 0x80 int32_t m_iAuraRadius; // 0x84 int32_t m_iTeam; // 0x88 int32_t m_iAttributes; // 0x8c // MFieldVerificationName int16_t m_iPaddingToMakeSchemaHappy2; // 0x90 struct { uint8_t m_bIsAura: 1; uint8_t m_bIsAuraActiveOnDeath: 1; uint8_t m_bMarkedForDeletion: 1; uint8_t m_bAuraIsHeal: 1; uint8_t m_bProvidedByAura: 1; uint32_t __pad4: 19; }; // 24 bits bool m_bPurgedDestroy; // 0x93 GameTime_t m_flPreviousTick; // 0x94 float m_flThinkInterval; // 0x98 float m_flThinkTimeAccumulator; // 0x9c CUtlVector< CDOTA_BuffParticle > m_iParticles; // 0xa0 CUtlVector< CHandle< CBaseEntity > > m_hAuraUnits; // 0xb8 private: [[maybe_unused]] uint8_t __pad00d0[0x1060]; // 0xd0 public: HSCRIPT m_hScriptScope; // 0x1130 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Buff_Item : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Stacking_Base : public CDOTA_Buff { public: int32_t max_stacks; // 0x1138 bool destroy_on_zero_stacks; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float sub_modifier_forced_duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlString m_szSubModifierName; // 0x1148 KeyValues* m_pSubModifierKV; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Stacking_Multiple_Buff_Base : public CDOTA_Buff { public: int32_t m_nParentBuffIndex; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Glyph_Reset : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_StackedNeutral : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_FillerThinker : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > hCasterList; // 0x1138 bool bStarted; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Filler_Buff_Icon : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Filler_Heal_Aura : public CDOTA_Buff_Item { public: int32_t radius; // 0x1138 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Filler_Heal : public CDOTA_Buff { public: int32_t hp_heal; // 0x1138 int32_t mp_heal; // 0x113c int32_t hp_heal_growth; // 0x1140 float mp_heal_growth; // 0x1144 int32_t hp_heal_pct; // 0x1148 int32_t mp_heal_pct; // 0x114c int32_t tota_hp_per_second; // 0x1150 int32_t tota_mp_per_second; // 0x1154 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_FountainInvulnerabilityBuff : public CDOTA_Buff { public: Vector m_vecPosition; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Building_DispelsSmoke : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Truesight_Aura : public CDOTA_Buff { public: int32_t m_nAuraRadius; // 0x1138 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Tower_Truesight_Aura : public CDOTA_Modifier_Truesight_Aura { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Fountain_Truesight_Aura : public CDOTA_Modifier_Truesight_Aura { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Tower_Aura : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 bool m_bOverrideArmor; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float hp_regen; // 0x1140 bool m_bOverrideRegen; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t m_nRadius; // 0x1148 }; // Alignment: 5 // Size: 0x1148 class CDOTA_Modifier_Tower_Aura_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 float hp_regen; // 0x113c bool m_bOverrideArmor; // 0x1140 bool m_bOverrideRegen; // 0x1141 bool m_bSentFirstRefresh; // 0x1142 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tower_Armor_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BackdoorProtection : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BackdoorProtectionInBase : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FillerAbility : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_BackdoorProtection : public CDOTA_Buff { public: bool m_bActivated; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: float m_flHealthToRestore; // 0x113c int32_t radius; // 0x1140 float activation_time; // 0x1144 int32_t regen_rate; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CountdownTimer m_TimerToActivate; // 0x1150 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_BackdoorProtectionInBase : public CDOTA_Modifier_BackdoorProtection { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BackdoorProtectionActive : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ProjectileVision : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ProjectileVisionOnMinimap : public CDOTA_Modifier_ProjectileVision { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pet : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_HeroStatue : public CDOTA_Buff { public: uint32_t m_unStatusEffectIndex; // 0x1138 CHandle< CBaseEntity > m_hPedestal; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_HeroStatuePedestal : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BattleCupEffigy : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Hidden_NoDamage : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tutorial_Disable_Healing : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tutorial_SpeechBubble : public CDOTA_Buff { public: bool m_bFacePlayer; // 0x1138 }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Tutorial_ForceAnimation : public CDOTA_Buff { public: int32_t m_nActivity; // 0x1138 bool m_bLoop; // 0x113c bool m_bFacePlayer; // 0x113d }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tutorial_HideNPC : public CDOTA_Buff { public: bool m_bRemoveOnDeath; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tutorial_LowAttackPriority : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tutorial_LastHittable : public CDOTA_Buff { public: bool m_bIsFriend; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Creep_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Creep_Haste : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Buyback_Gold_Penalty : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Provide_Vision : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_ScriptedMotionController : public CDOTA_Buff { public: HSCRIPT m_hHorizontalControlFunction; // 0x1138 HSCRIPT m_hVerticalControlFunction; // 0x1140 HSCRIPT m_hOnDestroyFunction; // 0x1148 CVariantBase< CVariantDefaultAllocator > m_parameterTable; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Generic_Hidden : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Disable_Healing : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MagicImmune : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CameraFollow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Hexed : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Editor : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Prosperous_Soul : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MoveSpeed_Percentage : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Kill : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Phased : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Dominated : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrueSight : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrueSightFoW : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrueSightAll : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Stunned : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bashed : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Taunt : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_PersistentInvisibility : public CDOTA_Buff { public: float fade_delay; // 0x1138 float m_flFadeTime; // 0x113c GameTime_t m_flLastActionTime; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Invisible : public CDOTA_Buff { public: bool m_bSubtle; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: GameTime_t m_flFadeTime; // 0x113c float m_flFadeTimeValue; // 0x1140 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_InvisibleTrueSightImmune : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Followthrough : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Fear : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AttackImmune : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Disarmed : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Break : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Muted : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rooted : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NoHealthBar : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NotOnMinimap : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FountainAura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FountainAuraBuff : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x1198 class CDOTA_Modifier_Illusion : public CDOTA_Buff { public: int32_t outgoing_damage; // 0x1138 int32_t outgoing_damage_structure; // 0x113c int32_t outgoing_damage_roshan; // 0x1140 int32_t incoming_damage; // 0x1144 int32_t bounty_base; // 0x1148 int32_t bounty_growth; // 0x114c CUtlString m_strIllusionType; // 0x1150 char m_szIllusionLabel[64]; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_DoubleDamage : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Rune_ExtraDamage : public CDOTA_Modifier_Rune_DoubleDamage { public: int32_t m_iAdditionalDamagePct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_Haste : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_FlyingHaste : public CDOTA_Modifier_Rune_Haste { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Rune_Invisibility : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Rune_Super_Invisibility : public CDOTA_Modifier_PersistentInvisibility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_Regen : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rune_SuperRegen : public CDOTA_Modifier_Rune_Regen { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rune_Arcane : public CDOTA_Buff { public: int32_t m_iCooldownReductionPct; // 0x1138 int32_t m_iCostReductionPct; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Rune_SuperArcane : public CDOTA_Modifier_Rune_Arcane { public: // no members available }; // Alignment: 11 // Size: 0x1590 class CDOTA_Modifier_Teleporting : public CDOTA_Buff { public: float m_fStartTime; // 0x1158 char m_iszPortalLoopAppear[260]; // 0x115c char m_iszPortalLoopDisappear[260]; // 0x1260 char m_iszHeroLoopAppear[260]; // 0x1364 char m_iszHeroLoopDisappear[260]; // 0x1468 bool m_bSkipTeleportAnim; // 0x156c bool m_bPlayingCoopAnim; // 0x156d bool m_bIsPlayingTauntGesture; // 0x156e private: [[maybe_unused]] uint8_t __pad156f[0x1]; // 0x156f public: float m_fChannelTime; // 0x1570 Vector m_vStart; // 0x1574 Vector m_vEnd; // 0x1580 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Teleporting_Root_Logic : public CDOTA_Buff { public: // no members available }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_Knockback : public CDOTA_Buff { public: float knockback_distance; // 0x1138 int32_t knockback_height; // 0x113c float knockback_duration; // 0x1140 Vector m_vHorizOffset; // 0x1144 Vector m_vStartPosition; // 0x1150 float m_fCurrentTimeHoriz; // 0x115c float m_fCurrentTimeVert; // 0x1160 bool m_bShouldStun; // 0x1164 bool m_bRespectLeash; // 0x1165 bool m_bReversePolarity; // 0x1166 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Cyclone : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 Vector m_vStartPos; // 0x113c float m_flCurTime; // 0x1148 float m_flHeightT; // 0x114c }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_IceSlide : public CDOTA_Buff { public: GameTime_t m_fLastUpdateTime; // 0x1138 Vector m_vVelocity; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tutorial_LastHitHelper : public CDOTA_Buff { public: bool m_bTargetFriendlies; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TeamShowcase_Global : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TeamShowcase_Showcase : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1168 class CDOTA_Modifier_HallOfFame_Glow : public CDOTA_Buff { public: CUtlVector< PlayerID_t > m_vecGlowingPlayerIDs; // 0x1138 CUtlVector< PlayerID_t > m_vecGlowingPlayerIDs2; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DisableTauntAnimationCancel : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_PreventTaunts : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Activity_Modifier : public CDOTA_Buff { public: CUtlSymbolLarge m_activityModifier; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_SecondaryUnit_Taunt : public CDOTA_Buff { public: // no members available }; // Alignment: 7 // Size: 0x1150 class CDOTA_Modifier_MonkeyKing_BouncePerch : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTree; // 0x1138 bool m_bGroundToTree; // 0x113c bool m_bTreeToGround; // 0x113d bool m_bTreeToTree; // 0x113e private: [[maybe_unused]] uint8_t __pad113f[0x1]; // 0x113f public: float perched_day_vision; // 0x1140 float perched_night_vision; // 0x1144 bool m_bAbilityIsStolen; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BookOfStrength : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BookOfAgility : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BookOfIntelligence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_No_Invisibility : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hide_On_Minimap : public CDOTA_Buff { public: bool m_bEnemiesOnly; // 0x1138 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_ChangeTreeModel_Thinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTree; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlString m_strModel; // 0x1140 int32_t m_nModelChangeToken; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LegacyChargeCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_FixedNumberOfHitsToKill : public CDOTA_Buff { public: int32_t creep_attack_divisor; // 0x1138 int32_t attack_count; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_NPXBuff : public CDOTA_Buff { public: int32_t m_nCurReduction; // 0x1138 }; // Alignment: 20 // Size: 0x600 class CDOTA_Ability_DataDriven : public CDOTABaseAbility { public: bool m_bProcsMagicStick; // 0x568 bool m_bIsSharedWithTeammates; // 0x569 bool m_bCastFilterRejectCaster; // 0x56a private: [[maybe_unused]] uint8_t __pad056b[0x1]; // 0x56b public: float m_fAOERadius; // 0x56c int32_t m_CastAnimation; // 0x570 private: [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 public: CUtlVector< KeyValues* > m_ModifierKVDescriptions; // 0x578 KeyValues* m_pOnChannelFinishKV; // 0x590 KeyValues* m_pOnChannelSucceededKV; // 0x598 KeyValues* m_pOnChannelInterruptedKV; // 0x5a0 KeyValues* m_pOnOwnerSpawnedKV; // 0x5a8 KeyValues* m_pOnOwnerDiedKV; // 0x5b0 KeyValues* m_pOnUpgradeKV; // 0x5b8 KeyValues* m_pOnProjectileHitUnitKV; // 0x5c0 KeyValues* m_pOnProjectileFinishKV; // 0x5c8 KeyValues* m_pOnSpellStartKV; // 0x5d0 KeyValues* m_pOnAbilityPhaseStartKV; // 0x5d8 KeyValues* m_pOnAbilityPhaseInterruptedKV; // 0x5e0 KeyValues* m_pOnToggleOnKV; // 0x5e8 KeyValues* m_pOnToggleOffKV; // 0x5f0 KeyValues* m_pOnCreatedKV; // 0x5f8 }; // Alignment: 21 // Size: 0x6a8 class CDOTA_Item_DataDriven : public CDOTA_Item { public: bool m_bProcsMagicStick; // 0x610 bool m_bIsSharedWithTeammates; // 0x611 bool m_bCastFilterRejectCaster; // 0x612 private: [[maybe_unused]] uint8_t __pad0613[0x1]; // 0x613 public: float m_fAnimationPlaybackRate; // 0x614 float m_fAOERadius; // 0x618 int32_t m_CastAnimation; // 0x61c CUtlVector< KeyValues* > m_ModifierKVDescriptions; // 0x620 KeyValues* m_pOnChannelFinishKV; // 0x638 KeyValues* m_pOnChannelSucceededKV; // 0x640 KeyValues* m_pOnChannelInterruptedKV; // 0x648 KeyValues* m_pOnOwnerSpawnedKV; // 0x650 KeyValues* m_pOnOwnerDiedKV; // 0x658 KeyValues* m_pOnProjectileHitUnitKV; // 0x660 KeyValues* m_pOnProjectileFinishKV; // 0x668 KeyValues* m_pOnSpellStartKV; // 0x670 KeyValues* m_pOnAbilityPhaseStartKV; // 0x678 KeyValues* m_pOnToggleOnKV; // 0x680 KeyValues* m_pOnToggleOffKV; // 0x688 KeyValues* m_pOnEquipKV; // 0x690 KeyValues* m_pOnUnequipKV; // 0x698 KeyValues* m_pOnCreatedKV; // 0x6a0 }; // Alignment: 63 // Size: 0x2b68 class CDOTA_Modifier_DataDriven : public CDOTA_Buff { public: AbilityID_t m_nAbilityID; // 0x1150 int32_t m_nIndexInAbility; // 0x1154 bool m_bIsHidden; // 0x1158 bool m_bIsDebuff; // 0x1159 bool m_bIsPurgable; // 0x115a bool m_bIsStunDebuff; // 0x115b bool m_bAllowIllusionDuplicate; // 0x115c bool m_bRemoveOnDeath; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: char* m_pszAuraModifier; // 0x1160 int32_t m_nAuraModifierIndex; // 0x1168 int32_t m_nAuraRadius; // 0x116c int32_t m_nAuraSearchTeam; // 0x1170 int32_t m_nAuraSearchType; // 0x1174 int32_t m_nAuraSearchFlags; // 0x1178 bool m_bAuraApplyToCaster; // 0x117c bool m_bAuraApplyToParent; // 0x117d private: [[maybe_unused]] uint8_t __pad117e[0x2]; // 0x117e public: int32_t m_nAttributes; // 0x1180 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: char* m_pszEffectName; // 0x1188 int32_t m_nEffectAttachType; // 0x1190 int32_t m_nPriority; // 0x1194 char* m_pszStatusEffectName; // 0x1198 int32_t m_nStatusEffectPriority; // 0x11a0 int32_t m_nOverrideAnimation; // 0x11a4 int32_t m_nOrbPriority; // 0x11a8 int32_t m_nOrbLabel; // 0x11ac bool m_bOrbIsCastAttack; // 0x11b0 private: [[maybe_unused]] uint8_t __pad11b1[0x3]; // 0x11b1 public: float m_flThinkInterval; // 0x11b4 bool m_bNeedsReParseIfRefreshed; // 0x11b8 private: [[maybe_unused]] uint8_t __pad11b9[0x7]; // 0x11b9 public: char* m_pszModelName; // 0x11c0 char* m_pszOrbProjectileName; // 0x11c8 private: [[maybe_unused]] uint8_t __pad11d0[0x1890]; // 0x11d0 public: uint64_t m_nModifierStatesEnabled; // 0x2a60 uint64_t m_nModifierStatesDisabled; // 0x2a68 KeyValues* m_pOnCreated; // 0x2a70 KeyValues* m_pOnIntervalThink; // 0x2a78 KeyValues* m_pOnDestroy; // 0x2a80 KeyValues* m_pOnAttackStart; // 0x2a88 KeyValues* m_pOnAttack; // 0x2a90 KeyValues* m_pOnAttackLanded; // 0x2a98 KeyValues* m_pOnAttackFailed; // 0x2aa0 KeyValues* m_pOnAttackAllied; // 0x2aa8 KeyValues* m_pOnProjectileDodge; // 0x2ab0 KeyValues* m_pOnOrder; // 0x2ab8 KeyValues* m_pOnUnitMoved; // 0x2ac0 KeyValues* m_pOnAbilityStart; // 0x2ac8 KeyValues* m_pOnAbilityExecuted; // 0x2ad0 KeyValues* m_pOnBreakInvisibility; // 0x2ad8 KeyValues* m_pOnAbilityEndChannel; // 0x2ae0 KeyValues* m_pOnTakeDamage; // 0x2ae8 KeyValues* m_pOnDealDamage; // 0x2af0 KeyValues* m_pOnStateChanged; // 0x2af8 KeyValues* m_pOnAttacked; // 0x2b00 KeyValues* m_pOnDeath; // 0x2b08 KeyValues* m_pOnKill; // 0x2b10 KeyValues* m_pOnRespawn; // 0x2b18 KeyValues* m_pOnSpentMana; // 0x2b20 KeyValues* m_pOnTeleporting; // 0x2b28 KeyValues* m_pOnTeleported; // 0x2b30 KeyValues* m_pOnHealthGained; // 0x2b38 KeyValues* m_pOnManaGained; // 0x2b40 KeyValues* m_pOnHeroKilled; // 0x2b48 KeyValues* m_pOnHealReceived; // 0x2b50 KeyValues* m_pOnAttackFinished; // 0x2b58 KeyValues* m_pOnAttackCancelled; // 0x2b60 }; // Alignment: 0 // Size: 0x598 class CDOTA_Ability_Lua : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1228 class CDOTA_Modifier_Lua : public CDOTA_Buff { public: bool m_bHasCustomTransmitterData; // 0x1220 }; // Alignment: 0 // Size: 0x1228 class CDOTA_Modifier_Lua_Horizontal_Motion : public CDOTA_Modifier_Lua { public: // no members available }; // Alignment: 0 // Size: 0x1228 class CDOTA_Modifier_Lua_Vertical_Motion : public CDOTA_Modifier_Lua { public: // no members available }; // Alignment: 0 // Size: 0x1228 class CDOTA_Modifier_Lua_Motion_Both : public CDOTA_Modifier_Lua { public: // no members available }; // Alignment: 0 // Size: 0x640 class CDOTA_Item_Lua : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Interval_Upgrade : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Mana_Restore : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Crit_Chance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_On_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Disruptor_Thunder_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Disruptor_Thunder_Strike : public CDOTA_Buff { public: float strike_interval; // 0x1138 int32_t radius; // 0x113c int32_t strike_damage; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Disruptor_Thunder_Strike_On_Attack : public CDOTA_Buff { public: int32_t strike_chance; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Disruptor_Thunder_Strike_Slow : public CDOTA_Buff { public: int32_t slow_amount; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Cast_AoE : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Hit_On_Arrival : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Travel_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Aghsfort_Disruptor_Glimpse : public CDOTABaseAbility { public: int32_t m_nNPCSpawnedID; // 0x560 }; // Alignment: 1 // Size: 0x11a8 class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse : public CDOTA_Buff { public: Vector m_PositionIndex[9]; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Attack_Buff : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Thinker : public CDOTA_Buff { public: Vector m_vStartLoc; // 0x1138 CHandle< CBaseEntity > m_hEntity; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Travel_Damage : public CDOTA_Buff { public: float damage; // 0x1138 int32_t max_ticks; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Instant_Setup : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_DoubleRing : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Allied_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Allied_AttackBuff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Disruptor_KineticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Disruptor_KineticFieldThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float formation_time; // 0x113c bool m_bActive; // 0x1140 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Disruptor_KineticField : public CDOTA_Buff { public: int32_t radius; // 0x1138 Vector m_vOriginLoc; // 0x113c bool m_bCanBeAffected; // 0x1148 bool m_bTruesight; // 0x1149 private: [[maybe_unused]] uint8_t __pad114a[0x2]; // 0x114a public: int32_t intellect_bonus; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Kinetic_Field_On_Cast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Crits_On_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Damage_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Disruptor_StaticStorm : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Disruptor_StaticStormThinker : public CDOTA_Buff { public: int32_t m_nCurrentPulse; // 0x1138 int32_t radius; // 0x113c int32_t damage_max; // 0x1140 int32_t pulses; // 0x1144 float duration; // 0x1148 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Disruptor_StaticStorm : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 int32_t movement_speed_reduction; // 0x113c int32_t attack_speed_reduction; // 0x1140 bool m_bHasScepter; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Disruptor_StaticStormMute : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Disruptor_StaticStorm_Damage_Reduction : public CDOTA_Buff { public: int32_t damage_reduction_pct; // 0x1138 int32_t move_slow_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Disruptor_ThunderStrike_Int_Increase : public CDOTA_Buff { public: int32_t int_increase_amount; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Special_Disruptor_ThunderStrike_Int_Increase_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Magnataur_Horn_Toss : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Aghsfort_Magnataur_Horn_Toss : public CDOTA_Buff { public: float air_duration; // 0x1138 int32_t air_height; // 0x113c int32_t travel_distance; // 0x1140 Vector m_vDestination; // 0x1144 float m_flStartZ; // 0x1150 float m_flCurTime; // 0x1154 float m_flJumpDuration; // 0x1158 float m_flJumpHeight; // 0x115c Vector m_vTargetHorizontalDirection; // 0x1160 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Magnataur_Horn_Toss_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x570 class CDOTA_Ability_Aghsfort_Magnataur_Shockwave : public CDOTABaseAbility { public: CUtlVector< ParticleIndex_t > m_nFXIndices; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Multishot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Damage_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Damage_Increase : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Magnataur_Shockwave_Damage_Reduction : public CDOTA_Buff { public: int32_t damage_reduction_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Boomerang : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Magnataur_Shockwave : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Magnataur_Shockwave_Pull : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float pull_duration; // 0x114c float effective_distance; // 0x1150 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Aghsfort_Magnataur_ReversePolarity : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 Vector m_vPullLocation; // 0x554 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Magnataur_Empower : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Magnataur_Empower : public CDOTA_Buff { public: int32_t bonus_damage_pct; // 0x1138 float cleave_damage_pct; // 0x113c int32_t cleave_starting_width; // 0x1140 int32_t cleave_ending_width; // 0x1144 int32_t cleave_distance; // 0x1148 float splash_damage_pct; // 0x114c int32_t splash_radius; // 0x1150 float self_multiplier; // 0x1154 int32_t lifesteal_pct; // 0x1158 GameTime_t m_fLastShockwaveProcTime; // 0x115c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_All_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_ShockwaveOnAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x578 class CDOTA_Ability_Aghsfort_Magnataur_Skewer : public CDOTABaseAbility { public: int32_t skewer_radius; // 0x550 int32_t skewer_speed; // 0x554 int32_t range; // 0x558 int32_t tree_radius; // 0x55c int32_t m_nProjectileID; // 0x560 int32_t m_nVisibleTargetCount; // 0x564 Vector m_vSkewerDirection; // 0x568 int32_t m_nTargetsHit; // 0x574 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Impact : public CDOTA_Buff { public: float slow_duration; // 0x1138 int32_t skewer_damage; // 0x113c Vector m_vDirection; // 0x1140 float m_flEndTime; // 0x114c float m_flCurTime; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Slow : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 }; // Alignment: 8 // Size: 0x570 class CDOTA_Ability_Aghsfort_Magnataur_FriendlySkewer : public CDOTABaseAbility { public: int32_t skewer_radius; // 0x550 int32_t skewer_speed; // 0x554 int32_t max_targets; // 0x558 int32_t range; // 0x55c int32_t tree_radius; // 0x560 int32_t affects_creeps; // 0x564 int32_t m_nProjectileID; // 0x568 int32_t m_nTargetsHit; // 0x56c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Magnataur_Skewer_Bonus_Strength : public CDOTA_Buff { public: int32_t strength_gain; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_OriginalScepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_BonusStrength : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_Shockwave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_HornToss : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Radius : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Allies_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Steroid : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity_Steroid : public CDOTA_Buff { public: int32_t move_speed_percent; // 0x1138 int32_t attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Polarity_Dummy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Magnataur_Reverse_Polarity_Polarity_Dummy : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Aghsfort_Special_Magnataur_ReversePolarity_Polarity : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 Vector m_vPullLocation; // 0x554 CDOTABaseAbility* pAbilityPrimaryPolarity; // 0x560 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_No_Secondary_Dagger_Restriction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_On_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_AutoDagger : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PhantomAssassin_Stifling_Dagger : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PhantomAssassin_StiflingDagger_Caster : public CDOTA_Buff { public: int32_t base_damage; // 0x1138 int32_t attack_factor; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PhantomAssassin_StiflingDagger : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_On_Attack : public CDOTA_Buff { public: int32_t strike_chance; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_AutoDagger : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Buff_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Mastery : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Damage_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PhantomAssassin_PhantomStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PhantomAssassin_PhantomStrike : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_evasion; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_PhantomStrike_Damage_Reduction : public CDOTA_Buff { public: int32_t damage_reduction_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Regen_When_Active : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Dagger_On_End : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Immediate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PhantomAssassin_Blur : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PhantomAssassin_Blur : public CDOTA_Buff { public: int32_t bonus_evasion; // 0x1138 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_PhantomAssassin_BlurActive : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 float fade_duration; // 0x114c bool m_bDestroyNext; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PhantomAssassin_CoupdeGrace : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PhantomAssassin_CoupdeGrace : public CDOTA_Buff { public: int32_t crit_bonus; // 0x1138 int32_t crit_chance; // 0x113c bool crit_active; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t m_nAttackRecord; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_PhantomAssassin_MarkedForDeath : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_MarksTarget : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_Execute : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_KillsRefresh : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_BloodyDebuff : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_PhantomAssassin_CoupDeGrace_BloodyDebuff : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splitshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splitshot : public CDOTA_Buff { public: int32_t damage_modifier; // 0x1138 int32_t split_shot_bonus_range; // 0x113c int32_t arrow_count; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_DoubleAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_DoubleAttack : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_iAttacksRemaining; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_NoMana : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splash_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Aghsfort_Winter_Wyvern_Arctic_Burn : public CDOTABaseAbility { public: CUtlVector< CEntityIndex > m_BurnedTargets; // 0x550 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Frost_Attack : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Flight : public CDOTA_Buff { public: float attack_point; // 0x1138 int32_t attack_range_bonus; // 0x113c int32_t projectile_speed_bonus; // 0x1140 int32_t night_vision_bonus; // 0x1144 CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Slow : public CDOTA_Buff { public: float damage_per_second; // 0x1138 int32_t move_slow; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Main_Target_Hit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Vacuum : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Aghsfort_Winter_Wyvern_Splinter_Blast : public CDOTABaseAbility { public: int32_t splinter_damage; // 0x558 CHandle< CBaseEntity > m_hMainTarget; // 0x55c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Splinter_Blast_Slow : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Vacuum : public CDOTA_Buff { public: float pull_speed; // 0x1138 Vector vPullLocation; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Blast_On_End : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Magic_Damage_Block : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Winter_Wyvern_Cold_Embrace : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Cold_Embrace : public CDOTA_Buff { public: int32_t m_nOriginalAttackCapability; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x8]; // 0x113c public: bool m_bDidBlast; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t heal_additive; // 0x1148 float heal_percentage; // 0x114c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Magic_Damage_Block : public CDOTA_Buff { public: int32_t barrier_amount; // 0x1138 int32_t barrier_block; // 0x113c int32_t m_nMaxMovementSpeed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Transfer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Damage_Amp : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Heal_On_Death : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Winter_Wyvern_Winters_Curse : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse_Kill_Credit : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse_Aura : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nAlliesTaunted; // 0x113c bool m_bRelicTriggered; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t radius; // 0x1144 int32_t damage_amplification; // 0x1148 int32_t damage_reduction; // 0x114c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 CHandle< CBaseEntity > m_hDesiredTarget; // 0x113c int32_t damage_reduction; // 0x1140 int32_t bonus_attack_speed; // 0x1144 }; // Alignment: 11 // Size: 0x5a0 class CDOTA_Ability_Aghsfort_Snapfire_MortimerKisses : public CDOTABaseAbility { public: int32_t m_nDamagePerProjectile; // 0x550 int32_t damage_per_impact; // 0x554 int32_t impact_radius; // 0x558 int32_t projectile_vision; // 0x55c int32_t m_nFragmentationImpactRadius; // 0x560 int32_t firetrail_radius; // 0x564 int32_t firetrail_damage; // 0x568 int32_t firetrail_tick_interval; // 0x56c CUtlVector< Vector > m_vFirePoolLocations; // 0x570 float m_fNextDamageTick; // 0x588 Vector m_vLastFirePoolLoc; // 0x58c }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Aghsfort_Snapfire_Scatterblast : public CDOTABaseAbility { public: int32_t damage; // 0x550 float debuff_duration; // 0x554 int32_t point_blank_range; // 0x558 float point_blank_dmg_bonus_pct; // 0x55c int32_t blast_width_end; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Snapfire_Scatterblast_Slow : public CDOTA_Buff { public: bool m_bIsPointBlank; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t movement_slow_pct; // 0x113c int32_t attack_slow_pct; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Snapfire_Scatterblast_Disarm : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Aghsfort_Snapfire_FiresnapCookie : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x8]; // 0x554 public: int32_t projectile_speed; // 0x55c float pre_hop_duration; // 0x560 float cast_on_ally_gesture_time; // 0x564 }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_PreHop : public CDOTA_Buff { public: float jump_duration; // 0x1138 bool m_bMovesHorizontal; // 0x113c bool m_bSecondaryCookie; // 0x113d }; // Alignment: 15 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_ShortHop : public CDOTA_Buff { public: float jump_duration; // 0x1138 int32_t jump_height; // 0x113c int32_t jump_horizontal_distance; // 0x1140 float pre_land_anim_time; // 0x1144 float landing_gesture_duration; // 0x1148 int32_t impact_radius; // 0x114c int32_t impact_damage; // 0x1150 float impact_stun_duration; // 0x1154 float m_flStartZ; // 0x1158 float m_flCurTime; // 0x115c float m_flJumpDuration; // 0x1160 float m_flJumpDistance; // 0x1164 float m_flJumpHeight; // 0x1168 Vector m_vTargetHorizontalDirection; // 0x116c bool m_bSecondaryCookie; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_AllyFlailAnim : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_LandingGesture : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Snapfire_FiresnapCookie_AlliedBuff : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 int32_t bonus_attack_damage; // 0x113c }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_Aghsfort_Snapfire_LilShredder : public CDOTABaseAbility { public: int32_t m_iAttackIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< sLilShredderBounceInfo > m_BounceInfo; // 0x558 }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Buff : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 int32_t m_nIsActive; // 0x1158 bool m_bHasAttackTalent; // 0x115c private: [[maybe_unused]] uint8_t __pad115d[0x3]; // 0x115d public: int32_t attack_range_bonus; // 0x1160 int32_t buffed_attacks; // 0x1164 float base_attack_time; // 0x1168 int32_t attack_speed_bonus; // 0x116c float armor_duration; // 0x1170 int32_t damage; // 0x1174 int32_t bounce_range; // 0x1178 int32_t bounces; // 0x117c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Attack : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Debuff : public CDOTA_Buff { public: float armor_reduction_per_attack; // 0x1138 }; // Alignment: 16 // Size: 0x1188 class CDOTA_Modifier_Aghsfort_Snapfire_MortimerKisses : public CDOTA_Buff { public: float m_fIntervalPerRocket; // 0x1138 float m_flFacingTarget; // 0x113c ParticleIndex_t m_nBeamFXIndex; // 0x1140 CHandle< CBaseEntity > m_hBeamEnd; // 0x1144 float m_flCurDistance; // 0x1148 Vector m_vAimTarget; // 0x114c float m_fLastTurnAmount; // 0x1158 int32_t m_nProjectilesLaunched; // 0x115c bool m_bDestroyOnNextThink; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_nProjectilesToLaunch; // 0x1164 bool m_bHasProjectileTalent; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0xb]; // 0x1169 public: int32_t projectile_count; // 0x1174 int32_t projectile_vision; // 0x1178 float turn_rate; // 0x117c int32_t min_range; // 0x1180 float delay_after_last_projectile; // 0x1184 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Snapfire_MortimerKisses_VisionSource : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Snapfire_Magma_Thinker : public CDOTA_Buff { public: float burn_interval; // 0x1138 int32_t impact_radius; // 0x113c int32_t move_slow_pct; // 0x1140 float burn_linger_duration; // 0x1144 ParticleIndex_t m_nPathEffectIndex; // 0x1148 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Snapfire_Magma_Burn_Slow : public CDOTA_Buff { public: int32_t m_nMoveSlowPct; // 0x1138 float m_fBurnDamagePerTick; // 0x113c int32_t move_slow_pct; // 0x1140 float burn_interval; // 0x1144 int32_t burn_damage; // 0x1148 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Aghsfort_Snapfire_GobbleUp : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hGobbledUnit; // 0x550 float max_time_in_belly; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Snapfire_GobbleUp_Creep : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Snapfire_GobbleUp_BellyHasUnit : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hGobbledUnit; // 0x1138 float max_time_in_belly; // 0x113c }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Aghsfort_Snapfire_SpitCreep : public CDOTABaseAbility { public: int32_t m_nDamagePerProjectile; // 0x550 CHandle< CBaseEntity > m_hGobbledUnit; // 0x554 int32_t m_nProjectileID; // 0x558 }; // Alignment: 24 // Size: 0x11a8 class CDOTA_Modifier_Aghsfort_Snapfire_SpitCreep_ArcingUnit : public CDOTA_Buff { public: float m_flPredictedTotalTime; // 0x1138 Vector m_vStartPosition; // 0x113c float m_flCurrentTimeHoriz; // 0x1148 float m_flCurrentTimeVert; // 0x114c bool m_bHorizontalMotionInterrupted; // 0x1150 bool m_bDamageApplied; // 0x1151 bool m_bTargetTeleported; // 0x1152 private: [[maybe_unused]] uint8_t __pad1153[0x1]; // 0x1153 public: Vector m_vHorizontalVelocity; // 0x1154 Vector m_vLastKnownTargetPosition; // 0x1160 float m_flInitialVelocityZ; // 0x116c float m_fClampedProjectileSpeed; // 0x1170 ParticleIndex_t m_nFXIndex; // 0x1174 float m_fAcceleration; // 0x1178 int32_t min_range; // 0x117c float min_lob_travel_time; // 0x1180 float max_lob_travel_time; // 0x1184 int32_t impact_radius; // 0x1188 int32_t projectile_vision; // 0x118c float stun_duration; // 0x1190 int32_t impact_damage; // 0x1194 float min_height_above_lowest; // 0x1198 float min_height_above_highest; // 0x119c float min_acceleration; // 0x11a0 float max_acceleration; // 0x11a4 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Double_Barrel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_FullRange_PointBlank : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Barrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_MultiCookie : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_EnemyTarget : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_Allied_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_Explosives : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_AllyCast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_Bouncing_Bullets : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Fragmentation : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Incoming_Damage_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Fire_Trail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Autoattack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Snapfire_MortimerKisses_Autoattack : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Snapfire_MortimerKisses_Incoming_Damage_Reduction : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 15 // Size: 0x650 class CDOTA_Ability_Aghsfort_Tusk_Snowball_Dummy : public CDOTABaseAbility { public: int32_t snowball_radius; // 0x550 int32_t snowball_grow_rate; // 0x554 int32_t snowball_damage; // 0x558 int32_t snowball_damage_bonus; // 0x55c float stun_duration; // 0x560 int32_t bonus_damage; // 0x564 float bonus_stun; // 0x568 int32_t snowball_speed; // 0x56c float snowball_duration; // 0x570 bool m_bIsExpired; // 0x574 private: [[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575 public: Vector m_vProjectileLocation; // 0x578 private: [[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584 public: CountdownTimer ctSnowball; // 0x588 CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x5a0 ParticleIndex_t m_nFXIndex; // 0x5b8 CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5bc }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Tusk_IceShards_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 12 // Size: 0x5a8 class CDOTA_Ability_Aghsfort_Tusk_IceShards : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 int32_t shard_width; // 0x554 int32_t shard_damage; // 0x558 int32_t shard_count; // 0x55c float shard_speed; // 0x560 float shard_duration; // 0x564 float shard_angle_step; // 0x568 int32_t shard_distance; // 0x56c int32_t secondary_damage_pct; // 0x570 Vector m_vSpawnOrigin; // 0x574 Vector m_vDirection; // 0x580 private: [[maybe_unused]] uint8_t __pad058c[0xc]; // 0x58c public: CDOTABaseAbility* m_pIceShardsStop; // 0x598 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Tusk_IceShard : public CDOTA_Buff { public: Vector m_vPos; // 0x1138 int32_t radius; // 0x1144 float damage; // 0x1148 float explosion_interval; // 0x114c }; // Alignment: 20 // Size: 0x670 class CDOTA_Ability_Aghsfort_Tusk_Snowball : public CDOTABaseAbility { public: int32_t snowball_windup_radius; // 0x560 int32_t snowball_radius; // 0x564 int32_t snowball_grow_rate; // 0x568 int32_t snowball_damage; // 0x56c int32_t snowball_damage_bonus; // 0x570 float stun_duration; // 0x574 int32_t bonus_damage; // 0x578 float bonus_stun; // 0x57c int32_t snowball_speed; // 0x580 float snowball_duration; // 0x584 Vector m_vProjectileLocation; // 0x588 private: [[maybe_unused]] uint8_t __pad0594[0x4]; // 0x594 public: CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x598 ParticleIndex_t m_nFXIndex; // 0x5b0 private: [[maybe_unused]] uint8_t __pad05b4[0x4]; // 0x5b4 public: CountdownTimer ctSnowball; // 0x5b8 bool m_bSpeakAlly; // 0x5d0 bool m_bIsExpired; // 0x5d1 bool m_bInWindup; // 0x5d2 private: [[maybe_unused]] uint8_t __pad05d3[0x1]; // 0x5d3 public: CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5d4 int32_t m_nContainedValidUnits; // 0x5d8 bool m_bEndingSnowball; // 0x5dc }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Target : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Tusk_Launch_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Visible : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Movement : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Movement_Friendly : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Tusk_WalrusPunch : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch : public CDOTA_Buff { public: int32_t crit_multiplier; // 0x1138 float air_time; // 0x113c float slow_duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x1150 bool m_bWalrusPunch; // 0x1154 bool m_bPunchKill; // 0x1155 private: [[maybe_unused]] uint8_t __pad1156[0x2]; // 0x1156 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x1170 int32_t m_nAttackRecord; // 0x1174 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 12 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch_AirTime : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float flAirTime; // 0x1164 float m_flEndTime; // 0x1168 float m_fHorizontalDistance; // 0x116c float m_fVerticalDistance; // 0x1170 float m_fDamage; // 0x1174 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Tusk_Tag_Team : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 float slow_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Circle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Explode : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Secondary : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Tusk_Snowball_SpellLifesteal : public CDOTA_Buff { public: float spell_lifesteal_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_End_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_Global : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Toggle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_DeathCooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Global : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Reset : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Land_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Wallop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Tusk_Ice_Shards_Explode_Dummy : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ursa_Overpower : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ursa_Fury_Swipes : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ursa_Fury_Swipes : public CDOTA_Buff { public: int32_t damage_per_stack; // 0x1138 float bonus_reset_time; // 0x113c float bonus_reset_time_roshan; // 0x1140 int32_t max_swipe_stack; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ursa_Fury_Swipes_Damage_Increase : public CDOTA_Buff { public: int32_t damage_per_stack; // 0x1138 int32_t m_nArmorReductionPerStack; // 0x113c int32_t m_nLifestealPerStack; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ursa_Earthshock : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Ursa_Earthshock_Move : public CDOTA_Buff { public: float hop_duration; // 0x1138 int32_t hop_height; // 0x113c int32_t hop_distance; // 0x1140 int32_t impact_damage; // 0x1144 float m_flStartZ; // 0x1148 float m_flCurTime; // 0x114c float m_flJumpDuration; // 0x1150 float m_flJumpHeight; // 0x1154 Vector m_vTargetHorizontalDirection; // 0x1158 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ursa_Overpower : public CDOTA_Buff { public: int32_t attack_speed_bonus_pct; // 0x1138 int32_t m_nEarthshockAttacks; // 0x113c int32_t m_nOverpowerCritMultiplier; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Ursa_Earthshock : public CDOTA_Buff { public: int32_t m_nMissChance; // 0x1138 bool m_bAddOverpower; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float m_flOverpowerDuration; // 0x1140 int32_t m_nNumOverpowerAttacks; // 0x1144 int32_t movement_slow; // 0x1148 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Ursa_Earthshock_DeepInvis : public CDOTA_Modifier_Invisible { public: CHandle< CBaseEntity > m_hVisibleEntity; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Ursa_Earthshock_DeepInvis_Visual : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1170 class CDOTA_Modifier_Aghsfort_Special_Ursa_Earthshock_Knockback : public CDOTA_Modifier_Knockback { public: float value3; // 0x1168 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Ursa_Overpower_Evasion : public CDOTA_Buff { public: int32_t value2; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Ursa_Overpower_Taunt : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 bool m_bDidSetAttackTarget; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Ursa_Overpower_Taunt_Armor : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Ursa_Enrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Ursa_Enrage : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t status_resistance; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Ursa_Enrage_Magic_Immunity : public CDOTA_Modifier_MagicImmune { public: int32_t m_nModelScale; // 0x1138 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ursa_Enrage_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Ursa_Enrage_Armor : public CDOTA_Buff { public: int32_t value2; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Ursa_Enrage_AttackSpeed : public CDOTA_Buff { public: int32_t value2; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_Invis : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_ApplyFurySwipes : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_OverpowerStack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_MissChance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Evasion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Taunt : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Cleave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_ArmorReduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_UrsaMinor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Magic_Immunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Fear : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Armor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_AttackSpeed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Earthshock : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x5c8 class CDOTA_Ability_Aghsfort_Mars_Spear : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 CUtlVector< int32 > m_vecProjectileHandles; // 0x568 private: [[maybe_unused]] uint8_t __pad0580[0x8]; // 0x580 public: int32_t damage; // 0x588 private: [[maybe_unused]] uint8_t __pad058c[0x4]; // 0x58c public: CUtlVector< CHandle< CBaseEntity > > hImpaledTargetList; // 0x590 int32_t m_nTargetsImpaled; // 0x5a8 int32_t m_nMaxImpaleTargets; // 0x5ac int32_t m_nBurningTrailRadius; // 0x5b0 Vector m_vLastTrailThinkerLocation; // 0x5b4 bool bHasStartedBurning; // 0x5c0 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_Spear_Impale : public CDOTA_Buff { public: int32_t m_nProjectileHandle; // 0x1138 bool m_bLatched; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Mars_Spear_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Mars_ArenaOfBlood : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Thinker : public CDOTA_Buff { public: float radius; // 0x1138 float formation_time; // 0x113c float m_flInitialZ; // 0x1140 float m_flFinalZ; // 0x1144 private: [[maybe_unused]] uint8_t __pad1148[0x10]; // 0x1148 public: bool m_bCaughtOne; // 0x1158 bool m_bKilledOne; // 0x1159 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_AnimationAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Animation : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_BuffAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Buff : public CDOTA_Buff { public: int32_t health_regen; // 0x1138 int32_t attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 }; // Alignment: 7 // Size: 0x11a0 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t width; // 0x113c int32_t spear_damage; // 0x1140 int32_t spear_distance_from_wall; // 0x1144 float spear_attack_interval; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x34]; // 0x114c public: int32_t m_hObstruction; // 0x1180 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: CUtlVector< Vector > m_vecAvoidLocations; // 0x1188 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Spear : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Leash : public CDOTA_Buff { public: int32_t radius; // 0x1138 float width; // 0x113c Vector m_vOriginLoc; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Mars_GodsRebuke : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_Gods_Rebuke : public CDOTA_Buff { public: int32_t knockback_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_GodsRebuke_Crit : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Mars_Bulwark : public CDOTABaseAbility { public: float active_duration; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Mars_Bulwark_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Mars_Bulwark : public CDOTA_Buff { public: float physical_damage_reduction; // 0x1138 float physical_damage_reduction_side; // 0x113c float forward_angle; // 0x1140 float side_angle; // 0x1144 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Mars_Bulwark_Active : public CDOTA_Buff { public: int32_t redirect_chance; // 0x1138 int32_t redirect_range; // 0x113c float forward_angle; // 0x1140 float side_angle; // 0x1144 int32_t redirect_speed_penatly; // 0x1148 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_Mars_Spear_Burning_Trail_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 int32_t path_radius; // 0x1144 float linger_duration; // 0x1148 float flDamage; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Mars_Spear_Burning_Trail_Burn : public CDOTA_Buff { public: float flDamage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Mars_Gods_Rebuke_Strength_Buff : public CDOTA_Buff { public: int32_t strength_gain; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Spear_MultiSkewer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Spear_ImpaleExplosion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Spear_BurningTrail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_FullCircle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_Strength_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Counter_Rebuke : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Healing : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Return : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Spears : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Soldiers : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Fear : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Global : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Attack_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Outside_Perimeter : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Mars_Bulwark_Spears : public CDOTA_Buff { public: int32_t stack_limit; // 0x1138 float stack_interval; // 0x113c ParticleIndex_t m_nFxIndexB; // 0x1140 int32_t iCur_stack; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Mars_Bulwark_Soldier_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Aghsfort_Weaver_TheSwarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Weaver_Swarm : public CDOTA_Buff { public: int32_t m_iMaxDist; // 0x1138 int32_t m_iAttackCount; // 0x113c int32_t destroy_attacks; // 0x1140 Vector m_vDirection; // 0x1144 Vector m_vStartLoc; // 0x1150 CHandle< CBaseEntity > m_hAttachTarget; // 0x115c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Weaver_Swarm_Debuff : public CDOTA_Buff { public: float armor_reduction; // 0x1138 int32_t damage; // 0x113c int32_t damage_share_percentage; // 0x1140 float m_flCurrentArmorReduction; // 0x1144 float flTotalDamage; // 0x1148 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Aghsfort_Weaver_Shukuchi : public CDOTABaseAbility { public: float duration; // 0x550 int32_t radius; // 0x554 int32_t damage; // 0x558 float fade_time; // 0x55c }; // Alignment: 7 // Size: 0x1188 class CDOTA_Modifier_Aghsfort_Weaver_Shukuchi : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 int32_t damage; // 0x114c int32_t speed; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1158 bool bHasStartedBurning; // 0x1170 private: [[maybe_unused]] uint8_t __pad1171[0x3]; // 0x1171 public: int32_t m_nBurningTrailRadius; // 0x1174 Vector m_vLastTrailThinkerLocation; // 0x1178 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Weaver_GeminateAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x11b0 class CDOTA_Modifier_Aghsfort_Weaver_GeminateAttack : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_iAttacksRemaining; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Weaver_GeminateAttack_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Aghsfort_Weaver_TimeLapse : public CDOTABaseAbility { public: int32_t m_nNPCSpawnedID; // 0x560 }; // Alignment: 4 // Size: 0x1218 class CDOTA_Modifier_Aghsfort_Weaver_TimeLapse : public CDOTA_Buff { public: Vector m_PositionIndex[11]; // 0x1138 float m_flLife[11]; // 0x11bc float m_flMana[11]; // 0x11e8 bool m_bHasValidHistory; // 0x1214 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_Weaver_Shukuchi_Trail_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 int32_t path_radius; // 0x1144 float linger_duration; // 0x1148 float flDamage; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Weaver_Shukuchi_Trail_Burn : public CDOTA_Buff { public: float flDamage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Explosion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Damage_Transfer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Splitshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Applies_Swarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Pull : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Trail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Attack_On_Completion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Swarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Greater_Invisibility : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Restoration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Explosion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_PoisonAttackExplode : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_PoisonAttackSpread : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_PoisonSnap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Viper_PoisonAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Viper_PoisonAttack : public CDOTA_Buff { public: float duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Viper_PoisonAttack_Slow : public CDOTA_Buff { public: float damage; // 0x1138 int32_t movement_speed; // 0x113c int32_t magic_resistance; // 0x1140 float m_flAccumDamage; // 0x1144 float m_flPoisonSnapCounter; // 0x1148 int32_t m_nPoisonSnapThreshold; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Viper_NethertoxinCharges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Viper_NethertoxinLifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Viper_Nethertoxin_Persist : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Viper_Nethertoxin : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Viper_Nethertoxin_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Viper_Nethertoxin : public CDOTA_Buff { public: int32_t min_damage; // 0x1138 int32_t max_damage; // 0x113c float max_duration; // 0x1140 float m_flDamageInterval; // 0x1144 float m_flTimeIncrement; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Viper_NethertoxinMute : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkinFlying : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkinSpeedSteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkin_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Flying : public CDOTA_Buff { public: int32_t m_nRadius; // 0x1138 float duration; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Viper_CorrosiveSkin : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin : public CDOTA_Buff { public: int32_t bonus_magic_resistance; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Speed_Steal : public CDOTA_Buff { public: float m_flFactor; // 0x1138 int32_t bonus_attack_speed; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Slow : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_ViperStrikeAllies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_ChainViperStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_ChanneledViperStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Viper_PeriodicViperStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Aghsfort_Viper_Aghsfort_ViperStrike : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 int32_t m_nTargetTeam; // 0x554 float m_flNextViperStrikeTime; // 0x558 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Viper_ViperStrike_Slow : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t damage; // 0x1140 bool m_bTargetedAlly; // 0x1144 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Special_Viper_Periodic_Strike : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t radius; // 0x113c int32_t m_nTargetTeam; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_hAlreadyHit; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_VoidSpiritBoss_Passive : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x590 class CDOTA_Ability_AghsFort_VoidSpiritBoss_AetherRemnant : public CDOTABaseAbility { public: ParticleIndex_t m_nFXPreview; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x8]; // 0x554 public: Vector m_vDashPosition; // 0x55c Vector m_vFacePosition; // 0x568 Vector m_vEndpoint; // 0x574 int32_t start_radius; // 0x580 int32_t end_radius; // 0x584 int32_t remnant_watch_distance; // 0x588 int32_t projectile_speed; // 0x58c }; // Alignment: 11 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_Unit : public CDOTA_Buff { public: Vector m_vFacingDir; // 0x1138 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_hWatchPathThinkers; // 0x1148 ParticleIndex_t m_nBeamFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< int32 > m_nViewerIDs; // 0x1168 int32_t remnant_watch_distance; // 0x1180 int32_t remnant_watch_radius; // 0x1184 float duration; // 0x1188 int32_t watch_path_vision_radius; // 0x118c int32_t impact_damage; // 0x1190 float pull_duration; // 0x1194 float activation_delay; // 0x1198 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_WatchThinker : public CDOTA_Buff { public: int32_t remnant_watch_radius; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_Pull : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 PlayerID_t m_nPlayerID; // 0x113c float m_fMovementSpeed; // 0x1140 CHandle< CDOTA_BaseNPC > m_hPullTarget; // 0x1144 float think_interval; // 0x1148 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnantThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 Vector m_vFacingDir; // 0x113c CHandle< CBaseEntity > m_hRemnant; // 0x1148 bool m_bTriggered; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_flCurThink; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnantUnit_Truesight : public CDOTA_Buff { public: int32_t m_nRadius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 10 // Size: 0x590 class CDOTA_Ability_AghsFort_VoidSpiritBoss_AstralStep : public CDOTABaseAbility { public: ParticleIndex_t m_nFXPreview; // 0x550 ParticleIndex_t m_nFXDestinationPreview; // 0x554 Vector m_vStartPos; // 0x558 Vector m_vDestination; // 0x564 Vector m_vDirection; // 0x570 int32_t radius; // 0x57c int32_t min_travel_distance; // 0x580 int32_t max_travel_distance; // 0x584 float debuff_duration; // 0x588 float pop_damage_delay; // 0x58c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_Debuff : public CDOTA_Buff { public: ParticleIndex_t m_nFXStackIndex; // 0x1138 int32_t movement_slow_pct; // 0x113c int32_t pop_damage; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_Caster : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_VoidSpiritBoss_Dissimilate : public CDOTABaseAbility { public: ParticleIndex_t m_nFXPreview; // 0x550 float phase_duration; // 0x554 }; // Alignment: 19 // Size: 0x11d8 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Dissimilate_Phase : public CDOTA_Buff { public: Vector m_vFirstPortalPos; // 0x1138 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< Vector > m_vecDestinations; // 0x1148 CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1160 CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1178 int32_t m_nCurrentDestinationIndex; // 0x1190 int32_t m_nClosestIndexPosToClick; // 0x1194 int32_t m_nPortalHeightOffset; // 0x1198 private: [[maybe_unused]] uint8_t __pad119c[0x4]; // 0x119c public: char* m_szAlliesPortalFX; // 0x11a0 char* m_szEnemiesPortalFX; // 0x11a8 int32_t m_nPortalRadius; // 0x11b0 int32_t m_nPortalPadding; // 0x11b4 int32_t m_nFinalImpactDamageRadius; // 0x11b8 int32_t m_nFinalImpactFXRadius; // 0x11bc int32_t destination_fx_radius; // 0x11c0 int32_t damage_radius; // 0x11c4 int32_t portals_per_ring; // 0x11c8 int32_t angle_per_ring_portal; // 0x11cc int32_t first_ring_distance_offset; // 0x11d0 float debuff_duration; // 0x11d4 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Dissimilate_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_ResonantPulse_PhysicalBuff : public CDOTA_Buff { public: int32_t base_absorb_amount; // 0x1138 int32_t m_nAbsorbRemaining; // 0x113c }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_AghsFort_VoidSpiritBoss_ResonantPulse : public CDOTABaseAbility { public: ParticleIndex_t m_nFXPreview; // 0x550 bool m_bGrantedScepterCharges; // 0x554 private: [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 public: float buff_duration; // 0x558 int32_t base_absorb_amount; // 0x55c int32_t absorb_per_hero_hit; // 0x560 }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_AghsFort_VoidSpiritBoss_ResonantPulse_Ring : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1148 int32_t speed; // 0x1160 int32_t radius; // 0x1164 int32_t damage; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Sniper_Shrapnel : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float duration; // 0x113c float damage_delay; // 0x1140 int32_t m_nShrapnelPct; // 0x1144 bool m_bExploded; // 0x1148 }; // Alignment: 0 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Sniper_TakeAim_Artillery_Thinker : public CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Thinker { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Slow : public CDOTA_Buff { public: float m_fAccumulatedDamage; // 0x1138 int32_t shrapnel_damage; // 0x113c int32_t slow_movement_speed; // 0x1140 int32_t miss_chance; // 0x1144 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Sniper_TakeAim_Artillery_Slow : public CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Slow { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_AttackSpeed : public CDOTA_Buff { public: int32_t value; // 0x1138 float value2; // 0x113c int32_t m_nAttackSpeedBonus; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_AttackSpeed_Decrementer : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Sniper_Headshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1188 class CDOTA_Modifier_AghsFort_Sniper_Headshot : public CDOTA_Buff { public: int32_t proc_chance; // 0x1138 float slow_duration; // 0x113c int32_t damage; // 0x1140 int32_t knockback_distance; // 0x1144 GameTime_t m_fLastStunProcTime; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< int16 > m_vHeadshotRecords; // 0x1150 CUtlVector< int16 > m_vHeadshotAssassinateRecords; // 0x1168 int32_t m_nCritPct; // 0x1180 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Sniper_Shotgun : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Sniper_Headshot_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t slow_vs_considered_hero; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Sniper_TakeAim : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Sniper_TakeAim : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 int32_t active_attack_range_multiplier; // 0x113c }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Sniper_TakeAim_Bonus : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t m_nAttackSpeedPerAttack; // 0x113c int32_t m_nShrapnelPct; // 0x1140 bool m_bNoCollision; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CUtlVector< CHandle< CBaseEntity > > m_vecArtilleryEnemies; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Sniper_TakeAim_ArmorReduction : public CDOTA_Buff { public: int32_t value2; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Sniper_TakeAim_RapidFire : public CDOTA_Buff { public: int32_t value2; // 0x1138 int32_t value3; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Sniper_TakeAim_AOE_Marked : public CDOTA_Buff { public: // no members available }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_AghsFort_Sniper_TakeAim_HopBackwards : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bDamageApplied; // 0x115d bool m_bTargetTeleported; // 0x115e private: [[maybe_unused]] uint8_t __pad115f[0x1]; // 0x115f public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 9 // Size: 0x578 class CDOTA_Ability_AghsFort_Sniper_Assassinate : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x558 ParticleIndex_t m_iIndex; // 0x55c bool m_bHasBuckshotAbility; // 0x560 bool m_bInBuckshot; // 0x561 private: [[maybe_unused]] uint8_t __pad0562[0x2]; // 0x562 public: int32_t m_nScatterRange; // 0x564 int32_t m_nScatterWidth; // 0x568 int32_t m_nBuckshotDamagePct; // 0x56c int32_t m_nDamageType; // 0x570 int32_t damage; // 0x574 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Sniper_Assassinate : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Special_Sniper_Assassinate_Killshot : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_Bombs : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_AttackSpeed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_MissChance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_MoveSpeed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Crits : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Stuns : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_SelfPurge : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_Shrapnel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_AOE : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_HopBackwards : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_ArmorReduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_RapidFire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_Buckshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_OriginalScepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_Killshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_ConcussiveDummy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Shotgun : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Sniper_Concussive_Grenade : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Sniper_Concussive_Grenade : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Assassinate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_ArmorReduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Sniper_Headshot_ArmorReduction : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_EarthSpiritBoss_StoneCaller : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_StoneThinker : public CDOTA_Buff { public: bool m_bHasBeenMagnetized; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 12 // Size: 0x598 class CDOTA_Ability_AghsFort_EarthSpiritBoss_BoulderSmash : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t rock_damage; // 0x554 int32_t radius; // 0x558 int32_t rock_search_aoe; // 0x55c float unit_distance; // 0x560 float rock_distance; // 0x564 int32_t m_nProjectileID; // 0x568 CHandle< CBaseEntity > m_hCursorTarget; // 0x56c bool m_bUsedStone; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: CHandle< CBaseEntity > m_hTarget; // 0x574 bool m_bTargetStone; // 0x578 private: [[maybe_unused]] uint8_t __pad0579[0x7]; // 0x579 public: CUtlVector< CHandle< CBaseEntity > > m_vecBoulderSmashedEnts; // 0x580 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_BoulderSmash : public CDOTA_Buff { public: bool m_bInterrupted; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t m_nProjectileID; // 0x113c }; // Alignment: 15 // Size: 0x5c0 class CDOTA_Ability_AghsFort_EarthSpiritBoss_RollingBoulder : public CDOTABaseAbility { public: int32_t radius; // 0x560 int32_t speed; // 0x564 int32_t rock_speed; // 0x568 int32_t damage; // 0x56c float distance; // 0x570 float rock_distance; // 0x574 float slow_duration; // 0x578 ParticleIndex_t m_nFXIndex; // 0x57c bool m_boulderSetposBool; // 0x580 private: [[maybe_unused]] uint8_t __pad0581[0x3]; // 0x581 public: int32_t m_nProjectileID; // 0x584 Vector m_vStartingLocation; // 0x588 Vector m_vProjectileLocation; // 0x594 Vector m_vDir; // 0x5a0 Vector m_vVel; // 0x5ac bool m_bUsedStone; // 0x5b8 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_RollingBoulder_Caster : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_BoulderSmash_Debuff : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_GeogmagneticGrip_Debuff : public CDOTA_Modifier_Silence { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_EarthSpiritBoss_GeomagneticGrip : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 10 // Size: 0x1188 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_GeomagneticGrip : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t rock_damage; // 0x113c float pull_units_per_second; // 0x1140 float pull_units_per_second_heroes; // 0x1144 float total_pull_distance; // 0x1148 float duration; // 0x114c bool m_bUsedStone; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: Vector m_vDestination; // 0x1154 Vector m_vLocation; // 0x1160 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1170 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_Petrify : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 bool m_bHasBeenMagnetized; // 0x113c }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_AghsFort_EarthSpiritBoss_Magnetize : public CDOTABaseAbility { public: int32_t cast_radius; // 0x550 int32_t rock_explosion_radius; // 0x554 float damage_duration; // 0x558 }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_AghsFort_EarthSpiritBoss_Magnetize : public CDOTA_Buff { public: int32_t rock_search_radius; // 0x1138 int32_t damage_per_second; // 0x113c float damage_interval; // 0x1140 float rock_explosion_delay; // 0x1144 float damage_duration; // 0x1148 int32_t cast_radius; // 0x114c int32_t rock_explosion_radius; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_hExplodedRocks; // 0x1158 float duration; // 0x1170 bool m_bShowOverhead; // 0x1174 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_EarthSpiritBoss_Petrify : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Cast_Radius : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Cooldown_Reduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Omniknight_Purification_Cooldown_Reduction : public CDOTA_Buff { public: float cooldown_reduction_per_hit; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Multicast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Omniknight_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Omniknight_Purification_Multicast : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Omniknight_Degen_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Omniknight_Degen_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Omniknight_Degen_Aura_Effect : public CDOTA_Buff { public: int32_t move_speed_bonus; // 0x1138 int32_t attack_speed_bonus; // 0x113c float damage_interval; // 0x1140 int32_t attack_damage_pct; // 0x1144 int32_t death_heal; // 0x1148 bool bIsAllied; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Omniknight_Repel : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Omniknight_Repel : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 float hp_regen; // 0x113c int32_t bonus_str; // 0x1140 int32_t damage_increase_outgoing_pct; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Omniknight_GuardianAngel : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Omniknight_GuardianAngel : public CDOTA_Buff { public: int32_t hp_regen; // 0x1138 int32_t magic_resistance; // 0x113c int32_t purification_trigger_chance; // 0x1140 float purification_trigger_cooldown; // 0x1144 GameTime_t m_fLastProc; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Procs_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Outgoing_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Applies_Degen_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Damage_Instance_Refraction : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Omniknight_Repel_Damage_Instance_Refraction : public CDOTA_Buff { public: int32_t damage_threshold; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Knockback_On_Cast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Toggle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Restoration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Immune_Flight : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_Aghsfort_Omniknight_Repel_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target_Dummy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target_Dummy : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Aghsfort_WitchDoctor_ParalyzingCask : public CDOTABaseAbility { public: int32_t bounces; // 0x550 int32_t bounce_bonus_damage; // 0x554 int32_t damage; // 0x558 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_WitchDoctor_Cask_Thinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t remaining_bounces; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_WitchDoctor_VoodooRestoration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_WitchDoctor_Voodoo_Restoration_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_WitchDoctor_Voodoo_Restoration_Heal : public CDOTA_Buff { public: int32_t heal; // 0x1138 float mana_per_second; // 0x113c float heal_interval; // 0x1140 int32_t lifesteal_percent; // 0x1144 int32_t spell_lifesteal_pct; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_WitchDoctor_Maledict : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_WitchDoctor_MaledictDoT : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_WitchDoctor_Maledict : public CDOTA_Buff { public: int32_t m_iStartHealth; // 0x1138 int32_t bonus_damage; // 0x113c int32_t bonus_damage_threshold; // 0x1140 int32_t max_bonus_damage; // 0x1144 int32_t ticks; // 0x1148 int32_t iCurrentTick; // 0x114c }; // Alignment: 9 // Size: 0x588 class CDOTA_Ability_Aghsfort_WitchDoctor_DeathWard : public CDOTABaseAbility { public: int32_t m_iDamage; // 0x550 int32_t m_iBounceRadius; // 0x554 int32_t m_iProjectileSpeed; // 0x558 int32_t m_iBounces; // 0x55c CHandle< CBaseEntity > m_hWard; // 0x560 GameTime_t m_fWardExpireTime; // 0x564 ParticleIndex_t m_nFXIndex; // 0x568 int32_t m_iAttackIndex; // 0x56c CUtlVector< sAghsfortWardBounceInfo > m_BounceInfo; // 0x570 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_WitchDoctor_DeathWard : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t m_iBounceRadius; // 0x113c bool m_bFirstAttack; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t m_iBounces; // 0x1144 ParticleIndex_t m_nStaffParticle; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Multicask : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Applies_Maledict : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_AoE_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Attack_Procs : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Ground_Curse : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_AoE_Procs : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Death_Restoration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Affects_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Infectious : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Enemy_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Damage_Amp : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Mana_Restore : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_No_Channel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Splitshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Damage_Resist : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Bounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_WitchDoctor_ParalyzingCask_Attack_Procs : public CDOTA_Buff { public: int32_t cask_chance; // 0x1138 int32_t cask_cooldown; // 0x113c GameTime_t flLastProcTime; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_WitchDoctor_DeathWard_Damage_Resist : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 9 // Size: 0x588 class CDOTA_Ability_Aghsfort_WitchDoctor_DeathWard_No_Channel : public CDOTABaseAbility { public: int32_t m_iDamage; // 0x550 int32_t m_iBounceRadius; // 0x554 int32_t m_iProjectileSpeed; // 0x558 int32_t m_iBounces; // 0x55c CHandle< CBaseEntity > m_hWard; // 0x560 float m_fWardExpireTime; // 0x564 ParticleIndex_t m_nFXIndex; // 0x568 int32_t m_iAttackIndex; // 0x56c CUtlVector< sAghsfortWardBounceInfo > m_BounceInfo; // 0x570 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Aghsfort_Modifier_WitchDoctor_ForceKill : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Witch_Doctor_Death_Ward_No_Channel : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Special_Witch_Doctor_Death_Ward_Splitshot : public CDOTA_Buff { public: int32_t damage_modifier; // 0x1138 int32_t split_shot_bonus_range; // 0x113c int32_t split_shot_count; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TemplarAssassin_PsionicTrap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TemplarAssassin_Refraction : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_RefractionDamage : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_RefractionAbsorb : public CDOTA_Buff { public: int32_t damage_threshold; // 0x1138 int32_t max_damage_absorb; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TemplarAssassin_Meld : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_Meld_Animation : public CDOTA_Buff { public: bool launched_attack; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_TemplarAssassin_Meld : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 bool launched_attack; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: CHandle< CBaseEntity > m_hTarget; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_MeldArmor : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TemplarAssassin_PsiBlades : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_TemplarAssassin_PsiBlades : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 float attack_spill_range; // 0x113c int32_t attack_spill_width; // 0x1140 int32_t attack_spill_pct; // 0x1144 int32_t attack_spill_penalty; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_PsiBlades_Slow : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_TemplarAssassin_Psionic_Trap_Thinker : public CDOTA_Buff { public: int32_t trap_radius; // 0x1138 float trap_delay_time; // 0x113c float slow_duration; // 0x1140 int32_t max_pulses; // 0x1144 int32_t iCurrentPulse; // 0x1148 CHandle< CBaseEntity > m_hImage; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TemplarAssassin_Trap_Slow : public CDOTA_Buff { public: int32_t movement_speed_slow; // 0x1138 int32_t trap_damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TemplarAssassin_Refraction_Holdout : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_TemplarAssassin_Refraction_Holdout : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t damage_absorb; // 0x113c float m_flDamageAbsorbed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_KillRefresh : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Counter_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Detonate_Trap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_Area_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Attack_On_Activation : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Teleport : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Refraction_On_Kill : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_Trap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_Splash : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_Damage_Heals : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_MultiPulse : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_AutoAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Special_Templar_Assassin_PsiBlades_AutoAttack : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t radius; // 0x113c int32_t m_iAttackRecord; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Templar_Assassin_Trap_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Slark_DarkPact : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Slark_DarkPact : public CDOTA_Buff { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Slark_DarkPact_Pulses : public CDOTA_Buff { public: int32_t m_iPulseCount; // 0x1138 int32_t radius; // 0x113c float total_damage; // 0x1140 int32_t total_pulses; // 0x1144 int32_t heal_pct; // 0x1148 float pulse_interval; // 0x114c bool bIsBaseAbility; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Slark_Pounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 16 // Size: 0x11a0 class CDOTA_Modifier_Aghsfort_Slark_Pounce : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 bool m_bFoundUnit; // 0x1161 private: [[maybe_unused]] uint8_t __pad1162[0x6]; // 0x1162 public: CUtlVector< CHandle< CBaseEntity > > hitEntities; // 0x1168 int32_t pounce_distance; // 0x1180 int32_t pounce_distance_default; // 0x1184 float pounce_speed; // 0x1188 float pounce_acceleration; // 0x118c int32_t pounce_radius; // 0x1190 int32_t pounce_damage; // 0x1194 float leash_duration; // 0x1198 }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Slark_Pounce_Leash : public CDOTA_Buff { public: int32_t leash_radius; // 0x1138 Vector vLeashLocation; // 0x113c bool m_bEscaped; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: float pounce_damage_multiplier; // 0x114c int32_t pounce_damage; // 0x1150 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Slark_EssenceShift_Counter : public CDOTA_Buff { public: int32_t max_stacks; // 0x1138 int32_t passive_agility; // 0x113c GameTime_t flLastProcTime; // 0x1140 float debuff_duration; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Slark_EssenceShift : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Slark_EssenceShift_Active : public CDOTA_Buff { public: int32_t agi_gain; // 0x1138 int32_t iPrimaryAttribute; // 0x113c float model_scale; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Slark_Essence_Shift_Debuff : public CDOTA_Buff { public: int32_t reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Slark_ShadowDance : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_Aura : public CDOTA_Buff { public: int32_t scepter_aoe; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_PassiveRegen : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_regen_pct; // 0x113c }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Slark_ShadowDance : public CDOTA_Modifier_Invisible { public: CHandle< CBaseEntity > m_hVisibleEntity; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c GameTime_t flLastPulseTime; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_Visual : public CDOTA_Buff { public: bool m_bScepter; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Essence_Shift : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Push_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Dispells_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Unit_Target : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Attack_All : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Pounce_Projectiles : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Leashed_Bonus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_AoE_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_Leash_Chance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_Allied_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Essence_Shift_Bonus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Dark_Pact_Pulses : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Leash : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Slark_Pounce_Leashed_Bonus : public CDOTA_Buff { public: int32_t attack_speed_bonus; // 0x1138 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Slark_Shadow_Dance_Leash : public CDOTA_Buff { public: Vector m_vPullLocation; // 0x1138 float pull_speed; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Special_Slark_Pounce_Projectiles : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_QueenOfPain_ScreamOfPain : public CDOTABaseAbility { public: int32_t damage; // 0x550 }; // Alignment: 2 // Size: 0x578 class CDOTA_Ability_AghsFort_QueenOfPain_ShadowStrike : public CDOTABaseAbility { public: Vector projectile_speed; // 0x550 private: [[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560 }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_AghsFort_QueenOfPain_ShadowStrike : public CDOTA_Buff { public: int32_t duration_damage; // 0x1138 int32_t duration_heal; // 0x113c int32_t movement_slow; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CountdownTimer m_SlowInterval; // 0x1148 float m_flSlowStep; // 0x1160 float m_flSlowStepStep; // 0x1164 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_AghsFort_QueenOfPain_Blink : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_QueenOfPain_Blink_AttackSpeed : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 9 // Size: 0x588 class CDOTA_Ability_AghsFort_QueenOfPain_SonicWave : public CDOTABaseAbility { public: GameTime_t m_fStartTime; // 0x550 float m_fTotalTime; // 0x554 ParticleIndex_t m_nFXIndex; // 0x558 int32_t m_nSonicTrailRadius; // 0x55c Vector m_vLastTrailThinkerLocation; // 0x560 bool bTrailStartedBurning; // 0x56c private: [[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d public: int32_t damage; // 0x570 int32_t starting_aoe; // 0x574 int32_t final_aoe; // 0x578 }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_Sonic_Wave_Trail_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 int32_t m_nRadius; // 0x1144 ParticleIndex_t m_nTrailFX; // 0x1148 float linger_duration; // 0x114c float flDamage; // 0x1150 float damage_pct; // 0x1154 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_Sonic_Wave_Trail_Burn : public CDOTA_Buff { public: float flDamage; // 0x1138 float burn_interval; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_ShadowStrike_On_Attack : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_On_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Generates_Scream : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Attack_Speed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Trail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_Chain : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_Scream : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Resets_Blink : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Restores_Caster : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Circle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Attack_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Shadow_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_QueenOfPain_Blink_Scream_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_Aghsfort_QueenOfPain_Scream_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_SonicWave_AttackBuff : public CDOTA_Buff { public: int32_t spell_amp; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TuskBoss_IceShards_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x5a0 class CDOTA_Ability_Aghsfort_TuskBoss_IceShards : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 int32_t shard_width; // 0x554 int32_t shard_damage; // 0x558 int32_t shard_count; // 0x55c float shard_speed; // 0x560 float shard_duration; // 0x564 float shard_angle_step; // 0x568 int32_t shard_distance; // 0x56c Vector m_vSpawnOrigin; // 0x570 Vector m_vDirection; // 0x57c private: [[maybe_unused]] uint8_t __pad0588[0x8]; // 0x588 public: CDOTABaseAbility* m_pIceShardsStop; // 0x590 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_TuskBoss_IceShard : public CDOTA_Buff { public: Vector m_vPos; // 0x1138 int32_t radius; // 0x1144 float damage; // 0x1148 float explosion_interval; // 0x114c }; // Alignment: 20 // Size: 0x670 class CDOTA_Ability_Aghsfort_TuskBoss_Snowball : public CDOTABaseAbility { public: int32_t snowball_windup_radius; // 0x560 int32_t snowball_radius; // 0x564 int32_t snowball_grow_rate; // 0x568 int32_t snowball_damage; // 0x56c int32_t snowball_damage_bonus; // 0x570 float stun_duration; // 0x574 int32_t bonus_damage; // 0x578 float bonus_stun; // 0x57c int32_t snowball_speed; // 0x580 float snowball_duration; // 0x584 Vector m_vProjectileLocation; // 0x588 private: [[maybe_unused]] uint8_t __pad0594[0x4]; // 0x594 public: CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x598 ParticleIndex_t m_nFXIndex; // 0x5b0 private: [[maybe_unused]] uint8_t __pad05b4[0x4]; // 0x5b4 public: CountdownTimer ctSnowball; // 0x5b8 bool m_bSpeakAlly; // 0x5d0 bool m_bIsExpired; // 0x5d1 bool m_bInWindup; // 0x5d2 private: [[maybe_unused]] uint8_t __pad05d3[0x1]; // 0x5d3 public: CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5d4 int32_t m_nContainedValidUnits; // 0x5d8 bool m_bEndingSnowball; // 0x5dc }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Target : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TuskBoss_Launch_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Visible : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Movement : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Movement_Friendly : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TuskBoss_WalrusPunch : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch : public CDOTA_Buff { public: int32_t crit_multiplier; // 0x1138 float air_time; // 0x113c float slow_duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x1150 bool m_bWalrusPunch; // 0x1154 bool m_bPunchKill; // 0x1155 private: [[maybe_unused]] uint8_t __pad1156[0x2]; // 0x1156 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x1170 int32_t m_nAttackRecord; // 0x1174 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 13 // Size: 0x1188 class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch_AirTime : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float flAirTime; // 0x1164 float m_flEndTime; // 0x1168 float m_fHorizontalDistance; // 0x116c float m_fVerticalDistance; // 0x1170 float m_fDamage; // 0x1174 Vector m_vLandingPos; // 0x1178 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_TuskBoss_Tag_Team : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 float slow_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Circle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Explode : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Secondary : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_End_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_Global : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Toggle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Global : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Reset : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Land_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Wallop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_TuskBoss_Ice_Shards_Explode_Dummy : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike : public CDOTA_Buff { public: int32_t radius; // 0x1138 float health_threshold_pct; // 0x113c float duration; // 0x1140 CHandle< CBaseEntity > m_hTombstoneSourceAbility; // 0x1144 CHandle< CBaseEntity > m_hChaseUnit; // 0x1148 }; // Alignment: 3 // Size: 0x570 class CDOTA_AghsFort_Ability_Undying_Tombstone : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_vZombies; // 0x550 CHandle< CBaseEntity > hTombstone; // 0x568 float duration; // 0x56c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_Tombstone_HP : public CDOTA_Buff { public: int32_t tombstone_health; // 0x1138 int32_t bonus_health; // 0x113c }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 float zombie_interval; // 0x113c int32_t spawn_at_parent; // 0x1140 int32_t remove_on_death; // 0x1144 float knockback_duration; // 0x1148 int32_t knockback_distance; // 0x114c int32_t knockback_height; // 0x1150 int32_t spawn_distance; // 0x1154 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Bunker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hLoadedUnit; // 0x1138 float heal_percent_per_tick; // 0x113c int32_t tombstone_grab_radius; // 0x1140 ParticleIndex_t m_nBunkerEnterFXIndex; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Bunker_Friendly : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Undying_Decay_BuffCounter : public CDOTA_Buff { public: float m_fStrengthStolen; // 0x1138 float model_scale_per_strength; // 0x113c float model_scale_max; // 0x1140 }; // Alignment: 6 // Size: 0x568 class CDOTA_AghsFort_Ability_Undying_Decay : public CDOTABaseAbility { public: int32_t decay_damage; // 0x550 int32_t radius; // 0x554 float decay_duration; // 0x558 float str_steal; // 0x55c float str_steal_captain_mult; // 0x560 float str_steal_boss_mult; // 0x564 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Undying_Decay_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 float interval; // 0x113c int32_t extra_decays; // 0x1140 int32_t radius; // 0x1144 int32_t decay_strength_percent; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_Decay_Buff : public CDOTA_Buff { public: float str_stolen; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Undying_Decay_On_Attack : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x568 class CDOTA_AghsFort_Ability_Undying_SoulRip : public CDOTABaseAbility { public: int32_t damage_per_unit; // 0x550 int32_t radius; // 0x554 int32_t max_units; // 0x558 int32_t tombstone_heal; // 0x55c int32_t damage_bonus_percent; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Undying_SoulRipWard : public CDOTA_Buff { public: int32_t ward_radius; // 0x1138 int32_t explosion_damage; // 0x113c float taunt_interval; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_SoulRip_Share_Strength : public CDOTA_Buff { public: float str_gain; // 0x1138 int32_t model_scale; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 float m_flDecrementTime; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike_Slow_Counter : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_AghsFort_Ability_Undying_Tombstone_Zombie_DeathStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathlust : public CDOTA_Buff { public: int32_t bonus_move_speed; // 0x1138 int32_t bonus_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Modifier : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Undying_Exploding_Zombie : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Undying_ConsumeZombies_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_ConsumeZombies : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Undying_ConsumeZombies_Buff : public CDOTA_Buff { public: int32_t bonus_move_speed_per_stack; // 0x1138 int32_t bonus_attack_speed_per_stack; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_AghsFort_Ability_Undying_FleshGolem : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_FleshGolem : public CDOTA_Buff { public: int32_t str_percentage; // 0x1138 int32_t movement_bonus; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Undying_FleshGolem_Slow : public CDOTA_Buff { public: int32_t damage_amp; // 0x1138 int32_t slow; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Undying_FleshGolem_PlagueAura : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t damage; // 0x113c float tick_rate; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Undying_Tombstone_Death_Trigger : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Aghsfort_Ability_Special_Bonus_Unique_Undying_TombstoneOnDeath : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Undying_Decay_Spawn_Zombies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Undying_Decay_On_Attack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Undying_Decay_Reverberation : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Aghsfort_Ability_Special_Bonus_Unique_Undying_SoulRip_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Spawn_Zombies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Share_Strength : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Ward : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_Tombstone_Exploding_Zombies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_Tombstone_Bunker : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_SpawnZombies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_HealOnEnemyDeath : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_Smash : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Undying_ConsumeZombies_Dummy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Special_Undying_ConsumeZombies_Dummy : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Lina_LightStrikeArray : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x598 class CDOTA_Ability_Aghsfort_Lina_DragonSlave : public CDOTABaseAbility { public: int32_t dragon_slave_distance; // 0x558 Vector m_vLastTrailThinkerLocation; // 0x55c int32_t dragon_slave_damage; // 0x568 float m_flLSADistance; // 0x56c int32_t m_nLSAPower; // 0x570 float m_flLSADelay; // 0x574 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Lina_DragonSlave_Ignite : public CDOTA_Buff { public: float burn_interval; // 0x1138 float burn_damage; // 0x113c int32_t mana_restore; // 0x1140 }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Lina_LightStrikeArray_Thinker : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 int32_t m_iDamage; // 0x1150 float m_flStunDuration; // 0x1154 int32_t light_strike_array_damage; // 0x1158 float light_strike_array_stun_duration; // 0x115c float light_strike_array_delay; // 0x1160 int32_t m_nLSARadius; // 0x1164 int32_t m_nCount; // 0x1168 int32_t max_count; // 0x116c int32_t iPower; // 0x1170 float pulse_interval; // 0x1174 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Lina_Light_Strike_Array_Vacuum : public CDOTA_Buff { public: float pull_speed; // 0x1138 Vector vPullLocation; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Lina_FierySoul : public CDOTABaseAbility { public: float active_duration; // 0x550 }; // Alignment: 7 // Size: 0x1168 class CDOTA_Modifier_Aghsfort_Lina_FierySoul_Active : public CDOTA_Buff { public: int32_t attack_range_per_stack; // 0x1138 bool m_bShouldReset; // 0x113c bool m_bIsActive; // 0x113d private: [[maybe_unused]] uint8_t __pad113e[0x2]; // 0x113e public: int32_t fiery_soul_attack_speed_bonus; // 0x1140 float fiery_soul_move_speed_bonus; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1150 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Lina_FierySoul : public CDOTA_Buff { public: int32_t fiery_soul_attack_speed_bonus; // 0x1138 float fiery_soul_move_speed_bonus; // 0x113c int32_t fiery_soul_max_stacks; // 0x1140 float fiery_soul_stack_duration; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 GameTime_t m_flFierySoulDieTime; // 0x114c }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_Aghsfort_Lina_LagunaBlade : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x550 int32_t m_nMaxBounces; // 0x568 }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Lina_LagunaBlade_Line : public CDOTA_Buff { public: Vector vStart; // 0x1138 Vector vEnd; // 0x1144 float damage_delay; // 0x1150 CHandle< CBaseEntity > m_hMainTarget; // 0x1154 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Lina_LagunaBlade : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_LSA_Trail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_Triwave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_Ignite : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Pulsate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Attacks : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Vacuum : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Multishot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_DragonSlave_On_Cast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Mini_Lagunas : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_LSA_Attacks : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Ally_Cast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Bounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_LSA : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Channel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Line : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lina_Dragon_Slave_Booster : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Special_Lina_Fiery_Soul_Splitshot : public CDOTA_Buff { public: int32_t damage_modifier; // 0x1138 int32_t split_shot_bonus_range; // 0x113c int32_t arrow_count; // 0x1140 }; // Alignment: 7 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Special_Lina_Laguna_Blade_Channel : public CDOTA_Buff { public: int32_t stack_limit; // 0x1138 float stack_interval; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_hEntitiesToHit; // 0x1140 ParticleIndex_t m_nFxIndexB; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< ParticleIndex_t > m_nFXIndices; // 0x1160 int32_t bounces_remaining; // 0x1178 int32_t iCur_stack; // 0x117c }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Special_Lina_Laguna_Blade_Bounce : public CDOTA_Buff { public: int32_t bounces_remaining; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Lina_Light_Strike_Array_Attacks_Bonus : public CDOTA_Buff { public: float attack_damage; // 0x1138 int32_t damage_penalty; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Lina_LightStrikeArray_Stun : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Lina_DragonSlave_Movement : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float m_flPushDistance; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_AghsFort_Ability_Juggernaut_BladeFury : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury : public CDOTA_Buff { public: int32_t blade_fury_radius; // 0x1138 int32_t blade_fury_damage; // 0x113c float blade_fury_damage_tick; // 0x1140 int32_t movement_bonus; // 0x1144 int32_t spark_radius; // 0x1148 int32_t spark_damage_percent; // 0x114c bool m_bDestroyParentThinkerOnDeath; // 0x1150 bool m_bPreIntervalThink; // 0x1151 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury_Force : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury_Force_Pull : public CDOTA_Buff { public: int32_t blade_fury_radius; // 0x1138 int32_t pull_speed; // 0x113c int32_t pull_stop; // 0x1140 Vector pull_origin; // 0x1144 GameTime_t m_flLastThinkTime; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Juggernaut_HealingWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Juggernaut_Healing_Ward : public CDOTA_Buff { public: int32_t healing_ward_aura_radius; // 0x1138 float healing_ward_heal_amount; // 0x113c float healing_ward_interval; // 0x1140 int32_t m_nTotalHealing; // 0x1144 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Juggernaut_Healing_Ward_Primed : public CDOTA_Buff { public: int32_t healing_ward_aura_radius; // 0x1138 int32_t trigger_radius; // 0x113c int32_t search_radius; // 0x1140 int32_t damage_percent; // 0x1144 int32_t movement_bonus; // 0x1148 int32_t power; // 0x114c CHandle< CBaseEntity > m_hTarget; // 0x1150 bool m_bPlayerControlled; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Juggernaut_ZenWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Juggernaut_Zen_Ward : public CDOTA_Buff { public: int32_t healing_ward_aura_radius; // 0x1138 float healing_ward_heal_amount; // 0x113c float healing_ward_interval; // 0x1140 int32_t m_nTotalRegen; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Juggernaut_Zen_Ward_Armor : public CDOTA_Buff { public: int32_t armor_bonus; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Juggernaut_BladeDance : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hBladeFuryThinker; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Juggernaut_BladeDance : public CDOTA_Buff { public: int32_t blade_dance_crit_mult; // 0x1138 int32_t blade_dance_crit_chance; // 0x113c bool m_bDidBladeDanceCrit; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Juggernaut_BladeDance_Buff : public CDOTA_Buff { public: int32_t evasion_per_stack; // 0x1138 int32_t movespeed_per_stack; // 0x113c int32_t evasion_bonus; // 0x1140 int32_t movespeed_bonus; // 0x1144 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Juggernaut_Double_Attack : public CDOTA_Buff { public: int32_t range; // 0x1138 float bonus_attack_duration; // 0x113c int32_t bonus_attack_count; // 0x1140 int32_t bonus_attack_speed; // 0x1144 float m_fBonusRange; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Juggernaut_Omnislash : public CDOTABaseAbility { public: // no members available }; // Alignment: 16 // Size: 0x1190 class CDOTA_modifier_aghsfort_juggernaut_omnislash : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 CHandle< CBaseEntity > m_hLastTarget; // 0x113c int32_t m_nJumps; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t bonus_attack_speed; // 0x1148 int32_t omni_slash_radius; // 0x114c float attack_rate_multiplier; // 0x1150 int32_t upgraded_radius; // 0x1154 int32_t m_iTotalDamage; // 0x1158 int32_t m_iHeroDamage; // 0x115c bool m_bReflection; // 0x1160 bool m_bFirstHit; // 0x1161 bool m_bEndNext; // 0x1162 private: [[maybe_unused]] uint8_t __pad1163[0x1]; // 0x1163 public: GameTime_t m_fNextAttackTime; // 0x1164 Vector m_vCastOrigin; // 0x1168 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CUtlVector< CHandle< CBaseEntity > > m_hIllusions; // 0x1178 }; // Alignment: 1 // Size: 0x1140 class CDOTA_modifier_aghsfort_juggernaut_omnislash_Camera : public CDOTA_Buff { public: bool m_bIsDone; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_modifier_aghsfort_juggernaut_omnislash_Invulnerability : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite : public CDOTA_Buff { public: int32_t slow_movement_speed_pct; // 0x1138 float tick_damage; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite_Invuln : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite_Disarm : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Sparks : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Force : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Shared : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Lifesteal_Hit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Blade_Fury : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Detonate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Cooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Launches_Blade_Fury : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Shared : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Teleport : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Range : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Illusion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Crit_Extend : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Shared : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Spin : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Ignite : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Juggernaut_Zen_Ward : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort2_DrowRanger_FrostArrows : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows_Chill : public CDOTA_Buff { public: float interval; // 0x1138 int32_t max_stacks; // 0x113c int32_t damage_percent; // 0x1140 int32_t movement_damage_percent; // 0x1144 int32_t m_nDamage; // 0x1148 ParticleIndex_t m_nFXStackIndex; // 0x114c Vector m_vLastPosition; // 0x1150 }; // Alignment: 7 // Size: 0x578 class CDOTA_Ability_Aghsfort2_DrowRanger_WaveOfSilence : public CDOTABaseAbility { public: int32_t wave_length; // 0x550 int32_t wave_width; // 0x554 float wave_speed; // 0x558 float silence_duration; // 0x55c float knockback_distance_max; // 0x560 float knockback_duration; // 0x564 Vector m_vVectorTarget; // 0x568 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence : public CDOTA_Buff { public: int32_t blind_percent; // 0x1138 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Echo_Thinker : public CDOTA_Buff { public: Vector m_vTarget; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Movement : public CDOTA_Buff { public: int32_t movespeed_percent; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Frost : public CDOTA_Buff { public: float m_fDamagePerSecond; // 0x1138 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Agility : public CDOTA_Buff { public: CUtlVector< GameTime_t > m_AgilityTimers; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Aghsfort2_DrowRanger_Multishot : public CDOTABaseAbility { public: CUtlVector< CUtlVector< CHandle< CBaseEntity > > > m_vHitTargets; // 0x550 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_Buff : public CDOTA_Buff { public: int32_t damage_percent; // 0x1138 int32_t knockback_distance; // 0x113c float knockback_duration; // 0x1140 int32_t move_speed_percent; // 0x1144 int32_t max_move_speed_percent; // 0x1148 int32_t model_scale; // 0x114c int32_t max_model_scale; // 0x1150 bool m_bActive; // 0x1154 }; // Alignment: 15 // Size: 0x1188 class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot : public CDOTA_Buff { public: int32_t arrow_width; // 0x1138 float arrow_speed; // 0x113c int32_t range; // 0x1140 int32_t wave_count; // 0x1144 float wave_delay; // 0x1148 int32_t arrow_count_per_wave; // 0x114c float arrow_delay; // 0x1150 float per_arrow_angle; // 0x1154 float m_fYawOffset; // 0x1158 int32_t m_iWaveIndex; // 0x115c int32_t m_iArrowIndex; // 0x1160 Vector m_vTarget; // 0x1164 QAngle m_vWaveAngle; // 0x1170 float m_flInterval; // 0x117c GameTime_t m_flNextThink; // 0x1180 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_SideLine : public CDOTA_Buff { public: int32_t m_iWaveIndex; // 0x1138 float m_fYawOffset; // 0x113c }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_AghsFort2_DrowRanger_Multishot_Buff_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_Refire : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort2_DrowRanger_Marksmanship : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort2_DrowRanger_Marksmanship_Aura : public CDOTA_Buff { public: int32_t aura_disable_range; // 0x1138 int32_t aura_range; // 0x113c int32_t bonus_damage; // 0x1140 int32_t m_nBonusFactor; // 0x1144 GameTime_t m_fLastEnableTime; // 0x1148 ParticleIndex_t m_nFxIndex; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort2_DrowRanger_Marksmanship_Aura_Bonus : public CDOTA_Buff { public: int32_t aura_agility_multiplier; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_Active : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t bonus_range; // 0x113c int32_t attack_speed_reduction; // 0x1140 float duration; // 0x1144 int32_t charges; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_AoE : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_WaveOfSilence_Primed : public CDOTA_Buff { public: int32_t aura_disable_range; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_WaveOfSilence_Blind : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_Multishot_Range : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_Marksmanship_Attack_Count : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_Split : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_MoveDamage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_Wave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Echo : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Movement : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Cooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Frost : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Move : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_SideLine : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Refire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Buff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Marksmanship_WaveOfSilence : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_DrowRanger_Marksmanship_AoE : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LucentBeam : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LucentBeam_Moonglow : public CDOTA_Buff { public: int32_t bonus_aspd; // 0x1138 int32_t lifesteal; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t night_bonus_pct; // 0x113c }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_AghsFort_Luna_MoonGlaive : public CDOTABaseAbility { public: int32_t m_iAttackIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< sAghsFortGlaiveInfo > m_GlaiveInfo; // 0x558 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Active : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback : public CDOTA_Buff { public: int32_t attack_speed_slow; // 0x1138 int32_t move_speed_slow_pct; // 0x113c }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback_Bounce : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bTargetTeleported; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 float stun_duration; // 0x117c }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive : public CDOTA_Buff { public: int32_t range; // 0x1138 int32_t bounces; // 0x113c int32_t damage_reduction_percent; // 0x1140 int32_t bounce_pct; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_FX : public CDOTA_Buff { public: ParticleIndex_t m_nMoonGlaiveFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_MoonMark : public CDOTA_Buff { public: int32_t spell_resist_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_LunarRemnant : public CDOTA_Buff { public: int32_t m_nBonusDamage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Moonfright : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_LunarPower : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_MoonShield_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura_MoonShield_Trigger : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura_MoonShield : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Active_Buff : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Lunar_Grace : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_Lunar_Grace : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 float night_multiplier; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Eclipse : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_Luna_Eclipse : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t radius; // 0x113c int32_t beams; // 0x1140 int32_t hit_count; // 0x1144 int32_t m_iBeamDamage; // 0x1148 float m_flBeamStun; // 0x114c Vector vPosition; // 0x1150 bool m_bAreaTarget; // 0x115c bool m_bMoonWell; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: int32_t m_iTickCount; // 0x1160 ParticleIndex_t m_nMoonlightFXIndex; // 0x1164 CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1168 CUtlVector< CHandle< CBaseEntity > > m_HitAllies; // 0x1180 float beam_interval; // 0x1198 float m_flInterval; // 0x119c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LucentBeam_Bloodmoon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LucentBeam_Diffusion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LucentBeam_Moonglow : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_MoonMark : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_LunarRemnant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_MoonGlaive_AllyBounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_MoonGlaive_DoubleMoon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_MoonGlaive_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_MoonShield : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_Moonfright : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_LunarPower : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Eclipse_Moonstruck : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarCycle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarFavor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarFocus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LucentBeam_Glaives : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_Glaives_MoonWell : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Eclispe_Hide : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Luna_LunarBlessing_Leap : public CDOTABaseAbility { public: // no members available }; // Alignment: 16 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Leap : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t leap_distance; // 0x1164 float leap_speed; // 0x1168 float leap_acceleration; // 0x116c int32_t leap_radius; // 0x1170 int32_t search_range; // 0x1174 float damage_multiplier; // 0x1178 float m_flPowerLevelPct; // 0x117c bool m_bLaunched; // 0x1180 private: [[maybe_unused]] uint8_t __pad1181[0x7]; // 0x1181 public: CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1188 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_AghsFort_Luna_GlaiveShield : public CDOTABaseAbility { public: CUtlVector< sGlaiveDef > m_GlaiveDefs; // 0x550 }; // Alignment: 9 // Size: 0x1340 class CDOTA_Modifier_AghsFort_Luna_GlaiveShield : public CDOTA_Buff { public: bool m_bSpiritsExplode; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t hit_radius; // 0x113c int32_t rotate_range; // 0x1140 int32_t glaive_movement_rate; // 0x1144 float replenish_time; // 0x1148 float m_flRotation; // 0x114c float m_flGlaiveRadius; // 0x1150 GameTime_t m_flNextSpawn; // 0x1154 bool m_bPaused; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Luna_Eclipse_IntoTheNight : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Luna_Eclipse_IntoTheNight_Aura : public CDOTA_Buff { public: int32_t m_nMoveSpeed; // 0x1138 int32_t m_nEvasion; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Lich_FrostNova : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Lich_FrostNova_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t slow_attack_speed; // 0x113c bool is_primary_target; // 0x1140 }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_AghsFort_Lich_Sinister_Gaze : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hShackleTarget; // 0x550 Vector m_vPullLocation; // 0x554 float m_flIntervalRate; // 0x560 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze_Self : public CDOTA_Buff { public: int32_t mana_drain; // 0x1138 float m_flIntervalRate; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t mana_drain; // 0x113c float m_flIntervalRate; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze_Summon : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t base_damage_outgoing_percentage; // 0x113c bool m_bFirstTick; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_Lich_Ice_Spire : public CDOTABaseAbility { public: int32_t aura_radius; // 0x550 float duration; // 0x554 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Lich_Ice_Spire : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c CountdownTimer m_Timer; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Lich_Ice_Spire_Debuff : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Lich_ChainFrost_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t slow_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Lich_FrostShield : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Lich_FrostShield : public CDOTA_Buff { public: int32_t radius; // 0x1138 float interval; // 0x113c int32_t damage_reduction; // 0x1140 int32_t bonus_health_regen; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Lich_FrostShield_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Lich_FrostShield_Magic_Resistance_Debuff : public CDOTA_Buff { public: int32_t magic_resist_reduction; // 0x1138 int32_t max_stacks; // 0x113c ParticleIndex_t m_nFXStackIndex; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_AghsFort_Modifier_Lich_Frost_Giant : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t model_scale; // 0x113c int32_t damage_radius; // 0x1140 int32_t pct_int_damage_per_second; // 0x1144 float tick_rate; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_AghsFort_Modifier_Lich_Frost_Shield_Magic_Immune : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 5 // Size: 0x570 class CDOTA_Ability_AghsFort_Lich_ChainFrost : public CDOTABaseAbility { public: int32_t jump_range; // 0x550 int32_t jumps; // 0x554 float slow_duration; // 0x558 int32_t vision_radius; // 0x55c int32_t projectile_speed; // 0x560 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Lich_Chain_Frost_Thinker : public CDOTA_Buff { public: int32_t m_nDamageToHeroes; // 0x1138 int32_t m_nHeroesKilled; // 0x113c int32_t m_nJumps; // 0x1140 CHandle< CBaseEntity > m_hTarget; // 0x1144 CHandle< CBaseEntity > m_hAvoidTarget; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Root_Disarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Applies_Frost_Shield : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Execute_Refund : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_AOE_Attacks : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Magic_Resist_Debuff_And_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Heal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Frost_Giant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Dispels : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Spawns_Ice_Spire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Drains_Life : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Raises_Skeletons : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Split : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Applies_Frost_Shield : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Applies_Frost_Nova : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Aghsfort_Lich_Extra_Chain_Frost_Jumps : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Rumboldened_Immunity : public CDOTA_Modifier_MagicImmune { public: int32_t model_scale; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Kunkka_Torrent : public CDOTABaseAbility { public: int32_t torrent_storm_chance; // 0x550 }; // Alignment: 12 // Size: 0x1170 class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Thinker : public CDOTA_Buff { public: bool m_bIsSquall; // 0x1138 bool m_bIsSeaLegs; // 0x1139 private: [[maybe_unused]] uint8_t __pad113a[0x2]; // 0x113a public: float m_flRadius; // 0x113c bool m_bShowEnemies; // 0x1140 bool m_bTorrentStorm; // 0x1141 private: [[maybe_unused]] uint8_t __pad1142[0x2]; // 0x1142 public: float m_flDelay; // 0x1144 float m_flFireTime; // 0x1148 bool m_bForcePosition; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: Vector m_vStartPosition; // 0x1150 Vector m_vEndPosition; // 0x115c int32_t m_nPercentChanceOfGhostShip; // 0x1168 CHandle< CBaseEntity > m_hTarget; // 0x116c }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Kunkka_Torrent : public CDOTA_Buff { public: float flIntervalThinkTime; // 0x1138 int32_t torrent_damage; // 0x113c float m_flDamageScale; // 0x1140 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 bool m_bTorrentStorm; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Slow : public CDOTA_Buff { public: int32_t movespeed_bonus; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Kunkka_Fire_Cannons_Slow : public CDOTA_Buff { public: int32_t movespeed_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Kunkka_Tidebringer_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Torrent_Storm : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Storm : public CDOTA_Buff { public: int32_t torrent_min_distance; // 0x1138 int32_t torrent_max_distance; // 0x113c int32_t m_iExplosionQuadrant; // 0x1140 Vector m_vPosition; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Tidebringer : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Kunkka_Tidebringer : public CDOTA_Buff { public: bool m_bTidebringerAttack; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t cleave_starting_width; // 0x113c int32_t cleave_ending_width; // 0x1140 int32_t cleave_distance; // 0x1144 int32_t damage_bonus; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c int32_t cleave_damage; // 0x1150 bool m_bIgnoreCooldown; // 0x1154 bool m_bDreadPirate; // 0x1155 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_AghsFort_Kunkka_XMarksTheSpot : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hThinkerEntities; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Kunkka_NoQuarter : public CDOTA_Buff { public: int32_t m_nSpeedBonusPercentage; // 0x1138 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot : public CDOTA_Buff { public: float armour_increase; // 0x1138 float speed_increase_pct; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpotMarker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot_SeaLegs_Thinker : public CDOTA_Buff { public: Vector m_vLastPosition; // 0x1138 CHandle< CBaseEntity > m_hEntity; // 0x1144 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot_Thinker : public CDOTA_Buff { public: Vector m_vStartLoc; // 0x1138 bool m_bIsReflection; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CHandle< CBaseEntity > m_hEntity; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Return : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Fear : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_pEntityToBeAfraidOf; // 0x1138 }; // Alignment: 6 // Size: 0x580 class CDOTA_Ability_AghsFort_Kunkka_GhostShip : public CDOTABaseAbility { public: float buff_duration; // 0x550 float stun_duration; // 0x554 int32_t ghostship_width; // 0x558 int32_t ghostship_width_scepter; // 0x55c Vector m_vFinalDestination; // 0x560 Vector m_vStartingPoint; // 0x56c }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Kunkka_Ghost_Ship_Fire_Cannons : public CDOTA_Buff { public: float m_flDistance; // 0x1138 float m_flSpeed; // 0x113c int32_t m_nNumCannons; // 0x1140 float m_flProjectileRadius; // 0x1144 bool m_bGhostShipIsEntity; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: int32_t m_hGhostShipProjectile; // 0x114c CHandle< CBaseEntity > m_hGhostShip; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Ghost_Ship_Fire_Cannons : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Kunkka_Ghost_Ship_Fleet : public CDOTA_Buff { public: Vector vCasterOrigin; // 0x1138 Vector vEnd; // 0x1144 int32_t m_nHitCount; // 0x1150 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_Loaded : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_DamageAbsorb : public CDOTA_Buff { public: int32_t m_iAccumulatedDamage; // 0x1138 int32_t movespeed_bonus; // 0x113c float ghostship_absorb; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_DamageDelay : public CDOTA_Buff { public: int32_t m_iAccumulatedDamage; // 0x1138 float m_flDuration; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Kunkka_SeaSickness : public CDOTA_Buff { public: int32_t m_iAccumulatedDamage; // 0x1138 float m_flDuration; // 0x113c float m_flMovespeedBonus; // 0x1140 }; // Alignment: 1 // Size: 0x5b8 class CDOTA_Ability_AghsFort_Kunkka_Tidal_Wave : public CDOTABaseAbility { public: WaveData_t m_WaveData[2]; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Squall : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Grog_Blossom : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Marked : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Green_Around_the_Gills : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Angry_Recall : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Keelhaul : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Sealegs : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Rumboldened : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Man_the_Helm : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Davy_Jones_Locker_Aura : public CDOTA_Buff { public: float m_flRadius; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Davy_Jones_Locker : public CDOTABaseAbility { public: // no members available }; // Alignment: 19 // Size: 0x11e0 class CDOTA_Modifier_Kunkka_Man_the_Helm : public CDOTA_Modifier_MagicImmune { public: float tick_interval; // 0x1138 float forward_move_speed; // 0x113c float turn_rate_boosted; // 0x1140 float turn_rate; // 0x1144 int32_t hit_radius; // 0x1148 int32_t knockback_radius; // 0x114c bool m_bHitFirstUpdate; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: GameTime_t m_flHitEndTime; // 0x1154 float hit_recover_time; // 0x1158 float m_flTurnBoostProgress; // 0x115c float m_flFacingTarget; // 0x1160 GameTime_t m_flLastHeroAttackTime; // 0x1164 ParticleIndex_t m_nFXIndex; // 0x1168 float m_flGyroshellDurationRemaining; // 0x116c CUtlVector< float32 > m_flTurnHistory; // 0x1170 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1188 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x11a0 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x11b8 Vector m_vDirection; // 0x11d0 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Dread_Pirate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Kunkka_No_Quarter_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_No_Quarter_Counter : public CDOTA_Buff { public: int32_t m_nStackCount; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_No_Quarter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Skull_and_Bones : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Kunkka_Tidebringer_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x590 class CDOTA_Ability_AghsFort_VoidSpirit_AetherRemnant : public CDOTABaseAbility { public: int32_t start_radius; // 0x550 int32_t end_radius; // 0x554 int32_t remnant_watch_distance; // 0x558 int32_t projectile_speed; // 0x55c private: [[maybe_unused]] uint8_t __pad0560[0x8]; // 0x560 public: Vector m_vDashPosition; // 0x568 Vector m_vFacePosition; // 0x574 Vector m_vEndpoint; // 0x580 int32_t m_nProjectileID; // 0x58c }; // Alignment: 12 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Unit : public CDOTA_Buff { public: bool m_bActivated; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: Vector m_vFacingDir; // 0x113c CUtlVector< Vector > m_vecWatchPositions; // 0x1148 ParticleIndex_t m_nBeamFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< int32 > m_nViewerIDs; // 0x1168 int32_t remnant_watch_distance; // 0x1180 int32_t remnant_watch_radius; // 0x1184 float duration; // 0x1188 int32_t watch_path_vision_radius; // 0x118c int32_t impact_damage; // 0x1190 float pull_duration; // 0x1194 float activation_delay; // 0x1198 }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Pull : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 PlayerID_t m_nPlayerID; // 0x113c float m_fMovementSpeed; // 0x1140 Vector m_vPullTarget; // 0x1144 Vector m_vFacingDir; // 0x1150 float think_interval; // 0x115c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnantThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 Vector m_vFacingDir; // 0x113c CHandle< CBaseEntity > m_hRemnant; // 0x1148 bool m_bTriggered; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_flCurThink; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnantUnit_Truesight : public CDOTA_Buff { public: int32_t m_nRadius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 9 // Size: 0x590 class CDOTA_Ability_AghsFort_VoidSpirit_AstralStep : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 Vector m_vDestination; // 0x55c Vector m_vDirection; // 0x568 int32_t radius; // 0x574 int32_t min_travel_distance; // 0x578 int32_t max_travel_distance; // 0x57c float debuff_duration; // 0x580 float pop_damage_delay; // 0x584 int32_t pop_damage; // 0x588 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Debuff : public CDOTA_Buff { public: ParticleIndex_t m_nFXStackIndex; // 0x1138 float m_fVoidMarkPct; // 0x113c int32_t movement_slow_pct; // 0x1140 int32_t pop_damage; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Caster : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_AghsFort_VoidSpirit_Dissimilate : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_vecTranslocatingAllies; // 0x550 float phase_duration; // 0x568 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Phase_Ally : public CDOTA_Buff { public: int32_t damage_radius; // 0x1138 float debuff_duration; // 0x113c int32_t destination_fx_radius; // 0x1140 int32_t damage; // 0x1144 Vector m_vExitPos; // 0x1148 }; // Alignment: 20 // Size: 0x11e0 class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Phase : public CDOTA_Buff { public: Vector m_vFirstPortalPos; // 0x1138 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< Vector > m_vecDestinations; // 0x1148 CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1160 CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1178 int32_t m_nCurrentDestinationIndex; // 0x1190 int32_t m_nClosestIndexPosToClick; // 0x1194 int32_t m_nPortalHeightOffset; // 0x1198 private: [[maybe_unused]] uint8_t __pad119c[0x4]; // 0x119c public: char* m_szAlliesPortalFX; // 0x11a0 char* m_szEnemiesPortalFX; // 0x11a8 int32_t m_nPortalRadius; // 0x11b0 int32_t m_nPortalPadding; // 0x11b4 int32_t m_nFinalImpactDamageRadius; // 0x11b8 int32_t m_nFinalImpactFXRadius; // 0x11bc int32_t destination_fx_radius; // 0x11c0 int32_t damage_radius; // 0x11c4 int32_t portals_per_ring; // 0x11c8 int32_t angle_per_ring_portal; // 0x11cc int32_t first_ring_distance_offset; // 0x11d0 float debuff_duration; // 0x11d4 int32_t damage; // 0x11d8 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_PhysicalBuff : public CDOTA_Buff { public: int32_t base_absorb_amount; // 0x1138 int32_t m_nAbsorbRemaining; // 0x113c }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_AghsFort_VoidSpirit_ResonantPulse : public CDOTABaseAbility { public: float buff_duration; // 0x550 int32_t base_absorb_amount; // 0x554 int32_t absorb_per_unit_hit; // 0x558 float hero_absorb_multiplier; // 0x55c float boss_absorb_multiplier; // 0x560 }; // Alignment: 9 // Size: 0x1188 class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_Ring : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_EnemiesHit; // 0x1148 CUtlVector< CHandle< CBaseEntity > > m_AlliesHit; // 0x1160 int32_t speed; // 0x1178 int32_t radius; // 0x117c int32_t damage; // 0x1180 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_Push : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Push : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_nRemnantProjectileID; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_PhantomAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_PhantomAttack_Crit : public CDOTA_Buff { public: int32_t m_nCritPercent; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling_ImpactSlow : public CDOTA_Buff { public: int32_t move_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Translocate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Expanse : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Remnants : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Lure : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_Dissimilate_Lure_Thinker : public CDOTA_Buff { public: int32_t m_nDamageRadius; // 0x1138 float m_fDissimilateDamage; // 0x113c float m_fThinkInterval; // 0x1140 float m_fDissimilateDamagePctPerInterval; // 0x1144 float m_fLingerDuration; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_Dissimilate_Lure_Burn : public CDOTA_Buff { public: float m_fDamagePerInterval; // 0x1138 int32_t m_nBonusIncomingMagicDamage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Knockback : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_SpellAmped : public CDOTA_Buff { public: int32_t m_nSpellAmp; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Cadence : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_Cadence : public CDOTA_Buff { public: float m_fSpellAmp; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Suppression : public CDOTABaseAbility { public: int32_t m_nBonusCharges; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_VoidSpirit_ResonantPulse_Suppression_MagicImmunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Vacuum : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Vacuum_Motion : public CDOTA_Buff { public: float m_fVacuumSpeed; // 0x1138 float m_fStunDuration; // 0x113c Vector m_vPullLoc; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Attacks : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AstralStep_Attacks : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Trail : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Trail_Thinker : public CDOTA_Buff { public: float m_fThinkInterval; // 0x1138 float m_fPopDamagePctPerInterval; // 0x113c float m_fLingerDuration; // 0x1140 int32_t radius; // 0x1144 int32_t pop_damage; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Trail_Burn : public CDOTA_Buff { public: float m_fDamagePerInterval; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Breach : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Breach_Burn : public CDOTA_Buff { public: float m_fDamagePerInterval; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AstralStep_RestoreTime : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AetherRemnant_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_Dissimilate_Stun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_ResonantPulse_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AstralStep_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_VoidSpirit_Dissimilate_Invis : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Aghsfort_Gyrocopter_Call_Down : public CDOTABaseAbility { public: Vector m_vEndpoint; // 0x550 int32_t range_scepter; // 0x55c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Gyrocopter_Rocket_Barrage : public CDOTABaseAbility { public: float duration; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Gyrocopter_Rocket_Barrage : public CDOTA_Buff { public: int32_t rocket_damage; // 0x1138 int32_t m_nPower; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride : public CDOTA_Buff { public: int32_t grab_radius; // 0x1138 CHandle< CBaseEntity > m_hLoadedUnit; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Gyrocopter_Homing_Missile : public CDOTABaseAbility { public: // no members available }; // Alignment: 14 // Size: 0x1190 class CDOTA_Modifier_Aghsfort_Gyrocopter_Homing_Missile : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nFXIndex2; // 0x113c int32_t acceleration; // 0x1140 float pre_flight_time; // 0x1144 float stun_duration; // 0x1148 int32_t m_nMissileDamage; // 0x114c int32_t damage; // 0x1150 int32_t m_nTeamNumber; // 0x1154 private: [[maybe_unused]] uint8_t __pad1158[0x8]; // 0x1158 public: float speed; // 0x1160 float m_flFacingTarget; // 0x1164 int32_t movement_turn_rate; // 0x1168 int32_t m_nPower; // 0x116c CHandle< CBaseEntity > m_hAttachTarget; // 0x1170 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CountdownTimer m_MoveTime; // 0x1178 }; // Alignment: 0 // Size: 0x570 class CDOTA_Ability_Aghsfort_Gyrocopter_Flak_Cannon : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Gyrocopter_Flak_Cannon : public CDOTA_Buff { public: int32_t max_attacks; // 0x1138 int32_t bonus_damage; // 0x113c int32_t m_iNumAttacks; // 0x1140 int32_t projectile_speed; // 0x1144 int32_t radius; // 0x1148 int32_t max_targets; // 0x114c bool m_bFirstStrike; // 0x1150 bool m_bShouldFireMissiles; // 0x1151 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Gyrocopter_Flak_Cannon_Scepter : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t scepter_radius; // 0x113c int32_t m_iAttackRecord; // 0x1140 }; // Alignment: 12 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Gyrocopter_Call_Down : public CDOTA_Buff { public: int32_t slow_duration_first; // 0x1138 int32_t slow_duration_second; // 0x113c int32_t damage_first; // 0x1140 int32_t damage_second; // 0x1144 float power; // 0x1148 int32_t radius; // 0x114c float slow_first; // 0x1150 float slow_second; // 0x1154 bool m_bDelayed; // 0x1158 bool m_bHalfDamage; // 0x1159 bool m_bFirstStrike; // 0x115a private: [[maybe_unused]] uint8_t __pad115b[0x1]; // 0x115b public: CHandle< CBaseEntity > m_hInflictorAbility; // 0x115c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Gyrocopter_Call_Down_Slow : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_OnAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_DoubleTarget : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_Flare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_Ground : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Barrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Ride : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Minimissile : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_CallDown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_First_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_Side_Gunner : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_Missiles : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_FireTrail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_AttackBuff : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_MineField : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_Strafe : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_Precision_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_RocketBarrage_On_Attack : public CDOTA_Buff { public: int32_t strike_chance; // 0x1138 float duration; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Gyrocopter_Rocket_Barrage_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride_LoadedUnit : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_hMissile; // 0x1138 int32_t hit_radius; // 0x113c float timeout_duration; // 0x1140 int32_t damage; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride_LoadedUnit_Timeout : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Flak_Cannon_Fire_Trail_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 int32_t path_radius; // 0x1144 float linger_duration; // 0x1148 float flDamage; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Flak_Cannon_Fire_Trail_Burn : public CDOTA_Buff { public: float flDamage; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Call_Down_Attack_Buff : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 int32_t attackspeed; // 0x113c }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Special_Gyrocopter_Call_Down_Land_Mines : public CDOTA_Buff { public: int32_t radius; // 0x1138 float proximity_threshold; // 0x113c float damage; // 0x1140 float activation_delay; // 0x1144 bool bActivated; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x7]; // 0x1149 public: CountdownTimer m_Timer; // 0x1150 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Call_Down_Wingman : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c float m_flCurVertTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float m_flEndTime; // 0x1164 int32_t push_length; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Dawnbreaker_Fire_Wreath : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_Aghsfort_Dawnbreaker_Solar_Guardian : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 bool m_bJumping; // 0x554 private: [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 public: CUtlVector< CHandle< CBaseEntity > > m_vecDeathThinkers; // 0x558 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Thinker : public CDOTA_Buff { public: float pulse_interval; // 0x1138 int32_t iEffectRadius; // 0x113c int32_t base_damage; // 0x1140 int32_t base_heal; // 0x1144 int32_t scepter_heal; // 0x1148 CHandle< CBaseEntity > m_hFollowTarget; // 0x114c CHandle< CBaseEntity > m_hInflictor; // 0x1150 GameTime_t m_flNextPulseTime; // 0x1154 ParticleIndex_t m_nThinkerFXIndex; // 0x1158 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Evasion : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_AghsFort_Dawnbreaker_Solar_Guardian_AirTime : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c Vector m_vDirection; // 0x1140 float m_flEndTime; // 0x114c CHandle< CBaseEntity > m_hThinker; // 0x1150 Vector m_vTargetPosition; // 0x1154 Vector m_vStartPosition; // 0x1160 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Disable : public CDOTA_Buff { public: ParticleIndex_t m_nCasterFXIndex; // 0x1138 ParticleIndex_t m_nStatusFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_After_Land : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Dawnbreaker_Luminosity : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity : public CDOTA_Buff { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t attack_count; // 0x113c bool m_bShouldIncrement; // 0x1140 }; // Alignment: 14 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Attack_Buff : public CDOTA_Buff { public: bool m_bIsBuffedAttack; // 0x1138 bool m_bSunSentinel; // 0x1139 private: [[maybe_unused]] uint8_t __pad113a[0x2]; // 0x113a public: int32_t heal_pct; // 0x113c int32_t bonus_damage; // 0x1140 int32_t heal_radius; // 0x1144 int32_t heal_from_creeps; // 0x1148 int32_t allied_healing_pct; // 0x114c int32_t m_nSmashDamage; // 0x1150 int32_t m_nCounterOrbitalChance; // 0x1154 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesToHeal; // 0x1158 float m_flTotalToHeal; // 0x1170 bool m_bCounterOrbitalProcessed; // 0x1174 bool m_bIsCounterOrbitalSmash; // 0x1175 bool m_bBrightFoundryProcessed; // 0x1176 }; // Alignment: 9 // Size: 0x590 class CDOTA_Ability_Aghsfort_Dawnbreaker_Celestial_Hammer : public CDOTABaseAbility { public: int32_t projectile_speed; // 0x550 int32_t projectile_radius; // 0x554 int32_t hammer_damage; // 0x558 int32_t hammer_aoe_radius; // 0x55c int32_t flare_radius; // 0x560 bool bHasStartedBurning; // 0x564 private: [[maybe_unused]] uint8_t __pad0565[0x3]; // 0x565 public: float flare_debuff_duration; // 0x568 int32_t return_anim_distance_threshold; // 0x56c int32_t range; // 0x570 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge_Thinker : public CDOTA_Buff { public: int32_t flare_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c CHandle< CBaseEntity > m_hInflictor; // 0x1140 }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 int32_t projectile_speed; // 0x113c int32_t travel_speed_pct; // 0x1140 int32_t m_nMaxRange; // 0x1144 Vector m_vStartPoint; // 0x1148 Vector m_vLastTrailThinkerLocation; // 0x1154 Vector m_vEndPointShard; // 0x1160 ParticleIndex_t m_nStatusFXIndex; // 0x116c int32_t flare_radius; // 0x1170 bool bHasStartedBurning; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: float flare_debuff_duration; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Caster : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Thinker : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 float trail_duration; // 0x113c int32_t flare_radius; // 0x1140 int32_t m_nProjectileHandle; // 0x1144 CHandle< CBaseEntity > m_hHavenThinker; // 0x1148 }; // Alignment: 22 // Size: 0x1198 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Caster : public CDOTA_Buff { public: int32_t swipe_radius; // 0x1138 int32_t swipe_damage; // 0x113c int32_t smash_radius; // 0x1140 int32_t smash_damage; // 0x1144 int32_t m_nCurrentSpeed; // 0x1148 float flSwipeInterval; // 0x114c GameTime_t m_flNextHit; // 0x1150 int32_t iCurrentAttack; // 0x1154 int32_t total_attacks; // 0x1158 float smash_stun_duration; // 0x115c float sweep_stun_duration; // 0x1160 bool m_bHasCompletedMove; // 0x1164 private: [[maybe_unused]] uint8_t __pad1165[0x3]; // 0x1165 public: float duration; // 0x1168 Vector m_vTargetHorizontalDirection; // 0x116c int32_t smash_distance_from_hero; // 0x1178 float animation_rate; // 0x117c float turn_rate; // 0x1180 float m_flFacingTarget; // 0x1184 bool m_bSuncrusher; // 0x1188 private: [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 public: float m_flDistanceSinceStandAblazeThinker; // 0x118c float m_flDistancePerStandAblazeThinker; // 0x1190 CHandle< CDOTABaseAbility > m_hCelestialHammerForFire; // 0x1194 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Attack_Bonus : public CDOTA_Buff { public: int32_t attack_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Slow : public CDOTA_Buff { public: int32_t swipe_slow; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Smash_Stun : public CDOTA_Buff { public: int32_t damage; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Dawnbreaker_Converge : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 int32_t burn_damage; // 0x113c float burn_interval; // 0x1140 CHandle< CBaseEntity > m_hInflictor; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Dawnbreaker_Land : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_StarbreakerCelestialFire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_CelestialFire_Thinker : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge_Thinker { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_CelestialFire_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Starbreaker_Suncrusher : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_SunForge : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_BrightFoundry : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_BrightFoundry_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_Haven : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_HammerTime : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_SolarBattery : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_SolarBattery : public CDOTA_Buff { public: int32_t move_speed_pct; // 0x1138 int32_t attack_speed; // 0x113c int32_t m_nBonusMovementSpeedPct; // 0x1140 int32_t m_nBonusAttackSpeed; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_Lightbringer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Lightbringer : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_SunSentinel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Dawnbreaker_SunSentinelLuminosity_Attack_Buff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Attack_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar_Active : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 bool m_bPassive; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float m_flCooldown; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_SolarFlare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Dawnbreaker_SolarFlare_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Starbreaker_CounterOrbital : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Dawnbreaker_Starbreaker_CounterOrbital : public CDOTA_Buff { public: int32_t trigger_chance; // 0x1138 float cooldown; // 0x113c GameTime_t m_fLastProc; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Dawnbreaker_Starbreaker_CounterOrbital_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_Invis : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_Confusion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_Burst : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Bane_Enfeeble : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Bane_Enfeeble : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Bane_Enfeeble_Effect : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t heal_reduction; // 0x113c int32_t cast_reduction; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Aghsfort_Bane_BrainSap : public CDOTABaseAbility { public: int32_t cast_range; // 0x550 int32_t brain_sap_damage; // 0x554 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Bane_Nightmare : public CDOTABaseAbility { public: int32_t m_nNightmareSwapCount; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Bane_NightmareEnd : public CDOTABaseAbility { public: // no members available }; // Alignment: 12 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_Bane_Nightmare : public CDOTA_Buff { public: bool m_bSweetDreams; // 0x1138 bool m_bConfusion; // 0x1139 bool m_bSelfBreakAvailable; // 0x113a bool m_bNoStatusEffect; // 0x113b int32_t m_nSource; // 0x113c float animation_rate; // 0x1140 GameTime_t m_flNextNightmareDamageTime; // 0x1144 float m_flAccumNightmareDamage; // 0x1148 int32_t movespeed_pct; // 0x114c int32_t attack_speed; // 0x1150 int32_t model_scale; // 0x1154 CHandle< CBaseEntity > m_hConfusionAttackTarget; // 0x1158 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Bane_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable { public: int32_t m_nMoveSpeed; // 0x1138 }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_Aghsfort_Bane_FiendsGrip : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hGripTarget; // 0x550 int32_t fiend_grip_damage; // 0x554 int32_t fiend_grip_spread_radius; // 0x558 float channel_time; // 0x55c float fiend_grip_tick_interval; // 0x560 GameTime_t m_flLastSpreadTime; // 0x564 }; // Alignment: 9 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip : public CDOTA_Buff { public: int32_t fiend_grip_mana_drain; // 0x1138 int32_t fiend_grip_boost_lifesteal_multiplier; // 0x113c int32_t fiend_grip_damage; // 0x1140 int32_t fiend_grip_spread_radius; // 0x1144 float fiend_grip_tick_interval; // 0x1148 GameTime_t m_flLastSpreadTime; // 0x114c bool m_bThinkerSource; // 0x1150 bool m_bRequiresChanneling; // 0x1151 bool m_bPrimaryGrip; // 0x1152 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Cast_Illusion : public CDOTA_Buff { public: int32_t fiend_grip_mana_drain; // 0x1138 float fiend_grip_tick_interval; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Self : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Illusion_Can_Only_Channel : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_DeathSpread : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_DamageSteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Bane_Enfeeble_DamageStealBuff : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_EndFiendGrip : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Bane_FiendsGripThinker : public CDOTA_Buff { public: int32_t latch_range; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_Spread : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_AutoNightmare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_NightmareMirror : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_Spill : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_BoostAlly : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_Knockback_Slow : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1190 class CDOTA_Modifier_AghsFort_Bane_BrainSap_Knockback : public CDOTA_Modifier_Knockback { public: int32_t radius; // 0x1168 int32_t heal_pct; // 0x116c float slow_duration; // 0x1170 int32_t m_nBrainSapDamage; // 0x1174 CUtlVector< CHandle< CBaseEntity > > m_vecHitTargets; // 0x1178 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Bane_BrainSap_KnockbackSlow : public CDOTA_Buff { public: int32_t movement_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_SweetDreams : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Bane_BrainSap_NightmareMirror : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Bane_BrainSap_Invis : public CDOTA_Modifier_Invisible { public: int32_t invis_movement_speed; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Bane_Invis_Crit : public CDOTA_Buff { public: int32_t invis_brain_sap_crit_pct; // 0x1138 int32_t m_nCritPct; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Phoenix_SunRay : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Phoenix_SunRayStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Phoenix_SunRayVision : public CDOTA_Buff { public: // no members available }; // Alignment: 21 // Size: 0x11b8 class CDOTA_Modifier_AghsFort_Phoenix_SunRay : public CDOTA_Buff { public: float hp_cost_pct; // 0x1138 int32_t beam_range; // 0x113c int32_t base_damage; // 0x1140 int32_t base_heal; // 0x1144 float tick_interval; // 0x1148 float forward_move_speed; // 0x114c float turn_rate_initial; // 0x1150 float turn_rate; // 0x1154 int32_t radius; // 0x1158 float m_flCurrentTime; // 0x115c float m_flAccumulatedSelfDamage; // 0x1160 bool m_bMovingForward; // 0x1164 bool m_bTurningFast; // 0x1165 private: [[maybe_unused]] uint8_t __pad1166[0x2]; // 0x1166 public: float m_flFacingTarget; // 0x1168 float hp_perc_heal; // 0x116c ParticleIndex_t m_nBeamFXIndex; // 0x1170 CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1174 CHandle< CBaseEntity > m_hBeamEnd; // 0x1194 bool m_bCreatedVisionThinkers; // 0x1198 private: [[maybe_unused]] uint8_t __pad1199[0x3]; // 0x1199 public: CHandle< CBaseEntity > m_hBeamEndSound; // 0x119c CUtlVector< CHandle< CBaseEntity > > m_vecDispelledAllies; // 0x11a0 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Phoenix_SunRayToggleMove : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_Phoenix_IcarusDive : public CDOTABaseAbility { public: int32_t hp_cost_perc; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Phoenix_IcarusDiveStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 13 // Size: 0x11a8 class CDOTA_Modifier_AghsFort_Phoenix_IcarusDive : public CDOTA_Buff { public: Vector m_vSource; // 0x1138 Vector m_vTarget; // 0x1144 Vector m_vDirection; // 0x1150 QAngle m_angDirection; // 0x115c float m_flCurrentTime; // 0x1168 int32_t dash_length; // 0x116c int32_t dash_width; // 0x1170 int32_t hit_radius; // 0x1174 float burn_duration; // 0x1178 float dive_duration; // 0x117c int32_t damage_per_second; // 0x1180 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1188 bool m_bSavedAlly; // 0x11a0 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Phoenix_IcarusDiveBurn : public CDOTA_Buff { public: float burn_tick_interval; // 0x1138 int32_t damage_per_second; // 0x113c int32_t slow_movement_speed_pct; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AghsFort_Phoenix_FireSpirits : public CDOTABaseAbility { public: int32_t hp_cost_perc; // 0x550 int32_t spirit_count; // 0x554 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Phoenix_FireSpiritCount : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t spirit_count; // 0x113c }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_AghsFort_Phoenix_LaunchFireSpirit : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 bool m_bUnitCarriedByArtillery; // 0x554 private: [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 public: int32_t m_nSpiritSpeed; // 0x558 float m_fDuration; // 0x55c int32_t m_nRadius; // 0x560 int32_t m_nSpiritCount; // 0x564 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Phoenix_FireSpiritBurn : public CDOTA_Buff { public: float tick_interval; // 0x1138 int32_t attackspeed_slow; // 0x113c int32_t damage_per_second; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Phoenix_Supernova : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Phoenix_SupernovaHiding : public CDOTA_Buff { public: // no members available }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Phoenix_Sun : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 float stun_duration; // 0x113c int32_t attacks_to_kill; // 0x1140 int32_t captain_attack_value; // 0x1144 int32_t boss_attack_value; // 0x1148 CHandle< CBaseEntity > m_hSecondaryTarget; // 0x114c bool m_bHasExpelCoreShard; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: int32_t m_nAttackCount; // 0x1154 int32_t creep_attacks_count; // 0x1158 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Phoenix_SecondSun : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 float stun_duration; // 0x113c int32_t attacks_to_kill; // 0x1140 int32_t captain_attack_value; // 0x1144 int32_t boss_attack_value; // 0x1148 int32_t m_nAttackCount; // 0x114c int32_t m_nRadius; // 0x1150 float m_fSecondSunRadiusPct; // 0x1154 int32_t creep_attacks_count; // 0x1158 }; // Alignment: 12 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Phoenix_Sun_Debuff : public CDOTA_Buff { public: int32_t damage_per_sec; // 0x1138 float damage_interval; // 0x113c int32_t aura_radius; // 0x1140 float m_fRadius; // 0x1144 float m_fSecondSunRadiusPct; // 0x1148 GameTime_t m_fNextDamageTime; // 0x114c GameTime_t m_fLastThinkTime; // 0x1150 bool m_bHasHorizonAbility; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: int32_t m_nHorizonPushDistance; // 0x1158 float m_fHorizonPushInterval; // 0x115c GameTime_t m_fNextHorizonPushTime; // 0x1160 ParticleIndex_t m_nHorizonFX; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_Savior : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Caster : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Ally : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hSaviorEnt; // 0x1138 float ally_position_offset; // 0x113c }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Invis : public CDOTA_Modifier_PersistentInvisibility { public: float duration; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_BlastWave : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_SecondSun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_Vitality : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_Artillery : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Special_Phoenix_FireSpirits_Artillery_Carry : public CDOTA_Buff { public: int32_t m_nProjectileHandle; // 0x1138 Vector m_vDirection; // 0x113c float unit_position_offset; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_FlameRevenant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Phoenix_Flame_Revenant_Attack : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Attack_TreeFire_Thinker : public CDOTA_Buff { public: CUtlVector< CUtlPair< CHandle< CBaseEntity >, GameTime_t > > m_vecTreeFires; // 0x1138 bool m_bCleanupWhenEmpty; // 0x1150 }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Attack : public CDOTA_Buff { public: float radius_pct_as_length; // 0x1138 int32_t width; // 0x113c float linger_duration; // 0x1140 float m_fLength; // 0x1144 ParticleIndex_t m_nBeamFXIndex; // 0x1148 CHandle< CBaseEntity > m_hBeamEnd; // 0x114c GameTime_t m_flLastHit; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CBaseEntity* > m_vecBurningTrees; // 0x1158 CHandle< CBaseEntity > m_hTreeFireThinker; // 0x1170 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Phoenix_FlameRevenant_Attack_Damage : public CDOTA_Buff { public: float m_fDamagePerSecond; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c ParticleIndex_t m_nActiveFXIndex; // 0x1140 ParticleIndex_t m_nActiveStatusFXIndex; // 0x1144 float flame_revenant_damage_pct; // 0x1148 float think_interval; // 0x114c int32_t move_slow_pct; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_Luminance : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_FocusPoint : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_GammaRay : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Special_Phoenix_SunRay_GammaRay_Slow : public CDOTA_Buff { public: int32_t move_slow_pct; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Phoenix_SunRay_Luminance : public CDOTA_Buff { public: float pct_of_heal_as_attack_speed; // 0x1138 float m_fAttackSpeedBonus; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_Capture : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_Horizon : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_ExpelCore : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Phoenix_Supernova_BonusDps : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Phoenix_SunRay_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Phoenix_Supernova_AttacksToKill : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_ArcWardenBoss_Flux : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1168 class CDOTA_Modifier_AghsFort_ArcWardenBoss_Flux : public CDOTA_Buff { public: int32_t m_nCasterTeam; // 0x1138 int32_t damage_per_tick_min; // 0x113c int32_t damage_per_tick_max; // 0x1140 int32_t search_radius; // 0x1144 int32_t move_speed_slow_pct; // 0x1148 float think_interval; // 0x114c float m_fCurrentDamage; // 0x1150 float m_fDamageIncreasePerTick; // 0x1154 int32_t m_nCurrentSlow; // 0x1158 bool m_bAlone; // 0x115c private: [[maybe_unused]] uint8_t __pad115d[0x3]; // 0x115d public: ParticleIndex_t m_nFXIndex; // 0x1160 }; // Alignment: 0 // Size: 0x550 class CDOTA_AghsFort_Ability_ArcWardenBoss_MagneticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Evasion : public CDOTA_Buff { public: int32_t radius; // 0x1140 float explosion_delay_time; // 0x1144 float explosion_stun_duration; // 0x1148 int32_t explosion_damage; // 0x114c int32_t caster_team; // 0x1150 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Explosion : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t explosion_damage; // 0x113c float explosion_stun_duration; // 0x1140 float explosion_delay_time; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Attack_Speed : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Evasion : public CDOTA_Buff { public: int32_t evasion_chance; // 0x1138 int32_t radius; // 0x113c float aura_origin_x; // 0x1140 float aura_origin_y; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Attack_Speed : public CDOTA_Buff { public: int32_t attack_speed_bonus; // 0x1138 }; // Alignment: 5 // Size: 0x568 class CDOTA_AghsFort_Ability_ArcWardenBoss_SparkWraith : public CDOTABaseAbility { public: float duration; // 0x550 float activation_delay; // 0x554 float wraith_vision_duration; // 0x558 int32_t wraith_vision_radius; // 0x55c int32_t spark_damage; // 0x560 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_ArcWardenBoss_SparkWraith_Purge : public CDOTA_Buff { public: int32_t move_speed_slow_pct; // 0x1138 }; // Alignment: 18 // Size: 0x1190 class CDOTA_Modifier_AghsFort_ArcWardenBoss_SparkWraith_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t wraith_vision_radius; // 0x113c int32_t wraith_speed; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x8]; // 0x1144 public: float activation_delay; // 0x114c float scepter_activation_delay; // 0x1150 float think_interval; // 0x1154 float search_timer_min; // 0x1158 float search_timer_max; // 0x115c float mini_stun_duration; // 0x1160 int32_t move_speed_slow_pct; // 0x1164 int32_t m_nSparkDamage; // 0x1168 bool m_bActive; // 0x116c bool m_bOriginal; // 0x116d private: [[maybe_unused]] uint8_t __pad116e[0x2]; // 0x116e public: float m_fSearchTimer; // 0x1170 float m_fRotationSpeed; // 0x1174 int32_t m_nRotationDirection; // 0x1178 Vector m_vRotationCenter; // 0x117c ParticleIndex_t m_nFXIndex; // 0x1188 }; // Alignment: 1 // Size: 0x558 class CDOTA_AghsFort_Ability_ArcWardenBoss_TempestDouble : public CDOTABaseAbility { public: int32_t m_nNumDoubles; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_ArcWardenBoss_TempestDouble : public CDOTA_Buff { public: int32_t damage_increase; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_ArcWardenBoss_TempestDouble_Phase : public CDOTA_Buff { public: int32_t num_doubles; // 0x1138 }; // Alignment: 12 // Size: 0x1198 class CDOTA_Modifier_AghsFort_ArcWardenBoss_MeteorShockwave_Thinker : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 bool m_bWindingUp; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CountdownTimer m_ViewerTimer; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1168 int32_t speed; // 0x1180 int32_t radius; // 0x1184 float knockback_distance; // 0x1188 float knockback_duration; // 0x118c float windup_time; // 0x1190 }; // Alignment: 0 // Size: 0x550 class CDOTA_Aghsfort_Ability_ArcWardenBoss_Gleipnir : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ArcWardenBoss_SparkWraith_Missile : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x11b8 class CDOTA_Modifier_Aghsfort_ArcWardenBoss_SparkWraith_Missile : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nFXIndex2; // 0x113c int32_t hero_damage; // 0x1140 int32_t acceleration; // 0x1144 int32_t min_damage; // 0x1148 int32_t max_distance; // 0x114c float pre_flight_time; // 0x1150 float stun_duration; // 0x1154 int32_t m_nMissileDamage; // 0x1158 int32_t m_nTeamNumber; // 0x115c private: [[maybe_unused]] uint8_t __pad1160[0x8]; // 0x1160 public: float speed; // 0x1168 CHandle< CBaseEntity > m_hAttachTarget; // 0x116c Vector m_vStartPosition; // 0x1170 private: [[maybe_unused]] uint8_t __pad117c[0x4]; // 0x117c public: CountdownTimer m_EnemyVision; // 0x1180 CountdownTimer m_MoveTime; // 0x1198 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_ArcWardenBoss_SparkWraith_Missile_Target : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_BossEarthshaker_Fissure : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Shard : public CDOTA_Buff { public: Vector m_vStartPos; // 0x1138 Vector m_vEndPos; // 0x1144 GameTime_t m_flEndTime; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Shard_Pathing : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_BossEarthshaker_EnchantTotem : public CDOTABaseAbility { public: // no members available }; // Alignment: 19 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_Leap : public CDOTA_Buff { public: Vector m_vLoc; // 0x113c float m_flPredictedTotalTime; // 0x1148 Vector m_vStartPosition; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bHorizontalMotionInterrupted; // 0x1160 bool m_bDamageApplied; // 0x1161 bool m_bTargetTeleported; // 0x1162 private: [[maybe_unused]] uint8_t __pad1163[0x1]; // 0x1163 public: Vector m_vHorizontalVelocity; // 0x1164 Vector m_vLastKnownTargetPosition; // 0x1170 float m_flInitialVelocityZ; // 0x117c ParticleIndex_t m_nPreviewFX; // 0x1180 int32_t scepter_height; // 0x1184 int32_t scepter_height_arcbuffer; // 0x1188 int32_t scepter_acceleration_z; // 0x118c int32_t scepter_acceleration_horizontal; // 0x1190 int32_t landing_radius; // 0x1194 float landing_debuff_duration; // 0x1198 int32_t landing_impact_damage; // 0x119c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_Animation : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_LandDebuff : public CDOTA_Buff { public: int32_t landing_move_slow_pct; // 0x1138 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 int32_t totem_damage_percentage; // 0x113c private: [[maybe_unused]] uint8_t __pad1140[0x8]; // 0x1140 public: bool bActive; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_CreateRock : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_Thinker : public CDOTA_Buff { public: int32_t effect_radius; // 0x1138 float rock_duration; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_HP : public CDOTA_Buff { public: int32_t rock_health; // 0x1138 int32_t rock_visualzdelta; // 0x113c bool m_bIsCrushing; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t summon_count; // 0x1144 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_Crush : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hRock; // 0x1138 QAngle m_qRotation; // 0x113c float m_flOldPitch; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_HeavySteps : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Primalbeast_Boss_HeavySteps : public CDOTA_Buff { public: Vector vLastPos; // 0x1138 float flCurrentDistance; // 0x1144 int32_t step_distance; // 0x1148 int32_t effect_radius; // 0x114c int32_t base_damage; // 0x1150 CHandle< CBaseEntity > m_hTarget; // 0x1154 CountdownTimer ctLastCommandTimer; // 0x1158 bool m_bMoveCommandIssued; // 0x1170 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Pummel : public CDOTABaseAbility { public: CDOTA_BaseNPC* m_hTarget; // 0x550 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 float m_flOffset; // 0x113c QAngle m_vStartAngles; // 0x1140 float animation_rate; // 0x114c }; // Alignment: 14 // Size: 0x1190 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Self : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_hTarget; // 0x1138 Vector m_vPos; // 0x113c int32_t splash_radius; // 0x1148 float interval; // 0x114c float ministun; // 0x1150 int32_t m_nCurrentHitCount; // 0x1154 int32_t total_ripple_circles; // 0x1158 int32_t ripple_step_distance; // 0x115c int32_t ripple_step_distance_offset; // 0x1160 float health_damage; // 0x1164 float ripple_duration; // 0x1168 int32_t ripple_damage; // 0x116c CUtlVector< int32 > m_vLastRippleOffsets; // 0x1170 float self_animation_rate; // 0x1188 }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Ripple_Thinker : public CDOTA_Buff { public: int32_t ripple_effect_width; // 0x1138 int32_t ripple_damage; // 0x113c int32_t health_damage; // 0x1140 int32_t ripple_count; // 0x1144 int32_t total_ripple_circles; // 0x1148 float radius; // 0x114c float ripple_slow_duration; // 0x1150 float ripple_knockback_duration; // 0x1154 CHandle< CBaseEntity > m_hGrabbedEnemy; // 0x1158 ParticleIndex_t m_nPreviewFXIndex; // 0x115c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Damage_Tracking : public CDOTA_Buff { public: int32_t damage_limit; // 0x1138 ParticleIndex_t m_nFxIndex; // 0x113c float m_fTotalDamage; // 0x1140 }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_End_Knockback : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bTargetTeleported; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 14 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Pummel_LootDrop_Thinker : public CDOTA_Buff { public: bool m_bAutoPickup; // 0x1138 bool m_bOnlyPlayerHeroPickup; // 0x1139 bool m_bCreepHeroPickup; // 0x113a bool m_bAutoUse; // 0x113b bool m_bFlying; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: GameTime_t m_flKnockbackStartTime; // 0x1140 GameTime_t m_flKnockbackEndTime; // 0x1144 float m_flKnockbackHeight; // 0x1148 float m_flInitialHeight; // 0x114c float m_flKnockbackDuration; // 0x1150 float m_flEndHeight; // 0x1154 Vector m_vStartPos; // 0x1158 Vector m_vEndPos; // 0x1164 ParticleIndex_t m_nContainerFx; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PrimalBeast_Pummel_DroppedItem : public CDOTA_Buff { public: ParticleIndex_t m_nPreviewFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Onslaught : public CDOTABaseAbility { public: float max_charge_time; // 0x550 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Windup : public CDOTA_Buff { public: float m_flFacingTarget; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c ParticleIndex_t m_nCrosshairFX; // 0x1140 float charge_duration; // 0x1144 float max_charge_time; // 0x1148 float turn_rate; // 0x114c float base_power; // 0x1150 int32_t charge_speed; // 0x1154 float animation_rate; // 0x1158 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Movement : public CDOTA_Buff { public: float charge_speed; // 0x1138 int32_t knockback_radius; // 0x113c int32_t knockback_distance; // 0x1140 int32_t knockback_damage; // 0x1144 int32_t forward_offset; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x114c float m_flFacingTarget; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x1154 CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Knockback : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bTargetTeleported; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Inhibition : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Inhibition : public CDOTA_Buff { public: float debuff_duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Inhibition_Debuff : public CDOTA_Buff { public: int32_t heal_suppression_pct; // 0x1138 int32_t armor_reduction_pct; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Vault : public CDOTABaseAbility { public: // no members available }; // Alignment: 12 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Vault : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c GameTime_t m_flEndTime; // 0x1140 Vector m_vStartPosition; // 0x1144 Vector m_vTargetHorizontalDirection; // 0x1150 float m_flCurrentTimeHoriz; // 0x115c float m_flCurrentTimeVert; // 0x1160 bool m_bInterrupted; // 0x1164 bool m_bStartedLandingSequence; // 0x1165 private: [[maybe_unused]] uint8_t __pad1166[0x2]; // 0x1166 public: float vault_speed; // 0x1168 float vault_acceleration; // 0x116c int32_t vault_radius; // 0x1170 }; // Alignment: 6 // Size: 0x570 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_ThrowAttack : public CDOTABaseAbility { public: int32_t base_damage; // 0x550 int32_t hp_damage_pct; // 0x554 int32_t impact_radius; // 0x558 int32_t fragment_impact_distance; // 0x55c int32_t min_range; // 0x560 ParticleIndex_t m_nFXPreview; // 0x564 }; // Alignment: 8 // Size: 0x598 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_RoarAttack : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t projectile_count; // 0x554 float rotation_angle; // 0x558 float damage; // 0x55c float radius; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CountdownTimer ctTimer; // 0x568 Vector m_vecStartRot; // 0x580 Vector m_vecEndRot; // 0x58c }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Primalbeast_Boss_RoarAttack_Start : public CDOTA_Buff { public: int32_t rock_drop_intervals; // 0x1138 int32_t rock_drop_per_interval; // 0x113c int32_t rock_drop_distance; // 0x1140 int32_t m_nCurrentInterval; // 0x1144 int32_t rock_drop_rotation_angle; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_NoCC : public CDOTA_Buff { public: bool bCanbeMotionControlled; // 0x1138 }; // Alignment: 23 // Size: 0x11e8 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift : public CDOTA_Buff { public: int32_t projectile_speed; // 0x1138 int32_t projectile_speed_increment; // 0x113c int32_t projectile_distance; // 0x1140 int32_t projectile_width; // 0x1144 int32_t projectiles_per_interval; // 0x1148 int32_t projectiles_per_interval_increment; // 0x114c int32_t initial_spread_angle; // 0x1150 int32_t angle_offset; // 0x1154 int32_t iCurrentInterval; // 0x1158 int32_t splinter_angle; // 0x115c CountdownTimer m_LeftHandSmashTimer; // 0x1160 CountdownTimer m_RightHandSmashTimer; // 0x1178 CountdownTimer m_AttackIntervalTimer; // 0x1190 float initial_interval; // 0x11a8 float interval_reduction; // 0x11ac float min_interval; // 0x11b0 int32_t arm_distance_forward; // 0x11b4 int32_t arm_distance_side; // 0x11b8 int32_t splash_radius; // 0x11bc int32_t max_split_amount; // 0x11c0 int32_t m_nCurrentCastCount; // 0x11c4 int32_t max_projectiles; // 0x11c8 private: [[maybe_unused]] uint8_t __pad11cc[0x4]; // 0x11cc public: CUtlVector< int32 > m_vecProjectileHandles; // 0x11d0 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_TectonicShift : public CDOTABaseAbility { public: int32_t damage; // 0x550 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_PrimalRoar : public CDOTABaseAbility { public: int32_t path_width; // 0x550 float push_duration; // 0x554 int32_t push_distance; // 0x558 int32_t min_distance; // 0x55c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed_pct; // 0x1138 int32_t slow_attack_speed_pct; // 0x113c }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Push : public CDOTA_Buff { public: Vector m_vVelocity; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_InAbilityPhaseStart : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_CastTracker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_TimeOut : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_Damage : public CDOTA_Buff { public: float tick_damage; // 0x1138 int32_t damage_ticks; // 0x113c int32_t m_nTickAmount; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Sand_King_SandStorm : public CDOTABaseAbility { public: int32_t m_iRadius; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Sand_King_CausticFinale : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinaleOrb : public CDOTA_Buff { public: int32_t caustic_finale_radius; // 0x1138 int32_t caustic_finale_damage_death; // 0x113c int32_t caustic_finale_damage_dot; // 0x1140 int32_t caustic_finale_slow; // 0x1144 float caustic_finale_dot_tick; // 0x1148 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinale : public CDOTA_Buff { public: float caustic_finale_duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike_Reverse_Tracking : public CDOTA_Buff { public: Vector m_vStartLocation; // 0x1138 }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Aghsfort_Sand_King_BurrowStrike : public CDOTABaseAbility { public: int32_t burrow_width; // 0x550 int32_t burrow_speed; // 0x554 float burrow_anim_time; // 0x558 Vector m_vStartLocation; // 0x55c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Sand_King_Impale : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c bool m_bDamageApplied; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: float m_flPower; // 0x1144 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike : public CDOTA_Buff { public: Vector m_vPopupLocation; // 0x1138 bool m_bTeleported; // 0x1144 }; // Alignment: 10 // Size: 0x1170 class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm : public CDOTA_Buff { public: float sand_storm_radius; // 0x1138 int32_t sand_storm_damage; // 0x113c float damage_tick_rate; // 0x1140 GameTime_t m_flLastDamageTime; // 0x1144 ParticleIndex_t m_nSandStormParticleIndex1; // 0x1148 ParticleIndex_t m_nSandStormParticleIndex2; // 0x114c private: [[maybe_unused]] uint8_t __pad1150[0x8]; // 0x1150 public: CHandle< CBaseEntity > m_hThinker; // 0x1158 CHandle< CBaseEntity > m_hBurrowstrikeFieldThinker; // 0x115c bool m_bIsPrimarySandstorm; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: Vector vecSpawnPos; // 0x1164 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm_Slow_Aura_Thinker : public CDOTA_Buff { public: float sand_storm_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm_Slow : public CDOTA_Buff { public: int32_t blind_slow_pct; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Aghsfort_Sand_King_Epicenter : public CDOTABaseAbility { public: ParticleIndex_t m_nFXEpicenterIndex; // 0x550 }; // Alignment: 5 // Size: 0x1190 class CDOTA_Modifier_Aghsfort_Sand_King_Epicenter : public CDOTA_Buff { public: int32_t epicenter_pulses; // 0x1138 int32_t epicenter_radius[16]; // 0x113c int32_t epicenter_damage; // 0x117c int32_t m_iMaxPulses; // 0x1180 int32_t m_iPulseCount; // 0x1184 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Sand_King_Epicenter_Slow : public CDOTA_Buff { public: int32_t epicenter_slow; // 0x1138 int32_t epicenter_slow_as; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Reverse : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike_Channel : public CDOTA_Buff { public: Vector m_vTargetPos; // 0x1138 ParticleIndex_t m_nCrosshairFX; // 0x1144 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Sand_King_Burrowstrike_Transport : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 Vector m_vDirection; // 0x113c float m_flEndTime; // 0x1148 float m_flCurTime; // 0x114c }; // Alignment: 11 // Size: 0x1168 class CDOTA_Modifier_Aghsfort_Sand_King_Sandstorm_Burrowstrike_Field_Thinker : public CDOTA_Buff { public: float radius; // 0x1138 float explosion_interval; // 0x113c int32_t explosion_radius; // 0x1140 int32_t explosion_min_dist; // 0x1144 float m_fLastTick; // 0x1148 float m_fTimeAccumulator; // 0x114c int32_t m_iExplosionCount; // 0x1150 int32_t m_iExplosionTotalCount; // 0x1154 int32_t m_iExplosionQuadrant; // 0x1158 int32_t m_iExplosionDistance; // 0x115c ParticleIndex_t m_nFXIndex; // 0x1160 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Special_Sand_King_Sandstorm_Vacuum : public CDOTA_Buff { public: float pull_speed; // 0x1138 Vector vPullLocation; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinale_Active : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Channel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Transport : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Independant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Burrowstrike_Field : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Vacuum : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Sandstorm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Active : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_StrengthBuff : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Sand_King_Caustic_Finale_StrengthBuff : public CDOTA_Buff { public: int32_t str_pct; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Epicenter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_Movement : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Special_Sand_King_Epicenter_Movement : public CDOTA_Buff { public: Vector vLastPos; // 0x1138 float m_fAccumulatedDistance; // 0x1144 int32_t movement_distance; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_Allies : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_DamageResist : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Special_Sand_King_Epicenter_DamageResist : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t status_resistance; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Sand_King_BurrowStrike_Channel_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x590 class CDOTA_Ability_AghsFort_Clinkz_BurningBarrage : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 int32_t m_iArrowProjectile; // 0x55c int32_t m_nFXIndex; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x1c]; // 0x564 public: int32_t m_nTriSplitCount; // 0x580 int32_t projectile_speed; // 0x584 int32_t projectile_width; // 0x588 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_DamageReduction : public CDOTA_Buff { public: int32_t damage_pct; // 0x1138 }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage : public CDOTA_Buff { public: Vector m_vOriginalTarget; // 0x1138 int32_t wave_count; // 0x1144 int32_t projectile_speed; // 0x1148 int32_t projectile_width; // 0x114c float m_flInterval; // 0x1150 int32_t m_nArrowsFired; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Clinkz_SearingArrows : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 bool m_bBonusAttack; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: int32_t damage_bonus; // 0x1154 float debuff_duration; // 0x1158 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows_Debuff : public CDOTA_Buff { public: int32_t attack_slow; // 0x1138 float m_fIgniteThinkInterval; // 0x113c float m_fIgniteDmgPerSec; // 0x1140 }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_AghsFort_Clinkz_BurningArmy : public CDOTABaseAbility { public: int32_t range; // 0x550 Vector m_vEndpoint; // 0x554 Vector m_vSlashDir; // 0x560 int32_t m_nDashProjectileID; // 0x56c Vector m_vDashProjectileLocation; // 0x570 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 Vector m_vFacePosition; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy : public CDOTA_Buff { public: float attack_rate; // 0x1138 int32_t damage_percent; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 bool m_bHasAttacked; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Clinkz_SkeletonWalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk : public CDOTA_Modifier_Invisible { public: CUtlVector< CHandle< CBaseEntity > > m_vecWraithTouchedEntities; // 0x1148 int32_t move_speed_bonus_pct; // 0x1160 int32_t bonus_magic_resist; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_TriSplit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_SkeletonShot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_Singe : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_Singe : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_Singe_Slow : public CDOTA_Buff { public: int32_t move_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_Ignite : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_SkeletalColossus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Clinkz_SkeletalColossus : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_Thinker : public CDOTA_Buff { public: float lifetime; // 0x1138 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Clinkz_SkeletonColossus : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 float cleave_damage_pct; // 0x113c int32_t cleave_starting_width; // 0x1140 int32_t cleave_ending_width; // 0x1144 int32_t cleave_distance; // 0x1148 int32_t block_damage_ranged_active; // 0x114c int32_t block_damage_melee_active; // 0x1150 int32_t hp_gain_per_caster_level; // 0x1154 float hp_regen_per_caster_level; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_Melter : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows_Melter : public CDOTA_Buff { public: float armor_reduction_per_arrow; // 0x1138 int32_t m_nMaxStacks; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_BeckonUndead : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_WraithTouch : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_WraithTouch_Enemy : public CDOTA_Buff { public: float m_fAttackLoss; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_WraithTouch_Caster : public CDOTA_Buff { public: int32_t max_stacks; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_Strafe : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_Strafe : public CDOTA_Buff { public: float m_fAttackSpeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_Entrenchment : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Clinkz_BurningArmy_Entrenchment : public CDOTA_Buff { public: float m_fSlowPct; // 0x1138 float radius; // 0x113c float think_interval; // 0x1140 float linger_duration; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Entrenchment_Buff : public CDOTA_Buff { public: float m_fLifestealPct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Entrenchment_Debuff : public CDOTA_Buff { public: float m_fSlowPct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_BigSkeletons : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_StunningSkeletons : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_StunningSkeleton_Debuff : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 5 // Size: 0x1188 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_BigSkeletons : public CDOTA_Buff { public: int32_t model_scale; // 0x1170 float radius; // 0x1174 int32_t splitshot_count; // 0x1178 float debuff_duration; // 0x117c float pct_for_moveslow; // 0x1180 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_BigSkeletons_Debuff : public CDOTA_Buff { public: float m_fMovementSlow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_BigSkeletons : public CDOTA_Buff { public: int32_t m_nInitialHealthBarOffset; // 0x1138 int32_t colossus_model_scale; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_BigSkeletons_Ministun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_Talent_Clinkz_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AghsFort_BossDarkWillow_ShadowRealm : public CDOTABaseAbility { public: int32_t projectile_damage; // 0x550 }; // Alignment: 11 // Size: 0x1168 class CDOTA_Modifier_AghsFort_BossDarkWillow_ShadowRealm_Buff : public CDOTA_Buff { public: float m_fAddInterval; // 0x1138 GameTime_t m_fNextAddTime; // 0x113c GameTime_t m_flStartTime; // 0x1140 float m_flDamageScale; // 0x1144 float duration; // 0x1148 float attack_logic_duration; // 0x114c int32_t speed_boost; // 0x1150 int32_t num_adds; // 0x1154 int32_t projectile_range; // 0x1158 int32_t projectile_speed; // 0x115c int32_t projectile_width; // 0x1160 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AghsFort_BossDarkWillow_CursedCrown : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_BossDarkWillow_CursedCrown : public CDOTA_Buff { public: float delay; // 0x1138 float stun_duration; // 0x113c int32_t stun_radius; // 0x1140 int32_t damage; // 0x1144 GameTime_t m_fStartTime; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AncientApparition_ColdFeet : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_AncientApparition_ColdFeet : public CDOTA_Buff { public: Vector m_vecStartPosition; // 0x1138 int32_t m_nCurrentTick; // 0x1144 float damage; // 0x1148 int32_t break_distance; // 0x114c float stun_duration; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AncientApparition_ColdFeet_Freeze : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AncientApparition_IceVortex : public CDOTABaseAbility { public: int32_t vision_aoe; // 0x550 }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_AncientApparition_IceVortexThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t movement_speed_pct; // 0x113c int32_t spell_resist_pct; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_hChilledEntities; // 0x1148 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_AncientApparition_IceVortex : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 int32_t spell_resist_pct; // 0x113c int32_t drag_speed; // 0x1140 float aura_origin_x; // 0x1144 float aura_origin_y; // 0x1148 int32_t shard_dps; // 0x114c int32_t shard_attack_speed_reduction; // 0x1150 Vector m_vCenter; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AncientApparition_ChillingTouch : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_AncientApparition_ChillingTouch : public CDOTA_Buff { public: int32_t damage; // 0x1138 float duration; // 0x113c int32_t attack_range_bonus; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AncientApparition_ChillingTouch_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 12 // Size: 0x5c0 class CDOTA_Ability_AncientApparition_IceBlast : public CDOTABaseAbility { public: CountdownTimer m_PathTimer; // 0x550 Vector m_vTarget; // 0x568 Vector m_vStartPos; // 0x574 Vector m_vLastTempViewer; // 0x580 int32_t m_iTrackerProjectile; // 0x58c int32_t path_radius; // 0x590 int32_t radius_min; // 0x594 int32_t radius_max; // 0x598 float radius_grow; // 0x59c float frostbite_duration; // 0x5a0 int32_t target_sight_radius; // 0x5a4 CUtlVector< CHandle< CBaseEntity > > m_hFrostbittenEntities; // 0x5a8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AncientApparition_IceBlast_Release : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AncientApparition_IceBlast : public CDOTA_Buff { public: float dot_damage; // 0x1138 float kill_pct; // 0x113c CHandle< CBaseEntity > m_hFracturingEntity; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_ManaBreak : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AntiMage_ManaBreak : public CDOTA_Buff { public: int32_t percent_damage_per_burn; // 0x1138 int32_t mana_per_hit; // 0x113c float mana_per_hit_pct; // 0x1140 float slow_duration; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AntiMage_ManaBreak_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_Blink : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_Blink_Fake : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AntiMage_Blink_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_SpellShield : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_Counterspell : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Antimage_DampenMagic_Aura_Strong : public CDOTA_Buff { public: int32_t shard_bonus_aura_range; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Antimage_DampenMagic_Bonus : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Antimage_DampenMagic_Aura : public CDOTA_Buff { public: int32_t shard_radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Antimage_DampenMagic : public CDOTA_Buff { public: int32_t shard_spell_damage_reduction_pct; // 0x1138 int32_t shard_bonus_spell_damage_reduction_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AntiMage_Counterspell_Passive : public CDOTA_Buff { public: int32_t magic_resistance; // 0x1138 }; // Alignment: 2 // Size: 0x1308 class CDOTA_Modifier_AntiMage_Counterspell : public CDOTA_Buff { public: CModifierParams m_LastParams; // 0x1138 int32_t magic_resistance; // 0x1300 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_ManaVoid : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AntiMage_ManaVoid : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_Scepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AntiMage_Mana_Overload : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bane_Enfeeble : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bane_Enfeeble : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Bane_Enfeeble_Effect : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t heal_reduction; // 0x113c int32_t cast_reduction; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Bane_BrainSap : public CDOTABaseAbility { public: int32_t brain_sap_damage; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Bane_Nightmare : public CDOTABaseAbility { public: int32_t m_nNightmareSwapCount; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bane_NightmareEnd : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Bane_Nightmare : public CDOTA_Buff { public: int32_t m_nSource; // 0x1138 float animation_rate; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bane_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Bane_FiendsGrip : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hGripTarget; // 0x550 int32_t fiend_grip_damage; // 0x554 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Bane_FiendsGrip : public CDOTA_Buff { public: int32_t fiend_grip_mana_drain; // 0x1138 float fiend_grip_tick_interval; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Bane_FiendsGrip_Cast_Illusion : public CDOTA_Buff { public: int32_t fiend_grip_mana_drain; // 0x1138 float fiend_grip_tick_interval; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bane_FiendsGrip_Self : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bane_FiendsGrip_Illusion_Can_Only_Channel : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bane_FiendsGrip_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pudge_Eject : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pudge_Swallow : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Pudge_Swallow_Hide : public CDOTA_Buff { public: float order_lock_duration; // 0x1138 GameTime_t m_fOrderLockDone; // 0x113c int32_t m_nFXIndex; // 0x1140 float shard_regen_pct; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pudge_Swallow_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 24 // Size: 0x5f8 class CDOTA_Ability_Pudge_MeatHook : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 float hook_speed; // 0x56c int32_t hook_width; // 0x570 int32_t hook_distance; // 0x574 bool m_bRetracting; // 0x578 bool m_bDiedInHook; // 0x579 private: [[maybe_unused]] uint8_t __pad057a[0x2]; // 0x57a public: CHandle< CBaseEntity > m_hVictim; // 0x57c Vector m_vTargetPosition; // 0x580 Vector m_vCasterPosition; // 0x58c bool m_bChainDetached; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 public: ParticleIndex_t m_iChainParticle; // 0x59c ParticleIndex_t m_iSecondaryChainParticle; // 0x5a0 int32_t m_iHookParticle; // 0x5a4 int32_t m_nManaCost; // 0x5a8 CHandle< CBaseEntity > m_hSourceCaster; // 0x5ac int32_t m_nNextConsecutiveHitCount; // 0x5b0 Vector m_vEndpoint; // 0x5b4 // MNetworkEnable int32_t m_nConsecutiveHits; // 0x5c0 bool m_bIsVectorTargeted; // 0x5c4 private: [[maybe_unused]] uint8_t __pad05c5[0x3]; // 0x5c5 public: Vector m_vTurnLocation; // 0x5c8 Vector m_vDirectionAfterTurn; // 0x5d4 bool m_bHasTurned; // 0x5e0 private: [[maybe_unused]] uint8_t __pad05e1[0x3]; // 0x5e1 public: float m_flDistanceAfterTurn; // 0x5e4 Vector m_vFinalPosition; // 0x5e8 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pudge_Meat_Hook_PathingFix : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pudge_Meat_Hook : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Pudge_Rot : public CDOTABaseAbility { public: int32_t rot_damage; // 0x550 GameTime_t m_flLastRotTime; // 0x554 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Pudge_Rot : public CDOTA_Buff { public: int32_t rot_damage; // 0x1138 int32_t rot_slow; // 0x113c int32_t scepter_rot_regen_reduction_pct; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x8]; // 0x1144 public: GameTime_t m_flLastRotTime; // 0x114c bool m_bQualifiesAsPotentionalDeny; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pudge_FleshHeap_Block : public CDOTA_Buff { public: float damage_block; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Pudge_FleshHeap : public CDOTA_Buff { public: float magic_resistance; // 0x1138 float damage_block; // 0x113c float flesh_heap_strength_buff_amount; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Pudge_Dismember : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hVictim; // 0x550 int32_t shard_cast_range; // 0x554 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Pudge_Dismember : public CDOTA_Buff { public: int32_t dismember_damage; // 0x1138 float strength_damage; // 0x113c int32_t m_nTicks; // 0x1140 int32_t m_nMaxTicks; // 0x1144 float m_flTickRate; // 0x1148 float animation_rate; // 0x114c }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Pudge_Dismember_Pull : public CDOTA_Buff { public: Vector m_vDestination; // 0x1138 int32_t pull_units_per_second; // 0x1144 float pull_distance_limit; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x8]; // 0x114c public: float animation_rate; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Pudge_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Juggernaut_BladeFury : public CDOTABaseAbility { public: int32_t blade_fury_damage; // 0x550 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_Juggernaut_BladeFury : public CDOTA_Buff { public: int32_t blade_fury_radius; // 0x1138 int32_t blade_fury_damage; // 0x113c float blade_fury_damage_tick; // 0x1140 float m_flTotalAppliedDamage; // 0x1144 int32_t shard_bonus_move_speed; // 0x1148 float shard_attack_rate; // 0x114c GameTime_t m_flNextAttack; // 0x1150 bool m_bIgnoreAttackRestriction; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Jugg_Caster : public CDOTA_Buff { public: int32_t shard_damage_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Juggernaut_HealingWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Juggernaut_Healing_Ward_Aura : public CDOTA_Buff { public: int32_t healing_ward_movespeed_tooltip; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Juggernaut_Healing_Ward_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Juggernaut_Healing_Ward_Heal : public CDOTA_Buff { public: int32_t healing_ward_heal_amount; // 0x1138 int32_t m_nStartingHealthThisInterval; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Juggernaut_BladeDance : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1148 class CDOTA_Modifier_Juggernaut_BladeDance : public CDOTA_Buff { public: int32_t blade_dance_crit_mult; // 0x1138 int32_t blade_dance_crit_chance; // 0x113c int32_t blade_dance_lifesteal; // 0x1140 bool m_bHasCrit; // 0x1144 bool m_bWasBladeDanceTriggeredCrit; // 0x1145 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Juggernaut_Omnislash : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Juggernaut_Swift_Slash : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 15 // Size: 0x1170 class CDOTA_Modifier_Juggernaut_Omnislash : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 CHandle< CBaseEntity > m_hLastTarget; // 0x113c int32_t m_nJumps; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t bonus_attack_speed; // 0x1148 int32_t omni_slash_radius; // 0x114c float attack_rate_multiplier; // 0x1150 bool m_bFirstHit; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: int32_t m_iTotalDamage; // 0x1158 int32_t m_iHeroDamage; // 0x115c int32_t m_iKilledHeroes; // 0x1160 GameTime_t m_fNextAttackTime; // 0x1164 bool m_bScepterCast; // 0x1168 bool m_bReflection; // 0x1169 bool m_bEndNext; // 0x116a }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Juggernaut_Omnislash_Invulnerability : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Holdout_BladeFury : public CDOTA_Ability_Juggernaut_BladeFury { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Holdout_BladeFury : public CDOTA_Buff { public: int32_t blade_fury_damage; // 0x1138 int32_t blade_dance_crit_chance; // 0x113c int32_t blade_dance_crit_mult; // 0x1140 float blade_fury_damage_tick; // 0x1144 int32_t blade_fury_radius; // 0x1148 int32_t bonus_evasion; // 0x114c bool m_bTryToCrit; // 0x1150 }; // Alignment: 11 // Size: 0x5a8 class CDOTA_Ability_Holdout_Omnislash : public CDOTABaseAbility { public: int32_t image_travel_speed; // 0x550 int32_t image_radius; // 0x554 int32_t jugg_travel_speed; // 0x558 int32_t juggcounter; // 0x55c int32_t range; // 0x560 bool m_bFirstProjectileFinished; // 0x564 private: [[maybe_unused]] uint8_t __pad0565[0x3]; // 0x565 public: Vector m_vCastDir; // 0x568 Vector m_vPos; // 0x574 Vector m_vJuggStartLocation; // 0x580 float m_flRange; // 0x58c CUtlVector< CHandle< CBaseEntity > > m_hEntities; // 0x590 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Holdout_Omnislash : public CDOTA_Buff { public: float animation_rate; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Juggernaut_Holdout_Omnislash_FollowupAttack : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Nevermore_Shadowraze : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 ParticleIndex_t m_nFXIndexB; // 0x554 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Shadowraze_Debuff : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 int32_t turn_rate_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Shadowraze_Counter : public CDOTA_Buff { public: float shadowraze_cooldown; // 0x1138 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Nevermore_Shadowraze1 : public CDOTA_Ability_Nevermore_Shadowraze { public: // no members available }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Nevermore_Shadowraze2 : public CDOTA_Ability_Nevermore_Shadowraze { public: // no members available }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Nevermore_Shadowraze3 : public CDOTA_Ability_Nevermore_Shadowraze { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nevermore_Presence : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nevermore_Presence_Aura : public CDOTA_Buff { public: int32_t presence_radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Nevermore_Presence : public CDOTA_Buff { public: int32_t presence_armor_reduction; // 0x1138 bool m_bWasHidden; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Nevermore_Necromastery : public CDOTABaseAbility { public: int32_t attack_range_bonus; // 0x550 }; // Alignment: 6 // Size: 0x580 class CDOTA_Ability_Nevermore_Requiem : public CDOTABaseAbility { public: int32_t requiem_line_width_start; // 0x550 int32_t requiem_line_width_end; // 0x554 int32_t m_nCachedSouls; // 0x558 ParticleIndex_t m_nFXIndex; // 0x55c int32_t m_nKilleater_nLines; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CUtlVector< CHandle< CBaseEntity > > m_vecHeroesReqd; // 0x568 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Nevermore_Necromastery : public CDOTA_Buff { public: int32_t necromastery_damage_per_soul; // 0x1138 int32_t necromastery_max_souls; // 0x113c int32_t necromastery_max_souls_scepter; // 0x1140 int32_t shard_crit_pct; // 0x1144 int32_t shard_souls_per_kill; // 0x1148 float shard_fear_duration; // 0x114c ParticleIndex_t m_iParticleSoulsIndex; // 0x1150 ParticleIndex_t m_FXIndex; // 0x1154 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nevermore_Requiem_InvisBreak : public CDOTA_Buff { public: bool bDisableInvis; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nevermore_Requiem_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nevermore_Requiem_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Nevermore_Requiem_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Nevermore_Necromastery_Fear : public CDOTA_Modifier_Nevermore_Requiem_Fear { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Nevermore_Requiem_Slow : public CDOTA_Buff { public: int32_t requiem_reduction_ms; // 0x1138 int32_t requiem_reduction_mres; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SandKing_CausticFinale : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_SandKing_CausticFinale : public CDOTA_Buff { public: float caustic_finale_duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_SandKing_CausticFinaleOrb : public CDOTA_Buff { public: int32_t caustic_finale_radius; // 0x1138 int32_t caustic_finale_damage_base; // 0x113c int32_t caustic_finale_damage_pct; // 0x1140 int32_t caustic_finale_slow; // 0x1144 }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_SandKing_BurrowStrike : public CDOTABaseAbility { public: int32_t burrow_width; // 0x550 int32_t burrow_speed; // 0x554 int32_t burrow_speed_scepter; // 0x558 float burrow_duration; // 0x55c float burrow_anim_time; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_SandKing_Impale : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c bool m_bDamageApplied; // 0x1140 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Sand_King_BurrowStrike : public CDOTA_Buff { public: Vector m_vPopupLocation; // 0x1138 bool m_bTeleported; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SandKing_SandStorm : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1178 class CDOTA_Modifier_SandKing_SandStorm : public CDOTA_Modifier_PersistentInvisibility { public: int32_t sand_storm_radius; // 0x1148 int32_t sand_storm_damage; // 0x114c float damage_tick_rate; // 0x1150 GameTime_t m_flLastDamageTime; // 0x1154 ParticleIndex_t m_nSandStormParticleIndex1; // 0x1158 ParticleIndex_t m_nSandStormParticleIndex2; // 0x115c private: [[maybe_unused]] uint8_t __pad1160[0x8]; // 0x1160 public: CHandle< CBaseEntity > m_hThinker; // 0x1168 Vector vecSpawnPos; // 0x116c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SandKing_SandStorm_Slow_Aura_Thinker : public CDOTA_Buff { public: int32_t sand_storm_radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SandKing_SandStorm_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t blind; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_SandKing_Epicenter : public CDOTABaseAbility { public: ParticleIndex_t m_nFXEpicenterIndex; // 0x550 }; // Alignment: 7 // Size: 0x1198 class CDOTA_Modifier_SandKing_Epicenter : public CDOTA_Buff { public: int32_t epicenter_radius_base; // 0x1138 int32_t epicenter_radius_increment; // 0x113c int32_t epicenter_pulses; // 0x1140 int32_t epicenter_radius[16]; // 0x1144 int32_t epicenter_damage; // 0x1184 int32_t m_iMaxPulses; // 0x1188 int32_t m_iPulseCount; // 0x118c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SandKing_Epicenter_Slow : public CDOTA_Buff { public: int32_t epicenter_slow; // 0x1138 int32_t epicenter_slow_as; // 0x113c }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Sand_King_Shard : public CDOTA_Buff { public: int32_t shard_epicenter_pulse_damage_bonus; // 0x1138 float shard_move_distance; // 0x113c Vector vLastPos; // 0x1140 float m_fAccumulatedDistance; // 0x114c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Mirana_Starfall : public CDOTABaseAbility { public: int32_t damage; // 0x550 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Mirana_Starfall_Scepter_Thinker : public CDOTA_Buff { public: float interval_scepter; // 0x1138 bool bInBufferTime; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: int32_t damage; // 0x1140 GameTime_t m_flLastApplyTime; // 0x1144 }; // Alignment: 5 // Size: 0x1148 class CDOTA_Modifier_Mirana_Starfall_Thinker : public CDOTA_Buff { public: int32_t starfall_secondary_radius; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c int32_t m_iDamage; // 0x1140 bool m_bStarDropped; // 0x1144 bool m_bSecondStar; // 0x1145 }; // Alignment: 7 // Size: 0x5d0 class CDOTA_Ability_Mirana_Arrow : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 int32_t scepter_radius; // 0x554 Vector m_vStartPos; // 0x558 ParticleIndex_t m_nFXIndex; // 0x564 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList[2]; // 0x568 CUtlVector< CHandle< CBaseEntity > > hStarfallList[2]; // 0x598 int32_t m_nActiveArrow; // 0x5c8 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mirana_Leap_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Mirana_Leap : public CDOTABaseAbility { public: // no members available }; // Alignment: 18 // Size: 0x1190 class CDOTA_Modifier_Mirana_Leap : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t leap_distance; // 0x1164 float shard_radius; // 0x1168 float shard_radius_end; // 0x116c float shard_damage; // 0x1170 float shard_slow_pct; // 0x1174 float shard_slow_duration; // 0x1178 float leap_speed; // 0x117c float leap_acceleration; // 0x1180 int32_t leap_radius; // 0x1184 float leap_bonus_duration; // 0x1188 bool m_bLaunched; // 0x118c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mirana_Leap_Slow : public CDOTA_Buff { public: int32_t shard_slow_pct; // 0x1138 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Mirana_Leap_Buff : public CDOTA_Buff { public: int32_t leap_speedbonus; // 0x1138 int32_t leap_speedbonus_as; // 0x113c bool m_bCritUsed; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x7]; // 0x1141 public: CUtlVector< int16 > m_vCritRecords; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Mirana_MoonlightShadow : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Mirana_MoonlightShadow : public CDOTA_Modifier_PersistentInvisibility { public: float duration; // 0x1148 int32_t bonus_movement_speed; // 0x114c int32_t evasion; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mirana_MoonlightShadow_KillTracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Sven_StormBolt : public CDOTABaseAbility { public: int32_t vision_radius; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sven_Stormbolt_Hide : public CDOTA_Buff { public: int32_t m_nHandle; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sven_GreatCleave : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Sven_GreatCleave : public CDOTA_Buff { public: int32_t cleave_starting_width; // 0x1138 int32_t cleave_ending_width; // 0x113c int32_t cleave_distance; // 0x1140 int32_t great_cleave_damage; // 0x1144 int16_t m_nLastCleaveRecord; // 0x1148 private: [[maybe_unused]] uint8_t __pad114a[0x2]; // 0x114a public: int32_t m_nLastCleaveKills; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sven_Warcry : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sven_Warcry_Aura : public CDOTA_Buff { public: int32_t shard_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sven_Warcry_Passive : public CDOTA_Buff { public: int32_t shard_passive_armor; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Sven_Warcry : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sven_GodsStrength : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sven_GodsStrength : public CDOTA_Buff { public: int32_t gods_strength_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Sven_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SkeletonKing_HellfireBlast : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_HellfireBlast : public CDOTA_Buff { public: int32_t blast_dot_damage; // 0x1138 int32_t blast_slow; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_HellfireBlast_Skeleton_Buff : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_move_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SkeletonKing_VampiricAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_SkeletonKing_VampiricAura : public CDOTA_Buff { public: int32_t vampiric_aura; // 0x1138 float skeleton_duration; // 0x113c int32_t max_skeleton_charges; // 0x1140 int32_t m_iKillCounter; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_VampiricAura_Summon_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 }; // Alignment: 10 // Size: 0x1158 class CDOTA_Modifier_SkeletonKing_VampiricAura_Summon : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_iBonusDamage; // 0x113c bool m_bRespawnReady; // 0x1140 bool m_bRespawnConsumed; // 0x1141 bool m_bKillParentOnDestroy; // 0x1142 private: [[maybe_unused]] uint8_t __pad1143[0x1]; // 0x1143 public: GameTime_t m_flRespawnTime; // 0x1144 int32_t vampiric_aura; // 0x1148 int32_t gold_bounty; // 0x114c int32_t xp_bounty; // 0x1150 bool m_bFirstTick; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SkeletonKing_MortalStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_SkeletonKing_MortalStrike : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_vCritRecords; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SkeletonKing_Reincarnation : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_SkeletonKing_Reincarnation : public CDOTA_Buff { public: float reincarnate_time; // 0x1138 int32_t scepter_aura_radius; // 0x113c GameTime_t m_fLastReincarnationTime; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_Reincarnation_SpawnSkeletons : public CDOTA_Buff { public: int32_t shard_skeleton_count; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_Reincarnation_Slow : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 int32_t attackslow; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SkeletonKing_Reincarnation_Scepter : public CDOTA_Buff { public: float scepter_duration; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Skeleton_King_Scepter_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Skeleton_King_Arcana : public CDOTA_Buff { public: bool m_bHasCrit; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Storm_Spirit_Electric_Rave : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_StormSpirit_Electric_Rave : public CDOTA_Buff { public: int32_t overload_aoe; // 0x1138 int32_t overload_damage; // 0x113c int32_t shard_attack_speed_bonus; // 0x1140 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_StormSpirit_StaticRemnant : public CDOTABaseAbility { public: Vector m_vecCastPos; // 0x550 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_StormSpirit_StaticRemnantThinker : public CDOTA_Buff { public: int32_t static_remnant_radius; // 0x1138 int32_t static_remnant_damage_radius; // 0x113c int32_t static_remnant_damage; // 0x1140 float static_remnant_delay; // 0x1144 int32_t m_iSearchRadius; // 0x1148 int32_t m_iDamageRadius; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_StormSpirit_ElectricVortex : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_StormSpirit_ElectricVortex_SelfSlow : public CDOTA_Buff { public: int32_t electric_vortex_self_slow; // 0x1138 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_StormSpirit_ElectricVortex_Pull : public CDOTA_Buff { public: Vector m_vDestination; // 0x1138 int32_t electric_vortex_pull_distance; // 0x1144 float electric_vortex_pull_tether_range; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_StormSpirit_ElectricVortex_NoStack : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_StormSpirit_Overload : public CDOTABaseAbility { public: int32_t m_iAttackIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< sGlaiveInfoStorm > m_GlaiveInfo; // 0x558 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_StormSpirit_Overload_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_StormSpirit_Overload : public CDOTA_Buff { public: int32_t overload_aoe; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_StormSpirit_OverloadSlow : public CDOTA_Buff { public: int32_t overload_move_slow; // 0x1138 int32_t overload_attack_slow; // 0x113c }; // Alignment: 12 // Size: 0x5a0 class CDOTA_Ability_StormSpirit_BallLightning : public CDOTABaseAbility { public: bool m_bHasAutoRemnantTalent; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0x3]; // 0x561 public: float m_fAutoRemnantInterval; // 0x564 int32_t ball_lightning_initial_mana_base; // 0x568 float ball_lightning_initial_mana_percentage; // 0x56c int32_t ball_lightning_travel_cost_base; // 0x570 float ball_lightning_travel_cost_percent; // 0x574 int32_t m_iProjectileID; // 0x578 Vector m_vStartLocation; // 0x57c Vector m_vProjectileLocation; // 0x588 float m_fDistanceAccumulator; // 0x594 float m_fTalentDistanceAccumulator; // 0x598 int32_t scepter_remnant_interval; // 0x59c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_StormSpirit_BallLightning : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Holdout_StaticRemnantThinker : public CDOTA_Buff { public: int32_t static_remnant_radius; // 0x1138 int32_t static_remnant_damage_radius; // 0x113c int32_t static_remnant_damage; // 0x1140 float static_remnant_delay; // 0x1144 float overload_duration; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_StormSpirit_StaticRemnant_Talent : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DrowRanger_Silence : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x580 class CDOTA_Ability_DrowRanger_WaveOfSilence : public CDOTABaseAbility { public: Vector m_vStartPosition; // 0x550 Vector m_vEndPosition; // 0x55c int32_t wave_width; // 0x568 float wave_speed; // 0x56c float silence_duration; // 0x570 float knockback_distance_max; // 0x574 int32_t m_nHeroesHit; // 0x578 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_WaveOfSilence_Buff : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DrowRanger_WaveOfSilence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_DrowRanger_WaveOfSilence_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DrowRanger_Trueshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DrowRanger_Trueshot : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DrowRanger_Trueshot_Global : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_TrueshotAura : public CDOTA_Buff { public: float trueshot_ranged_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DrowRanger_Marksmanship : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1190 class CDOTA_Modifier_DrowRanger_Marksmanship : public CDOTA_Buff { public: int32_t chance; // 0x1138 ParticleIndex_t m_nFxIndex; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 CUtlVector< int16 > m_GlacialInFlightAttackRecords; // 0x1158 int32_t bonus_factor; // 0x1170 int32_t disable_range; // 0x1174 int32_t agility_range; // 0x1178 int32_t bonus_damage; // 0x117c int32_t split_count; // 0x1180 int32_t split_range; // 0x1184 bool m_bGlacialAttack; // 0x1188 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_Marksmanship_Aura_Bonus : public CDOTA_Buff { public: int32_t agility_multiplier; // 0x1138 float agility_multiplier_ally; // 0x113c }; // Alignment: 3 // Size: 0x11b0 class CDOTA_Modifier_DrowRanger_Marksmanship_Reduction : public CDOTA_Buff { public: int32_t split_damage_reduction; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVectorFixedGrowable< int32 > m_vecRecords; // 0x1140 CUtlVectorFixedGrowable< GameTime_t > m_vecRecordTimes; // 0x1178 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_DrowRanger_FrostArrows : public CDOTABaseAbility { public: int32_t shard_burst_damage_per_stack; // 0x550 float shard_burst_slow_duration; // 0x554 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_DrowRanger_FrostArrows : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 int32_t shard_bonus_damage_per_stack; // 0x1150 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_DrowRanger_FrostArrows_Slow : public CDOTA_Buff { public: int32_t frost_arrows_movement_speed; // 0x1138 int32_t shard_max_stacks; // 0x113c float shard_stack_duration; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_FrostArrows_Shard_Slow : public CDOTA_Buff { public: int32_t shard_burst_move_slow_pct; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_DrowRanger_FrostArrows_Hypothermia : public CDOTA_Buff { public: int32_t shard_regen_reduction_pct_per_stack; // 0x1138 int32_t shard_burst_radius; // 0x113c ParticleIndex_t m_nFXStackIndex; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DrowRanger_FrostArrows_Hypothermia_Active : public CDOTA_Buff { public: // no members available }; // Alignment: 12 // Size: 0x618 class CDOTA_Ability_DrowRanger_Multishot : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 int32_t m_iArrowProjectile; // 0x55c int32_t m_nFXIndex; // 0x560 float arrow_speed; // 0x564 int32_t arrow_spread; // 0x568 private: [[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c public: CUtlVector< CHandle< CBaseEntity > > m_vHitTargets0; // 0x570 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets1; // 0x588 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets2; // 0x5a0 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets3; // 0x5b8 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets4; // 0x5d0 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets5; // 0x5e8 CUtlVector< CHandle< CBaseEntity > > m_vHitTargets6; // 0x600 }; // Alignment: 13 // Size: 0x1178 class CDOTA_Modifier_Drow_Ranger_Multishot : public CDOTA_Buff { public: int32_t m_iArrowCount; // 0x1138 Vector m_vOriginalTarget; // 0x113c int32_t arrow_width; // 0x1148 float arrow_speed; // 0x114c float arrow_range_multiplier; // 0x1150 int32_t wave_count; // 0x1154 int32_t arrow_count_per_wave; // 0x1158 int32_t arrow_angle; // 0x115c int32_t m_iLoopCount; // 0x1160 float m_flInterval; // 0x1164 float m_flCycleDelay; // 0x1168 float m_flTimeWaste; // 0x116c GameTime_t m_flExpectedTime; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Drow_Ranger_Multishot_Damage : public CDOTA_Buff { public: int32_t arrow_damage_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_ArcanaKill_Delay : public CDOTA_Buff { public: PlayerID_t m_nPlayerID_Drow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DrowRanger_Arcana : public CDOTA_Buff { public: bool m_bFlawlessVictoryProgressGranted; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Shard : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Earthshaker_Arcana : public CDOTA_Buff { public: int32_t m_nComboCount; // 0x1138 float m_flComboWindow; // 0x113c float m_flComboDisplayInterval; // 0x1140 float m_flDamageDone; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Earthshaker_Fissure : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Earthshaker_Fissure_Shard : public CDOTA_Buff { public: int32_t shard_aftershock_stun_duration_pct; // 0x1138 float shard_free_pathing_linger_duration; // 0x113c Vector m_vStartPos; // 0x1140 Vector m_vEndPos; // 0x114c GameTime_t m_flEndTime; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Fissure_Shard_Pathing : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Fissure_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Fissure_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Fissure_Rooted : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Earthshaker_EnchantTotem : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x1190 class CDOTA_Modifier_Earthshaker_EnchantTotem_Leap : public CDOTA_Buff { public: Vector m_vLoc; // 0x113c float m_flPredictedTotalTime; // 0x1148 Vector m_vStartPosition; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bHorizontalMotionInterrupted; // 0x1160 bool m_bDamageApplied; // 0x1161 bool m_bTargetTeleported; // 0x1162 private: [[maybe_unused]] uint8_t __pad1163[0x1]; // 0x1163 public: Vector m_vHorizontalVelocity; // 0x1164 Vector m_vLastKnownTargetPosition; // 0x1170 float m_flInitialVelocityZ; // 0x117c int32_t scepter_height; // 0x1180 int32_t scepter_height_arcbuffer; // 0x1184 int32_t scepter_acceleration_z; // 0x1188 int32_t scepter_acceleration_horizontal; // 0x118c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_EnchantTotem_Animation : public CDOTA_Buff { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Earthshaker_EnchantTotem : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 int32_t totem_damage_percentage; // 0x113c int32_t scepter_cleave_pct; // 0x1140 float scepter_cleave_starting_width; // 0x1144 float scepter_cleave_ending_width; // 0x1148 float scepter_cleave_distance; // 0x114c private: [[maybe_unused]] uint8_t __pad1150[0x8]; // 0x1150 public: bool bActive; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Earthshaker_Aftershock : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Earthshaker_Aftershock : public CDOTA_Buff { public: int32_t aftershock_range; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_EchoSlam_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Earthshaker_EchoSlam : public CDOTABaseAbility { public: int32_t echo_slam_damage_range; // 0x550 int32_t echo_slam_echo_search_range; // 0x554 int32_t echo_slam_echo_range; // 0x558 int32_t echo_slam_echo_damage; // 0x55c int32_t echo_slam_initial_damage; // 0x560 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Echoslam_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earthshaker_Echoslam_Heating_Up : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Earthshaker_Arcana_Kill_Effect : public CDOTA_Buff { public: bool m_bFrozen; // 0x1138 bool m_bFlail; // 0x1139 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_VengefulSpirit_Magic_Missile : public CDOTABaseAbility { public: bool m_bShouldBounce; // 0x550 }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_VengefulSpirit_WaveOfTerror : public CDOTABaseAbility { public: int32_t wave_width; // 0x550 float wave_speed; // 0x554 int32_t m_iProjectile; // 0x558 float vision_aoe; // 0x55c float vision_duration; // 0x560 int32_t m_nNumHeroesHit; // 0x564 CountdownTimer m_ViewerTimer; // 0x568 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_VengefulSpirit_WaveOfTerror_Fear : public CDOTA_Modifier_Fear { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_WaveOfTerror : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 int32_t damage_reduction_pct; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_WaveOfTerror_Buff : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Command_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Command_Aura_Illusion : public CDOTA_Modifier_Invulnerable { public: CHandle< CBaseEntity > hTarget; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Command_Aura_Effect : public CDOTA_Buff { public: int32_t bonus_base_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Command_Negative_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Command_Negative_Aura_Effect : public CDOTA_Buff { public: int32_t bonus_damage_pct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_VengefulSpirit_Nether_Swap_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_VengefulSpirit_Nether_Swap : public CDOTABaseAbility { public: int32_t m_nFXIndex; // 0x550 int32_t damage; // 0x554 float damage_reduction; // 0x558 float damage_reduction_duration; // 0x55c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Nether_Swap_DamageReduction : public CDOTA_Buff { public: float damage_reduction; // 0x1138 ParticleIndex_t nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_VengefulSpirit_Nether_Swap_PathingFix : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_VengefulSpirit_Hybrid_Special : public CDOTA_Buff { public: bool m_bLeftoverHybrid; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t scepter_illusion_ms_bonus_pct; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_VengefulSpirit_XP_Earn : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CrystalMaiden_Let_It_Go : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Thinker : public CDOTA_Buff { public: Vector m_vPathStart; // 0x1138 Vector m_vPathEnd; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Bonus : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_CrystalMaiden_CrystalNova : public CDOTABaseAbility { public: int32_t nova_damage; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_CrystalMaiden_CrystalNova : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CrystalMaiden_Frostbite : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_CrystalMaiden_Frostbite : public CDOTA_Buff { public: int32_t max_ticks; // 0x1138 int32_t damage_per_second; // 0x113c int32_t creep_damage_per_second; // 0x1140 float tick_interval; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CrystalMaiden_BrillianceAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CrystalMaiden_BrillianceAura : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_CrystalMaiden_BrillianceAuraEffect : public CDOTA_Buff { public: float base_mana_regen; // 0x1138 float self_factor; // 0x113c float proximity_bonus_factor; // 0x1140 int32_t proximity_bonus_radius; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CrystalMaiden_FreezingField : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CrystalMaiden_FreezingFieldStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 22 // Size: 0x11c0 class CDOTA_Modifier_CrystalMaiden_FreezingField : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage; // 0x113c int32_t bonus_armor; // 0x1140 float explosion_interval; // 0x1144 float shard_bonus_explosion; // 0x1148 int32_t explosion_radius; // 0x114c float slow_duration; // 0x1150 int32_t explosion_min_dist; // 0x1154 int32_t explosion_max_dist; // 0x1158 float frostbite_delay; // 0x115c GameTime_t m_fLastTick; // 0x1160 float m_fTimeAccumulator; // 0x1164 int32_t m_iExplosionCount; // 0x1168 int32_t m_iExplosionTotalCount; // 0x116c int32_t m_iExplosionQuadrant; // 0x1170 int32_t m_iExplosionDistance; // 0x1174 int32_t shard_self_movement_speed_slow_pct; // 0x1178 ParticleIndex_t m_nFXIndex; // 0x117c private: [[maybe_unused]] uint8_t __pad1180[0x8]; // 0x1180 public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1188 CUtlVector< CHandle< CBaseEntity > > m_hHitHeroes; // 0x11a0 bool m_bHitInvisibleHero; // 0x11b8 private: [[maybe_unused]] uint8_t __pad11b9[0x3]; // 0x11b9 public: int32_t can_move; // 0x11bc }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_CrystalMaiden_FreezingField_Slow : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attack_slow; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CrystalMaiden_FreezingField_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_CrystalMaiden_IceRink : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_CrystalMaiden_IceRink_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float rink_formation_time; // 0x113c bool m_bActive; // 0x1140 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_CrystalMaiden_IceRink_Movement : public CDOTA_Buff { public: bool m_bHitFirstUpdate; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: float flMovementSpeed; // 0x113c float m_flTurnBoostProgress; // 0x1140 float m_flFacingTarget; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 GameTime_t m_flHitEndTime; // 0x114c float hit_recover_time; // 0x1150 Vector m_vDirection; // 0x1154 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_CDOTA_Modifier_CrystalMaiden_IceRink_Movement_Ricochet : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Axe_BattleHunger : public CDOTABaseAbility { public: int32_t damage_per_second; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Axe_BattleHunger : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 int32_t slow; // 0x113c int32_t scepter_armor_change; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Axe_BatleHunger_Self : public CDOTA_Buff { public: int32_t scepter_armor_change; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Axe_BatleHunger_Self_Movespeed : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Axe_BerserkersCall : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Axe_BerserkersCall : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 bool m_bDidSetAttackTarget; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Axe_BerserkersCallArmor : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Axe_CounterHelix : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Axe_CounterHelix : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t trigger_chance; // 0x113c GameTime_t m_fLastProc; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Axe_CounterHelix_DamageReduction : public CDOTA_Buff { public: int32_t shard_damage_reduction; // 0x1138 }; // Alignment: 3 // Size: 0x578 class CDOTA_Ability_Axe_CullingBlade : public CDOTABaseAbility { public: bool m_bInterrupted; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0x3]; // 0x561 public: Vector m_vProjectileLocation; // 0x564 CHandle< CBaseEntity > m_hTarget; // 0x570 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Axe_Culling_Blade_NoMinHealth : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Axe_Culling_Blade_Charge : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Axe_CullingBlade_Boost : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 int32_t atk_speed_bonus; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Axe_CullingBlade_Permanent : public CDOTA_Buff { public: float armor_per_stack; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Axe_CullingBlade_JungleWeaponGesture : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x578 class CDOTA_Ability_Holdout_CullingBlade : public CDOTA_Ability_Axe_CullingBlade { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_HoldoutCullingBlade : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t leap_distance; // 0x1164 int32_t leap_radius; // 0x1168 float leap_speed; // 0x116c float leap_acceleration; // 0x1170 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Axe_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bloodseeker_Bloodrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Bloodseeker_Bloodrage : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t spell_amp; // 0x113c float shard_max_health_dmg_pct; // 0x1140 float damage_pct; // 0x1144 float flTickRate; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bloodseeker_Bloodbath : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Bloodseeker_Bloodbath_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Bloodseeker_Thirst : public CDOTA_Buff { public: int32_t hero_kill_heal; // 0x1138 int32_t creep_kill_heal; // 0x113c int32_t half_bonus_aoe; // 0x1140 int32_t visibility_threshold_pct; // 0x1144 int32_t invis_threshold_pct; // 0x1148 int32_t min_bonus_pct; // 0x114c int32_t max_bonus_pct; // 0x1150 int32_t bonus_movement_speed; // 0x1154 float linger_duration; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x115c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bloodseeker_Thirst : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Bloodseeker_Thirst_Vision : public CDOTA_Buff { public: int32_t invis_threshold_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Bloodseeker_Thirst_Speed : public CDOTA_Buff { public: CUtlSymbolLarge m_iszModifierString; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bloodseeker_Rupture_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bloodseeker_Rupture : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Bloodseeker_Rupture : public CDOTA_Buff { public: int32_t movement_damage_pct; // 0x1138 float hp_pct; // 0x113c Vector vLastPos; // 0x1140 bool bResetPosition; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_fAccumulatedDamage; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bloodseeker_BloodMist : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Bloodseeker_BloodMist : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Bloodseeker_BloodMist_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_PhantomLancer_SpiritLance : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomLancer_SpiritLance : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomLancer_Doppelwalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_PhantomLancer_Dopplewalk_Phase : public CDOTA_Buff { public: Vector vTargetPosition; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomLancer_Doppelwalk_Illusion : public CDOTA_Buff { public: float flDamageTaken; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomLancer_Juxtapose : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_PhantomLancer_Juxtapose_Thinker : public CDOTA_Buff { public: int32_t max_illusions; // 0x1138 int32_t scepter_bonus_illusions; // 0x113c float illusion_duration; // 0x1140 int32_t illusion_damage_out_pct; // 0x1144 int32_t illusion_damage_in_pct; // 0x1148 float scepter_bonus_duration; // 0x114c int32_t m_iIllusionsSoFar; // 0x1150 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_PhantomLancer_Juxtapose : public CDOTA_Buff { public: int32_t proc_chance_pct; // 0x1138 int32_t illusion_proc_chance_pct; // 0x113c int32_t max_illusions; // 0x1140 float illusion_duration; // 0x1144 int32_t illusion_damage_out_pct; // 0x1148 int32_t illusion_damage_in_pct; // 0x114c int32_t scepter_bonus_illusions; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomLancer_PhantomEdge : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_PhantomLancer_PhantomEdge : public CDOTA_Buff { public: int32_t min_distance; // 0x1138 int32_t max_distance; // 0x113c CHandle< CBaseEntity > m_hTarget; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_PhantomLancer_PhantomEdge_Boost : public CDOTA_Buff { public: int32_t bonus_speed; // 0x1138 float agility_duration; // 0x113c bool m_bGiveAgility; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: CHandle< CBaseEntity > m_hTarget; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomLancer_PhantomEdge_Agility : public CDOTA_Buff { public: int32_t bonus_agility; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomLancer_JuxtaposeIllusion : public CDOTA_Buff { public: bool m_bstrongIllusion; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Razor_PlasmaField : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x11a0 class CDOTA_Modifier_Razor_PlasmaField_Thinker : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 bool m_bContracting; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CountdownTimer m_ViewerTimer; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1168 int32_t speed; // 0x1180 int32_t radius; // 0x1184 int32_t damage_min; // 0x1188 int32_t damage_max; // 0x118c int32_t slow_min; // 0x1190 int32_t slow_max; // 0x1194 float slow_duration; // 0x1198 bool m_bHasCreatedFx; // 0x119c }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_Razor_StaticLink : public CDOTABaseAbility { public: int32_t m_iLinkIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CountdownTimer m_ViewerTimer; // 0x558 int32_t vision_radius; // 0x570 float vision_duration; // 0x574 }; // Alignment: 10 // Size: 0x1170 class CDOTA_Modifier_Razor_StaticLink : public CDOTA_Buff { public: float flSmoothness; // 0x1138 float drain_duration; // 0x113c int32_t drain_rate; // 0x1140 int32_t drain_range; // 0x1144 int32_t drain_range_buffer; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x114c int32_t m_iTotalDrainAmount; // 0x1150 ParticleIndex_t m_iLinkIndex; // 0x1154 CDOTA_Buff* m_pBuffPositive; // 0x1158 CDOTA_Buff* m_pNegative; // 0x1160 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Razor_StaticLink_Buff : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t drain_rate; // 0x113c float drain_length; // 0x1140 int32_t attack_speed_factor; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Razor_StaticLink_Debuff : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t attack_speed_factor; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Razor_Link_Vision : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Razor_UnstableCurrent : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_Razor_UnstableCurrent_Aura : public CDOTA_Buff { public: int32_t self_movement_speed_pct; // 0x1138 int32_t shard_pct_chance; // 0x113c int32_t shard_damage; // 0x1140 int32_t shard_move_slow_pct; // 0x1144 int32_t shard_search_radius; // 0x1148 int32_t shard_target_count; // 0x114c float shard_slow_duration; // 0x1150 float shard_internal_cd; // 0x1154 GameTime_t m_flNextShardProcTime; // 0x1158 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Razor_UnstableCurrent_Delayed_Damage : public CDOTA_Buff { public: int32_t shard_damage; // 0x1138 float shard_slow_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Razor_UnstableCurrent_Slow : public CDOTA_Buff { public: int32_t shard_move_slow_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Razor_PlasmaField_Slow : public CDOTA_Buff { public: int32_t slow_amount; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Razor_EyeOfTheStorm : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Razor_EyeOfTheStorm_Passive : public CDOTA_Buff { public: int32_t passive_area_damage; // 0x1138 float passive_area_interval; // 0x113c int32_t radius; // 0x1140 bool m_bHitNext; // 0x1144 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Razor_EyeOfTheStorm : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t armor_reduction; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Razor_EyeOfTheStorm_Armor : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Razor_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Razor_Arcana : public CDOTA_Buff { public: bool m_bIsMeleeAttack; // 0x1138 bool m_bTauntQueued; // 0x1139 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Razor_Arcana_EmpoweredState : public CDOTA_Buff { public: ParticleIndex_t m_nEmpoweredBodyFX; // 0x1138 ParticleIndex_t m_nEmpoweredWeaponFX; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Razor_Arcana_Kill_Effect : public CDOTA_Buff { public: ParticleIndex_t m_nCasterFXIndex; // 0x1138 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Lina_DragonSlave : public CDOTABaseAbility { public: int32_t dragon_slave_distance; // 0x558 float m_flDamage; // 0x55c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lina_LightStrikeArray : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Lina_LightStrikeArray_Thinker : public CDOTA_Buff { public: int32_t m_iDamage; // 0x1138 float m_flStunDuration; // 0x113c int32_t light_strike_array_aoe; // 0x1140 int32_t light_strike_array_damage; // 0x1144 float light_strike_array_stun_duration; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lina_FierySoul : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Lina_FierySoul : public CDOTA_Buff { public: int32_t fiery_soul_attack_speed_bonus; // 0x1138 float fiery_soul_move_speed_bonus; // 0x113c int32_t fiery_soul_max_stacks; // 0x1140 float fiery_soul_stack_duration; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 GameTime_t m_flFierySoulDieTime; // 0x114c GameTime_t m_flLastFierySoalFullStackTime; // 0x1150 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Lina_LagunaBlade : public CDOTABaseAbility { public: int32_t m_iDamage; // 0x550 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Lina_LagunaBlade_Line : public CDOTA_Buff { public: Vector vStart; // 0x1138 Vector vEnd; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lina_LagunaBlade : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lina_Flame_Cloak : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Lina_Fiery_Cloak : public CDOTA_Buff { public: int32_t magic_resistance; // 0x1138 int32_t spell_amp; // 0x113c float visualzdelta; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lina_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_Hybrid : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morphling_Waveform_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_Morphling_Waveform : public CDOTABaseAbility { public: int32_t m_nProjectileID; // 0x560 Vector m_vProjectileLocation; // 0x564 CHandle< CBaseEntity > m_hHitHero; // 0x570 bool m_bGrantedGem; // 0x574 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morphling_Waveform : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_AdaptiveStrike_Agi : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_AdaptiveStrike_Str : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Morphling_Adaptive_Strike_Armor : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Morphling_Adaptive_Strike : public CDOTA_Modifier_Stunned { public: Vector m_vStartPos; // 0x1138 Vector m_vDirection; // 0x1144 float m_flTotalDistance; // 0x1150 float m_flCurTime; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_Morph : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Morphling_Morph : public CDOTA_Buff { public: float tick_rate; // 0x1138 int32_t bonus_attributes; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_Morph_Agi : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Morphling_Morph_Agi : public CDOTA_Buff { public: int32_t mana_cost; // 0x1138 int32_t points_per_tick; // 0x113c float morph_cooldown; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Morphling_Morph_Str : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Morphling_Morph_Str : public CDOTA_Buff { public: int32_t mana_cost; // 0x1138 int32_t points_per_tick; // 0x113c float morph_cooldown; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Morphling_Replicate : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Morphling_MorphReplicate : public CDOTABaseAbility { public: float m_flOldHealthPct; // 0x550 float m_flOldManaPct; // 0x554 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Strength_Buff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_status_resist; // 0x113c int32_t nStrengthSteal; // 0x1140 int32_t nAgiSteal; // 0x1144 int32_t nIntSteal; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Strength_Debuff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_status_resist; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Agility_Buff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_attack_speed; // 0x113c int32_t nStrengthSteal; // 0x1140 int32_t nAgilitySteal; // 0x1144 int32_t nIntSteal; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Agility_Debuff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_attack_speed; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Intelligence_Buff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_spell_amplify; // 0x113c int32_t nStrengthSteal; // 0x1140 int32_t nIntSteal; // 0x1144 int32_t nAgilitySteal; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Morphling_ScepterStatsDrain_Intelligence_Debuff : public CDOTA_Buff { public: int32_t scepter_stat_steal; // 0x1138 int32_t scepter_spell_amplify; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morphling_Replicate_Manager : public CDOTA_Buff { public: // no members available }; // Alignment: 15 // Size: 0x11c8 class CDOTA_Modifier_Morphling_Replicate : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTinyTreeWearable; // 0x1138 float m_flBaseAttackRange; // 0x113c float m_flBaseMovementSpeed; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlSymbolLarge m_iszModelName; // 0x1148 CUtlSymbolLarge m_iszProjectileName; // 0x1150 CUtlSymbolLarge m_iszOriginalModel; // 0x1158 int32_t m_nCopiedHeroID; // 0x1160 float m_fOriginalModelScale; // 0x1164 CUtlVector< CEconItemView* > m_vecOriginalItems; // 0x1168 private: [[maybe_unused]] uint8_t __pad1180[0x30]; // 0x1180 public: float m_flOriginalStr; // 0x11b0 float m_flOriginalAgi; // 0x11b4 float m_flOriginalInt; // 0x11b8 int32_t m_iOriginalAttackCapability; // 0x11bc float m_flOriginalHealthPercentage; // 0x11c0 float m_flOriginalManaPercentage; // 0x11c4 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morphling_Replicate_MorphedIllusionsEffect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morphling_Scepter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Zuus_StaticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Zuus_Static_Field : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Zuus_Static_Field_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 int32_t aspd_slow; // 0x113c int32_t cast_slow; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Zuus_ArcLightning : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_Zuus_ArcLightning : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t jump_count; // 0x113c int32_t arc_damage; // 0x1140 float jump_delay; // 0x1144 int32_t m_iCurJumpCount; // 0x1148 Vector m_vCurTargetLoc; // 0x114c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Zuus_ArcLightningSlow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Zuus_Cloud : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Zuus_LightningBolt : public CDOTABaseAbility { public: bool m_bZeusHasArcana; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Zuus_LightningBoltThinker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Zuus_ThundergodsWrath : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 bool m_bZeusHasArcana; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Zuus_ThundergodsWrathThinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Zuus_ThundergodsVengeance : public CDOTA_Ability_Zuus_ThundergodsWrath { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Zuus_Cloud : public CDOTA_Buff { public: CountdownTimer m_CloudBoltTimer; // 0x1138 float cloud_bolt_interval; // 0x1150 int32_t cloud_radius; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Zuus_Heavenly_Jump : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1188 class CDOTA_Modifier_Zuus_Heavenly_Jump : public CDOTA_Buff { public: float hop_duration; // 0x1138 int32_t hop_height; // 0x113c int32_t hop_distance; // 0x1140 int32_t search_radius; // 0x1144 float m_flStartZ; // 0x1148 float m_flCurTime; // 0x114c float m_flJumpDuration; // 0x1150 float m_flJumpHeight; // 0x1154 Vector m_vTargetHorizontalDirection; // 0x1158 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > hUnitsToHit; // 0x1168 bool m_bLaunched; // 0x1180 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Zuus_Heavenly_Jump_Boost : public CDOTA_Buff { public: int32_t postjump_movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Zeus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Zeus_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Zeus_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Zeus_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Zeus_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Kunkka_Torrent : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Torrent_Thinker : public CDOTA_Buff { public: bool m_bShowEnemies; // 0x1138 bool m_bTorrentStorm; // 0x1139 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Kunkka_Torrent : public CDOTA_Buff { public: int32_t torrent_damage; // 0x1138 float damage_tick_interval; // 0x113c float flDamagePerTick; // 0x1140 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 bool m_bTorrentStorm; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Torrent_Slow : public CDOTA_Buff { public: int32_t movespeed_bonus; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kunkka_Tidebringer_Slow : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Kunkka_Torrent_Storm : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Kunkka_Torrent_Storm : public CDOTA_Buff { public: int32_t torrent_min_distance; // 0x1138 int32_t torrent_max_distance; // 0x113c int32_t m_iExplosionQuadrant; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Kunkka_Tidebringer : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Kunkka_Tidebringer : public CDOTA_Buff { public: bool m_bTidebringerAttack; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t cleave_starting_width; // 0x113c int32_t cleave_ending_width; // 0x1140 int32_t cleave_distance; // 0x1144 int32_t damage_bonus; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c int32_t cleave_damage; // 0x1150 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Kunkka_XMarksTheSpot : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Kunkka_XMarksTheSpot : public CDOTA_Buff { public: int32_t ally_ms; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Kunkka_XMarksTheSpotMarker : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Kunkka_XMarksTheSpot_Thinker : public CDOTA_Buff { public: Vector m_vStartLoc; // 0x1138 bool m_bIsReflection; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CHandle< CBaseEntity > m_hEntity; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Kunkka_Return : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x580 class CDOTA_Ability_Kunkka_GhostShip : public CDOTABaseAbility { public: float buff_duration; // 0x550 float stun_duration; // 0x554 int32_t ghostship_width; // 0x558 int32_t ghostship_width_scepter; // 0x55c Vector m_vFinalDestination; // 0x560 Vector m_vStartingPoint; // 0x56c }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Kunkka_Ghost_Ship_Fleet : public CDOTA_Buff { public: Vector vCasterOrigin; // 0x1138 Vector vEnd; // 0x1144 int32_t hitcount; // 0x1150 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_Kunkka_GhostShip_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Kunkka_GhostShip_Loaded : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Kunkka_GhostShip_DamageAbsorb : public CDOTA_Buff { public: int32_t m_iAccumulatedDamage; // 0x1138 int32_t movespeed_bonus; // 0x113c float ghostship_absorb; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Kunkka_GhostShip_DamageDelay : public CDOTA_Buff { public: int32_t m_iAccumulatedDamage; // 0x1138 float m_flDuration; // 0x113c }; // Alignment: 2 // Size: 0x580 class CDOTA_Ability_Kunkka_Tidal_Wave : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 Vector m_vStart; // 0x568 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tiny_CraggyExterior : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Tiny_CraggyExterior : public CDOTA_Buff { public: int32_t stun_chance; // 0x1138 float stun_duration; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Tiny_Avalanche : public CDOTABaseAbility { public: Vector m_vTargetLoc; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tiny_Avalanche_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 8 // Size: 0x1178 class CDOTA_Modifier_Tiny_Avalanche : public CDOTA_Buff { public: CUtlVector< CDOTA_BaseNPC* > m_pHeroesHit; // 0x1138 int32_t radius; // 0x1150 float total_duration; // 0x1154 float stun_duration; // 0x1158 int32_t tick_count; // 0x115c float toss_multiplier; // 0x1160 int32_t m_damage; // 0x1164 int32_t m_nTicks; // 0x1168 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tiny_Toss_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tiny_Toss : public CDOTABaseAbility { public: // no members available }; // Alignment: 14 // Size: 0x1180 class CDOTA_Modifier_Tiny_Toss : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 float m_flPredictedTotalTime; // 0x113c Vector m_vStartPosition; // 0x1140 float m_flCurrentTimeHoriz; // 0x114c float m_flCurrentTimeVert; // 0x1150 bool m_bHorizontalMotionInterrupted; // 0x1154 bool m_bDamageApplied; // 0x1155 bool m_bTargetTeleported; // 0x1156 private: [[maybe_unused]] uint8_t __pad1157[0x1]; // 0x1157 public: Vector m_vHorizontalVelocity; // 0x1158 Vector m_vLastKnownTargetPosition; // 0x1164 float m_flInitialVelocityZ; // 0x1170 bool m_bDone; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: int32_t radius; // 0x1178 int32_t toss_damage; // 0x117c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Tiny_Tree_Grab : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hStolenTree; // 0x550 }; // Alignment: 12 // Size: 0x1168 class CDOTA_Modifier_Tiny_Tree_Grab : public CDOTA_Buff { public: int32_t attack_count; // 0x1138 int32_t bonus_damage; // 0x113c int32_t bonus_damage_buildings; // 0x1140 float stun_duration; // 0x1144 int32_t attack_range; // 0x1148 int32_t m_nOriginalAttackCapability; // 0x114c float bat_increase; // 0x1150 int32_t speed_reduction; // 0x1154 int32_t m_nBonusAttackRange; // 0x1158 CHandle< CBaseEntity > m_hStolenTree; // 0x115c ParticleIndex_t m_nFXIndex; // 0x1160 ParticleIndex_t m_nFXAttackIndex; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tiny_Tree_Channel : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Tiny_Tree_Channel : public CDOTA_Buff { public: int32_t tree_grab_radius; // 0x1138 int32_t splash_radius; // 0x113c int32_t speed; // 0x1140 float interval; // 0x1144 Vector m_vPos; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tiny_Tree_Channel_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tiny_TossTree : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tiny_TossTree_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tiny_TossTree_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tiny_Grow : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Tiny_Grow : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 int32_t attack_speed_reduction; // 0x113c int32_t bonus_damage; // 0x1140 float tree_bonus_damage_pct; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Tiny_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Puck_EtherealJaunt : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x590 class CDOTA_Ability_Puck_IllusoryOrb : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CountdownTimer m_ViewerTimer; // 0x558 int32_t orb_vision; // 0x570 float vision_duration; // 0x574 int32_t damage; // 0x578 private: [[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c public: CSoundPatch* m_pSoundPatch; // 0x580 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Puck_WaningRift : public CDOTABaseAbility { public: int32_t max_distance; // 0x550 int32_t scepter_max_distance; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Puck_PhaseShift : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Puck_PhaseShift : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Puck_DreamCoil : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Puck_DreamCoil_Thinker : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hLinkedEntities; // 0x1138 int32_t coil_radius; // 0x1150 int32_t coil_break_radius; // 0x1154 int32_t coil_initial_damage; // 0x1158 float coil_stun_duration; // 0x115c float coil_duration; // 0x1160 int32_t coil_break_damage; // 0x1164 CUtlVector< ParticleIndex_t > m_FXIndex; // 0x1168 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Puck_Coiled : public CDOTA_Buff { public: Vector m_vCastLocation; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Puck_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Windrunner_Shackleshot : public CDOTABaseAbility { public: int32_t shackle_count; // 0x550 Vector m_vArrowStartPos; // 0x554 CHandle< CBaseEntity > m_hTarget; // 0x560 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Windrunner_ShackleShot : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 10 // Size: 0x580 class CDOTA_Ability_Windrunner_Powershot : public CDOTABaseAbility { public: GameTime_t m_fStartTime; // 0x558 float m_fPower; // 0x55c int32_t m_iProjectile; // 0x560 float damage_reduction; // 0x564 int32_t arrow_width; // 0x568 int32_t powershot_damage; // 0x56c float tree_width; // 0x570 bool m_bAwardedKillEater; // 0x574 private: [[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575 public: int32_t m_nHeroesHit; // 0x578 ParticleIndex_t m_nFXIndex; // 0x57c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Windrunner_Windrun_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Windrunner_Windrun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Windrunner_Windrun_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Windrunner_Windrun_Invis_Thinker : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Windrunner_Windrun_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Windrunner_Windrun : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t scepter_radius; // 0x113c int32_t movespeed_bonus_pct; // 0x1140 bool m_bDispellable; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Windrunner_Windrun_Slow : public CDOTA_Buff { public: float enemy_movespeed_bonus_pct; // 0x1138 float scepter_movespeed_bonus_pct; // 0x113c int32_t scepter_blind; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Windrunner_Arcana : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Windrunner_FocusFire : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Windrunner_FocusFire_End : public CDOTABaseAbility { public: // no members available }; // Alignment: 14 // Size: 0x1178 class CDOTA_Modifier_Windrunner_FocusFire : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t focusfire_damage_reduction; // 0x113c bool bActive; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t bonus_attack_speed; // 0x1144 int32_t focusfire_fire_on_the_move; // 0x1148 bool m_bPause; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: int32_t m_nNumArrowsLanded; // 0x1150 int32_t m_nDamageDealt; // 0x1154 int32_t m_nDamageDealtMax; // 0x1158 int32_t m_nTargetInitialHP; // 0x115c bool m_bHeroKilled; // 0x1160 bool m_bRecentFocusFireAttack; // 0x1161 private: [[maybe_unused]] uint8_t __pad1162[0xa]; // 0x1162 public: ParticleIndex_t m_nFXFocusFire; // 0x116c GameTime_t m_flLastFocusFireAttackTime; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Windrunner_Arcana_Kill_Effect : public CDOTA_Buff { public: bool m_bFrozen; // 0x1138 }; // Alignment: 4 // Size: 0x570 class CDOTA_Ability_Windrunner_GaleForce : public CDOTABaseAbility { public: Vector m_vEndpoint; // 0x550 Vector m_vFlowPosition; // 0x55c float duration; // 0x568 CHandle< CBaseEntity > m_hThinker; // 0x56c }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Windrunner_GaleForce_Aura : public CDOTA_Buff { public: Vector m_vEndpoint; // 0x1138 Vector m_vFlowPosition; // 0x1144 int32_t radius; // 0x1150 }; // Alignment: 6 // Size: 0x1170 class CDOTA_Modifier_Windrunner_GaleForce : public CDOTA_Buff { public: Vector m_vEndpoint; // 0x1138 Vector m_vFlowPosition; // 0x1144 Vector m_vPull; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x115c GameTime_t m_flLastThinkTime; // 0x1160 float wind_strength; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lich_FrostNova : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Lich_FrostNova_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t slow_attack_speed; // 0x113c int32_t slow_attack_speed_primary; // 0x1140 bool m_bIsPrimary; // 0x1144 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Lich_Sinister_Gaze : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hShackleTarget; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lich_Sinister_Gaze_Self : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Lich_Sinister_Gaze : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t mana_drain; // 0x113c float m_flIntervalRate; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 bool m_bBlasted; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lich_DarkSorcery : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Lich_DarkSorcery_Buff : public CDOTA_Buff { public: int32_t mana_drain; // 0x1138 int32_t attack_count; // 0x113c int32_t attack_speed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lich_FrostAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lich_FrostAura_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lich_FrostAura : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lich_FrostAura_Slow : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Lich_ChainFrost_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t slow_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lich_FrostArmor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lich_FrostArmor_Autocast : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Lich_FrostArmor : public CDOTA_Buff { public: int32_t armor_bonus; // 0x1138 int32_t health_regen; // 0x113c float slow_duration; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Lich_FrostArmor_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t slow_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lich_FrostShield : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Lich_FrostShield : public CDOTA_Buff { public: int32_t radius; // 0x1138 float interval; // 0x113c int32_t damage_reduction; // 0x1140 int32_t health_regen; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lich_FrostShield_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 6 // Size: 0x570 class CDOTA_Ability_Lich_ChainFrost : public CDOTABaseAbility { public: int32_t jump_range; // 0x550 int32_t jumps; // 0x554 float slow_duration; // 0x558 int32_t vision_radius; // 0x55c int32_t projectile_speed; // 0x560 int32_t initial_projectile_speed; // 0x564 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Lich_Chain_Frost_Thinker : public CDOTA_Buff { public: int32_t m_nDamageToHeroes; // 0x1138 int32_t m_nHeroesKilled; // 0x113c int32_t m_nJumps; // 0x1140 bool m_bFirstJump; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CHandle< CBaseEntity > m_hTarget; // 0x1148 CHandle< CBaseEntity > m_hAvoidTarget; // 0x114c }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Lich_Ice_Spire : public CDOTABaseAbility { public: int32_t aura_radius; // 0x550 float duration; // 0x554 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Lich_Ice_Spire : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c CountdownTimer m_Timer; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lich_Ice_Spire_Debuff : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lich_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Tidehunter_Gush : public CDOTABaseAbility { public: int32_t gush_damage; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tidehunter_Gush : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 float negative_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tidehunter_KrakenShell : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Tidehunter_KrakenShell : public CDOTA_Buff { public: int32_t m_iDamageTaken; // 0x1138 int32_t damage_reduction; // 0x113c int32_t damage_cleanse; // 0x1140 float damage_reset_interval; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tidehunter_AnchorSmash : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tidehunter_SmashAttack : public CDOTA_Buff { public: int32_t attack_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tidehunter_AnchorSmash_Caster : public CDOTA_Buff { public: int32_t attack_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tidehunter_AnchorSmash : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_Tidehunter_Ravage : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hEntsHit; // 0x550 bool m_bAwardedKillEater; // 0x568 private: [[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569 public: float duration; // 0x56c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Tidehunter_Ravage : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c bool m_bDamageApplied; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: float damage; // 0x1144 }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Tidehunter_ArmOfTheDeep : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 float duration; // 0x568 int32_t speed; // 0x56c float damage; // 0x570 float range; // 0x574 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ShadowShaman_EtherShock : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ShadowShaman_EtherShock : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ShadowShamanVoodoo : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ShadowShaman_Voodoo : public CDOTA_Modifier_Hexed { public: int32_t movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ShadowShaman_MassSerpentWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_ShadowShaman_Shackles : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hShackleTarget; // 0x550 ParticleIndex_t nShackleFXIndex; // 0x554 CUtlVector< CHandle< CBaseEntity > > hWardList; // 0x558 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_ShadowShaman_Shackles : public CDOTA_Buff { public: float tick_interval; // 0x1138 float total_damage; // 0x113c float channel_time; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ShadowShaman_SerpentWard : public CDOTA_Buff { public: int32_t scepter_range; // 0x1138 }; // Alignment: 4 // Size: 0x570 class CDOTA_Ability_ShadowShaman_Serpentine : public CDOTABaseAbility { public: int32_t length; // 0x550 int32_t count; // 0x554 Vector m_vStartPosition; // 0x558 Vector m_vEndPosition; // 0x564 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_SmokeScreen : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Riki_SmokeScreenThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Riki_SmokeScreen : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 int32_t dodge_chance; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Riki_BlinkStrike_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_BlinkStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Riki_BlinkStrike : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Riki_BlinkStrike_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_Permanent_Invisibility : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Riki_Permanent_Invisibility : public CDOTA_Modifier_PersistentInvisibility { public: int32_t movement_speed; // 0x1148 float fade_delay; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_Backstab : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Riki_Backstab : public CDOTA_Modifier_PersistentInvisibility { public: float fade_delay; // 0x1148 int32_t backstab_angle; // 0x114c int32_t cleave; // 0x1150 float damage_multiplier; // 0x1154 bool m_bBackstab; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_TricksOfTheTrade : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Riki_TricksOfTheTrade_Phase : public CDOTA_Buff { public: ParticleIndex_t m_nFxIndex; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c CountdownTimer m_Timer; // 0x1140 CHandle< CBaseEntity > m_hPreviousTarget; // 0x1158 int32_t m_nSucceessiveHits; // 0x115c bool m_bGrantedGem; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: float attack_rate; // 0x1164 int32_t damage_pct; // 0x1168 int32_t agility_pct; // 0x116c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Riki_Poison_Dart : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Riki_Poison_Dart : public CDOTA_Buff { public: int32_t wake_damage_limit; // 0x1138 float m_flDamageTaken; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Riki_Poison_Dart_Debuff : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enigma_DemonicConversion : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Enigma_Malefice : public CDOTABaseAbility { public: float tick_rate; // 0x550 int32_t stun_instances; // 0x554 float m_flDuration; // 0x558 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Enigma_Malefice : public CDOTA_Buff { public: float tick_rate; // 0x1138 float stun_duration; // 0x113c int32_t damage; // 0x1140 float duration; // 0x1144 int32_t m_nEidolonSpawnNum; // 0x1148 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Enigma_DemonicConversion : public CDOTA_Modifier_Kill { public: int32_t m_iAttackCount; // 0x1138 int32_t split_attack_count; // 0x113c float life_extension; // 0x1140 int32_t hp_bonus; // 0x1144 bool m_bAllowSplit; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: int32_t m_nSpawnNum; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enigma_MidnightPulse : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Enigma_MidnightPulseThinker : public CDOTA_Buff { public: float damage_percent; // 0x1138 int32_t radius; // 0x113c ParticleIndex_t n_FXIndex; // 0x1140 bool m_bHasGrantedKillEater; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Enigma_MidnightPulse_Damage : public CDOTA_Buff { public: float damage_percent; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Enigma_BlackHole : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 CHandle< CBaseEntity > m_hThinker2; // 0x554 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Enigma_BlackHoleThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 bool m_bFoundFive; // 0x113c bool m_bGrantedKillEater; // 0x113d }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Enigma_BlackHole_Pull : public CDOTA_Buff { public: int32_t pull_speed; // 0x1138 int32_t radius; // 0x113c int32_t damage; // 0x1140 float tick_rate; // 0x1144 float pull_rotate_speed; // 0x1148 float animation_rate; // 0x114c float scepter_pct_damage; // 0x1150 GameTime_t m_flDamageTick; // 0x1154 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Enigma_Black_Hole_Thinker_Scepter : public CDOTA_Buff { public: int32_t scepter_radius; // 0x1138 ParticleIndex_t n_FXIndex; // 0x113c }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Enigma_Black_Hole_Pull_Scepter : public CDOTA_Buff { public: int32_t scepter_drag_speed; // 0x1138 float scepter_pull_rotate_speed; // 0x113c float aura_origin_x; // 0x1140 float aura_origin_y; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 Vector m_vCenter; // 0x114c GameTime_t m_flLastThinkTime; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Enigma_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tinker_Defensive_Matrix : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Tinker_Defensive_Matrix : public CDOTA_Buff { public: int32_t damage_absorb; // 0x1138 int32_t status_resistance; // 0x113c int32_t cooldown_reduction; // 0x1140 bool m_bStartedTimer; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t m_flDamageAbsorbed; // 0x1148 }; // Alignment: 3 // Size: 0x578 class CDOTA_Ability_Tinker_Laser : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x550 bool bBlocked; // 0x55c private: [[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tinker_LaserBlind : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 float max_health_removed; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Tinker_HeatSeekingMissile : public CDOTABaseAbility { public: int32_t m_nTargetsKilled; // 0x550 }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Tinker_WarpGrenade : public CDOTABaseAbility { public: float debuff_duration; // 0x550 float knockback_distance; // 0x554 float damage; // 0x558 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tinker_Warp_Grenade : public CDOTA_Buff { public: int32_t range_reduction; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Tinker_MarchOfTheMachines : public CDOTABaseAbility { public: int32_t splash_radius; // 0x550 int32_t damage; // 0x554 }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Tinker_MarchOfTheMachinesThinker : public CDOTA_Buff { public: int32_t collision_radius; // 0x1138 int32_t radius; // 0x113c int32_t distance; // 0x1140 int32_t distance_scepter; // 0x1144 int32_t speed; // 0x1148 int32_t machines_per_sec; // 0x114c Vector m_vDir; // 0x1150 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Tinker_Rearm : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tinker_Rearm : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tinker_Shrink_Ray : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x578 class CDOTA_Ability_Tinker_Keen_Teleport : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTeleportTarget; // 0x550 ParticleIndex_t m_nFXOrigin; // 0x554 ParticleIndex_t m_nFXDestination; // 0x558 Vector m_vDestination; // 0x55c int32_t m_iMinDistance; // 0x568 float m_flBaseTeleportTime; // 0x56c float m_flExtraTeleportTime; // 0x570 }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_WitchDoctor_ParalyzingCask : public CDOTABaseAbility { public: int32_t m_iBounces; // 0x550 int32_t bounces; // 0x554 int32_t bounce_bonus_damage; // 0x558 private: [[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c public: CUtlVector< CHandle< CBaseEntity > > m_vecHitHeroes; // 0x560 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_WitchDoctor_Cask_Thinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_WitchDoctor_VoodooRestoration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_WitchDoctor_Voodoo_Restoration_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_WitchDoctor_Voodoo_Restoration_Heal : public CDOTA_Buff { public: int32_t heal; // 0x1138 float mana_per_second; // 0x113c float heal_interval; // 0x1140 int32_t enemy_damage_pct; // 0x1144 float m_flTotalHealing; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_WitchDoctor_Maledict : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_WitchDoctor_MaledictDoT : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_WitchDoctor_Maledict : public CDOTA_Buff { public: int32_t m_iStartHealth; // 0x1138 int32_t bonus_damage; // 0x113c int32_t bonus_damage_threshold; // 0x1140 int32_t ticks; // 0x1144 int32_t iCurrentTick; // 0x1148 }; // Alignment: 8 // Size: 0x588 class CDOTA_Ability_WitchDoctor_DeathWard : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hWard; // 0x550 int32_t m_iDamage; // 0x554 int32_t m_iBounceRadius; // 0x558 int32_t m_iProjectileSpeed; // 0x55c GameTime_t m_fWardExpireTime; // 0x560 ParticleIndex_t m_nFXIndex; // 0x564 int32_t m_iAttackIndex; // 0x568 private: [[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c public: CUtlVector< sBounceInfo > m_BounceInfo; // 0x570 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_WitchDoctor_DeathWard : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t attack_speed_reduction; // 0x113c int32_t m_iBounceRadius; // 0x1140 int32_t bonus_accuracy; // 0x1144 bool m_bFirstAttack; // 0x1148 bool m_bShard; // 0x1149 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_WitchDoctor_Voodoo_Switcheroo : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_WitchDoctor_Voodoo_Switcheroo : public CDOTA_Buff { public: Vector m_vSavedPos; // 0x1138 CHandle< CBaseEntity > m_hSavedAbility; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Sniper_Shrapnel_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sniper_Shrapnel : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Sniper_Shrapnel_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 bool m_bExploded; // 0x113c bool m_bGrantedGem; // 0x113d }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Sniper_Shrapnel_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 int32_t shrapnel_damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sniper_Headshot : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Sniper_Headshot : public CDOTA_Buff { public: int32_t proc_chance; // 0x1138 float slow_duration; // 0x113c float knockback_distance; // 0x1140 int32_t bonus_damage_creeps; // 0x1144 int32_t bonus_attack_range; // 0x1148 int32_t damage; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sniper_Headshot_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Sniper_TakeAim : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sniper_TakeAim : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Sniper_TakeAim_Bonus : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Sniper_Assassinate : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x558 ParticleIndex_t m_iIndex; // 0x55c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Sniper_Assassinate_Crit : public CDOTA_Buff { public: int32_t scepter_crit_damage; // 0x1138 int32_t scatter_damage_pct; // 0x113c bool is_secondary; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Sniper_Assassinate : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Sniper_Concussive_Grenade : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Sniper_Concussive_Grenade : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necrolyte_Sadist_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necrolyte_Sadist : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Necrolyte_Sadist_Active : public CDOTA_Buff { public: int32_t heal_bonus; // 0x1138 int32_t bonus_damage; // 0x113c int32_t slow_aoe; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necrolyte_Sadist_Aura_Effect : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Necrolyte_Death_Pulse : public CDOTABaseAbility { public: bool m_bIsDeathSeekerCast; // 0x558 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necrophos_Death_Seeker_Ethereal : public CDOTA_Buff { public: int32_t magic_resistance_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necrolyte_Heartstopper_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Necrolyte_Heartstopper_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 bool m_bStackCountChanged; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: CUtlVector< GameTime_t > m_fStackExpireTimes; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Necrolyte_Heartstopper_Aura_Counter : public CDOTA_Buff { public: float mana_regen; // 0x1138 float health_regen; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Necrolyte_Heartstopper_Aura_Effect : public CDOTA_Buff { public: float aura_damage; // 0x1138 int32_t heal_reduction_pct; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necrolyte_ReapersScythe : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Necrolyte_ReapersScythe : public CDOTA_Modifier_Stunned { public: float stun_duration; // 0x1138 bool m_bIllusion; // 0x113c bool m_bArcWardenClone; // 0x113d }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Necrolyte_ReapersScythe_RespawnTime : public CDOTA_Buff { public: float hp_per_kill; // 0x1138 float mana_per_kill; // 0x113c float hp_regen; // 0x1140 float mp_regen; // 0x1144 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Necrolyte_Death_Seeker : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Slardar_Puddle_Thinker : public CDOTA_Buff { public: int32_t puddle_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slardar_Puddle : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slardar_Sprint_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Slardar_Sprint_River : public CDOTA_Buff { public: int32_t river_speed; // 0x1138 int32_t puddle_regen; // 0x113c int32_t puddle_armor; // 0x1140 int32_t puddle_status_resistance; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slardar_Sprint : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slardar_Sprint : public CDOTA_Buff { public: int32_t bonus_speed; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Slardar_Slithereen_Crush : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slardar_Slithereen_Crush : public CDOTA_Buff { public: int32_t crush_extra_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slardar_Bash : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Slardar_Bash_Active : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 float duration; // 0x113c int32_t attack_count; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slardar_Amplify_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Slardar_Amplify_Damage : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 float scepter_delay; // 0x113c int32_t undispellable; // 0x1140 int32_t puddle_radius; // 0x1144 float puddle_duration; // 0x1148 Vector m_vecLastPuddle; // 0x114c CHandle< CBaseEntity > m_hPuddle; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Slardar_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ursa_Overpower : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ursa_Overpower : public CDOTA_Buff { public: int32_t attack_speed_bonus_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ursa_Fury_Swipes : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ursa_Fury_Swipes : public CDOTA_Buff { public: int32_t damage_per_stack; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ursa_Fury_Swipes_Damage_Increase : public CDOTA_Buff { public: int32_t damage_per_stack; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ursa_Enrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Ursa_Enrage : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t status_resistance; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Ursa_Earthshock : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_Ursa_Earthshock_Move : public CDOTA_Buff { public: float hop_duration; // 0x1138 int32_t hop_height; // 0x113c int32_t hop_distance; // 0x1140 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 float m_flJumpDuration; // 0x114c float m_flJumpHeight; // 0x1150 Vector m_vTargetHorizontalDirection; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ursa_Earthshock : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 7 // Size: 0x570 class CDOTA_Ability_Lion_Impale : public CDOTABaseAbility { public: int32_t width; // 0x550 float duration; // 0x554 int32_t speed; // 0x558 float length_buffer; // 0x55c float range; // 0x560 int32_t m_iDefaultCastRange; // 0x564 int32_t pierces_immunity; // 0x568 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Lion_Impale : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c bool m_bDamageApplied; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t damage; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lion_Voodoo : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lion_Voodoo : public CDOTA_Modifier_Hexed { public: int32_t movespeed; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Lion_ManaDrain : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_Victims; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lion_ManaDrain_Immunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 9 // Size: 0x1168 class CDOTA_Modifier_Lion_ManaDrain : public CDOTA_Buff { public: int32_t mana_per_second; // 0x1138 int32_t break_distance; // 0x113c float tick_interval; // 0x1140 int32_t movespeed; // 0x1144 int32_t damage_pct; // 0x1148 GameTime_t m_fAppliedTime; // 0x114c int32_t m_nTotalManaDrained; // 0x1150 int32_t m_nSelfBuffSerialNumber; // 0x1154 int32_t m_nTargetDebuffSerialNumber; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lion_ManaDrain_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lion_ManaDrain_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lion_FingerOfDeath_Kill_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Lion_FingerOfDeath : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lion_FingerOfDeath : public CDOTA_Buff { public: bool m_bIgnoreBonus; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lion_FingerOfDeath_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Lion_Arcana_Kill_Effect : public CDOTA_Buff { public: bool m_bFrozen; // 0x1138 bool m_bFlail; // 0x1139 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Lion_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant1 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant2 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant3 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant4 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnRadiant5 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire1 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire2 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire3 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire4 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawnDire5 : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x498 class CInfoCourierSpawn : public CPointEntity { public: // no members available }; // Alignment: 3 // Size: 0x11a0 class CDOTA_Modifier_Track_Order_Issuer : public CDOTA_Buff { public: PlayerID_t m_nIssuerPlayerIndex; // 0x1138 bool m_bTeamFirstCourier; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: GameTime_t m_nPlayerCommandTime[24]; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Courier_Morph_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Courier_Flying : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_ReturnToBase : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_TakeStashItems : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Courier_TakeStashItems : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hStashOwner; // 0x1138 Vector m_vLocation; // 0x113c bool m_bTransferAfterTake; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: int32_t stash_pickup_distance; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_ReturnStashItems : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Courier_ReturnStashItems : public CDOTA_Buff { public: Vector m_vLocation; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_GoToSecretShop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_GoToEnemySecretShop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_GoToSideShop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_GoToSideShop2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_TransferItems : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_TransferItems_ToOtherPlayer : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Courier_TransferItems : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_TakeStashAndTransferItems : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_Burst : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Courier_Burst : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_Morph : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_Shield : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Courier_Shield : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Courier_Passive_Bonus : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_vecTriggers; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_QueuePickupFromStash : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Courier_DequeuePickupFromStash : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_FountainPassive : public CDOTA_Buff { public: int32_t bonus_chance; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Fountain_Fury_Swipes_Damage_Increase : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Roshan_SpellBlock : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Roshan_SpellBlock : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Roshan_Bash : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Roshan_Bash : public CDOTA_Buff { public: int32_t bash_chance; // 0x1138 int32_t bonus_damage; // 0x113c float stun_duration; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Roshan_Slam : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Roshan_Slam : public CDOTA_Buff { public: int32_t slow_amount; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Roshan_InherentBuffs : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Roshan_InherentBuffs : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Roshan_Devotion : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Roshan_DevotionAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Roshan_Devotion : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Animation_Attack : public CDOTABaseAbility { public: float m_flPlaybackRate; // 0x550 float animation_time; // 0x554 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Animation_RightClawSwipe : public CDOTA_Ability_Animation_Attack { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Animation_RightClawSwipe : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_radius; // 0x113c float m_flScalar; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x1148 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Animation_LeftClawSwipe : public CDOTA_Ability_Animation_Attack { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Animation_LeftClawSwipe : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_radius; // 0x113c float m_flScalar; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x1148 }; // Alignment: 7 // Size: 0x1150 class CDOTA_Modifier_Move_From_Activity : public CDOTA_Buff { public: float m_flCurrentTime; // 0x1138 float m_flTotalTime; // 0x113c float m_flSequenceYaw; // 0x1140 HSequence m_nSequence; // 0x1144 int32_t m_nActivity; // 0x1148 bool m_bCanBeInterrupted; // 0x114c bool m_bFadeGesture; // 0x114d }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Attached_Unit : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hAttachTarget; // 0x1138 bool m_bPhysicalImmune; // 0x113c bool m_bMagicImmune; // 0x113d }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Nian_Dive : public CDOTABaseAbility { public: float m_flPlaybackRate; // 0x550 }; // Alignment: 33 // Size: 0x11e8 class CDOTA_Modifier_Nian_Dive : public CDOTA_Buff { public: float m_flTotalTimeInAir; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c Vector m_vTargetPosition; // 0x1158 float m_flCurrentTimeHoriz; // 0x1164 float m_flCurrentTimeVert; // 0x1168 bool m_bInterrupted; // 0x116c private: [[maybe_unused]] uint8_t __pad116d[0x3]; // 0x116d public: float m_flHorizDelayTime; // 0x1170 float m_flVertDelayTime; // 0x1174 float m_flLeapSequenceDuration; // 0x1178 float m_flClawDamageTime; // 0x117c float m_flPlaybackRate; // 0x1180 CHandle< CBaseEntity > m_hTarget; // 0x1184 bool m_bPlayedSwipeSound; // 0x1188 private: [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 public: int32_t pounce_distance; // 0x118c float pounce_speed; // 0x1190 float pounce_acceleration; // 0x1194 int32_t pounce_radius; // 0x1198 int32_t pounce_damage; // 0x119c int32_t stun_radius; // 0x11a0 float stun_duration; // 0x11a4 float leash_duration; // 0x11a8 float initial_delay; // 0x11ac float landing_delay; // 0x11b0 float vertical_adjust; // 0x11b4 float vertical_adjust_max_distance; // 0x11b8 float vertical_adjust_min_distance; // 0x11bc int32_t claw_damage; // 0x11c0 int32_t claw_damage_radius; // 0x11c4 float claw_damage_delay; // 0x11c8 float claw_damage_duration; // 0x11cc CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x11d0 }; // Alignment: 11 // Size: 0x5c0 class CDOTA_Ability_NianCharge : public CDOTABaseAbility { public: bool m_bChargeFinished; // 0x560 bool m_bPlayedChargeAnimation; // 0x561 bool m_bPinning; // 0x562 private: [[maybe_unused]] uint8_t __pad0563[0x1]; // 0x563 public: GameTime_t m_flPinStartTime; // 0x564 Vector m_vProjectileLocation; // 0x568 Vector m_vTargetLocation; // 0x574 CHandle< CBaseEntity > m_hTarget; // 0x580 private: [[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584 public: CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x588 CUtlVector< CDOTA_Tree* > m_hTrackingProjectileTrees; // 0x5a0 int32_t nFXIndex; // 0x5b8 int32_t m_iCurProjectileIndex; // 0x5bc }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nian_Frenzy : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_Nian_Frenzy : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_radius; // 0x113c int32_t stun_radius; // 0x1140 float dive_distance; // 0x1144 float initial_rise_time; // 0x1148 float right_swipe_time; // 0x114c float left_swipe_time; // 0x1150 float knockdown_duration; // 0x1154 float stun_duration; // 0x1158 int32_t m_nTickCounter; // 0x115c CUtlVector< CHandle< CBaseEntity > > m_hEnemies; // 0x1160 }; // Alignment: 16 // Size: 0x5a8 class CDOTA_Ability_Nian_Roar : public CDOTABaseAbility { public: int32_t base_projectiles; // 0x550 int32_t max_projectiles; // 0x554 int32_t projectile_step; // 0x558 int32_t base_speed; // 0x55c int32_t speed_step; // 0x560 int32_t initial_radius; // 0x564 int32_t end_radius; // 0x568 int32_t damage; // 0x56c float base_interval; // 0x570 float interval_step; // 0x574 int32_t m_nCastCount; // 0x578 int32_t m_nProjectiles; // 0x57c int32_t m_nWaveCount; // 0x580 private: [[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584 public: CountdownTimer m_ctTimer; // 0x588 float m_flTiming; // 0x5a0 bool m_bScriptRoar; // 0x5a4 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Roar : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Intrinsic : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Attachment : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Attachment_Regrow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Waiting : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Animation_TailSpin : public CDOTABaseAbility { public: float m_flPlaybackRate; // 0x550 float animation_time; // 0x554 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Animation_TailSpin : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_radius; // 0x113c float m_flPlaybackRate; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x1148 }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_Nian_Apocalypse : public CDOTABaseAbility { public: int32_t area_of_effect; // 0x550 ParticleIndex_t m_nfxIndex_roar; // 0x554 float fire_interval; // 0x558 float delay; // 0x55c float target_range; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CountdownTimer m_ctTimer; // 0x568 float m_flTiming; // 0x580 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Nian_Apocalypse : public CDOTA_Buff { public: int32_t area_of_effect; // 0x1138 float damage; // 0x113c float stun_duration; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Nian_Knockdown : public CDOTA_Buff { public: float m_flStandUpDuration; // 0x1138 float m_flKnockDownDuration; // 0x113c bool m_bDebuff; // 0x1140 bool m_bStandingUp; // 0x1141 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Big_Flinch : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Firecracker_Debuff : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nian_GreaterBash : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Nian_GreaterBash : public CDOTA_Buff { public: int32_t chance_pct; // 0x1138 float damage; // 0x113c float movespeed_duration; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nian_GreaterBash_Speed : public CDOTA_Buff { public: int32_t bonus_movespeed_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_NianCharge : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_NianChargePinned : public CDOTA_Buff { public: float pinned_damage_amount; // 0x1138 float pinned_damage_interval; // 0x113c }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Nian_Tail_Swipe : public CDOTA_Ability_Animation_Attack { public: // no members available }; // Alignment: 15 // Size: 0x11a8 class CDOTA_Modifier_Nian_Tail_Swipe_Wall : public CDOTA_Buff { public: Vector m_vWallStartPosition; // 0x1138 Vector m_vWallDirection; // 0x1144 Vector m_vWallLeft; // 0x1150 int32_t m_DamageAmount; // 0x115c int32_t m_DamageType; // 0x1160 float speed; // 0x1164 float starting_width; // 0x1168 float ending_width; // 0x116c float stun_duration; // 0x1170 float fly_duration; // 0x1174 float fly_distance; // 0x1178 ParticleIndex_t m_nFXIndex; // 0x117c GameTime_t m_flWallStartTime; // 0x1180 float m_flScalar; // 0x1184 CUtlVector< CHandle< CBaseEntity > > m_EntitiesToExclude; // 0x1188 }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Nian_Tail_Swipe_AirTime : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c float m_flOldPitch; // 0x1140 QAngle m_qRotation; // 0x1144 int32_t m_nRotations; // 0x1150 float m_flDistance; // 0x1154 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Nian_Hurricane_Whirlpool : public CDOTA_Buff { public: float pull_switch_interval; // 0x1138 int32_t pull_speed; // 0x113c bool m_bForward; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: ParticleIndex_t m_nfxIndex; // 0x1144 }; // Alignment: 13 // Size: 0x5a8 class CDOTA_Ability_Nian_Hurricane : public CDOTABaseAbility { public: int32_t min_distance; // 0x550 int32_t max_distance; // 0x554 int32_t torrent_count; // 0x558 float fire_interval; // 0x55c float pull_switch_interval; // 0x560 float game_time_wind_activation; // 0x564 CountdownTimer m_ctPullTimer; // 0x568 CountdownTimer m_ctTimer; // 0x580 float m_flTiming; // 0x598 bool m_bForward; // 0x59c bool m_bUseWind; // 0x59d private: [[maybe_unused]] uint8_t __pad059e[0x2]; // 0x59e public: ParticleIndex_t m_nFXIndex; // 0x5a0 ParticleIndex_t m_nfxIndex_roar; // 0x5a4 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nian_Torrent_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_Nian_Whirlpool : public CDOTABaseAbility { public: int32_t pool_count; // 0x550 int32_t min_distance; // 0x554 int32_t max_distance; // 0x558 int32_t pull_radius; // 0x55c float fire_interval; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CountdownTimer m_ctTimer; // 0x568 float m_flTiming; // 0x580 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Nian_WhirlpoolThinker : public CDOTA_Buff { public: int32_t pull_radius; // 0x1138 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Nian_Whirlpool_Pull : public CDOTA_Buff { public: int32_t pull_radius; // 0x1138 int32_t pull_speed; // 0x113c int32_t radius; // 0x1140 int32_t whirlpool_damage; // 0x1144 float tick_rate; // 0x1148 GameTime_t m_flDamageTick; // 0x114c CHandle< CBaseEntity > m_hThinker; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nian_Eruption : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Nian_EruptionPendingThinker : public CDOTA_Buff { public: int32_t tick_count; // 0x1138 int32_t beam_radius; // 0x113c int32_t m_nTickCount; // 0x1140 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Nian_EruptionThinker : public CDOTA_Buff { public: int32_t explosion_radius; // 0x1138 float damage_interval; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nian_Sigils : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1170 class CDOTA_Modifier_Nian_Waterball : public CDOTA_Buff { public: int32_t trail_damage_per_second; // 0x1138 int32_t trail_damage_radius; // 0x113c CUtlVector< int32 > m_vFXIndices; // 0x1140 CUtlVector< Vector > m_vLocations; // 0x1158 }; // Alignment: 2 // Size: 0x580 class CDOTA_Ability_Nian_Waterball : public CDOTABaseAbility { public: CountdownTimer m_ctTimer; // 0x550 CUtlVector< CHandle< CBaseEntity > > m_hEntities; // 0x568 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Nian_Damage_Reflection : public CDOTA_Buff { public: GameTime_t m_flReflectionStartTime; // 0x1138 float m_flReflectionAmount; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Nian_Flag_Trap : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Nian_Flag_Trap_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nian_Flag_Trapped : public CDOTA_Buff { public: int32_t bonus_spell_damage_pct; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Ability_Firework_Mine : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Firework_Mine : public CDOTA_Buff { public: int32_t damage_radius; // 0x1138 int32_t trigger_radius; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_JumpBoots : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_JumpBootsIntrinsic : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_JumpBoots : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 int32_t push_length; // 0x114c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Nian_Leap : public CDOTABaseAbility { public: float m_flPlaybackRate; // 0x550 }; // Alignment: 17 // Size: 0x1198 class CDOTA_Modifier_Nian_Leap : public CDOTA_Buff { public: float m_flTotalTimeInAir; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c Vector m_vTargetPosition; // 0x1158 float m_flCurrentTimeHoriz; // 0x1164 float m_flCurrentTimeVert; // 0x1168 bool m_bInterrupted; // 0x116c private: [[maybe_unused]] uint8_t __pad116d[0x3]; // 0x116d public: float m_flHorizDelayTime; // 0x1170 float m_flVertDelayTime; // 0x1174 float m_flLeapSequenceDuration; // 0x1178 float m_flPlaybackRate; // 0x117c int32_t pounce_distance; // 0x1180 float pounce_speed; // 0x1184 float pounce_acceleration; // 0x1188 float initial_delay; // 0x118c float landing_delay; // 0x1190 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Vermillion_Robe : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Vermillion_Robe : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Vermillion_Robe_Flames : public CDOTA_Buff { public: int32_t radius; // 0x1138 float damage_per_health_missing; // 0x113c float delay; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Vermillion_Robe : public CDOTA_Buff_Item { public: int32_t mana_regen_pct; // 0x1138 int32_t move_speed_bonus; // 0x113c int32_t bonus_stats; // 0x1140 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Warlock_FatalBonds : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_FatalBondsEntities; // 0x1138 int32_t damage_share_percentage; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Warlock_Fatal_Bonds : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Warlock_Shadow_Word : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Warlock_Shadow_Word : public CDOTA_Buff { public: float tick_interval; // 0x1138 int32_t damage; // 0x113c int32_t shard_movement_speed_pct; // 0x1140 }; // Alignment: 15 // Size: 0x5b0 class CDOTA_Ability_Warlock_Upheaval : public CDOTABaseAbility { public: Vector m_vPosition; // 0x550 float aoe; // 0x55c int32_t slow_per_second; // 0x560 int32_t aspd_per_second; // 0x564 int32_t max_slow; // 0x568 int32_t damage_per_second; // 0x56c int32_t max_damage; // 0x570 float damage_tick_interval; // 0x574 CountdownTimer m_timer; // 0x578 float duration; // 0x590 GameTime_t m_flElapsedTime; // 0x594 float m_flCurrentSlow; // 0x598 ParticleIndex_t m_nFXIndex; // 0x59c private: [[maybe_unused]] uint8_t __pad05a0[0x8]; // 0x5a0 public: bool m_bTargetCast; // 0x5a8 private: [[maybe_unused]] uint8_t __pad05a9[0x3]; // 0x5a9 public: CHandle< CBaseEntity > m_hTarget; // 0x5ac }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Warlock_Upheaval : public CDOTA_Buff { public: int32_t m_iSlow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Warlock_Upheaval_Ally : public CDOTA_Buff { public: int32_t m_iAttackSpeed; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Warlock_RainOfChaos : public CDOTABaseAbility { public: int32_t aoe; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Death_Trigger : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Thinker : public CDOTA_Buff { public: float stun_duration; // 0x1138 bool bHasScepter; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: int32_t aoe; // 0x1140 int32_t m_iCount; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Golem : public CDOTA_Buff { public: int32_t bonus_magic_resistance; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Warlock_Golem_Flaming_Fists : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Warlock_Golem_Flaming_Fists : public CDOTA_Buff { public: float damage; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Warlock_Golem_Permanent_Immolation : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Warlock_Golem_Permanent_Immolation : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Warlock_Golem_Permanent_Immolation_Debuff : public CDOTA_Buff { public: int32_t aura_damage; // 0x1138 }; // Alignment: 0 // Size: 0x758 class CDOTA_Beastmaster_Axe : public CBaseAnimatingActivity { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Beastmaster_WildAxes : public CDOTABaseAbility { public: int32_t axe_damage; // 0x550 }; // Alignment: 19 // Size: 0x1200 class CDOTA_Modifier_Beastmaster_WildAxes : public CDOTA_Buff { public: Vector m_vLeftControl; // 0x1138 Vector m_vRightControl; // 0x1144 Vector m_vTargetLoc; // 0x1150 Vector m_vSourceLoc; // 0x115c float m_flDuration; // 0x1168 GameTime_t m_flDieTime; // 0x116c bool m_bReturning; // 0x1170 bool m_bCatchingAxes; // 0x1171 private: [[maybe_unused]] uint8_t __pad1172[0x6]; // 0x1172 public: CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x1178 ParticleIndex_t m_nAxeFXIndex[2]; // 0x1190 CUtlVector< CHandle< CBaseEntity > > m_hHitList[2]; // 0x1198 int32_t radius; // 0x11c8 int32_t spread; // 0x11cc int32_t axe_damage; // 0x11d0 float duration; // 0x11d4 float min_throw_duration; // 0x11d8 float max_throw_duration; // 0x11dc CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x11e0 bool m_bHitInvisibleHero; // 0x11f8 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Beastmaster_Axe_Stack_Counter : public CDOTA_Buff { public: float damage_amp; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Beastmaster_Axe_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_CallOfTheWild_Boar : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_CallOfTheWild_Hawk : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Beastmaster_CallOfTheWild_Hawk : public CDOTA_Buff { public: Vector m_vDestination; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x1144 int32_t m_iTickCount; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_CallOfTheWild_Boar_Poison : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_CallOfTheWild_Boar_BonusDamage : public CDOTA_Buff { public: float boar_bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_CallOfTheWild_Boar_PoisonBase : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_CallOfTheWild_Boar_Poison : public CDOTA_Modifier_CallOfTheWild_Boar_PoisonBase { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_CallOfTheWild_Boar_PoisonEffect : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t movement_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_InnerBeast : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Beastmaster_InnerBeast_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Beastmaster_InnerBeast : public CDOTA_Buff { public: // no members available }; // Alignment: 9 // Size: 0x578 class CDOTA_Ability_Beastmaster_PrimalRoar : public CDOTABaseAbility { public: float duration; // 0x550 float slow_duration; // 0x554 int32_t side_damage; // 0x558 int32_t damage_radius; // 0x55c int32_t path_width; // 0x560 float push_duration; // 0x564 int32_t push_distance; // 0x568 int32_t damage; // 0x56c float movement_speed_duration; // 0x570 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Beastmaster_PrimalRoar_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed_pct; // 0x1138 int32_t slow_attack_speed_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Beastmaster_PrimalRoar_Speed : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Beastmaster_PrimalRoar_Push : public CDOTA_Buff { public: Vector m_vVelocity; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_Mark_Of_The_Beast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Beastmaster_Mark_Of_The_Beast : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_CallOfTheWild_Hawk_Reveal : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_Hawk_Dive : public CDOTABaseAbility { public: // no members available }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_Beastmaster_Hawk_Dive : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 float m_flPredictedTotalTime; // 0x113c Vector m_vStartPosition; // 0x1140 float m_flCurrentTimeHoriz; // 0x114c float m_flCurrentTimeVert; // 0x1150 bool m_bHorizontalMotionInterrupted; // 0x1154 bool m_bDamageApplied; // 0x1155 private: [[maybe_unused]] uint8_t __pad1156[0x2]; // 0x1156 public: Vector m_vHorizontalVelocity; // 0x1158 Vector m_vLastKnownTargetPosition; // 0x1164 float m_flInitialVelocityZ; // 0x1170 bool m_bDone; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: int32_t radius; // 0x1178 int32_t toss_damage; // 0x117c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_DrumsOfSlom : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Beastmaster_DrumsOfSlom : public CDOTA_Buff { public: int32_t iRadius; // 0x1138 int32_t base_damage; // 0x113c int32_t base_heal; // 0x1140 int32_t heal_pct; // 0x1144 int32_t creep_heal_pct; // 0x1148 float min_pulse_interval; // 0x114c int32_t pulse_divisor; // 0x1150 int32_t movespeed_slow; // 0x1154 float attack_damage; // 0x1158 ParticleIndex_t m_nFXIndexOverhead; // 0x115c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Beastmaster_DrumsOfSlom_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_5_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_5 : public CDOTA_Buff { public: int32_t bonus_ms; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_6_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_6 : public CDOTA_Buff { public: int32_t bonus_hp; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_QueenOfPain_ScreamOfPain : public CDOTABaseAbility { public: int32_t damage; // 0x550 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_QueenOfPain_ScreamOfPain_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_QueenOfPain_ShadowStrike : public CDOTABaseAbility { public: Vector projectile_speed; // 0x550 }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_QueenOfPain_ShadowStrike : public CDOTA_Buff { public: int32_t duration_damage; // 0x1138 int32_t duration_heal; // 0x113c int32_t movement_slow; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CountdownTimer m_SlowInterval; // 0x1148 float m_flSlowStep; // 0x1160 float m_flSlowStepStep; // 0x1164 float attack_buff_duration; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_QueenOfPain_Blink : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1190 class CDOTA_Modifier_QueenOfPain_Arcana : public CDOTA_Buff { public: CUtlOrderedMap< PlayerID_t, bool > m_vecHitPlayers; // 0x1138 CUtlOrderedMap< PlayerID_t, bool > m_vecKilledPlayers; // 0x1160 GameTime_t m_flLastSonicWaveCast; // 0x1188 bool m_bSpeechComplete; // 0x118c bool m_bMessageComplete; // 0x118d bool m_bIsMeleeAttack; // 0x118e }; // Alignment: 5 // Size: 0x570 class CDOTA_Ability_QueenOfPain_SonicWave : public CDOTABaseAbility { public: GameTime_t m_fStartTime; // 0x550 float m_fTotalTime; // 0x554 ParticleIndex_t m_nFXIndex; // 0x558 int32_t starting_aoe; // 0x55c int32_t final_aoe; // 0x560 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_QueenOfPain_SonicWave_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_QueenOfPain_SonicWave_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_QueenOfPain_Arcana_Kill_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Venomancer_PlagueWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Venomancer_VenomousGale : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 float duration; // 0x554 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Venomancer_VenomousGale : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t tick_damage; // 0x113c float tick_interval; // 0x1140 float duration; // 0x1144 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Venomancer_PoisonSting : public CDOTABaseAbility { public: int32_t radius; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Venomancer_PoisonSting_Applier : public CDOTA_Buff { public: float duration; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Venomancer_PoisonStingBase : public CDOTA_Buff { public: int32_t m_iDamage; // 0x1138 int32_t movement_speed; // 0x113c int32_t m_nTicksRemaining; // 0x1140 float m_flAttackDamage; // 0x1144 int32_t hp_regen_reduction; // 0x1148 }; // Alignment: 0 // Size: 0x1150 class CDOTA_Modifier_Venomancer_PoisonSting : public CDOTA_Modifier_Venomancer_PoisonStingBase { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Venomancer_PoisonStingWard : public CDOTA_Buff { public: int32_t m_iDamage; // 0x1138 int32_t movement_speed; // 0x113c int32_t hp_regen_reduction; // 0x1140 int32_t m_nTicksRemaining; // 0x1144 float m_flAttackDamage; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Plague_Wards_Bonus : public CDOTA_Buff { public: int32_t ward_hp; // 0x1138 int32_t ward_damage; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Plague_Wards_Bonus_Range : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Venomancer_PoisonNova : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_PoisonNova_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 int32_t speed; // 0x1158 int32_t radius; // 0x115c int32_t start_radius; // 0x1160 float duration; // 0x1164 float duration_scepter; // 0x1168 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Venomancer_PoisonNova : public CDOTA_Buff { public: float damage_scepter; // 0x1138 float damage; // 0x113c float base_damage; // 0x1140 float m_fDamage; // 0x1144 float aspd_slow; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Holdout_ScourgeWard : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Venomancer_Latent_Poison : public CDOTABaseAbility { public: Vector projectile_speed; // 0x550 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Venomancer_Latent_Poison : public CDOTA_Buff { public: int32_t duration_damage; // 0x1138 int32_t movement_slow; // 0x113c int32_t explosion_damage; // 0x1140 float explosion_stun_duration; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FacelessVoid_Backtrack : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_Backtrack : public CDOTA_Buff { public: int32_t dodge_chance_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FacelessVoid_TimeLock : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1198 class CDOTA_Modifier_FacelessVoid_TimeLock : public CDOTA_Buff { public: float duration; // 0x1138 float duration_creep; // 0x113c float delay; // 0x1140 int32_t chance_pct; // 0x1144 int32_t bonus_damage; // 0x1148 GameTime_t last_attack_time; // 0x114c CUtlVector< int16 > m_ProcAttackRecords; // 0x1150 GameTime_t apply_activity_modifier_until; // 0x1168 GameTime_t disable_activity_modifier_until; // 0x116c CUtlOrderedMap< CHandle< CDOTA_BaseNPC >, int32 > m_mapTargets; // 0x1170 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_TimeLock_Freeze : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_Timelock_TimeWalk_Proc_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_Timelock_Basic_Proc_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FacelessVoid_TimeDilation : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1288 class CDOTA_Modifier_FacelessVoid_TimeDilation_Slow : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t m_nAffectedAbilities; // 0x113c GameTime_t m_flLastDamageTime; // 0x1140 int32_t slow; // 0x1144 int32_t cooldown_percentage; // 0x1148 int32_t damage_per_stack; // 0x114c int32_t base_damage; // 0x1150 }; // Alignment: 0 // Size: 0x1150 class CDOTA_Modifier_FacelessVoid_TimeWalk_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_FacelessVoid_TimeWalk_ShardBuff : public CDOTA_Buff { public: Vector m_vStartLocation; // 0x1138 }; // Alignment: 7 // Size: 0x590 class CDOTA_Ability_FacelessVoid_TimeWalk : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x560 int32_t speed; // 0x564 int32_t range; // 0x568 int32_t radius; // 0x56c int32_t m_nProjectileID; // 0x570 Vector m_vProjectileLocation; // 0x574 Vector m_vStartLocation; // 0x580 }; // Alignment: 4 // Size: 0x580 class CDOTA_Ability_FacelessVoid_TimeWalk_Reverse : public CDOTABaseAbility { public: int32_t speed; // 0x560 int32_t m_nProjectileID; // 0x564 Vector m_vProjectileLocation; // 0x568 Vector m_vStartLocation; // 0x574 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_FacelessVoid_TimeLock_ForceProc : public CDOTA_Buff { public: float duration; // 0x1138 float duration_creep; // 0x113c int32_t bonus_damage; // 0x1140 float delay; // 0x1144 CHandle< CDOTA_BaseNPC > m_hTarget; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_TimeWalk_Slow : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_TimeWalk : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_FacelessVoid_Chronosphere : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_Chronosphere : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_ArcanaDamageRouter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_Chronosphere_Freeze : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_Chronosphere_SelfBuff : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_Chronosphere_Speed : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_FacelessVoid_Arcana : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FacelessVoid_Arcana_Kill_Effect : public CDOTA_Buff { public: ParticleIndex_t m_nCasterFXIndex; // 0x1138 }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_DeathProphet_CarrionSwarm : public CDOTABaseAbility { public: int32_t start_radius; // 0x550 int32_t end_radius; // 0x554 GameTime_t m_fStartTime; // 0x558 float m_fTotalTime; // 0x55c int32_t m_nProjectileHandle; // 0x560 ParticleIndex_t m_nFXIndex; // 0x564 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_DeathProphet_Silence : public CDOTABaseAbility { public: Vector m_vPos; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DeathProphet_Silence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DeathProphet_Silence_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DeathProphet_Witchcraft : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DeathProphet_Witchcraft : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DeathProphet_SpiritSiphon_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_DeathProphet_SpiritSiphon : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 int32_t m_iArrowProjectile; // 0x55c int32_t m_nFXIndex; // 0x560 }; // Alignment: 14 // Size: 0x1170 class CDOTA_Modifier_DeathProphet_SpiritSiphon : public CDOTA_Buff { public: float flSmoothness; // 0x1138 float damage; // 0x113c float damage_pct; // 0x1140 int32_t drain_range; // 0x1144 float haunt_duration; // 0x1148 int32_t siphon_buffer; // 0x114c int32_t movement_steal; // 0x1150 CHandle< CBaseEntity > m_hTarget; // 0x1154 ParticleIndex_t m_iLinkIndex; // 0x1158 int32_t m_nSelfBuffSerialNumber; // 0x115c int32_t m_nTargetDebuffSerialNumber; // 0x1160 bool m_bAppliedFear; // 0x1164 private: [[maybe_unused]] uint8_t __pad1165[0x3]; // 0x1165 public: float shard_fear_duration; // 0x1168 float shard_consecutive_siphon_duration; // 0x116c }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_DeathProphet_SpiritSiphon_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DeathProphet_SpiritSiphon_Slow : public CDOTA_Buff { public: int32_t movement_steal; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DeathProphet_SpiritSiphon_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DeathProphet_SpiritSiphon_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x758 class CDOTA_DeathProphet_Exorcism_Spirit : public CBaseAnimatingActivity { public: // no members available }; // Alignment: 18 // Size: 0x1198 class CDOTA_Modifier_DeathProphet_Exorcism : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t spirit_speed; // 0x113c int32_t max_distance; // 0x1140 int32_t give_up_distance; // 0x1144 int32_t min_damage; // 0x1148 int32_t max_damage; // 0x114c int32_t heal_percent; // 0x1150 int32_t spirit_duration; // 0x1154 float ghost_spawn_rate; // 0x1158 int32_t movement_bonus; // 0x115c int32_t m_iSpirits; // 0x1160 GameTime_t m_fStartTime; // 0x1164 GameTime_t m_fLastThinkTime; // 0x1168 GameTime_t m_fSpawnTime; // 0x116c bool m_bFirstSpawn; // 0x1170 bool m_bCommentedOnExpired; // 0x1171 bool m_bForceExpired; // 0x1172 private: [[maybe_unused]] uint8_t __pad1173[0x5]; // 0x1173 public: CUtlVector< sSpiritInfo* > m_vecSpirits; // 0x1178 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DeathProphet_Slow : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 }; // Alignment: 12 // Size: 0x1178 class CDOTA_Modifier_DeathProphet_Scepter : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t spirit_speed; // 0x113c int32_t max_distance; // 0x1140 int32_t give_up_distance; // 0x1144 int32_t min_damage; // 0x1148 int32_t max_damage; // 0x114c int32_t heal_percent; // 0x1150 int32_t spirit_duration; // 0x1154 GameTime_t m_fStartTime; // 0x1158 GameTime_t m_fLastThinkTime; // 0x115c bool m_bExpired; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x7]; // 0x1161 public: sSpiritInfo* m_SpiritInfo; // 0x1168 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Death_Prophet_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Death_Prophet_Attack_Scepter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pugna_NetherBlast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pugna_NetherBlast_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pugna_Decrepify : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Pugna_Decrepify : public CDOTA_Buff { public: int32_t bonus_spell_damage_pct; // 0x1138 int32_t bonus_spell_damage_pct_allies; // 0x113c int32_t bonus_movement_speed; // 0x1140 int32_t bonus_movement_speed_allies; // 0x1144 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Pugna_NetherWard : public CDOTABaseAbility { public: CUtlVector< sAbilityHistory > vecAbilitiesUsed; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Pugna_NetherWard : public CDOTA_Buff { public: int32_t radius; // 0x1138 float mana_multiplier; // 0x113c float mana_drained_per_attack; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Pugna_NetherWard_Aura : public CDOTA_Buff { public: float mana_regen; // 0x1138 float spell_damage_reduction; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Pugna_LifeDrain : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 14 // Size: 0x1168 class CDOTA_Modifier_Pugna_LifeDrain : public CDOTA_Buff { public: int32_t health_drain; // 0x1138 float tick_rate; // 0x113c bool m_bDoRangeCheck; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: ParticleIndex_t m_nFXIndex; // 0x1144 GameTime_t m_flElapsedTime; // 0x1148 bool m_bPrimary; // 0x114c bool m_bShard; // 0x114d bool m_bFromWard; // 0x114e private: [[maybe_unused]] uint8_t __pad114f[0x1]; // 0x114f public: CHandle< CBaseEntity > m_hWard; // 0x1150 float spell_amp_drain_duration; // 0x1154 int32_t max_spell_amp_drain_pct; // 0x1158 int32_t spell_amp_drain_rate; // 0x115c int32_t spell_amp_drain_rate_ward; // 0x1160 int32_t spell_amp_drain_max; // 0x1164 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pugna_LifeDrain_SpellAmp : public CDOTA_Buff { public: bool m_bIsFriendly; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Phantom_Assassin_GroundDagger : public CDOTA_Buff { public: bool m_bLanded; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomAssassin_Stifling_Dagger : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PhantomAssassin_StiflingDagger_Caster : public CDOTA_Buff { public: int32_t base_damage; // 0x1138 int32_t attack_factor; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomAssassin_StiflingDagger : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomAssassin_Fan_Of_Knives : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1188 class CDOTA_Modifier_PhantomAssassin_Fan_Of_Knives_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 CountdownTimer m_ViewerTimer; // 0x1158 int32_t projectile_speed; // 0x1170 int32_t radius; // 0x1174 float duration; // 0x1178 float pct_health_damage_initial; // 0x117c float max_damage_initial; // 0x1180 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_PhantomAssassin_Fan_Of_Knives : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomAssassin_PhantomStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PhantomAssassin_PhantomStrike : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t lifesteal_pct; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomAssassin_Blur : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PhantomAssassin_Blur : public CDOTA_Buff { public: int32_t bonus_evasion; // 0x1138 }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_PhantomAssassin_BlurActive : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 float fade_duration; // 0x114c float scepter_fade_duration; // 0x1150 bool m_bDestroyNext; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PhantomAssassin_CoupdeGrace : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_PhantomAssassin_CoupdeGrace : public CDOTA_Buff { public: int32_t crit_bonus; // 0x1138 int32_t crit_chance; // 0x113c bool crit_active; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_PhantomAssassin_Gravestone_Thinker : public CDOTA_Buff { public: int32_t m_nEpitaph; // 0x1138 PlayerID_t m_nVictimPlayerID; // 0x113c int32_t m_nVictimHeroID; // 0x1140 int32_t m_nCritDmg; // 0x1144 int32_t m_nContractComplete; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PhantomAssassin_Gravestone : public CDOTA_Buff { public: int32_t m_nFXIndex; // 0x1138 bool m_bContractGravestoneComplete; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_PhantomAssassin_ScreenSplatter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_Refraction : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_TemplarAssassin_RefractionDamage : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 int32_t bonus_damage; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TemplarAssassin_RefractionAbsorb : public CDOTA_Buff { public: int32_t damage_threshold; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_Meld : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TemplarAssassin_Meld_Animation : public CDOTA_Buff { public: bool launched_attack; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_TemplarAssassin_Meld : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 bool launched_attack; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: CHandle< CBaseEntity > m_hTarget; // 0x1140 int32_t m_nAttackRecord; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TemplarAssassin_MeldArmor : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_PsiBlades : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_TemplarAssassin_PsiBlades : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 float attack_spill_range; // 0x113c int32_t attack_spill_width; // 0x1140 int32_t attack_spill_pct; // 0x1144 int32_t attack_spill_penalty; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TemplarAssassin_PsiBlades_Slow : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TemplarAssassin_PsionicTrap_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_PsionicTrap : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_TemplarAssassin_Trap : public CDOTA_Modifier_Invisible { public: int32_t shard_bonus_vision; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_Trap : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_TemplarAssassin_Trap_Teleport : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTrap; // 0x550 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_TemplarAssassin_Trap_Slow : public CDOTA_Buff { public: int32_t movement_speed_min; // 0x1138 int32_t movement_speed_max; // 0x113c int32_t trap_bonus_damage; // 0x1140 float trap_max_charge_duration; // 0x1144 float shard_min_silence_duration; // 0x1148 float shard_max_silence_duration; // 0x114c float stage; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_SelfTrap : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TemplarAssassin_Refraction_Holdout : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_TemplarAssassin_Refraction_Holdout : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t damage_absorb; // 0x113c float m_flDamageAbsorbed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Viper_PoisonAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Viper_PoisonAttack : public CDOTA_Buff { public: float duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Viper_PoisonAttack_Slow : public CDOTA_Buff { public: float damage; // 0x1138 int32_t shard_armor_reduction; // 0x113c int32_t shard_building_dmg_pct; // 0x1140 int32_t movement_speed; // 0x1144 int32_t magic_resistance; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Viper_Nethertoxin : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Viper_Nethertoxin_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Viper_Nethertoxin : public CDOTA_Buff { public: int32_t min_damage; // 0x1138 int32_t max_damage; // 0x113c float max_duration; // 0x1140 float m_flDamageInterval; // 0x1144 float m_flTimeIncrement; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Viper_NethertoxinMute : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Viper_CorrosiveSkin : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Viper_CorrosiveSkin : public CDOTA_Buff { public: int32_t bonus_magic_resistance; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Viper_CorrosiveSkin_Slow : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t damage; // 0x113c int32_t effect_multiplier_distance; // 0x1140 int32_t effect_multiplier; // 0x1144 bool m_bEffectMultiplied; // 0x1148 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Viper_ViperStrike : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Viper_ViperStrike_Slow : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Viper_Nose_Dive : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1168 class CDOTA_Modifier_Viper_Nose_Dive : public CDOTA_Buff { public: Vector m_vTargetPos; // 0x1138 Vector m_vStart; // 0x1144 float m_flZDelta; // 0x1150 int32_t radius; // 0x1154 int32_t corrosive_radius; // 0x1158 float effect_duration; // 0x115c int32_t dive_speed; // 0x1160 float start_height; // 0x1164 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Viper_Nose_Dive_Effect : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Luna_LucentBeam : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Luna_LucentBeam_Damage_Buff_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Luna_LucentBeam_Damage_Buff : public CDOTA_Buff { public: int32_t damage_buff_per_beam; // 0x1138 }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_Luna_MoonGlaive : public CDOTABaseAbility { public: int32_t m_iAttackIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< sGlaiveInfo > m_GlaiveInfo; // 0x558 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Luna_MoonGlaive : public CDOTA_Buff { public: int32_t range; // 0x1138 int32_t bounces; // 0x113c int32_t damage_reduction_percent; // 0x1140 ParticleIndex_t m_nMoonGlaiveFXIndex; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Luna_LunarBlessing : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Luna_LunarBlessing_Smoke : public CDOTA_Modifier_Invisible { public: int32_t bonus_speed_day; // 0x1148 int32_t bonus_speed_night; // 0x114c int32_t break_distance_day; // 0x1150 int32_t break_distance_night; // 0x1154 int32_t visibility_radius; // 0x1158 int32_t bonus_movement_speed; // 0x115c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Luna_LunarBlessing : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t bonus_night_vision; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Luna_LunarBlessingAura : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Luna_LunarBlessing_Active : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Luna_Lunar_Grace : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Luna_Lunar_Grace : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 float night_multiplier; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Luna_Eclipse : public CDOTABaseAbility { public: bool m_bIsScepterCast; // 0x550 }; // Alignment: 13 // Size: 0x1190 class CDOTA_Modifier_Luna_Eclipse : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t radius; // 0x113c int32_t beams; // 0x1140 int32_t hit_count; // 0x1144 int32_t m_iBeamDamage; // 0x1148 float beam_interval; // 0x114c float stun_duration; // 0x1150 Vector vPosition; // 0x1154 bool bAreaTarget; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_iTickCount; // 0x1164 ParticleIndex_t m_nMoonlightFXIndex; // 0x1168 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1170 float m_flBeamStun; // 0x1188 }; // Alignment: 6 // Size: 0x570 class CDOTA_Ability_DragonKnight_BreatheFire : public CDOTABaseAbility { public: int32_t start_radius; // 0x550 int32_t end_radius; // 0x554 float damage; // 0x558 Vector m_vStartPos; // 0x55c GameTime_t m_fStartTime; // 0x568 float m_fTotalTime; // 0x56c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_BreatheFire_Reduction : public CDOTA_Buff { public: int32_t reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DragonKnight_DragonTail : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DragonKnight_DragonBlood : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_DragonBlood_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_DragonBlood : public CDOTA_Buff { public: int32_t bonus_health_regen; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DragonKnight_ElderDragonForm : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_DragonKnight_DragonForm : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_attack_damage; // 0x113c int32_t bonus_attack_range; // 0x1140 int32_t attack_projectile_speed_bonus; // 0x1144 int32_t magic_resistance; // 0x1148 int32_t model_scale; // 0x114c int32_t iLevel; // 0x1150 int32_t m_iOriginalAttackCapabilities; // 0x1154 CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1158 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_CorrosiveBreath : public CDOTA_Buff { public: float corrosive_breath_duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_CorrosiveBreathDoT : public CDOTA_Buff { public: int32_t corrosive_breath_damage; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_DragonKnight_SplashAttack : public CDOTA_Buff { public: int32_t splash_radius; // 0x1138 int32_t splash_damage_percent; // 0x113c float corrosive_breath_duration; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_FrostBreath : public CDOTA_Buff { public: float frost_duration; // 0x1138 float frost_aoe; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_FrostBreath_Slow : public CDOTA_Buff { public: int32_t frost_bonus_movement_speed; // 0x1138 int32_t frost_bonus_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DragonKnight_BlackDragon_Tooltip : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DragonKnight_Fireball : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_Fireball_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float linger_duration; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DragonKnight_Fireball_Burn : public CDOTA_Buff { public: float burn_interval; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Good_Juju : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Dazzle_Good_Juju : public CDOTA_Buff { public: float cooldown_reduction; // 0x1138 float item_cooldown_reduction; // 0x113c float duration; // 0x1140 int32_t radius; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Bad_Juju : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dazzle_Bad_Juju_Armor_Counter : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 float armor_reduction; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dazzle_Bad_Juju_Armor : public CDOTA_Buff { public: float armor_reduction; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Rain_Of_Vermin : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Dazzle_Rain_Of_Vermin : public CDOTA_Buff { public: int32_t radius; // 0x1138 float interval; // 0x113c float hex_chance; // 0x1140 float hex_duration; // 0x1144 int32_t damage; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Poison_Touch : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Dazzle_Poison_Touch : public CDOTA_Buff { public: int32_t slow; // 0x1138 float bonus_slow; // 0x113c int32_t bonus_damage; // 0x1140 float flAccummulatedBonusSlow; // 0x1144 int32_t iAccummulatedBonusDamage; // 0x1148 int32_t attack_range_bonus; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Dazzle_Poison_Touch_Self : public CDOTA_Buff { public: int32_t attack_range_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Shallow_Grave : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Dazzle_Shallow_Grave : public CDOTA_Buff { public: bool m_bHasPostedEvent; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: ParticleIndex_t m_nFXIndex; // 0x113c float fx_halo_height; // 0x1140 int32_t heal_amplify; // 0x1144 }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_Dazzle_ShadowWave : public CDOTABaseAbility { public: int32_t m_iCurJumpCount; // 0x550 Vector m_vCurTargetLoc; // 0x554 CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560 int32_t bounce_radius; // 0x578 int32_t damage_radius; // 0x57c int32_t damage; // 0x580 int32_t max_targets; // 0x584 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dazzle_Weave : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dazzle_Weave_Armor : public CDOTA_Buff { public: float armor_per_second; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Leshrac_Split_Earth : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Split_Earth_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Leshrac_Diabolic_Edict : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Leshrac_Diabolic_Edict : public CDOTA_Buff { public: int32_t num_explosions; // 0x1138 int32_t radius; // 0x113c float m_fExplosions; // 0x1140 float tower_bonus; // 0x1144 bool m_bTalentActive; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Leshrac_Lightning_Storm : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Lightning_Storm_Scepter_Thinker : public CDOTA_Buff { public: float interval_scepter; // 0x1138 }; // Alignment: 13 // Size: 0x1188 class CDOTA_Modifier_Leshrac_Lightning_Storm : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t radius; // 0x113c int32_t jump_count; // 0x1140 float slow_duration; // 0x1144 float jump_delay; // 0x1148 CHandle< CBaseEntity > hInitialTarget; // 0x114c float m_flDamage; // 0x1150 int32_t m_iCurJumpCount; // 0x1154 Vector m_vCurTargetLoc; // 0x1158 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1168 bool m_bGrantedGem; // 0x1180 bool m_bBounceTwice; // 0x1181 private: [[maybe_unused]] uint8_t __pad1182[0x2]; // 0x1182 public: CHandle< CBaseEntity > m_eLastTarget; // 0x1184 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Lightning_Storm_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Leshrac_Greater_Lightning_Storm : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Decrepify_Aura : public CDOTA_Buff { public: int32_t magic_amp; // 0x1138 int32_t slow; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Decrepify : public CDOTA_Buff { public: int32_t magic_amp; // 0x1138 int32_t slow; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Leshrac_Greater_Lightning_Storm : public CDOTA_Buff { public: int32_t radius; // 0x1138 float interval; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Leshrac_Pulse_Nova : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Leshrac_Pulse_Nova : public CDOTA_Buff { public: bool m_bFirst; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Leshrac_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rattletrap_Overclocking : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Rattletrap_Overclocking : public CDOTA_Buff { public: ParticleIndex_t m_nOverclockFX; // 0x1138 int32_t bonus_movement_speed; // 0x113c int32_t bonus_attack_speed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rattletrap_BatteryAssault : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_BatteryAssault : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rattletrap_PowerCogs : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Rattletrap_Cog_Thinker : public CDOTA_Buff { public: int32_t cogs_radius; // 0x1138 int32_t extra_pull_buffer; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rattletrap_Cog_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_Cog_Thinker_Leash : public CDOTA_Buff { public: int32_t cogs_radius; // 0x1138 int32_t extra_pull_buffer; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_Cog_Leash : public CDOTA_Buff { public: int32_t leash; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_Cog_Thinker_Talent : public CDOTA_Buff { public: int32_t cogs_radius; // 0x1138 int32_t extra_pull_buffer; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rattletrap_Cog_Immune : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_Cog_Thinker_Self_Bonuses : public CDOTA_Buff { public: int32_t cogs_radius; // 0x1138 int32_t extra_pull_buffer; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rattletrap_Cog_Self_Bonuses : public CDOTA_Buff { public: // no members available }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_Rattletrap_Cog : public CDOTA_Buff { public: bool m_bEnabled; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t trigger_distance; // 0x113c int32_t push_length; // 0x1140 float push_duration; // 0x1144 int32_t cogs_radius; // 0x1148 int32_t attacks_to_destroy; // 0x114c int32_t m_iAttackCount; // 0x1150 int32_t m_iCogIndex; // 0x1154 ParticleIndex_t m_nFXIndex; // 0x1158 Vector vCenter; // 0x115c }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Rattletrap_CogPush : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 Vector m_vDirection; // 0x113c float m_flEndTime; // 0x1148 float m_flCurTime; // 0x114c int32_t push_length; // 0x1150 float push_duration; // 0x1154 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Rattletrap_RocketFlare : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_vecEnemyHeroesInFog; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Clockwerk_RocketFlare_Thinker : public CDOTA_Buff { public: float radius; // 0x1138 float duration; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Rattletrap_RocketFlare : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Rattletrap_RocketFlare_Overclock : public CDOTA_Buff { public: float rocket_flare_interval; // 0x1138 int32_t rocket_flare_offset_pct; // 0x113c int32_t rocket_flare_rockets; // 0x1140 int32_t m_nRocketsFired; // 0x1144 int32_t radius; // 0x1148 Vector m_vOriginalTarget; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rattletrap_JetPack : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x11b0 class CDOTA_Modifier_Rattletrap_JetPack : public CDOTA_Buff { public: int32_t bonus_speed; // 0x1138 float turn_rate; // 0x113c GameTime_t m_flStartTime; // 0x1140 float tick_interval; // 0x1144 float m_flFacingTarget; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c CUtlVector< float32 > m_flTurnHistory; // 0x1150 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1168 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x1180 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x1198 }; // Alignment: 4 // Size: 0x570 class CDOTA_Ability_Rattletrap_Hookshot : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 Vector m_vProjectileVelocity; // 0x554 bool m_bRetract; // 0x560 private: [[maybe_unused]] uint8_t __pad0561[0xb]; // 0x561 public: CHandle< CBaseEntity > m_hSourceCaster; // 0x56c }; // Alignment: 7 // Size: 0x1178 class CDOTA_Modifier_Rattletrap_Hookshot : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hDamaged; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x1150 Vector m_vStartPosition; // 0x1154 private: [[maybe_unused]] uint8_t __pad1160[0x8]; // 0x1160 public: int32_t speed; // 0x1168 float stun_radius; // 0x116c float damage; // 0x1170 float duration; // 0x1174 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furion_Greater_Sprout : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Furion_Sprout : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 int32_t m_iShardCount; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_Sprout_Blind_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Furion_Sprout_Blind : public CDOTA_Buff { public: int32_t blind_pct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_Sprout_Tether_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_Sprout_Tether : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Furion_Sprout_Shard : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTree; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_Sprout_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_Sprout_Entangle : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Furion_Teleportation : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndexStart; // 0x550 ParticleIndex_t m_nFXIndexEnd; // 0x554 ParticleIndex_t m_nFXIndexEndTeam; // 0x558 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furion_ForceOfNature : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furion_WrathOfNature : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Furion_WrathOfNature_Thinker : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t max_targets; // 0x113c int32_t damage_percent_add; // 0x1140 float jump_delay; // 0x1144 int32_t m_iFixedDamage; // 0x1148 GameTime_t m_flLastTickTime; // 0x114c float m_flTimeAccumulator; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_hHitTargets; // 0x1158 int32_t m_nBaseDamage; // 0x1170 int32_t m_nMaxTargets; // 0x1174 float m_flJumpDelay; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_WrathOfNature_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_WrathOfNature_BuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Furion_WrathOfNature_Spawn : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Furion_CurseOfTheForest : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Furion_CurseOfTheForest : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage_per_tree; // 0x113c int32_t slow_per_tree; // 0x1140 int32_t m_nSlow; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Treant_Bonus : public CDOTA_Buff { public: int32_t treant_hp_bonus; // 0x1138 int32_t treant_damage_bonus; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Treant_Large_Bonus : public CDOTA_Buff { public: int32_t treant_large_hp_bonus; // 0x1138 int32_t treant_large_damage_bonus; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Furion : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Furion_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Furion_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Furion_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Furion_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Feast : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Feast : public CDOTA_Buff { public: float hp_leech_percent; // 0x1138 float hp_damage_percent; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Ghoul_Frenzy : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Ghoul_Frenzy : public CDOTA_Buff { public: int32_t attack_speed_bonus; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Ghoul_Frenzy_Slow : public CDOTA_Buff { public: int32_t miss_pct; // 0x1138 int32_t movement_slow; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Open_Wounds : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1170 class CDOTA_Modifier_Life_Stealer_Open_Wounds : public CDOTA_Buff { public: int32_t slow_steps[8]; // 0x1138 int32_t heal_percent; // 0x1158 int32_t m_nDamageTracker; // 0x115c int32_t damage_threshold; // 0x1160 int32_t spread_radius; // 0x1164 int32_t max_health_as_damage_pct; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Empty2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Empty3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Infest : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Life_Stealer_Infest : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nFXIndex; // 0x113c float self_regen; // 0x1140 int32_t m_nStartingHealth; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Infest_Effect : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_health; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Infest_Enemy_Hero : public CDOTA_Buff { public: float attack_rate_enemy; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Consume : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Control : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Infest_Creep : public CDOTA_Buff { public: bool m_bChangedTeams; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Life_Stealer_Assimilate : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hLastAssimilation; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Life_Stealer_Assimilate : public CDOTA_Buff { public: float order_lock_duration; // 0x1138 GameTime_t m_fOrderLockDone; // 0x113c int32_t m_nFXIndex; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Life_Stealer_Assimilate_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_AssimilateEject : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Life_Stealer_Rage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Life_Stealer_Rage : public CDOTA_Buff { public: int32_t movement_speed_bonus; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkSeer_Normal_Punch : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x12b0 class CDOTA_Modifier_DarkSeer_Normal_Punch : public CDOTA_Buff { public: Vector m_PositionIndex[30]; // 0x1138 ParticleIndex_t m_nNormalPunchBuffIndex; // 0x12a0 float m_flDistanceTraveled; // 0x12a4 bool m_bIsValidTarget; // 0x12a8 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_DarkSeer_Normal_Punch_Illusion_Thinker : public CDOTA_Buff { public: Vector m_vecIllusionSpawnPosition; // 0x1138 int32_t speed; // 0x1144 CHandle< CBaseEntity > m_hTarget; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_DarkSeer_Vacuum : public CDOTABaseAbility { public: Vector m_vPullLocation; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_Vacuum : public CDOTA_Buff { public: float pull_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkSeer_IonShell : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_IonShell : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage_per_second; // 0x113c float tick_interval; // 0x1140 int32_t bonus_health; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_IonShell_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkSeer_Surge : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_DarkSeer_Surge : public CDOTA_Buff { public: int32_t speed_boost; // 0x1138 int32_t trail_radius; // 0x113c float trail_duration; // 0x1140 Vector m_vLastTrailThinkerLocation; // 0x1144 bool m_bTrailStarted; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_Surge_Trail_Thinker : public CDOTA_Buff { public: int32_t trail_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_DarkSeer_Surge_Trail : public CDOTA_Buff { public: int32_t trail_move_slow; // 0x1138 int32_t trail_damage; // 0x113c float trail_damage_interval; // 0x1140 }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_DarkSeer_WallOfReplica : public CDOTABaseAbility { public: int32_t width; // 0x550 Vector m_vEndpoint; // 0x554 Vector m_vSlashDir; // 0x560 int32_t m_nDashProjectileID; // 0x56c Vector m_vDashProjectileLocation; // 0x570 }; // Alignment: 7 // Size: 0x11a0 class CDOTA_Modifier_DarkSeer_WallOfReplica : public CDOTA_Buff { public: Vector m_vWallDirection; // 0x1138 Vector m_vWallRight; // 0x1144 private: [[maybe_unused]] uint8_t __pad1150[0x18]; // 0x1150 public: CUtlMap< int32, GameTime_t > m_PreventReplicateTime; // 0x1168 int32_t width; // 0x1188 float slow_duration; // 0x118c int32_t replica_damage_incoming; // 0x1190 int32_t replica_damage_outgoing; // 0x1194 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_WallOfReplica_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_WallOfReplica_Illusion : public CDOTA_Buff { public: int32_t replica_scale; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_Normal_Punch_Illusion : public CDOTA_Buff { public: int32_t replica_scale; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkSeer_IonShell_IllusionInvulnerability : public CDOTA_Modifier_Invulnerable { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Clinkz_SearingArrows : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1160 class CDOTA_Modifier_Clinkz_SearingArrows : public CDOTA_Buff { public: int32_t damage_bonus; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 bool m_bBonusAttack; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_DeathPact_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Clinkz_Burning_Army : public CDOTABaseAbility { public: int32_t range; // 0x550 Vector m_vEndpoint; // 0x554 Vector m_vSlashDir; // 0x560 int32_t m_nDashProjectileID; // 0x56c Vector m_vDashProjectileLocation; // 0x570 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Clinkz_DeathPact : public CDOTABaseAbility { public: int32_t m_nDevourFirstSlot; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_DeathPact_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_DeathPact_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Clinkz_DeathPact : public CDOTA_Buff { public: int32_t health_gain_pct; // 0x1138 int32_t damage_gain_pct; // 0x113c float m_flHealthGained; // 0x1140 float m_flDamageGained; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_DeathPact_Permanent_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Clinkz_Scepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_Scepter : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Clinkz_Burning_Army_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 Vector m_vFacePosition; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Clinkz_Burning_Army : public CDOTA_Buff { public: float attack_rate; // 0x1138 int32_t damage_percent; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Clinkz_WindWalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Clinkz_WindWalk : public CDOTA_Modifier_Invisible { public: int32_t move_speed_bonus_pct; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Clinkz_Strafe : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Clinkz_Strafe : public CDOTA_Buff { public: int32_t attack_speed_bonus_pct; // 0x1138 }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Clinkz_PiercingArrow : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 int32_t m_iArrowProjectile; // 0x55c int32_t m_nFXIndex; // 0x560 float arrow_speed; // 0x564 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clinkz_PiercingArrow_DamageReduction : public CDOTA_Buff { public: // no members available }; // Alignment: 13 // Size: 0x1178 class CDOTA_Modifier_Clinkz_PiercingArrow : public CDOTA_Buff { public: int32_t m_iArrowCount; // 0x1138 Vector m_vOriginalTarget; // 0x113c int32_t arrow_width; // 0x1148 float arrow_speed; // 0x114c float arrow_range_multiplier; // 0x1150 int32_t wave_count; // 0x1154 int32_t arrow_count_per_wave; // 0x1158 int32_t arrow_angle; // 0x115c int32_t m_iLoopCount; // 0x1160 float m_flInterval; // 0x1164 float m_flCycleDelay; // 0x1168 float m_flTimeWaste; // 0x116c GameTime_t m_flExpectedTime; // 0x1170 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Clinkz_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Clinkz_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Omniknight_Hammer_Of_Purity : public CDOTABaseAbility { public: int32_t base_damage; // 0x550 float duration; // 0x554 int32_t bonus_damage; // 0x558 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Omniknight_Hammer_Of_Purity_Bomb : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Angelic_Flight : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Omniknight_Angelic_Flight : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t hp_regen; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Purification : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Pacify : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Omniknight_Pacify : public CDOTA_Buff { public: int32_t spell_resistance_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Repel : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Omniknight_Repel : public CDOTA_Buff { public: int32_t status_resistance; // 0x1138 float hp_regen; // 0x113c int32_t bonus_str; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Degen_Aura : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Omniknight_Degen_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Omniknight_Degen_Aura_Effect : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_Martyr : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Omniknight_Marty : public CDOTA_Buff { public: int32_t base_strength; // 0x1138 int32_t base_hpregen; // 0x113c int32_t strength_bonus; // 0x1140 int32_t nDebuffAmount; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Omniknight_GuardianAngel : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Omniknight_GuardianAngel : public CDOTA_Buff { public: int32_t scepter_status_resist; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Enchantress_Little_Friends : public CDOTABaseAbility { public: float duration; // 0x550 int32_t radius; // 0x554 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Enchantress_Little_Friends_Kill_Credit : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Enchantress_Little_Friends_Aura : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nAlliesTaunted; // 0x113c bool m_bRelicTriggered; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t radius; // 0x1144 int32_t damage_amplification; // 0x1148 int32_t damage_reduction; // 0x114c GameTime_t m_flLastSeen; // 0x1150 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Enchantress_Little_Friends : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 CHandle< CBaseEntity > m_hDesiredTarget; // 0x113c int32_t damage_reduction; // 0x1140 int32_t bonus_attack_speed; // 0x1144 int32_t bonus_move_speed; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enchantress_Bunny_Hop : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Enchantress_Bunny_Hop : public CDOTA_Buff { public: float hop_duration; // 0x1138 int32_t hop_height; // 0x113c int32_t hop_distance; // 0x1140 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 float m_flJumpDuration; // 0x114c float m_flJumpHeight; // 0x1150 Vector m_vTargetHorizontalDirection; // 0x1154 CUtlVector< CHandle< CBaseEntity > > hUnitsToHit; // 0x1160 bool m_bLaunched; // 0x1178 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enchantress_Untouchable : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Enchantress_Untouchable : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Enchantress_Untouchable_Slow : public CDOTA_Buff { public: int32_t slow_attack_speed; // 0x1138 ParticleIndex_t m_nStatusFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enchantress_Enchant : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Enchantress_Enchant : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Enchantress_Enchant_Controlled : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t enchant_health; // 0x113c int32_t enchant_armor; // 0x1140 int32_t enchant_damage; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Enchantress_Enchant_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enchantress_NaturesAttendants : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Enchantress_NaturesAttendants_Shard : public CDOTA_Buff { public: float heal_interval; // 0x1138 float heal; // 0x113c int32_t radius; // 0x1140 int32_t shard_permanent_wisp_count; // 0x1144 bool m_bActive; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: ParticleIndex_t m_nWispFXIndex; // 0x114c }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Enchantress_NaturesAttendants : public CDOTA_Buff { public: float heal_interval; // 0x1138 float heal; // 0x113c int32_t radius; // 0x1140 int32_t wisp_count; // 0x1144 int32_t movespeed; // 0x1148 ParticleIndex_t m_nWispFXIndex; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Enchantress_Impetus : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Enchantress_Impetus : public CDOTA_Buff { public: float distance_damage_pct; // 0x1138 int32_t distance_cap; // 0x113c float creep_multiplier; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Huskar_Inner_Fire : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Huskar_Inner_Fire_Knockback : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float knockback_distance; // 0x114c float knockback_duration; // 0x1150 float effective_distance; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Huskar_Inner_Fire_Disarm : public CDOTA_Buff { public: int32_t movement_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Huskar_Inner_Vitality : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Huskar_Inner_Vitality : public CDOTA_Buff { public: int32_t heal; // 0x1138 float attrib_bonus; // 0x113c float hurt_attrib_bonus; // 0x1140 float hurt_percent; // 0x1144 }; // Alignment: 3 // Size: 0x1160 class CDOTA_Modifier_Huskar_Burning_Spear_Self : public CDOTA_Buff { public: int32_t health_cost; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 float duration; // 0x1158 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Huskar_Burning_Spear : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Huskar_Burning_Spear_Counter : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Huskar_Burning_Spear_Debuff : public CDOTA_Buff { public: int32_t burn_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Huskar_Berserkers_Blood : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Huskar_Berserkers_Blood : public CDOTA_Buff { public: int32_t maximum_health_regen; // 0x1138 int32_t maximum_attack_speed; // 0x113c int32_t maximum_magic_resist; // 0x1140 int32_t hp_threshold_max; // 0x1144 }; // Alignment: 3 // Size: 0x578 class CDOTA_Ability_Huskar_Life_Break : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 CHandle< CBaseEntity > m_hTarget; // 0x56c bool m_bInterrupted; // 0x570 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Huskar_Life_Break_Taunt : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 bool m_bDidSetAttackTarget; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Huskar_Life_Break_Charge : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Huskar_Life_Break : public CDOTA_Modifier_MoveSpeed_Percentage { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NightStalker_Void : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_NightStalker_Void : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NightStalker_CripplingFear : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_NightStalker_CripplingFear_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_NightStalker_CripplingFear : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NightStalker_HunterInTheNight : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_NightStalker_HunterInTheNight : public CDOTA_Buff { public: int32_t bonus_movement_speed_pct_night; // 0x1138 int32_t bonus_attack_speed_night; // 0x113c int32_t bonus_status_resist_night; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 bool m_bIsDay; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NightStalker_Darkness : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_NightStalker_Darkness : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t status_resistance; // 0x113c int32_t hp_regen; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 bool m_bIsDay; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_SpawnSpiderlings : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpawnSpiderlings : public CDOTA_Buff { public: float spiderling_duration; // 0x1138 int32_t count; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpawnSpiderlingsShard : public CDOTA_Buff { public: float shard_spiderling_duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_Spider_HP : public CDOTA_Buff { public: int32_t hp_bonus; // 0x1138 int32_t damage_bonus; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_SpawnSpiderite : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpawnSpiderite : public CDOTA_Buff { public: float buff_duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpawnSpideriteDebuff : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hParentSpider; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_PoisonSting : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_PoisonSting : public CDOTA_Buff { public: float duration; // 0x1138 float duration_hero; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_PoisonStingDebuff : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 int32_t movement_speed; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Broodmother_SpinWeb_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Broodmother_SpinWeb : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hWebs; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpinWeb_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Broodmother_SpinWebInvisibleApplier : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Broodmother_SpinWeb_Slowed : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Broodmother_SpinWeb : public CDOTA_Buff { public: int32_t heath_regen; // 0x1138 int32_t bonus_movespeed; // 0x113c int32_t bonus_movespeed_scepter; // 0x1140 float bonus_turn_rate; // 0x1144 float flLastDamageTime; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Broodmother_SpinWeb_NoTreeWalking : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_SpinWeb_Destroy : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_IncapacitatingBite : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Broodmother_IncapacitatingBite : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_IncapacitatingBiteOrb : public CDOTA_Buff { public: int32_t miss_chance; // 0x1138 int32_t bonus_movespeed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Broodmother_InsatiableHunger : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Broodmother_InsatiableHunger : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t lifesteal_pct; // 0x113c float slow_duration; // 0x1140 float bat_bonus; // 0x1144 float shard_damage_tick_interval; // 0x1148 int32_t damage_tick_count; // 0x114c int32_t shard_damage_per_tick; // 0x1150 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Broodmother_Silken_Bola : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Broodmother_Silken_Bola : public CDOTA_Buff { public: int32_t attack_damage; // 0x1138 int32_t movement_speed; // 0x113c int32_t miss_chance; // 0x1140 int32_t shard_miss_chance; // 0x1144 }; // Alignment: 5 // Size: 0x598 class CDOTA_Ability_Broodmother_StickySnare : public CDOTABaseAbility { public: Vector m_vEndpoint; // 0x550 float duration; // 0x55c int32_t width; // 0x560 bool m_bStolenSnareCheck; // 0x564 private: [[maybe_unused]] uint8_t __pad0565[0x1b]; // 0x565 public: CUtlVector< CHandle< CBaseEntity > > m_vecSnares; // 0x580 }; // Alignment: 14 // Size: 0x11a0 class CDOTA_Modifier_Broodmother_StickySnare : public CDOTA_Buff { public: Vector m_vOrigin; // 0x1138 Vector m_vWallDirection; // 0x1144 Vector m_vWallRight; // 0x1150 int32_t width; // 0x115c float root_duration; // 0x1160 float formation_delay; // 0x1164 bool m_bTouching; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0x3]; // 0x1169 public: CHandle< CBaseEntity > m_hRight; // 0x116c bool m_bParticle; // 0x1170 private: [[maybe_unused]] uint8_t __pad1171[0x3]; // 0x1171 public: GameTime_t m_flStartingTime; // 0x1174 int32_t m_nFoWID; // 0x1178 int32_t m_nTeamID; // 0x117c CUtlVector< CHandle< CBaseEntity > > m_vecAffectedHeroes; // 0x1180 ParticleIndex_t m_nWarmupFXIndex; // 0x1198 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Broodmother_StickySnare_Root : public CDOTA_Buff { public: float damage_per_second; // 0x1138 bool m_bFirstSecond; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Broodmother_Tough : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_BountyHunter_Track : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 int32_t m_nParentGold; // 0x113c int32_t target_crit_multiplier; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_BountyHunter_ShurikenToss : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 CHandle< CBaseEntity > m_hSourceCaster; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BountyHunter_Jinada : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_BountyHunter_Jinada : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t gold_steal; // 0x113c ParticleIndex_t m_nFXIndexA; // 0x1140 ParticleIndex_t m_nFXIndexB; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BountyHunter_WindWalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1168 class CDOTA_Modifier_BountyHunter_WindWalk : public CDOTA_Modifier_Invisible { public: int32_t shard_damage_reduction_pct; // 0x1148 float shard_stun_duration; // 0x114c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_BountyHunter_WindWalk_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t attack_slow; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_BountyHunter_Track : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTrap; // 0x550 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_BountyHunter_Track_Bear_Trap : public CDOTA_Modifier_Invisible { public: bool m_bActivated; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BountyHunter_TrackEffect : public CDOTA_Buff { public: int32_t bonus_move_speed_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_BountyHunter_Lookout : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_BountyHunter_Lookout : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Weaver_TheSwarm : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Weaver_Swarm : public CDOTA_Buff { public: int32_t m_iMaxDist; // 0x1138 int32_t m_iAttackCount; // 0x113c int32_t destroy_attacks; // 0x1140 Vector m_vDirection; // 0x1144 Vector m_vStartLoc; // 0x1150 CHandle< CBaseEntity > m_hAttachTarget; // 0x115c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Weaver_Swarm_Debuff : public CDOTA_Buff { public: float armor_reduction; // 0x1138 int32_t damage; // 0x113c float m_flCurrentArmorReduction; // 0x1140 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Weaver_Shukuchi : public CDOTABaseAbility { public: float duration; // 0x550 int32_t radius; // 0x554 int32_t damage; // 0x558 float fade_time; // 0x55c }; // Alignment: 5 // Size: 0x1170 class CDOTA_Modifier_Weaver_Shukuchi : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 int32_t damage; // 0x114c int32_t speed; // 0x1150 float geminate_attack_mark_duration; // 0x1154 CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Weaver_Shukuchi_GeminateAttackMark : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Weaver_GeminateAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Weaver_GeminateAttack : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_iAttacksRemaining; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Weaver_GeminateAttack_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Weaver_TimeLapse : public CDOTABaseAbility { public: int32_t m_nNPCSpawnedID; // 0x560 }; // Alignment: 4 // Size: 0x1218 class CDOTA_Modifier_Weaver_TimeLapse : public CDOTA_Buff { public: Vector m_PositionIndex[11]; // 0x1138 float m_flLife[11]; // 0x11bc float m_flMana[11]; // 0x11e8 bool m_bHasValidHistory; // 0x1214 }; // Alignment: 2 // Size: 0x578 class CDOTA_Ability_Jakiro_DualBreath : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hHitHeroes; // 0x550 bool m_bGrantedGem; // 0x568 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Jakiro_DualBreath_Thinker : public CDOTA_Buff { public: int32_t start_radius; // 0x1138 int32_t end_radius; // 0x113c GameTime_t m_fStartTime; // 0x1140 float m_fTotalTime; // 0x1144 Vector m_vCastPosition; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Jakiro_DualBreath_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed_pct; // 0x1138 int32_t slow_attack_speed_pct; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Jakiro_DualBreath_Burn : public CDOTA_Buff { public: bool m_bFirst; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t burn_damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jakiro_IcePath : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jakiro_IcePath_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 9 // Size: 0x1190 class CDOTA_Modifier_Jakiro_IcePath_Thinker : public CDOTA_Buff { public: float path_delay; // 0x1138 int32_t path_radius; // 0x113c int32_t m_nDamage; // 0x1140 float m_flRadius; // 0x1144 float stun_duration; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< CHandle< CBaseEntity > > m_hUnitsHit; // 0x1150 Vector m_vPathStart; // 0x1168 Vector m_vPathEnd; // 0x1174 GameTime_t m_fStartTime; // 0x1180 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jakiro_Liquid_Ice : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Jakiro_LiquidIce : public CDOTA_Buff { public: float duration; // 0x1138 float stun_duration; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 int32_t radius; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x115c bool m_bForceProc; // 0x1160 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Jakiro_LiquidIce_Debuff : public CDOTA_Buff { public: int32_t base_damage; // 0x1138 float pct_health_damage; // 0x113c int32_t movement_slow; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jakiro_Liquid_Fire : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_Jakiro_LiquidFire : public CDOTA_Buff { public: float duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 int32_t radius; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x115c bool m_bForceProc; // 0x1160 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Jakiro_LiquidFire_Burn : public CDOTA_Buff { public: int32_t slow_attack_speed_pct; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Jakiro_Macropyre : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Jakiro_Macropyre_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 float burn_interval; // 0x1144 int32_t path_radius; // 0x1148 int32_t cast_range; // 0x114c float linger_duration; // 0x1150 bool m_bTestedGem; // 0x1154 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Jakiro_Macropyre_Burn : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_scepter; // 0x113c float burn_interval; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Jakiro_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Batrider_StickyNapalm_Application_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Batrider_StickyNapalm : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Batrider_StickyNapalm_Application : public CDOTA_Buff { public: bool m_bShouldApply; // 0x1138 }; // Alignment: 6 // Size: 0x1170 class CDOTA_Modifier_Batrider_StickyNapalm : public CDOTA_Modifier_Stacking_Base { public: int32_t movement_speed_pct; // 0x1158 int32_t turn_rate_pct; // 0x115c int32_t damage; // 0x1160 int32_t application_damage; // 0x1164 ParticleIndex_t m_nFXIndex; // 0x1168 ParticleIndex_t m_nFXStackIndex; // 0x116c }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Batrider_Flamebreak : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Ability_Batrider_Flamebreak_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Batrider_Flamebreak_Damage : public CDOTA_Buff { public: int32_t damage_impact; // 0x1138 int32_t damage_per_second; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Batrider_Firefly : public CDOTABaseAbility { public: // no members available }; // Alignment: 12 // Size: 0x1188 class CDOTA_Modifier_Batrider_Firefly : public CDOTA_Buff { public: bool m_bActive; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t radius; // 0x113c int32_t m_ifirefly_Active; // 0x1140 int32_t tree_radius; // 0x1144 int32_t damage_per_second; // 0x1148 int32_t movement_speed; // 0x114c float tick_interval; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x1154 ParticleIndex_t m_nFXIndexB; // 0x1158 GameTime_t m_fNextDamageTick; // 0x115c Vector m_vLastFirePoolLoc; // 0x1160 int32_t bonus_vision; // 0x116c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Batrider_FlamingLasso : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Batrider_FlamingLasso : public CDOTA_Buff { public: int32_t drag_distance; // 0x1138 int32_t break_distance; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 Vector vPreviousLocation; // 0x1144 CHandle< CDOTA_BaseNPC > m_hAnchor; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Batrider_FlamingLasso_Self : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Batrider_FlamingLasso_Damage : public CDOTA_Buff { public: int32_t max_ticks; // 0x1138 float damage; // 0x113c float duration; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Batrider_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_Penitence : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Chen_Penitence : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_damage_taken; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Chen_Penitence_Attack_Speed_Buff : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_TestOfFaith : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_DivineFavor : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Chen_Divine_Favor_Teleport : public CDOTA_Buff { public: float teleport_delay; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Chen_DivineFavor_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Chen_DivineFavor : public CDOTA_Buff { public: int32_t armor; // 0x1138 float heal_rate; // 0x113c int32_t creep_bonus; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_TestOfFaithTeleport : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Chen_HolyPersuasion : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hDominatedUnits; // 0x550 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Chen_HolyPersuasion : public CDOTA_Buff { public: int32_t health_min; // 0x1138 int32_t new_max; // 0x113c int32_t health_bonus; // 0x1140 int32_t damage_bonus; // 0x1144 int32_t movement_speed_bonus; // 0x1148 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Chen_TestOfFaith_Teleport : public CDOTA_Buff { public: bool bToChen; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_HandOfGod : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Chen_HandOfGod_Hot : public CDOTA_Buff { public: int32_t heal_per_second; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Chen_Martyrdom : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chen_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Spectre_Arcana : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spectre_Desolate : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spectre_Desolate : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 7 // Size: 0x1180 class CDOTA_Modifier_Spectre_SpectralDaggerPath : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hUnitsInPath; // 0x1150 int32_t path_radius; // 0x1168 int32_t vision_radius; // 0x116c int32_t dagger_radius; // 0x1170 float buff_persistence; // 0x1174 float dagger_grace_period; // 0x1178 float dagger_path_duration; // 0x117c }; // Alignment: 9 // Size: 0x5a8 class CDOTA_Ability_Spectre_SpectralDagger : public CDOTABaseAbility { public: float dagger_path_duration; // 0x550 float hero_path_duration; // 0x554 float m_fCreateInterval; // 0x558 GameTime_t m_fLastCreate; // 0x55c Vector m_vecLastPosition; // 0x560 bool m_bIsTrackingProjectile; // 0x56c private: [[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d public: CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x570 CUtlVector< CHandle< CBaseEntity > > m_hUnitsHit; // 0x588 CHandle< CBaseEntity > m_hTrackingTarget; // 0x5a0 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Spectre_SpectralDagger : public CDOTA_Buff { public: int32_t path_radius; // 0x1138 float hero_path_duration; // 0x113c Vector m_vLastPosition; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spectre_SpectralDaggerInPath : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 CHandle< CBaseEntity > m_hTrackingTarget; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spectre_SpectralDaggerPathPhased : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spectre_SpectralDaggerPath_ActivityModifierOnly : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Spectre_Desolate_Blind : public CDOTA_Buff { public: int32_t blind_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spectre_Dispersion : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Spectre_Dispersion : public CDOTA_Buff { public: int32_t damage_reflection_pct; // 0x1138 int32_t min_radius; // 0x113c int32_t max_radius; // 0x1140 int32_t shard_dagger_damage; // 0x1144 float shard_dagger_cooldown; // 0x1148 GameTime_t m_flLastDispersionPulseEffectTime; // 0x114c float m_fDamageCounter; // 0x1150 float m_fLastTime; // 0x1154 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spectre_Dispersion_Memory : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spectre_Haunt : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spectre_Haunt_Single : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spectre_Haunt : public CDOTA_Buff { public: GameTime_t m_fStartAttackTime; // 0x1138 CHandle< CBaseEntity > hTarget; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Spectre_Reality : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spectre_Spectral_Dagger_Illusions : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Spectre_Arcana_Kill_Effect : public CDOTA_Buff { public: ParticleIndex_t m_nCasterFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_DoomBringer_Devour : public CDOTABaseAbility { public: int32_t m_nDevourFirstSlot; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoomBringer_Devour_Hero_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DoomBringer_Devour : public CDOTA_Buff { public: int32_t armor; // 0x1138 int32_t magic_resist; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoomBringer_Devour_Hero_Ability : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DoomBringer_ScorchedEarth : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoomBringer_ScorchedEarth_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DoomBringer_ScorchedEarthEffect : public CDOTA_Buff { public: int32_t bonus_movement_speed_pct; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_DoomBringer_ScorchedEarthEffectAura : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 int32_t bonus_movement_speed_pct; // 0x113c int32_t radius; // 0x1140 int32_t damage_per_hero; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DoomBringer_InfernalBlade : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_DoomBringer_InfernalBlade : public CDOTA_Buff { public: bool m_bInfernalBladeAttack; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: ParticleIndex_t m_nFXIndex; // 0x113c float burn_duration; // 0x1140 float ministun_duration; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DoomBringer_InfernalBlade_Burn : public CDOTA_Buff { public: int32_t burn_damage; // 0x1138 float burn_damage_pct; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DoomBringer_Doom : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DoomBringer_Doom_Aura_Self : public CDOTA_Buff { public: int32_t scepter_aura_radius; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_DoomBringer_Doom_Aura_Enemy : public CDOTA_Buff { public: int32_t scepter_aura_radius; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_DoomBringer_Doom : public CDOTA_Buff { public: int32_t damage; // 0x1138 float duration; // 0x113c int32_t deniable_pct; // 0x1140 float flElapsedTime; // 0x1144 int32_t damage_amp; // 0x1148 bool m_bDoesBreak; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoomBringer_Doom_Break : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DoomBringer_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DoomBringer_Empty2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x5c8 class CDOTA_Ability_SpiritBreaker_ChargeOfDarkness : public CDOTABaseAbility { public: bool m_bFinished; // 0x560 bool m_bPlayedChargeAnimation; // 0x561 private: [[maybe_unused]] uint8_t __pad0562[0x2]; // 0x562 public: Vector m_vProjectileLocation; // 0x564 Vector m_vTargetLocation; // 0x570 CHandle< CBaseEntity > m_hTarget; // 0x57c CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x580 CUtlVector< CDOTA_Tree* > m_hTrackingProjectileTrees; // 0x598 int32_t nFXIndex; // 0x5b0 int32_t m_iCurProjectileIndex; // 0x5b4 Vector m_vChargeStartPos; // 0x5b8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SpiritBreaker_GreaterBash : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_SpiritBreaker_GreaterBash : public CDOTA_Buff { public: int32_t chance_pct; // 0x1138 float damage; // 0x113c float movespeed_duration; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_SpiritBreaker_GreaterBash_Break : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_GreaterBash_Speed : public CDOTA_Buff { public: int32_t bonus_movespeed_pct; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_ChargeOfDarkness : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_ChargeOfDarknessTarget : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 CEntityIndex m_iChargeTargetEntityIndex; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_ChargeOfDarknessVision : public CDOTA_Buff { public: int32_t m_nFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_SpecialAttack : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SpiritBreaker_Bulldoze : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_Bulldoze : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t status_resistance; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SpiritBreaker_EmpoweringHaste : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_EmpoweringHasteAura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_SpiritBreaker_EmpoweringHaste : public CDOTA_Buff { public: int32_t bonus_movespeed_pct_self; // 0x1138 int32_t bonus_movespeed_pct_allies; // 0x113c int32_t bonus_movespeed_pct_extra; // 0x1140 int32_t duration; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SpiritBreaker_NetherStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_NetherStrike_Vision : public CDOTA_Buff { public: int32_t invis_threshold_pct; // 0x1138 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_SpiritBreaker_NetherStrike : public CDOTA_Buff { public: int32_t damage; // 0x1138 bool m_bStrikeLanded; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: Vector m_vCastLocation; // 0x1140 CHandle< CBaseEntity > m_hTarget; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_SpiritBreaker_PlanarPocket : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_SpiritBreaker_PlanarPocketAura : public CDOTA_Buff { public: bool m_bHasActivated; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t radius; // 0x113c int32_t magic_resistance; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_SpiritBreaker_PlanarPocket : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hRedirectAbility; // 0x1138 GameTick_t nRedirectTick; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Gyrocopter_Rocket_Barrage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Gyrocopter_Rocket_Barrage : public CDOTA_Buff { public: int32_t rocket_damage; // 0x1138 int32_t bonus_movement_speed; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Gyrocopter_HomingMissile_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Gyrocopter_Homing_Missile : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 17 // Size: 0x11b8 class CDOTA_Modifier_Gyrocopter_Homing_Missile : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nFXIndex2; // 0x113c int32_t hero_damage; // 0x1140 int32_t acceleration; // 0x1144 int32_t min_damage; // 0x1148 int32_t max_distance; // 0x114c int32_t shard_radius; // 0x1150 float shard_delay; // 0x1154 float pre_flight_time; // 0x1158 float stun_duration; // 0x115c int32_t m_nMissileDamage; // 0x1160 int32_t m_nTeamNumber; // 0x1164 private: [[maybe_unused]] uint8_t __pad1168[0x8]; // 0x1168 public: float speed; // 0x1170 CHandle< CBaseEntity > m_hAttachTarget; // 0x1174 Vector m_vStartPosition; // 0x1178 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: CountdownTimer m_EnemyVision; // 0x1188 CountdownTimer m_MoveTime; // 0x11a0 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Gyrocopter_Homing_Rocket_Barrage : public CDOTA_Buff { public: int32_t rocket_damage; // 0x1138 int32_t shard_radius; // 0x113c CHandle< CBaseEntity > m_hTarget; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Gyrocopter_Flak_Cannon : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Gyrocopter_Flak_Cannon : public CDOTA_Buff { public: int32_t max_attacks; // 0x1138 int32_t bonus_damage; // 0x113c int32_t m_iNumAttacks; // 0x1140 int32_t projectile_speed; // 0x1144 int32_t radius; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Gyrocopter_Flak_Cannon_Scepter : public CDOTA_Buff { public: float fire_rate; // 0x1138 int32_t scepter_radius; // 0x113c int32_t m_iAttackRecord; // 0x1140 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Gyrocopter_Call_Down : public CDOTABaseAbility { public: Vector m_vEndpoint; // 0x550 int32_t range_scepter; // 0x55c }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_Gyrocopter_Call_Down : public CDOTA_Buff { public: int32_t slow_duration_first; // 0x1138 int32_t slow_duration_second; // 0x113c int32_t damage_first; // 0x1140 int32_t damage_second; // 0x1144 int32_t damage_second_scepter; // 0x1148 int32_t radius; // 0x114c float slow_first; // 0x1150 float slow_second; // 0x1154 bool m_bFirstStrike; // 0x1158 bool m_bDelayed; // 0x1159 bool m_bHalfDamage; // 0x115a private: [[maybe_unused]] uint8_t __pad115b[0x5]; // 0x115b public: CUtlVector< CHandle< CBaseEntity > > m_vecHitHeroes; // 0x1160 bool m_bHitInvisibleHeroes; // 0x1178 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Gyrocopter_Call_Down_Slow : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Alchemist_AcidSpray : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Alchemist_AcidSpray_Thinker : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t armor_allies; // 0x113c int32_t radius; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Alchemist_AcidSpray : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Alchemist_UnstableConcoction : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Alchemist_UnstableConcoctionThrow : public CDOTABaseAbility { public: float m_fCookTime; // 0x550 Vector m_vProjectileLoc; // 0x554 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Alchemist_UnstableConcoction : public CDOTA_Buff { public: float brew_time; // 0x1138 float brew_explosion; // 0x113c GameTime_t m_fStartTime; // 0x1140 GameTime_t m_fLastAlertTime; // 0x1144 ParticleIndex_t m_nConcoctionFXIndex; // 0x1148 bool m_bHasStunned; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: int32_t damage_resistance; // 0x1150 int32_t move_speed; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Alchemist_GoblinsGreed : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Alchemist_GoblinsGreed : public CDOTA_Buff { public: CUtlVector< GameTime_t > m_DeathList; // 0x1138 float damage; // 0x1150 float duration; // 0x1154 int32_t bonus_gold; // 0x1158 int32_t bonus_bonus_gold; // 0x115c int32_t bonus_gold_cap; // 0x1160 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Alchemist_ChemicalRage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Alchemist_ChemicalRageTransform : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Alchemist_ChemicalRage : public CDOTA_Buff { public: float base_attack_time; // 0x1138 int32_t bonus_health; // 0x113c int32_t bonus_health_regen; // 0x1140 float bonus_mana_regen; // 0x1144 int32_t bonus_movespeed; // 0x1148 ParticleIndex_t m_nFXAlchemistCRIndex; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Alchemist_Scepter_Bonus_Damage : public CDOTA_Buff { public: int32_t scepter_bonus_damage; // 0x1138 int32_t scepter_spell_amp; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Alchemist_Berserk_Potion : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Alchemist_Berserk_Potion : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t hp_regen; // 0x113c int32_t move_speed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_AttributeBonus : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Invoker_InvokedBase : public CDOTABaseAbility { public: // MNetworkEnable int32_t m_nQuasLevel; // 0x550 // MNetworkEnable int32_t m_nWexLevel; // 0x554 // MNetworkEnable int32_t m_nExortLevel; // 0x558 }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_ColdSnap : public CDOTA_Ability_Invoker_InvokedBase { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Invoker_ColdSnap : public CDOTA_Buff { public: float freeze_damage; // 0x1138 float freeze_duration; // 0x113c float freeze_cooldown; // 0x1140 float damage_trigger; // 0x1144 CountdownTimer m_freezeCooldownTimer; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Invoker_ColdSnap_Freeze : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_GhostWalk : public CDOTA_Ability_Invoker_InvokedBase { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Invoker_GhostWalk_Self : public CDOTA_Modifier_Invisible { public: int32_t self_slow; // 0x1148 int32_t area_of_effect; // 0x114c float aura_fade_time; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_GhostWalk_Enemy : public CDOTA_Buff { public: int32_t enemy_slow; // 0x1138 }; // Alignment: 6 // Size: 0x580 class CDOTA_Ability_Invoker_Tornado : public CDOTA_Ability_Invoker_InvokedBase { public: int32_t vision_distance; // 0x560 float end_vision_duration; // 0x564 float lift_duration; // 0x568 float base_damage; // 0x56c float quas_damage; // 0x570 float wex_damage; // 0x574 }; // Alignment: 1 // Size: 0x1158 class CDOTA_Modifier_Invoker_Tornado : public CDOTA_Modifier_Cyclone { public: float m_flLandDamage; // 0x1150 }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_EMP : public CDOTA_Ability_Invoker_InvokedBase { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Invoker_EMP : public CDOTA_Buff { public: int32_t area_of_effect; // 0x1138 int32_t mana_burned; // 0x113c float damage_per_mana; // 0x1140 }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_Alacrity : public CDOTA_Ability_Invoker_InvokedBase { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Invoker_Alacrity : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 7 // Size: 0x588 class CDOTA_Ability_Invoker_ChaosMeteor : public CDOTA_Ability_Invoker_InvokedBase { public: int32_t area_of_effect; // 0x560 float damage_interval; // 0x564 int32_t vision_distance; // 0x568 float end_vision_duration; // 0x56c float main_damage; // 0x570 float burn_duration; // 0x574 float burn_dps; // 0x578 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Invoker_ChaosMeteor_Land : public CDOTA_Buff { public: Vector m_vDir; // 0x1138 int32_t travel_speed; // 0x1144 int32_t travel_distance; // 0x1148 int32_t vision_distance; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_ChaosMeteor_Burn : public CDOTA_Buff { public: float m_flDamagePerSecond; // 0x1138 }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_SunStrike : public CDOTA_Ability_Invoker_InvokedBase { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_SunStrike_Cataclysm_Thinker : public CDOTA_Buff { public: float damage; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Invoker_SunStrike : public CDOTA_Buff { public: int32_t area_of_effect; // 0x1138 float damage; // 0x113c int32_t vision_distance; // 0x1140 float vision_duration; // 0x1144 }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Invoker_SunStrike_Cataclysm : public CDOTA_Buff { public: int32_t area_of_effect; // 0x1138 float damage; // 0x113c int32_t vision_distance; // 0x1140 float vision_duration; // 0x1144 Vector m_vSoundPos; // 0x1148 bool m_bPlaySound; // 0x1154 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Invoker_ForgeSpirit : public CDOTA_Ability_Invoker_InvokedBase { public: CHandle< CBaseEntity > m_Spirits[2]; // 0x560 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_ForgedSpirit_Stats : public CDOTA_Buff { public: int32_t level; // 0x1138 int32_t armor; // 0x113c int32_t mana; // 0x1140 float attack_range; // 0x1144 float armor_per_attack; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ForgedSpirit_MeltingStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ForgedSpirit_MeltingStrike : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_MeltingStrike_Debuff : public CDOTA_Buff { public: float armor_removed; // 0x1138 int32_t m_nMaxStacks; // 0x113c }; // Alignment: 2 // Size: 0x578 class CDOTA_Ability_Invoker_IceWall : public CDOTA_Ability_Invoker_InvokedBase { public: Vector m_vStartPosition; // 0x560 Vector m_vEndPosition; // 0x56c }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Invoker_IceWall_Thinker : public CDOTA_Buff { public: float damage_per_second; // 0x1138 int32_t num_wall_elements; // 0x113c int32_t wall_element_spacing; // 0x1140 int32_t wall_element_radius; // 0x1144 Vector m_vWallDir; // 0x1148 bool m_bGrantedGem; // 0x1154 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Invoker_IceWall_SlowAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t slow; // 0x113c float slow_duration; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_IceWall_SlowDebuff : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 6 // Size: 0x590 class CDOTA_Ability_Invoker_DeafeningBlast : public CDOTA_Ability_Invoker_InvokedBase { public: float end_vision_duration; // 0x560 float damage; // 0x564 float knockback_duration; // 0x568 float disarm_duration; // 0x56c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x570 bool m_bGrantedGem; // 0x588 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Invoker_DeafeningBlast_Knockback : public CDOTA_Buff { public: float disarm_duration; // 0x1138 Vector m_vPushDir; // 0x113c GameTime_t m_flStartTime; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Invoker_DeafeningBlast_Disarm : public CDOTA_Modifier_Disarmed { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Invoker_Instance : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x5b0 class CDOTA_Ability_Invoker_Invoke : public CDOTABaseAbility { public: int32_t max_invoked_spells; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CDOTA_Modifier_Invoker_Instance* m_instances[3]; // 0x558 int32_t m_nCurInstanceSlot; // 0x570 bool m_bInvokedAbilitiesInitialized; // 0x574 private: [[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575 public: CHandle< CBaseEntity > m_invokedAbilities[10]; // 0x578 Vector m_vecCurrentColor; // 0x5a0 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_QuasInstance : public CDOTA_Modifier_Invoker_Instance { public: char* m_pSlotName; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_WexInstance : public CDOTA_Modifier_Invoker_Instance { public: char* m_pSlotName; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Invoker_ExortInstance : public CDOTA_Modifier_Invoker_Instance { public: char* m_pSlotName; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_Quas : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_Wex : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_Exort : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Invoker_Empty2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Invoker_AttackVisuals : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_ColdSnap_AD : public CDOTA_Ability_Invoker_ColdSnap { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_GhostWalk_AD : public CDOTA_Ability_Invoker_GhostWalk { public: // no members available }; // Alignment: 0 // Size: 0x580 class CDOTA_Ability_Invoker_Tornado_AD : public CDOTA_Ability_Invoker_Tornado { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_EMP_AD : public CDOTA_Ability_Invoker_EMP { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_Alacrity_AD : public CDOTA_Ability_Invoker_Alacrity { public: // no members available }; // Alignment: 0 // Size: 0x560 class CDOTA_Ability_Invoker_SunStrike_AD : public CDOTA_Ability_Invoker_SunStrike { public: // no members available }; // Alignment: 0 // Size: 0x568 class CDOTA_Ability_Invoker_ForgeSpirit_AD : public CDOTA_Ability_Invoker_ForgeSpirit { public: // no members available }; // Alignment: 0 // Size: 0x588 class CDOTA_Ability_Invoker_ChaosMeteor_AD : public CDOTA_Ability_Invoker_ChaosMeteor { public: // no members available }; // Alignment: 0 // Size: 0x578 class CDOTA_Ability_Invoker_IceWall_AD : public CDOTA_Ability_Invoker_IceWall { public: // no members available }; // Alignment: 0 // Size: 0x590 class CDOTA_Ability_Invoker_DeafeningBlast_AD : public CDOTA_Ability_Invoker_DeafeningBlast { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Silencer_CurseOfTheSilent : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Silencer_CurseOfTheSilent : public CDOTA_Buff { public: int32_t damage; // 0x1138 ParticleIndex_t nFxIndex; // 0x113c int32_t penalty_duration; // 0x1140 float penalty_multiplier; // 0x1144 int32_t movespeed; // 0x1148 int32_t undispellable; // 0x114c }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_Silencer_GlaivesOfWisdom : public CDOTABaseAbility { public: int32_t m_iAttackIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< sGlaiveInfoSilencer > m_GlaiveInfo; // 0x558 }; // Alignment: 4 // Size: 0x1178 class CDOTA_Modifier_Silencer_GlaivesOfWisdom : public CDOTA_Buff { public: float intellect_damage_pct; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 CUtlVector< int16 > m_InFlightSilenceAttackRecords; // 0x1158 CDOTA_Buff* m_pAttackCounterBuff; // 0x1170 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silencer_GlaivesOfWisdom_AttackCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Silencer_GlaivesOfWisdom_Debuff : public CDOTA_Buff { public: int32_t int_steal; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silencer_GlaivesOfWisdom_DebuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Silencer_GlaivesOfWisdom_Buff : public CDOTA_Buff { public: int32_t int_steal; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silencer_GlaivesOfWisdom_BuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Silencer_LastWord : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Silencer_LastWord : public CDOTA_Buff { public: int32_t duration; // 0x1138 bool spellcast; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: int32_t damage; // 0x1140 float debuff_duration; // 0x1144 float int_multiplier; // 0x1148 int32_t scepter_bonus_damage; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silencer_LastWord_Disarm : public CDOTA_Modifier_Silence { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Silencer_GlobalSilence : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silencer_GlobalSilence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Obsidian_Destroyer_ArcaneOrb : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Obsidian_Destroyer_ArcaneOrb : public CDOTA_Buff { public: float mana_pool_damage_pct; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Obsidian_Destroyer_AstralImprisonment : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hImprisonedUnit; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Obsidian_Destroyer_AstralImprisonment_Prison : public CDOTA_Buff { public: int32_t allied_movement_speed_pct; // 0x1138 bool m_bAllowMovement; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Obsidian_Destroyer_EssenceAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Obsidian_Destroyer_EssenceAura : public CDOTA_Buff { public: int32_t bonus_mana; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Obsidian_Destroyer_EssenceAura_Effect : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t restore_chance; // 0x113c float restore_amount; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Obsidian_Destroyer_SanityEclipse : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Obsidian_Destroyer_Sanity_Eclipse_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Obsidian_Destroyer_Equilibrium : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium : public CDOTA_Buff { public: int32_t proc_chance; // 0x1138 int32_t mana_restore; // 0x113c float mana_capacity_steal; // 0x1140 float mana_capacity_duration; // 0x1144 float shard_mana_duration; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_BonusMana : public CDOTA_Buff { public: int32_t shard_bonus_mana; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Debuff : public CDOTA_Buff { public: int32_t mana_steal; // 0x1138 float m_flCurrentMana; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Buff : public CDOTA_Buff { public: int32_t mana_steal; // 0x1138 float m_flCurrentMana; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Debuff_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Buff_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_ThunderClap : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_ThunderClap : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t attack_speed_slow; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_DrunkenHaze : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_DrunkenHaze : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t miss_chance; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_CinderBrew : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Brewmaster_BrewUp : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Brewmaster_CinderBrew : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 bool m_bIgniteActive; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float m_flDamagePerTick; // 0x1140 }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Brewmaster_DrunkenBrawler : public CDOTABaseAbility { public: // MNetworkEnable // MNetworkChangeCallback "OnBrawlActiveChanged" int32_t m_iBrawlActive; // 0x550 bool m_bUpdateIcons; // 0x554 private: [[maybe_unused]] uint8_t __pad0555[0x3]; // 0x555 public: ParticleIndex_t m_nDrunkenBrawlerFX; // 0x558 }; // Alignment: 13 // Size: 0x1170 class CDOTA_Modifier_Brewmaster_DrunkenBrawler_Passive : public CDOTA_Buff { public: int32_t dodge_chance; // 0x1138 int32_t crit_chance; // 0x113c int32_t crit_multiplier; // 0x1140 int32_t active_multiplier; // 0x1144 int32_t stun_chance; // 0x1148 float bash_cooldown; // 0x114c float stun_duration; // 0x1150 float slow_duration; // 0x1154 int32_t bonus_move_speed; // 0x1158 int32_t bonus_status_resist; // 0x115c int32_t armor; // 0x1160 int32_t magic_resist; // 0x1164 float m_flLastBash; // 0x1168 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_Void_Brawler_Slow : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 int32_t active_multiplier; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_DrunkenBrawler_Slow : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Brewmaster_DrunkenBrawler : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nFXIndexB; // 0x113c int32_t min_movement; // 0x1140 int32_t max_movement; // 0x1144 int32_t m_iMovementBonus; // 0x1148 GameTime_t m_flNextUpdateTime; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Brewmaster_PrimalSplit_Scepter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_PrimalSplitDelay : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_Primal_Split_Fire_Phase : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_Fire_Phase : public CDOTA_Buff { public: int32_t status_resistance; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_PrimalSplitDuration : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Brewmaster_PrimalSplit : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 CHandle< CBaseEntity > m_hSecondaryTarget; // 0x113c CHandle< CBaseEntity > m_hTertiaryTarget; // 0x1140 CHandle< CBaseEntity > m_hFourthTarget; // 0x1144 CHandle< CBaseEntity > m_hReturnBrewling; // 0x1148 int32_t m_nFXIndex; // 0x114c }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_Brewmaster_HurlBoulder : public CDOTABaseAbility { public: int32_t m_iBounces; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x558 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_AstralPulse : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_Void_AstralPulse : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Brewmaster_Void_Void_Strike : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_SpellImmunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Brewmaster_SpellImmunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_Pulverize : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_Pulverize : public CDOTA_Buff { public: int32_t bonus_building_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_DispelMagic : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_Cyclone : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1150 class CDOTA_Modifier_Brewmaster_Cyclone : public CDOTA_Modifier_Cyclone { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_WindWalk : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Brewmaster_WindWalk : public CDOTA_Modifier_Invisible { public: int32_t bonus_movement_speeed; // 0x1148 int32_t bonus_damage; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_PermanentImmolation : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_PermanentImmolation_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Brewmaster_PermanentImmolation : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Brewmaster_Primal_Split_Cancel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Brewmaster_Fear : public CDOTA_Modifier_Fear { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Primal_Companion : public CDOTABaseAbility { public: CHandle< CDOTA_BaseNPC > m_hCurrentBrewling; // 0x550 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Brewmaster_Primal_Companion : public CDOTA_Buff { public: float cooldown_on_death; // 0x1138 float cooldown_on_take_damage; // 0x113c int32_t disable_distance; // 0x1140 int32_t movement_slow_when_out_of_range; // 0x1144 bool m_bCanAttack; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: ParticleIndex_t m_nFxIndex; // 0x114c int32_t cooldown_penalty_pct; // 0x1150 int32_t value; // 0x1154 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Lycan_Wolf_Bite : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Lycan_Wolf_Bite_Lifesteal : public CDOTA_Buff { public: int32_t lifesteal_percent; // 0x1138 int32_t lifesteal_range; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_vecTargets; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lycan_Wolf_Bite_Attack_Range : public CDOTA_Buff { public: int32_t attack_range; // 0x1138 }; // Alignment: 4 // Size: 0x678 class CDOTA_Ability_Lycan_SummonWolves : public CDOTABaseAbility { public: char szUnitName[260]; // 0x550 int32_t wolf_index; // 0x654 float wolf_duration; // 0x658 private: [[maybe_unused]] uint8_t __pad065c[0x4]; // 0x65c public: CUtlVector< CHandle< CBaseEntity > > m_hExistingUnits; // 0x660 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lycan_Shard : public CDOTA_Buff { public: float m_flNextSpawn; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lycan_Wolf_Uncontrollable : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lycan_SummonWolves_BonusDamage : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Lycan_SummonWolves_Bash : public CDOTA_Buff { public: int32_t bash_chance; // 0x1138 float bash_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lycan_SummonWolves_Health : public CDOTA_Buff { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lycan_SummonWolves_CriticalStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Lycan_SummonWolves_CriticalStrike : public CDOTA_Buff { public: CountdownTimer m_CooldownTimer; // 0x1138 int32_t maim_chance; // 0x1150 float maim_duration; // 0x1154 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Lycan_SummonWolves_Maim : public CDOTA_Buff { public: int32_t maim_movement_speed; // 0x1138 int32_t maim_attack_speed; // 0x113c int32_t maim_damage; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lycan_SummonWolves_PermanentInvisibility : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Lycan_SummonWolves_PermanentInvisibility : public CDOTA_Modifier_PersistentInvisibility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lycan_Howl : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Lycan_Howl : public CDOTA_Buff { public: int32_t attack_damage_reduction; // 0x1138 int32_t total_attack_damage_reduction; // 0x113c int32_t armor; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lycan_FeralImpulse : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Lycan_FeralImpulse_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Lycan_FeralImpulse : public CDOTA_Buff { public: int32_t bonus_hp_regen; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Lycan_Shapeshift : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lycan_Shapeshift_Transform : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lycan_Shapeshift_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Lycan_Shapeshift : public CDOTA_Buff { public: int32_t bonus_night_vision; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c int32_t m_iOriginalAttackCapability; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Lycan_Shapeshift_Speed : public CDOTA_Buff { public: int32_t speed; // 0x1138 int32_t crit_chance; // 0x113c int32_t crit_multiplier; // 0x1140 int32_t health_bonus; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lycan_Fear : public CDOTA_Modifier_Fear { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Shadow_Demon_Disruption_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Shadow_Demon_Disruption : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hDisruptedUnit; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Shadow_Demon_Disruption : public CDOTA_Buff { public: float m_flHealth; // 0x1138 float m_flDisseminate_Duration; // 0x113c CHandle< CBaseEntity > m_hDisseminateAbility; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shadow_Demon_Soul_Catcher : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Shadow_Demon_Soul_Catcher : public CDOTA_Buff { public: int32_t actual_health_lost; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Shadow_Demon_Soul_Catcher_SpellAmp : public CDOTA_Buff { public: int32_t num_heroes; // 0x1138 int32_t bonus_spell_amp; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Shadow_Demon_Soul_Catcher_Illusion : public CDOTA_Buff { public: CHandle< CBaseEntity > hTarget; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shadow_Demon_Shadow_Poison_Release : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x590 class CDOTA_Ability_Shadow_Demon_Shadow_Poison : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hPoisonedUnits; // 0x550 bool m_bHitDisruptedUnit; // 0x568 private: [[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569 public: int32_t radius; // 0x56c CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x570 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Shadow_Demon_Shadow_Poison : public CDOTA_Buff { public: float stack_damage; // 0x1138 float bonus_stack_damage; // 0x113c int32_t max_multiply_stacks; // 0x1140 ParticleIndex_t m_nFXStackIndex; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Shadow_Demon_DemonicPurge_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Shadow_Demon_Demonic_Purge : public CDOTABaseAbility { public: bool m_bGrantedScepterCharges; // 0x550 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Shadow_Demon_Demonic_Cleanse : public CDOTABaseAbility { public: bool m_bGrantedScepterCharges; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Shadow_Demon_Purge_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shadow_Demon_Disseminate : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Shadow_Demon_Disseminate : public CDOTA_Buff { public: int32_t damage_reflection_pct; // 0x1138 int32_t radius; // 0x113c GameTime_t m_flLastDispersionPulseEffectTime; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_LoneDruid_SpiritBear_AttackCheck : public CDOTA_Buff { public: bool m_bCanBeResummoned; // 0x1138 bool m_bCanAttack; // 0x1139 private: [[maybe_unused]] uint8_t __pad113a[0x2]; // 0x113a public: ParticleIndex_t m_nFxIndex; // 0x113c ParticleIndex_t m_nStatusFxIndex; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LoneDruid_SpiritBear_Talent_Logic : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_LoneDruid_SpiritBear : public CDOTABaseAbility { public: bool m_bLevelChanged; // 0x550 private: [[maybe_unused]] uint8_t __pad0551[0x3]; // 0x551 public: // MNetworkEnable CHandle< CBaseEntity > m_hBear; // 0x554 CHandle< CBaseEntity > m_hPreBear; // 0x558 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spirit_Bear_Attack_Damage : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_LoneDruid_SpiritBear_Return : public CDOTABaseAbility { public: ParticleIndex_t m_nFXOrigin; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SpiritBear_Defender : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LoneDruid_SpiritBear_Defender_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_LoneDruid_SpiritBear_Defender : public CDOTA_Buff { public: int32_t damage_share; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_Entangling_Claws : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_LoneDruid_Entangling_Claws : public CDOTA_Buff { public: int32_t attack_amp; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SpiritBear_Entangle : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_LoneDruid_SpiritBear_Entangle : public CDOTA_Buff { public: int32_t entangle_chance; // 0x1138 int32_t hero_entangle_chance; // 0x113c float hero_duration; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_LoneDruid_SpiritBear_Entangle_Effect : public CDOTA_Buff { public: int32_t m_iEntangleDamage; // 0x1138 float interval_rate; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SpiritBear_Demolish : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_LoneDruid_SpiritBear_Demolish : public CDOTA_Buff { public: int32_t bonus_building_damage; // 0x1138 int32_t true_form_bonus_building_damage; // 0x113c int32_t spell_resistance; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_LoneDruid_Rabid : public CDOTABaseAbility { public: float rabid_duration; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_LoneDruid_Rabid : public CDOTA_Buff { public: int32_t shard_movement_speed_pct; // 0x1138 int32_t shard_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SpiritLink : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_LoneDruid_SpiritLink : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t lifesteal_percent; // 0x113c int32_t armor; // 0x1140 int32_t armor_sharing; // 0x1144 CHandle< CBaseEntity > m_hTarget; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_TrueForm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LoneDruid_TrueForm_Transform : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_LoneDruid_TrueForm : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 int32_t bonus_hp; // 0x113c float base_attack_time; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_TrueForm_Druid : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LoneDruid_DruidForm_Transform : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_LoneDruid_TrueForm_BattleCry : public CDOTABaseAbility { public: float cry_duration; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_LoneDruid_TrueForm_BattleCry : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SavageRoar : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_LoneDruid_SavageRoar_Bear : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bear_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bear_Empty2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_LoneDruid_SavageRoar : public CDOTA_Modifier_Fear { public: int32_t bonus_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_LoneDruid_SpiritBear_TowerKillTracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_ChaosKnight_Chaos_Bolt : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 }; // Alignment: 3 // Size: 0x578 class CDOTA_Ability_ChaosKnight_Reality_Rift : public CDOTABaseAbility { public: float m_flPercentage; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x4]; // 0x554 public: CUtlVector< ParticleIndex_t > m_FXIndex; // 0x558 CHandle< CBaseEntity > m_hRiftIllusion; // 0x570 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ChaosKnight_Reality_Rift_Debuff : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ChaosKnight_Chaos_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1168 class CDOTA_Modifier_ChaosKnight_Chaos_Strike : public CDOTA_Buff { public: float creep_multiplier; // 0x1138 int32_t crit_min; // 0x113c int32_t crit_max; // 0x1140 int32_t lifesteal; // 0x1144 float chance; // 0x1148 int32_t m_nNextCrit; // 0x114c CUtlVector< int16 > m_vCritRecords; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ChaosKnight_Chaos_Strike_Debuff : public CDOTA_Buff { public: int32_t maim_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ChaosKnight_Phantasm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ChaosKnight_Phantasm : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ChaosKnight_Phantasm_Illusion : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ChaosKnight_Phantasm_Illusion_Shard : public CDOTA_Modifier_ChaosKnight_Phantasm_Illusion { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Meepo_Petrify : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Meepo_Petrify : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t hp_restore; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Meepo_Earthbind : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Meepo_Earthbind : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Meepo_Earthbind_ChainDuration : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Meepo_Geostrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Meepo_Self_Geostrike : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Meepo_Geostrike_Debuff : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Meepo_DividedWeStand : public CDOTABaseAbility { public: // MNetworkEnable int32_t m_nWhichDividedWeStand; // 0x550 // MNetworkEnable int32_t m_nNumDividedWeStand; // 0x554 // MNetworkEnable CHandle< CDOTA_Ability_Meepo_DividedWeStand > m_entPrimeDividedWeStand; // 0x558 // MNetworkEnable CHandle< CDOTA_Ability_Meepo_DividedWeStand > m_entNextDividedWeStand; // 0x55c int32_t m_iPendingUpgrades; // 0x560 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Meepo_Flung : public CDOTA_Buff { public: int32_t m_nHandle; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Meepo_Fling_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Meepo_Divided_We_Stand : public CDOTA_Buff { public: float respawn; // 0x1138 float magic_resist; // 0x113c }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Meepo_Poof : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Meepo_Poof_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Meepo_Ransack : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Meepo_Ransack : public CDOTA_Buff { public: int32_t health_steal_heroes; // 0x1138 int32_t health_steal_creeps; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Meepo_5 : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Meepo_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Treant_EyesInTheForest : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > vTrees; // 0x550 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Treant_EyesInTheForest_Thinker : public CDOTA_Buff { public: float vision_aoe; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CDOTA_Tree* m_Tree; // 0x1140 CHandle< CBaseEntity > m_hTree; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c bool m_bUpgradedVision; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_NaturesGrasp : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1168 class CDOTA_Modifier_Treant_NaturesGrasp_Creation_Thinker : public CDOTA_Buff { public: float creation_interval; // 0x1138 float vines_duration; // 0x113c int32_t vine_spawn_interval; // 0x1140 Vector m_vInitialLoc; // 0x1144 Vector m_vFinalLoc; // 0x1150 int32_t m_iVineCount; // 0x115c int32_t m_iVinesIndex; // 0x1160 bool m_bFoundTree; // 0x1164 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Treant_NaturesGrasp_Latch_Thinker : public CDOTA_Buff { public: int32_t latch_range; // 0x1138 int32_t latch_vision; // 0x113c float initial_latch_delay; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x8]; // 0x1144 public: bool m_bBonus; // 0x114c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Treant_NaturesGrasp_Damage : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t damage_per_second; // 0x113c float tick_interval; // 0x1140 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Treant_NaturesGrasp_Damage_Bonus : public CDOTA_Modifier_Treant_NaturesGrasp_Damage { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Treant_LifeBomb : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 CHandle< CBaseEntity > m_hRMine; // 0x554 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_LifeBomb_Explode : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Treant_Lifebomb_Explode : public CDOTA_Buff { public: GameTime_t flStartTime; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_NaturesGuise : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_Treant_NaturesGuise : public CDOTA_Buff { public: CountdownTimer m_RevealTimer; // 0x1138 CountdownTimer m_InvisAttackTimer; // 0x1150 CountdownTimer m_CooldownTimer; // 0x1168 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Treant_NaturesGuise_Tree_Walking : public CDOTA_Buff { public: int32_t movement_bonus; // 0x1138 int32_t regen_amp; // 0x113c }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Treant_NaturesGuise_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Treant_NaturesGuise_NearTreeDisplay : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Treant_NaturesGuise_Root : public CDOTA_Buff { public: float m_flEntangleDamage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_LeechSeed : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Treant_LeechSeed : public CDOTA_Buff { public: float damage_interval; // 0x1138 int32_t leech_damage; // 0x113c int32_t movement_slow; // 0x1140 int32_t radius; // 0x1144 int32_t projectile_speed; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Treant_LeechSeed_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_LivingArmor : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Treant_LivingArmor : public CDOTA_Buff { public: int32_t heal_per_second; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Treant_Overgrowth : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Treant_Overgrowth : public CDOTA_Buff { public: float damage; // 0x1138 int32_t mute; // 0x113c bool bPurgable; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Ogre_Magi_Arcana : public CDOTA_Buff { public: int32_t m_nLastMulticastCount; // 0x1138 int32_t m_nMulticastStreakCount; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ogre_Magi_Multicast : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Ogre_Magi_Fireblast : public CDOTABaseAbility { public: int32_t m_nMostRecentMulticastCount; // 0x550 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_Ogre_Magi_Unrefined_Fireblast : public CDOTA_Ability_Ogre_Magi_Fireblast { public: int32_t m_nMostRecentMulticastCount; // 0x558 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Ogre_Magi_Fireblast_Attack_Proc : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Ogre_Magi_Fireblast_Multicast : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_hTarget; // 0x1138 float multicast_delay; // 0x113c int32_t m_nMultiCastCount; // 0x1140 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Ogre_Magi_Ignite : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 int32_t m_nMostRecentMulticastCount; // 0x554 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Ogre_Magi_Ignite : public CDOTA_Buff { public: int32_t slow_movement_speed_pct; // 0x1138 int32_t burn_damage; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Ogre_Magi_Ignite_Multicast : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_hTarget; // 0x1138 float multicast_delay; // 0x113c int32_t m_nMultiCastCount; // 0x1140 int32_t ignite_multicast_aoe; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ogre_Magi_Bloodlust : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Ogre_Magi_Bloodlust_Autocast : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Ogre_Magi_Bloodlust : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_movement_speed; // 0x113c int32_t self_bonus; // 0x1140 float modelscale; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Ogre_Magi_Item_Multicast : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Ogre_Magi_Smash : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Ogre_Magi_Smash_Buff : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t attacks; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike : public CDOTA_Buff { public: int32_t radius; // 0x1138 float health_threshold_pct; // 0x113c float duration; // 0x1140 CHandle< CBaseEntity > m_hTombstoneSourceAbility; // 0x1144 CHandle< CBaseEntity > m_hChaseUnit; // 0x1148 }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_Undying_Decay : public CDOTABaseAbility { public: int32_t decay_damage; // 0x550 int32_t radius; // 0x554 float decay_duration; // 0x558 int32_t str_steal; // 0x55c int32_t str_steal_scepter; // 0x560 float creep_damage_multiplier; // 0x564 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_Decay_Debuff : public CDOTA_Buff { public: int32_t str_steal; // 0x1138 int32_t str_steal_scepter; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Undying_Decay_DebuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Undying_Decay_BuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Undying_Decay_Buff : public CDOTA_Buff { public: int32_t str_steal; // 0x1138 int32_t str_steal_scepter; // 0x113c int32_t str_scale_up; // 0x1140 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Undying_SoulRip : public CDOTABaseAbility { public: int32_t damage_per_unit; // 0x550 int32_t radius; // 0x554 int32_t max_units; // 0x558 int32_t tombstone_heal; // 0x55c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 float m_flDecrementTime; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike_Slow_Counter : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Undying_Tombstone_Zombie_DeathStrike : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathlust : public CDOTA_Buff { public: int32_t bonus_move_speed; // 0x1138 int32_t bonus_attack_speed; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Undying_Tombstone_Zombie_Modifier : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_Undying_Tombstone : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_vZombies; // 0x550 CHandle< CBaseEntity > hTombstone; // 0x568 int32_t radius; // 0x56c float duration; // 0x570 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_Tombstone_HP : public CDOTA_Buff { public: int32_t tombstone_health; // 0x1138 int32_t bonus_health; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_Tombstone_Zombie_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 float zombie_interval; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Undying_FleshGolem : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_FleshGolem : public CDOTA_Buff { public: int32_t str_percentage; // 0x1138 int32_t movement_bonus; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Undying_FleshGolem_Slow : public CDOTA_Buff { public: int32_t damage_amp; // 0x1138 int32_t slow; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Undying_FleshGolem_PlagueAura : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t damage; // 0x113c float tick_rate; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Undying_Tombstone_Death_Trigger : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Undying_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_Rubick_Telekinesis : public CDOTABaseAbility { public: // MNetworkEnable Vector m_vStartLocation; // 0x550 Vector m_vLandLocation; // 0x55c GameTime_t m_flStartTime; // 0x568 private: [[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c public: CDOTA_BaseNPC* m_pTarget; // 0x570 }; // Alignment: 10 // Size: 0x1170 class CDOTA_Modifier_Rubick_Telekinesis : public CDOTA_Buff { public: GameTime_t m_fStartTime; // 0x1138 GameTime_t m_fEndTime; // 0x113c float m_fTargetHeight; // 0x1140 float m_fCurHeight; // 0x1144 Vector m_vStartLoc; // 0x1148 Vector m_vCurLoc; // 0x1154 int32_t max_land_distance; // 0x1160 float fall_duration; // 0x1164 bool m_bOverrideDuration; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0x3]; // 0x1169 public: float m_flOverrideDuration; // 0x116c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Rubick_TelekinesisLand : public CDOTABaseAbility { public: ParticleIndex_t m_nLandPreviewFX; // 0x550 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Rubick_TelekinesisLand_Self : public CDOTA_Ability_Rubick_TelekinesisLand { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_FadeBolt : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_Rubick_FadeBolt : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage; // 0x113c int32_t jump_damage_reduction_pct; // 0x1140 float jump_delay; // 0x1144 int32_t m_iCurJumpCount; // 0x1148 Vector m_vCurTargetLoc; // 0x114c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rubick_Telekinesis_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Rubick_FadeBoltDebuff : public CDOTA_Buff { public: int32_t attack_damage_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Rubick_FadeBolt_BuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rubick_FadeBoltBuff : public CDOTA_Buff { public: int32_t attack_damage_bonus; // 0x1138 int32_t attack_damage_reduction; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_NullField : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Rubick_NullField : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rubick_NullField_Effect : public CDOTA_Buff { public: int32_t magic_damage_reduction_pct; // 0x1138 bool m_bWasHidden; // 0x113c }; // Alignment: 6 // Size: 0x668 class CDOTA_Ability_Rubick_SpellSteal : public CDOTABaseAbility { public: // MNetworkEnable char m_ActivityModifier[256]; // 0x550 // MNetworkEnable float m_fStolenCastPoint; // 0x650 CHandle< CBaseEntity > m_hStealTarget; // 0x654 CHandle< CDOTABaseAbility > m_hStealAbility; // 0x658 ParticleIndex_t m_nFXIndex; // 0x65c int32_t m_hProjectile; // 0x660 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Rubick_SpellSteal : public CDOTA_Buff { public: CUtlString m_strActivityModifier; // 0x1138 CUtlVector< CHandle< CBaseEntity > > m_vecAbilities; // 0x1140 bool m_bUsesTwoSlots; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: int32_t stolen_debuff_amp; // 0x115c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Empty1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Empty2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Hidden1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Hidden2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Hidden3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Rubick_Arcane_Supremacy : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Rubick_Arcane_Supremacy : public CDOTA_Buff { public: int32_t cast_range; // 0x1138 int32_t spell_amp; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Rubick_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Disruptor_Thunder_Strike : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Disruptor_Thunder_Strike : public CDOTA_Buff { public: float strike_interval; // 0x1138 int32_t radius; // 0x113c int32_t strike_damage; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Disruptor_Thunder_Strike_Slow : public CDOTA_Buff { public: int32_t slow_amount; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Disruptor_Thunder_Strike_Speed : public CDOTA_Buff { public: int32_t shard_movement_speed_bonus; // 0x1138 int32_t shard_attack_speed_bonus; // 0x113c }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Disruptor_Glimpse : public CDOTABaseAbility { public: int32_t m_nNPCSpawnedID; // 0x560 }; // Alignment: 1 // Size: 0x1210 class CDOTA_Modifier_Disruptor_Glimpse : public CDOTA_Buff { public: Vector m_PositionIndex[18]; // 0x1138 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Disruptor_Glimpse_Thinker : public CDOTA_Buff { public: Vector m_vStartLoc; // 0x1138 CHandle< CBaseEntity > m_hEntity; // 0x1144 float m_flDistance; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Disruptor_KineticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Disruptor_KineticFieldThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float formation_time; // 0x113c bool m_bActive; // 0x1140 }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Disruptor_KineticField : public CDOTA_Buff { public: int32_t radius; // 0x1138 Vector m_vOriginLoc; // 0x113c bool m_bTruesight; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: float damage_per_second; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Disruptor_StaticStorm : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Disruptor_StaticStormThinker : public CDOTA_Buff { public: int32_t m_nCurrentPulse; // 0x1138 int32_t radius; // 0x113c int32_t damage_max; // 0x1140 int32_t pulses; // 0x1144 float duration; // 0x1148 bool m_bHasGrantedThreeHeroKillEater; // 0x114c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Disruptor_StaticStorm : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 int32_t movement_speed_reduction; // 0x113c int32_t attack_speed_reduction; // 0x1140 bool m_bHasScepter; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Disruptor_StaticStormMute : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Disruptor_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x588 class CDOTA_Ability_Nyx_Assassin_Impale : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 int32_t width; // 0x568 float duration; // 0x56c int32_t length; // 0x570 int32_t speed; // 0x574 Vector vOriginalCast; // 0x578 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Nyx_Assassin_Impale : public CDOTA_Buff { public: int32_t impale_damage; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 bool m_bDamageApplied; // 0x1144 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Nyx_Assassin_ManaBurn : public CDOTABaseAbility { public: int32_t aoe; // 0x550 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Nyx_Assassin_Burrow : public CDOTABaseAbility { public: ParticleIndex_t m_nSpellStartFXIndex; // 0x550 ParticleIndex_t m_nPhaseStartFXIndex; // 0x554 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Nyx_Assassin_Burrow : public CDOTA_Modifier_Invisible { public: float health_regen_rate; // 0x1148 float mana_regen_rate; // 0x114c int32_t damage_reduction; // 0x1150 Vector m_vecInitialPos; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nyx_Assassin_Unburrow : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nyx_Assassin_SpikedCarapace : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Nyx_Assassin_SpikedCarapace : public CDOTA_Buff { public: float stun_duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< CHandle< CBaseEntity > > m_hProcessedEnemies; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Nyx_Assassin_Vendetta : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Nyx_Assassin_Vendetta : public CDOTA_Modifier_Invisible { public: int32_t bonus_damage; // 0x1148 int32_t movement_speed; // 0x114c int32_t shard_movement_speed_bonus; // 0x1150 bool m_bFreePathing; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nyx_Assassin_Vendetta_Armor_Reduction : public CDOTA_Buff { public: int32_t shard_magic_resist_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Nyx_Assassin_Vendetta_Break : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_NagaSiren_MirrorImage : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hIllusions; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_MirrorImage : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NagaSiren_Ensnare : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_Ensnare : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NagaSiren_RipTide : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_RipTide_Passive : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_RipTideCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_NagaSiren_RipTide : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_RipTide_Slow : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NagaSiren_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_NagaSiren_Crit_Passive : public CDOTA_Buff { public: int32_t chance; // 0x1138 int32_t crit; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NagaSiren_SongOfTheSiren : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_NagaSiren_SongOfTheSiren_Cancel : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_NagaSiren_SongOfTheSiren_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t m_nAffectedEnemies; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_vhAffectedHeroes; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_NagaSiren_SongOfTheSiren : public CDOTA_Buff { public: float animation_rate; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_NagaSiren_SongOfTheSiren_IgnoreMe : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_NagaSiren_SongOfTheSiren_Healing_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t m_nAffectedAllies; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_vhAffectedHeroes; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class NagaSiren_SongOfTheSiren_Healing : public CDOTA_Buff { public: int32_t heal_pct; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Naga_Siren_Reel_In : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > affectedEntities; // 0x550 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Naga_Siren_Reel_In : public CDOTA_Buff { public: float pull_strength; // 0x1138 int32_t min_pull_distance; // 0x113c GameTime_t m_flLastThinkTime; // 0x1140 }; // Alignment: 8 // Size: 0x578 class CDOTA_Ability_KeeperOfTheLight_Illuminate : public CDOTABaseAbility { public: GameTime_t m_fStartTime; // 0x550 float m_fPower; // 0x554 int32_t m_iProjectile; // 0x558 ParticleIndex_t m_nFXIndex; // 0x55c ParticleIndex_t m_nFXIndexB; // 0x560 Vector m_vPos; // 0x564 int32_t total_damage; // 0x570 bool m_bStarted; // 0x574 }; // Alignment: 10 // Size: 0x1170 class CDOTA_Modifier_KeeperOfTheLight_Illuminate : public CDOTA_Buff { public: int32_t range; // 0x1138 int32_t total_damage; // 0x113c int32_t radius; // 0x1140 int32_t channel_vision_radius; // 0x1144 float channel_vision_interval; // 0x1148 float channel_vision_duration; // 0x114c int32_t channel_vision_step; // 0x1150 GameTime_t m_flLastChantTime; // 0x1154 Vector m_vNextVisionLocation; // 0x1158 Vector m_vCastDirection; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_IlluminateEnd : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_KeeperOfTheLight_SpiritFormIlluminate : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 float max_channel_time; // 0x554 int32_t total_damage; // 0x558 float m_fPower; // 0x55c GameTime_t m_fStartTime; // 0x560 ParticleIndex_t m_nFXIndex; // 0x564 }; // Alignment: 21 // Size: 0x11b8 class CDOTA_Modifier_KeeperOfTheLight_SpiritForm_Illuminate : public CDOTA_Buff { public: int32_t range; // 0x1138 int32_t vision_radius; // 0x113c int32_t radius; // 0x1140 int32_t total_damage; // 0x1144 float max_channel_time; // 0x1148 float speed; // 0x114c float vision_duration; // 0x1150 int32_t channel_vision_radius; // 0x1154 float channel_vision_interval; // 0x1158 float channel_vision_duration; // 0x115c int32_t channel_vision_step; // 0x1160 Vector m_vCastLoc; // 0x1164 Vector m_vTargetLoc; // 0x1170 GameTime_t m_fStartTime; // 0x117c float m_fPower; // 0x1180 QAngle m_qCastAngle; // 0x1184 int32_t m_iProjectile; // 0x1190 ParticleIndex_t m_nFXIndex; // 0x1194 ParticleIndex_t m_nFXIndexB; // 0x1198 Vector m_vNextVisionLocation; // 0x119c Vector m_vCastDirection; // 0x11a8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_SpiritFormIlluminateEnd : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_ManaLeak : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_KeeperOfTheLight_ManaLeak : public CDOTA_Buff { public: float mana_leak_pct; // 0x1138 Vector vLastPos; // 0x113c bool bResetPosition; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: float m_fAccumulatedManaLeak; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_Radiant_Bind : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_KeeperOfTheLight_Radiant_Bind : public CDOTA_Buff { public: float slow; // 0x1138 int32_t magic_resistance; // 0x113c Vector vLastPos; // 0x1140 bool bResetPosition; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_fAccumulatedDistance; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x1154 ParticleIndex_t m_nStatusFXIndex; // 0x1158 }; // Alignment: 12 // Size: 0x1168 class CDOTA_Modifier_KeeperOfTheLight_Will_O_Wisp_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 float off_duration; // 0x113c float off_duration_initial; // 0x1140 float on_duration; // 0x1144 int32_t hit_count; // 0x1148 int32_t m_iAttackCount; // 0x114c GameTime_t m_flNextTimeOn; // 0x1150 bool m_bActive; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: ParticleIndex_t m_nFXIndex; // 0x1158 ParticleIndex_t m_nFXIndexB; // 0x115c GameTime_t m_flNextTime; // 0x1160 float m_flCorrectionTime; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_Will_O_Wisp : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_KeeperOfTheLight_Will_O_Wisp : public CDOTA_Buff { public: int32_t fixed_movement_speed; // 0x1138 Vector m_vSource; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_ChakraMagic : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_KeeperOfTheLight_SpiritForm : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndexA; // 0x1138 int32_t movement_speed; // 0x113c int32_t cast_range; // 0x1140 bool m_bDidSwapSpiritForm; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_SpiritForm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_Recall : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KeeperOfTheLight_Recall : public CDOTA_Buff { public: bool m_bWasAttacked; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_KeeperOfTheLight_BlindingLight : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KeeperOfTheLight_BlindingLight : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_BlindingLight_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_10 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_11 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_12 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_13 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_14 : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Wisp_Tentacles : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 CHandle< CBaseEntity > hCurrentEntity; // 0x113c }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Wisp_Tether : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hTarget; // 0x560 Vector m_vProjectileLocation; // 0x564 bool m_bProjectileActive; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: int32_t latch_distance; // 0x574 int32_t m_iProjectileIndex; // 0x578 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Wisp_Tether_Spell_Lifesteal : public CDOTA_Buff { public: float shard_bonus_spell_lifesteal; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Wisp_Tether_Break : public CDOTABaseAbility { public: // no members available }; // Alignment: 14 // Size: 0x1188 class CDOTA_Modifier_Wisp_Tether : public CDOTA_Buff { public: bool m_bInManaGained; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: CHandle< CBaseEntity > m_hTarget; // 0x113c CUtlVector< CHandle< CBaseEntity > > hStunnedEntities; // 0x1140 float stun_duration; // 0x1158 int32_t movespeed; // 0x115c int32_t self_bonus; // 0x1160 bool m_bIsInRange; // 0x1164 private: [[maybe_unused]] uint8_t __pad1165[0x3]; // 0x1165 public: int32_t radius; // 0x1168 int32_t latch_distance; // 0x116c float m_flHealthHealed; // 0x1170 float m_flManaHealed; // 0x1174 float tether_heal_amp; // 0x1178 GameTime_t m_flHealMessageTime; // 0x117c GameTime_t m_flManaMessageTime; // 0x1180 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Wisp_Tether_Stun_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Wisp_Tether_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Wisp_Tether_Haste : public CDOTA_Buff { public: float movespeed; // 0x1138 float shard_bonus_spell_lifesteal; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Wisp_Tether_Scepter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Wisp_Spirits_In : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Wisp_Spirit_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Wisp_Spirits_Out : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x1208 class CDOTA_Modifier_Wisp_Spirits : public CDOTA_Buff { public: bool m_bSpiritsExplode; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t creep_damage; // 0x113c int32_t hero_damage; // 0x1140 int32_t hit_radius; // 0x1144 int32_t hero_hit_radius; // 0x1148 int32_t explode_radius; // 0x114c int32_t min_range; // 0x1150 int32_t max_range; // 0x1154 int32_t default_radius; // 0x1158 int32_t spirit_amount; // 0x115c float m_flRotation; // 0x1160 float m_flSpiritRadius; // 0x1164 int32_t spirit_movement_rate; // 0x1168 GameTime_t m_flNextSpawn; // 0x116c CUtlString m_strSpiritsOutSwapAbility; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Wisp_Spirits_Slow : public CDOTA_Buff { public: int32_t scepter_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Wisp_Overcharge : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Wisp_Overcharge : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_spell_amp; // 0x113c int32_t shard_bonus_spell_amp; // 0x1140 float hp_regen; // 0x1144 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Wisp_Relocate : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndexEndTeam; // 0x550 ParticleIndex_t m_nFXIndexChannel; // 0x554 float cast_delay; // 0x558 float return_time; // 0x55c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Wisp_Relocate_Thinker : public CDOTA_Buff { public: float cast_delay; // 0x1138 ParticleIndex_t m_nFXIndexEndTeam; // 0x113c ParticleIndex_t m_nFXIndexChannel; // 0x1140 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Wisp_Relocate_Return : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 Vector m_vecReturnPosition; // 0x113c float return_time; // 0x1148 ParticleIndex_t m_nFXTimeRemaining; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Visage_GraveChill : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Visage_GraveChill_Debuff : public CDOTA_Buff { public: int32_t movespeed_bonus; // 0x1138 int32_t attackspeed_bonus; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Visage_GraveChill_Buff : public CDOTA_Buff { public: int32_t movespeed_bonus; // 0x1138 int32_t attackspeed_bonus; // 0x113c }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Visage_SoulAssumption : public CDOTABaseAbility { public: float m_fDamage; // 0x550 ParticleIndex_t m_nFXIndex; // 0x554 int32_t m_iForcedStacks; // 0x558 }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Visage_SoulAssumption : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t stack_limit; // 0x113c int32_t damage_limit; // 0x1140 float stack_duration; // 0x1144 float damage_min; // 0x1148 float damage_max; // 0x114c ParticleIndex_t m_nFxIndexA; // 0x1150 ParticleIndex_t m_nFxIndexB; // 0x1154 int32_t iCur_stack; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x1c]; // 0x115c public: float m_fTotalDamage; // 0x1178 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Visage_GravekeepersCloak : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Visage_GravekeepersCloak_Stack : public CDOTA_Buff { public: bool m_bIsRecovering; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t m_nFXIndex[4]; // 0x113c }; // Alignment: 9 // Size: 0x1180 class CDOTA_Modifier_Visage_GravekeepersCloak : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t max_layers; // 0x113c float minimum_damage; // 0x1140 int32_t recovery_time; // 0x1144 int32_t radius; // 0x1148 int32_t max_damage_reduction; // 0x114c ParticleIndex_t m_nFXIndex[4]; // 0x1150 ParticleIndex_t m_nFXIndexB; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CDOTA_Modifier_Visage_GravekeepersCloak_Stack* > vStacks; // 0x1168 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Visage_GravekeepersCloak_Secondary : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 2 // Size: 0x670 class CDOTA_Ability_Visage_SummonFamiliars : public CDOTABaseAbility { public: char szUnitName[260]; // 0x550 private: [[maybe_unused]] uint8_t __pad0654[0x4]; // 0x654 public: CUtlVector< CHandle< CBaseEntity > > m_hExistingUnits; // 0x658 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Visage_SummonFamiliars_Talents : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Visage_Amor_Reduction : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Visage_SummonFamiliars_DamageCharge : public CDOTA_Buff { public: int32_t familiar_speed; // 0x1138 int32_t m_nFXIndex; // 0x113c int32_t m_nFXIndexB; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CountdownTimer m_ctTimer; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Visage_SummonFamiliars_StoneForm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Visage_Stone_Form_Self_Cast : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Visage_Stone_Form_Self_Cast_Cooldown_Manager : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Thinker : public CDOTA_Buff { public: int32_t stun_radius; // 0x1138 int32_t stun_damage; // 0x113c float stun_delay; // 0x1140 float stun_duration; // 0x1144 float stone_duration; // 0x1148 int32_t m_iIntervalCount; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Buff : public CDOTA_Buff { public: float hp_regen; // 0x1138 int32_t stun_radius; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Visage_Scepter : public CDOTA_Buff { public: GameTime_t m_flReadyTime; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Timer : public CDOTA_Buff { public: float stone_duration; // 0x1138 GameTime_t m_fStartTime; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Visage_Silent_As_The_Grave : public CDOTABaseAbility { public: float invis_duration; // 0x550 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Visage_Silent_As_The_Grave : public CDOTA_Modifier_Invisible { public: bool m_bHasMadeAttack; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Visage_Silent_As_The_Grave_Bonus : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 2 // Size: 0x1160 class CDOTA_Modifier_Slark_EssenceShift : public CDOTA_Modifier_Stacking_Base { public: int32_t agi_gain; // 0x1158 float duration; // 0x115c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slark_DarkPact : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slark_DarkPact : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Slark_DarkPact_Pulses : public CDOTA_Buff { public: int32_t m_iPulseCount; // 0x1138 int32_t radius; // 0x113c int32_t total_damage; // 0x1140 int32_t total_pulses; // 0x1144 int32_t self_damage_pct; // 0x1148 float pulse_interval; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slark_Pounce_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slark_Pounce : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x1180 class CDOTA_Modifier_Slark_Pounce : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 bool m_bFoundUnit; // 0x1161 private: [[maybe_unused]] uint8_t __pad1162[0x2]; // 0x1162 public: int32_t pounce_distance; // 0x1164 int32_t pounce_distance_scepter; // 0x1168 float pounce_speed; // 0x116c float pounce_acceleration; // 0x1170 int32_t pounce_radius; // 0x1174 int32_t pounce_damage; // 0x1178 float leash_duration; // 0x117c }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Slark_Pounce_Leash : public CDOTA_Buff { public: int32_t leash_radius; // 0x1138 Vector vLeashLocation; // 0x113c bool m_bEscaped; // 0x1148 bool m_bFishBait; // 0x1149 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slark_EssenceShift : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1158 class CDOTA_Modifier_Slark_EssenceShift_DebuffCounter : public CDOTA_Modifier_Stacking_Base { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Slark_EssenceShift_Debuff : public CDOTA_Modifier_Stacking_Multiple_Buff_Base { public: int32_t stat_loss; // 0x1140 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Slark_EssenceShift_Buff : public CDOTA_Modifier_Stacking_Multiple_Buff_Base { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slark_EssenceShift_Permanent_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Slark_EssenceShift_Permanent_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Slark_ShadowDance : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slark_ShadowDance_Aura : public CDOTA_Buff { public: int32_t scepter_aoe; // 0x1138 }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Slark_ShadowDance_Passive : public CDOTA_Buff { public: float activation_delay; // 0x1138 float neutral_disable; // 0x113c bool m_bPendingRefresh; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: GameTime_t m_fPendingStateChangeTime; // 0x1144 CountdownTimer m_NeutralHitTimer; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Slark_ShadowDance_PassiveRegen : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 float bonus_regen; // 0x113c }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Slark_ShadowDance : public CDOTA_Modifier_Invisible { public: CHandle< CBaseEntity > m_hVisibleEntity; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slark_ShadowDance_Visual : public CDOTA_Buff { public: bool m_bScepter; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Slark_Depth_Shroud : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Slark_Depth_Shroud_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 CHandle< CBaseEntity > m_hVisibleEntity; // 0x113c }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Slark_Depth_Shroud : public CDOTA_Modifier_Invisible { public: ParticleIndex_t m_nFXIndex; // 0x1148 int32_t bonus_movement_speed; // 0x114c float bonus_regen; // 0x1150 }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Slark_Fish_Bait : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slark_Fish_Bait_Pre : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Slark_Fish_Bait_Post : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Medusa_SplitShot : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1188 class CDOTA_Modifier_Medusa_SplitShot : public CDOTA_Buff { public: int32_t damage_modifier; // 0x1138 int32_t range; // 0x113c int32_t arrow_count; // 0x1140 int32_t projectile_speed; // 0x1144 ParticleIndex_t m_nSplitShotBowFXIndex; // 0x1148 }; // Alignment: 11 // Size: 0x658 class CDOTA_Ability_Medusa_MysticSnake : public CDOTABaseAbility { public: int32_t radius; // 0x550 int32_t snake_jumps; // 0x554 int32_t snake_damage; // 0x558 int32_t snake_damage_pct; // 0x55c int32_t snake_mana_steal; // 0x560 int32_t snake_scale; // 0x564 int32_t snake_speed_scale; // 0x568 int32_t initial_speed; // 0x56c int32_t return_speed; // 0x570 float jump_delay; // 0x574 float slow_duration; // 0x578 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Medusa_Mystic_Snake_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t turn_slow; // 0x113c }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Medusa_ManaShield : public CDOTABaseAbility { public: GameTime_t m_flLastShieldOnTime; // 0x550 GameTime_t m_flLastShieldOffTime; // 0x554 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Medusa_ManaShield_Bonus_Mana : public CDOTA_Buff { public: int32_t bonus_mana; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Medusa_ManaShield : public CDOTA_Buff { public: float absorption_pct; // 0x1138 float damage_per_mana; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Medusa_StoneGaze : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Medusa_StoneGaze_Tracker : public CDOTA_Buff { public: int32_t m_nNumStoned; // 0x1138 bool m_bAnyInvisible; // 0x113c }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_Medusa_StoneGaze : public CDOTA_Buff { public: int32_t radius; // 0x1138 float vision_cone; // 0x113c float duration; // 0x1140 int32_t speed_boost; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Medusa_StoneGaze_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Medusa_StoneGaze_Facing : public CDOTA_Buff { public: float face_duration; // 0x1138 float stone_duration; // 0x113c float duration; // 0x1140 float vision_cone; // 0x1144 float m_flAccumulatedTime; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CountdownTimer ctFacing; // 0x1150 bool m_bAlreadyStoned; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0x3]; // 0x1169 public: ParticleIndex_t m_nFXIndex; // 0x116c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Medusa_StoneGaze_Stone : public CDOTA_Buff { public: int32_t bonus_physical_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Medusa_Cold_Blooded : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Medusa_Cold_Blooded : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Troll_Warlord_Rampage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Troll_Warlord_Rampage : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t status_resistance; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_TrollWarlord_BerserkersRage : public CDOTABaseAbility { public: int32_t m_iOriginalAttackCapabilities; // 0x550 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_TrollWarlord_BerserkersRage : public CDOTA_Buff { public: int32_t bonus_move_speed; // 0x1138 int32_t bonus_range; // 0x113c int32_t bonus_hp; // 0x1140 int32_t bonus_armor; // 0x1144 int32_t ensnare_chance; // 0x1148 float ensnare_duration; // 0x114c float base_attack_time; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrollWarlord_BerserkersRage_Ensnare : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TrollWarlord_BerserkersRage_Maim : public CDOTA_Buff { public: int32_t maim_slow; // 0x1138 }; // Alignment: 8 // Size: 0x590 class CDOTA_Ability_TrollWarlord_WhirlingAxes_Ranged : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 int32_t m_iArrowProjectile; // 0x55c int32_t axe_width; // 0x560 float axe_speed; // 0x564 float axe_range; // 0x568 int32_t axe_spread; // 0x56c int32_t axe_count; // 0x570 private: [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 public: CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x578 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TrollWarlord_WhirlingAxes_Slow : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 }; // Alignment: 2 // Size: 0x570 class CDOTA_Ability_TrollWarlord_Whirling_Axes_Melee : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x550 int32_t m_nAxeIdx; // 0x568 }; // Alignment: 16 // Size: 0x11a8 class CDOTA_Modifier_TrollWarlord_Whirling_Axes_Melee : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t hit_radius; // 0x113c int32_t axe_movement_speed; // 0x1140 float whirl_duration; // 0x1144 float max_range; // 0x1148 float blind_duration; // 0x114c float m_flRotation; // 0x1150 float m_flAxeRadius; // 0x1154 GameTime_t m_flDieTime; // 0x1158 float m_bPiercesMagicImmunity; // 0x115c int32_t m_nSwapIndex; // 0x1160 bool m_bReturning; // 0x1164 private: [[maybe_unused]] uint8_t __pad1165[0x3]; // 0x1165 public: ParticleIndex_t m_nAxeFXIndex[2]; // 0x1168 int32_t m_nHeroesHitForRelic; // 0x1170 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CUtlVector< CHandle< CBaseEntity > > hitEntities; // 0x1178 CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x1190 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrollWarlord_Axe_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_TrollWarlord_WhirlingAxes_Blind : public CDOTA_Buff { public: int32_t blind_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_TrollWarlord_Fervor : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_TrollWarlord_Fervor : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t max_stacks; // 0x113c CHandle< CBaseEntity > m_hUnit; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_TrollWarlord_BattleTrance : public CDOTABaseAbility { public: float trance_duration; // 0x550 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_TrollWarlord_BattleTrance : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t attack_speed; // 0x113c int32_t lifesteal; // 0x1140 CHandle< CBaseEntity > m_hTarget; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrollWarlord_BattleTrance_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_TrollWarlord_BattleTrance_Vision : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Centaur_HoofStomp : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Centaur_DoubleEdge : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Centaur_DoubleEdge_Slow : public CDOTA_Buff { public: int32_t shard_movement_slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Centaur_DoubleEdge_Buff : public CDOTA_Buff { public: int32_t shard_str_pct; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Centaur_Return : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Centaur_Return_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Centaur_Return : public CDOTA_Buff { public: int32_t return_damage; // 0x1138 int32_t return_damage_str; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Centaur_Return_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Centaur_Return_Bonus_Damage : public CDOTA_Buff { public: float damage_gain_pct; // 0x1138 }; // Alignment: 8 // Size: 0x588 class CDOTA_Ability_Centaur_Stampede : public CDOTABaseAbility { public: float duration; // 0x550 int32_t base_damage; // 0x554 float strength_damage; // 0x558 float slow_duration; // 0x55c float scepter_bonus_duration; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x568 int32_t m_nHeroesHit; // 0x580 bool m_bHitInvisibleHero; // 0x584 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Centaur_Stampede_Slow : public CDOTA_Buff { public: int32_t cast_time_increase; // 0x1138 int32_t slow_movement_speed; // 0x113c }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Centaur_Stampede : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage_reduction; // 0x113c int32_t has_flying_movement; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1148 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Centaur_Mount : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Centaur_Cart : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hUnit; // 0x1138 bool m_bWasMoving; // 0x113c bool m_bSpawnDone; // 0x113d private: [[maybe_unused]] uint8_t __pad113e[0x2]; // 0x113e public: Vector m_vecOldForward; // 0x1140 int32_t break_distance; // 0x114c Vector m_vecPreviousLocation; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Centaur_Hitched_Into_Cart : public CDOTA_Buff { public: // no members available }; // Alignment: 15 // Size: 0x1188 class CDOTA_Modifier_Centaur_Mount_Toss : public CDOTA_Buff { public: float air_duration; // 0x1138 int32_t air_height; // 0x113c int32_t travel_distance; // 0x1140 CHandle< CBaseEntity > m_hTarget; // 0x1144 float m_flPredictedTotalTime; // 0x1148 Vector m_vStartPosition; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bHorizontalMotionInterrupted; // 0x1160 bool m_bDamageApplied; // 0x1161 bool m_bTargetTeleported; // 0x1162 private: [[maybe_unused]] uint8_t __pad1163[0x1]; // 0x1163 public: Vector m_vHorizontalVelocity; // 0x1164 Vector m_vLastKnownTargetPosition; // 0x1170 float m_flInitialVelocityZ; // 0x117c bool m_bDone; // 0x1180 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Centaur_Mounted : public CDOTA_Buff { public: int32_t melee_attack_range; // 0x1138 CHandle< CBaseEntity > m_hCart; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Centaur_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Magnataur_Horn_Toss : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Magnataur_Horn_Toss : public CDOTA_Buff { public: float air_duration; // 0x1138 int32_t air_height; // 0x113c int32_t travel_distance; // 0x1140 Vector m_vDestination; // 0x1144 float m_flStartZ; // 0x1150 float m_flCurTime; // 0x1154 float m_flJumpDuration; // 0x1158 float m_flJumpHeight; // 0x115c Vector m_vTargetHorizontalDirection; // 0x1160 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Magnataur_Horn_Toss_Slow : public CDOTA_Buff { public: int32_t horn_toss_slow_pct; // 0x1138 }; // Alignment: 3 // Size: 0x590 class CDOTA_Ability_Magnataur_Shockwave : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0xc]; // 0x554 public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x560 CUtlVector< CHandle< CBaseEntity > > hAlreadyHitListScepter; // 0x578 }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Magnataur_Shockwave_Erupt : public CDOTA_Buff { public: int32_t scepter_width; // 0x1138 float scepter_duration; // 0x113c bool play_particle; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: Vector m_vStart; // 0x1144 Vector m_vEnd; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Magnataur_Shockwave : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Magnataur_Shockwave_Eruption_Slow : public CDOTA_Buff { public: int32_t scepter_slow_pct; // 0x1138 int32_t scepter_armor_pct; // 0x113c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Magnataur_Shockwave_Pull : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float pull_duration; // 0x114c float effective_distance; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Magnataur_Empower : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Magnataur_Empower : public CDOTA_Buff { public: int32_t bonus_damage_pct; // 0x1138 float cleave_damage_pct; // 0x113c int32_t cleave_starting_width; // 0x1140 int32_t cleave_ending_width; // 0x1144 int32_t cleave_distance; // 0x1148 float self_multiplier; // 0x114c }; // Alignment: 7 // Size: 0x570 class CDOTA_Ability_Magnataur_Skewer : public CDOTABaseAbility { public: int32_t skewer_radius; // 0x550 int32_t skewer_speed; // 0x554 int32_t range; // 0x558 int32_t tree_radius; // 0x55c int32_t m_nProjectileID; // 0x560 int32_t m_nVisibleTargetCount; // 0x564 int32_t m_nTargetsHit; // 0x568 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Magnataur_Skewer_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Magnataur_Skewer_Impact : public CDOTA_Buff { public: float slow_duration; // 0x1138 int32_t skewer_damage; // 0x113c Vector m_vDirection; // 0x1140 float m_flEndTime; // 0x114c float m_flCurTime; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Magnataur_Skewer_Slow : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 }; // Alignment: 2 // Size: 0x560 class CDOTA_Ability_Magnataur_ReversePolarity : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 Vector m_vPullLocation; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Magnataur_ReversePolarity : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Magnataur_ReversePolarity_Strength : public CDOTA_Buff { public: int32_t strength_per_stack; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Magnus_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Shredder_WhirlingDeath : public CDOTABaseAbility { public: int32_t whirling_radius; // 0x550 int32_t whirling_damage; // 0x554 float whirling_tick; // 0x558 float duration; // 0x55c int32_t tree_damage_scale; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Shredder_WhirlingDeath_Debuff : public CDOTA_Buff { public: int32_t stat_loss_pct; // 0x1138 int32_t iPrimaryAttribute; // 0x113c float flStatLoss; // 0x1140 }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Shredder_TimberChain : public CDOTABaseAbility { public: int32_t chain_radius; // 0x550 ParticleIndex_t m_nFXIndex; // 0x554 Vector m_vProjectileVelocity; // 0x558 bool m_bRetract; // 0x564 }; // Alignment: 6 // Size: 0x1170 class CDOTA_Modifier_Shredder_TimberChain : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hDamaged; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x1150 Vector m_vStartPosition; // 0x1154 int32_t speed; // 0x1160 int32_t radius; // 0x1164 int32_t damage; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shredder_Reactive_Armor : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Shredder_Reactive_Armor : public CDOTA_Buff { public: int32_t stack_limit; // 0x1138 float stack_duration; // 0x113c GameTime_t m_flStackDieTime; // 0x1140 ParticleIndex_t m_pFXIndex[4]; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Shredder_Reactive_Armor_Stack : public CDOTA_Buff { public: float bonus_armor; // 0x1138 float bonus_hp_regen; // 0x113c }; // Alignment: 13 // Size: 0x5a8 class CDOTA_Ability_Shredder_Chakram : public CDOTABaseAbility { public: float radius; // 0x550 float speed; // 0x554 float pass_slow_duration; // 0x558 int32_t pass_damage; // 0x55c Vector m_vEndLocation; // 0x560 float m_fZCoord; // 0x56c bool m_bIsReturning; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: ParticleIndex_t m_nFXIndex; // 0x574 ParticleIndex_t m_nFXIndexB; // 0x578 ParticleIndex_t m_nFXIndexC; // 0x57c int32_t m_nProjectileIndex; // 0x580 CHandle< CBaseEntity > m_hThinker; // 0x584 CUtlVector< CHandle< CBaseEntity > > m_hReturnHits; // 0x588 }; // Alignment: 0 // Size: 0x5a8 class CDOTA_Ability_Shredder_ChakramAlias_shredder_chakram_2 : public CDOTA_Ability_Shredder_Chakram { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Shredder_Chakram_Thinker : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 float mana_per_second; // 0x113c float radius; // 0x1140 float break_distance; // 0x1144 float damage_interval; // 0x1148 int32_t scepter_bonus_damage; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Shredder_Chakram_Debuff : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t slow_health_percentage; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Shredder_Chakram_Debuff_2 : public CDOTA_Modifier_Shredder_Chakram_Debuff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shredder_ReturnChakram : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shredder_ReturnChakramAlias_shredder_return_chakram_2 : public CDOTA_Ability_Shredder_ReturnChakram { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Shredder_Chakram_Disarm : public CDOTA_Modifier_Disarmed { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Shredder_Flamethrower : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Shredder_Flamethrower_TreeFire_Thinker : public CDOTA_Buff { public: CUtlVector< CUtlPair< CHandle< CBaseEntity >, GameTime_t > > m_vecTreeFires; // 0x1138 bool m_bCleanupWhenEmpty; // 0x1150 }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Shredder_Flamethrower : public CDOTA_Buff { public: int32_t length; // 0x1138 int32_t width; // 0x113c int32_t damage_per_second; // 0x1140 ParticleIndex_t m_nBeamFXIndex; // 0x1144 CHandle< CBaseEntity > m_hBeamEnd; // 0x1148 GameTime_t m_flLastHit; // 0x114c CUtlVector< CBaseEntity* > m_vecBurningTrees; // 0x1150 CHandle< CBaseEntity > m_hTreeFireThinker; // 0x1168 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Shredder_Flamethrower_Damage : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nActiveFXIndex; // 0x113c ParticleIndex_t m_nActiveStatusFXIndex; // 0x1140 float damage_per_second; // 0x1144 int32_t building_dmg_pct; // 0x1148 int32_t move_slow_pct; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bristleback_ViscousNasalGoo : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Bristleback_ViscousNasalGoo : public CDOTA_Buff { public: float base_armor; // 0x1138 float armor_per_stack; // 0x113c int32_t base_move_slow; // 0x1140 int32_t move_slow_per_stack; // 0x1144 int32_t stack_limit; // 0x1148 ParticleIndex_t m_nFXStackIndex; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bristleback_QuillSpray : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bristleback_QuillSpray_AutoCast : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Bristleback_QuillSpray_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 CountdownTimer m_ViewerTimer; // 0x1158 int32_t projectile_speed; // 0x1170 int32_t radius; // 0x1174 bool m_bTriggeredByBristleback; // 0x1178 bool m_bDelayed; // 0x1179 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Bristleback_QuillSpray : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bristleback_QuillSprayStack : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bristleback_Bristleback : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Bristleback_Bristleback : public CDOTA_Buff { public: int32_t side_damage_reduction; // 0x1138 int32_t back_damage_reduction; // 0x113c int32_t side_angle; // 0x1140 int32_t back_angle; // 0x1144 float quill_release_threshold; // 0x1148 bool m_bRearHit; // 0x114c bool m_bSideHit; // 0x114d private: [[maybe_unused]] uint8_t __pad114e[0x2]; // 0x114e public: float m_flDamageAccumulated; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bristleback_Warpath : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Bristleback_Warpath : public CDOTA_Buff { public: int32_t damage_per_stack; // 0x1138 int32_t move_speed_per_stack; // 0x113c int32_t max_stacks; // 0x1140 float stack_duration; // 0x1144 float m_flDuration; // 0x1148 GameTime_t m_flMaxStackStartTime; // 0x114c bool m_bSuppressKillEater; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Bristleback_Warpath_Stack : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Bristleback_Hairball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tusk_IceShards_Stop : public CDOTABaseAbility { public: // no members available }; // Alignment: 13 // Size: 0x5c0 class CDOTA_Ability_Tusk_IceShards : public CDOTABaseAbility { public: int32_t m_iProjectile; // 0x550 int32_t shard_width; // 0x554 int32_t shard_damage; // 0x558 int32_t shard_count; // 0x55c float shard_speed; // 0x560 float shard_duration; // 0x564 float shard_angle_step; // 0x568 int32_t shard_distance; // 0x56c Vector m_vSpawnOrigin; // 0x570 Vector m_vDirection; // 0x57c CUtlVector< CHandle< CBaseEntity > > m_vecShards; // 0x588 private: [[maybe_unused]] uint8_t __pad05a0[0x8]; // 0x5a0 public: CDOTABaseAbility* m_pIceShardsStop; // 0x5a8 private: [[maybe_unused]] uint8_t __pad05b0[0x8]; // 0x5b0 public: ParticleIndex_t m_nFXIndex; // 0x5b8 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_IceShard_Slow_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_IceShard : public CDOTA_Buff { public: // no members available }; // Alignment: 21 // Size: 0x670 class CDOTA_Ability_Tusk_Snowball : public CDOTABaseAbility { public: int32_t snowball_windup_radius; // 0x560 int32_t snowball_radius; // 0x564 int32_t snowball_grow_rate; // 0x568 int32_t snowball_damage; // 0x56c int32_t snowball_damage_bonus; // 0x570 float stun_duration; // 0x574 int32_t bonus_damage; // 0x578 float bonus_stun; // 0x57c int32_t snowball_speed; // 0x580 int32_t snowball_speed_bonus; // 0x584 float snowball_duration; // 0x588 Vector m_vProjectileLocation; // 0x58c CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x598 ParticleIndex_t m_nFXIndex; // 0x5b0 private: [[maybe_unused]] uint8_t __pad05b4[0x4]; // 0x5b4 public: CountdownTimer ctSnowball; // 0x5b8 bool m_bSpeakAlly; // 0x5d0 bool m_bIsExpired; // 0x5d1 bool m_bInWindup; // 0x5d2 private: [[maybe_unused]] uint8_t __pad05d3[0x1]; // 0x5d3 public: CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5d4 int32_t m_nContainedValidUnits; // 0x5d8 bool m_bEndingSnowball; // 0x5dc }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_Snowball_Target : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tusk_Launch_Snowball : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_Snowball_Visible : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_Snowball_Movement : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tusk_Snowball_Movement_Friendly : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tusk_FrozenSigil : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tusk_FrozenSigil_Aura : public CDOTA_Buff { public: int32_t sigil_radius; // 0x1138 ParticleIndex_t m_iIndex; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Tusk_FrozenSigil : public CDOTA_Buff { public: int32_t aghs_shard_move_slow; // 0x1138 int32_t aghs_shard_damage; // 0x113c int32_t attack_slow; // 0x1140 int32_t turn_rate_slow; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tusk_WalrusPunch : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_Tusk_WalrusPunch : public CDOTA_Buff { public: int32_t crit_multiplier; // 0x1138 float air_time; // 0x113c float slow_duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1148 CHandle< CBaseEntity > m_hTarget; // 0x1150 bool m_bWalrusPunch; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 ParticleIndex_t m_nFXIndex; // 0x1170 int32_t m_nAttackRecord; // 0x1174 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tusk_WalrusPunch_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Tusk_WalrusPunch_AirTime : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float m_flEndTime; // 0x1164 float air_time; // 0x1168 }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Tusk_WalrusKick : public CDOTABaseAbility { public: ParticleIndex_t m_nTargetFXIndex; // 0x550 Vector m_vEndpoint; // 0x554 int32_t landing_radius; // 0x560 int32_t push_length; // 0x564 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tusk_WalrusKick_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Tusk_WalrusKick_AirTime : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float m_flEndTime; // 0x1164 int32_t push_length; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Tusk_Tag_Team : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tusk_Tag_Team_Aura : public CDOTA_Buff { public: ParticleIndex_t m_iIndex; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tusk_Tag_Team : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 float slow_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tusk_Tag_Team_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Skywrath_Mage_Shield_Of_The_Scion : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Skywrath_Mage_Shard : public CDOTA_Buff { public: float stack_duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Skywrath_Mage_Shard_Bonus : public CDOTA_Buff { public: int32_t bonus_intelligence; // 0x1138 float bonus_armor; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Skywrath_Mage_Shard_Bonus_Counter : public CDOTA_Buff { public: int32_t bonus_intelligence; // 0x1138 float bonus_armor; // 0x113c }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Skywrath_Mage_Arcane_Bolt : public CDOTABaseAbility { public: int32_t bolt_vision; // 0x550 float vision_duration; // 0x554 float m_flDamage; // 0x558 int32_t m_nFXIndex; // 0x55c }; // Alignment: 6 // Size: 0x568 class CDOTA_Ability_Skywrath_Mage_Concussive_Shot : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t slow_radius; // 0x554 int32_t damage; // 0x558 int32_t shot_vision; // 0x55c float slow_duration; // 0x560 float vision_duration; // 0x564 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Skywrath_Mage_Concussive_Shot : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Skywrath_Mage_Ancient_Seal : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Skywrath_Mage_Ancient_Seal : public CDOTA_Buff { public: int32_t resist_debuff; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Skywrath_Mage_Mystic_Flare : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Skywrath_Mage_Mystic_Flare : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage; // 0x113c float duration; // 0x1140 float damage_interval; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Skywrath_Mystic_Flare_Aura_Effect : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Skywrath_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Abaddon_DeathCoil : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Abaddon_AphoticShield : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Abaddon_AphoticShield : public CDOTA_Buff { public: int32_t radius; // 0x1138 float damage_absorb; // 0x113c int32_t m_flDamageAbsorbed; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Abaddon_Frostmourne : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Abaddon_Frostmourne : public CDOTA_Buff { public: float slow_duration; // 0x1138 float curse_duration; // 0x113c int32_t hit_count; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Abaddon_Frostmourne_Debuff : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 ParticleIndex_t m_nFXStackIndex; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Abaddon_Frostmourne_Debuff_Bonus : public CDOTA_Buff { public: int32_t curse_slow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Abaddon_Frostmourne_Buff : public CDOTA_Buff { public: int32_t curse_attack_speed; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Abaddon_BorrowedTime : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Abaddon_BorrowedTime : public CDOTA_Buff { public: int32_t m_iTotalDamageAbsorbed; // 0x1138 int32_t redirect_range_scepter; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Abaddon_BorrowedTime_Passive : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Abaddon_Borrowed_Time_Damage_Redirect : public CDOTA_Buff { public: float m_fDamageTaken; // 0x1138 int32_t ally_threshold_scepter; // 0x113c }; // Alignment: 10 // Size: 0x580 class CDOTA_Ability_Elder_Titan_AncestralSpirit : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t radius; // 0x554 float buff_duration; // 0x558 float spirit_duration; // 0x55c int32_t m_nCreepsHit; // 0x560 int32_t m_nHeroesHit; // 0x564 bool m_bIsReturning; // 0x568 private: [[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569 public: CHandle< CBaseEntity > m_hAncestralSpirit; // 0x56c ParticleIndex_t m_nReturnFXIndex; // 0x570 private: [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 public: CUtlString m_strMoveSpiritSwapAbility; // 0x578 }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_Elder_Titan_AncestralSpirit : public CDOTA_Buff { public: int32_t pass_damage; // 0x1138 int32_t radius; // 0x113c int32_t m_nCreepsHit; // 0x1140 int32_t m_nHeroesHit; // 0x1144 float m_flSpeed; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x1150 int32_t m_nBonusMoveSpeed; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Elder_Titan_MoveSpirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Elder_Titan_ReturnSpirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 13 // Size: 0x1170 class CDOTA_Modifier_Elder_Titan_AncestralSpirit_Buff : public CDOTA_Buff { public: float move_pct_creeps; // 0x1138 int32_t move_pct_heroes; // 0x113c int32_t damage_creeps; // 0x1140 int32_t damage_heroes; // 0x1144 float armor_creeps; // 0x1148 float armor_heroes; // 0x114c float move_pct_cap; // 0x1150 int32_t m_nCreepsHit; // 0x1154 int32_t m_nHeroesHit; // 0x1158 float m_fSpeedPercentage; // 0x115c int32_t m_nDamage; // 0x1160 int32_t m_nArmor; // 0x1164 bool m_bSpellImmunity; // 0x1168 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Elder_Titan_4 : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Elder_Titan_AncestralSpirit_Hidden : public CDOTA_Buff { public: // no members available }; // Alignment: 11 // Size: 0x5a8 class CDOTA_Ability_Elder_Titan_EchoStomp : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndexTitan; // 0x550 ParticleIndex_t m_nFXIndexSpirit; // 0x554 ParticleIndex_t m_nFXIndexTitanB; // 0x558 ParticleIndex_t m_nFXIndexSpiritB; // 0x55c int32_t radius; // 0x560 int32_t stomp_damage; // 0x564 float sleep_duration; // 0x568 float cast_time; // 0x56c CUtlVector< CHandle< CBaseEntity > > m_vecStompedHeroes; // 0x570 CUtlVector< CHandle< CBaseEntity > > m_vecStompedHeroes_BuffCounted; // 0x588 bool m_bStompedInvisibleHero; // 0x5a0 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Elder_Titan_EchoStomp_Spirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Elder_Titan_AncestralSpirit_CastTime : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_EchoStomp_Magic_Immune : public CDOTA_Modifier_MagicImmune { public: int32_t model_scale; // 0x1138 }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_Elder_Titan_EchoStomp : public CDOTA_Buff { public: int32_t wake_damage_limit; // 0x1138 float animation_rate; // 0x113c float initial_stun_duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CountdownTimer ctStunTimer; // 0x1148 float m_flDamageTaken; // 0x1160 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Elder_Titan_NaturalOrder : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Elder_Titan_NaturalOrder_Spirit : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_NaturalOrder_Aura_Armor : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_NaturalOrder_Aura_MagicResistance : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_NaturalOrder_Armor : public CDOTA_Buff { public: int32_t armor_reduction_pct; // 0x1138 float m_flArmorReduction; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_NaturalOrder_MagicResistance : public CDOTA_Buff { public: int32_t magic_resistance_pct; // 0x1138 }; // Alignment: 13 // Size: 0x11a0 class CDOTA_Modifier_Elder_Titan_EarthSplitter_Caster : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x1138 int32_t vision_width; // 0x1150 float vision_interval; // 0x1154 float vision_duration; // 0x1158 int32_t vision_step; // 0x115c int32_t total_steps; // 0x1160 int32_t m_nCompletedSteps; // 0x1164 Vector m_vStart; // 0x1168 Vector m_vEnd; // 0x1174 Vector m_vNextVisionLocation; // 0x1180 Vector m_vCastDirection; // 0x118c int32_t m_nHumHeroesHit; // 0x1198 bool m_bHitInvisibleHero; // 0x119c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Elder_Titan_EarthSplitter_Thinker : public CDOTA_Buff { public: int32_t crack_width; // 0x1138 int32_t damage_pct; // 0x113c float slow_duration; // 0x1140 float slow_duration_scepter; // 0x1144 CDOTA_Buff* m_pParentModifier; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_EarthSplitter : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Elder_Titan_EarthSplitterScepter : public CDOTA_Modifier_Elder_Titan_EarthSplitter { public: // no members available }; // Alignment: 5 // Size: 0x570 class CDOTA_Ability_Elder_Titan_EarthSplitter : public CDOTABaseAbility { public: int32_t crack_width; // 0x550 int32_t crack_distance; // 0x554 int32_t speed; // 0x558 int32_t vision_width; // 0x55c float crack_time; // 0x560 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Legion_Commander_OverwhelmingOdds : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Legion_Commander_OverwhelmingOdds_Armor : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Legion_Commander_OverwhelmingOdds : public CDOTA_Buff { public: int32_t bonus_speed_creeps; // 0x1138 int32_t bonus_speed_heroes; // 0x113c float armor_per_creep; // 0x1140 float armor_per_hero; // 0x1144 int32_t m_nTotalBonus; // 0x1148 float m_flBonusArmor; // 0x114c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Legion_Commander_PressTheAttack : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Legion_Commander_PressTheAttack_Immunity : public CDOTA_Modifier_MagicImmune { public: int32_t model_scale; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Legion_Commander_PressTheAttack : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t hp_regen; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Legion_Commander_MomentOfCourage : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Legion_Commander_MomentOfCourage : public CDOTA_Buff { public: int32_t trigger_chance; // 0x1138 float buff_duration; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Legion_Commander_MomentOfCourage_Lifesteal : public CDOTA_Buff { public: int32_t hp_leech_percent; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Legion_Commander_Duel : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Legion_Commander_Duel_DamageBoost : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Holdout_GladiatorsUnite : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Holdout_GladiatorsUnite_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Holdout_GladiatorsUnite : public CDOTA_Buff { public: int32_t bonus_armor_per_hero; // 0x1138 int32_t bonus_damage_per_hero; // 0x113c int32_t lifesteal_per_hero; // 0x1140 int32_t scepter_damage_reduction_pct; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Techies_Suicide_RespawnTime : public CDOTA_Buff { public: int32_t m_nSuicideKillCount; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_LandMines_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Techies_ReactiveTazer : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Techies_ReactiveTazer : public CDOTA_Buff { public: int32_t bonus_ms; // 0x1140 int32_t stun_radius; // 0x1144 float stun_duration; // 0x1148 int32_t damage_percent; // 0x114c int32_t m_nDamageRemaining; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_ReactiveTazer_Disarm : public CDOTA_Modifier_Disarmed { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Techies_StickyBomb : public CDOTABaseAbility { public: // no members available }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_Techies_StickyBombThrow : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 float m_flPredictedTotalTime; // 0x113c Vector m_vStartPosition; // 0x1140 float m_flCurrentTimeHoriz; // 0x114c float m_flCurrentTimeVert; // 0x1150 bool m_bHorizontalMotionInterrupted; // 0x1154 bool m_bDamageApplied; // 0x1155 bool m_bTargetTeleported; // 0x1156 private: [[maybe_unused]] uint8_t __pad1157[0x1]; // 0x1157 public: Vector m_vHorizontalVelocity; // 0x1158 Vector m_vLastKnownTargetPosition; // 0x1164 float m_flInitialVelocityZ; // 0x1170 bool m_bDone; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: int32_t radius; // 0x1178 }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_Techies_StickyBomb_Chase : public CDOTA_Buff { public: int32_t acceleration; // 0x1138 int32_t m_nTeamNumber; // 0x113c float speed; // 0x1140 float pre_chase_time; // 0x1144 CHandle< CBaseEntity > m_hAttachTarget; // 0x1148 Vector m_vStartPosition; // 0x114c CountdownTimer m_MoveTime; // 0x1158 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Techies_StickyBomb_Countdown : public CDOTA_Buff { public: Vector m_vLastLoc; // 0x1138 CHandle< CBaseEntity > m_hAttachTarget; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Techies_StickyBomb_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Techies_StickyBomb_Slow_Secondary : public CDOTA_Buff { public: int32_t secondary_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Techies_LandMines : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Techies_LandMine : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 float proximity_threshold; // 0x114c float damage; // 0x1150 float activation_delay; // 0x1154 float outer_damage; // 0x1158 int32_t min_distance; // 0x115c bool bActivated; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x7]; // 0x1161 public: CountdownTimer m_Timer; // 0x1168 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Techies_LandMine_Burn : public CDOTA_Buff { public: int32_t mres_reduction; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Techies_StasisTrap : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 CHandle< CBaseEntity > m_hTrap; // 0x554 }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Techies_StasisTrap : public CDOTA_Modifier_Invisible { public: int32_t activation_radius; // 0x1148 int32_t stun_radius; // 0x114c float stun_duration; // 0x1150 float explode_delay; // 0x1154 float activation_time; // 0x1158 bool m_bActivated; // 0x115c bool m_bTriggered; // 0x115d }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_StasisTrap_Stunned : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Techies_Suicide : public CDOTABaseAbility { public: uint32_t m_unSuicideKills; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_Suicide_Leap_Animation : public CDOTA_Modifier_Disarmed { public: // no members available }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Techies_Suicide_Leap : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bDamageApplied; // 0x115d bool m_bTargetTeleported; // 0x115e private: [[maybe_unused]] uint8_t __pad115f[0x1]; // 0x115f public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Techies_RemoteMines : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 CHandle< CBaseEntity > m_hRMine; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_DeployRemoteMine : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x1168 class CDOTA_Modifier_Techies_RemoteMine : public CDOTA_Modifier_Invisible { public: int32_t radius; // 0x1148 int32_t damage; // 0x114c int32_t radius_scepter; // 0x1150 int32_t damage_scepter; // 0x1154 int32_t vision_radius; // 0x1158 float vision_duration; // 0x115c int32_t model_scale; // 0x1160 bool bExploding; // 0x1164 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Techies_FocusedDetonate : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Techies_RemoteMines_SelfDetonate : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Techies_Minefield_Sign : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 int32_t aura_radius; // 0x554 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Techies_Minefield_Sign_Thinker : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_Minefield_Sign_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Techies_Arcana_DamageListener : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_EmberSpirit_SearingChains : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_EmberSpirit_SearingChains : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 float tick_interval; // 0x113c float tick_damage; // 0x1140 float duration; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_SlightOfFist_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 4 // Size: 0x580 class CDOTA_Ability_EmberSpirit_SleightOfFist : public CDOTABaseAbility { public: Vector m_vCastLoc; // 0x550 int32_t m_nHeroesKilled; // 0x55c CUtlVector< CHandle< CBaseEntity > > m_hAttackEntities; // 0x560 ParticleIndex_t m_nFXMarkerIndex; // 0x578 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_SleightOfFist_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_SleightOfFist_InProgress : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_EmberSpirit_SleightOfFist_Caster : public CDOTA_Buff { public: int32_t bonus_hero_damage; // 0x1138 int32_t creep_damage_penalty; // 0x113c int32_t radius; // 0x1140 float attack_interval; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_SleightOfFist_Caster_Invulnerability : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_EmberSpirit_FlameGuard : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_EmberSpirit_FlameGuard : public CDOTA_Buff { public: int32_t absorb_amount; // 0x1138 int32_t damage_per_second; // 0x113c int32_t radius; // 0x1140 float tick_interval; // 0x1144 int32_t shield_pct_absorb; // 0x1148 int32_t m_nAbsorbRemaining; // 0x114c float m_flShowParticleInterval; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EmberSpirit_FlameGuard_Debuff : public CDOTA_Buff { public: int32_t blind_pct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_FireRemnant_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_EmberSpirit_FireRemnant : public CDOTABaseAbility { public: CUtlVector< RemnantData_t > m_vRemnantData; // 0x550 }; // Alignment: 3 // Size: 0x1170 class CDOTA_Modifier_EmberSpirit_FireRemnant_RemnantTracker : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_vActiveRemnants; // 0x1138 CUtlVector< CHandle< CBaseEntity > > m_vTrackingDelayedRemnants; // 0x1150 int32_t shard_charge_radius; // 0x1168 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_EmberSpirit_FireRemnantThinker : public CDOTA_Buff { public: int32_t m_nProjectileHandle; // 0x1138 bool m_bIsShardRemnant; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EmberSpirit_FireRemnant_Shard : public CDOTA_Buff { public: int32_t shard_radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EmberSpirit_FireRemnant_Shard_Debuff : public CDOTA_Buff { public: int32_t shard_damage_per_second; // 0x1138 }; // Alignment: 7 // Size: 0x5a8 class CDOTA_Ability_EmberSpirit_Activate_FireRemnant : public CDOTABaseAbility { public: int32_t m_nProjectileID; // 0x560 Vector m_vStartLocation; // 0x564 Vector m_vProjectileLocation; // 0x570 QAngle m_ProjectileAngles; // 0x57c CHandle< CBaseEntity > m_hRemnantToKill; // 0x588 bool m_bProjectileStarted; // 0x58c private: [[maybe_unused]] uint8_t __pad058d[0x3]; // 0x58d public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x590 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_FireRemnant_Timer : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EmberSpirit_FireRemnant : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Earth_Spirit_StoneCaller_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 18 // Size: 0x5d0 class CDOTA_Ability_EarthSpirit_RollingBoulder : public CDOTABaseAbility { public: int32_t radius; // 0x560 int32_t speed; // 0x564 int32_t rock_speed; // 0x568 int32_t damage; // 0x56c int32_t damage_str; // 0x570 float distance; // 0x574 float rock_distance; // 0x578 float rock_distance_multiplier; // 0x57c float slow_duration; // 0x580 ParticleIndex_t m_nFXIndex; // 0x584 bool m_boulderSetposBool; // 0x588 private: [[maybe_unused]] uint8_t __pad0589[0x3]; // 0x589 public: int32_t m_nProjectileID; // 0x58c Vector m_vStartingLocation; // 0x590 Vector m_vProjectileLocation; // 0x59c Vector m_vDir; // 0x5a8 Vector m_vVel; // 0x5b4 bool m_bUsedStone; // 0x5c0 private: [[maybe_unused]] uint8_t __pad05c1[0x3]; // 0x5c1 public: Vector m_vRollDirection; // 0x5c4 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_EarthSpirit_RollingBoulder_Caster : public CDOTA_Buff { public: Vector m_vDir; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_EarthSpirit_StoneCaller : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_EarthSpirit_StoneThinker : public CDOTA_Buff { public: int32_t vision_radius; // 0x1138 bool m_bHasBeenMagnetized; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 11 // Size: 0x580 class CDOTA_Ability_EarthSpirit_BoulderSmash : public CDOTABaseAbility { public: int32_t speed; // 0x550 int32_t rock_damage; // 0x554 int32_t radius; // 0x558 int32_t rock_search_aoe; // 0x55c float unit_distance; // 0x560 float rock_distance; // 0x564 int32_t m_nProjectileID; // 0x568 CHandle< CBaseEntity > m_hCursorTarget; // 0x56c bool m_bUsedStone; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: CHandle< CBaseEntity > m_hTarget; // 0x574 bool m_bTargetStone; // 0x578 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_EarthSpirit_BoulderSmash : public CDOTA_Buff { public: bool m_bInterrupted; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t m_nProjectileID; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EarthSpirit_Boulder_Smash_Debuff : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EarthSpirit_Geogmagnetic_Grip_Debuff : public CDOTA_Modifier_Silence { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_EarthSpirit_GeomagneticGrip : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 10 // Size: 0x1188 class CDOTA_Modifier_EarthSpirit_GeomagneticGrip : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t rock_damage; // 0x113c float pull_units_per_second; // 0x1140 float pull_units_per_second_heroes; // 0x1144 float total_pull_distance; // 0x1148 float duration; // 0x114c bool m_bUsedStone; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: Vector m_vDestination; // 0x1154 Vector m_vLocation; // 0x1160 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1170 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_EarthSpirit_Petrify : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 bool m_bHasBeenMagnetized; // 0x113c }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_EarthSpirit_Magnetize : public CDOTABaseAbility { public: int32_t cast_radius; // 0x550 int32_t rock_explosion_radius; // 0x554 float damage_duration; // 0x558 }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_EarthSpirit_Magnetize : public CDOTA_Buff { public: int32_t rock_search_radius; // 0x1138 int32_t damage_per_second; // 0x113c float damage_interval; // 0x1140 float rock_explosion_delay; // 0x1144 float damage_duration; // 0x1148 int32_t cast_radius; // 0x114c int32_t rock_explosion_radius; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_hExplodedRocks; // 0x1158 float duration; // 0x1170 bool m_bShowOverhead; // 0x1174 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_EarthSpirit_Petrify : public CDOTABaseAbility { public: int32_t ally_cast_range; // 0x550 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_EarthSpirit_Polarization : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 float damage_interval; // 0x113c float damage_duration; // 0x1140 int32_t rock_search_radius; // 0x1144 CHandle< CBaseEntity > m_hMagnetizeAbility; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_EarthSpirit_Polarization_Damage_Timer : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AbyssalUnderlord_Firestorm : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AbyssalUnderlord_Firestorm_Thinker : public CDOTA_Buff { public: int32_t wave_damage; // 0x1138 int32_t wave_count; // 0x113c int32_t radius; // 0x1140 float wave_interval; // 0x1144 float burn_duration; // 0x1148 float burn_interval; // 0x114c float first_wave_delay; // 0x1150 float building_damage; // 0x1154 CHandle< CBaseEntity > m_hTarget; // 0x1158 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AbyssalUnderlord_Firestorm_Burn : public CDOTA_Buff { public: float burn_damage; // 0x1138 float burn_interval; // 0x113c float building_damage; // 0x1140 }; // Alignment: 1 // Size: 0x560 class CDOTA_Ability_AbyssalUnderlord_PitOfMalice : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Thinker : public CDOTA_Buff { public: int32_t pit_damage; // 0x1138 int32_t radius; // 0x113c float pit_interval; // 0x1140 float ensnare_duration; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Ensnare : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Slow : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Buff_Placer : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AbyssalUnderlord_AtrophyAura : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Effect : public CDOTA_Buff { public: int32_t damage_reduction_pct; // 0x1138 float bonus_damage_duration; // 0x113c int32_t bonus_damage_from_creep; // 0x1140 int32_t bonus_damage_from_hero; // 0x1144 bool m_bWasHidden; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_HeroDmgBuff : public CDOTA_Buff { public: int32_t bonus_damage_from_hero; // 0x1138 float bonus_shared_by_allies_pct; // 0x113c float m_flModifier; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Permanent_HeroDmgBuff : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_CreepDmgBuff : public CDOTA_Buff { public: int32_t bonus_damage_from_creep; // 0x1138 float bonus_shared_by_allies_pct; // 0x113c float m_flModifier; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_DmgBuffCounter : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Scepter : public CDOTA_Buff { public: int32_t bonus_damage_from_creep; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_AbyssalUnderlord_DarkRift : public CDOTABaseAbility { public: float teleport_delay; // 0x550 CHandle< CBaseEntity > m_hTeleportTarget; // 0x554 }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_AbyssalUnderlord_DarkRift : public CDOTA_Buff { public: ParticleIndex_t m_nfxTargetTp; // 0x1138 int32_t radius; // 0x113c int32_t duration; // 0x1140 ParticleIndex_t m_nfxAmbientFx; // 0x1144 bool bPointTarget; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: Vector vDestination; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AbyssalUnderlord_DarkRift_Bonus_Health : public CDOTA_Buff { public: int32_t scepter_health_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_AbyssalUnderlord_Cancel_DarkRift : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Underlord_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AbyssalUnderlord_Portal_Warp : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Underlord_Portal_FX : public CDOTA_Buff { public: ParticleIndex_t m_nPortalAmbientFX; // 0x1138 float m_fPortalRadius; // 0x113c ParticleIndex_t m_nChannelFX; // 0x1140 int32_t m_nChannelCount; // 0x1144 ParticleIndex_t m_nCountdownFX; // 0x1148 }; // Alignment: 12 // Size: 0x1178 class CDOTA_Modifier_Underlord_Portal_Warp_Channel : public CDOTA_Buff { public: ParticleIndex_t m_nfxTargetTp; // 0x1138 ParticleIndex_t m_nfxTargetTp2; // 0x113c ParticleIndex_t m_nfxAmbientFx; // 0x1140 ParticleIndex_t m_nfxPortal1; // 0x1144 ParticleIndex_t m_nfxPortal2; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x8]; // 0x114c public: CHandle< CBaseEntity > m_hPortal; // 0x1154 CHandle< CBaseEntity > m_hOtherPortal; // 0x1158 Vector m_vStartPosition; // 0x115c float m_flTotalTime; // 0x1168 float m_flElapsedTimePortion; // 0x116c float animation_rate; // 0x1170 int32_t stop_distance; // 0x1174 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Underlord_Portal_Buff : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 int32_t bonus_ms; // 0x113c }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_AbyssalUnderlord_Dark_Portal : public CDOTABaseAbility { public: float duration; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Underlord_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Terrorblade_Reflection : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Terrorblade_Reflection_Invulnerability : public CDOTA_Modifier_Invulnerable { public: CHandle< CBaseEntity > hTarget; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Terrorblade_Reflection_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Terrorblade_ConjureImage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Terrorblade_ConjureImage : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Terrorblade_Metamorphosis : public CDOTABaseAbility { public: bool m_bBlockMetamorph; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Terrorblade_Demon_Zeal : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Terrorblade_Demon_Zeal : public CDOTA_Buff { public: int32_t berserk_bonus_attack_speed; // 0x1138 int32_t berserk_bonus_movement_speed; // 0x113c int32_t melee_bonus; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Terrorblade_Terror_Wave : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Terrorblade_Fear : public CDOTA_Buff { public: Vector m_vOriginal; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform_Aura_Applier : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_Terrorblade_Metamorphosis : public CDOTA_Buff { public: float base_attack_time; // 0x1138 int32_t bonus_range; // 0x113c int32_t m_iOriginalAttackCapabilities; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t speed_loss; // 0x1148 int32_t attack_projectile_speed_bonus; // 0x114c CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1150 CUtlSymbolLarge m_iszOriginalRangedAttackEffect; // 0x1158 }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Terrorblade_Metamorphosis_Fear_Thinker : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1148 int32_t scepter_speed; // 0x1160 int32_t scepter_radius; // 0x1164 bool m_bFirstThink; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Terrorblade_Sunder : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Terrorblade_Arcana_Kill_Effect : public CDOTA_Buff { public: bool m_bFrozen; // 0x1138 bool m_bFlail; // 0x1139 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Phoenix_SunRay : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Phoenix_SunRayStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Phoenix_SunRayVision : public CDOTA_Buff { public: // no members available }; // Alignment: 21 // Size: 0x11a8 class CDOTA_Modifier_Phoenix_SunRay : public CDOTA_Buff { public: int32_t hp_cost_perc_per_second; // 0x1138 int32_t beam_range; // 0x113c int32_t base_damage; // 0x1140 int32_t base_heal; // 0x1144 float tick_interval; // 0x1148 float forward_move_speed; // 0x114c float turn_rate_initial; // 0x1150 float turn_rate; // 0x1154 int32_t radius; // 0x1158 float m_flCurrentTime; // 0x115c float m_flAccumulatedSelfDamage; // 0x1160 bool m_bMovingForward; // 0x1164 bool m_bTurningFast; // 0x1165 private: [[maybe_unused]] uint8_t __pad1166[0x2]; // 0x1166 public: float m_flFacingTarget; // 0x1168 float hp_perc_damage; // 0x116c float hp_perc_heal; // 0x1170 ParticleIndex_t m_nBeamFXIndex; // 0x1174 CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1178 CHandle< CBaseEntity > m_hBeamEnd; // 0x1198 bool m_bCreatedVisionThinkers; // 0x119c private: [[maybe_unused]] uint8_t __pad119d[0x3]; // 0x119d public: CHandle< CBaseEntity > m_hBeamEndSound; // 0x11a0 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Phoenix_Sun_Ray_Slow : public CDOTA_Buff { public: int32_t shard_move_slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Phoenix_SunRayToggleMove : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Phoenix_IcarusDive : public CDOTABaseAbility { public: int32_t hp_cost_perc; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Phoenix_IcarusDiveStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 11 // Size: 0x1198 class CDOTA_Modifier_Phoenix_IcarusDive : public CDOTA_Buff { public: Vector m_vSource; // 0x1138 Vector m_vTarget; // 0x1144 Vector m_vDirection; // 0x1150 QAngle m_angDirection; // 0x115c float m_flCurrentTime; // 0x1168 int32_t dash_length; // 0x116c int32_t dash_width; // 0x1170 int32_t hit_radius; // 0x1174 float burn_duration; // 0x1178 float dive_duration; // 0x117c CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1180 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Phoenix_IcarusDiveBurn : public CDOTA_Buff { public: float burn_tick_interval; // 0x1138 int32_t damage_per_second; // 0x113c int32_t slow_movement_speed_pct; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Phoenix_FireSpirits : public CDOTABaseAbility { public: int32_t hp_cost_perc; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Phoenix_FireSpiritCount : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Phoenix_LaunchFireSpirit : public CDOTABaseAbility { public: int32_t spirit_speed; // 0x550 float duration; // 0x554 int32_t radius; // 0x558 int32_t hp_cost_perc; // 0x55c ParticleIndex_t m_nFXIndex; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Phoenix_FireSpiritBurn : public CDOTA_Buff { public: float tick_interval; // 0x1138 int32_t attackspeed_slow; // 0x113c int32_t damage_per_second; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Phoenix_Supernova : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Phoenix_SupernovaHiding : public CDOTA_Buff { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Phoenix_Sun : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 float stun_duration; // 0x113c int32_t max_hero_attacks; // 0x1140 int32_t max_hero_attacks_scepter; // 0x1144 int32_t max_hero_attacks_required; // 0x1148 CHandle< CBaseEntity > m_hSecondaryTarget; // 0x114c int32_t m_iAttackCount; // 0x1150 int32_t creep_attacks_count; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Phoenix_Sun_Debuff : public CDOTA_Buff { public: int32_t damage_per_sec; // 0x1138 }; // Alignment: 11 // Size: 0x580 class CDOTA_Ability_Oracle_FortunesEnd : public CDOTABaseAbility { public: int32_t damage; // 0x550 int32_t radius; // 0x554 int32_t bolt_speed; // 0x558 float maximum_purge_duration; // 0x55c float minimum_purge_duration; // 0x560 GameTime_t m_flStartTime; // 0x564 float m_flDuration; // 0x568 float m_flDamage; // 0x56c bool m_bAbsorbed; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: CHandle< CBaseEntity > m_hTarget; // 0x574 ParticleIndex_t m_nFXIndex; // 0x578 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Oracle_FortunesEndChannelTarget : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Oracle_FortunesEndPurge : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Oracle_FatesEdict : public CDOTABaseAbility { public: bool m_bTargetIsAlly; // 0x550 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Oracle_FatesEdict : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Oracle_PurifyingFlames : public CDOTABaseAbility { public: bool m_bTargetIsAlly; // 0x550 private: [[maybe_unused]] uint8_t __pad0551[0x3]; // 0x551 public: CHandle< CBaseEntity > m_hRecentTarget; // 0x554 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Oracle_PurifyingFlames : public CDOTA_Buff { public: float heal_per_second; // 0x1138 float tick_rate; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Oracle_FalsePromise : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Oracle_FalsePromiseTimer : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Oracle_FalsePromise_Invis : public CDOTA_Modifier_PersistentInvisibility { public: // no members available }; // Alignment: 8 // Size: 0x1188 class CDOTA_Modifier_Oracle_FalsePromise : public CDOTA_Buff { public: bool m_bWaitingForInvulnerability; // 0x1168 bool m_bDisableHealing; // 0x1169 private: [[maybe_unused]] uint8_t __pad116a[0x2]; // 0x116a public: float m_flHealthOnCreated; // 0x116c ParticleIndex_t m_nFXIndex; // 0x1170 ParticleIndex_t m_nFXIndexB; // 0x1174 float m_flRunningDmg; // 0x1178 float m_flRunningHealth; // 0x117c int32_t bonus_armor; // 0x1180 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Oracle_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Oracle_RainOfDestiny : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Oracle_RainOfDestiny_Aura : public CDOTA_Buff { public: float damage; // 0x1138 int32_t radius; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Oracle_RainOfDestiny : public CDOTA_Buff { public: int32_t heal_amp; // 0x1138 }; // Alignment: 1 // Size: 0x568 class CDOTA_Ability_Winter_Wyvern_Arctic_Burn : public CDOTABaseAbility { public: CUtlVector< CEntityIndex > m_BurnedTargets; // 0x550 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Frost_Attack : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Flight : public CDOTA_Buff { public: float attack_point; // 0x1138 int32_t attack_range_bonus; // 0x113c int32_t projectile_speed_bonus; // 0x1140 int32_t night_vision_bonus; // 0x1144 int32_t movement_scepter; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1150 int32_t max_attacks; // 0x1158 int32_t m_iNumAttacks; // 0x115c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Slow : public CDOTA_Buff { public: float percent_damage; // 0x1138 int32_t move_slow; // 0x113c }; // Alignment: 0 // Size: 0x558 class CDOTA_Ability_Winter_Wyvern_Splinter_Blast : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Winter_Wyvern_Splinter_Blast_Slow : public CDOTA_Buff { public: int32_t bonus_movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Winter_Wyvern_Cold_Embrace : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Winter_Wyvern_Cold_Embrace : public CDOTA_Buff { public: int32_t heal_additive; // 0x1140 float heal_percentage; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Winter_Wyvern_Winters_Curse : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Winter_Wyvern_Winters_Curse_Kill_Credit : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Winter_Wyvern_Winters_Curse_Aura : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nAlliesTaunted; // 0x113c bool m_bRelicTriggered; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t radius; // 0x1144 int32_t damage_amplification; // 0x1148 int32_t damage_reduction; // 0x114c GameTime_t m_flLastSeen; // 0x1150 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Winter_Wyvern_Winters_Curse : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 CHandle< CBaseEntity > m_hDesiredTarget; // 0x113c int32_t damage_reduction; // 0x1140 int32_t bonus_attack_speed; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ArcWarden_Flux : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_ArcWarden_Flux : public CDOTA_Buff { public: int32_t m_nCasterTeam; // 0x1138 int32_t damage_per_second; // 0x113c int32_t search_radius; // 0x1140 int32_t move_speed_slow_pct; // 0x1144 float think_interval; // 0x1148 int32_t m_nCurrentSlow; // 0x114c bool m_bAlone; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: ParticleIndex_t m_nFXIndex; // 0x1154 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ArcWarden_MagneticField : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_ArcWarden_MagneticField_Thinker_Evasion : public CDOTA_Buff { public: int32_t radius; // 0x1140 Vector m_vPos; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ArcWarden_MagneticField_Thinker_Attack_Speed : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_ArcWarden_MagneticField_Evasion : public CDOTA_Buff { public: int32_t evasion_chance; // 0x1138 int32_t radius; // 0x113c int32_t shard_magic_resist; // 0x1140 int32_t shard_slow_pct; // 0x1144 float aura_origin_x; // 0x1148 float aura_origin_y; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ArcWarden_MagneticField_Attack_Speed : public CDOTA_Buff { public: int32_t attack_speed_bonus; // 0x1138 }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_ArcWarden_SparkWraith : public CDOTABaseAbility { public: float duration; // 0x550 float activation_delay; // 0x554 float wraith_vision_duration; // 0x558 int32_t wraith_vision_radius; // 0x55c int32_t spark_damage; // 0x560 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ArcWarden_SparkWraith_Purge : public CDOTA_Buff { public: int32_t move_speed_slow_pct; // 0x1138 }; // Alignment: 11 // Size: 0x1168 class CDOTA_Modifier_ArcWarden_SparkWraith_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t scepter_radius; // 0x113c int32_t wraith_vision_radius; // 0x1140 int32_t wraith_speed; // 0x1144 private: [[maybe_unused]] uint8_t __pad1148[0x8]; // 0x1148 public: float activation_delay; // 0x1150 float scepter_activation_delay; // 0x1154 float think_interval; // 0x1158 int32_t m_nSparkDamage; // 0x115c int32_t m_nViewerID; // 0x1160 bool m_bActive; // 0x1164 bool m_bOriginal; // 0x1165 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_ArcWarden_TempestDouble : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hDoubles; // 0x550 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_ArcWarden_TempestDouble : public CDOTA_Buff { public: int32_t penalty_distance; // 0x1138 int32_t attack_damage_penalty; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ArcWarden_TempestDouble_DistancePenalty : public CDOTA_Buff { public: int32_t attack_damage_penalty; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_ArcWarden_Scepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Arc_Warden_Scepter : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hRune; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Banana : public CDOTA_Buff { public: int32_t slide_distance; // 0x1138 int32_t radius; // 0x113c float slide_duration; // 0x1140 }; // Alignment: 11 // Size: 0x1188 class CDOTA_Modifier_Banana_Knockback : public CDOTA_Buff { public: Vector m_vCenter; // 0x1138 int32_t knockback_distance; // 0x1144 int32_t knockback_height; // 0x1148 float knockback_duration; // 0x114c Vector m_vHorizOffset; // 0x1150 Vector m_vStartPosition; // 0x115c Vector m_vDir; // 0x1168 float m_fCurrentTimeHoriz; // 0x1174 float m_fCurrentTimeVert; // 0x1178 bool m_bShouldStun; // 0x117c private: [[maybe_unused]] uint8_t __pad117d[0x3]; // 0x117d public: float flTimeSinceChange; // 0x1180 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_MonkeyKing_TreeDance : public CDOTABaseAbility { public: int32_t perched_jump_distance; // 0x550 int32_t ground_jump_distance; // 0x554 }; // Alignment: 5 // Size: 0x570 class CDOTA_Ability_MonkeyKing_Spring : public CDOTABaseAbility { public: Vector m_vPos; // 0x550 GameTime_t m_fStartChannelTime; // 0x55c CHandle< CBaseEntity > m_hThinker; // 0x560 ParticleIndex_t m_nFxIndex; // 0x564 int32_t m_nRefCount; // 0x568 }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_MonkeyKing_Boundless_Strike : public CDOTABaseAbility { public: int32_t strike_cast_range; // 0x550 int32_t strike_radius; // 0x554 ParticleIndex_t m_nFXIndex; // 0x558 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_Strike_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_Strike_Crit : public CDOTA_Buff { public: int32_t strike_crit_mult; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_Bounce : public CDOTA_Buff { public: float jump_damage_cooldown; // 0x1138 }; // Alignment: 18 // Size: 0x1188 class CDOTA_Modifier_MonkeyKing_BounceLeap : public CDOTA_Buff { public: float give_up_distance; // 0x1138 float ground_jump_distance; // 0x113c float m_flZDelta; // 0x1140 float perched_day_vision; // 0x1144 float perched_night_vision; // 0x1148 Vector m_vStart; // 0x114c CHandle< CBaseEntity > m_hTarget; // 0x1158 Vector m_vTargetPos; // 0x115c float m_flSpeed; // 0x1168 bool m_bTargetingEntity; // 0x116c bool m_bGroundToTree; // 0x116d bool m_bTreeToGround; // 0x116e bool m_bTreeToTree; // 0x116f bool m_bIsSpringJump; // 0x1170 private: [[maybe_unused]] uint8_t __pad1171[0x3]; // 0x1171 public: float m_fSpringChanneledPercent; // 0x1174 int32_t m_nLeapSpeed; // 0x1178 ParticleIndex_t m_nFXIndex; // 0x117c ParticleIndex_t m_nFXIndex2; // 0x1180 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MonkeyKing_Spring_Early : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_TreeDance_Activity : public CDOTA_Buff { public: float m_fAbilityRangePct; // 0x1138 float m_bIsSpring; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_RightClickJump_Activity : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_SpringSlow : public CDOTA_Buff { public: int32_t impact_movement_slow; // 0x1138 int32_t m_nSlowPct; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_Spring_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_TreeJump_Hidden : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_UnperchedStunned : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_MonkeyKing_ArcToGround : public CDOTA_Buff { public: float leap_speed; // 0x1138 float give_up_distance; // 0x113c float attackspeed_duration; // 0x1140 float m_flOriginalZDelta; // 0x1144 float m_flZDelta; // 0x1148 Vector m_vStart; // 0x114c Vector m_vTargetPos; // 0x1158 float m_flSpeed; // 0x1164 bool m_bDroppedFromTree; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0x3]; // 0x1169 public: ParticleIndex_t m_nFXIndex; // 0x116c ParticleIndex_t m_nFXIndex2; // 0x1170 float m_flOriginalHeight; // 0x1174 bool m_bRightClickHop; // 0x1178 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MonkeyKing_Transform : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x1180 class CDOTA_Modifier_MonkeyKing_Transform : public CDOTA_Buff { public: CUtlString m_strDisguise; // 0x1138 int32_t movespeed; // 0x1140 int32_t m_nDisguisedSpeed; // 0x1144 int32_t reveal_radius; // 0x1148 ParticleIndex_t m_nDisguiseEffectIndex; // 0x114c CHandle< CBaseEntity > m_hCourierToClone; // 0x1150 CHandle< CBaseEntity > m_hCreepToClone; // 0x1154 CUtlVector< CHandle< CBaseEntity > > m_aryBountyRuneSpawners; // 0x1158 bool m_bIsFlyingCourier; // 0x1170 bool m_bIsRune; // 0x1171 bool m_bIsBanana; // 0x1172 bool m_bIsFakeAlly; // 0x1173 uint32_t m_nMischiefUnitType; // 0x1174 int32_t m_nMischiefHealthbarOffset; // 0x1178 float invul_duration; // 0x117c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MonkeyKing_UnTransform : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_MonkeyKing_FurArmyThinker : public CDOTA_Buff { public: float m_fDuration; // 0x1138 GameTime_t m_fTimeThinkerCreated; // 0x113c CUtlVector< Vector > m_vTargetPositions; // 0x1140 Vector m_vInitialPos; // 0x1158 int32_t first_radius; // 0x1164 int32_t num_first_soldiers; // 0x1168 int32_t second_radius; // 0x116c int32_t num_second_soldiers; // 0x1170 ParticleIndex_t m_nRingFXIndex; // 0x1174 int32_t final_radius; // 0x1178 }; // Alignment: 7 // Size: 0x1168 class CDOTA_Modifier_MonkeyKing_FurArmy_Soldier : public CDOTA_Buff { public: Vector m_vTargetPos; // 0x1138 Vector m_vDirection; // 0x1144 int32_t move_speed; // 0x1150 CHandle< CBaseEntity > m_hThinker; // 0x1154 bool m_bIsInPosition; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: ParticleIndex_t m_nFXIndex; // 0x115c bool m_bAutoSpawn; // 0x1160 }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierInPosition : public CDOTA_Buff { public: Vector m_vTargetPos; // 0x1138 CHandle< CBaseEntity > m_hAttackTarget; // 0x1144 float attack_speed; // 0x1148 int32_t second_radius; // 0x114c int32_t outer_attack_buffer; // 0x1150 CHandle< CBaseEntity > m_hThinker; // 0x1154 bool m_bDisarmed; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: GameTime_t m_flNextAttackTime; // 0x115c ParticleIndex_t m_nFXIndex; // 0x1160 bool m_bAutoSpawn; // 0x1164 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierInactive : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierHidden : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ObliterateSoldier : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_FurArmy_BonusDamage : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_MonkeyKing_QuadrupleTap : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_MonkeyKing_QuadrupleTap : public CDOTA_Buff { public: int32_t counter_duration; // 0x1138 int32_t required_hits; // 0x113c int32_t max_duration; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MonkeyKing_QuadrupleTap_Counter : public CDOTA_Buff { public: ParticleIndex_t m_nFXStackIndex; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_MonkeyKing_QuadrupleTap_Bonuses : public CDOTA_Buff { public: int32_t charges; // 0x1138 int32_t bonus_damage; // 0x113c int32_t lifesteal; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 int32_t m_nIgnoreStrikeIndex; // 0x1148 bool m_bIsAttackAnim; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_CloudRun : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MonkeyKing_CloudRunStart : public CDOTA_Buff { public: // no members available }; // Alignment: 12 // Size: 0x1180 class CDOTA_Modifier_MonkeyKing_BoundlessStrike_ShardMovement : public CDOTA_Buff { public: float m_flPredictedTotalTime; // 0x1138 Vector m_vStartPosition; // 0x113c float m_flCurrentTimeHoriz; // 0x1148 float m_flCurrentTimeVert; // 0x114c bool m_bHorizontalMotionInterrupted; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: Vector m_vHorizontalVelocity; // 0x1154 Vector m_vLastKnownTargetPosition; // 0x1160 float m_flInitialVelocityZ; // 0x116c int32_t acceleration_z; // 0x1170 int32_t min_height_above_lowest; // 0x1174 int32_t min_height_above_highest; // 0x1178 int32_t max_horizontal_acceleration; // 0x117c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pangolier_HeartPiercer : public CDOTABaseAbility { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Pangolier_HeartPiercer : public CDOTA_Buff { public: float debuff_delay; // 0x1138 int32_t chance_pct; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Pangolier_HeartPiercer_Delay : public CDOTA_Buff { public: float duration; // 0x1138 float debuff_delay; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_HeartPiercer_Debuff : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pangolier_LuckyShot : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_LuckyShot : public CDOTA_Buff { public: int32_t chance_pct; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Pangolier_LuckyShot_Disarm : public CDOTA_Buff { public: int32_t slow; // 0x1138 int32_t armor; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_LuckyShot_Silence : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pangolier_ShieldCrash : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_Pangolier_ShieldCrash_Jump : public CDOTA_Buff { public: float jump_duration; // 0x1138 float jump_duration_gyroshell; // 0x113c int32_t jump_height; // 0x1140 int32_t jump_height_gyroshell; // 0x1144 float m_flStartZ; // 0x1148 float m_flCurTime; // 0x114c float m_flJumpDuration; // 0x1150 float m_flJumpHeight; // 0x1154 int32_t jump_horizontal_distance; // 0x1158 Vector m_vTargetHorizontalDirection; // 0x115c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_ShieldCrash_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_ShieldCrash_Buff : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pangolier_Swashbuckle_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 11 // Size: 0x5b8 class CDOTA_Ability_Pangolier_Swashbuckle : public CDOTABaseAbility { public: int32_t dash_speed; // 0x560 int32_t start_radius; // 0x564 int32_t end_radius; // 0x568 int32_t range; // 0x56c int32_t damage; // 0x570 Vector m_vDashPosition; // 0x574 Vector m_vFacePosition; // 0x580 Vector m_vEndpoint; // 0x58c Vector m_vSlashDir; // 0x598 int32_t m_nDashProjectileID; // 0x5a4 Vector m_vDashProjectileLocation; // 0x5a8 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Pangolier_Swashbuckle_Attack : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_Pangolier_Swashbuckle : public CDOTA_Buff { public: int32_t m_nStrikesLeft; // 0x1138 float attack_interval; // 0x113c Vector m_vSpawnPos; // 0x1140 Vector m_vStrikeDir; // 0x114c Vector m_vDashDir; // 0x1158 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pangolier_Swashbuckle_Stunned : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Pangolier_Gyroshell : public CDOTABaseAbility { public: ParticleIndex_t m_nFxIndex; // 0x550 }; // Alignment: 20 // Size: 0x11d8 class CDOTA_Modifier_Pangolier_Gyroshell : public CDOTA_Modifier_MagicImmune { public: int32_t mp_cost_per_second; // 0x1138 float tick_interval; // 0x113c float forward_move_speed; // 0x1140 float turn_rate_boosted; // 0x1144 float turn_rate; // 0x1148 int32_t hit_radius; // 0x114c int32_t knockback_radius; // 0x1150 bool m_bHitFirstUpdate; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: GameTime_t m_flHitEndTime; // 0x1158 float hit_recover_time; // 0x115c GameTime_t m_flJumpEndTime; // 0x1160 float jump_recover_time; // 0x1164 float m_flTurnBoostProgress; // 0x1168 float m_flFacingTarget; // 0x116c bool m_bIsJumping; // 0x1170 private: [[maybe_unused]] uint8_t __pad1171[0x3]; // 0x1171 public: ParticleIndex_t m_nFXIndex; // 0x1174 CUtlVector< float32 > m_flTurnHistory; // 0x1178 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1190 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x11a8 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x11c0 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Pangolier_Gyroshell_Ricochet : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pangolier_GyroshellStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pangolier_GyroshellTimeout : public CDOTA_Buff { public: // no members available }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Pangolier_GyroshellBounce : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bTargetTeleported; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Pangolier_Gyroshell_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Pangolier_Rollup : public CDOTABaseAbility { public: ParticleIndex_t m_nFxIndex; // 0x550 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Pangolier_RollupStop : public CDOTABaseAbility { public: // no members available }; // Alignment: 22 // Size: 0x11e0 class CDOTA_Modifier_Pangolier_Rollup : public CDOTA_Modifier_MagicImmune { public: int32_t mp_cost_per_second; // 0x1138 float tick_interval; // 0x113c float forward_move_speed; // 0x1140 float turn_rate_boosted; // 0x1144 float turn_rate; // 0x1148 int32_t hit_radius; // 0x114c int32_t knockback_radius; // 0x1150 bool m_bHitFirstUpdate; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: GameTime_t m_flHitEndTime; // 0x1158 float hit_recover_time; // 0x115c GameTime_t m_flJumpEndTime; // 0x1160 float jump_recover_time; // 0x1164 float m_flTurnBoostProgress; // 0x1168 float m_flFacingTarget; // 0x116c GameTime_t m_flLastHeroAttackTime; // 0x1170 bool m_bIsJumping; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: ParticleIndex_t m_nFXIndex; // 0x1178 float m_flGyroshellDurationRemaining; // 0x117c CUtlVector< float32 > m_flTurnHistory; // 0x1180 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1198 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x11b0 CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x11c8 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkWillow_BrambleMaze : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_DarkWillow_BrambleMaze_Creation_Thinker : public CDOTA_Buff { public: float latch_creation_interval; // 0x1138 float initial_creation_delay; // 0x113c int32_t placement_count; // 0x1140 float placement_duration; // 0x1144 int32_t m_iBramblesIndex; // 0x1148 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_DarkWillow_BrambleMaze_Thinker : public CDOTA_Buff { public: int32_t latch_range; // 0x1138 int32_t latch_vision; // 0x113c float latch_creation_delay; // 0x1140 float latch_duration; // 0x1144 private: [[maybe_unused]] uint8_t __pad1148[0x8]; // 0x1148 public: bool m_bActive; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DarkWillow_BrambleMaze : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkWillow_ShadowRealm : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DarkWillow_ShadowRealm_FadeTime : public CDOTA_Buff { public: // no members available }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_DarkWillow_ShadowRealm_Buff : public CDOTA_Buff { public: int32_t damage; // 0x1138 float max_damage_duration; // 0x113c int32_t attack_range_bonus; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 bool bAttackRange; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: GameTime_t m_flStartTime; // 0x1164 GameTime_t m_flFadeTime; // 0x1168 float m_flDamageScale; // 0x116c float duration; // 0x1170 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_DarkWillow_ShadowRealm_Buff_Attack_Logic : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t m_iRecord; // 0x113c float m_flDamageScale; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_DarkWillow_CursedCrown : public CDOTABaseAbility { public: CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x550 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_DarkWillow_CursedCrown : public CDOTA_Buff { public: float delay; // 0x1138 float stun_duration; // 0x113c int32_t stun_radius; // 0x1140 GameTime_t m_fStartTime; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_DarkWillow_Bedlam : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_DarkWillow_Bedlam : public CDOTA_Buff { public: float m_flRotation; // 0x1138 CHandle< CBaseEntity > m_hWisp; // 0x113c GameTime_t m_flLastAttack; // 0x1140 int32_t roaming_radius; // 0x1144 int32_t attack_radius; // 0x1148 float roaming_seconds_per_rotation; // 0x114c float attack_interval; // 0x1150 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_DarkWillow_Terrorize : public CDOTABaseAbility { public: ParticleIndex_t m_nFXIndex; // 0x550 }; // Alignment: 14 // Size: 0x1178 class CDOTA_Modifier_DarkWillow_Terrorize_Thinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hWisp; // 0x1138 int32_t destination_travel_speed; // 0x113c int32_t return_travel_speed; // 0x1140 int32_t destination_radius; // 0x1144 float destination_status_duration; // 0x1148 float initial_delay; // 0x114c float starting_height; // 0x1150 Vector m_vAttackLocation; // 0x1154 bool m_bAttacking; // 0x1160 bool m_bReturning; // 0x1161 private: [[maybe_unused]] uint8_t __pad1162[0x2]; // 0x1162 public: float m_fCurHeight; // 0x1164 float m_fEstimatedTravelTime; // 0x1168 float think_interval; // 0x116c bool m_bInFlight; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkWillow_Debuff_Fear : public CDOTA_Modifier_Fear { public: bool m_bDidGiveOrder; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DarkWillow_Creature_Invulnerable : public CDOTA_Buff { public: int32_t m_nOverrideAnim; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Grimstroke_InkCreature : public CDOTABaseAbility { public: float spawn_time; // 0x550 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grimstroke_InkCreature_Spawning : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hAttachTarget; // 0x1138 }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_Grimstroke_InkCreature : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 ParticleIndex_t m_nAmbientFXIndex; // 0x113c int32_t m_nAttackCount; // 0x1140 bool m_bIsLatched; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CHandle< CBaseEntity > m_hAttachTarget; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CountdownTimer m_EnemyVision; // 0x1150 float latch_duration; // 0x1168 float speed; // 0x116c int32_t destroy_attacks; // 0x1170 int32_t hero_attack_multiplier; // 0x1174 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Grimstroke_InkCreature_Debuff : public CDOTA_Buff { public: float m_flCurrentArmorReduction; // 0x1138 CHandle< CBaseEntity > m_hLatchedCreature; // 0x113c float tick_interval; // 0x1140 int32_t damage_per_second; // 0x1144 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Grimstroke_InkCreature_Latched : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hAttachTarget; // 0x1138 float m_fZOffset; // 0x113c bool m_bRemovedByEnemy; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: float latch_duration; // 0x1144 int32_t pop_damage; // 0x1148 int32_t latched_unit_offset; // 0x114c int32_t latched_unit_offset_short; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Grimstroke_Scepter : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_Grimstroke_SpiritWalk : public CDOTABaseAbility { public: float buff_duration; // 0x550 }; // Alignment: 14 // Size: 0x1170 class CDOTA_Modifier_Grimstroke_SpiritWalk_Buff : public CDOTA_Buff { public: GameTime_t m_fStartTime; // 0x1138 int32_t m_nHeroTickDamageApplied; // 0x113c GameTime_t m_fLastEffectsTime; // 0x1140 int32_t radius; // 0x1144 float buff_duration; // 0x1148 float debuff_duration; // 0x114c int32_t max_damage; // 0x1150 float max_stun; // 0x1154 int32_t movespeed_bonus_pct; // 0x1158 int32_t damage_per_tick; // 0x115c float tick_rate; // 0x1160 float max_threshold_duration; // 0x1164 int32_t shard_bonus_damage_pct; // 0x1168 int32_t shard_heal_pct; // 0x116c }; // Alignment: 17 // Size: 0x5b0 class CDOTA_Ability_Grimstroke_DarkArtistry : public CDOTABaseAbility { public: Vector m_vCastDir; // 0x550 GameTime_t m_fStartTime; // 0x55c float m_fTotalTime; // 0x560 int32_t m_nProjectileID; // 0x564 Vector m_vProjectileDir; // 0x568 ParticleIndex_t m_nFXIndex; // 0x574 ParticleIndex_t m_nFXIndexB; // 0x578 int32_t m_nTargetsHit; // 0x57c int32_t m_nHeroesHit; // 0x580 int32_t m_nVisibleHeroesHit; // 0x584 float m_fDmgMultiplierTalent; // 0x588 private: [[maybe_unused]] uint8_t __pad058c[0x8]; // 0x58c public: float slow_duration; // 0x594 int32_t start_radius; // 0x598 int32_t end_radius; // 0x59c int32_t damage; // 0x5a0 int32_t bonus_damage_per_target; // 0x5a4 float vision_duration; // 0x5a8 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grimstroke_DarkArtistry_Slow : public CDOTA_Buff { public: int32_t movement_slow_pct; // 0x1138 }; // Alignment: 3 // Size: 0x560 class CDOTA_Ability_Grimstroke_SoulChain : public CDOTABaseAbility { public: float chain_duration; // 0x550 int32_t chain_latch_radius; // 0x554 float creep_duration_pct; // 0x558 }; // Alignment: 17 // Size: 0x1180 class CDOTA_Modifier_Grimstroke_SoulChain : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hPartner; // 0x1138 bool m_bIsPrimary; // 0x113c bool m_bEscaped; // 0x113d bool m_bTethered; // 0x113e private: [[maybe_unused]] uint8_t __pad113f[0x1]; // 0x113f public: ParticleIndex_t m_nFXIndex; // 0x1140 ParticleIndex_t m_nFXIndexA; // 0x1144 ParticleIndex_t m_nFXIndexB; // 0x1148 bool m_bStartedLeashSound; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_fLeashDistance; // 0x1150 GameTime_t m_fOriginalStartTime; // 0x1154 ParticleIndex_t m_nOverheadFXIndex; // 0x1158 int32_t chain_latch_radius; // 0x115c int32_t chain_break_distance; // 0x1160 float leash_limit_multiplier; // 0x1164 float chain_duration; // 0x1168 float creep_duration_pct; // 0x116c int32_t bonus_reflected_spell_damage; // 0x1170 }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_Grimstroke_SoulChain_ChannelCheck : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hAbility; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_hAbilities; // 0x1140 Vector m_vLocation; // 0x1158 GameTime_t m_fChannelEnd; // 0x1164 bool m_bInterrupt; // 0x1168 bool m_bExpired; // 0x1169 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Grimstroke_Dark_Portrait : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grimstroke_Scepter_Buff : public CDOTA_Modifier_MagicImmune { public: int32_t images_movespeed_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Grimstroke_Ink_Over : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Grimstroke_Shard_Buff : public CDOTA_Buff { public: int32_t total_damage; // 0x1138 int32_t attack_speed; // 0x113c int32_t move_speed; // 0x1140 float m_flInterval; // 0x1144 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x5a8 class CDOTA_Ability_Mars_Spear : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x550 private: [[maybe_unused]] uint8_t __pad0568[0x8]; // 0x568 public: int32_t damage; // 0x570 private: [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 public: CUtlVector< CHandle< CBaseEntity > > hImpaledTargetList; // 0x578 int32_t m_nTargetsImpaled; // 0x590 int32_t m_nMaxImpaleTargets; // 0x594 Vector m_vLastTrailThinkerLocation; // 0x598 bool bHasStartedBurning; // 0x5a4 }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Mars_Spear_Impale : public CDOTA_Buff { public: int32_t m_nProjectileHandle; // 0x1138 bool m_bLatched; // 0x113c bool m_bHitArenaOfBlood; // 0x113d }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Special_Mars_Spear_Burning_Trail_Thinker : public CDOTA_Buff { public: Vector m_vPathDir; // 0x1138 int32_t shard_trail_radius; // 0x1144 float shard_debuff_linger_duration; // 0x1148 float shard_interval; // 0x114c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Special_Mars_Spear_Burning_Trail_Burn : public CDOTA_Buff { public: int32_t shard_dps; // 0x1138 int32_t shard_move_slow_pct; // 0x113c float shard_interval; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mars_Spear_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Mars_ArenaOfBlood : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Mars_ArenaOfBlood_Thinker : public CDOTA_Buff { public: float radius; // 0x1138 float formation_time; // 0x113c float m_flInitialZ; // 0x1140 float m_flFinalZ; // 0x1144 private: [[maybe_unused]] uint8_t __pad1148[0x10]; // 0x1148 public: bool m_bCaughtOne; // 0x1158 bool m_bKilledOne; // 0x1159 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_ArenaOfBlood_AnimationAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mars_ArenaOfBlood_Animation : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_ArenaOfBlood_BuffAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_ArenaOfBlood_Buff : public CDOTA_Buff { public: int32_t health_regen; // 0x1138 }; // Alignment: 7 // Size: 0x11a0 class CDOTA_Modifier_Mars_ArenaOfBlood : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t width; // 0x113c int32_t spear_damage; // 0x1140 int32_t spear_distance_from_wall; // 0x1144 float spear_attack_interval; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x34]; // 0x114c public: int32_t m_hObstruction; // 0x1180 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: CUtlVector< Vector > m_vecAvoidLocations; // 0x1188 }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_Mars_ArenaOfBlood_Spear : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Mars_ArenaOfBlood_Leash : public CDOTA_Buff { public: int32_t radius; // 0x1138 float width; // 0x113c Vector m_vOriginLoc; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mars_ArenaOfBlood_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Mars_Bulwark : public CDOTABaseAbility { public: GameTime_t m_flNextAttack; // 0x550 GameTime_t m_flLastActive; // 0x554 }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_Mars_Bulwark : public CDOTA_Buff { public: float physical_damage_reduction; // 0x1138 float physical_damage_reduction_side; // 0x113c float forward_angle; // 0x1140 float side_angle; // 0x1144 private: [[maybe_unused]] uint8_t __pad1148[0x18]; // 0x1148 public: float m_flRecentDamage; // 0x1160 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Mars_Bulwark_Active : public CDOTA_Buff { public: int32_t redirect_chance; // 0x1138 int32_t redirect_range; // 0x113c float forward_angle; // 0x1140 float side_angle; // 0x1144 int32_t redirect_speed_penatly; // 0x1148 int32_t redirect_close_range; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mars_Bulwark_Soldier_Bonus : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Mars_Bulwark_Soldier_Thinker : public CDOTA_Buff { public: GameTime_t m_NextAttack; // 0x1138 CHandle< CBaseEntity > m_hSoldier1; // 0x113c CHandle< CBaseEntity > m_hSoldier2; // 0x1140 CHandle< CBaseEntity > m_hSoldier3; // 0x1144 CHandle< CBaseEntity > m_hSoldier4; // 0x1148 CHandle< CBaseEntity > m_hSoldier5; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mars_Scepter_Damage_Tracker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_Scepter_Damage_Slow : public CDOTA_Buff { public: int32_t scepter_movement_slow_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_Scepter_Damage : public CDOTA_Buff { public: int32_t scepter_bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Mars_GodsRebuke : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_Gods_Rebuke : public CDOTA_Buff { public: int32_t knockback_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mars_GodsRebuke_Crit : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_MarsSpearStunDuration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_ArenaOfBloodHPRegen : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_SpearBonusDamage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_GodsRebuke_ExtraCrit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_SpearCooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_RebukeCooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_GodsRebuke_Slow : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bulwark_Speed : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Bulwark_DamageReduction : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Snapfire_MortimerKisses : public CDOTABaseAbility { public: int32_t m_nDamagePerProjectile; // 0x550 int32_t damage_per_impact; // 0x554 int32_t impact_radius; // 0x558 int32_t projectile_vision; // 0x55c }; // Alignment: 21 // Size: 0x11a0 class CDOTA_Modifier_Snapfire_MortimerKisses : public CDOTA_Buff { public: float m_fIntervalPerRocket; // 0x1138 float m_flFacingTarget; // 0x113c ParticleIndex_t m_nBeamFXIndex; // 0x1140 CHandle< CBaseEntity > m_hBeamEnd; // 0x1144 float m_flCurDistance; // 0x1148 Vector m_vAimTarget; // 0x114c float m_fLastTurnAmount; // 0x1158 int32_t m_nProjectilesLaunched; // 0x115c bool m_bDestroyOnNextThink; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_nProjectilesToLaunch; // 0x1164 bool m_bHasProjectileTalent; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0xb]; // 0x1169 public: int32_t projectile_count; // 0x1174 int32_t projectile_speed; // 0x1178 int32_t projectile_width; // 0x117c int32_t projectile_vision; // 0x1180 float turn_rate; // 0x1184 int32_t min_range; // 0x1188 int32_t impact_radius; // 0x118c float min_lob_travel_time; // 0x1190 float max_lob_travel_time; // 0x1194 float delay_after_last_projectile; // 0x1198 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Snapfire_MortimerKisses_VisionSource : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Snapfire_Magma_Thinker : public CDOTA_Buff { public: float burn_interval; // 0x1138 int32_t impact_radius; // 0x113c int32_t move_slow_pct; // 0x1140 float burn_linger_duration; // 0x1144 ParticleIndex_t m_nPathEffectIndex; // 0x1148 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Snapfire_Magma_Burn_Slow : public CDOTA_Buff { public: int32_t m_nMoveSlowPct; // 0x1138 float m_fBurnDamagePerTick; // 0x113c int32_t move_slow_pct; // 0x1140 float burn_interval; // 0x1144 int32_t burn_damage; // 0x1148 }; // Alignment: 5 // Size: 0x568 class CDOTA_Ability_Snapfire_Scatterblast : public CDOTABaseAbility { public: int32_t damage; // 0x550 float debuff_duration; // 0x554 int32_t point_blank_range; // 0x558 float point_blank_dmg_bonus_pct; // 0x55c int32_t blast_width_end; // 0x560 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Snapfire_Scatterblast_Slow : public CDOTA_Buff { public: bool m_bIsPointBlank; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t movement_slow_pct; // 0x113c int32_t attack_slow_pct; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Snapfire_Scatterblast_Disarm : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x568 class CDOTA_Ability_Snapfire_FiresnapCookie : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hTarget; // 0x550 private: [[maybe_unused]] uint8_t __pad0554[0x8]; // 0x554 public: int32_t projectile_speed; // 0x55c float pre_hop_duration; // 0x560 float cast_on_ally_gesture_time; // 0x564 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Snapfire_FiresnapCookie_PreHop : public CDOTA_Buff { public: float jump_duration; // 0x1138 }; // Alignment: 13 // Size: 0x1178 class CDOTA_Modifier_Snapfire_FiresnapCookie_ShortHop : public CDOTA_Buff { public: float jump_duration; // 0x1138 int32_t jump_height; // 0x113c int32_t jump_horizontal_distance; // 0x1140 float pre_land_anim_time; // 0x1144 float landing_gesture_duration; // 0x1148 int32_t impact_radius; // 0x114c int32_t impact_damage; // 0x1150 float impact_stun_duration; // 0x1154 float m_flStartZ; // 0x1158 float m_flCurTime; // 0x115c float m_flJumpDuration; // 0x1160 float m_flJumpHeight; // 0x1164 Vector m_vTargetHorizontalDirection; // 0x1168 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Snapfire_FiresnapCookie_AllyFlailAnim : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Snapfire_FiresnapCookie_LandingGesture : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Snapfire_LilShredder : public CDOTABaseAbility { public: // no members available }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_Snapfire_LilShredder_Buff : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 int32_t m_nIsActive; // 0x1158 bool m_bHasAttackTalent; // 0x115c bool m_bBonusAttack; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: int32_t attack_range_bonus; // 0x1160 int32_t buffed_attacks; // 0x1164 float base_attack_time; // 0x1168 int32_t attack_speed_bonus; // 0x116c float armor_duration; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Snapfire_LilShredder_Attack : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Snapfire_LilShredder_Debuff : public CDOTA_Buff { public: float armor_reduction_per_attack; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Snapfire_GobbleUp : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hGobbledUnit; // 0x550 float max_time_in_belly; // 0x554 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Snapfire_GobbleUp_Creep : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Snapfire_GobbleUp_BellyHasUnit : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hGobbledUnit; // 0x1138 PlayerID_t m_nOriginalControllingUnit; // 0x113c bool m_bUnitWasLaunched; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: float max_time_in_belly; // 0x1144 }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Snapfire_SpitCreep : public CDOTABaseAbility { public: int32_t m_nDamagePerProjectile; // 0x550 CHandle< CBaseEntity > m_hGobbledUnit; // 0x554 int32_t m_nProjectileID; // 0x558 }; // Alignment: 23 // Size: 0x11a8 class CDOTA_Modifier_Snapfire_SpitCreep_ArcingUnit : public CDOTA_Buff { public: float m_flPredictedTotalTime; // 0x1138 Vector m_vStartPosition; // 0x113c float m_flCurrentTimeHoriz; // 0x1148 float m_flCurrentTimeVert; // 0x114c bool m_bHorizontalMotionInterrupted; // 0x1150 bool m_bDamageApplied; // 0x1151 bool m_bTargetTeleported; // 0x1152 private: [[maybe_unused]] uint8_t __pad1153[0x1]; // 0x1153 public: Vector m_vHorizontalVelocity; // 0x1154 Vector m_vLastKnownTargetPosition; // 0x1160 float m_flInitialVelocityZ; // 0x116c float m_fClampedProjectileSpeed; // 0x1170 ParticleIndex_t m_nFXIndex; // 0x1174 float m_fAcceleration; // 0x1178 int32_t min_range; // 0x117c float min_lob_travel_time; // 0x1180 float max_lob_travel_time; // 0x1184 int32_t impact_radius; // 0x1188 int32_t projectile_vision; // 0x118c float stun_duration; // 0x1190 float min_height_above_lowest; // 0x1194 float min_height_above_highest; // 0x1198 float min_acceleration; // 0x119c float max_acceleration; // 0x11a0 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Snapfire_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 7 // Size: 0x590 class CDOTA_Ability_VoidSpirit_AetherRemnant : public CDOTABaseAbility { public: int32_t start_radius; // 0x550 int32_t end_radius; // 0x554 int32_t remnant_watch_distance; // 0x558 int32_t projectile_speed; // 0x55c private: [[maybe_unused]] uint8_t __pad0560[0x8]; // 0x560 public: Vector m_vDashPosition; // 0x568 Vector m_vFacePosition; // 0x574 Vector m_vEndpoint; // 0x580 }; // Alignment: 13 // Size: 0x11b8 class CDOTA_Modifier_VoidSpirit_AetherRemnant_Unit : public CDOTA_Buff { public: Vector m_vFacingDir; // 0x1138 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< CHandle< CBaseEntity > > m_hWatchPathThinkers; // 0x1148 ParticleIndex_t m_nBeamFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< int32 > m_nViewerIDs; // 0x1168 int32_t remnant_watch_distance; // 0x1180 int32_t remnant_watch_radius; // 0x1184 float duration; // 0x1188 int32_t watch_path_vision_radius; // 0x118c int32_t impact_damage; // 0x1190 float pull_duration; // 0x1194 float activation_delay; // 0x1198 bool m_bPiercesCreeps; // 0x119c private: [[maybe_unused]] uint8_t __pad119d[0x3]; // 0x119d public: CUtlVector< CHandle< CBaseEntity > > m_hAlreadyHit; // 0x11a0 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VoidSpirit_AetherRemnant_WatchThinker : public CDOTA_Buff { public: int32_t remnant_watch_radius; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_VoidSpirit_AetherRemnant_Pull : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 PlayerID_t m_nPlayerID; // 0x113c float m_fMovementSpeed; // 0x1140 CHandle< CDOTA_BaseNPC > m_hPullTarget; // 0x1144 float think_interval; // 0x1148 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_VoidSpirit_AetherRemnantThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 Vector m_vFacingDir; // 0x113c CHandle< CBaseEntity > m_hRemnant; // 0x1148 bool m_bTriggered; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float m_flCurThink; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VoidSpirit_AetherRemnantUnit_Truesight : public CDOTA_Buff { public: int32_t m_nRadius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_VoidSpirit_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter { public: // no members available }; // Alignment: 8 // Size: 0x588 class CDOTA_Ability_VoidSpirit_AstralStep : public CDOTABaseAbility { public: Vector m_vStartPos; // 0x550 Vector m_vDestination; // 0x55c Vector m_vDirection; // 0x568 int32_t radius; // 0x574 int32_t min_travel_distance; // 0x578 int32_t max_travel_distance; // 0x57c float debuff_duration; // 0x580 float pop_damage_delay; // 0x584 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_VoidSpirit_AstralStep_Debuff : public CDOTA_Buff { public: ParticleIndex_t m_nFXStackIndex; // 0x1138 int32_t movement_slow_pct; // 0x113c int32_t pop_damage; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_VoidSpirit_AstralStep_Caster : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_VoidSpirit_AstralStep_Intrinsic : public CDOTA_Buff { public: int32_t ability_chance_pct; // 0x1138 int32_t attack_chance_pct; // 0x113c float pop_damage_delay; // 0x1140 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_VoidSpirit_Dissimilate : public CDOTABaseAbility { public: float phase_duration; // 0x550 }; // Alignment: 19 // Size: 0x11d8 class CDOTA_Modifier_VoidSpirit_Dissimilate_Phase : public CDOTA_Buff { public: Vector m_vFirstPortalPos; // 0x1138 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< Vector > m_vecDestinations; // 0x1148 CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1160 CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1178 int32_t m_nCurrentDestinationIndex; // 0x1190 int32_t m_nClosestIndexPosToClick; // 0x1194 int32_t m_nPortalHeightOffset; // 0x1198 private: [[maybe_unused]] uint8_t __pad119c[0x4]; // 0x119c public: char* m_szAlliesPortalFX; // 0x11a0 char* m_szEnemiesPortalFX; // 0x11a8 int32_t m_nPortalRadius; // 0x11b0 int32_t m_nPortalPadding; // 0x11b4 int32_t m_nFinalImpactDamageRadius; // 0x11b8 int32_t m_nFinalImpactFXRadius; // 0x11bc int32_t destination_fx_radius; // 0x11c0 int32_t damage_radius; // 0x11c4 int32_t portals_per_ring; // 0x11c8 int32_t angle_per_ring_portal; // 0x11cc int32_t first_ring_distance_offset; // 0x11d0 float debuff_duration; // 0x11d4 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_VoidSpirit_Dissimilate_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_VoidSpirit_ResonantPulse_PhysicalBuff : public CDOTA_Buff { public: int32_t base_absorb_amount; // 0x1138 int32_t m_nAbsorbRemaining; // 0x113c }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_VoidSpirit_ResonantPulse : public CDOTABaseAbility { public: bool m_bGrantedScepterCharges; // 0x550 private: [[maybe_unused]] uint8_t __pad0551[0x3]; // 0x551 public: float buff_duration; // 0x554 int32_t base_absorb_amount; // 0x558 int32_t absorb_per_hero_hit; // 0x55c }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_VoidSpirit_ResonantPulse_Ring : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1148 int32_t speed; // 0x1160 int32_t radius; // 0x1164 int32_t damage; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_1 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_2 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_3 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_4 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_5 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_6 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_7 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_8 : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_9 : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x588 class CDOTA_Ability_Hoodwink_AcornShot : public CDOTABaseAbility { public: // MNetworkEnable uint32_t m_nAcornTree; // 0x570 float projectile_speed; // 0x574 float bounce_delay; // 0x578 int32_t bounce_range; // 0x57c int32_t bounce_count; // 0x580 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_AcornShot_DelayThinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nSourceProjectileHandle; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_AcornShot_TreeThinker : public CDOTA_Buff { public: CHandle< CDOTA_TempTree > m_hTree; // 0x1138 int32_t fow_viewer; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_AcornShot_BonusDamage : public CDOTA_Buff { public: int32_t acorn_shot_damage; // 0x1138 int32_t base_damage_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_AcornShot_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 3 // Size: 0x568 class CDOTA_Ability_Hoodwink_Bushwhack : public CDOTABaseAbility { public: int32_t trap_radius; // 0x550 int32_t m_nProjectileHandle; // 0x554 ParticleIndex_t m_nFXIndex; // 0x558 }; // Alignment: 12 // Size: 0x1180 class CDOTA_Modifier_Hoodwink_Bushwhack_Trap : public CDOTA_Buff { public: int32_t visual_height; // 0x1138 float animation_rate; // 0x113c ParticleIndex_t m_iIndex; // 0x1140 bool m_bPullComplete; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: uint32_t m_TreeId; // 0x1148 float m_flDamagePerTick; // 0x114c int32_t m_nDamageTicks; // 0x1150 GameTime_t m_flLastTick; // 0x1154 CHandle< CDOTA_TempTree > m_hTree; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CDOTA_Tree* m_pTree; // 0x1160 Vector m_vPullPosition; // 0x1168 Vector m_vDir; // 0x1174 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Hoodwink_Scurry : public CDOTABaseAbility { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Hoodwink_Scurry_Passive : public CDOTA_Buff { public: int32_t evasion; // 0x1138 int32_t radius; // 0x113c int32_t bonus_active_evasion; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_Scurry_Active : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 float m_flTreeDuration; // 0x113c }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_Hoodwink_Sharpshooter_Windup : public CDOTA_Buff { public: bool m_bReachedMax; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: float m_flLastOverheadTime; // 0x113c float m_flFacingTarget; // 0x1140 Vector m_vAimTarget; // 0x1144 ParticleIndex_t m_nCrosshairFX; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_vecVisionThinkers; // 0x1158 int32_t arrow_vision; // 0x1170 float max_charge_time; // 0x1174 float turn_rate; // 0x1178 float base_power; // 0x117c }; // Alignment: 3 // Size: 0x570 class CDOTA_Ability_Hoodwink_Sharpshooter : public CDOTABaseAbility { public: float max_charge_time; // 0x550 Vector m_vStartPos; // 0x554 ParticleIndex_t m_nFXIndex; // 0x560 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_Sharpshooter_VisionThinker : public CDOTA_Buff { public: int32_t arrow_width; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Hoodwink_Sharpshooter_Release : public CDOTABaseAbility { public: // no members available }; // Alignment: 8 // Size: 0x1160 class CDOTA_Modifier_Hoodwink_Sharpshooter_Recoil : public CDOTA_Buff { public: float recoil_duration; // 0x1138 int32_t recoil_height; // 0x113c int32_t recoil_distance; // 0x1140 float m_flStartZ; // 0x1144 float m_flCurTime; // 0x1148 float m_flJumpDuration; // 0x114c float m_flJumpHeight; // 0x1150 Vector m_vTargetHorizontalDirection; // 0x1154 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Hoodwink_Sharpshooter_Recoil_EndAnim : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_Sharpshooter_Debuff : public CDOTA_Buff { public: int32_t slow_move_pct; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotBounces : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotDamage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotCharges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Camouflague : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_SharpshooterPierceHeroes : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_SharpshooterPureDamage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Bushwhack_Duration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Bushwhack_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Sharpshooter_Speed : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Hoodwink_Camouflage : public CDOTA_Buff { public: float fade_time; // 0x1138 GameTime_t m_flFadeTime; // 0x113c bool m_bInvisLastThink; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShot_ArmorCorruption : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_BushwhackCooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_ScurryDuration : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_AcornShot_ArmorCorruption : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Hoodwink_Caltrops : public CDOTABaseAbility { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Hoodwink_Caltrops : public CDOTA_Buff { public: int32_t effect_radius; // 0x1138 int32_t caltrops_damage; // 0x113c int32_t activation_radius; // 0x1140 float debuff_duration; // 0x1144 float activation_delay; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_Caltrops_Debuff : public CDOTA_Buff { public: int32_t movespeed_pct; // 0x1138 int32_t tick_damage; // 0x113c }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Hoodwink_Decoy : public CDOTABaseAbility { public: CUtlVector< CHandle< CBaseEntity > > hIllusion; // 0x550 float decoy_stun_duration; // 0x568 int32_t decoy_detonate_radius; // 0x56c int32_t projectile_speed; // 0x570 ParticleIndex_t m_nFXIndex; // 0x574 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Hoodwink_Decoy_Illusion : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 2 // Size: 0x1168 class CDOTA_Modifier_Hoodwink_Decoy_Invisibility : public CDOTA_Modifier_Invisible { public: int32_t movement_speed; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1150 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Hoodwink_HeavyQuiver : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Hoodwink_HeavyQuiver : public CDOTA_Buff { public: int32_t bonus_projectile_speed_pct; // 0x1138 int32_t bonus_attack_range; // 0x113c int32_t deadly_blow_multiplier; // 0x1140 float maim_duration; // 0x1144 int32_t m_nAttackRecord; // 0x1148 }; // Alignment: 6 // Size: 0x588 class CDOTA_Ability_Hoodwink_HuntersBoomerang : public CDOTABaseAbility { public: int32_t radius; // 0x550 int32_t speed; // 0x554 int32_t damage; // 0x558 float mark_duration; // 0x55c CHandle< CBaseEntity > m_hTarget; // 0x560 private: [[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564 public: CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x568 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Hoodwink_Hunters_Mark : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 int32_t spell_amp; // 0x113c int32_t status_resistance; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Hoodwink_HuntersQuiver : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Hoodwink_HuntersQuiver : public CDOTA_Buff { public: int32_t bonus_attack_range; // 0x1138 int32_t max_stacks; // 0x113c float debuff_duration; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Hoodwink_HuntersQuiver_Mark : public CDOTA_Buff { public: int32_t stack_crit_chance_pct; // 0x1138 int32_t critical_damage_pct; // 0x113c int32_t stack_slow_pct; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Hoodwink_Boomerang_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 23 // Size: 0x11d0 class CDOTA_Modifier_Hoodwink_ArcingBoomerang : public CDOTA_Buff { public: Vector m_vLeftControl; // 0x1138 Vector m_vRightControl; // 0x1144 Vector m_vTargetLoc; // 0x1150 Vector m_vOriginalTargetLoc; // 0x115c Vector m_vSourceLoc; // 0x1168 bool m_bGroundTargeted; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: float m_flDuration; // 0x1178 GameTime_t m_flDieTime; // 0x117c bool m_bReturning; // 0x1180 bool m_bCatchingBoomerang; // 0x1181 bool m_bDisjointed; // 0x1182 private: [[maybe_unused]] uint8_t __pad1183[0x1]; // 0x1183 public: int32_t m_nFramesToWait; // 0x1184 CHandle< CBaseEntity > m_hBoomerang; // 0x1188 CHandle< CBaseEntity > m_hTarget; // 0x118c ParticleIndex_t m_nBoomerangFXIndex; // 0x1190 ParticleIndex_t m_nOldBoomerangFXindex; // 0x1194 CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x1198 int32_t radius; // 0x11b0 int32_t spread; // 0x11b4 int32_t damage; // 0x11b8 float mark_duration; // 0x11bc float min_throw_duration; // 0x11c0 float max_throw_duration; // 0x11c4 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Dawnbreaker_Solar_Guardian : public CDOTABaseAbility { public: CHandle< CBaseEntity > m_hThinker; // 0x550 bool m_bJumping; // 0x554 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Thinker : public CDOTA_Buff { public: float pulse_interval; // 0x1138 int32_t iEffectRadius; // 0x113c int32_t base_damage; // 0x1140 int32_t base_heal; // 0x1144 ParticleIndex_t m_nThinkerFXIndex; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Evasion : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 }; // Alignment: 9 // Size: 0x1180 class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_AirTime : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c Vector m_vDirection; // 0x1140 float m_flEndTime; // 0x114c CHandle< CBaseEntity > m_hThinker; // 0x1150 Vector m_vCurrentTargetPosition; // 0x1154 Vector m_vDesiredTargetPosition; // 0x1160 Vector m_vStartPosition; // 0x116c int32_t airtime_scepter_movement_speed; // 0x1178 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Disable : public CDOTA_Buff { public: ParticleIndex_t m_nCasterFXIndex; // 0x1138 ParticleIndex_t m_nStatusFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_After_Land : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dawnbreaker_Luminosity : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Dawnbreaker_Luminosity : public CDOTA_Buff { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t attack_count; // 0x113c bool m_bShouldIncrement; // 0x1140 }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Dawnbreaker_Luminosity_Attack_Buff : public CDOTA_Buff { public: bool m_bIsBuffedAttack; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t heal_pct; // 0x113c int32_t bonus_damage; // 0x1140 int32_t heal_radius; // 0x1144 int32_t heal_from_creeps; // 0x1148 int32_t allied_healing_pct; // 0x114c CUtlVector< CHandle< CBaseEntity > > hTargets; // 0x1150 float m_flTotalToHeal; // 0x1168 }; // Alignment: 25 // Size: 0x5f8 class CDOTA_Ability_Dawnbreaker_Celestial_Hammer : public CDOTABaseAbility { public: int32_t m_nProjectileIndex; // 0x550 int32_t m_nReturnProjectileID; // 0x554 Vector m_vEndLocation; // 0x558 float m_fZCoord; // 0x564 Vector m_vLastTrailThinkerLocation; // 0x568 bool m_bFlareDone; // 0x574 bool m_bStartedCatchAnimation; // 0x575 bool m_bIsReturning; // 0x576 private: [[maybe_unused]] uint8_t __pad0577[0x1]; // 0x577 public: CUtlVector< CHandle< CBaseEntity > > m_hReturnHits; // 0x578 CUtlVector< CHandle< CBaseEntity > > m_hAoEHits; // 0x590 ParticleIndex_t m_nFXIndex; // 0x5a8 ParticleIndex_t m_nFXIndexC; // 0x5ac ParticleIndex_t m_nFXHammerReturnIndex; // 0x5b0 ParticleIndex_t m_nFXHammerProjectileIndex; // 0x5b4 ParticleIndex_t m_nFXHeroSolarGuardianTrailIndex; // 0x5b8 CHandle< CBaseEntity > m_hThinker; // 0x5bc int32_t projectile_speed; // 0x5c0 int32_t projectile_radius; // 0x5c4 int32_t hammer_damage; // 0x5c8 int32_t hammer_aoe_radius; // 0x5cc int32_t flare_radius; // 0x5d0 bool bHasStartedBurning; // 0x5d4 private: [[maybe_unused]] uint8_t __pad05d5[0x3]; // 0x5d5 public: float flare_debuff_duration; // 0x5d8 int32_t return_anim_distance_threshold; // 0x5dc int32_t range; // 0x5e0 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Thinker : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Converge_Thinker : public CDOTA_Buff { public: int32_t flare_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 int32_t projectile_speed; // 0x113c int32_t travel_speed_pct; // 0x1140 int32_t m_nMaxRange; // 0x1144 Vector m_vStartPoint; // 0x1148 Vector m_vLastTrailThinkerLocation; // 0x1154 Vector m_vEndPointShard; // 0x1160 ParticleIndex_t m_nStatusFXIndex; // 0x116c int32_t flare_radius; // 0x1170 bool bHasStartedBurning; // 0x1174 private: [[maybe_unused]] uint8_t __pad1175[0x3]; // 0x1175 public: float flare_debuff_duration; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Caster : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dawnbreaker_Fire_Wreath : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Magic_Immunity_Tooltip : public CDOTA_Buff { public: // no members available }; // Alignment: 20 // Size: 0x1190 class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Caster : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t shard_movement_penalty; // 0x113c int32_t swipe_radius; // 0x1140 int32_t swipe_damage; // 0x1144 int32_t smash_radius; // 0x1148 int32_t smash_damage; // 0x114c int32_t m_nCurrentSpeed; // 0x1150 float flSwipeInterval; // 0x1154 GameTime_t m_flNextHit; // 0x1158 int32_t iCurrentAttack; // 0x115c int32_t total_attacks; // 0x1160 float smash_stun_duration; // 0x1164 float sweep_stun_duration; // 0x1168 bool m_bHasCompletedMove; // 0x116c private: [[maybe_unused]] uint8_t __pad116d[0x3]; // 0x116d public: float duration; // 0x1170 Vector m_vTargetHorizontalDirection; // 0x1174 int32_t smash_distance_from_hero; // 0x1180 float animation_rate; // 0x1184 float turn_rate; // 0x1188 float m_flFacingTarget; // 0x118c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Attack_Bonus : public CDOTA_Buff { public: int32_t attack_damage; // 0x1138 int32_t creep_damage_penalty; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Slow : public CDOTA_Buff { public: int32_t swipe_slow; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Smash_Stun : public CDOTA_Buff { public: int32_t damage; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dawnbreaker_Converge : public CDOTABaseAbility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Dawnbreaker_Converge : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 int32_t burn_damage; // 0x113c float burn_interval; // 0x1140 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Dawnbreaker_Land : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Celestial_Hammer_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_Wreath_Magic_Immunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Solar_Guardian_Radius : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Converge_Slow : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Celestial_Hammer_Cast_Range : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_Wreath_Ministun : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Luminosity_Attack_Count : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_wreath_Charges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Solar_Guardian_Cooldown : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Luminosity_Crit : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_FireWreath_Swipe : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_CelestialHammer_Slow : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_FireWreath_AoE : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Marci_Grapple : public CDOTABaseAbility { public: // no members available }; // Alignment: 12 // Size: 0x1178 class CDOTA_Modifier_Marci_Grapple_VictimMotion : public CDOTA_Buff { public: int32_t impact_damage; // 0x1138 float debuff_duration; // 0x113c int32_t landing_radius; // 0x1140 float air_duration; // 0x1144 int32_t air_height; // 0x1148 int32_t travel_distance; // 0x114c Vector m_vDestination; // 0x1150 float m_flStartZ; // 0x115c float m_flCurTime; // 0x1160 float m_flJumpDuration; // 0x1164 float m_flJumpHeight; // 0x1168 Vector m_vTargetHorizontalDirection; // 0x116c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Marci_Dispose_Debuff : public CDOTA_Buff { public: int32_t movement_slow_pct; // 0x1138 }; // Alignment: 17 // Size: 0x5b8 class CDOTA_Ability_Marci_Companion_Run : public CDOTABaseAbility { public: int32_t m_nTrackingProjectileID; // 0x550 ParticleIndex_t m_nFXIndex; // 0x554 int32_t m_nMaxJumpDistance; // 0x558 int32_t landing_radius; // 0x55c int32_t move_speed; // 0x560 float ally_buff_duration; // 0x564 int32_t min_jump_distance; // 0x568 int32_t max_jump_distance; // 0x56c int32_t impact_position_offset; // 0x570 int32_t vector_preview_radius; // 0x574 Vector m_vEndpoint; // 0x578 ParticleIndex_t m_nToBounceFXIndex; // 0x584 ParticleIndex_t m_nToTargetFXIndex; // 0x588 Vector m_vDashPosition; // 0x58c Vector m_vFacePosition; // 0x598 Vector m_vTravelDir; // 0x5a4 float m_fTravelDistance; // 0x5b0 }; // Alignment: 12 // Size: 0x1170 class CDOTA_Modifier_Marci_Lunge_TrackingMotion : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 int32_t m_nMaxJumpDistance; // 0x113c int32_t landing_radius; // 0x1140 int32_t max_jump_distance; // 0x1144 int32_t min_jump_distance; // 0x1148 int32_t target_abort_distance; // 0x114c int32_t impact_position_offset; // 0x1150 float m_flCastDistance; // 0x1154 ParticleIndex_t m_nAoEFXIndex; // 0x1158 Vector m_vDestination; // 0x115c CHandle< CBaseEntity > m_hBounceEntity; // 0x1168 CHandle< CBaseEntity > m_hBounceEntityClient; // 0x116c }; // Alignment: 27 // Size: 0x11b8 class CDOTA_Modifier_Marci_Lunge_Arc : public CDOTA_Buff { public: float m_flPredictedTotalTime; // 0x1138 Vector m_vStartPosition; // 0x113c float m_flCurrentTimeHoriz; // 0x1148 float m_flCurrentTimeVert; // 0x114c bool m_bDamageApplied; // 0x1150 bool m_bTargetTeleported; // 0x1151 private: [[maybe_unused]] uint8_t __pad1152[0x2]; // 0x1152 public: Vector m_vHorizontalVelocity; // 0x1154 Vector m_vLastKnownTargetPosition; // 0x1160 float m_flInitialVelocityZ; // 0x116c float m_fClampedProjectileSpeed; // 0x1170 ParticleIndex_t m_nFXIndex; // 0x1174 float m_fAcceleration; // 0x1178 bool m_bTriggeredLandingAnim; // 0x117c private: [[maybe_unused]] uint8_t __pad117d[0x3]; // 0x117d public: int32_t m_nMaxJumpDistance; // 0x1180 int32_t min_jump_distance; // 0x1184 int32_t max_jump_distance; // 0x1188 float min_lob_travel_time; // 0x118c float max_lob_travel_time; // 0x1190 int32_t landing_radius; // 0x1194 float debuff_duration; // 0x1198 float min_height_above_lowest; // 0x119c float min_height_above_highest; // 0x11a0 float min_acceleration; // 0x11a4 float max_acceleration; // 0x11a8 float impact_damage; // 0x11ac int32_t impact_position_offset; // 0x11b0 float ally_buff_duration; // 0x11b4 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Marci_Lunge_LandingAnim : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Marci_CompanionRun_AllyMovespeed : public CDOTA_Buff { public: float ally_movespeed_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Marci_Lunge_Debuff : public CDOTA_Buff { public: int32_t movement_slow_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Marci_Lunge_Buff : public CDOTA_Buff { public: int32_t scepter_armor; // 0x1138 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_Marci_Guardian : public CDOTABaseAbility { public: float buff_duration; // 0x550 int32_t nearest_ally_search_range; // 0x554 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Marci_Guardian_Buff : public CDOTA_Buff { public: float lifesteal_pct; // 0x1138 int32_t bonus_damage; // 0x113c int32_t bonus_attack_range; // 0x1140 float m_fLifestealPct; // 0x1144 float m_fDamageAbsorbed; // 0x1148 }; // Alignment: 4 // Size: 0x560 class CDOTA_Ability_Marci_Unleash : public CDOTABaseAbility { public: float duration; // 0x550 int32_t pulse_radius; // 0x554 float pulse_debuff_duration; // 0x558 int32_t pulse_damage; // 0x55c }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Marci_Unleash_Pull : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 int32_t shard_push_length; // 0x114c }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Marci_Unleash : public CDOTA_Buff { public: float time_between_flurries; // 0x1138 int32_t charges_per_flurry; // 0x113c int32_t flurry_charge_increment; // 0x1140 int32_t bonus_movespeed; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 9 // Size: 0x1158 class CDOTA_Modifier_Marci_Unleash_Flurry : public CDOTA_Buff { public: int32_t flurry_bonus_attack_speed; // 0x1138 float time_between_flurries; // 0x113c float debuff_duration; // 0x1140 float max_time_window_per_hit; // 0x1144 bool m_bBonusSpeed; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: ParticleIndex_t m_nFXStackIndex; // 0x114c bool m_bIsDoingFlurryAttack; // 0x1150 bool m_bIsDoingFlurryPulseAttack; // 0x1151 private: [[maybe_unused]] uint8_t __pad1152[0x2]; // 0x1152 public: GameTime_t m_fLastAttackTime; // 0x1154 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Marci_Unleash_FlurryCooldown : public CDOTA_Buff { public: int32_t charges_per_flurry; // 0x1138 float time_between_flurries; // 0x113c float recovery_fixed_attack_rate; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Marci_Unleash_FlurryPulse_Debuff : public CDOTA_Buff { public: float pulse_move_slow_pct; // 0x1138 float pulse_attack_slow_pct; // 0x113c }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_AllyAbsorb : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_Damage : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_Range : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Grapple_StunDuration : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Guardian_MagicImmunity : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Marci_Guardian_MagicImmunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Unleash_LungeRefresh : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Unleash_Silence : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Marci_Unleash_Pulse_Silence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Marci_Guardian_Lifesteal : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PrimalBeast_Trample : public CDOTABaseAbility { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Primalbeast_Trample : public CDOTA_Buff { public: int32_t effect_radius; // 0x1138 Vector vLastPos; // 0x113c float flCurrentDistance; // 0x1148 int32_t step_distance; // 0x114c int32_t bonus_magic_resistance; // 0x1150 }; // Alignment: 1 // Size: 0x558 class CDOTA_Ability_PrimalBeast_Pulverize : public CDOTABaseAbility { public: CDOTA_BaseNPC* m_hTarget; // 0x550 }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_PrimalBeast_Pulverize : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 float m_flOffset; // 0x113c QAngle m_vStartAngles; // 0x1140 Vector m_vStartLocation; // 0x114c float animation_rate; // 0x1158 bool m_bInterrupted; // 0x115c bool m_bHasBeenDestroyed; // 0x115d }; // Alignment: 7 // Size: 0x1168 class CDOTA_Modifier_PrimalBeast_Pulverize_Self : public CDOTA_Buff { public: CHandle< CDOTA_BaseNPC > m_hTarget; // 0x1138 Vector m_vPulverizeCenter; // 0x113c Vector m_vCasterStartPos; // 0x1148 int32_t splash_radius; // 0x1154 float interval; // 0x1158 float ministun; // 0x115c int32_t damage; // 0x1160 }; // Alignment: 8 // Size: 0x580 class CDOTA_Ability_PrimalBeast_Onslaught : public CDOTABaseAbility { public: float max_charge_time; // 0x550 float knockback_distance; // 0x554 int32_t knockback_damage; // 0x558 int32_t collision_radius; // 0x55c int32_t max_distance; // 0x560 Vector m_vStartPos; // 0x564 ParticleIndex_t m_nFXIndex; // 0x570 int32_t m_nProjectileID; // 0x574 }; // Alignment: 12 // Size: 0x1170 class CDOTA_Modifier_PrimalBeast_Onslaught_Windup : public CDOTA_Buff { public: bool m_bReachedMax; // 0x1138 bool m_bShouldCharge; // 0x1139 private: [[maybe_unused]] uint8_t __pad113a[0x2]; // 0x113a public: float m_flLastOverheadTime; // 0x113c float m_flFacingTarget; // 0x1140 Vector m_vAimTarget; // 0x1144 ParticleIndex_t m_nCrosshairFX; // 0x1150 float m_flChargeDuration; // 0x1154 int32_t max_distance; // 0x1158 float max_charge_time; // 0x115c float turn_rate; // 0x1160 float base_power; // 0x1164 int32_t charge_speed; // 0x1168 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_PrimalBeast_Onslaught_Release : public CDOTABaseAbility { public: // no members available }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_PrimalBeast_Onslaught_Movement : public CDOTA_Buff { public: float tick_interval; // 0x1138 float charge_speed; // 0x113c float movement_turn_rate; // 0x1140 int32_t knockback_radius; // 0x1144 float knockback_distance; // 0x1148 int32_t knockback_damage; // 0x114c int32_t m_nEnemyHeroesHit; // 0x1150 float m_flFacingTarget; // 0x1154 ParticleIndex_t m_nFXIndex; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1160 }; // Alignment: 10 // Size: 0x1180 class CDOTA_Modifier_PrimalBeast_Onslaught_Knockback : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bTargetTeleported; // 0x115d private: [[maybe_unused]] uint8_t __pad115e[0x2]; // 0x115e public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 2 // Size: 0x558 class CDOTA_Ability_PrimalBeast_Uproar : public CDOTABaseAbility { public: // MNetworkEnable // MNetworkChangeCallback "OnUproarActiveChanged" int32_t m_iUproarStatus; // 0x550 bool m_bUpdateIcons; // 0x554 }; // Alignment: 12 // Size: 0x11a0 class CDOTA_Modifier_PrimalBeast_Uproar : public CDOTA_Modifier_Stacking_Base { public: int32_t stack_limit; // 0x1158 int32_t damage_limit; // 0x115c float stack_duration; // 0x1160 float damage_min; // 0x1164 float damage_max; // 0x1168 int32_t bonus_damage_per_stack; // 0x116c ParticleIndex_t m_nFxIndexA; // 0x1170 int32_t iCur_stack; // 0x1174 int32_t bonus_damage; // 0x1178 float slow_duration; // 0x117c private: [[maybe_unused]] uint8_t __pad1180[0x18]; // 0x1180 public: float m_fTotalDamage; // 0x1198 GameTime_t m_flLastStackTime; // 0x119c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PrimalBeast_Uproar_Slow : public CDOTA_Buff { public: int32_t move_slow_per_stack; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_PrimalBeast_Uproar_Roared_Self : public CDOTA_Buff { public: int32_t roared_bonus_attack_speed; // 0x1138 int32_t roared_bonus_armor; // 0x113c int32_t m_nBuffStackCount; // 0x1140 }; // Alignment: 11 // Size: 0x1190 class CDOTA_Modifier_Primal_Beast_Uproar_Projectile_Thinker : public CDOTA_Buff { public: int32_t projectiles_per_stack; // 0x1138 int32_t projectile_speed; // 0x113c int32_t projectile_distance; // 0x1140 int32_t projectile_width; // 0x1144 int32_t splinter_angle; // 0x1148 float split_delay; // 0x114c int32_t projectile_waves; // 0x1150 int32_t m_nCurrentWaveCount; // 0x1154 int32_t tectonic_shift_projectiles; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< CHandle< CBaseEntity > > m_vecEnemiesHit; // 0x1160 CUtlVector< int32 > m_vecProjectileHandles; // 0x1178 }; // Alignment: 7 // Size: 0x578 class CDOTA_Ability_PrimalBeast_Rock_Throw : public CDOTABaseAbility { public: int32_t base_damage; // 0x550 int32_t impact_radius; // 0x554 int32_t fragment_impact_radius; // 0x558 int32_t fragment_impact_distance; // 0x55c int32_t min_range; // 0x560 float stun_duration; // 0x564 ParticleIndex_t m_nFXPreview; // 0x568 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Muerta_Gunslinger : public CDOTA_Buff { public: float double_shot_chance; // 0x1138 float target_search_bonus_range; // 0x113c CHandle< CBaseEntity > m_hSecondaryTarget; // 0x1140 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Muerta_PierceTheVeil : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 9 // Size: 0x5a8 class CDOTA_Ability_Muerta_DeadShot : public CDOTABaseAbility { public: int32_t radius; // 0x550 int32_t ricochet_radius_start; // 0x554 int32_t ricochet_radius_end; // 0x558 int32_t speed; // 0x55c Vector m_vTargetPos; // 0x560 Vector m_vEndpoint; // 0x56c CHandle< CBaseEntity > m_hTreeTarget; // 0x578 Vector m_vRicochetDir; // 0x57c private: [[maybe_unused]] uint8_t __pad0588[0x8]; // 0x588 public: CUtlVector< CHandle< CBaseEntity > > m_vEnemyHeroVisibilityOnCast; // 0x590 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Muerta_DeadShot_Slow : public CDOTA_Buff { public: int32_t impact_slow_percent; // 0x1138 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Muerta_DeadShot_Fear : public CDOTA_Buff { public: Vector m_vFearDir; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Muerta_PierceTheVeil : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Muerta_PierceTheVeilTransform : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Muerta_PierceTheVeil_Buff : public CDOTA_Buff { public: int32_t modelscale; // 0x1138 int32_t bonus_damage; // 0x113c int32_t attack_projectile_speed_bonus; // 0x1140 int32_t attack_range_bonus; // 0x1144 int32_t m_iOriginalAttackCapabilities; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Muerta_PierceTheVeil_MagicImmunityDamageCancel : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Muerta_TheCalling_Invulnerable : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Muerta_TheCalling : public CDOTABaseAbility { public: // no members available }; // Alignment: 15 // Size: 0x11a8 class CDOTA_Modifier_Muerta_Revenant_Thinker : public CDOTA_Buff { public: bool m_bSpiritsExplode; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t damage; // 0x113c int32_t hit_radius; // 0x1140 int32_t dead_zone_distance; // 0x1144 float speed_initial; // 0x1148 float speed_max; // 0x114c float acceleration; // 0x1150 int32_t num_revenants; // 0x1154 int32_t rotation_direction; // 0x1158 int32_t radius; // 0x115c float rotation_initial; // 0x1160 int32_t show_warning; // 0x1164 ParticleIndex_t m_nWarningFX; // 0x1168 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< sRevenantDef > m_SpiritDefs; // 0x1170 private: [[maybe_unused]] uint8_t __pad1188[0x18]; // 0x1188 public: int32_t m_nRevenantImpacts; // 0x11a0 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Muerta_TheCallingAuraSlow : public CDOTA_Buff { public: int32_t aura_movespeed_slow; // 0x1138 int32_t aura_attackspeed_slow; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Muerta_TheCalling_Silence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Muerta_Gunslinger : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Special_Bonus_Unique_Muerta_TrickShotCharges : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Bracer : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Bracer : public CDOTA_Item { public: int32_t counter; // 0x5f8 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Bracer : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t clock_time; // 0x1144 float bonus_health_regen; // 0x1148 int32_t bonus_damage; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Gauntlets : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Gauntlets : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Circlet : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Circlet : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Slippers : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Slippers : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_WraithBand : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_WraithBand : public CDOTA_Item { public: int32_t counter; // 0x5f8 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_WraithBand : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t bonus_attack_speed; // 0x1144 int32_t clock_time; // 0x1148 float bonus_armor; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mantle : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Mantle : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_NullTalisman : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_NullTalisman : public CDOTA_Item { public: int32_t counter; // 0x5f8 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_NullTalisman : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 float bonus_mana_regen; // 0x1144 int32_t bonus_max_mana_percentage; // 0x1148 int32_t clock_time; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tango : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_Tango_Single : public CDOTA_Item { public: GameTime_t m_flCreationTime; // 0x5f8 float duration_to_use; // 0x5fc }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_TangoHeal : public CDOTA_Buff { public: float health_regen; // 0x1138 bool superheal; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: float m_fHealingDone; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlString m_sAbilityClassname; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Clarity : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ClarityPotion : public CDOTA_Buff { public: float mana_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Flask : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_FlaskHealing : public CDOTA_Buff { public: int32_t health_regen; // 0x1138 int32_t break_on_hero_damage; // 0x113c float m_fHealingDone; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlString m_sAbilityClassname; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BootsOfSpeed : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BootsOfSpeed : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_BootsOfTravel : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_BootsOfTravel_2 : public CDOTA_Item_Recipe_BootsOfTravel { public: // no members available }; // Alignment: 3 // Size: 0x600 class CDOTA_Item_BootsOfTravel : public CDOTA_Item { public: float m_flTeleportTimeOverride; // 0x5f8 bool m_bPendingSellExcessScrolls; // 0x5fc bool m_bQueueSellScrolls; // 0x5fd }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BootsOfTravel : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Item_BootsOfTravel_2 : public CDOTA_Modifier_Item_BootsOfTravel { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_BootsOfTravel_Incoming : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_BootsOfTravel_2 : public CDOTA_Item_BootsOfTravel { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_PowerTreads : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_PowerTreads : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_stat; // 0x1140 int32_t bonus_damage; // 0x1144 }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_PowerTreads : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnPowerTreadsStatChanged" int32_t m_iStat; // 0x5f8 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_PhaseBoots : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PhaseBoots : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Item_PhaseBoots : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_damage_melee; // 0x113c int32_t bonus_damage_range; // 0x1140 int32_t damage_block_melee; // 0x1144 int32_t damage_block_ranged; // 0x1148 int32_t block_chance; // 0x114c int32_t bonus_attack_speed; // 0x1150 int32_t bonus_armor; // 0x1154 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_PhaseBoots_Active : public CDOTA_Buff { public: int32_t phase_movement_speed; // 0x1138 int32_t phase_movement_speed_range; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_TranquilBoots : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x618 class CDOTA_Item_TranquilBoots : public CDOTA_Item { public: int32_t break_count; // 0x5f8 private: [[maybe_unused]] uint8_t __pad05fc[0x4]; // 0x5fc public: CUtlVector< GameTime_t > m_DamageList; // 0x600 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Item_TranquilBoots : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t broken_movement_speed; // 0x113c int32_t bonus_armor; // 0x1140 int32_t bonus_health_regen; // 0x1144 int32_t break_threshold; // 0x1148 int32_t break_time; // 0x114c int32_t break_count; // 0x1150 float m_flResetTime; // 0x1154 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_TranquilBoots2 : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x618 class CDOTA_Item_TranquilBoots2 : public CDOTA_Item { public: int32_t break_count; // 0x5f8 private: [[maybe_unused]] uint8_t __pad05fc[0x4]; // 0x5fc public: CUtlVector< GameTime_t > m_DamageList; // 0x600 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_TranquilBoots2 : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t broken_movement_speed; // 0x113c int32_t bonus_armor; // 0x1140 int32_t bonus_health_regen; // 0x1144 int32_t break_threshold; // 0x1148 int32_t break_time; // 0x114c int32_t break_count; // 0x1150 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_GlovesOfHaste : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifer_Item_GlovesOfHaste : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BeltOfStrength : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BeltOfStrength : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RobeOfMagi : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_RobeOfMagi : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BootsOfElven : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BootsOfElven : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BladesOfAttack : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BladesOfAttack : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 3 // Size: 0x608 class CDOTA_Item_EmptyBottle : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnStoredRuneChanged" int32_t m_iStoredRuneType; // 0x5f8 GameTime_t m_fStoredRuneTime; // 0x5fc float rune_expire_time; // 0x600 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_EmptyBottle : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_BottleRegeneration : public CDOTA_Buff { public: int32_t health_restore; // 0x1138 int32_t mana_restore; // 0x113c int32_t health_restore_pct; // 0x1140 int32_t mana_restore_pct; // 0x1144 int32_t break_on_hero_damage; // 0x1148 float m_fHealingDone; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_DemonEdge : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_DemonEdge : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Eaglehorn : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_EagleHorn : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Reaver : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Reaver : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SacredRelic : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_SacredRelic : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Hyperstone : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Hyperstone : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RingOfHealth : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfHealth : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_VoidStone : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_VoidStone : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MysticStaff : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_MysticStaff : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_EnergyBooster : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_EnergyBooster : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PointBooster : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_PointBooster : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t bonus_health; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_VitalityBooster : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_VitalityBooster : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Broadsword : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Broadsword : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Quarterstaff : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Quarterstaff : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_speed; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Claymore : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Claymore : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RingOfProtection : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfProtection : public CDOTA_Buff_Item { public: float bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_StoutShield : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_StoutShield : public CDOTA_Buff_Item { public: int32_t damage_block_melee; // 0x1138 int32_t damage_block_ranged; // 0x113c int32_t block_chance; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Javelin : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_Javelin : public CDOTA_Buff_Item { public: int32_t bonus_chance; // 0x1138 int32_t bonus_chance_damage; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MithrilHammer : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_MithrilHammer : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_ChainMail : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_ChainMail : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HelmOfIronWill : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_HelmOfIronWill : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 float bonus_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PlateMail : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_PlateMail : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_QuellingBlade : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_QuellingBlade : public CDOTA_Buff_Item { public: int32_t damage_bonus; // 0x1138 int32_t damage_bonus_ranged; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_IronwoodBranch : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_IronwoodBranch : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_OgreAxe : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_OgreAxe : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BladeOfAlacrity : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BladeOfAlacrity : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_StaffOfWizardry : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_StaffOfWizardry : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UltimateOrb : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_UltimateOrb : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MaskOfDeath : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_MaskOfDeath : public CDOTA_Buff_Item { public: int32_t lifesteal_percent; // 0x1138 int32_t creep_lifesteal_reduction_pct; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RingOfRegeneration : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfRegeneration : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_BlinkDagger : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SuperBlinkDagger : public CDOTA_Item_BlinkDagger { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_BlinkDagger : public CDOTA_Buff_Item { public: float blink_damage_cooldown; // 0x1138 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Item_SuperBlinkDagger : public CDOTA_Modifier_Item_BlinkDagger { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SobiMask : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_SobiMask : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 }; // Alignment: 4 // Size: 0x608 class CDOTA_Item_GemOfTrueSight : public CDOTA_Item { public: int32_t m_iTempViewer; // 0x5f8 int32_t m_iTeam; // 0x5fc int32_t m_nFXIndex; // 0x600 CHandle< CBaseEntity > m_hThinker; // 0x604 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_GemOfTrueSight : public CDOTA_Buff_Item { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Gem_Active_TrueSight : public CDOTA_Buff { public: int32_t active_radius; // 0x1138 float duration; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PlaneswalkersCloak : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_PlaneswalkersCloak : public CDOTA_Buff_Item { public: int32_t bonus_magical_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MagicStick : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_MagicStick : public CDOTA_Buff_Item { public: int32_t charge_radius; // 0x1138 int32_t max_charges; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MagicWand : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MagicWand : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_MagicWand : public CDOTA_Buff_Item { public: int32_t charge_radius; // 0x1138 int32_t max_charges; // 0x113c int32_t bonus_all_stats; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_TalismanOfEvasion : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_TalismanOfEvasion : public CDOTA_Buff_Item { public: int32_t bonus_evasion; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_GhostScepter : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_GhostScepter : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_GhostScepter_Active : public CDOTA_Buff { public: int32_t extra_spell_damage_percent; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_HandOfMidas : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HandOfMidas : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_HandOfMidas : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_OblivionStaff : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_OblivionStaff : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_OblivionStaff : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 float bonus_mana_regen; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Perseverance : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Perseverance : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Perseverance : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 float bonus_mana_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_PoorMansShield : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PoorMansShield : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_PoorMansShield : public CDOTA_Buff_Item { public: int32_t damage_block_melee; // 0x1138 int32_t damage_block_ranged; // 0x113c int32_t block_chance; // 0x1140 int32_t bonus_agility; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_DustofAppearance : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_DustofAppearance : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 bool m_bCastOnInvisibleHero; // 0x113c }; // Alignment: 0 // Size: 0x8f0 class CDOTA_NoWardTrigger : public CBaseTrigger { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Buff_Wards : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_ObserverWard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_ObserverWard : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SentryWard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_SentryWard : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_WardTrueSight : public CDOTA_Buff { public: int32_t true_sight_range; // 0x1138 }; // Alignment: 7 // Size: 0x620 class CDOTA_Item_TeleportScroll : public CDOTA_Item { public: CHandle< CBaseEntity > m_hTeleportTarget; // 0x5f8 ParticleIndex_t m_nFXOrigin; // 0x5fc ParticleIndex_t m_nFXDestination; // 0x600 Vector m_vDestination; // 0x604 int32_t m_iMinDistance; // 0x610 float m_flBaseTeleportTime; // 0x614 float m_flExtraTeleportTime; // 0x618 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_DivineRapier : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_DivineRapier : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_DivineRapier : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MonkeyKingBar : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MonkeyKingBar : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Item_MonkeyKingBar : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_chance; // 0x113c int32_t bonus_chance_damage; // 0x1140 int32_t bonus_damage; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Radiance : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Radiance : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Radiance : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t evasion; // 0x113c int32_t upgrade_day_vision; // 0x1140 int32_t aura_radius; // 0x1144 bool m_bLastToggleState; // 0x1148 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Item_Radiance_Debuff : public CDOTA_Buff { public: int32_t aura_damage; // 0x1140 int32_t aura_damage_upgrade_bonus; // 0x1144 int32_t aura_damage_illusions; // 0x1148 int32_t blind_pct; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Butterfly : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Butterfly : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Butterfly_Extra : public CDOTA_Buff { public: int32_t bonus_move_speed; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Butterfly : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_evasion; // 0x1140 int32_t bonus_attack_speed; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_GreaterCritical : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_GreaterCritical : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_GreaterCritical : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t crit_chance; // 0x113c int32_t crit_multiplier; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_CraniumBasher : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_CraniumBasher : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Item_CraniumBasher : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bash_chance_melee; // 0x113c int32_t bash_chance_ranged; // 0x1140 float bash_duration; // 0x1144 float bash_cooldown; // 0x1148 int32_t bonus_chance_damage; // 0x114c int32_t bonus_damage; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_AbyssalBlade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_AbyssalBlade : public CDOTA_Item { public: // no members available }; // Alignment: 13 // Size: 0x1188 class CDOTA_Modifier_Item_AbyssalBlade : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bash_chance_melee; // 0x113c int32_t bash_chance_ranged; // 0x1140 float bash_duration; // 0x1144 float bash_cooldown; // 0x1148 int32_t bonus_chance_damage; // 0x114c int32_t bonus_damage; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 int32_t bonus_health; // 0x1170 float bonus_health_regen; // 0x1174 int32_t block_damage_ranged; // 0x1178 int32_t block_damage_melee; // 0x117c int32_t block_chance; // 0x1180 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Battlefury : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Battlefury : public CDOTA_Item { public: // no members available }; // Alignment: 12 // Size: 0x1168 class CDOTA_Modifier_Item_Battlefury : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 float bonus_health_regen; // 0x113c float bonus_mana_regen; // 0x1140 int32_t cleave_damage_percent; // 0x1144 int32_t cleave_damage_percent_creep; // 0x1148 int32_t cleave_starting_width; // 0x114c int32_t cleave_ending_width; // 0x1150 int32_t cleave_distance; // 0x1154 int32_t upgraded_cleave_bonus; // 0x1158 int32_t upgraded_damage_bonus; // 0x115c int32_t quelling_bonus; // 0x1160 int32_t quelling_bonus_ranged; // 0x1164 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MantaStyle : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MantaStyle : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_MantaStyle : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_strength; // 0x113c int32_t bonus_agility; // 0x1140 int32_t bonus_intellect; // 0x1144 int32_t bonus_movement_speed; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Manta_Phase : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Manta : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_LesserCritical : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_LesserCritical : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_LesserCritical : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t crit_chance; // 0x113c int32_t crit_multiplier; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Armlet : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x608 class CDOTA_Item_Armlet : public CDOTA_Item { public: float toggle_cooldown; // 0x5f8 GameTime_t m_flLastActivateTime; // 0x5fc GameTime_t m_flLastDeactivateTime; // 0x600 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Armlet : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_armor; // 0x1140 int32_t bonus_health_regen; // 0x1144 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Armlet_UnholyStrength : public CDOTA_Buff { public: int32_t unholy_bonus_damage; // 0x1138 int32_t unholy_bonus_attack_speed; // 0x113c int32_t unholy_bonus_strength; // 0x1140 int32_t unholy_bonus_armor; // 0x1144 int32_t unholy_health_drain_per_second; // 0x1148 int32_t str_tick_count; // 0x114c float tick_interval; // 0x1150 float m_flDamageRemainder; // 0x1154 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_InvisibilityEdge : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_InvisibilityEdge : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_InvisibilityEdge : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_damage; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_InvisibilityEdge_WindWalk : public CDOTA_Modifier_Invisible { public: int32_t windwalk_bonus_damage; // 0x1148 int32_t windwalk_movement_speed; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_SheepStick : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_SheepStick : public CDOTA_Item { public: int32_t upgrade_radius; // 0x5f8 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_SheepStick : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 float bonus_mana_regen; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SheepStick_Debuff : public CDOTA_Modifier_Hexed { public: float sheep_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_OrchidMalevolence : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_OrchidMalevolence : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_OrchidMalevolence : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_damage; // 0x1140 int32_t bonus_attack_speed; // 0x1144 int32_t spell_amp; // 0x1148 int32_t mana_regen_multiplier; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_OrchidMalevolence_Debuff : public CDOTA_Buff { public: float silence_damage_percent; // 0x1138 float m_flDamageTaken; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_RodOfAtos : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RodOfAtos : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_RodOfAtos : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_RodOfAtos_Debuff : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Cyclone : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Cyclone : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Cyclone : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_movement_speed; // 0x1140 }; // Alignment: 1 // Size: 0x1158 class CDOTA_Modifier_Eul_Cyclone : public CDOTA_Modifier_Cyclone { public: CHandle< CBaseEntity > m_hBlocker; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Eul_Cyclone_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_ForceStaff : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_ForceStaff : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_ForceStaff : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_intellect; // 0x113c }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_ForceStaff : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float push_length; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dagon : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dagon2 : public CDOTA_Item_Recipe_Dagon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dagon3 : public CDOTA_Item_Recipe_Dagon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dagon4 : public CDOTA_Item_Recipe_Dagon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dagon5 : public CDOTA_Item_Recipe_Dagon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Dagon : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon_Upgraded : public CDOTA_Item_Dagon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon_Upgraded2 : public CDOTA_Item_Dagon_Upgraded { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon_Upgraded3 : public CDOTA_Item_Dagon_Upgraded { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon_Upgraded4 : public CDOTA_Item_Dagon_Upgraded { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dagon_Upgraded5 : public CDOTA_Item_Dagon_Upgraded { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Dagon : public CDOTA_Buff_Item { public: int32_t bonus_int; // 0x1138 int32_t bonus_str; // 0x113c int32_t bonus_agi; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_RefresherOrb : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RefresherOrb : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_RefresherOrb : public CDOTA_Buff_Item { public: int32_t bonus_health_regen; // 0x1138 float bonus_mana_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RefresherOrb_Shard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_UltimateScepter : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_UltimateScepter_2 : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UltimateScepter_2 : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UltimateScepter : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UltimateScepter_Roshan : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_UltimateScepter : public CDOTA_Buff_Item { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t bonus_all_stats; // 0x113c int32_t bonus_health; // 0x1140 int32_t bonus_mana; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_UltimateScepter_Consumed : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_UltimateScepter_Consumed_Alchemist : public CDOTA_Modifier_Item_UltimateScepter_Consumed { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t bonus_all_stats; // 0x113c int32_t bonus_health; // 0x1140 int32_t bonus_mana; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Assault_Cuirass : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Assault_Cuirass : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Assault_Cuirass_Positive_Aura : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Assault_Cuirass_Positive : public CDOTA_Buff { public: int32_t aura_attack_speed; // 0x1138 int32_t aura_positive_armor; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Assault_Cuirass_Negative_Armor_Aura : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Assault_Cuirass_Negative_Armor : public CDOTA_Buff { public: int32_t aura_negative_armor; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Assault_Cuirass : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Heart : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Heart : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Heart : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_health; // 0x113c float health_regen_pct; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Black_King_Bar : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Black_King_Bar : public CDOTA_Item { public: bool m_bActive; // 0x5f8 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Black_King_Bar_Immune : public CDOTA_Modifier_MagicImmune { public: int32_t model_scale; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Black_King_Bar : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_damage; // 0x113c float duration; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Aegis : public CDOTA_Buff_Item { public: float reincarnate_time; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aegis_Regen : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_Aegis : public CDOTA_Item { public: int32_t m_iKillerTeam; // 0x5f8 GameTime_t m_fEquipTime; // 0x5fc }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Shivas_Guard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Shivas_Guard : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Shivas_Guard : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t bonus_armor; // 0x113c int32_t aura_radius; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Shivas_Guard_Aura : public CDOTA_Buff { public: int32_t aura_attack_speed; // 0x1138 int32_t hp_regen_degen_aura; // 0x113c }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Item_Shivas_Guard_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 CountdownTimer m_ViewerTimer; // 0x1158 int32_t blast_speed; // 0x1170 int32_t blast_radius; // 0x1174 int32_t blast_damage; // 0x1178 float blast_debuff_duration; // 0x117c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Shivas_Guard_Blast : public CDOTA_Buff { public: int32_t blast_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Bloodstone : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Bloodstone : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Bloodstone_Active : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Bloodstone : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c float spell_lifesteal; // 0x1140 float lifesteal_multiplier; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Bloodstone_Drained : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Sange : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Sange : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Sange : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t hp_regen_amp; // 0x113c int32_t status_resistance; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Yasha : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Yasha : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Yasha : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t movement_speed_percent_bonus; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_SangeAndYasha : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SangeAndYasha : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_SangeAndYasha : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t movement_speed_percent_bonus; // 0x1140 int32_t bonus_strength; // 0x1144 int32_t hp_regen_amp; // 0x1148 int32_t status_resistance; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MaskOfMadness : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MaskOfMadness : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_MaskOfMadness : public CDOTA_Buff_Item { public: int32_t lifesteal_percent; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 int32_t creep_lifesteal_reduction_pct; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_MaskOfMadness_Berserk : public CDOTA_Buff { public: int32_t berserk_bonus_attack_speed; // 0x1138 int32_t berserk_bonus_movement_speed; // 0x113c int32_t berserk_armor_reduction; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Sphere : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Sphere : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Sphere : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 float bonus_health_regen; // 0x113c float bonus_mana_regen; // 0x1140 float block_cooldown; // 0x1144 float upgrade_absorb_duration; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Sphere_Target : public CDOTA_Buff_Item { public: float upgrade_absorb_duration; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Sphere_Upgrade_Absorb : public CDOTA_Buff { public: int32_t damage_absorb; // 0x1138 bool m_bStartedTimer; // 0x113c private: [[maybe_unused]] uint8_t __pad113d[0x3]; // 0x113d public: int32_t m_flDamageAbsorbed; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Vanguard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Vanguard : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Vanguard : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float bonus_health_regen; // 0x113c int32_t block_damage_ranged; // 0x1140 int32_t block_damage_melee; // 0x1144 int32_t block_chance; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Crimson_Guard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Crimson_Guard : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Crimson_Guard_Extra : public CDOTA_Buff { public: int32_t block_chance_active; // 0x1138 int32_t block_damage_ranged_active; // 0x113c int32_t block_damage_melee_active; // 0x1140 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_Crimson_Guard : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float bonus_health_regen; // 0x113c float bonus_armor; // 0x1140 int32_t block_damage_ranged; // 0x1144 int32_t block_damage_melee; // 0x1148 int32_t block_chance; // 0x114c int32_t bonus_aoe_radius; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Crimson_Guard_NoStack : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Blade_Mail : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Blade_Mail : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Blade_Mail_Reflect : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Blade_Mail : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_armor; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t passive_reflection_constant; // 0x1144 int32_t passive_reflection_pct; // 0x1148 int32_t active_reflection_pct; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Soul_Booster : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Soul_Booster : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Soul_Booster : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c int32_t bonus_magical_armor; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Hood_Of_Defiance : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Hood_Of_Defiance : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Hood_Of_Defiance_Barrier : public CDOTA_Buff { public: int32_t barrier_block; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Hood_Of_Defiance : public CDOTA_Buff_Item { public: int32_t bonus_spell_resist; // 0x1138 float bonus_health_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mekansm : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mekansm : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Mekansm : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Mekansm_Aura : public CDOTA_Buff { public: float aura_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Mekansm_Noheal : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Vladmir : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Vladmir : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Vladmir : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Vladmir_Aura : public CDOTA_Buff { public: int32_t lifesteal_aura; // 0x1138 int32_t damage_aura; // 0x113c float armor_aura; // 0x1140 float mana_regen_aura; // 0x1144 int32_t creep_lifesteal_reduction_pct; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Buckler : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Buckler : public CDOTA_Buff_Item { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t bonus_aoe_radius; // 0x113c float armor; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Buckler_Effect : public CDOTA_Buff { public: float bonus_aoe_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Buckler : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ring_Of_Basilius : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ring_Of_Basilius : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Ring_Of_Basilius : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 float mana_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ring_Of_Basilius_Effect : public CDOTA_Buff { public: float aura_mana_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Pipe : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Pipe : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Pipe : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 float health_regen; // 0x113c int32_t magic_resistance; // 0x1140 int32_t aura_radius; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Pipe_Aura : public CDOTA_Buff { public: float aura_health_regen; // 0x1138 int32_t magic_resistance_aura; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Pipe_Barrier : public CDOTA_Buff { public: int32_t barrier_amount; // 0x1138 int32_t barrier_block; // 0x113c int32_t barrier_block_creep; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Pipe_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Urn_Of_Shadows : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Urn_Of_Shadows : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Urn_Of_Shadows : public CDOTA_Buff_Item { public: float mana_regen; // 0x1138 int32_t bonus_all_stats; // 0x113c float bonus_armor; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Urn_Heal : public CDOTA_Buff { public: int32_t soul_heal_amount; // 0x1138 float m_fHealingDone; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Urn_Damage : public CDOTA_Buff { public: int32_t soul_damage_amount; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Headdress : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Headdress : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Headdress : public CDOTA_Buff_Item { public: float health_regen; // 0x1138 int32_t aura_radius; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Headdress_Aura : public CDOTA_Buff { public: float aura_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Satanic : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Satanic : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Satanic : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_strength; // 0x113c int32_t lifesteal_percent; // 0x1140 int32_t unholy_lifesteal_percent; // 0x1144 int32_t creep_lifesteal_reduction_pct; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Satanic_Unholy : public CDOTA_Buff { public: int32_t unholy_lifesteal_percent; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_HelmOfTheDominator : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_HelmOfTheDominator_2 : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_HelmOfTheOverlord : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HelmOfTheDominator : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HelmOfTheDominator_2 : public CDOTA_Item_HelmOfTheDominator { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HelmOfTheOverlord : public CDOTA_Item_HelmOfTheDominator { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_HelmOfTheDominator : public CDOTA_Buff_Item { public: int32_t bonus_stats; // 0x1138 int32_t bonus_armor; // 0x113c float bonus_regen; // 0x1140 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Item_HelmOfTheDominator_2 : public CDOTA_Modifier_Item_HelmOfTheDominator { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Item_HelmOfTheDominator_BonusHealth : public CDOTA_Buff { public: int32_t health_min; // 0x1138 int32_t new_max; // 0x113c int32_t health_bonus; // 0x1140 int32_t model_scale; // 0x1144 int32_t creep_bonus_damage; // 0x1148 int32_t creep_bonus_hp_regen; // 0x114c int32_t creep_bonus_mp_regen; // 0x1150 int32_t creep_bonus_armor; // 0x1154 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Desolator : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Desolator : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Item_Desolator : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_damage_per_kill; // 0x113c int32_t bonus_damage_per_assist; // 0x1140 int32_t max_damage; // 0x1144 float corruption_duration; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Desolator_Corruption : public CDOTA_Buff { public: int32_t corruption_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Revenants_Brooch : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Revenants_Brooch : public CDOTA_Item { public: // no members available }; // Alignment: 10 // Size: 0x1188 class CDOTA_Modifier_Item_Revenants_Brooch : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 int32_t projectile_speed; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t bonus_attack_speed; // 0x1144 int32_t mana_cost; // 0x1148 int32_t slow_duration; // 0x114c int32_t damage_penalty; // 0x1150 int32_t passive_cooldown; // 0x1154 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 CUtlVector< int16 > m_InFlightWitchBladeAttackRecords; // 0x1170 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Revenants_Brooch_InternalCD : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Revenants_Brooch_Counter : public CDOTA_Buff { public: float active_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Misery_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Eagle_Eye : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x608 class CDOTA_Item_EagleEye : public CDOTA_Item { public: int32_t m_iTempViewer; // 0x5f8 int32_t m_iTeam; // 0x5fc int32_t m_nFXIndex; // 0x600 CHandle< CBaseEntity > m_hThinker; // 0x604 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_EagleEye : public CDOTA_Buff_Item { public: int32_t radius; // 0x1138 int32_t bonus_agi; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Tenderizer : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tenderizer : public CDOTA_Item { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_Item_Tenderizer : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bash_chance_melee; // 0x1140 int32_t bash_chance_ranged; // 0x1144 float bash_duration; // 0x1148 float bash_cooldown; // 0x114c int32_t bonus_chance_damage; // 0x1150 int32_t bonus_damage; // 0x1154 int32_t weaken_per_hit; // 0x1158 float weaken_duration; // 0x115c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1160 }; // Alignment: 1 // Size: 0x1160 class CDOTA_Modifier_Tenderizer_Weaken : public CDOTA_Modifier_Stacking_Base { public: int32_t weaken_per_hit; // 0x1158 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Boots_Of_Bearing : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Boots_Of_Bearing : public CDOTA_Item { public: int32_t radius; // 0x5f8 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Boots_Of_Bearing : public CDOTA_Buff_Item { public: int32_t radius; // 0x1138 int32_t bonus_movement_speed; // 0x113c int32_t bonus_health_regen; // 0x1140 int32_t bonus_str; // 0x1144 int32_t bonus_int; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Boots_Of_Bearing_Aura : public CDOTA_Buff { public: int32_t aura_movement_speed; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Boots_Of_Bearing_Active : public CDOTA_Buff { public: int32_t bonus_attack_speed_pct; // 0x1138 int32_t bonus_movement_speed_pct; // 0x113c float bonus_ms_duration; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_VoidwalkerScythe : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_VoidwalkerScythe : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Item_VoidwalkerScythe : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t attacks; // 0x113c int32_t bonus_damage; // 0x1140 float buff_duration; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 int32_t m_nCounter; // 0x1160 }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_Voidwalker_Phased : public CDOTA_Buff { public: int32_t damage; // 0x1138 float max_damage_duration; // 0x113c int32_t attack_range_bonus; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 bool bAttackRange; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: float m_flStartTime; // 0x1164 float m_flFadeTime; // 0x1168 float m_flDamageScale; // 0x116c float duration; // 0x1170 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_WraithPact : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_WraithPact : public CDOTA_Item { public: CHandle< CBaseEntity > m_hWard; // 0x5f8 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_WraithPact : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 int32_t bonus_mana; // 0x113c int32_t bonus_health; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_WraithPact_Thinker : public CDOTA_Buff { public: int32_t pact_aura_radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c float aura_dps; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_WraithPact_DeathAura : public CDOTA_Buff { public: int32_t armor_penalty_aura; // 0x1138 int32_t damage_penalty_aura; // 0x113c float aura_dps; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Skadi : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Skadi : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Item_Skadi : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 int32_t bonus_health; // 0x113c int32_t bonus_mana; // 0x1140 float cold_duration; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Skadi_Slow : public CDOTA_Buff { public: int32_t cold_slow_melee; // 0x1138 int32_t cold_attack_slow_melee; // 0x113c int32_t cold_slow_ranged; // 0x1140 int32_t cold_attack_slow_ranged; // 0x1144 int32_t heal_reduction; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mjollnir : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mjollnir : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1178 class CDOTA_Modifier_MjollnirChain : public CDOTA_Buff { public: int32_t chain_radius; // 0x1138 int32_t chain_strikes; // 0x113c int32_t chain_damage; // 0x1140 float chain_delay; // 0x1144 int32_t chain_damage_per_charge; // 0x1148 int32_t m_iCurJumpCount; // 0x114c Vector m_vCurTargetLoc; // 0x1150 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1160 }; // Alignment: 11 // Size: 0x1190 class CDOTA_Modifier_Item_Mjollnir : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t chain_chance; // 0x1140 int32_t chain_strikes; // 0x1144 int32_t chain_damage; // 0x1148 int32_t chain_radius; // 0x114c int32_t chain_damage_per_charge; // 0x1150 int32_t max_charges; // 0x1154 float chain_cooldown; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1160 CountdownTimer m_ChainTimer; // 0x1178 }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_Item_Mjollnir_Static : public CDOTA_Buff { public: int32_t static_chance; // 0x1140 int32_t static_strikes; // 0x1144 int32_t static_damage; // 0x1148 int32_t static_primary_radius; // 0x114c int32_t static_seconary_radius; // 0x1150 int32_t static_radius; // 0x1154 float static_cooldown; // 0x1158 int32_t chain_damage_per_charge; // 0x115c CountdownTimer m_StaticTimer; // 0x1160 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Maelstrom : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Maelstrom : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_MaelstromChain : public CDOTA_Buff { public: int32_t chain_radius; // 0x1138 int32_t chain_strikes; // 0x113c int32_t chain_damage; // 0x1140 float chain_delay; // 0x1144 int32_t m_iCurJumpCount; // 0x1148 Vector m_vCurTargetLoc; // 0x114c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Item_Maelstrom : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t chain_chance; // 0x113c int32_t chain_strikes; // 0x1140 int32_t chain_damage; // 0x1144 int32_t chain_radius; // 0x1148 float chain_cooldown; // 0x114c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1150 CountdownTimer m_ChainTimer; // 0x1168 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Diffusal_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Diffusal_Blade2 : public CDOTA_Item_Recipe_Diffusal_Blade { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Diffusal_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Diffusal_Blade : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_intellect; // 0x113c float damage_per_burn; // 0x1140 int32_t feedback_mana_burn; // 0x1144 int32_t feedback_mana_burn_illusion_melee; // 0x1148 int32_t feedback_mana_burn_illusion_ranged; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Diffusal_Blade_Slow : public CDOTA_Buff { public: int32_t purge_rate; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Diffusal_Blade_Level2 : public CDOTA_Item_Diffusal_Blade { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ethereal_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ethereal_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Ethereal_Blade : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t spell_amp; // 0x1144 int32_t spell_lifesteal_amp; // 0x1148 int32_t mana_regen_multiplier; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ethereal_Blade_Ethereal : public CDOTA_Buff { public: int32_t ethereal_damage_bonus; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ethereal_Blade_Slow : public CDOTA_Buff { public: int32_t blast_movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Soul_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Soul_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Soul_Ring : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 float bonus_armor; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Soul_Ring_Buff : public CDOTA_Buff { public: int32_t m_iTempExtraMaxMana; // 0x1138 int32_t m_iManaToRemove; // 0x113c float duration; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Necronomicon : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Necronomicon_2 : public CDOTA_Item_Recipe_Necronomicon { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Necronomicon_3 : public CDOTA_Item_Recipe_Necronomicon { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_Necronomicon : public CDOTA_Item { public: CHandle< CBaseEntity > m_hWarrior; // 0x5f8 CHandle< CBaseEntity > m_hArcher; // 0x5fc }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_Necronomicon_Level2 : public CDOTA_Item_Necronomicon { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_Necronomicon_Level3 : public CDOTA_Item_Necronomicon { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Necronomicon : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 float bonus_mana_regen; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Necronomicon_2 : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 int32_t bonus_strength; // 0x113c int32_t aura_radius; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Necronomicon_3 : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 int32_t bonus_strength; // 0x113c int32_t aura_radius; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Necronomicon_Mana_Aura : public CDOTA_Buff { public: float aura_mana_regen; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Necronomicon_Mana_Aura_2 : public CDOTA_Buff { public: float aura_mana_regen; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Necronomicon_Mana_Aura_3 : public CDOTA_Buff { public: float aura_mana_regen; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Warrior_ManaBurn : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necronomicon_Warrior_ManaBurn : public CDOTA_Buff { public: int32_t burn_amount; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Warrior_LastWill : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necronomicon_Warrior_LastWill : public CDOTA_Buff { public: int32_t explosion; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Warrior_Sight : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necronomicon_Warrior_Sight : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Archer_ManaBurn : public CDOTABaseAbility { public: // no members available }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Archer_Purge : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necronomicon_Archer_Purge : public CDOTA_Buff { public: int32_t purge_rate; // 0x1138 }; // Alignment: 0 // Size: 0x550 class CDOTA_Ability_Necronomicon_Archer_AoE : public CDOTABaseAbility { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Necronomicon_Archer_AoE : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Necronomicon_Archer_Aura : public CDOTA_Buff { public: int32_t ms_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Courier : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Flying_Courier : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Cheese : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Arcane_Boots : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Arcane_Boots : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Arcane_Boots : public CDOTA_Buff_Item { public: int32_t bonus_movement; // 0x1138 int32_t bonus_mana; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ArcaneBoots_ManaRegen : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Orb_of_Venom : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Orb_of_Venom : public CDOTA_Buff_Item { public: int32_t poison_movement_speed_melee; // 0x1138 int32_t poison_movement_speed_range; // 0x113c float poison_duration; // 0x1140 float poison_damage_melee; // 0x1144 float poison_damage_range; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Orb_of_Venom_Slow : public CDOTA_Buff { public: float duration; // 0x1138 int32_t slow; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ancient_Janggo : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Ancient_Janggo : public CDOTA_Item { public: int32_t radius; // 0x5f8 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Ancient_Janggo : public CDOTA_Buff_Item { public: int32_t radius; // 0x1138 int32_t bonus_str; // 0x113c int32_t bonus_int; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ancient_Janggo_Aura : public CDOTA_Buff { public: int32_t aura_movement_speed; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Ancient_Janggo_Active : public CDOTA_Buff { public: int32_t bonus_attack_speed_pct; // 0x1138 int32_t bonus_movement_speed_pct; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Medallion_Of_Courage : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Medallion_Of_Courage : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Medallion_Of_Courage : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 float bonus_mana_regen_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Medallion_Of_Courage_Armor_Addition : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Medallion_Of_Courage_Armor_Reduction : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Smoke_Of_Deceit : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Smoke_Of_Deceit : public CDOTA_Modifier_Invisible { public: int32_t bonus_movement_speed; // 0x1148 int32_t visibility_radius; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Veil_Of_Discord : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Veil_Of_Discord : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Veil_Of_Discord : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 int32_t bonus_all_stats; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Veil_Of_Discord_Mana : public CDOTA_Buff { public: float aura_mana_regen; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Veil_Of_Discord_Debuff : public CDOTA_Buff { public: int32_t spell_amp; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_HeavensHalberd : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_HeavensHalberd : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_HeavensHalberd : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t hp_regen_amp; // 0x113c int32_t bonus_evasion; // 0x1140 int32_t status_resistance; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_HeavensHalberd_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_RingOfAquila : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfAquila_Aura : public CDOTA_Buff_Item { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t aura_radius; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfAquila_Aura_Bonus : public CDOTA_Buff { public: int32_t aura_bonus_armor; // 0x1138 float aura_mana_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RingOfAquila : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_RingOfAquila : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_agility; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t bonus_armor; // 0x1148 }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_ShadowAmulet : public CDOTA_Item { public: GameTime_t m_flLastTimeCast; // 0x5f8 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_ShadowAmulet_Fade : public CDOTA_Buff { public: float fade_time; // 0x1138 GameTime_t m_flFadeTime; // 0x113c bool m_bFaded; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Moonshard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Moonshard : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Moonshard : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_night_vision; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Moonshard_Consumed : public CDOTA_Buff { public: int32_t consumed_bonus; // 0x1138 int32_t consumed_bonus_night_vision; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Silver_Edge : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Silver_Edge : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1170 class CDOTA_Modifier_Item_Silver_Edge : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_attack_speed; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t crit_chance; // 0x1148 int32_t crit_multiplier; // 0x114c float backstab_duration; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1158 }; // Alignment: 2 // Size: 0x1150 class CDOTA_Modifier_Silver_Edge_WindWalk : public CDOTA_Modifier_Invisible { public: int32_t windwalk_bonus_damage; // 0x1148 int32_t windwalk_movement_speed; // 0x114c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Silver_Edge_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_GlimmerCape : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_GlimmerCape : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_GlimmerCape_Building_Limit : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_GlimmerCape : public CDOTA_Buff_Item { public: int32_t bonus_magical_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_GlimmerCape_Fade : public CDOTA_Modifier_PersistentInvisibility { public: int32_t active_magical_armor; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Solar_Crest : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Solar_Crest : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Solar_Crest : public CDOTA_Buff_Item { public: float bonus_mana_regen_pct; // 0x1138 int32_t bonus_armor; // 0x113c int32_t bonus_all_stats; // 0x1140 int32_t self_movement_speed; // 0x1144 ParticleIndex_t nFXIndex; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Solar_Crest_Armor_Addition : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 int32_t target_attack_speed; // 0x113c int32_t target_movement_speed; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Solar_Crest_Armor_Reduction : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 int32_t target_attack_speed; // 0x113c int32_t target_movement_speed; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ward_Dispenser : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ward_Dispenser : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ward_Dispenser : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Ward_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x608 class CDOTA_Item_Ward_Maker : public CDOTA_Item { public: float sentry_refresh; // 0x5f8 int32_t max_sentry_charges; // 0x5fc GameTime_t m_flLastThinkTime; // 0x600 float m_flTimeAccumulator; // 0x604 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ward_Maker : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Guardian_Greaves : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Guardian_Greaves : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Guardian_Greaves : public CDOTA_Buff_Item { public: int32_t bonus_movement; // 0x1138 int32_t bonus_mana; // 0x113c int32_t bonus_armor; // 0x1140 int32_t aura_radius; // 0x1144 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Guardian_Greaves_Aura : public CDOTA_Buff { public: float aura_health_regen; // 0x1138 float aura_armor; // 0x113c float aura_health_regen_bonus; // 0x1140 float aura_armor_bonus; // 0x1144 int32_t aura_bonus_threshold; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Enchanted_Mango : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Enchanted_Mango : public CDOTA_Buff_Item { public: float hp_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Lotus_Orb : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Lotus_Orb : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Lotus_Orb : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_armor; // 0x1140 int32_t bonus_mana; // 0x1144 float block_cooldown; // 0x1148 }; // Alignment: 1 // Size: 0x1300 class CDOTA_Modifier_Item_Lotus_Orb_Active : public CDOTA_Buff { public: CModifierParams m_LastParams; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Lotus_Orb_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1158 class CDOTA_Modifier_Item_Lotus_Orb_ChannelCheck : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hAbility; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c Vector m_vLocation; // 0x1140 GameTime_t m_fChannelEnd; // 0x114c bool m_bInterrupt; // 0x1150 bool m_bExpired; // 0x1151 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Octarine_Core : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Octarine_Core : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Octarine_Core : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 int32_t bonus_health; // 0x113c int32_t bonus_mana; // 0x1140 float bonus_cooldown; // 0x1144 int32_t cast_range_bonus; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Faerie_Fire : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Faerie_Fire : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_DragonLance : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_DragonLance : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_DragonLance : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_strength; // 0x113c int32_t base_attack_range; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Aether_Lens : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Aether_Lens : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aether_Lens : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 float bonus_mana_regen; // 0x113c int32_t cast_range_bonus; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Iron_Talon : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Iron_Talon : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Iron_Talon : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 float bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Bloodthorn : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Bloodthorn : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Item_Bloodthorn : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_damage; // 0x1140 int32_t bonus_attack_speed; // 0x1144 int32_t spell_amp; // 0x1148 int32_t mana_regen_multiplier; // 0x114c int32_t bonus_magic_resist; // 0x1150 float duration; // 0x1154 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Bloodthorn_Debuff : public CDOTA_Buff { public: float target_crit_multiplier; // 0x1138 float silence_damage_percent; // 0x113c float m_flDamageTaken; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_vRecords; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_EchoSabre : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_EchoSabre : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_EchoSabre : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 float bonus_mana_regen; // 0x1144 int32_t bonus_strength; // 0x1148 float slow_duration; // 0x114c bool bonus_speed; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_EchoSabre_Debuff : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t attack_speed_slow; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Blight_Stone : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Item_Blight_Stone : public CDOTA_Buff_Item { public: float corruption_duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Blight_Stone_Corruption : public CDOTA_Buff { public: int32_t corruption_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_WindLace : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_WindLace : public CDOTA_Buff_Item { public: int32_t movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tome_Of_Knowledge : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tome_Of_Knowledge : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tome_Of_Knowledge_Consumed : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Hurricane_Pike : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Hurricane_Pike : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Hurricane_Pike : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_intellect; // 0x113c int32_t bonus_agility; // 0x1140 int32_t bonus_strength; // 0x1144 int32_t base_attack_range; // 0x1148 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Hurricane_Pike_Active : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float push_length; // 0x114c }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Hurricane_Pike_Active_Alternate : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float enemy_length; // 0x114c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Hurricane_Pike_Range : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t max_attacks; // 0x113c int32_t m_iNumAttacks; // 0x1140 bool bActive; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t bonus_attack_speed; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Infused_Raindrop : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Infused_Raindrop : public CDOTA_Buff_Item { public: float mana_regen; // 0x1138 float bonus_armor; // 0x113c int32_t bonus_magical_armor; // 0x1140 int32_t magic_damage_block; // 0x1144 int32_t min_damage; // 0x1148 }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_RiverPainter : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnRiverColorChanged" int32_t m_iRiverPaintColor; // 0x5f8 }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter2 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter3 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter4 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter5 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter6 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x600 class CDOTA_Item_RiverPainter7 : public CDOTA_Item_RiverPainter { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MeteorHammer : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_MeteorHammer : public CDOTA_Item { public: ParticleIndex_t m_nFXIndex; // 0x5f8 ParticleIndex_t m_nFXIndexB; // 0x5fc }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_MeteorHammer : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 float bonus_health_regen; // 0x113c float bonus_mana_regen; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_MeteorHammer_Land : public CDOTA_Buff { public: int32_t impact_radius; // 0x1138 float land_time; // 0x113c float burn_duration; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_MeteorHammer_Burn : public CDOTA_Buff { public: int32_t burn_dps_buildings; // 0x1138 int32_t burn_dps_units; // 0x113c float burn_interval; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Nullifier : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Nullifier : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Nullifier : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 int32_t bonus_regen; // 0x113c int32_t bonus_damage; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Nullifier_Mute : public CDOTA_Buff { public: float slow_interval_duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Nullifier_Slow : public CDOTA_Buff { public: int32_t slow_pct; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Spirit_Vessel : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Spirit_Vessel : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Spirit_Vessel : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float bonus_mana_regen; // 0x113c float bonus_armor; // 0x1140 int32_t bonus_all_stats; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Spirit_Vessel_Heal : public CDOTA_Buff { public: int32_t soul_heal_amount; // 0x1138 float m_fHealingDone; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Spirit_Vessel_Damage : public CDOTA_Buff { public: int32_t hp_regen_reduction_enemy; // 0x1138 int32_t soul_damage_amount; // 0x113c float enemy_hp_drain; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_AeonDisk : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_AeonDisk : public CDOTA_Item { public: int32_t m_nUses; // 0x5f8 int32_t max_level; // 0x5fc }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_AeonDisk : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c int32_t health_threshold_pct; // 0x1140 float buff_duration; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_AeonDisk_Buff : public CDOTA_Buff { public: int32_t status_resistance; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Kaya : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Kaya : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Kaya : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t spell_amp; // 0x113c int32_t mana_regen_multiplier; // 0x1140 int32_t spell_lifesteal_amp; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PocketTower : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PocketRoshan : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Crown : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Crown : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Holy_Locket : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Holy_Locket : public CDOTA_Item { public: // no members available }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Item_Holy_Locket : public CDOTA_Buff_Item { public: int32_t aura_radius; // 0x1138 int32_t bonus_health; // 0x113c int32_t bonus_mana; // 0x1140 int32_t heal_increase; // 0x1144 int32_t charge_radius; // 0x1148 int32_t max_charges; // 0x114c int32_t bonus_all_stats; // 0x1150 int32_t charge_gain_timer; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Holy_Locket_Aura : public CDOTA_Buff { public: float aura_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Kaya_And_Sange : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Kaya_And_Sange : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_Kaya_And_Sange : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t hp_regen_amp; // 0x113c int32_t bonus_intellect; // 0x1140 int32_t spell_amp; // 0x1144 int32_t mana_regen_multiplier; // 0x1148 int32_t status_resistance; // 0x114c int32_t spell_lifesteal_amp; // 0x1150 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Yasha_And_Kaya : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Yasha_And_Kaya : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_Yasha_And_Kaya : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t movement_speed_percent_bonus; // 0x1140 int32_t bonus_intellect; // 0x1144 int32_t spell_amp; // 0x1148 int32_t mana_regen_multiplier; // 0x114c int32_t spell_lifesteal_amp; // 0x1150 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Yasha_And_Kaya_Maim : public CDOTA_Buff { public: int32_t maim_slow_movement; // 0x1138 int32_t maim_slow_attack; // 0x113c int32_t maim_slow_movement_range; // 0x1140 int32_t maim_slow_attack_range; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_RingOfTarrasque : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_RingOfTarrasque : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 int32_t bonus_health; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Keen_Optic : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Keen_Optic : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Keen_Optic : public CDOTA_Buff_Item { public: float bonus_mana_regen; // 0x1138 int32_t cast_range_bonus; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Grove_Bow : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Grove_Bow : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_Grove_Bow : public CDOTA_Buff_Item { public: int32_t attack_range_bonus; // 0x1138 int32_t attack_speed_bonus; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Grove_Bow_Debuff : public CDOTA_Buff { public: int32_t magic_resistance_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Quickening_Charm : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Quickening_Charm : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Quickening_Charm : public CDOTA_Buff_Item { public: int32_t bonus_cooldown; // 0x1138 int32_t bonus_health_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Philosophers_Stone : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Philosophers_Stone : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t bonus_gpm; // 0x113c int32_t bonus_damage; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Force_Boots : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Force_Boots : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Force_Boots : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t hp_regen; // 0x113c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Force_Boots : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 int32_t push_length; // 0x114c float push_duration; // 0x1150 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Desolator_2 : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Desolator_2 : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_Desolator_2 : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 float corruption_duration; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Desolator_2_Corruption : public CDOTA_Buff { public: int32_t corruption_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Phoenix_Ash : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Phoenix_Ash : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Phoenix_Ash : public CDOTA_Buff_Item { public: int32_t health_pct; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Seer_Stone : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Seer_Stone : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Seer_Stone_Truesight : public CDOTA_Buff { public: int32_t radius; // 0x1138 float duration; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Seer_Stone : public CDOTA_Buff_Item { public: int32_t cast_range_bonus; // 0x1138 int32_t vision_bonus; // 0x113c int32_t mana_regen; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Greater_Mango : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Elixer : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_ElixerHealing : public CDOTA_Buff { public: int32_t health; // 0x1138 int32_t mana; // 0x113c float duration; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Vampire_Fangs : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Vampire_Fangs : public CDOTA_Buff_Item { public: int32_t attack_lifesteal; // 0x1138 int32_t spell_lifesteal; // 0x113c int32_t night_vision; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Craggy_Coat : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Craggy_Coat : public CDOTA_Buff_Item { public: int32_t armor_bonus; // 0x1138 int32_t attack_speed; // 0x113c int32_t bonus_health; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Greater_Faerie_Fire : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Greater_Faerie_Fire : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Timeless_Relic : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Timeless_Relic : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Timeless_Relic : public CDOTA_Buff_Item { public: int32_t spell_amp; // 0x1138 int32_t debuff_amp; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mirror_Shield : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1310 class CDOTA_Modifier_Item_Mirror_Shield : public CDOTA_Buff_Item { public: CModifierParams m_LastParams; // 0x1138 int32_t all_stats; // 0x1300 int32_t reflect_chance; // 0x1304 bool m_bProcSuccessful; // 0x1308 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mirror_Shield_Delay : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ironwood_tree : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ironwood_tree : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ironwood_tree : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Royal_jelly : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Royal_Jelly : public CDOTA_Buff { public: float health_regen; // 0x1138 float mana_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Pupils_gift : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Pupils_gift : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Pupils_gift : public CDOTA_Buff_Item { public: int32_t secondary_stats; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tome_of_aghanim : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tome_of_Aghanim : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Repair_kit : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Repair_Kit : public CDOTA_Buff_Item { public: int32_t hp_regen; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Repair_Kit : public CDOTA_Buff { public: float health_regen; // 0x1138 int32_t armor_bonus; // 0x113c int32_t multishot_count; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mind_Breaker : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mind_Breaker2 : public CDOTA_Item_Recipe_Mind_Breaker { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mind_Breaker : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Mind_Breaker : public CDOTA_Buff_Item { public: int32_t magic_damage; // 0x1138 int32_t attack_speed; // 0x113c float duration; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Third_eye : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Third_Eye : public CDOTA_Buff { public: int32_t truesight_radius; // 0x1138 int32_t bonus_vision; // 0x113c int32_t bonus_all_stats; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Spell_Prism : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Spell_Prism : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 int32_t bonus_cooldown; // 0x113c float mana_regen; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spell_Prism_Active : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Horizon : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Fusion_rune : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Fusion_runeHealing : public CDOTA_Buff { public: int32_t health_regen; // 0x1138 float m_fHealingDone; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Princes_Knife : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Princes_Knife : public CDOTA_Buff_Item { public: float duration; // 0x1138 int32_t projectile_bonus; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Princes_Knife_Hex : public CDOTA_Modifier_Hexed { public: int32_t movespeed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Spider_Legs : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spider_Legs : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t turn_rate; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Spider_Legs_Active : public CDOTA_Buff { public: int32_t bonus_movement_speed_active; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Helm_Of_The_Undying : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Helm_Of_The_Undying : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 float duration; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mango_Tree : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1160 class CDOTA_Modifier_Item_Mango_Tree : public CDOTA_Buff_Item { public: CHandle< CBaseEntity > m_hTree; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CountdownTimer m_Timer; // 0x1140 float seconds; // 0x1158 }; // Alignment: 5 // Size: 0x1178 class CDOTA_Modifier_Passive_Mango_Tree : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTree; // 0x1138 int32_t m_nMangoSeconds; // 0x113c CountdownTimer m_MangoTimer; // 0x1140 int32_t m_nRespawnSeconds; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CountdownTimer m_RespawnTimer; // 0x1160 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Vambrace : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Vambrace : public CDOTA_Buff_Item { public: int32_t bonus_primary_stat; // 0x1138 int32_t bonus_secondary_stat; // 0x113c int32_t bonus_magic_resistance; // 0x1140 int32_t bonus_spell_amp; // 0x1144 int32_t bonus_attack_speed; // 0x1148 int32_t m_iStat; // 0x114c }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Vambrace : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnVambraceStatChanged" int32_t m_iStat; // 0x5f8 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Witless_shako : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Witless_shako : public CDOTA_Buff_Item { public: int32_t max_health; // 0x1138 int32_t max_mana; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Imp_Claw : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Imp_Claw : public CDOTA_Buff_Item { public: int32_t crit_multiplier; // 0x1138 int32_t bonus_damage; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Flicker : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Flicker : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Flicker_Damaged : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Spy_Gadget : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Spy_Gadget_Aura : public CDOTA_Buff_Item { public: int32_t scan_cooldown_reduction; // 0x1138 int32_t aura_range; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Spy_Gadget : public CDOTA_Buff { public: int32_t attack_range; // 0x1138 int32_t cast_range; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ocean_Heart : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ocean_Heart : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Ocean_Heart : public CDOTA_Buff_Item { public: float water_hp_regen; // 0x1138 float water_mp_regen; // 0x113c int32_t all_stats; // 0x1140 bool m_bInRiver; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Broom_Handle : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Broom_Handle : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Broom_Handle : public CDOTA_Buff_Item { public: int32_t melee_attack_range; // 0x1138 int32_t bonus_armor; // 0x113c int32_t bonus_damage; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Trusty_Shovel : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x610 class CDOTA_Item_Trusty_Shovel : public CDOTA_Item { public: Vector m_vChannelPos; // 0x5f8 bool m_bIsUnderwater; // 0x604 private: [[maybe_unused]] uint8_t __pad0605[0x3]; // 0x605 public: ParticleIndex_t m_nPhaseStartFXIndex; // 0x608 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Trusty_Shovel : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Nether_Shawl : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Nether_Shawl : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Nether_Shawl : public CDOTA_Buff_Item { public: int32_t bonus_magic_resistance; // 0x1138 int32_t bonus_spell_amp; // 0x113c int32_t bonus_armor; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dragon_Scale : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dragon_Scale : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Dragon_Scale : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 int32_t bonus_hp_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Dragon_Scale_Burn : public CDOTA_Buff { public: int32_t damage_per_sec; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Essence_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Essence_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Essence_Ring : public CDOTA_Buff_Item { public: int32_t bonus_int; // 0x1138 float mp_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Essence_Ring_Active : public CDOTA_Buff { public: int32_t health_gain; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Clumsy_Net : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Clumsy_Net : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Clumsy_Net_Ensnare : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Clumsy_Net : public CDOTA_Buff_Item { public: int32_t all_stats; // 0x1138 int32_t mana_regen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Enchanted_Quiver : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Enchanted_Quiver : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_Enchanted_Quiver : public CDOTA_Buff_Item { public: int32_t bonus_attack_range; // 0x1138 int32_t bonus_damage; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ninja_Gear : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ninja_Gear : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Ninja_Gear : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t passive_movement_bonus; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Illusionsts_Cape : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Illusionsts_Cape : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Illusionsts_Cape_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Illusionsts_Cape : public CDOTA_Buff_Item { public: int32_t bonus_agi; // 0x1138 int32_t bonus_str; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Illusionists_Cape_Aura : public CDOTA_Buff { public: int32_t attack_damage_aura; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Havoc_Hammer : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Havoc_Hammer : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Havoc_Hammer : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_strength; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Havoc_Hammer_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Panic_Button : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Panic_Button : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Panic_Button : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float health_threshold; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Apex : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Apex : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Apex : public CDOTA_Buff_Item { public: int32_t primary_stat; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ballista : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ballista : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Ballista : public CDOTA_Buff_Item { public: int32_t attack_range_bonus; // 0x1138 float knockback_distance; // 0x113c float knockback_duration; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Woodland_Striders : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Woodland_Striders : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Woodland_Striders : public CDOTA_Buff_Item { public: int32_t bonus_movement_speed; // 0x1138 int32_t bonus_hp_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Woodland_Striders_Active : public CDOTA_Buff { public: float tree_duration; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Trident : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Trident : public CDOTA_Item { public: // no members available }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Item_Trident : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t movement_speed_percent_bonus; // 0x1140 int32_t bonus_strength; // 0x1144 int32_t hp_regen_amp; // 0x1148 int32_t status_resistance; // 0x114c int32_t bonus_intellect; // 0x1150 int32_t spell_amp; // 0x1154 int32_t mana_regen_multiplier; // 0x1158 int32_t magic_damage_attack; // 0x115c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Demonicon : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x610 class CDOTA_Item_Demonicon : public CDOTA_Item { public: CUtlVector< CHandle< CBaseEntity > > m_hDemonSummons; // 0x5f8 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Demonicon : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_intellect; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Demonicon_Bonus : public CDOTA_Buff { public: int32_t hp_bonus; // 0x1138 int32_t damage_bonus; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Fallen_Sky : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Fallen_Sky : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Fallen_Sky : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t bonus_intellect; // 0x113c float bonus_health_regen; // 0x1140 float bonus_mana_regen; // 0x1144 float blink_damage_cooldown; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Fallen_Sky_Land : public CDOTA_Buff { public: int32_t impact_radius; // 0x1138 float land_time; // 0x113c float burn_duration; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Fallen_Sky_Burn : public CDOTA_Buff { public: int32_t burn_dps_buildings; // 0x1138 int32_t burn_dps_units; // 0x113c float burn_interval; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Pirate_Hat : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x610 class CDOTA_Item_Pirate_Hat : public CDOTA_Item { public: Vector m_vChannelPos; // 0x5f8 bool m_bIsUnderwater; // 0x604 private: [[maybe_unused]] uint8_t __pad0605[0x3]; // 0x605 public: ParticleIndex_t m_nPhaseStartFXIndex; // 0x608 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Pirate_Hat : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_ms; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Dimensional_Doorway : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dimensional_Doorway : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ex_Machina : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ex_Machina : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Ex_Machina : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Faded_Broach : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Faded_Broach : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Faded_Broach : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t bonus_movement_speed; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Paladin_Sword : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Paladin_Sword : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Paladin_Sword : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_lifesteal; // 0x113c int32_t bonus_spell_lifesteal; // 0x1140 int32_t bonus_amp; // 0x1144 int32_t creep_lifesteal_reduction_pct; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Minotaur_Horn : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Minotaur_Horn : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Minotaur_Horn_Immune : public CDOTA_Modifier_MagicImmune { public: int32_t model_scale; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Minotaur_Horn : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Orb_Of_Destruction : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Orb_Of_Destruction : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Item_Orb_Of_Destruction : public CDOTA_Buff_Item { public: float duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Orb_Of_Destruction_Debuff : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 int32_t slow_melee; // 0x113c int32_t slow_range; // 0x1140 bool bCasterRanged; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_The_Leveller : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_The_Leveller : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_The_Leveller : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 int32_t bonus_armor; // 0x113c int32_t demolish; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Arcane_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Arcane_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Arcane_Ring : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 int32_t bonus_intelligence; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Titan_Sliver : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Titan_Sliver : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Titan_Sliver : public CDOTA_Buff_Item { public: int32_t base_attack_damage; // 0x1138 int32_t magic_resistance; // 0x113c int32_t status_resistance; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Voodoo_Mask : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Voodoo_Mask : public CDOTA_Buff_Item { public: float spell_lifesteal; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Blitz_Knuckles : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifer_Item_Blitz_Knuckles : public CDOTA_Buff_Item { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Witch_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Witch_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Item_Witch_Blade : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_armor; // 0x1140 float slow_duration; // 0x1144 int32_t projectile_speed; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x4]; // 0x114c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Witch_Blade_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 float int_damage_multiplier; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_MaskOfDispair : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_MaskOfDispair : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_MaskOfDispair : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 float bonus_armor; // 0x113c int32_t spell_lifesteal; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_MaskOfDispair_Berserk : public CDOTA_Buff { public: int32_t berserk_spell_amp; // 0x1138 int32_t berserk_manacost_reduction; // 0x113c int32_t berserk_magic_resistance; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Chipped_Vest : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Chipped_Vest : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Chipped_Vest : public CDOTA_Buff_Item { public: float hp_regen; // 0x1138 int32_t damage_return_hero; // 0x113c int32_t damage_return_creep; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Cloak_Of_Flames : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Cloak_Of_Flames : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Cloak_Of_Flames : public CDOTA_Buff_Item { public: int32_t armor; // 0x1138 int32_t magic_resistance; // 0x113c int32_t radius; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Cloak_Of_Flames_Debuff : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t damage_illusions; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Elven_Tunic : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Elven_Tunic : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Elven_Tunic : public CDOTA_Buff_Item { public: int32_t attack_speed; // 0x1138 int32_t evasion; // 0x113c int32_t movment; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Gloves_Of_Travel : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Gloves_Of_Travel : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Gloves_Of_Travel : public CDOTA_Buff_Item { public: int32_t attack_speed; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Orb_Of_Corrosion : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Orb_Of_Corrosion : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_Orb_Of_Corrosion : public CDOTA_Buff_Item { public: int32_t health_bonus; // 0x1138 float duration; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Orb_Of_Corrosion_Debuff : public CDOTA_Buff { public: int32_t armor; // 0x1138 int32_t slow_melee; // 0x113c int32_t slow_range; // 0x1140 bool bCasterRanged; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t damage; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Sorcerers_Staff : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Sorcerers_Staff : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Sorcerers_Staff : public CDOTA_Buff_Item { public: int32_t mana_regen_amp; // 0x1138 int32_t spell_amp_creeps; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Trickster_Cloak : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Trickster_Cloak : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Trickster_Cloak : public CDOTA_Buff_Item { public: int32_t evasion; // 0x1138 int32_t magic_resistance; // 0x113c float debuff_limit; // 0x1140 }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_Item_Trickster_Cloak_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Venom_Gland : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Venom_Gland : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Item_Venom_Gland : public CDOTA_Buff_Item { public: int32_t primary_attribute; // 0x1138 int32_t debuff_amp; // 0x113c float duration; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Venom_Gland_Debuff : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t degen; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Wizard_Glass : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Wizard_Glass : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Wizard_Glass : public CDOTA_Buff_Item { public: int32_t debuff_amp; // 0x1138 int32_t cooldown_reduction; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Gladiator_Helm : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Gladiator_Helm : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Gladiator_Helm : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Gladiator_Helm_Buff : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t armor; // 0x113c int32_t movement_speed; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Possessed_Mask : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Possessed_Mask : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Possessed_Mask : public CDOTA_Buff_Item { public: int32_t primary_attribute; // 0x1138 int32_t lifesteal; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_AssassinsDagger : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Item_AssassinsDagger : public CDOTA_Buff_Item { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 int32_t debuff_duration; // 0x1150 int32_t bonus_attack_speed; // 0x1154 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Assassins_Dagger_Debuff : public CDOTA_Buff { public: int32_t armor_debuff; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_AsceticCap : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_AsceticCap : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float hp_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_AsceticCapBuff : public CDOTA_Buff { public: int32_t status_resistance; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SamplePicker : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_SamplePicker : public CDOTA_Buff_Item { public: int32_t base_gold; // 0x1138 int32_t gold_per_level; // 0x113c int32_t strength_penalty; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_IcarusWings : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_IcarusWings : public CDOTA_Buff_Item { public: float move_speed; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_IcarusWingsBuff : public CDOTA_Buff_Item { public: int32_t status_resistance; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_IcarusWingsDebuff : public CDOTA_Buff_Item { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Dynamite_Jacket : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Dynamite_Jacket : public CDOTA_Buff_Item { public: int32_t bonus_armor; // 0x1138 int32_t radius; // 0x113c int32_t damage; // 0x1140 float blind_duration; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Jacket_Blind : public CDOTA_Buff { public: float blind_pct; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tree_Processor : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Tree_Processor : public CDOTA_Buff_Item { public: int32_t bonus_int; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Tree_Processor_Speed : public CDOTA_Buff_Item { public: int32_t health_per_tree; // 0x1138 int32_t hp_bonus; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Heavy_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Heavy_Blade : public CDOTA_Buff_Item { public: float damage; // 0x1138 int32_t attack_speed; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Mechanical_Arm : public CDOTA_Buff_Item { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: float bat; // 0x113c float stun_duration; // 0x1140 int32_t stun_chance; // 0x1144 int32_t m_nAttack; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mechanical_Arm : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mechanical_Arm_Counter : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Fortitude_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Fortitude_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Fortitude_Ring : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 float hp_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Fortitude_Ring_Active : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_PogoStick : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_PogoStick : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c int32_t bonus_intellect; // 0x1140 }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_Pogo_Stick_Active : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t leap_distance; // 0x1164 float leap_speed; // 0x1168 float leap_acceleration; // 0x116c int32_t leap_radius; // 0x1170 float leap_bonus_duration; // 0x1174 bool m_bLaunched; // 0x1178 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Paintball : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Paintball : public CDOTA_Buff_Item { public: int32_t movespeed; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Paintball_Debuff : public CDOTA_Buff { public: int32_t dps; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_UnstableWand : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_UnstableWand : public CDOTA_Buff_Item { public: int32_t all_stats; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_UnstableWand_Critter : public CDOTA_Modifier_Hexed { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_LightRobes : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_LightRobes : public CDOTA_Buff_Item { public: int32_t health_penalty; // 0x1138 int32_t attack_speed; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Force_Field_Bonus_Aura : public CDOTA_Buff { public: int32_t bonus_aoe_radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Force_Field_Bonus : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Force_Field : public CDOTA_Buff_Item { public: bool m_bAppliesToCreeps; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: int32_t bonus_aoe_radius; // 0x113c int32_t self_armor; // 0x1140 int32_t self_mres; // 0x1144 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Force_Field_Effect : public CDOTA_Buff { public: float bonus_aoe_armor; // 0x1138 float bonus_aoe_ms; // 0x113c float bonus_aoe_mres; // 0x1140 float self_mres; // 0x1144 float self_armor; // 0x1148 int32_t active_reflection_pct; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Force_Field : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Misericorde : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Misericorde : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t missing_hp; // 0x113c int32_t damage; // 0x1140 int32_t aspd; // 0x1144 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ancient_Perseverance : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ancient_Perseverance : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Ancient_Perseverance : public CDOTA_Buff_Item { public: int32_t damage; // 0x1138 int32_t hp_regen; // 0x113c int32_t mana_regen_amp; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Oakheart : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Oakheart : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Oakheart : public CDOTA_Buff_Item { public: int32_t strength; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Oakheart_Healing : public CDOTA_Buff { public: int32_t heal; // 0x1138 float duration; // 0x113c float regen; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Stormcrafter : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Stormcrafter : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Stormcrafter : public CDOTA_Buff_Item { public: GameTime_t m_flNextHit; // 0x1138 int32_t range; // 0x113c float interval; // 0x1140 int32_t damage; // 0x1144 float slow_duration; // 0x1148 float bonus_mana_regen; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Stormcrafter_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Overflowing_Elixir : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x600 class CDOTA_Item_Overflowing_Elixir : public CDOTA_Item { public: int32_t m_iStoredRuneType; // 0x5f8 GameTime_t m_fStoredRuneTime; // 0x5fc }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Overflowing_Elixir_Regen : public CDOTA_Buff { public: int32_t health; // 0x1138 int32_t mana; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mysterious_Hat : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mysterious_Hat : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Mysterious_Hat : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t spell_amp; // 0x113c int32_t manacost_reduction; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Orb_of_Pestilence : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Orb_of_Pestilence : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Orb_of_Pestilence : public CDOTA_Buff_Item { public: int32_t poison_movement_speed_melee; // 0x1138 int32_t poison_movement_speed_range; // 0x113c float poison_duration; // 0x1140 float poison_damage; // 0x1144 int32_t armor; // 0x1148 float hp_regen; // 0x114c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Orb_of_Pestilence_Slow : public CDOTA_Buff { public: float duration; // 0x1138 int32_t slow; // 0x113c float damage; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Fluffy_Hat : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Fluffy_Hat : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Fluffy_Hat : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Falcon_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Falcon_Blade : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Falcon_Blade : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_damage_per_kill; // 0x113c int32_t bonus_damage_per_assist; // 0x1140 int32_t bonus_health; // 0x1144 int32_t max_damage; // 0x1148 float bonus_mana_regen; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Mage_Slayer : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Mage_Slayer : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Mage_Slayer : public CDOTA_Buff_Item { public: int32_t bonus_magical_armor; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 float duration; // 0x1144 float bonus_mana_regen; // 0x1148 int32_t bonus_intellect; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Mage_Slayer_Debuff : public CDOTA_Buff { public: int32_t spell_amp_debuff; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Overwhelming_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Overwhelming_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SuperOverwhelming_Blink : public CDOTA_Item_Overwhelming_Blink { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Overwhelming_Blink : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 float blink_damage_cooldown; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Item_SuperOverwhelming_Blink : public CDOTA_Modifier_Item_Overwhelming_Blink { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Overwhelming_Blink_Debuff : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t attack_slow; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Swift_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Swift_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SuperSwift_Blink : public CDOTA_Item_Swift_Blink { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Swift_Blink : public CDOTA_Buff_Item { public: float blink_damage_cooldown; // 0x1138 int32_t bonus_agility; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Item_SuperSwift_Blink : public CDOTA_Modifier_Item_Swift_Blink { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Swift_Blink_Buff : public CDOTA_Buff { public: int32_t bonus_movement; // 0x1138 int32_t bonus_agi_active; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Arcane_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Arcane_Blink : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SuperArcane_Blink : public CDOTA_Item_Arcane_Blink { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Arcane_Blink : public CDOTA_Buff_Item { public: float blink_damage_cooldown; // 0x1138 int32_t bonus_intellect; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Item_SuperArcane_Blink : public CDOTA_Modifier_Item_Arcane_Blink { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Arcane_Blink_Buff : public CDOTA_Buff { public: int32_t cast_pct_improvement; // 0x1138 int32_t manacost_reduction; // 0x113c int32_t debuff_amp; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Wind_Waker : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Wind_Waker : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Wind_Waker : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 float bonus_mana_regen; // 0x113c int32_t bonus_movement_speed; // 0x1140 int32_t bonus_mana; // 0x1144 int32_t cast_range_bonus; // 0x1148 }; // Alignment: 6 // Size: 0x1160 class CDOTA_Modifier_Wind_Waker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hBlocker; // 0x1138 GameTime_t m_flStartTime; // 0x113c Vector m_vStartPos; // 0x1140 float m_flCurTime; // 0x114c float m_flHeightT; // 0x1150 Vector m_vMoveToPos; // 0x1154 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Eul_Wind_Waker_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Aghanims_Shard : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Aghanims_Shard_Roshan : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghanims_Shard : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Eternal_Shroud : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Eternal_Shroud : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Eternal_Shroud_Barrier : public CDOTA_Buff { public: int32_t barrier_block; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Eternal_Shroud : public CDOTA_Buff_Item { public: int32_t bonus_spell_resist; // 0x1138 float bonus_health_regen; // 0x113c float spell_lifesteal; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Star_Mace : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Star_Mace : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Star_Mace : public CDOTA_Buff_Item { public: int32_t movement_speed_pct; // 0x1138 float bonus_mana_regen; // 0x113c int32_t cleave_damage_percent; // 0x1140 int32_t cleave_starting_width; // 0x1144 int32_t cleave_ending_width; // 0x1148 int32_t cleave_distance; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Penta_Edged_Sword : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Penta_Edged_Sword : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Penta_Edged_Sword : public CDOTA_Buff_Item { public: int32_t damage; // 0x1138 int32_t maim_chance; // 0x113c float maim_duration; // 0x1140 int32_t melee_attack_range; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Penta_Edged_Sword_Maim : public CDOTA_Buff { public: int32_t maim_slow_movement; // 0x1138 int32_t maim_slow_attack; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Gungir : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Gungir : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_GungirChain : public CDOTA_Buff { public: int32_t chain_radius; // 0x1138 int32_t chain_strikes; // 0x113c int32_t chain_damage; // 0x1140 float chain_delay; // 0x1144 int32_t m_iCurJumpCount; // 0x1148 Vector m_vCurTargetLoc; // 0x114c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 11 // Size: 0x1190 class CDOTA_Modifier_Item_Gungir : public CDOTA_Buff_Item { public: int32_t bonus_damage; // 0x1138 int32_t bonus_strength; // 0x113c int32_t bonus_agility; // 0x1140 int32_t bonus_intellect; // 0x1144 int32_t chain_chance; // 0x1148 int32_t chain_strikes; // 0x114c int32_t chain_damage; // 0x1150 int32_t chain_radius; // 0x1154 float chain_cooldown; // 0x1158 private: [[maybe_unused]] uint8_t __pad115c[0x4]; // 0x115c public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1160 CountdownTimer m_ChainTimer; // 0x1178 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Gungnir_Debuff : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Orb_Of_Revelations : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x618 class CDOTA_Item_Orb_Of_Revelations : public CDOTA_Item { public: CountdownTimer m_ViewerTimer; // 0x5f8 int32_t m_iProjectile; // 0x610 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Orb_Of_Revelations : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c float bonus_mana_regen; // 0x1140 int32_t cast_range_bonus; // 0x1144 int32_t bonus_magical_armor; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Orb_Of_Revelations_Reveal : public CDOTA_Buff { public: int32_t movespeed; // 0x1138 bool m_bCastOnInvisibleHero; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Satchel : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Satchel : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 int32_t xp_gain; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Grandmasters_Glaive : public CDOTA_Item { public: // no members available }; // Alignment: 19 // Size: 0x1198 class CDOTA_Modifier_Item_Grandmasters_Glaive : public CDOTA_Buff_Item { public: int32_t sange_bonus_strength; // 0x1138 int32_t sange_status_resistance; // 0x113c int32_t sange_hp_regen_amp; // 0x1140 int32_t kaya_bonus_intellect; // 0x1144 int32_t kaya_spell_amp; // 0x1148 int32_t kaya_mana_regen_multiplier; // 0x114c int32_t kaya_magic_damage_attack; // 0x1150 int32_t yasha_bonus_agility; // 0x1154 int32_t yasha_bonus_attack_speed; // 0x1158 int32_t yasha_movement_speed_percent_bonus; // 0x115c int32_t m_iCurrentStance; // 0x1160 int32_t bonus_strength; // 0x1164 int32_t bash_chance_melee; // 0x1168 int32_t bash_chance_ranged; // 0x116c float bash_duration; // 0x1170 float bash_cooldown; // 0x1174 int32_t bonus_chance_damage; // 0x1178 int32_t bonus_damage; // 0x117c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1180 }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Grandmasters_Glaive : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnGrandmastersStatChanged" int32_t m_iStat; // 0x5f8 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Agi : public CDOTA_Buff { public: int32_t agi_stance; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Str : public CDOTA_Buff { public: int32_t str_stance; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Int : public CDOTA_Buff { public: int32_t int_stance; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Warhammer : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Warhammer : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Warhammer : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Warhammer_Armor : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Psychic_Headband : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Psychic_Headband : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Psychic_Headband : public CDOTA_Buff_Item { public: int32_t intelligence_pct; // 0x1138 int32_t cast_range; // 0x113c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Psychic_Headband : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 int32_t push_length; // 0x114c float push_duration; // 0x1150 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Ceremonial_Robe : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Ceremonial_Robe : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Ceremonial_Robe : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t aura_radius; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Ceremonial_Robe_Aura : public CDOTA_Buff { public: int32_t status_resistance; // 0x1138 int32_t magic_resistance; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Book_Of_Shadows : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Book_Of_Shadows : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Book_Of_Shadows : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 int32_t night_vision; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Book_Of_Shadows_Buff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Giants_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Giants_Ring : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Giants_Ring : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 int32_t movement_speed; // 0x113c int32_t model_scale; // 0x1140 int32_t damage_radius; // 0x1144 int32_t pct_str_damage_per_second; // 0x1148 float tick_rate; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Vengeances_Shadow : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Vengeances_Shadow : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Vengeances_Shadow : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t damage_return; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Vengeances_Shadow_Illusions : public CDOTA_Buff { public: bool m_bLeftoverHybrid; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Bullwhip : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Bullwhip : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Bullwhip : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 float bonus_mana_regen; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Bullwhip_Buff_Thinker : public CDOTA_Buff { public: int32_t speed; // 0x1138 CHandle< CBaseEntity > m_hTarget; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Bullwhip_Buff : public CDOTA_Buff { public: int32_t speed; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Quicksilver_Amulet : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Quicksilver_Amulet : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_Quicksilver_Amulet : public CDOTA_Buff_Item { public: int32_t base_attack; // 0x1138 int32_t bonus_attack; // 0x113c int32_t base_movement; // 0x1140 int32_t bonus_movement; // 0x1144 int32_t projectile_increase; // 0x1148 int32_t anim_increase; // 0x114c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Naginata : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Naginata : public CDOTA_Item { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_Naginata : public CDOTA_Buff_Item { public: int32_t bonus_intellect; // 0x1138 int32_t bonus_attack_speed; // 0x113c int32_t bonus_damage; // 0x1140 int32_t bonus_health; // 0x1144 float bonus_mana_regen; // 0x1148 int32_t cooldown_reduction_percent; // 0x114c int32_t bonus_chance; // 0x1150 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SeedsOfSerenity : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_SeedsOfSerenity : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_SeedsOfSerenity_Active_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_SeedsOfSerenity_Active : public CDOTA_Buff { public: int32_t aura_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_LanceOfPursuit : public CDOTA_Item { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Item_LanceOfPursuit : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t bonus_strength; // 0x113c int32_t backstab_damage; // 0x1140 int32_t backstab_angle; // 0x1144 float slow_duration; // 0x1148 bool m_bBackstab; // 0x114c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Lance_of_Pursuit_Slow : public CDOTA_Buff { public: int32_t slow_pct_melee; // 0x1138 int32_t slow_pct_ranged; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Occult_Bracelet : public CDOTA_Item { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_Occult_Bracelet : public CDOTA_Buff_Item { public: int32_t bonus_all_stats; // 0x1138 int32_t stack_limit; // 0x113c float stack_duration; // 0x1140 GameTime_t m_flStackDieTime; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Occult_Bracelet_Stack : public CDOTA_Buff { public: float mana_regen; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Tome_of_Omniscience : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Tome_of_Omniscience : public CDOTA_Buff_Item { public: int32_t bonus_mana; // 0x1138 int32_t bonus_xpm; // 0x113c int32_t bonus_armor; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_OgreSealTotem : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_OgreSealTotem : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 14 // Size: 0x1180 class CDOTA_Modifier_OgreSealTotem_Active : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_nCurrentBounce; // 0x1164 int32_t leap_distance; // 0x1168 float leap_speed; // 0x116c float leap_acceleration; // 0x1170 int32_t leap_radius; // 0x1174 float leap_bonus_duration; // 0x1178 bool m_bLaunched; // 0x117c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_OgreSealTotem_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_WandOfTheBrine : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_WandOfTheBrine : public CDOTA_Buff_Item { public: int32_t heal_increase; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_WandOfTheBrine_Active : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 float interval; // 0x113c int32_t damage_reduction; // 0x1140 int32_t heal; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Slime_Vial : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Slime_Vial : public CDOTA_Buff_Item { public: int32_t health_regen; // 0x1138 }; // Alignment: 8 // Size: 0x1180 class CDOTA_Modifier_Item_Slime_Vial_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 CountdownTimer m_ViewerTimer; // 0x1158 int32_t spill_speed; // 0x1170 int32_t spill_radius; // 0x1174 int32_t spill_damage; // 0x1178 float spill_debuff_duration; // 0x117c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Slime_Vial_Spill_Debuff : public CDOTA_Buff { public: int32_t spill_movement_speed; // 0x1138 int32_t spill_attack_speed; // 0x113c int32_t spill_self_bonus_armor; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Harpoon : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Item_Harpoon : public CDOTA_Buff_Item { public: int32_t crit_multiplier; // 0x1138 float duration; // 0x113c int32_t attack_range_bonus; // 0x1140 int32_t bonus_damage; // 0x1144 CUtlVector< int16 > m_InFlightAttackRecords; // 0x1148 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Item_Harpoon_Pull : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 float m_flDistance; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Harpoon_Slow : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Guardian_Shell : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Guardian_Shell : public CDOTA_Buff_Item { public: int32_t all_stats; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_GuardianShell_Active : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Arcane_Scout : public CDOTA_Item { public: CHandle< CBaseEntity > m_hScout; // 0x5f8 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Arcane_Scout : public CDOTA_Buff_Item { public: int32_t vision_bonus; // 0x1138 int32_t magic_resist; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Arcane_Scout_Self_Vision : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Arcane_Scout_Invulnerability : public CDOTA_Modifier_Invulnerable { public: int32_t scout_movespeed; // 0x1138 int32_t sight_range; // 0x113c }; // Alignment: 1 // Size: 0x600 class CDOTA_Item_Barricade : public CDOTA_Item { public: CHandle< CBaseEntity > m_hScout; // 0x5f8 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Barricade_Thinker : public CDOTA_Buff { public: int32_t length; // 0x1138 int32_t width; // 0x113c int32_t max_hits; // 0x1140 int32_t m_iCurrentHits; // 0x1144 int32_t m_hObstruction; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_Barricade_Blocker : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Barricade : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_armor; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_EyeOfTheVizier : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_EyeOfTheVizier : public CDOTA_Buff_Item { public: int32_t cast_range_bonus; // 0x1138 int32_t mana_reduction_pct; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_ManaclesOfPower : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_ManaclesOfPower : public CDOTA_Buff_Item { public: int32_t bonus_strength; // 0x1138 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_ManaclesOfPower_Effect : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hPartner; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c float leash_distance; // 0x1140 float leash_limit_multiplier; // 0x1144 CHandle< CBaseEntity > m_hAnchor; // 0x1148 }; // Alignment: 3 // Size: 0x608 class CDOTA_Item_Bottomless_Chalice : public CDOTA_Item { public: // MNetworkEnable // MNetworkChangeCallback "OnChaliceStoredRuneChanged" int32_t m_iStoredRuneType; // 0x5f8 GameTime_t m_fStoredRuneTime; // 0x5fc float stored_rune_duration; // 0x600 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Bottomless_Chalice_Regen : public CDOTA_Buff { public: int32_t health; // 0x1138 int32_t mana; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Bottomless_Chalice : public CDOTA_Buff_Item { public: int32_t max_charges_per_kill; // 0x1138 float recharge_time; // 0x113c bool m_bFull; // 0x1140 private: [[maybe_unused]] uint8_t __pad1141[0x3]; // 0x1141 public: int32_t bonus_intellect; // 0x1144 int32_t movement_speed; // 0x1148 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_WandOfSanctitude : public CDOTA_Item { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_WandOfSanctitude : public CDOTA_Buff_Item { public: int32_t all_stats; // 0x1138 int32_t cast_range_bonus; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_WandOfSanctitude_Active_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_SpecialistsArray : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_Item_SpecialistsArray : public CDOTA_Buff_Item { public: int32_t all_stats; // 0x1138 int32_t bonus_damage; // 0x113c int32_t count; // 0x1140 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_DaggerOfRistul : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_DaggerOfRistul : public CDOTA_Buff_Item { public: int32_t aspd; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_DaggerOfRistul_Buff : public CDOTA_Buff { public: int32_t bonus_damage; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Lunar_Crest : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Lunar_Crest : public CDOTA_Item { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_Lunar_Crest : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 int32_t bonus_mana_regen; // 0x113c int32_t bonus_spell_resist; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Lunar_Crest_Barrier_Addition : public CDOTA_Buff { public: int32_t barrier_block; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Lunar_Crest_Barrier_Reduction : public CDOTA_Buff { public: int32_t barrier_block; // 0x1138 float m_flDamageTotal; // 0x113c }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Phylactery : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Phylactery : public CDOTA_Item { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Item_Phylactery : public CDOTA_Buff_Item { public: float bonus_health_regen; // 0x1138 float bonus_mana_regen; // 0x113c float spell_lifesteal; // 0x1140 int32_t bonus_spell_damage; // 0x1144 float slow_duration; // 0x1148 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Phylactery_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Recipe_Magus_Minimus : public CDOTA_Item { public: // no members available }; // Alignment: 0 // Size: 0x5f8 class CDOTA_Item_Magus_Minimus : public CDOTA_Item { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Item_Magus_Minimus_Inhibit : public CDOTA_Buff { public: int32_t purge_rate; // 0x1138 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Item_Magus_Minimus : public CDOTA_Buff_Item { public: int32_t bonus_agility; // 0x1138 int32_t bonus_intellect; // 0x113c float damage_per_burn; // 0x1140 int32_t feedback_mana_burn; // 0x1144 int32_t feedback_mana_burn_illusion_melee; // 0x1148 int32_t feedback_mana_burn_illusion_ranged; // 0x114c int32_t aura_radius; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Magus_Minimus_Aura_Slow : public CDOTA_Buff { public: int32_t max_slow_pct; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 5 // Size: 0x770 class CFogVolume : public CServerOnlyModelEntity { public: CUtlSymbolLarge m_fogName; // 0x748 CUtlSymbolLarge m_postProcessName; // 0x750 CUtlSymbolLarge m_colorCorrectionName; // 0x758 private: [[maybe_unused]] uint8_t __pad0760[0x8]; // 0x760 public: bool m_bDisabled; // 0x768 bool m_bInFogVolumesList; // 0x769 }; // Alignment: 60 // Size: 0x820 class CDOTAPlayerController : public CBasePlayerController { public: int32_t m_iMinimapMove; // 0x660 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" // MNetworkPriority "32" int32_t m_iCursor[2]; // 0x664 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iSpectatorClickBehavior; // 0x66c // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" float m_flAspectRatio; // 0x670 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" CHandle< CBaseEntity > m_hSpectatorQueryUnit; // 0x674 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iStatsPanel; // 0x678 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iShopPanel; // 0x67c // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" ShopItemViewMode_t m_iShopViewMode; // 0x680 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iStatsDropdownCategory; // 0x684 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iStatsDropdownSort; // 0x688 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" char m_szShopString[64]; // 0x68c // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" bool m_bInShowCaseMode; // 0x6cc private: [[maybe_unused]] uint8_t __pad06cd[0x3]; // 0x6cd public: // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" float m_flCameraZoomAmount; // 0x6d0 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" int32_t m_iHighPriorityScore; // 0x6d4 // MNetworkEnable // MNetworkUserGroup "DOTATeamMatesAndCommentatorTable" AbilityID_t m_quickBuyItems[9]; // 0x6d8 // MNetworkEnable // MNetworkUserGroup "DOTATeamMatesAndCommentatorTable" bool m_quickBuyIsPurchasable[9]; // 0x6fc private: [[maybe_unused]] uint8_t __pad0705[0x3]; // 0x705 public: // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" float m_flFrameTime; // 0x708 // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" float m_flFrameTimeStdDev; // 0x70c // MNetworkEnable // MNetworkUserGroup "DOTACommentatorTable" float m_flUnfilteredFrameTime; // 0x710 // MNetworkEnable bool m_bUsingAssistedCameraOperator; // 0x714 // MNetworkEnable bool m_bUsingCameraMan; // 0x715 private: [[maybe_unused]] uint8_t __pad0716[0x2]; // 0x716 public: // MNetworkEnable int32_t m_nPlayerAssistFlags; // 0x718 float m_flHighPriorityScoreTimeStamp; // 0x71c float m_flExecuteOrdersLagCompensation; // 0x720 // MNetworkEnable int32_t m_iMusicStatus; // 0x724 // MNetworkEnable float m_flMusicOperatorVals[3]; // 0x728 // MNetworkEnable int32_t m_iMusicOperatorVals[4]; // 0x734 private: [[maybe_unused]] uint8_t __pad0744[0x4]; // 0x744 public: CountdownTimer m_MusicRestTime; // 0x748 // MNetworkEnable CHandle< CBaseEntity > m_hKillCamUnit; // 0x760 Vector m_vecCrosshairTracePos; // 0x764 CEntityIndex m_iCrosshairEntity; // 0x770 // MNetworkEnable PlayerID_t m_nPlayerID; // 0x774 // MNetworkEnable CHandle< CBaseEntity > m_hAssignedHero; // 0x778 private: [[maybe_unused]] uint8_t __pad077c[0xc]; // 0x77c public: bool m_bTeleportRequiresHalt; // 0x788 bool m_bChannelRequiresHalt; // 0x789 private: [[maybe_unused]] uint8_t __pad078a[0x2]; // 0x78a public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" int32_t m_nServerOrderSequenceNumber; // 0x78c float m_flLastOrderTime; // 0x790 float m_flLastKnownActiveTime; // 0x794 GameTime_t m_flLastReconnectTime; // 0x798 GameTime_t m_fLastSuggestionTime; // 0x79c private: [[maybe_unused]] uint8_t __pad07a0[0x20]; // 0x7a0 public: bool m_bWantsRandomHero; // 0x7c0 bool m_bFullyJoinedServer; // 0x7c1 private: [[maybe_unused]] uint8_t __pad07c2[0x2]; // 0x7c2 public: int32_t m_nCheatDetectOrderReferenceCommandNumber; // 0x7c4 PlayerID_t m_iSwapPreferencePlayerID; // 0x7c8 uint32_t m_nCoachListenMask; // 0x7cc // MNetworkEnable int32_t m_nCachedCoachedTeam; // 0x7d0 float m_flLastChatWheelTime[2]; // 0x7d4 float m_flLastChatWheelAudioTime[2]; // 0x7dc float m_flLastChatWheelAllChatAudioTime[2]; // 0x7e4 float m_flLastChatWheelSprayTime; // 0x7ec float m_flLastChatWheelLongCooldownTime; // 0x7f0 float m_flLastPingTime; // 0x7f4 float m_flPingAllowance; // 0x7f8 float m_flLastMapLineTime; // 0x7fc float m_flMapLineAllowance; // 0x800 float m_flLastVersusBehaviorTime; // 0x804 float m_flVersusBehaviorAllowance; // 0x808 uint8_t m_pOrderRetirementHistory[10]; // 0x80c uint16_t m_nOrderRetirementSum; // 0x816 int32_t m_nOrderRetirementLastTick; // 0x818 }; // Alignment: 16 // Size: 0x5d8 class CDOTATeam : public CTeam { public: // MNetworkEnable int32_t m_iHeroKills; // 0x560 // MNetworkEnable int32_t m_iTowerKills; // 0x564 // MNetworkEnable int32_t m_iBarracksKills; // 0x568 // MNetworkEnable uint32_t m_unTournamentTeamID; // 0x56c // MNetworkEnable // MNetworkEncoder uint64_t m_ulTeamLogo; // 0x570 // MNetworkEnable // MNetworkEncoder uint64_t m_ulTeamBaseLogo; // 0x578 // MNetworkEnable // MNetworkEncoder uint64_t m_ulTeamBannerLogo; // 0x580 // MNetworkEnable bool m_bTeamComplete; // 0x588 // MNetworkEnable bool m_bTeamIsHomeTeam; // 0x589 // MNetworkEnable Color m_CustomHealthbarColor; // 0x58a // MNetworkEnable char m_szTag[33]; // 0x58e private: [[maybe_unused]] uint8_t __pad05af[0x1]; // 0x5af public: int32_t m_event_lobby_updated; // 0x5b0 int32_t m_nKillStreak; // 0x5b4 int32_t m_iRecentKillCount; // 0x5b8 int32_t m_iRandomNumber; // 0x5bc CountdownTimer m_RecentHeroKillTimer; // 0x5c0 }; // Alignment: 5 // Size: 0x770 class CDOTA_Item_Physical : public CBaseAnimatingActivity { public: int32_t m_nFlags; // 0x758 int32_t m_nRevealedInFoWForTeam; // 0x75c GameTime_t m_fCreationTime; // 0x760 // MNetworkEnable CHandle< CDOTA_Item > m_hItem; // 0x764 // MNetworkEnable bool m_bIsLowPriorityHoverItem; // 0x768 }; // Alignment: 5 // Size: 0x968 class CDOTA_Item_Rune : public CBaseAnimatingActivity { public: CHandle< CBaseEntity > m_hRuneSpawner; // 0x758 // MNetworkEnable int32_t m_iRuneType; // 0x75c // MNetworkEnable // MNetworkBitCount "4" float m_flRuneTime; // 0x760 // MNetworkEnable int32_t m_nMapLocationTeam; // 0x764 // MNetworkEnable char m_szLocation[512]; // 0x768 }; // Alignment: 4 // Size: 0x770 class CDOTA_Item_RuneSpawner_Powerup : public CBaseAnimatingActivity { public: CUtlSymbolLarge m_szPosition; // 0x758 // MNetworkEnable float m_flLastSpawnTime; // 0x760 // MNetworkEnable float m_flNextSpawnTime; // 0x764 // MNetworkEnable bool m_bNextRuneIsWater; // 0x768 }; // Alignment: 4 // Size: 0x770 class CDOTA_Item_RuneSpawner_Bounty : public CBaseAnimatingActivity { public: CUtlSymbolLarge m_szPosition; // 0x758 int32_t m_nDotaTeam; // 0x760 // MNetworkEnable float m_flLastSpawnTime; // 0x764 // MNetworkEnable float m_flNextSpawnTime; // 0x768 }; // Alignment: 2 // Size: 0x760 class CDOTA_Item_RuneSpawner : public CBaseAnimatingActivity { public: // MNetworkEnable float m_flLastSpawnTime; // 0x758 // MNetworkEnable float m_flNextSpawnTime; // 0x75c }; // Alignment: 1 // Size: 0x4a0 class CDOTA_ItemSpawner : public CPointEntity { public: CUtlSymbolLarge m_szItemName; // 0x498 }; // Alignment: 1 // Size: 0x938 class CTriggerDota : public CTriggerMultiple { public: CDotaEntityFilterFlags m_FilterFlags; // 0x918 }; // Alignment: 0 // Size: 0x918 class CDOTA_HeroTrigger : public CTriggerMultiple { public: // no members available }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_TutorialNPCBlocker_Thinker : public CDOTA_Buff { public: Vector m_vecStart; // 0x1138 Vector m_vecEnd; // 0x1144 float m_flRadius; // 0x1150 bool m_bHidden; // 0x1154 }; // Alignment: 5 // Size: 0x1168 class CDOTA_Modifier_TutorialNPCBlocker : public CDOTA_Buff { public: Vector m_vecStart; // 0x1138 Vector m_vecEnd; // 0x1144 Vector m_vecCenter; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x115c bool m_bHidden; // 0x1160 }; // Alignment: 10 // Size: 0x978 class CEnvDeferredLight : public CModelPointEntity { public: CHandle< CBaseEntity > m_hTargetEntity; // 0x748 // MNetworkEnable Color m_LightColor; // 0x74c // MNetworkEnable float m_flIntensity; // 0x750 // MNetworkEnable float m_flLightSize; // 0x754 // MNetworkEnable float m_flSpotFoV; // 0x758 // MNetworkEnable QAngle m_vLightDirection; // 0x75c // MNetworkEnable float m_flStartFalloff; // 0x768 // MNetworkEnable float m_flDistanceFalloff; // 0x76c // MNetworkEnable uint32_t m_nFlags; // 0x770 // MNetworkEnable char m_ProjectedTextureName[512]; // 0x774 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AttributeBonus : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Gold : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_HP : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_MP : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Attack_Speed : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Base_Attack_Rate : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Attributes : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_All_Stats : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Movement_Speed : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Cast_Speed : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Movement_Speed_Percentage : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_HP_Regen : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_MP_Regen : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_MP_Regen_Amp : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Manaloss_Reduction : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Agility_And_Intelligence : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Intelligence : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Strength : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Agility : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Magic_Resistance : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Status_Resistance : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Day_Vision : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Night_Vision : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Vision : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Armor : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Attack_Damage : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Attack_Base_Damage : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Attack_Range : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Cast_Range : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Spell_Amplify : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Cooldown_Reduction : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Respawn_Reduction : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Gold_Income : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Evasion : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Morphling_4 : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Unique_Treant_3 : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_20_Bash : public CDOTA_Buff { public: float value; // 0x1138 float value2; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Crit : public CDOTA_Buff { public: float crit_chance; // 0x1138 float crit_multiplier; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Tree_Walking : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Lifesteal : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Cleave : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Corruption : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Corruption_Debuff : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Special_Bonus_Mana_Break : public CDOTA_Buff { public: int32_t value; // 0x1138 int32_t burn_illusions_ranged; // 0x113c int32_t burn_illusions_melee; // 0x1140 float damage_per_burn; // 0x1144 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Special_Bonus_Spell_Block : public CDOTA_Buff { public: float block_cooldown; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CountdownTimer m_CooldownTimer; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_Spell_Immunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Haste : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Special_Bonus_TrueStrike : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Special_Bonus_Reincarnation : public CDOTA_Buff { public: float value; // 0x1138 float reincarnate_time; // 0x113c GameTime_t m_fLastReincarnationTime; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Spell_Lifesteal : public CDOTA_Buff { public: float value; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Special_Bonus_Exp_Boost : public CDOTA_Buff { public: int32_t value; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Stacking_Gold_Rate_Boost : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Stacking_Exp_Rate_Boost : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Seasonal_Summon_Common_Thinker : public CDOTA_Buff { public: float grace_period; // 0x1138 int32_t search_distance; // 0x113c float think_interval; // 0x1140 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Healing_Campfire_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Healing_Campfire_Heal : public CDOTA_Buff { public: int32_t heal_amount; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Seasonal_Summon_Snowman_Thinker : public CDOTA_Buff { public: float grace_period; // 0x1138 int32_t search_distance; // 0x113c float think_interval; // 0x1140 }; // Alignment: 31 // Size: 0x11e0 class CDOTA_Modifier_Seasonal_Penguin : public CDOTA_Buff { public: float m_fLifetimeGained; // 0x1138 Vector m_vTargetPos; // 0x113c int32_t m_nCurrentSpeed; // 0x1148 GameTime_t m_fLastBumpTime; // 0x114c Vector m_vLastPos; // 0x1150 CHandle< CBaseEntity > m_hLastHit; // 0x115c Vector m_vDir; // 0x1160 Vector m_vRunEndPos; // 0x116c bool m_bIsInInitialRun; // 0x1178 private: [[maybe_unused]] uint8_t __pad1179[0x3]; // 0x1179 public: Vector m_vJumpEndPos; // 0x117c bool m_bPlayedVroomSinceLastCrash; // 0x1188 private: [[maybe_unused]] uint8_t __pad1189[0x3]; // 0x1189 public: ParticleIndex_t m_nVroomFX; // 0x118c GameTime_t m_fLastSpeedStepTime; // 0x1190 GameTime_t m_fLastSpeechTime; // 0x1194 ParticleIndex_t m_nFXStackIndex; // 0x1198 int32_t m_nBumpsSinceLastCrash; // 0x119c CHandle< CBaseEntity > m_hLastBumpingHero; // 0x11a0 int32_t initial_speed; // 0x11a4 int32_t max_speed; // 0x11a8 int32_t speed_step; // 0x11ac float speed_step_interval; // 0x11b0 float bump_delay; // 0x11b4 float bump_delay_absolute; // 0x11b8 int32_t bump_collision_radius; // 0x11bc int32_t run_distance; // 0x11c0 int32_t jump_distance; // 0x11c4 int32_t speed_after_crash; // 0x11c8 int32_t speed_gain_per_hero_bump; // 0x11cc float max_gainable_lifetime; // 0x11d0 float lifetime_gain_per_hero_bump; // 0x11d4 float min_speech_repeat_time; // 0x11d8 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Seasonal_FestiveFirework : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_Firecrackers : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Ability_Seasonal_Summon_Dragon_Thinker : public CDOTA_Buff { public: float grace_period; // 0x1138 int32_t search_distance; // 0x113c float think_interval; // 0x1140 }; // Alignment: 14 // Size: 0x1180 class CDOTA_Modifier_Seasonal_Summon_CNY_Balloon_Thinker : public CDOTA_Buff { public: float speed; // 0x1138 int32_t min_distance_before_bounce; // 0x113c float drag; // 0x1140 float max_height; // 0x1144 float max_vertical_move_time; // 0x1148 float bounce_turn_angle; // 0x114c float bounce_turn_angle_tree; // 0x1150 float bounce_delay; // 0x1154 Vector m_vLastPos; // 0x1158 Vector m_vDir; // 0x1164 float m_flSpeed; // 0x1170 float m_flDistRemaining; // 0x1174 float m_flTreeTimeRemaining; // 0x1178 CHandle< CBaseEntity > m_hLastHit; // 0x117c }; // Alignment: 14 // Size: 0x1180 class CDOTA_Modifier_Seasonal_Summon_TI9_Balloon_Thinker : public CDOTA_Buff { public: float speed; // 0x1138 int32_t min_distance_before_bounce; // 0x113c float drag; // 0x1140 float max_height; // 0x1144 float max_vertical_move_time; // 0x1148 float bounce_turn_angle; // 0x114c float bounce_turn_angle_tree; // 0x1150 float bounce_delay; // 0x1154 Vector m_vLastPos; // 0x1158 Vector m_vDir; // 0x1164 float m_flSpeed; // 0x1170 float m_flDistRemaining; // 0x1174 float m_flTreeTimeRemaining; // 0x1178 CHandle< CBaseEntity > m_hLastHit; // 0x117c }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Seasonal_TI9_Drums_Thinker : public CDOTA_Buff { public: int32_t m_nNextSoundIndex; // 0x1148 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Seasonal_TI9_Shovel_Stasis_Trap : public CDOTA_Modifier_Seasonal_Summon_Common_Thinker { public: CHandle< CBaseEntity > m_hHero; // 0x1148 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Seasonal_TI9_Shovel_BabyRoshan : public CDOTA_Buff { public: bool m_bFirstThink; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: GameTime_t m_flStartTime; // 0x113c Vector m_vecStartingPos; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Seasonal_TI9_Shovel_Ghost_Haunt : public CDOTA_Buff { public: int32_t nDamageInstances; // 0x1138 GameTime_t m_flLastAttackTime; // 0x113c GameTime_t m_flLastMoveTime; // 0x1140 CHandle< CBaseEntity > m_hGhost; // 0x1144 }; // Alignment: 4 // Size: 0x1160 class CDOTA_Modifier_Seasonal_TI9_Shovel_Pudgling : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 int32_t m_nActionCount; // 0x113c Vector m_vecStartingPos; // 0x1140 Vector m_vecDestinationOffset; // 0x114c }; // Alignment: 17 // Size: 0x11c0 class CDOTA_Modifier_Seasonal_TI9_Monkey_Thinker : public CDOTA_Buff { public: float attack_range; // 0x1138 float attack_time; // 0x113c float attack_projectile_time; // 0x1140 int32_t projectile_speed; // 0x1144 float turn_time; // 0x1148 float turn_angle; // 0x114c float shoot_angle; // 0x1150 float m_flTurnRate; // 0x1154 float m_flTargetYaw; // 0x1158 float m_flLastTurnTime; // 0x115c GameTick_t m_nLastTickCount; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: bool m_bHappyMonkeyCondition; // 0x1168 private: [[maybe_unused]] uint8_t __pad1169[0x3]; // 0x1169 public: CHandle< CDOTA_BaseNPC > m_hAngryTarget; // 0x116c CHandle< CDOTA_BaseNPC > m_hAttackTarget; // 0x1170 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CountdownTimer m_AttackTimer; // 0x1178 CountdownTimer m_AttackProjectileTimer; // 0x1190 CountdownTimer m_HappyTimer; // 0x11a8 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_TI9_MonkeyPoop : public CDOTA_Buff { public: // no members available }; // Alignment: 13 // Size: 0x1180 class CDOTA_Modifier_Lesser_NightCrawler_Pounce : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t pounce_distance; // 0x1164 float pounce_speed; // 0x1168 float pounce_acceleration; // 0x116c int32_t pounce_radius; // 0x1170 int32_t pounce_damage; // 0x1174 float leash_duration; // 0x1178 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Zombie_Berserk : public CDOTA_Buff { public: int32_t berserk_bonus_attack_speed; // 0x1138 int32_t berserk_bonus_movement_speed; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Corpselord_Revive : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t ticks_to_revive; // 0x113c float tick_interval; // 0x1140 CHandle< CDOTA_BaseNPC > m_pReviveTarget; // 0x1144 int32_t m_nCurrentTicks; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Creature_IceSlam_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 ParticleIndex_t m_nPathEffectIndex; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_GreaterClarity : public CDOTA_Buff { public: int32_t total_mana; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_UpgradedMortar : public CDOTA_Buff { public: int32_t bonus_per_upgrade; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_UpgradedBarricade : public CDOTA_Buff { public: int32_t armor_bonus_per_upgrade; // 0x1138 int32_t hp_bonus_per_upgrade; // 0x113c }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Creature_HybridFlyer : public CDOTA_Buff { public: CountdownTimer m_ctTimer; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Creature_Full_Avoidance : public CDOTA_Buff { public: float m_flOriginalAvoidance; // 0x1138 }; // Alignment: 16 // Size: 0x1180 class CDOTA_Modifier_LootDrop_Thinker : public CDOTA_Buff { public: bool m_bAutoPickup; // 0x1138 bool m_bOnlyPlayerHeroPickup; // 0x1139 bool m_bCreepHeroPickup; // 0x113a bool m_bAutoUse; // 0x113b bool m_bFlying; // 0x113c bool m_bUseSpawnAnim; // 0x113d private: [[maybe_unused]] uint8_t __pad113e[0x2]; // 0x113e public: GameTime_t m_flKnockbackStartTime; // 0x1140 GameTime_t m_flKnockbackEndTime; // 0x1144 float m_flKnockbackHeight; // 0x1148 float m_flInitialHeight; // 0x114c float m_flKnockbackDuration; // 0x1150 float m_flEndHeight; // 0x1154 Vector m_vStartPos; // 0x1158 Vector m_vEndPos; // 0x1164 float m_fPickupRadius; // 0x1170 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CUtlString m_strTransitionEffect; // 0x1178 }; // Alignment: 13 // Size: 0x1188 class CDOTA_Modifier_ItemWiggle_Thinker : public CDOTA_Buff { public: Vector m_vOriginalPosition; // 0x1138 float m_flOriginalScale; // 0x1144 GameTime_t m_flLastChangeTime; // 0x1148 Vector m_vLastChangePosition; // 0x114c float m_flLastChangeScale; // 0x1158 Vector m_vTargetPosition; // 0x115c float m_flTargetScale; // 0x1168 bool m_bFirstThink; // 0x116c private: [[maybe_unused]] uint8_t __pad116d[0x3]; // 0x116d public: float m_flStartAmplitude; // 0x1170 float m_flEndAmplitude; // 0x1174 float m_flScaleAmplitude; // 0x1178 float m_flStartFrequency; // 0x117c float m_flEndFrequency; // 0x1180 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Summon_Snowman_Thinker : public CDOTA_Buff { public: float tick_rate; // 0x1138 int32_t taunt_radius; // 0x113c float taunt_duration; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Snowman_Taunt : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hZombieTarget; // 0x1138 bool m_bDidSetAttackTarget; // 0x113c }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Frostivus2018_Decorate_Tree_Thinker : public CDOTA_Buff { public: int32_t num_explosions; // 0x1138 int32_t radius; // 0x113c float m_fExplosions; // 0x1140 }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_FestiveFirework : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_FestiveFirework_Blind : public CDOTA_Buff { public: int32_t miss_rate; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Siege_Fireball_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 float duration; // 0x113c float tick_interval; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Siege_Fireball_Burn : public CDOTA_Buff { public: int32_t damage_per_tick; // 0x1138 float tick_interval; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeLock : public CDOTA_Buff { public: float duration; // 0x1138 float duration_creep; // 0x113c int32_t chance_pct; // 0x1140 int32_t bonus_damage; // 0x1144 int32_t radius; // 0x1148 }; // Alignment: 1 // Size: 0x1150 class CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeWalk_Tracker : public CDOTA_Buff { public: CUtlVector< CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeWalk_Tracker::sDamageSources > m_vDamageSources; // 0x1138 }; // Alignment: 6 // Size: 0x580 class CDOTA_Ability_Frostivus2018_FacelessVoid_TimeWalk : public CDOTABaseAbility { public: int32_t speed; // 0x560 int32_t range; // 0x564 int32_t radius; // 0x568 int32_t damage; // 0x56c int32_t m_nProjectileID; // 0x570 Vector m_vProjectileLocation; // 0x574 }; // Alignment: 15 // Size: 0x1198 class CDOTA_Modifier_Frostivus2018_Luna_Eclipse : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t radius; // 0x113c int32_t beams; // 0x1140 int32_t hit_count; // 0x1144 int32_t m_iBeamDamage; // 0x1148 float m_flBeamStun; // 0x114c Vector vPosition; // 0x1150 int32_t lucent_beam_radius; // 0x115c bool bAreaTarget; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_iTickCount; // 0x1164 ParticleIndex_t m_nMoonlightFXIndex; // 0x1168 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1170 float beam_interval; // 0x1188 float beam_interval_scepter; // 0x118c float m_flInterval; // 0x1190 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Clinkz_Strafe : public CDOTA_Buff { public: int32_t attack_speed_bonus_pct; // 0x1138 int32_t attack_spill_width; // 0x113c int32_t attack_spill_range; // 0x1140 float spill_damage_multiplier; // 0x1144 }; // Alignment: 6 // Size: 0x1168 class CDOTA_Modifier_Frostivus2018_Clinkz_SearingArrows : public CDOTA_Buff { public: CUtlVector< int16 > m_InFlightAttackRecords; // 0x1138 bool m_bBonusAttack; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: int32_t damage_bonus; // 0x1154 int32_t attack_spill_width; // 0x1158 int32_t attack_spill_range; // 0x115c float spill_damage_multiplier; // 0x1160 }; // Alignment: 7 // Size: 0x1178 class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk : public CDOTA_Modifier_Invisible { public: CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1148 bool m_bFreePathing; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t move_speed_bonus_pct; // 0x1164 int32_t radius; // 0x1168 int32_t attack_steal_amount; // 0x116c float attack_steal_duration; // 0x1170 int32_t max_stacks; // 0x1174 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk_BonusDamage : public CDOTA_Buff { public: int32_t bonus_base_dmg_per_stack; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk_AttackDebuff : public CDOTA_Buff { public: int32_t attack_steal_amount; // 0x1138 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Clinkz_Burning_Army_Thinker : public CDOTA_Buff { public: int32_t m_iCount; // 0x1138 Vector m_vFacePosition; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Clinkz_Burning_Army : public CDOTA_Buff { public: float attack_rate; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 11 // Size: 0x1180 class CDOTA_Modifier_Frostivus2018_BroodBaby_Launch : public CDOTA_Buff { public: Vector m_vLoc; // 0x1138 float m_flPredictedTotalTime; // 0x1144 Vector m_vStartPosition; // 0x1148 float m_flCurrentTimeHoriz; // 0x1154 float m_flCurrentTimeVert; // 0x1158 bool m_bHorizontalMotionInterrupted; // 0x115c bool m_bDamageApplied; // 0x115d bool m_bTargetTeleported; // 0x115e private: [[maybe_unused]] uint8_t __pad115f[0x1]; // 0x115f public: Vector m_vHorizontalVelocity; // 0x1160 Vector m_vLastKnownTargetPosition; // 0x116c float m_flInitialVelocityZ; // 0x1178 }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_Tusk_SnowballMeteor_Land : public CDOTA_Buff { public: Vector m_vDir; // 0x1138 int32_t travel_speed; // 0x1144 int32_t travel_distance; // 0x1148 int32_t vision_distance; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Tusk_SnowballMeteor_Burn : public CDOTA_Buff { public: float m_flDamagePerSecond; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Tusk_WalrusKick_Slow : public CDOTA_Buff { public: int32_t move_slow; // 0x1138 }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_Frostivus2018_Tusk_WalrusKick_AirTime : public CDOTA_Buff { public: int32_t hp_threshold; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 float m_flOldPitch; // 0x1144 QAngle m_qRotation; // 0x1148 int32_t m_nRotations; // 0x1154 Vector m_vDirection; // 0x1158 float m_flEndTime; // 0x1164 int32_t push_length; // 0x1168 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Frostivus2018_DarkWillow_ShadowRealm_Buff : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 float damage; // 0x113c float max_damage_duration; // 0x1140 float slow_radius; // 0x1144 float burn_duration; // 0x1148 float burn_damage; // 0x114c float slow_attack_speed_pct; // 0x1150 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_DarkWillow_ShadowRealm_Burn_Slow : public CDOTA_Buff { public: float burn_damage; // 0x1138 int32_t move_slow; // 0x113c float m_flDamageScale; // 0x1140 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Frostivus2018_DarkWillow_BrambleMaze_Creation_Thinker : public CDOTA_Buff { public: float latch_creation_interval; // 0x1138 float initial_creation_delay; // 0x113c int32_t placement_count; // 0x1140 float placement_duration; // 0x1144 int32_t m_iBramblesIndex; // 0x1148 }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_Frostivus2018_DarkWillow_BrambleMaze_Thinker : public CDOTA_Buff { public: int32_t latch_count; // 0x1138 int32_t latch_range; // 0x113c int32_t latch_vision; // 0x1140 float latch_creation_delay; // 0x1144 float latch_duration; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x8]; // 0x114c public: bool m_bActive; // 0x1154 private: [[maybe_unused]] uint8_t __pad1155[0x3]; // 0x1155 public: int32_t m_nLatchedEnemies; // 0x1158 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_Frostivus2018_DarkWillow_Bedlam : public CDOTA_Buff { public: float m_flRotation; // 0x1138 CHandle< CBaseEntity > m_hWisp; // 0x113c GameTime_t m_flLastAttack; // 0x1140 int32_t roaming_radius; // 0x1144 int32_t attack_radius; // 0x1148 float roaming_seconds_per_rotation; // 0x114c float attack_interval; // 0x1150 int32_t attack_targets; // 0x1154 }; // Alignment: 10 // Size: 0x1188 class CDOTA_Modifier_Frostivus2018_Puck_DreamCoil_Thinker : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_hLinkedEntities; // 0x1138 int32_t coil_radius; // 0x1150 int32_t coil_break_radius; // 0x1154 float coil_stun_duration; // 0x1158 float coil_stun_duration_scepter; // 0x115c float coil_slow; // 0x1160 int32_t coil_break_damage; // 0x1164 int32_t coil_break_damage_scepter; // 0x1168 bool m_bHasScepter; // 0x116c private: [[maybe_unused]] uint8_t __pad116d[0x3]; // 0x116d public: CUtlVector< ParticleIndex_t > m_FXIndex; // 0x1170 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Frostivus2018_Puck_Coiled : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Spectre_ActiveDispersion : public CDOTA_Buff { public: int32_t damage_reflection_pct; // 0x1138 }; // Alignment: 10 // Size: 0x1190 class CDOTA_Modifier_Frostivus2018_Spectre_ActiveDispersion_Thinker : public CDOTA_Buff { public: float m_fDamage; // 0x1138 float m_fLastRadius; // 0x113c float m_fCurRadius; // 0x1140 GameTime_t m_fLastThink; // 0x1144 bool m_bContracting; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x7]; // 0x1149 public: CountdownTimer m_ViewerTimer; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x1168 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1170 int32_t speed; // 0x1188 int32_t radius; // 0x118c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Centaur_Stampede_Slow : public CDOTA_Buff { public: int32_t slow_movement_speed; // 0x1138 }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Frostivus2018_Centaur_Stampede : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage_reduction; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Centaur_Stampede_Bonus_Armor : public CDOTA_Buff { public: int32_t bonus_base_armor_per_stack; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Centaur_Return_Aura : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Centaur_Return : public CDOTA_Buff { public: int32_t return_damage; // 0x1138 float strength_gain_duration; // 0x113c int32_t max_stacks; // 0x1140 int32_t ally_factor; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Centaur_Return_Bonus_Strength : public CDOTA_Buff { public: int32_t strength_gain; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Frostivus2018_Huskar_Inner_Fire_Disarm : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1158 class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Self : public CDOTA_Buff { public: int32_t health_cost; // 0x1138 int32_t spear_aoe; // 0x113c CUtlVector< int16 > m_InFlightAttackRecords; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Counter : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Debuff : public CDOTA_Buff { public: int32_t burn_damage; // 0x1138 float tick_rate; // 0x113c }; // Alignment: 4 // Size: 0x578 class CDOTA_Ability_Frostivus2018_Huskar_Life_Break : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 CHandle< CBaseEntity > m_hTarget; // 0x56c bool m_bInterrupted; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: int32_t max_damage; // 0x574 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Omniknight_Degen_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Omniknight_Degen_Aura_Effect : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 int32_t bonus_health_regen; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Omniknight_Repel : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Frostivus2018_Magnataur_Skewer_Bonus_Strength : public CDOTA_Buff { public: int32_t strength_gain; // 0x1138 }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_Frostivus2018_Pangolier_ShieldCrash_Jump : public CDOTA_Buff { public: float jump_duration; // 0x1138 float jump_duration_gyroshell; // 0x113c int32_t jump_height; // 0x1140 int32_t jump_height_gyroshell; // 0x1144 float m_flStartZ; // 0x1148 float m_flCurTime; // 0x114c float m_flJumpDuration; // 0x1150 float m_flJumpHeight; // 0x1154 int32_t jump_horizontal_distance; // 0x1158 Vector m_vTargetHorizontalDirection; // 0x115c }; // Alignment: 11 // Size: 0x1168 class CDOTA_Modifier_Frostivus2018_TrollWarlord_BattleTrance : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t attack_speed; // 0x113c int32_t lifesteal; // 0x1140 int32_t bonus_damage_pct; // 0x1144 float cleave_damage_pct; // 0x1148 int32_t cleave_starting_width; // 0x114c int32_t cleave_ending_width; // 0x1150 int32_t cleave_distance; // 0x1154 float splash_damage_pct; // 0x1158 int32_t splash_radius; // 0x115c CHandle< CBaseEntity > m_hTarget; // 0x1160 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_TrollWarlord_Fervor : public CDOTA_Buff { public: int32_t attack_speed; // 0x1138 int32_t max_stacks; // 0x113c CHandle< CBaseEntity > m_hUnit; // 0x1140 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Frostivus2018_Earthshaker_Aftershock : public CDOTA_Buff { public: int32_t aftershock_range; // 0x1138 float stun_duration; // 0x113c int32_t ability_damage; // 0x1140 }; // Alignment: 4 // Size: 0x1180 class CDOTA_Modifier_Frostivus2018_Weaver_GeminateAttack : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_iAttacksRemaining; // 0x113c private: [[maybe_unused]] uint8_t __pad1140[0x38]; // 0x1140 public: int32_t arrow_count; // 0x1178 int32_t bonus_range; // 0x117c }; // Alignment: 8 // Size: 0x1188 class CDOTA_Modifier_AghsFort_Tower_BlastWave_Thinker : public CDOTA_Buff { public: float damage_pct; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 private: [[maybe_unused]] uint8_t __pad1144[0x4]; // 0x1144 public: CountdownTimer m_ViewerTimer; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1168 int32_t speed; // 0x1180 int32_t radius; // 0x1184 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_TempBuff_CorpseExplosion_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_TempBuff_CorpseExplosion_Debuff : public CDOTA_Buff { public: int32_t corpse_explosion_radius; // 0x1138 int32_t corpse_explosion_damage_pct; // 0x113c int32_t corpse_explosion_chance_pct; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_HPAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_HPAura_Bonus : public CDOTA_Buff { public: float bonus_hp; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_CritAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_CritAura_Bonus : public CDOTA_Buff { public: int32_t crit_chance; // 0x1138 int32_t crit_multiplier; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_MagicResistAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_MagicResistAura_Bonus : public CDOTA_Buff { public: int32_t bonus_magical_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_ArmorAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Reward_ArmorAura_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 15 // Size: 0x11a0 class CDOTA_Modifier_AghsFort_Ascension_PlasmaField_Thinker : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 bool m_bWindingUp; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CountdownTimer m_ViewerTimer; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1168 int32_t speed; // 0x1180 int32_t radius; // 0x1184 int32_t damage_min; // 0x1188 int32_t damage_max; // 0x118c int32_t slow_min; // 0x1190 int32_t slow_max; // 0x1194 float slow_duration; // 0x1198 float windup_time; // 0x119c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Ascension_PlasmaField_Slow : public CDOTA_Buff { public: int32_t slow_amount; // 0x1138 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Ascension_Bulwark : public CDOTA_Buff { public: float physical_damage_reduction; // 0x1138 float physical_damage_reduction_side; // 0x113c float forward_angle; // 0x1140 float side_angle; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Ascension_AcidBlood_Thinker : public CDOTA_Buff { public: int32_t damage; // 0x1138 int32_t radius; // 0x113c ParticleIndex_t m_nFXIndex; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Ascension_AcidBlood : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 14 // Size: 0x1190 class CDOTA_Modifier_AghsFort_Firefly : public CDOTA_Buff { public: float pool_duration; // 0x1138 int32_t radius; // 0x113c int32_t m_ifirefly_Active; // 0x1140 int32_t tree_radius; // 0x1144 int32_t damage_pct_per_second; // 0x1148 int32_t movement_speed; // 0x114c float trail_placement_duration; // 0x1150 float burn_linger_duration; // 0x1154 bool m_bActive; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: ParticleIndex_t m_nFXIndex; // 0x115c ParticleIndex_t m_nFXIndexB; // 0x1160 GameTime_t m_flStartTime; // 0x1164 Vector m_vLastFirePoolLoc; // 0x1168 private: [[maybe_unused]] uint8_t __pad1174[0x4]; // 0x1174 public: CUtlVector< Vector > m_vFirePoolLocations; // 0x1178 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Firefly_Burn : public CDOTA_Buff { public: int32_t damage_pct_per_second; // 0x1138 int32_t movement_speed; // 0x113c float tick_interval; // 0x1140 GameTime_t m_fNextDamageTick; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Ascension_Silence_Charge : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Ascension_Silence : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Ascension_Silence_Display : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ascension_MagneticField_Thinker_Evasion : public CDOTA_Buff { public: int32_t radius; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Ascension_MagneticField_Evasion : public CDOTA_Buff { public: int32_t evasion_chance; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Ascension_Invis_Warning : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ascension_Invis : public CDOTA_Modifier_PersistentInvisibility { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Ascension_Meteoric_Land : public CDOTA_Buff { public: int32_t impact_radius; // 0x1138 float land_time; // 0x113c float burn_duration; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Morty_Hop_Controller : public CDOTA_Buff { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_Morty_Hop : public CDOTA_Buff { public: Vector m_vStartPosition; // 0x1138 Vector m_vTargetPosition; // 0x1144 float m_flCurrentTimeHoriz; // 0x1150 float m_flCurrentTimeVert; // 0x1154 float m_flZCoefficientA; // 0x1158 float m_flZCoefficientB; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: float duration; // 0x1164 int32_t height; // 0x1168 int32_t damage; // 0x116c int32_t damage_radius; // 0x1170 }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_AghsFort_ExplosiveBarrel : public CDOTA_Buff { public: ParticleIndex_t m_nPreviewFX; // 0x1138 int32_t radius; // 0x113c int32_t damage; // 0x1140 int32_t vision_radius; // 0x1144 float vision_duration; // 0x1148 int32_t model_scale; // 0x114c bool bExploding; // 0x1150 private: [[maybe_unused]] uint8_t __pad1151[0x3]; // 0x1151 public: float stun_duration; // 0x1154 }; // Alignment: 10 // Size: 0x1178 class CDOTA_Modifier_AghsFort_PlayerTransform : public CDOTA_Buff { public: itemid_t m_nCourierItemId; // 0x1138 CUtlString m_ModelNameOfDisguise; // 0x1140 private: [[maybe_unused]] uint8_t __pad1148[0x8]; // 0x1148 public: int32_t m_nMoveSpeed; // 0x1150 int32_t m_nDisguisedSpeed; // 0x1154 ParticleIndex_t m_nDisguiseEffectIndex; // 0x1158 CHandle< CBaseEntity > m_hCourier; // 0x115c bool m_bIsFlyingCourier; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x7]; // 0x1161 public: char* s_pszDonkeyDisguise; // 0x1168 float invul_duration; // 0x1170 bool m_bParticlesSpawned; // 0x1174 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Ravage_Potion : public CDOTA_Buff { public: int32_t damage; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 bool m_bDamageApplied; // 0x1144 }; // Alignment: 10 // Size: 0x1168 class CDOTA_Modifier_AghsFort_DragonPotion : public CDOTA_Buff_Item { public: int32_t m_iOriginalAttackCapabilities; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlSymbolLarge m_iszRangedAttackEffect; // 0x1140 int32_t bonus_movement_speed; // 0x1148 int32_t bonus_attack_damage; // 0x114c int32_t bonus_attack_range; // 0x1150 int32_t attack_projectile_speed; // 0x1154 int32_t magic_resistance; // 0x1158 int32_t model_scale; // 0x115c int32_t skin_number; // 0x1160 bool flying_movement; // 0x1164 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Arcanist_Potion : public CDOTA_Buff { public: int32_t m_nCooldownReductionPct; // 0x1138 int32_t m_nManaCostReductionPct; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_EchoSlamPotion_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Potion_SpendCharge : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Thinker : public CDOTA_Buff_Item { public: float m_fProcChance; // 0x1138 int32_t m_nRadius; // 0x113c int32_t m_nMovespeedBonus; // 0x1140 float m_fStunDuration; // 0x1144 float m_fSlowDuration; // 0x1148 float m_fDelay; // 0x114c int32_t m_nTorrentDamage; // 0x1150 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Torrent : public CDOTA_Buff_Item { public: int32_t m_nTorrentDamage; // 0x1138 float m_flStartZ; // 0x113c float m_flCurTime; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Torrent_Slow : public CDOTA_Buff { public: int32_t m_nMovespeedBonus; // 0x1138 }; // Alignment: 9 // Size: 0x1178 class CDOTA_Modifier_AghsFort_ShadowWaveEffectPotion : public CDOTA_Buff_Item { public: int32_t m_iCurJumpCount; // 0x1138 Vector m_vCurTargetLoc; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1148 float m_fProcChance; // 0x1160 int32_t m_nCastRange; // 0x1164 int32_t m_nBounceRadius; // 0x1168 int32_t m_nDamageRadius; // 0x116c int32_t m_nDamage; // 0x1170 int32_t m_nMaxTargets; // 0x1174 }; // Alignment: 16 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Minor_Stats_Upgrade : public CDOTA_Buff { public: int32_t bonus_all_stats; // 0x1138 int32_t bonus_primary_stat; // 0x113c int32_t bonus_movespeed; // 0x1140 int32_t bonus_hp_regen; // 0x1144 int32_t bonus_armor; // 0x1148 int32_t bonus_attack_damage; // 0x114c int32_t bonus_cast_range; // 0x1150 int32_t bonus_spell_amp; // 0x1154 int32_t bonus_health; // 0x1158 int32_t bonus_mana; // 0x115c int32_t bonus_attack_speed; // 0x1160 int32_t bonus_heal_amp; // 0x1164 int32_t bonus_mana_regen; // 0x1168 int32_t bonus_evasion; // 0x116c int32_t bonus_magic_resist; // 0x1170 int32_t bonus_lifesteal; // 0x1174 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_AggroOverride : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_SwampSickness : public CDOTA_Buff { public: int32_t slow_percent; // 0x1138 bool m_bInRiver; // 0x113c }; // Alignment: 8 // Size: 0x1158 class CDOTA_Modifier_AghsFort_RestorativeFlower : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t heal; // 0x113c int32_t vision_radius; // 0x1140 float vision_duration; // 0x1144 int32_t model_scale; // 0x1148 bool bExploding; // 0x114c private: [[maybe_unused]] uint8_t __pad114d[0x3]; // 0x114d public: float stun_duration; // 0x1150 ParticleIndex_t m_nFXAmbient; // 0x1154 }; // Alignment: 7 // Size: 0x1160 class CDOTA_Modifier_AghsFort_StonehallGeneral_OverwhelmingOdds_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t max_steps; // 0x113c float damage_interval; // 0x1140 int32_t m_nNumSteps; // 0x1144 int32_t m_nRadiusStep; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x114c Vector m_vDir; // 0x1150 }; // Alignment: 10 // Size: 0x1160 class CDOTA_Modifier_Boss_DarkWillow_Bedlam : public CDOTA_Buff { public: float m_flRotation; // 0x1138 CHandle< CBaseEntity > m_hWisp; // 0x113c GameTime_t m_flLastAttack; // 0x1140 bool reversed; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: int32_t roaming_radius; // 0x1148 int32_t attack_radius; // 0x114c float roaming_seconds_per_rotation; // 0x1150 float attack_interval; // 0x1154 bool m_bSetupWarning; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: ParticleIndex_t m_nPreviewFX; // 0x115c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Enrage : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Spectre_ActiveDispersion : public CDOTA_Buff { public: int32_t damage_reflection_pct; // 0x1138 }; // Alignment: 10 // Size: 0x1190 class CDOTA_Modifier_AghsFort_Spectre_ActiveDispersion_Thinker : public CDOTA_Buff { public: float m_fDamage; // 0x1138 float m_fLastRadius; // 0x113c float m_fCurRadius; // 0x1140 GameTime_t m_fLastThink; // 0x1144 bool m_bContracting; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x7]; // 0x1149 public: CountdownTimer m_ViewerTimer; // 0x1150 ParticleIndex_t m_nFXIndex; // 0x1168 private: [[maybe_unused]] uint8_t __pad116c[0x4]; // 0x116c public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1170 int32_t speed; // 0x1188 int32_t radius; // 0x118c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_RockGolem_Avalanche_Stun : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 7 // Size: 0x1170 class CDOTA_Modifier_AghsFort_RockGolem_Avalanche : public CDOTA_Buff { public: CUtlVector< CDOTA_BaseNPC* > m_pHeroesHit; // 0x1138 int32_t radius; // 0x1150 float total_duration; // 0x1154 float stun_duration; // 0x1158 int32_t tick_count; // 0x115c int32_t m_damage; // 0x1160 int32_t m_nTicks; // 0x1164 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Creature_Phoenix_FireSpiritCount : public CDOTA_Buff { public: int32_t spirit_count; // 0x1138 ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_AghsFort_Creature_Phoenix_Sun : public CDOTA_Buff { public: int32_t aura_radius; // 0x1138 float stun_duration; // 0x113c int32_t max_hero_attacks; // 0x1140 int32_t max_hero_attacks_scepter; // 0x1144 int32_t max_hero_attacks_required; // 0x1148 float caster_life_pct; // 0x114c CHandle< CBaseEntity > m_hSecondaryTarget; // 0x1150 int32_t m_iAttackCount; // 0x1154 int32_t creep_attacks_count; // 0x1158 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_PudgeMiniboss_HatefulStrike : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t maxhp_percent_damage; // 0x113c int32_t every_n_attacks; // 0x1140 bool crit_active; // 0x1144 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PudgeMiniboss_ArmorCorruption : public CDOTA_Buff { public: float armor_reduction_per_stack; // 0x1138 float stack_duration; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PudgeMiniboss_ArmorCorruptionDebuff : public CDOTA_Buff { public: float armor_reduction_per_stack; // 0x1138 float stack_duration; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_PudgeMiniboss_ArmorCorruptionStack : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_Wave_Blast_Knockback : public CDOTA_Buff { public: float disarm_duration; // 0x1138 Vector m_vPushDir; // 0x113c GameTime_t m_flStartTime; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Wave_Blast_Disarm : public CDOTA_Modifier_Disarmed { public: // no members available }; // Alignment: 9 // Size: 0x1170 class CDOTA_Modifier_AghsFort_Waveblaster_Leap : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: float leap_speed; // 0x1164 float leap_acceleration; // 0x1168 }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_AghsFort_Morphling_Waveform : public CDOTABaseAbility { public: int32_t m_nProjectileID; // 0x560 Vector m_vProjectileLocation; // 0x564 CHandle< CBaseEntity > m_hHitHero; // 0x570 bool m_bGrantedGem; // 0x574 private: [[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575 public: ParticleIndex_t m_nPreviewFX; // 0x578 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Morphling_Waveform : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Creature_Impale : public CDOTA_Buff { public: float m_flStartZ; // 0x1138 float m_flCurTime; // 0x113c float m_flDuration; // 0x1140 bool m_bDamageApplied; // 0x1144 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_AghsFort_Creature_SpikedCarapace : public CDOTA_Buff { public: float stun_duration; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< CHandle< CBaseEntity > > m_vecAlreadyAppliedDebuff; // 0x1140 }; // Alignment: 15 // Size: 0x5b0 class CDOTA_Ability_Aghsfort_Walrus_Pudge_Harpoon : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 float hook_speed; // 0x56c int32_t hook_width; // 0x570 int32_t hook_distance; // 0x574 bool m_bRetracting; // 0x578 bool m_bDiedInHook; // 0x579 private: [[maybe_unused]] uint8_t __pad057a[0x2]; // 0x57a public: CHandle< CBaseEntity > m_hVictim; // 0x57c Vector m_vTargetPosition; // 0x580 Vector m_vCasterPosition; // 0x58c bool m_bChainDetached; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 public: ParticleIndex_t m_iChainParticle; // 0x59c int32_t m_iHookParticle; // 0x5a0 int32_t m_nManaCost; // 0x5a4 CHandle< CBaseEntity > m_hSourceCaster; // 0x5a8 ParticleIndex_t m_nPreviewFX; // 0x5ac }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Walrus_Pudge_Harpoon_PathingFix : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Walrus_Pudge_Harpoon : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Creature_Flamestrike : public CDOTA_Buff { public: int32_t impact_radius; // 0x1138 float ground_burn_duration; // 0x113c float damage; // 0x1140 int32_t vision_distance; // 0x1144 float vision_duration; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Creature_Flamestrike_Ground : public CDOTA_Buff { public: float burn_interval; // 0x1138 int32_t burn_radius; // 0x113c int32_t burn_dps; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_DragonKnight_BreatheFire_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PineCone_ShieldBash_Slow : public CDOTA_Buff { public: int32_t knockback_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PineCone_ShieldBash_Crit : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PineCone_AcornShot_DelayThinker : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 int32_t m_nSourceProjectileHandle; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PineCone_AcornShot_TreeThinker : public CDOTA_Buff { public: CHandle< CDOTA_TempTree > m_hTree; // 0x1138 int32_t fow_viewer; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PineCone_AcornShot_BonusDamage : public CDOTA_Buff { public: int32_t acorn_shot_damage; // 0x1138 int32_t base_damage_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_PineCone_AcornShot_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Lifestealer_Enraged_Pulse : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_UrnUpheaval : public CDOTA_Buff { public: int32_t m_iSlow; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_UpheavalUrn_Reincarnation : public CDOTA_Buff { public: float reincarnate_time; // 0x1138 GameTime_t m_fLastReincarnationTime; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_SkeletonKing_VampiricAura : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_Shadow_Demon_Shadow_Poison : public CDOTA_Buff { public: float stack_damage; // 0x1138 float bonus_stack_damage; // 0x113c int32_t max_multiply_stacks; // 0x1140 int32_t release_at_max_stacks; // 0x1144 ParticleIndex_t m_nFXStackIndex; // 0x1148 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_AghsFort_ShadowShaman_Shackles : public CDOTA_Buff { public: float tick_interval; // 0x1138 float total_damage; // 0x113c float channel_time; // 0x1140 }; // Alignment: 5 // Size: 0x580 class CDOTA_Ability_Aghsfort_Elemental_Wisp_Tether : public CDOTABaseAbility { public: // MNetworkEnable CHandle< CBaseEntity > m_hTarget; // 0x560 Vector m_vProjectileLocation; // 0x564 bool m_bProjectileActive; // 0x570 private: [[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571 public: int32_t latch_distance; // 0x574 int32_t m_iProjectileIndex; // 0x578 }; // Alignment: 14 // Size: 0x1188 class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether : public CDOTA_Buff { public: bool m_bInManaGained; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: CHandle< CBaseEntity > m_hTarget; // 0x113c CUtlVector< CHandle< CBaseEntity > > hStunnedEntities; // 0x1140 float slow_duration; // 0x1158 int32_t movespeed; // 0x115c int32_t self_bonus; // 0x1160 bool m_bIsInRange; // 0x1164 private: [[maybe_unused]] uint8_t __pad1165[0x3]; // 0x1165 public: int32_t radius; // 0x1168 int32_t latch_distance; // 0x116c float m_flHealthHealed; // 0x1170 float m_flManaHealed; // 0x1174 float tether_heal_amp; // 0x1178 GameTime_t m_flHealMessageTime; // 0x117c GameTime_t m_flManaMessageTime; // 0x1180 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether_Haste : public CDOTA_Buff { public: int32_t movement_speed; // 0x1138 int32_t attack_speed; // 0x113c int32_t health_regen; // 0x1140 int32_t status_resist; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Aghsfort_Wildwing_Tornado_Blast_Debuff : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 Vector m_vStartPos; // 0x113c float m_flCurTime; // 0x1148 float m_flHeightT; // 0x114c }; // Alignment: 3 // Size: 0x1180 class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise : public CDOTA_Buff { public: CountdownTimer m_RevealTimer; // 0x1138 CountdownTimer m_InvisAttackTimer; // 0x1150 CountdownTimer m_CooldownTimer; // 0x1168 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Tree_Walking : public CDOTA_Buff { public: int32_t movement_bonus; // 0x1138 int32_t regen_amp; // 0x113c }; // Alignment: 0 // Size: 0x1148 class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Invis : public CDOTA_Modifier_Invisible { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_NearTreeDisplay : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Root : public CDOTA_Buff { public: float m_iEntangleDamage; // 0x1138 }; // Alignment: 7 // Size: 0x1168 class CDOTA_Modifier_AghsFort_PoisonNova_Creature_Thinker : public CDOTA_Buff { public: float m_fCurRadius; // 0x1138 GameTime_t m_fLastThink; // 0x113c CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x1140 int32_t speed; // 0x1158 int32_t radius; // 0x115c int32_t start_radius; // 0x1160 float duration; // 0x1164 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Creature_Venomancer_PoisonNova : public CDOTA_Buff { public: int32_t damage; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_Creature_Venomancer_PoisonSting_Applier : public CDOTA_Buff { public: float duration; // 0x1138 int32_t damage; // 0x113c }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_AghsFort_Venomancer_PoisonSting : public CDOTA_Buff { public: int32_t m_iDamage; // 0x1138 int32_t movement_speed; // 0x113c int32_t m_nTicksRemaining; // 0x1140 float m_flAttackDamage; // 0x1144 }; // Alignment: 7 // Size: 0x1158 class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Firestorm_Thinker : public CDOTA_Buff { public: int32_t wave_damage; // 0x1138 int32_t wave_count; // 0x113c int32_t radius; // 0x1140 int32_t summon_count; // 0x1144 float wave_interval; // 0x1148 float burn_duration; // 0x114c float first_wave_delay; // 0x1150 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Firestorm_Burn : public CDOTA_Buff { public: float burn_damage; // 0x1138 float burn_interval; // 0x113c }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_Warp_Channel_Soundstop : public CDOTA_Buff { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_Warp_Channel : public CDOTA_Buff { public: ParticleIndex_t m_nfxTargetTp; // 0x1138 ParticleIndex_t m_nfxTargetTp2; // 0x113c ParticleIndex_t m_nfxAmbientFx; // 0x1140 ParticleIndex_t m_nfxPortal1; // 0x1144 ParticleIndex_t m_nfxPortal2; // 0x1148 private: [[maybe_unused]] uint8_t __pad114c[0x8]; // 0x114c public: CHandle< CBaseEntity > m_hPortal; // 0x1154 Vector m_vStartPosition; // 0x1158 float m_flTotalTime; // 0x1164 float m_flElapsedTimePortion; // 0x1168 float animation_rate; // 0x116c int32_t stop_distance; // 0x1170 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_FX : public CDOTA_Buff { public: ParticleIndex_t m_nPortalAmbientFX; // 0x1138 }; // Alignment: 16 // Size: 0x5b8 class CDOTA_Ability_Aghsfort_Bonus_Pudge_MeatHook : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 float hook_speed; // 0x56c int32_t hook_width; // 0x570 int32_t hook_distance; // 0x574 bool m_bRetracting; // 0x578 bool m_bDiedInHook; // 0x579 private: [[maybe_unused]] uint8_t __pad057a[0x2]; // 0x57a public: CHandle< CBaseEntity > m_hVictim; // 0x57c Vector m_vTargetPosition; // 0x580 Vector m_vCasterPosition; // 0x58c bool m_bChainDetached; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 public: ParticleIndex_t m_iChainParticle; // 0x59c int32_t m_iHookParticle; // 0x5a0 int32_t m_nManaCost; // 0x5a4 CHandle< CBaseEntity > m_hSourceCaster; // 0x5a8 int32_t m_nNextConsecutiveHitCount; // 0x5ac // MNetworkEnable int32_t m_nConsecutiveHits; // 0x5b0 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Aghsfort_Bonus_Pudge_Meat_Hook : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1168 class CDOTA_Modifier_AghsFort_AmoebaBoss_Summoned_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Aghsfort_Modifier_Magnus_Push_Skewer_Movement : public CDOTA_Buff { public: int32_t m_nProjectileID; // 0x1138 }; // Alignment: 18 // Size: 0x11c8 class CDOTA_Modifier_Aghsfort_Hoodwink_ArcingBoomerang : public CDOTA_Buff { public: Vector m_vLeftControl; // 0x1138 Vector m_vRightControl; // 0x1144 Vector m_vTargetLoc; // 0x1150 Vector m_vOriginalTargetLoc; // 0x115c Vector m_vSourceLoc; // 0x1168 float m_flDuration; // 0x1174 GameTime_t m_flDieTime; // 0x1178 bool m_bReturning; // 0x117c private: [[maybe_unused]] uint8_t __pad117d[0x3]; // 0x117d public: int32_t m_nFramesToWait; // 0x1180 CHandle< CBaseEntity > m_hBoomerang; // 0x1184 ParticleIndex_t m_nBoomerangFXIndex; // 0x1188 ParticleIndex_t m_nOldBoomerangFXindex; // 0x118c CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x1190 int32_t radius; // 0x11a8 int32_t spread; // 0x11ac int32_t damage; // 0x11b0 float min_throw_duration; // 0x11b4 float max_throw_duration; // 0x11b8 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Aghsfort_Pugna_Grandmaster_NetherWard : public CDOTA_Buff { public: int32_t radius; // 0x1138 float mana_multiplier; // 0x113c float mana_drained_per_attack; // 0x1140 }; // Alignment: 23 // Size: 0x11b0 class CDOTA_Modifier_AghsFort_AssaultCaptain_SunRay : public CDOTA_Buff { public: int32_t hp_cost_perc_per_second; // 0x1138 int32_t beam_range; // 0x113c int32_t base_damage; // 0x1140 int32_t base_heal; // 0x1144 float tick_interval; // 0x1148 float forward_move_speed; // 0x114c float turn_rate_initial; // 0x1150 float turn_rate; // 0x1154 int32_t radius; // 0x1158 int32_t self_turn_rate_percent; // 0x115c float m_flCurrentTime; // 0x1160 GameTime_t m_flLastDamageTime; // 0x1164 float m_flAccumulatedSelfDamage; // 0x1168 bool m_bMovingForward; // 0x116c bool m_bTurningFast; // 0x116d private: [[maybe_unused]] uint8_t __pad116e[0x2]; // 0x116e public: float m_flFacingTarget; // 0x1170 float hp_perc_damage; // 0x1174 float hp_perc_heal; // 0x1178 ParticleIndex_t m_nBeamFXIndex; // 0x117c CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1180 CHandle< CBaseEntity > m_hBeamEnd; // 0x11a0 bool m_bCreatedVisionThinkers; // 0x11a4 private: [[maybe_unused]] uint8_t __pad11a5[0x3]; // 0x11a5 public: CHandle< CBaseEntity > m_hBeamEndSound; // 0x11a8 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_AghsFort_BossWinterWyvern_Cold_Embrace_Thinker : public CDOTA_Buff { public: int32_t freeze_radius; // 0x1138 int32_t freeze_damage; // 0x113c float freeze_debuff_duration; // 0x1140 float freeze_delay; // 0x1144 ParticleIndex_t m_nFXIndex; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AghsFort_BossWinterWyvern_Cold_Embrace_Debuff : public CDOTA_Buff { public: int32_t linger_movement_slow; // 0x1138 int32_t linger_damage; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Blessings_Debuff_Duration_Increase : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x1158 class CDOTA_Modifier_AghsFort_TrapRoom_Hookshot : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 Vector m_vStartPosition; // 0x113c private: [[maybe_unused]] uint8_t __pad1148[0x8]; // 0x1148 public: int32_t speed; // 0x1150 float duration; // 0x1154 }; // Alignment: 15 // Size: 0x5b0 class CDOTA_Ability_AghsFort_TrapRoom_MeatHook : public CDOTABaseAbility { public: Vector m_vProjectileLocation; // 0x560 float hook_speed; // 0x56c int32_t hook_width; // 0x570 int32_t hook_distance; // 0x574 bool m_bRetracting; // 0x578 bool m_bDiedInHook; // 0x579 private: [[maybe_unused]] uint8_t __pad057a[0x2]; // 0x57a public: CHandle< CBaseEntity > m_hVictim; // 0x57c Vector m_vTargetPosition; // 0x580 Vector m_vCasterPosition; // 0x58c bool m_bChainDetached; // 0x598 private: [[maybe_unused]] uint8_t __pad0599[0x3]; // 0x599 public: ParticleIndex_t m_iChainParticle; // 0x59c int32_t m_iHookParticle; // 0x5a0 int32_t m_nManaCost; // 0x5a4 CHandle< CBaseEntity > m_hSourceCaster; // 0x5a8 int32_t m_nNextConsecutiveHitCount; // 0x5ac }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_TrapRoom_MeatHook_PathingFix : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_TrapRoom_MeatHook : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Effigy_AghsFort : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_AghsFort_Watch_Tower_Capturing : public CDOTA_Buff { public: // no members available }; // Alignment: 15 // Size: 0x1180 class CDOTA_Modifier_AghsFort_Watch_Tower : public CDOTA_Buff { public: TowerState_t m_nState; // 0x1138 float m_flYaw; // 0x113c int32_t m_nCaptureDuration; // 0x1140 GameTime_t m_flEffectiveCaptureStartTime; // 0x1144 int32_t m_nCapturingPlayerCount; // 0x1148 float m_flCaptureProgress; // 0x114c int32_t m_iCapturingTeam; // 0x1150 ParticleIndex_t m_nFxOutpostAmbient; // 0x1154 GameTime_t m_flDestroyTime; // 0x1158 GameTime_t m_flAutoChannelCompleteTime; // 0x115c bool m_bAscensionLevelPicker; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_nEliteChallengeLevel; // 0x1164 CUtlString m_strNextRoomName; // 0x1168 CUtlString m_strNextEncounterName; // 0x1170 bool m_bStartedBeamFacing; // 0x1178 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_HighFiveRequested : public CDOTA_Buff { public: int32_t acknowledge_range; // 0x1138 float think_interval; // 0x113c float acknowledged_cooldown; // 0x1140 bool m_bAcknowledged; // 0x1144 bool m_bFirstThink; // 0x1145 private: [[maybe_unused]] uint8_t __pad1146[0x2]; // 0x1146 public: int32_t high_five_level; // 0x1148 }; // Alignment: 2 // Size: 0x1158 class CDOTA_Modifier_Jungle_Spirit : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > hCasterList; // 0x1138 bool bAcceptingGems; // 0x1150 }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_Spirit_Gem : public CDOTA_Buff { public: float m_flOriginalModelScale; // 0x1138 int32_t m_nHealthBarOffsetOverride; // 0x113c ParticleIndex_t m_nFXStackIndex; // 0x1140 float m_fScaleGainPerGem; // 0x1144 int32_t m_nLevel; // 0x1148 }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Jungle_Spirit_Reductions : public CDOTA_Buff { public: CUtlVector< CHandle< CBaseEntity > > m_vecAlliesNearby; // 0x1138 int32_t m_nAlliesNearby; // 0x1150 int32_t stat_reduction_pct; // 0x1154 int32_t armor_reduction; // 0x1158 int32_t radius; // 0x115c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Jungle_Spirit_Ally_Alert : public CDOTA_Buff { public: GameTime_t m_flLastHowl; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_JungleSpirit_RiverRejuvenation : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_JungleSpirit_RiverRejuvenation_Effect : public CDOTA_Buff { public: int32_t distance_from_shrine; // 0x1138 }; // Alignment: 3 // Size: 0x1150 class CDOTA_Modifier_JungleSpirit_RiverRejuvenation_Regen : public CDOTA_Buff { public: int32_t health_restore; // 0x1138 int32_t mana_restore; // 0x113c float regen_interval; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_JungleSpirit_BaseAttackRangeIncrease : public CDOTA_Buff { public: // no members available }; // Alignment: 10 // Size: 0x1190 class CDOTA_Modifier_Morokai_JungleHealBeam : public CDOTA_Buff { public: int32_t beam_count; // 0x1138 int32_t beam_range; // 0x113c int32_t beam_radius; // 0x1140 int32_t beam_buffer; // 0x1144 int32_t turn_rate; // 0x1148 int32_t hp_per_second; // 0x114c GameTime_t m_flLastThinkTime; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x1c]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_vecTargetedEntities; // 0x1170 float flLastTreeDestroyed; // 0x1188 float flTreeDestructionCooldown; // 0x118c }; // Alignment: 0 // Size: 0x1168 class CDOTA_Ability_JungleSpirit_Volcano_Eruption_Knockback : public CDOTA_Modifier_Knockback { public: // no members available }; // Alignment: 12 // Size: 0x11c8 class CDOTA_Modifier_JungleSpirit_Storm_Cyclone : public CDOTA_Buff { public: CUtlVector< ParticleIndex_t > m_FXIndex; // 0x1138 CUtlVector< CHandle< CBaseEntity > > m_hCyclones; // 0x1150 int32_t projectile_distance; // 0x1168 int32_t projectile_radius; // 0x116c int32_t projectile_amount; // 0x1170 float projectile_duration; // 0x1174 float delay; // 0x1178 GameTime_t m_flDieTime; // 0x117c GameTime_t m_flStartTime; // 0x1180 private: [[maybe_unused]] uint8_t __pad1184[0x4]; // 0x1184 public: CUtlVector< Vector > m_vLeftControl; // 0x1188 CUtlVector< Vector > m_vSourceLoc; // 0x11a0 Vector m_vTargetLoc; // 0x11b8 }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Jungle_Spirit_Storm_Cyclone_Debuff : public CDOTA_Buff { public: GameTime_t m_flStartTime; // 0x1138 Vector m_vStartPos; // 0x113c float m_flCurTime; // 0x1148 float m_flHeightT; // 0x114c int32_t cyclone_damage; // 0x1150 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Jungle_Spirit_Storm_Cyclone_Invulnerable : public CDOTA_Buff { public: ParticleIndex_t nFXIndex; // 0x1138 int32_t projectile_radius; // 0x113c int32_t projectile_destruction_radius; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Spirit_Storm_Multicast : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Spirit_Storm_Multicast_Cooldown : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Spirit_Jungle_Lumber_Lock : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Spirit_Jungle_Lumber_Lock_Immunity : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Spirit_Volcano_Fire_Strike : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Jungle_Spirit_Volcano_Fire_Strike_Caster : public CDOTA_Buff { public: int32_t damage_modifier; // 0x1138 }; // Alignment: 4 // Size: 0x1150 class CDOTA_Modifier_Jungle_Spirit_Range_Attack : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t projectile_speed; // 0x113c float turn_rate; // 0x1140 CHandle< CBaseEntity > m_hAttachTarget; // 0x1144 }; // Alignment: 16 // Size: 0x11a0 class CDOTA_Modifier_Seasonal_TI10_Portal : public CDOTA_Buff { public: ParticleIndex_t m_nPhaseStartFXIndex; // 0x1138 Vector m_vSpawnPos; // 0x113c CUtlVector< Vector > m_vecEmissions; // 0x1148 bool m_bChatSent; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t m_nPhase; // 0x1164 int32_t m_nNumEmitted; // 0x1168 int32_t m_nNumDrops; // 0x116c GameTime_t m_flStartTime; // 0x1170 GameTime_t m_flLastEmitTime; // 0x1174 bool m_bIsOnRadiant; // 0x1178 bool m_bUseLargeEmit; // 0x1179 private: [[maybe_unused]] uint8_t __pad117a[0x2]; // 0x117a public: int32_t m_nOutcome; // 0x117c private: [[maybe_unused]] uint8_t __pad1180[0x10]; // 0x1180 public: int32_t PHASE_OPEN; // 0x1190 int32_t PHASE_EMIT; // 0x1194 int32_t PHASE_EMIT_DONE; // 0x1198 int32_t PHASE_CLOSE; // 0x119c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_TI10_DiscoBall : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Seasonal_TI10_DiscoBall_Channeling : public CDOTA_Buff { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t m_nGesture; // 0x113c }; // Alignment: 39 // Size: 0x1200 class CDOTA_Modifier_Seasonal_TI10_SoccerBall : public CDOTA_Buff { public: Vector m_vPost1; // 0x1138 Vector m_vPost2; // 0x1144 Vector m_vPostForward; // 0x1150 ParticleIndex_t m_nPost1FXIndex; // 0x115c ParticleIndex_t m_nPost2FXIndex; // 0x1160 ParticleIndex_t m_nPost3FXIndex; // 0x1164 int32_t PHASE_START; // 0x1168 int32_t PHASE_GESTURE; // 0x116c int32_t PHASE_FX; // 0x1170 int32_t PHASE_MOTION; // 0x1174 int32_t PHASE_IMPACT; // 0x1178 int32_t PHASE_FAIL; // 0x117c int32_t PHASE_CROSSED_GOAL; // 0x1180 int32_t PHASE_GOAL; // 0x1184 float tick_interval; // 0x1188 float forward_move_speed; // 0x118c float magnus_coefficient; // 0x1190 float magnus_falloff; // 0x1194 float drag_coefficient; // 0x1198 float min_delay; // 0x119c float max_delay; // 0x11a0 int32_t hit_radius; // 0x11a4 ParticleIndex_t m_nFXIndex; // 0x11a8 Vector m_vVelocity; // 0x11ac Vector m_vSpawnPos; // 0x11b8 Vector m_vTargetPos; // 0x11c4 int32_t m_nPhase; // 0x11d0 int32_t m_nHits; // 0x11d4 float m_flMagnusValue; // 0x11d8 GameTime_t m_flStartTime; // 0x11dc float m_flDelay; // 0x11e0 GameTime_t m_flStateChangeTime; // 0x11e4 bool m_bFirstThink; // 0x11e8 bool m_bGroundHit; // 0x11e9 private: [[maybe_unused]] uint8_t __pad11ea[0x2]; // 0x11ea public: PlayerID_t m_nTargetPlayerID; // 0x11ec float m_flCurTime; // 0x11f0 float m_flStartZ; // 0x11f4 float m_flAirTime; // 0x11f8 float m_flHeight; // 0x11fc }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Seasonal_TI10_HotPotato : public CDOTA_Buff { public: float debuff_duration; // 0x1138 float time_to_explode; // 0x113c float throw_time; // 0x1140 GameTime_t m_fLastThink; // 0x1144 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_TI10_HotPotato_InboundPotato : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_TI10_HotPotato_Debuff : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Seasonal_TI10_HighFiveRequested : public CDOTA_Buff { public: int32_t acknowledge_range; // 0x1138 float think_interval; // 0x113c float acknowledged_cooldown; // 0x1140 bool m_bAcknowledged; // 0x1144 bool m_bFirstThink; // 0x1145 private: [[maybe_unused]] uint8_t __pad1146[0x2]; // 0x1146 public: int32_t high_five_level; // 0x1148 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Seasonal_TI11_RockPaperScissors_Playing : public CDOTA_Buff { public: float input_duration; // 0x1138 float think_interval; // 0x113c bool m_bChoseOption; // 0x1140 }; // Alignment: 9 // Size: 0x1168 class CDOTA_Modifier_Seasonal_TI11_RockPaperScissors : public CDOTA_Buff { public: float challenge_duration; // 0x1138 float reveal_duration; // 0x113c float reveal_delay; // 0x1140 float completed_cooldown; // 0x1144 float think_interval; // 0x1148 float acknowledge_range; // 0x114c private: [[maybe_unused]] uint8_t __pad1150[0x4]; // 0x1150 public: GameTime_t m_flRevealTime; // 0x1154 bool m_bFirstThink; // 0x1158 private: [[maybe_unused]] uint8_t __pad1159[0x3]; // 0x1159 public: PlayerID_t m_nRevealOpponentPlayerID; // 0x115c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Seasonal_TI11_BubbleGun : public CDOTA_Buff { public: float think_interval; // 0x1138 int32_t max_charges; // 0x113c int32_t m_nChargesUsed; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Seasonal_Summon_TI11_Balloon_Visuals : public CDOTA_Buff { public: float model_scale_per_stack; // 0x1138 bool m_bIsRadiant; // 0x113c }; // Alignment: 19 // Size: 0x1198 class CDOTA_Modifier_Seasonal_Summon_TI11_Balloon_Thinker : public CDOTA_Buff { public: float speed; // 0x1138 int32_t min_distance_before_bounce; // 0x113c float drag; // 0x1140 float max_height; // 0x1144 float max_vertical_move_time; // 0x1148 float bounce_turn_angle; // 0x114c float bounce_turn_angle_tree; // 0x1150 float bounce_delay; // 0x1154 int32_t max_bounces; // 0x1158 float max_model_scale; // 0x115c float power_growth_exponent; // 0x1160 Vector m_vLastPos; // 0x1164 Vector m_vDir; // 0x1170 float m_flSpeed; // 0x117c float m_flDistRemaining; // 0x1180 float m_flTreeTimeRemaining; // 0x1184 int32_t m_nTimesBounced; // 0x1188 float m_flModelScale; // 0x118c CHandle< CBaseEntity > m_hLastHit; // 0x1190 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Seasonal_TI11_DuelAccepted : public CDOTA_Buff { public: PlayerID_t m_nDuelOpponent; // 0x1138 }; // Alignment: 9 // Size: 0x11a8 class CDOTA_Modifier_Seasonal_TI11_CongaLine : public CDOTA_Buff { public: int32_t NUM_SOUNDS; // 0x1138 float dance_interval; // 0x113c float gesture_duration; // 0x1140 float catch_up_distance; // 0x1144 float slow_duration; // 0x1148 float slow_amount; // 0x114c int32_t m_nGesture; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CDOTA_BaseNPC > > m_vecDancers; // 0x1158 private: [[maybe_unused]] uint8_t __pad1170[0x30]; // 0x1170 public: bool m_bIsGesturing; // 0x11a0 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Seasonal_TI11_CongaLineDancer : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Seasonal_TI11_CongaLineSlow : public CDOTA_Buff { public: float m_flMaxSpeed; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Diretide_Portal_Channeling : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Diretide_Portal_Buff : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hInvader; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Seasonal_Diretide2020_HighFiveRequested : public CDOTA_Buff { public: int32_t acknowledge_range; // 0x1138 float think_interval; // 0x113c float acknowledged_cooldown; // 0x1140 bool m_bAcknowledged; // 0x1144 bool m_bFirstThink; // 0x1145 private: [[maybe_unused]] uint8_t __pad1146[0x2]; // 0x1146 public: int32_t high_five_level; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spring2021_BombHolder : public CDOTA_Buff_Item { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Spring2021_BombPlantable : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Spring2021_DefusalBomb : public CDOTA_Buff { public: float BOMB_DURATION; // 0x1138 float BOMB_FAST_TICK_START; // 0x113c float BOMB_DEFAULT_TICK; // 0x1140 }; // Alignment: 11 // Size: 0x1190 class CDOTA_Modifier_Spring2021_TowerDeathRing_Thinker : public CDOTA_Buff { public: float m_fLastRadius; // 0x1138 float m_fCurRadius; // 0x113c GameTime_t m_fLastThink; // 0x1140 bool m_bWindingUp; // 0x1144 private: [[maybe_unused]] uint8_t __pad1145[0x3]; // 0x1145 public: CountdownTimer m_ViewerTimer; // 0x1148 ParticleIndex_t m_nFXIndex; // 0x1160 private: [[maybe_unused]] uint8_t __pad1164[0x4]; // 0x1164 public: CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1168 int32_t speed; // 0x1180 int32_t radius; // 0x1184 int32_t damage; // 0x1188 float windup_time; // 0x118c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Winter2022_EnableFeedableRoshanInteract : public CDOTA_Buff { public: // no members available }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Plus_HighFiveRequested : public CDOTA_Buff { public: int32_t acknowledge_range; // 0x1138 float think_interval; // 0x113c float acknowledged_cooldown; // 0x1140 bool m_bAcknowledged; // 0x1144 bool m_bFirstThink; // 0x1145 private: [[maybe_unused]] uint8_t __pad1146[0x2]; // 0x1146 public: int32_t high_five_level; // 0x1148 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Item_MuertasGun : public CDOTA_Buff_Item { public: ParticleIndex_t m_nFXIndex; // 0x1138 int32_t bonus_cast_pct; // 0x113c int32_t bonus_spell_amp; // 0x1140 int32_t health_pct_penalty; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Muertas_Gun_Slow : public CDOTA_Buff { public: int32_t impact_slow_percent; // 0x1138 }; // Alignment: 1 // Size: 0x1148 class CDOTA_Modifier_Muertas_Gun_Fear : public CDOTA_Buff { public: Vector m_vFearDir; // 0x1138 }; // Alignment: 0 // Size: 0x498 class CInfoOfrendaStatueSpawn : public CPointEntity { public: // no members available }; // Alignment: 0 // Size: 0x1140 class CDOTA_Modifier_Ofrenda_Pledge : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Item_AghsFort_Bloodstone_Active : public CDOTA_Buff { public: int32_t mana_cost_percentage; // 0x1138 float restore_duration; // 0x113c float m_flDrainAmount; // 0x1140 }; // Alignment: 12 // Size: 0x1168 class CDOTA_Modifier_Item_AghsFort_Bloodstone : public CDOTA_Buff_Item { public: int32_t bonus_health; // 0x1138 int32_t bonus_mana; // 0x113c int32_t mana_regen_multiplier; // 0x1140 float regen_per_charge; // 0x1144 float amp_per_charge; // 0x1148 int32_t death_charges; // 0x114c int32_t kill_charges; // 0x1150 float hero_lifesteal; // 0x1154 float creep_lifesteal; // 0x1158 int32_t bonus_intellect; // 0x115c int32_t spell_amp; // 0x1160 int32_t spell_lifesteal_amp; // 0x1164 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Item_AghsFort_Bloodstone_GainableCharges : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Diabled_Invulnerable : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 0 // Size: 0x8f0 class CDOTA_BossAttackableTrigger : public CBaseTrigger { public: // no members available }; // Alignment: 3 // Size: 0x4f0 class CInfoPlayerStartDota : public CPointEntity { public: // MNetworkEnable bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x7]; // 0x499 public: CEntityIOOutput m_OnEnabled; // 0x4a0 CEntityIOOutput m_OnDisabled; // 0x4c8 }; // Alignment: 1 // Size: 0x760 class CDOTA_Pet_CarriedItem : public CBaseAnimatingActivity { public: CHandle< CDOTA_BaseNPC_Hero > m_hHeroHandle; // 0x758 }; // Alignment: 2 // Size: 0x920 class CDOTA_ShopTrigger : public CBaseTrigger { public: int32_t m_ShopType; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f4[0x4]; // 0x8f4 public: CEntityIOOutput m_OnTrigger; // 0x8f8 }; // Alignment: 15 // Size: 0x518 class CDOTA_NPCSpawner : public CPointEntity { public: CUtlSymbolLarge m_szNPCScriptName; // 0x498 CUtlSymbolLarge m_szNPCName; // 0x4a0 CUtlSymbolLarge m_szNPCFirstWaypoint; // 0x4a8 CountdownTimer m_SpawnTimer; // 0x4b0 CountdownTimer m_IntervalTimer; // 0x4c8 int32_t m_iTeam; // 0x4e0 int32_t m_iUpgradeMelee; // 0x4e4 int32_t m_iUpgradeRange; // 0x4e8 int32_t m_iMeleeCount; // 0x4ec int32_t m_iSiegeCount; // 0x4f0 int32_t m_iRangeCount; // 0x4f4 int32_t m_iWaves; // 0x4f8 bool m_bFirstWave; // 0x4fc bool m_bShouldSpawnStrongCreep; // 0x4fd private: [[maybe_unused]] uint8_t __pad04fe[0x2]; // 0x4fe public: CUtlVector< CHandle< CDOTA_BaseNPC > > m_Units; // 0x500 }; // Alignment: 22 // Size: 0x598 class CDOTA_NeutralSpawner : public CPointEntity { public: bool m_bGameStarted; // 0x498 bool m_bFirstSpawn; // 0x499 private: [[maybe_unused]] uint8_t __pad049a[0x6]; // 0x49a public: CountdownTimer m_SpawnTimer; // 0x4a0 int32_t m_iNextSpawnType; // 0x4b8 int32_t m_iPreviousSpawnType; // 0x4bc int32_t m_iTotalToSpawn; // 0x4c0 int32_t m_iForcedSpawnType; // 0x4c4 int32_t m_iNumBatchesToSpawn; // 0x4c8 bool m_bLimitedBatches; // 0x4cc private: [[maybe_unused]] uint8_t __pad04cd[0x3]; // 0x4cd public: PlayerID_t m_iStackingCreditPlayerID; // 0x4d0 float m_fInternalSpawnTimerTime; // 0x4d4 CountdownTimer m_InternalSpawnTimer; // 0x4d8 CountdownTimer m_FXTimer; // 0x4f0 CUtlVector< CHandle< CDOTA_BaseNPC > > m_PendingUnits; // 0x508 CUtlVector< CHandle< CDOTA_BaseNPC > > m_Units; // 0x520 bool m_bSeenClearedByTeam[2]; // 0x538 private: [[maybe_unused]] uint8_t __pad053a[0x6]; // 0x53a public: CUtlSymbolLarge m_szVolumeName; // 0x540 CUtlVector< CHandle< CBaseEntity > > m_hVolumes; // 0x548 CEntityIOOutput m_OnSpawnerExhausted; // 0x560 // MNetworkEnable int32_t m_Type; // 0x588 int32_t m_PullType; // 0x58c int32_t m_AggroType; // 0x590 }; // Alignment: 9 // Size: 0x4b8 class CDOTA_RoshanSpawner : public CPointEntity { public: bool m_bIsRoshanAlive; // 0x498 bool m_bSpawnRequested; // 0x499 private: [[maybe_unused]] uint8_t __pad049a[0x2]; // 0x49a public: CHandle< CBaseEntity > m_hRoshan; // 0x49c GameTime_t m_fRoshanKillTime; // 0x4a0 int32_t m_nSentRoshReclaim; // 0x4a4 int32_t m_nSentRoshRespawn; // 0x4a8 float m_fRoshanRespawnDuration; // 0x4ac // MNetworkEnable int32_t m_iKillCount; // 0x4b0 ParticleIndex_t m_nFXIndex; // 0x4b4 }; // Alignment: 18 // Size: 0x580 class CDOTA_ScriptedSpawner : public CPointEntity { public: CUtlSymbolLarge m_szNPCFirstWaypoint; // 0x4a8 int32_t m_nNPCType; // 0x4b0 bool m_bAllowRelaxation; // 0x4b4 bool m_bPlayPostVictoryAnims; // 0x4b5 bool m_bDisableAutoAttack; // 0x4b6 bool m_bAutomaticallyRespawn; // 0x4b7 bool m_bInvulnerable; // 0x4b8 bool m_bAllowHeroTargets; // 0x4b9 private: [[maybe_unused]] uint8_t __pad04ba[0x2]; // 0x4ba public: int32_t m_nActivityOverride; // 0x4bc float m_flDuration; // 0x4c0 bool m_bAnimationFireOnce; // 0x4c4 private: [[maybe_unused]] uint8_t __pad04c5[0x3]; // 0x4c5 public: CUtlVector< CDOTA_ScriptedSpawner::scripted_moveto_t > m_hMoveToTargets; // 0x4c8 CEntityIOOutput m_OnAllUnitsKilled; // 0x4e0 CEntityIOOutput m_OnUnitKilled; // 0x508 CEntityIOOutput m_OnHealthLow; // 0x530 CUtlVector< CHandle< CDOTA_BaseNPC > > m_Units; // 0x558 CHandle< CBaseEntity > m_hSpawnpoint; // 0x570 private: [[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574 public: CUtlSymbolLarge m_szCustomNPCName; // 0x578 }; // Alignment: 9 // Size: 0x4f0 class CPathTrack : public CPointEntity { public: CPathTrack* m_pnext; // 0x498 CPathTrack* m_pprevious; // 0x4a0 CPathTrack* m_paltpath; // 0x4a8 float m_flRadius; // 0x4b0 float m_length; // 0x4b4 CUtlSymbolLarge m_altName; // 0x4b8 int32_t m_nIterVal; // 0x4c0 TrackOrientationType_t m_eOrientationType; // 0x4c4 CEntityIOOutput m_OnPass; // 0x4c8 static int32_t &Get_s_nCurrIterVal(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPathTrack")->m_static_fields[0]->m_instance);}; static bool &Get_s_bIsIterating(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPathTrack")->m_static_fields[1]->m_instance);}; }; // Alignment: 5 // Size: 0x4b0 class CInfoDynamicShadowHint : public CPointEntity { public: bool m_bDisabled; // 0x498 private: [[maybe_unused]] uint8_t __pad0499[0x3]; // 0x499 public: float m_flRange; // 0x49c int32_t m_nImportance; // 0x4a0 int32_t m_nLightChoice; // 0x4a4 CHandle< CBaseEntity > m_hLight; // 0x4a8 static CUtlVector< CInfoDynamicShadowHint* > &Get_m_AllHints(){return *reinterpret_cast*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CInfoDynamicShadowHint")->m_static_fields[0]->m_instance);}; }; // Alignment: 2 // Size: 0x4c8 class CInfoDynamicShadowHintBox : public CInfoDynamicShadowHint { public: Vector m_vBoxMins; // 0x4b0 Vector m_vBoxMaxs; // 0x4bc }; // Alignment: 10 // Size: 0x790 class CEnvSky : public CBaseModelEntity { public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" CStrongHandle< InfoForResourceTypeIMaterial2 > m_hSkyMaterial; // 0x748 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" bool m_bStartDisabled; // 0x750 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" Color m_vTintColor; // 0x751 private: [[maybe_unused]] uint8_t __pad0755[0x3]; // 0x755 public: // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" float m_flBrightnessScale; // 0x758 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" int32_t m_nFogType; // 0x75c // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" float m_flFogMinStart; // 0x760 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" float m_flFogMinEnd; // 0x764 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" float m_flFogMaxStart; // 0x768 // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" float m_flFogMaxEnd; // 0x76c // MNetworkEnable // MNetworkChangeCallback "SkyStateChanged" bool m_bEnabled; // 0x770 }; // Alignment: 0 // Size: 0x4c0 class CTonemapController2Alias_env_tonemap_controller2 : public CTonemapController2 { public: // no members available }; // Alignment: 2 // Size: 0x900 class CTonemapTrigger : public CBaseTrigger { public: CUtlSymbolLarge m_tonemapControllerName; // 0x8f0 CEntityHandle m_hTonemapController; // 0x8f8 }; // Alignment: 1 // Size: 0x958 class CFogTrigger : public CBaseTrigger { public: fogparams_t m_fog; // 0x8f0 }; // Alignment: 1 // Size: 0x750 class CLightEntity : public CBaseModelEntity { public: // MNetworkEnable // MNetworkUserGroup "CLightComponent" // MNetworkAlias "CLightComponent" // MNetworkTypeAlias "CLightComponent" CLightComponent* m_CLightComponent; // 0x748 }; // Alignment: 0 // Size: 0x750 class CLightSpotEntity : public CLightEntity { public: // no members available }; // Alignment: 0 // Size: 0x750 class CLightOrthoEntity : public CLightEntity { public: // no members available }; // Alignment: 0 // Size: 0x750 class CLightDirectionalEntity : public CLightEntity { public: // no members available }; // Alignment: 0 // Size: 0x750 class CLightEnvironmentEntity : public CLightDirectionalEntity { public: // no members available }; // Alignment: 12 // Size: 0x930 class CPostProcessingVolume : public CBaseTrigger { public: // MNetworkEnable CStrongHandle< InfoForResourceTypeCPostProcessingResource > m_hPostSettings; // 0x900 // MNetworkEnable float m_flFadeDuration; // 0x908 // MNetworkEnable float m_flMinLogExposure; // 0x90c // MNetworkEnable float m_flMaxLogExposure; // 0x910 // MNetworkEnable float m_flMinExposure; // 0x914 // MNetworkEnable float m_flMaxExposure; // 0x918 // MNetworkEnable float m_flExposureCompensation; // 0x91c // MNetworkEnable float m_flExposureFadeSpeedUp; // 0x920 // MNetworkEnable float m_flExposureFadeSpeedDown; // 0x924 // MNetworkEnable float m_flTonemapEVSmoothingRange; // 0x928 // MNetworkEnable bool m_bMaster; // 0x92c // MNetworkEnable bool m_bExposureControl; // 0x92d }; // Alignment: 10 // Size: 0x7a8 class CBasePlayerWeapon : public CBaseAnimatingActivity { public: // MNetworkEnable // MNetworkChangeCallback "OnWeaponStateChanged" WeaponState_t m_iState; // 0x758 bool m_bRemoveable; // 0x75c private: [[maybe_unused]] uint8_t __pad075d[0x3]; // 0x75d public: // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" GameTick_t m_nNextPrimaryAttackTick; // 0x760 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" float m_flNextPrimaryAttackTickRatio; // 0x764 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" GameTick_t m_nNextSecondaryAttackTick; // 0x768 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" float m_flNextSecondaryAttackTickRatio; // 0x76c // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkPriority "32" int32_t m_iClip1; // 0x770 // MNetworkEnable // MNetworkSerializer "minusone" // MNetworkUserGroup "LocalWeaponExclusive" int32_t m_iClip2; // 0x774 // MNetworkEnable // MNetworkUserGroup "LocalWeaponExclusive" int32_t m_pReserveAmmo[2]; // 0x778 CEntityIOOutput m_OnPlayerUse; // 0x780 }; // Alignment: 5 // Size: 0xcd8 class CEnvParticleGlow : public CParticleSystem { public: // MNetworkEnable float m_flAlphaScale; // 0xcc0 // MNetworkEnable float m_flRadiusScale; // 0xcc4 // MNetworkEnable float m_flSelfIllumScale; // 0xcc8 // MNetworkEnable Color m_ColorTint; // 0xccc // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hTextureOverride; // 0xcd0 }; // Alignment: 8 // Size: 0x780 class CTextureBasedAnimatable : public CBaseModelEntity { public: // MNetworkEnable bool m_bLoop; // 0x748 private: [[maybe_unused]] uint8_t __pad0749[0x3]; // 0x749 public: // MNetworkEnable float m_flFPS; // 0x74c // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hPositionKeys; // 0x750 // MNetworkEnable CStrongHandle< InfoForResourceTypeCTextureBase > m_hRotationKeys; // 0x758 // MNetworkEnable Vector m_vAnimationBoundsMin; // 0x760 // MNetworkEnable Vector m_vAnimationBoundsMax; // 0x76c // MNetworkEnable float m_flStartTime; // 0x778 // MNetworkEnable float m_flStartFrame; // 0x77c }; // Alignment: 0 // Size: 0x748 class CWorld : public CBaseModelEntity { public: // no members available }; // Alignment: 11 // Size: 0x878 class CBaseAnimGraph : public CBaseModelEntity { public: // MNetworkEnable PhysicsRagdollPose_t* m_pRagdollPose; // 0x758 // MNetworkEnable // MNetworkChangeCallback "OnClientRagdollChanged" bool m_bClientRagdoll; // 0x760 private: [[maybe_unused]] uint8_t __pad0761[0x3]; // 0x761 public: // MNetworkEnable Vector m_vecForce; // 0x764 // MNetworkEnable int32_t m_nForceBone; // 0x770 // MNetworkEnable bool m_bShouldAnimateDuringGameplayPause; // 0x774 // MNetworkEnable bool m_bAnimGraphUpdateEnabled; // 0x775 // MNetworkEnable bool m_bInitiallyPopulateInterpHistory; // 0x776 private: [[maybe_unused]] uint8_t __pad0777[0x1]; // 0x777 public: float m_flMaxSlopeDistance; // 0x778 Vector m_vLastSlopeCheckPos; // 0x77c IChoreoServices* m_pChoreoServices; // 0x788 bool m_bAnimGraphDirty; // 0x790 }; // Alignment: 4 // Size: 0x798 class CBaseProp : public CBaseAnimatingActivity { public: bool m_bModelOverrodeBlockLOS; // 0x758 private: [[maybe_unused]] uint8_t __pad0759[0x3]; // 0x759 public: int32_t m_iShapeType; // 0x75c bool m_bConformToCollisionBounds; // 0x760 private: [[maybe_unused]] uint8_t __pad0761[0x3]; // 0x761 public: matrix3x4_t m_mPreferredCatchTransform; // 0x764 }; // Alignment: 34 // Size: 0x8d0 class CBreakableProp : public CBaseProp { public: CEntityIOOutput m_OnBreak; // 0x7a8 CEntityOutputTemplate< float32 > m_OnHealthChanged; // 0x7d0 CEntityIOOutput m_OnTakeDamage; // 0x7f8 float m_impactEnergyScale; // 0x820 int32_t m_iMinHealthDmg; // 0x824 QAngle m_preferredCarryAngles; // 0x828 float m_flPressureDelay; // 0x834 CHandle< CBaseEntity > m_hBreaker; // 0x838 PerformanceMode_t m_PerformanceMode; // 0x83c float m_flDmgModBullet; // 0x840 float m_flDmgModClub; // 0x844 float m_flDmgModExplosive; // 0x848 float m_flDmgModFire; // 0x84c CUtlSymbolLarge m_iszPhysicsDamageTableName; // 0x850 CUtlSymbolLarge m_iszBasePropData; // 0x858 int32_t m_iInteractions; // 0x860 GameTime_t m_flPreventDamageBeforeTime; // 0x864 bool m_bHasBreakPiecesOrCommands; // 0x868 private: [[maybe_unused]] uint8_t __pad0869[0x3]; // 0x869 public: float m_explodeDamage; // 0x86c float m_explodeRadius; // 0x870 private: [[maybe_unused]] uint8_t __pad0874[0x4]; // 0x874 public: float m_explosionDelay; // 0x878 private: [[maybe_unused]] uint8_t __pad087c[0x4]; // 0x87c public: CUtlSymbolLarge m_explosionBuildupSound; // 0x880 CUtlSymbolLarge m_explosionCustomEffect; // 0x888 CUtlSymbolLarge m_explosionCustomSound; // 0x890 CUtlSymbolLarge m_explosionModifier; // 0x898 CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x8a0 GameTime_t m_flLastPhysicsInfluenceTime; // 0x8a4 bool m_bOriginalBlockLOS; // 0x8a8 private: [[maybe_unused]] uint8_t __pad08a9[0x3]; // 0x8a9 public: float m_flDefaultFadeScale; // 0x8ac CHandle< CBaseEntity > m_hLastAttacker; // 0x8b0 CHandle< CBaseEntity > m_hFlareEnt; // 0x8b4 bool m_bUsePuntSound; // 0x8b8 private: [[maybe_unused]] uint8_t __pad08b9[0x7]; // 0x8b9 public: CUtlSymbolLarge m_iszPuntSound; // 0x8c0 // MNetworkEnable bool m_noGhostCollision; // 0x8c8 }; // Alignment: 28 // Size: 0x9e8 class CDynamicProp : public CBreakableProp { public: bool m_bRandomAnimator; // 0x8d0 private: [[maybe_unused]] uint8_t __pad08d1[0x3]; // 0x8d1 public: GameTime_t m_flNextRandAnim; // 0x8d4 float m_flMinRandAnimDuration; // 0x8d8 float m_flMaxRandAnimDuration; // 0x8dc private: [[maybe_unused]] uint8_t __pad08e0[0x8]; // 0x8e0 public: bool m_bCreateNavObstacle; // 0x8e8 // MNetworkEnable bool m_bUseHitboxesForRenderBox; // 0x8e9 // MNetworkEnable bool m_bUseAnimGraph; // 0x8ea private: [[maybe_unused]] uint8_t __pad08eb[0x5]; // 0x8eb public: CEntityIOOutput m_pOutputAnimBegun; // 0x8f0 CEntityIOOutput m_pOutputAnimOver; // 0x918 CEntityIOOutput m_pOutputAnimLoopCycleOver; // 0x940 CEntityIOOutput m_OnAnimReachedStart; // 0x968 CEntityIOOutput m_OnAnimReachedEnd; // 0x990 CUtlSymbolLarge m_iszDefaultAnim; // 0x9b8 AnimLoopMode_t m_nDefaultAnimLoopMode; // 0x9c0 AnimLoopMode_t m_nAnimLoopMode; // 0x9c4 bool m_bAnimateOnServer; // 0x9c8 bool m_bRandomizeCycle; // 0x9c9 bool m_bStartDisabled; // 0x9ca bool m_bScriptedMovement; // 0x9cb bool m_bFiredStartEndOutput; // 0x9cc bool m_bForceNpcExclude; // 0x9cd bool m_bCreateNonSolid; // 0x9ce bool m_bIsOverrideProp; // 0x9cf int32_t m_iInitialGlowState; // 0x9d0 int32_t m_nGlowRange; // 0x9d4 int32_t m_nGlowRangeMin; // 0x9d8 Color m_glowColor; // 0x9dc int32_t m_nGlowTeam; // 0x9e0 }; // Alignment: 0 // Size: 0x9e8 class CDynamicPropAlias_dynamic_prop : public CDynamicProp { public: // no members available }; // Alignment: 0 // Size: 0x9e8 class CDynamicPropAlias_prop_dynamic_override : public CDynamicProp { public: // no members available }; // Alignment: 0 // Size: 0x9e8 class CDynamicPropAlias_cable_dynamic : public CDynamicProp { public: // no members available }; // Alignment: 10 // Size: 0xb18 class CColorCorrectionVolume : public CBaseTrigger { public: // MNetworkEnable bool m_bEnabled; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f1[0x3]; // 0x8f1 public: // MNetworkEnable float m_MaxWeight; // 0x8f4 // MNetworkEnable float m_FadeDuration; // 0x8f8 bool m_bStartDisabled; // 0x8fc private: [[maybe_unused]] uint8_t __pad08fd[0x3]; // 0x8fd public: // MNetworkEnable float m_Weight; // 0x900 // MNetworkEnable char m_lookupFilename[512]; // 0x904 float m_LastEnterWeight; // 0xb04 GameTime_t m_LastEnterTime; // 0xb08 float m_LastExitWeight; // 0xb0c GameTime_t m_LastExitTime; // 0xb10 }; // Alignment: 30 // Size: 0x850 class CPointCommentaryNode : public CBaseAnimatingActivity { public: CUtlSymbolLarge m_iszPreCommands; // 0x758 CUtlSymbolLarge m_iszPostCommands; // 0x760 // MNetworkEnable CUtlSymbolLarge m_iszCommentaryFile; // 0x768 CUtlSymbolLarge m_iszViewTarget; // 0x770 CHandle< CBaseEntity > m_hViewTarget; // 0x778 CHandle< CBaseEntity > m_hViewTargetAngles; // 0x77c CUtlSymbolLarge m_iszViewPosition; // 0x780 // MNetworkEnable CHandle< CBaseEntity > m_hViewPosition; // 0x788 CHandle< CBaseEntity > m_hViewPositionMover; // 0x78c bool m_bPreventMovement; // 0x790 bool m_bUnderCrosshair; // 0x791 bool m_bUnstoppable; // 0x792 private: [[maybe_unused]] uint8_t __pad0793[0x1]; // 0x793 public: GameTime_t m_flFinishedTime; // 0x794 Vector m_vecFinishOrigin; // 0x798 QAngle m_vecOriginalAngles; // 0x7a4 QAngle m_vecFinishAngles; // 0x7b0 bool m_bPreventChangesWhileMoving; // 0x7bc bool m_bDisabled; // 0x7bd private: [[maybe_unused]] uint8_t __pad07be[0x2]; // 0x7be public: Vector m_vecTeleportOrigin; // 0x7c0 GameTime_t m_flAbortedPlaybackAt; // 0x7cc CEntityIOOutput m_pOnCommentaryStarted; // 0x7d0 CEntityIOOutput m_pOnCommentaryStopped; // 0x7f8 // MNetworkEnable bool m_bActive; // 0x820 private: [[maybe_unused]] uint8_t __pad0821[0x3]; // 0x821 public: // MNetworkEnable GameTime_t m_flStartTime; // 0x824 // MNetworkEnable float m_flStartTimeInCommentary; // 0x828 private: [[maybe_unused]] uint8_t __pad082c[0x4]; // 0x82c public: // MNetworkEnable CUtlSymbolLarge m_iszTitle; // 0x830 // MNetworkEnable CUtlSymbolLarge m_iszSpeakers; // 0x838 // MNetworkEnable int32_t m_iNodeNumber; // 0x840 // MNetworkEnable int32_t m_iNodeNumberMax; // 0x844 // MNetworkEnable bool m_bListenedTo; // 0x848 }; // Alignment: 0 // Size: 0x7b8 class CCommentaryViewPosition : public CSprite { public: // no members available }; // Alignment: 19 // Size: 0x890 class CEnvBeam : public CBeam { public: int32_t m_active; // 0x7e8 private: [[maybe_unused]] uint8_t __pad07ec[0x4]; // 0x7ec public: CStrongHandle< InfoForResourceTypeIMaterial2 > m_spriteTexture; // 0x7f0 CUtlSymbolLarge m_iszStartEntity; // 0x7f8 CUtlSymbolLarge m_iszEndEntity; // 0x800 float m_life; // 0x808 float m_boltWidth; // 0x80c float m_noiseAmplitude; // 0x810 int32_t m_speed; // 0x814 float m_restrike; // 0x818 private: [[maybe_unused]] uint8_t __pad081c[0x4]; // 0x81c public: CUtlSymbolLarge m_iszSpriteName; // 0x820 int32_t m_frameStart; // 0x828 Vector m_vEndPointWorld; // 0x82c Vector m_vEndPointRelative; // 0x838 float m_radius; // 0x844 Touch_t m_TouchType; // 0x848 private: [[maybe_unused]] uint8_t __pad084c[0x4]; // 0x84c public: CUtlSymbolLarge m_iFilterName; // 0x850 CHandle< CBaseEntity > m_hFilter; // 0x858 private: [[maybe_unused]] uint8_t __pad085c[0x4]; // 0x85c public: CUtlSymbolLarge m_iszDecal; // 0x860 CEntityIOOutput m_OnTouchedByEntity; // 0x868 }; // Alignment: 0 // Size: 0x808 class CPushable : public CBreakable { public: // no members available }; // Alignment: 0 // Size: 0x878 class CFuncMoveLinearAlias_momentary_door : public CFuncMoveLinear { public: // no members available }; // Alignment: 0 // Size: 0x878 class CFuncWaterAnalog : public CFuncMoveLinear { public: // no members available }; // Alignment: 3 // Size: 0x7f8 class CGunTarget : public CBaseToggle { public: bool m_on; // 0x7c8 private: [[maybe_unused]] uint8_t __pad07c9[0x3]; // 0x7c9 public: CHandle< CBaseEntity > m_hTargetEnt; // 0x7cc CEntityIOOutput m_OnDeath; // 0x7d0 }; // Alignment: 3 // Size: 0x908 class CTriggerGameEvent : public CBaseTrigger { public: // MNetworkEnable CUtlString m_strStartTouchEventName; // 0x8f0 // MNetworkEnable CUtlString m_strEndTouchEventName; // 0x8f8 // MNetworkEnable CUtlString m_strTriggerID; // 0x900 }; // Alignment: 0 // Size: 0x788 class CSimpleMarkupVolumeTagged : public CMarkupVolumeTagged { public: // no members available }; // Alignment: 0 // Size: 0x788 class CMarkupVolumeTagged_Nav : public CMarkupVolumeTagged { public: // no members available }; // Alignment: 1 // Size: 0x7a8 class CMarkupVolumeTagged_NavGame : public CMarkupVolumeWithRef { public: bool m_bFloodFillAttribute; // 0x7a0 }; // Alignment: 4 // Size: 0x7a0 class CFuncElectrifiedVolume : public CFuncBrush { public: // MNetworkEnable CUtlSymbolLarge m_EffectName; // 0x768 CUtlSymbolLarge m_EffectInterpenetrateName; // 0x770 CUtlSymbolLarge m_EffectZapName; // 0x778 CUtlSymbolLarge m_iszEffectSource; // 0x780 }; // Alignment: 0 // Size: 0x4d0 class CPathCornerCrash : public CPathCorner { public: // no members available }; // Alignment: 1 // Size: 0x760 class CConstraintAnchor : public CBaseAnimatingActivity { public: float m_massScale; // 0x758 }; // Alignment: 1 // Size: 0x9f0 class COrnamentProp : public CDynamicProp { public: CUtlSymbolLarge m_initialOwner; // 0x9e8 }; // Alignment: 0 // Size: 0x7a0 class CRopeKeyframeAlias_move_rope : public CRopeKeyframe { public: // no members available }; // Alignment: 0 // Size: 0x9f8 class CSceneEntityAlias_logic_choreographed_scene : public CSceneEntity { public: // no members available }; // Alignment: 5 // Size: 0xa10 class CInstancedSceneEntity : public CSceneEntity { public: CHandle< CBaseEntity > m_hOwner; // 0x9f8 bool m_bHadOwner; // 0x9fc private: [[maybe_unused]] uint8_t __pad09fd[0x3]; // 0x9fd public: float m_flPostSpeakDelay; // 0xa00 float m_flPreDelay; // 0xa04 bool m_bIsBackground; // 0xa08 }; // Alignment: 3 // Size: 0x918 class CTriggerSoundscape : public CBaseTrigger { public: CHandle< CEnvSoundscapeTriggerable > m_hSoundscape; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f4[0x4]; // 0x8f4 public: CUtlSymbolLarge m_SoundscapeName; // 0x8f8 CUtlVector< CHandle< CBasePlayerPawn > > m_spectators; // 0x900 }; // Alignment: 0 // Size: 0x7b8 class CSpriteAlias_env_glow : public CSprite { public: // no members available }; // Alignment: 5 // Size: 0x7f0 class CBasePlatTrain : public CBaseToggle { public: CUtlSymbolLarge m_NoiseMoving; // 0x7c8 CUtlSymbolLarge m_NoiseArrived; // 0x7d0 private: [[maybe_unused]] uint8_t __pad07d8[0x8]; // 0x7d8 public: float m_volume; // 0x7e0 float m_flTWidth; // 0x7e4 float m_flTLength; // 0x7e8 }; // Alignment: 1 // Size: 0x7f8 class CFuncPlat : public CBasePlatTrain { public: CUtlSymbolLarge m_sNoise; // 0x7f0 }; // Alignment: 2 // Size: 0x810 class CFuncPlatRot : public CFuncPlat { public: QAngle m_end; // 0x7f8 QAngle m_start; // 0x804 }; // Alignment: 6 // Size: 0x810 class CFuncTrain : public CBasePlatTrain { public: CHandle< CBaseEntity > m_hCurrentTarget; // 0x7f0 bool m_activated; // 0x7f4 private: [[maybe_unused]] uint8_t __pad07f5[0x3]; // 0x7f5 public: CHandle< CBaseEntity > m_hEnemy; // 0x7f8 float m_flBlockDamage; // 0x7fc GameTime_t m_flNextBlockTime; // 0x800 private: [[maybe_unused]] uint8_t __pad0804[0x4]; // 0x804 public: CUtlSymbolLarge m_iszLastTarget; // 0x808 }; // Alignment: 9 // Size: 0x850 class CFuncTrackChange : public CFuncPlatRot { public: CPathTrack* m_trackTop; // 0x810 CPathTrack* m_trackBottom; // 0x818 CFuncTrackTrain* m_train; // 0x820 CUtlSymbolLarge m_trackTopName; // 0x828 CUtlSymbolLarge m_trackBottomName; // 0x830 CUtlSymbolLarge m_trainName; // 0x838 TRAIN_CODE m_code; // 0x840 int32_t m_targetState; // 0x844 int32_t m_use; // 0x848 }; // Alignment: 0 // Size: 0x850 class CFuncTrackAuto : public CFuncTrackChange { public: // no members available }; // Alignment: 1 // Size: 0x918 class CTriggerRemove : public CBaseTrigger { public: CEntityIOOutput m_OnRemove; // 0x8f0 }; // Alignment: 1 // Size: 0x9a0 class CScriptTriggerHurt : public CTriggerHurt { public: Vector m_vExtent; // 0x990 }; // Alignment: 1 // Size: 0x928 class CScriptTriggerMultiple : public CTriggerMultiple { public: Vector m_vExtent; // 0x918 }; // Alignment: 0 // Size: 0x918 class CTriggerOnce : public CTriggerMultiple { public: // no members available }; // Alignment: 1 // Size: 0x928 class CScriptTriggerOnce : public CTriggerOnce { public: Vector m_vExtent; // 0x918 }; // Alignment: 15 // Size: 0x9b8 class CTriggerLook : public CTriggerOnce { public: CHandle< CBaseEntity > m_hLookTarget; // 0x918 float m_flFieldOfView; // 0x91c float m_flLookTime; // 0x920 float m_flLookTimeTotal; // 0x924 GameTime_t m_flLookTimeLast; // 0x928 float m_flTimeoutDuration; // 0x92c bool m_bTimeoutFired; // 0x930 bool m_bIsLooking; // 0x931 bool m_b2DFOV; // 0x932 bool m_bUseVelocity; // 0x933 CHandle< CBaseEntity > m_hActivator; // 0x934 // MNetworkEnable bool m_bTestOcclusion; // 0x938 private: [[maybe_unused]] uint8_t __pad0939[0x7]; // 0x939 public: CEntityIOOutput m_OnTimeout; // 0x940 CEntityIOOutput m_OnStartLook; // 0x968 CEntityIOOutput m_OnEndLook; // 0x990 }; // Alignment: 5 // Size: 0x918 class CTriggerPush : public CBaseTrigger { public: QAngle m_angPushEntitySpace; // 0x8f0 Vector m_vecPushDirEntitySpace; // 0x8fc bool m_bTriggerOnStartTouch; // 0x908 private: [[maybe_unused]] uint8_t __pad0909[0x3]; // 0x909 public: float m_flAlternateTicksFix; // 0x90c float m_flPushSpeed; // 0x910 }; // Alignment: 1 // Size: 0x928 class CScriptTriggerPush : public CTriggerPush { public: Vector m_vExtent; // 0x918 }; // Alignment: 1 // Size: 0x8f8 class CTriggerToggleSave : public CBaseTrigger { public: bool m_bDisabled; // 0x8f0 }; // Alignment: 3 // Size: 0x900 class CTriggerSave : public CBaseTrigger { public: bool m_bForceNewLevelUnit; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f1[0x3]; // 0x8f1 public: float m_fDangerousTimer; // 0x8f4 int32_t m_minHitPoints; // 0x8f8 }; // Alignment: 0 // Size: 0x8f0 class CTriggerGravity : public CBaseTrigger { public: // no members available }; // Alignment: 5 // Size: 0x930 class CTriggerProximity : public CBaseTrigger { public: CHandle< CBaseEntity > m_hMeasureTarget; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f4[0x4]; // 0x8f4 public: CUtlSymbolLarge m_iszMeasureTarget; // 0x8f8 float m_fRadius; // 0x900 int32_t m_nTouchers; // 0x904 CEntityOutputTemplate< float32 > m_NearestEntityDistance; // 0x908 }; // Alignment: 4 // Size: 0x950 class CTriggerImpact : public CTriggerMultiple { public: float m_flMagnitude; // 0x918 float m_flNoise; // 0x91c float m_flViewkick; // 0x920 private: [[maybe_unused]] uint8_t __pad0924[0x4]; // 0x924 public: CEntityOutputTemplate< Vector > m_pOutputForce; // 0x928 }; // Alignment: 0 // Size: 0x8f0 class CServerRagdollTrigger : public CBaseTrigger { public: // no members available }; // Alignment: 2 // Size: 0x920 class CTriggerActiveWeaponDetect : public CBaseTrigger { public: CEntityIOOutput m_OnTouchedActiveWeapon; // 0x8f0 CUtlSymbolLarge m_iszWeaponClassName; // 0x918 }; // Alignment: 13 // Size: 0x950 class CTriggerPhysics : public CBaseTrigger { public: float m_gravityScale; // 0x900 float m_linearLimit; // 0x904 float m_linearDamping; // 0x908 float m_angularLimit; // 0x90c float m_angularDamping; // 0x910 float m_linearForce; // 0x914 float m_flFrequency; // 0x918 float m_flDampingRatio; // 0x91c Vector m_vecLinearForcePointAt; // 0x920 bool m_bCollapseToForcePoint; // 0x92c private: [[maybe_unused]] uint8_t __pad092d[0x3]; // 0x92d public: Vector m_vecLinearForcePointAtWorld; // 0x930 Vector m_vecLinearForceDirection; // 0x93c bool m_bConvertToDebrisWhenPossible; // 0x948 }; // Alignment: 2 // Size: 0x920 class CTriggerDetectBulletFire : public CBaseTrigger { public: bool m_bPlayerFireOnly; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08f1[0x7]; // 0x8f1 public: CEntityIOOutput m_OnDetectedBulletFire; // 0x8f8 }; // Alignment: 1 // Size: 0x950 class CTriggerDetectExplosion : public CBaseTrigger { public: CEntityIOOutput m_OnDetectedExplosion; // 0x928 }; // Alignment: 1 // Size: 0x768 class CScriptNavBlocker : public CFuncNavBlocker { public: Vector m_vExtent; // 0x758 }; // Alignment: 7 // Size: 0x7e8 class CBaseFlex : public CBaseAnimatingOverlay { public: // MNetworkEnable // MNetworkBitCount "12" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags CNetworkUtlVectorBase< float32 > m_flexWeight; // 0x758 // MNetworkEnable // MNetworkEncoder Vector m_vLookTargetPosition; // 0x770 // MNetworkEnable bool m_blinktoggle; // 0x77c private: [[maybe_unused]] uint8_t __pad077d[0x53]; // 0x77d public: GameTime_t m_flAllowResponsesEndTime; // 0x7d0 GameTime_t m_flLastFlexAnimationTime; // 0x7d4 uint32_t m_nNextSceneEventId; // 0x7d8 bool m_bUpdateLayerPriorities; // 0x7dc }; // Alignment: 8 // Size: 0x830 class CItem : public CBaseAnimatingActivity { public: CEntityIOOutput m_OnPlayerTouch; // 0x760 bool m_bActivateWhenAtRest; // 0x788 private: [[maybe_unused]] uint8_t __pad0789[0x7]; // 0x789 public: CEntityIOOutput m_OnCacheInteraction; // 0x790 CEntityIOOutput m_OnPlayerPickup; // 0x7b8 CEntityIOOutput m_OnGlovePulled; // 0x7e0 Vector m_vOriginalSpawnOrigin; // 0x808 QAngle m_vOriginalSpawnAngles; // 0x814 bool m_bPhysStartAsleep; // 0x820 }; // Alignment: 28 // Size: 0xa20 class CRagdollProp : public CBaseAnimGraph { public: ragdoll_t m_ragdoll; // 0x880 bool m_bStartDisabled; // 0x8b8 private: [[maybe_unused]] uint8_t __pad08b9[0x7]; // 0x8b9 public: // MNetworkEnable // MNetworkEncoder CNetworkUtlVectorBase< Vector > m_ragPos; // 0x8c0 // MNetworkEnable // MNetworkEncoder // MNetworkBitCount "13" CNetworkUtlVectorBase< QAngle > m_ragAngles; // 0x8d8 // MNetworkEnable CHandle< CBaseEntity > m_hRagdollSource; // 0x8f0 uint32_t m_lastUpdateTickCount; // 0x8f4 bool m_allAsleep; // 0x8f8 bool m_bFirstCollisionAfterLaunch; // 0x8f9 private: [[maybe_unused]] uint8_t __pad08fa[0x2]; // 0x8fa public: CHandle< CBaseEntity > m_hDamageEntity; // 0x8fc CHandle< CBaseEntity > m_hKiller; // 0x900 CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x904 GameTime_t m_flLastPhysicsInfluenceTime; // 0x908 GameTime_t m_flFadeOutStartTime; // 0x90c float m_flFadeTime; // 0x910 // MNetworkDisable Vector m_vecLastOrigin; // 0x914 GameTime_t m_flAwakeTime; // 0x920 GameTime_t m_flLastOriginChangeTime; // 0x924 int32_t m_nBloodColor; // 0x928 private: [[maybe_unused]] uint8_t __pad092c[0x4]; // 0x92c public: CUtlSymbolLarge m_strOriginClassName; // 0x930 CUtlSymbolLarge m_strSourceClassName; // 0x938 bool m_bHasBeenPhysgunned; // 0x940 bool m_bShouldTeleportPhysics; // 0x941 private: [[maybe_unused]] uint8_t __pad0942[0x2]; // 0x942 public: // MNetworkEnable // MNetworkBitCount "8" // MNetworkMinValue "0" // MNetworkMaxValue "1" // MNetworkEncodeFlags float m_flBlendWeight; // 0x944 float m_flDefaultFadeScale; // 0x948 private: [[maybe_unused]] uint8_t __pad094c[0x4]; // 0x94c public: CUtlVector< Vector > m_ragdollMins; // 0x950 CUtlVector< Vector > m_ragdollMaxs; // 0x968 bool m_bShouldDeleteActivationRecord; // 0x980 private: [[maybe_unused]] uint8_t __pad0981[0x5f]; // 0x981 public: bool m_bValidatePoweredRagdollPose; // 0x9e0 }; // Alignment: 12 // Size: 0x7e8 class CPhysMagnet : public CBaseAnimatingActivity { public: CEntityIOOutput m_OnMagnetAttach; // 0x758 CEntityIOOutput m_OnMagnetDetach; // 0x780 float m_massScale; // 0x7a8 float m_forceLimit; // 0x7ac float m_torqueLimit; // 0x7b0 private: [[maybe_unused]] uint8_t __pad07b4[0x4]; // 0x7b4 public: CUtlVector< magnetted_objects_t > m_MagnettedEntities; // 0x7b8 bool m_bActive; // 0x7d0 bool m_bHasHitSomething; // 0x7d1 private: [[maybe_unused]] uint8_t __pad07d2[0x2]; // 0x7d2 public: float m_flTotalMass; // 0x7d4 float m_flRadius; // 0x7d8 GameTime_t m_flNextSuckTime; // 0x7dc int32_t m_iMaxObjectsAttached; // 0x7e0 }; // Alignment: 33 // Size: 0xa38 class CPhysicsProp : public CBreakableProp { public: CEntityIOOutput m_MotionEnabled; // 0x8d8 CEntityIOOutput m_OnAwakened; // 0x900 CEntityIOOutput m_OnAwake; // 0x928 CEntityIOOutput m_OnAsleep; // 0x950 CEntityIOOutput m_OnPlayerUse; // 0x978 CEntityIOOutput m_OnPlayerPickup; // 0x9a0 CEntityIOOutput m_OnOutOfWorld; // 0x9c8 float m_massScale; // 0x9f0 float m_inertiaScale; // 0x9f4 int32_t m_damageType; // 0x9f8 int32_t m_damageToEnableMotion; // 0x9fc float m_flForceToEnableMotion; // 0xa00 bool m_bThrownByPlayer; // 0xa04 bool m_bDroppedByPlayer; // 0xa05 bool m_bTouchedByPlayer; // 0xa06 bool m_bFirstCollisionAfterLaunch; // 0xa07 int32_t m_iExploitableByPlayer; // 0xa08 bool m_bHasBeenAwakened; // 0xa0c bool m_bIsOverrideProp; // 0xa0d private: [[maybe_unused]] uint8_t __pad0a0e[0x2]; // 0xa0e public: GameTime_t m_fNextCheckDisableMotionContactsTime; // 0xa10 int32_t m_iInitialGlowState; // 0xa14 int32_t m_nGlowRange; // 0xa18 int32_t m_nGlowRangeMin; // 0xa1c Color m_glowColor; // 0xa20 bool m_bForceNavIgnore; // 0xa24 bool m_bNoNavmeshBlocker; // 0xa25 bool m_bForceNpcExclude; // 0xa26 bool m_bShouldAutoConvertBackFromDebris; // 0xa27 bool m_bMuteImpactEffects; // 0xa28 private: [[maybe_unused]] uint8_t __pad0a29[0x7]; // 0xa29 public: bool m_bAcceptDamageFromHeldObjects; // 0xa30 bool m_bEnableUseOutput; // 0xa31 // MNetworkEnable bool m_bAwake; // 0xa32 private: [[maybe_unused]] uint8_t __pad0a33[0x1]; // 0xa33 public: int32_t m_nCollisionGroupOverride; // 0xa34 }; // Alignment: 0 // Size: 0xa38 class CPhysicsPropOverride : public CPhysicsProp { public: // no members available }; // Alignment: 5 // Size: 0xa70 class CPhysicsPropRespawnable : public CPhysicsProp { public: Vector m_vOriginalSpawnOrigin; // 0xa38 QAngle m_vOriginalSpawnAngles; // 0xa44 Vector m_vOriginalMins; // 0xa50 Vector m_vOriginalMaxs; // 0xa5c float m_flRespawnDuration; // 0xa68 }; // Alignment: 3 // Size: 0x928 class CEconEntity : public CBaseFlex { public: // MNetworkEnable CAttributeContainer m_AttributeManager; // 0x7f8 CHandle< CBaseEntity > m_hOldProvidee; // 0x920 int32_t m_iOldOwnerClass; // 0x924 }; // Alignment: 0 // Size: 0x930 class CEconWearable : public CEconEntity { public: // no members available }; // Alignment: 0 // Size: 0x930 class CTFWearableItem : public CEconWearable { public: // no members available }; // Alignment: 0 // Size: 0x20 class IBody : public INextBotComponent { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Fountain_Glyph : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1140 class CDOTA_Modifier_Radar_Thinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 bool m_bEverFound; // 0x113c bool m_bBonus; // 0x113d }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Courier_AutoDeliver : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Turbo_Courier_Haste : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Turbo_Courier_Invulnerable : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Jungle_Varmint : public CDOTA_Buff { public: // no members available }; // Alignment: 11 // Size: 0x1178 class CDOTA_Modifier_JungleVarmint_Dive : public CDOTA_Buff { public: float m_flTotalTime; // 0x1138 float m_flInitialVelocity; // 0x113c Vector m_vStartPosition; // 0x1140 Vector m_vTargetHorizontalDirection; // 0x114c float m_flCurrentTimeHoriz; // 0x1158 float m_flCurrentTimeVert; // 0x115c bool m_bInterrupted; // 0x1160 private: [[maybe_unused]] uint8_t __pad1161[0x3]; // 0x1161 public: int32_t distance; // 0x1164 float speed; // 0x1168 float acceleration; // 0x116c int32_t radius; // 0x1170 }; // Alignment: 5 // Size: 0x1148 class CDOTA_Modifier_SkeletonKing_Reincarnation_Scepter_Active : public CDOTA_Buff { public: int32_t scepter_move_speed_pct; // 0x1138 int32_t scepter_attack_speed; // 0x113c CHandle< CBaseEntity > m_hTarget; // 0x1140 bool m_bPassive; // 0x1144 bool m_bKillAtEnd; // 0x1145 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Item_Helm_Of_The_Undying_Active : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 bool m_bPassive; // 0x113c }; // Alignment: 8 // Size: 0x1168 class CDOTA_Modifier_Legion_Commander_Duel : public CDOTA_Buff { public: int32_t reward_damage; // 0x1138 int32_t scepter_damage_reduction_pct; // 0x113c bool m_bAttacked; // 0x1140 bool m_bHadAVictor; // 0x1141 private: [[maybe_unused]] uint8_t __pad1142[0x2]; // 0x1142 public: GameTime_t m_flTimeDuelStart; // 0x1144 CHandle< CBaseEntity > m_hPartner; // 0x1148 float m_flNextTime; // 0x114c CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x1150 }; // Alignment: 2 // Size: 0x778 class CDOTA_Item_Tombstone_Drop : public CDOTA_Item_Physical { public: int32_t m_iTempViewer; // 0x770 int32_t m_iTeam; // 0x774 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_JungleVarmint_Creator : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hVarmint; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Outpost_Summoning : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Watch_Tower_Capturing : public CDOTA_Buff { public: // no members available }; // Alignment: 12 // Size: 0x1180 class CDOTA_Modifier_Watch_Tower : public CDOTA_Buff { public: int32_t m_nTeamNumber; // 0x1138 int32_t m_iCapturingTeam; // 0x113c float m_flCaptureProgress; // 0x1140 float m_flBonusTime; // 0x1144 bool m_bInitialSetupDone; // 0x1148 private: [[maybe_unused]] uint8_t __pad1149[0x3]; // 0x1149 public: int32_t m_iOriginalTeam; // 0x114c CHandle< CBaseEntity > m_hPreviousHero; // 0x1150 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< PlayerID_t > m_vecLastCreditedPlayerIDs; // 0x1158 float m_flAccumulatedCaptureTime; // 0x1170 int32_t m_iBonusCount; // 0x1174 ParticleIndex_t m_nFxOutpostAmbient; // 0x1178 ParticleIndex_t m_nFxOutpostInitialAmbient; // 0x117c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Watch_Tower_Invulnerable : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Watch_Tower_Invulnerable_Temporary : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Watch_Tower_Marker : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_Vampire_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Mutation_Vampire : public CDOTA_Buff { public: int32_t m_iLifeStealPct; // 0x1138 int32_t m_iHealthDrain; // 0x113c }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Mutation_Spellcast : public CDOTA_Buff { public: CUtlVector< CDOTABaseAbility* > m_vecAbilities; // 0x1138 float m_fNextCastTime; // 0x1150 float m_fCastInterval; // 0x1154 float m_fWarningTime; // 0x1158 int32_t m_iNextAbility; // 0x115c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_DeathExplosion_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_DeathExplosion_TeamAura : public CDOTA_Modifier_Mutation_DeathExplosion_Aura { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_DeathExplosion : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Mutation_DeathExplosionDelayed : public CDOTA_Buff { public: int32_t m_iDamageBase; // 0x1138 int32_t m_iDamagePerLevel; // 0x113c int32_t m_iRadius; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_NoHealthBars_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_StationaryDamageReduction_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mutation_StationaryDamageReduction : public CDOTA_Buff { public: int32_t m_iReductionPct; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_CreateTombstone_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_CreateTombstone_Team_Aura : public CDOTA_Modifier_Mutation_CreateTombstone_Aura { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_CreateTombstone : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_KillstreakPower_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Mutation_KillstreakPower : public CDOTA_Buff { public: int32_t m_iDamageDonePct; // 0x1138 int32_t m_iDamageTakenPct; // 0x113c int32_t m_iModelScale; // 0x1140 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_Treecutter_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mutation_Treecutter : public CDOTA_Buff { public: int32_t m_iRadius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mutation_FreeRapiers_Team : public CDOTA_Buff { public: int32_t m_nLastInterval; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_Cooldown_Reduction_Team_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Mutation_Cooldown_Reduction : public CDOTA_Buff { public: int32_t m_iCooldownReduction; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_CritChance_Team_Aura : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Mutation_Crit_Chance : public CDOTA_Buff { public: int32_t m_iChance; // 0x1138 int32_t m_iDamageMultiplier; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_PocketRoshan_Team : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Mutation_DropItemOnDeath_Team : public CDOTA_Buff { public: // no members available }; // Alignment: 4 // Size: 0x11b8 class CDOTA_Modifier_ContextualTips : public CDOTA_Buff { public: bool m_bAllEnemiesBots; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: GameTime_t m_flGloblLastTipSendTime; // 0x113c GameTime_t m_flLastEnemyHeroDamageTime; // 0x1140 GameTime_t m_flLastEnemyHeroVisibleTime; // 0x1144 static float &Get_k_flParentDamageTrackingWindow(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Modifier_ContextualTips")->m_static_fields[0]->m_instance);}; static float &Get_k_flGlobalTipCooldown(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Modifier_ContextualTips")->m_static_fields[1]->m_instance);}; }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_731_Teaser_Stun : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_731_Teaser_Thinker : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Neutral_Sleep_AI : public CDOTA_Buff { public: ParticleIndex_t m_iFXIndex; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Neutral_Creep_Lost : public CDOTA_Buff { public: bool m_bActive; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: GameTime_t m_flCreationTime; // 0x113c ParticleIndex_t m_iFXIndex; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KoboldTaskmaster_SpeedAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KoboldTaskmaster_SpeedAura_Bonus : public CDOTA_Buff { public: int32_t bonus_movement_speed; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_CentaurKhan_EnduranceAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_CentaurKhan_EnduranceAura_Bonus : public CDOTA_Buff { public: int32_t bonus_attack_speed; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spawnlord_Master_Stomp : public CDOTA_Buff { public: int32_t armor_reduction_pct; // 0x1138 float m_flArmorReduction; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spawnlord_Master_Freeze : public CDOTA_Buff { public: bool m_bFreezeAttack; // 0x1138 private: [[maybe_unused]] uint8_t __pad1139[0x3]; // 0x1139 public: ParticleIndex_t m_nFXIndex; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spawnlord_Master_Freeze_Root : public CDOTA_Buff { public: int32_t max_ticks; // 0x1138 float damage; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_GnollAssassin_EnvenomedWeapon : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 float non_hero_duration; // 0x113c float hero_duration; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_GnollAssassin_EnvenomedWeapon_Poison : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 int32_t regen_reduction; // 0x113c }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Ghost_FrostAttack : public CDOTA_Buff { public: float duration; // 0x1138 int32_t movespeed_slow; // 0x113c int32_t attackspeed_slow; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Ghost_FrostAttack_Slow : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_PolarFurbolgUrsaWarrior_ThunderClap : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_WarpineRaider_SeedShot : public CDOTA_Buff { public: CHandle< CBaseEntity > m_hTarget; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_WarpineRaider_SeedShot_Slow : public CDOTA_Buff { public: int32_t slow; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Neutral_SpellImmunity : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Neutral_SpellImmunity_Visible : public CDOTA_Modifier_MagicImmune { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_OgreMagi_FrostArmor : public CDOTA_Buff { public: int32_t armor_bonus; // 0x1138 float slow_duration; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_OgreMagi_FrostArmor_Slow : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DarkTrollWarlord_Ensnare : public CDOTA_Modifier_Rooted { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_GiantWolf_CriticalStrike : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 int32_t crit_chance; // 0x113c }; // Alignment: 5 // Size: 0x1150 class CDOTA_Modifier_MudGolem_RockDestroy : public CDOTA_Buff { public: int32_t radius; // 0x1138 float duration; // 0x113c int32_t shard_health_tooltip; // 0x1140 int32_t shard_damage_tooltip; // 0x1144 int32_t shard_duration_tooltip; // 0x1148 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_MudGolem_Rock_Shard : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoNotCastEnsnare : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoNotCastRock : public CDOTA_Buff { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_DoNotCastSmash : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_AlphaWolf_CriticalStrike : public CDOTA_Buff { public: int32_t crit_mult; // 0x1138 int32_t crit_chance; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AncientRockGolem_Weakening_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AncientRockGolem_Weakening : public CDOTA_Buff { public: int32_t armor_reduction; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlackDrake_MagicAmplification_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlackDrake_MagicAmplification : public CDOTA_Buff { public: int32_t spell_amp; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AlphaWolf_CommandAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_AlphaWolf_CommandAura_Bonus : public CDOTA_Buff { public: int32_t bonus_damage_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FrostbittenGolem_TimeWarpAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FrostbittenGolem_TimeWarpAura_Bonus : public CDOTA_Buff { public: int32_t bonus_cdr; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_IceShaman_IncendiaryBomb : public CDOTA_Buff { public: int32_t burn_damage; // 0x1138 int32_t building_damage_pct; // 0x113c }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Tornado_Tempest : public CDOTA_Buff { public: int32_t near_radius; // 0x1138 int32_t near_damage; // 0x113c int32_t far_radius; // 0x1140 int32_t far_damage; // 0x1144 float tick_rate; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Tornado_Tempest_Debuff : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 int32_t attackspeed_slow; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Wildkin_Tornado : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tornado_ExpirationTime : public CDOTA_Buff { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_EnragedWildkin_Hurricane : public CDOTA_Buff { public: Vector m_vDirection; // 0x1138 float m_flEndTime; // 0x1144 float m_flCurTime; // 0x1148 ParticleIndex_t m_FX; // 0x114c int32_t distance; // 0x1150 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BerserkerTroll_Break : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Kobold_Disarm : public CDOTA_Buff { public: float duration; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EnragedWildkin_ToughnessAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_EnragedWildkin_ToughnessAura_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_GraniteGolem_HPAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_GraniteGolem_HPAura_Bonus : public CDOTA_Buff { public: float bonus_hp; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SatyrTrickster_Purge : public CDOTA_Buff { public: int32_t purge_rate; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SatyrSoulstealer_ManaBurn : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SatyrHellcaller_UnholyAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_SatyrHellcaller_UnholyAura_Bonus : public CDOTA_Buff { public: float health_regen; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Spawnlord_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Spawnlord_Aura_Bonus : public CDOTA_Buff { public: int32_t lifesteal; // 0x1138 int32_t hp_regen; // 0x113c }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_ForestTrollHighPriest_HealAutocast : public CDOTA_Buff { public: int32_t health; // 0x1138 CHandle< CBaseEntity > m_hHealTarget; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ForestTrollHighPriest_ManaAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_ForestTrollHighPriest_ManaAura_Bonus : public CDOTA_Buff { public: float mana_regen; // 0x1138 int32_t allow_multiple; // 0x113c int32_t m_nAttributes; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ForestTrollHighPriest_HealAmp : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_ForestTrollHighPriest_HealAmp_Bonus : public CDOTA_Buff { public: float heal_amp; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Furbolg_Enrage_AttackSpeed_OnDeath : public CDOTA_Buff { public: float duration; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifer_Furbolg_Enrage_AttackSpeed : public CDOTA_Buff { public: int32_t bonus_aspd; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Furbolg_Enrage_Damage_OnDeath : public CDOTA_Buff { public: float duration; // 0x1138 int32_t radius; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FelBeast_Haunt_OnDeath : public CDOTA_Buff { public: int32_t projectile_speed; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_FelBeast_Haunt : public CDOTA_Buff { public: int32_t damage_per_second; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifer_Furbolg_Enrage_Damage : public CDOTA_Buff { public: int32_t bonus_dmg_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KoboldTunneler_ProspectingAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_KoboldTunneler_ProspectingAura_Money : public CDOTA_Buff { public: int32_t gpm_aura; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_HillTroll_RallyAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_HillTroll_Rally : public CDOTA_Buff { public: int32_t damage_bonus; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_HillTroll_Rally_Stack : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_HarpyScout_TakeOff : public CDOTA_Buff { public: int32_t move_speed_penalty; // 0x1138 float cost_per_second; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_OgreSmash_Swing : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_GiantWolf_Intimidate : public CDOTA_Buff { public: int32_t damage_reduction; // 0x1138 }; // Alignment: 6 // Size: 0x1170 class CDOTA_Modifier_HarpyStorm_ChainLightning : public CDOTA_Buff { public: int32_t jump_range; // 0x1138 int32_t max_targets; // 0x113c float damage_percent_loss; // 0x1140 float m_flCurDamage; // 0x1144 Vector m_vJumpPosition; // 0x1148 private: [[maybe_unused]] uint8_t __pad1154[0x4]; // 0x1154 public: CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1158 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_BlackDragon_Fireball_Thinker : public CDOTA_Buff { public: float burn_interval; // 0x1138 int32_t radius; // 0x113c int32_t damage; // 0x1140 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_BlackDragon_SplashAttack : public CDOTA_Buff { public: int32_t range; // 0x1138 float damage_percent; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlackDragon_DragonhideAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlackDragon_DragonhideAura_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MudGolem_CloakAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_MudGolem_CloakAura_Bonus : public CDOTA_Buff { public: int32_t bonus_magical_armor; // 0x1138 int32_t bonus_magical_armor_creeps; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlueDragonspawnSorcerer_Evasion : public CDOTA_Buff { public: int32_t evasion_chance_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlueDragonspawnOverseer_Evasion : public CDOTA_Buff { public: int32_t evasion_chance_pct; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlueDragonspawnOverseer_DevotionAura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BlueDragonspawnOverseer_DevotionAura_Bonus : public CDOTA_Buff { public: int32_t bonus_armor; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BigThunderLizard_Wardrums : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_BigThunderLizard_Wardrums_Aura : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 int32_t accuracy; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BigThunderLizard_Slam : public CDOTA_Buff { public: int32_t movespeed_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_BigThunderLizard_Frenzy : public CDOTA_Buff { public: int32_t attackspeed_bonus; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Casting : public CDOTA_Buff { public: int32_t cast_animation; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Black_Nightmare : public CDOTA_Buff { public: float animation_rate; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Greevil_Miniboss_Black_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable { public: // no members available }; // Alignment: 5 // Size: 0x1158 class CDOTA_Modifier_Greevil_Miniboss_Blue_ColdFeet : public CDOTA_Buff { public: Vector m_vecStartPosition; // 0x1138 int32_t m_nCurrentTick; // 0x1144 float damage; // 0x1148 int32_t break_distance; // 0x114c float stun_duration; // 0x1150 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Greevil_Miniboss_Blue_ColdFeet_Freeze : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 5 // Size: 0x1160 class CDOTA_Modifier_Greevil_Miniboss_Blue_IceVortexThinker : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t movement_speed_pct; // 0x113c int32_t spell_resist_pct; // 0x1140 ParticleIndex_t m_nFXIndex; // 0x1144 CUtlVector< CHandle< CBaseEntity > > m_hChilledEntities; // 0x1148 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Blue_IceVortex : public CDOTA_Buff { public: int32_t movement_speed_pct; // 0x1138 int32_t spell_resist_pct; // 0x113c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Red_Earthshock : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Red_Overpower : public CDOTA_Buff { public: int32_t attack_speed_bonus_pct; // 0x1138 }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_Greevil_Miniboss_Yellow_IonShell : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t damage_per_second; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Greevil_Miniboss_Yellow_Surge : public CDOTA_Buff { public: // no members available }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_White_Degen_Aura : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_White_Degen_Aura_Effect : public CDOTA_Buff { public: int32_t speed_bonus; // 0x1138 }; // Alignment: 2 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Green_LivingArmor : public CDOTA_Buff { public: int32_t health_regen; // 0x1138 int32_t damage_block; // 0x113c }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Greevil_Miniboss_Green_Overgrowth : public CDOTA_Buff { public: // no members available }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Greevil_Miniboss_Orange_LightStrikeArray_Thinker : public CDOTA_Buff { public: int32_t m_iDamage; // 0x1138 float m_flStunDuration; // 0x113c int32_t light_strike_array_aoe; // 0x1140 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Greevil_Miniboss_Purple_VenomousGale : public CDOTA_Buff { public: int32_t movement_slow; // 0x1138 int32_t tick_damage; // 0x113c float tick_interval; // 0x1140 float duration; // 0x1144 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Greevil_Miniboss_Sight : public CDOTA_Buff { public: int32_t radius; // 0x1138 }; // Alignment: 9 // Size: 0x1160 class CDOTA_Modifier_Neutral_Upgrade : public CDOTA_Buff { public: float increase_time; // 0x1138 int32_t increase_damage; // 0x113c int32_t increase_health; // 0x1140 float increase_armor; // 0x1144 int32_t increase_aspd; // 0x1148 int32_t increase_gold; // 0x114c int32_t increase_xp; // 0x1150 int32_t current_level; // 0x1154 int32_t max_level; // 0x1158 }; // Alignment: 4 // Size: 0x1148 class CDOTA_Modifier_Creep_Siege : public CDOTA_Buff { public: int32_t bonus_building_damage; // 0x1138 int32_t incoming_hero_damage_penalty; // 0x113c int32_t incoming_basic_damage_penalty; // 0x1140 int32_t incoming_controlled_unit_penalty; // 0x1144 }; // Alignment: 3 // Size: 0x1148 class CDOTA_Modifier_Creep_Piercing : public CDOTA_Buff { public: int32_t creep_damage_bonus; // 0x1138 int32_t hero_damage_penalty; // 0x113c int32_t heavy_damage_penalty; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Creep_Irresolute : public CDOTA_Buff { public: int32_t hero_damage_penalty; // 0x1138 }; // Alignment: 6 // Size: 0x1150 class CDOTA_Modifier_Creep_Bonus_XP : public CDOTA_Buff { public: int32_t radius; // 0x1138 int32_t hero_damage_penalty; // 0x113c int32_t bonus_gold; // 0x1140 int32_t m_iGoldBounty; // 0x1144 ParticleIndex_t iBannerEffect; // 0x1148 ParticleIndex_t iRingEffect; // 0x114c }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_Flagbearer_Creep_Aura_Effect : public CDOTA_Buff { public: int32_t bonus_health_regen; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Filler_Tooltip : public CDOTA_Buff { public: // no members available }; // Alignment: 2 // Size: 0x1148 class CDOTA_Modifier_MuertaReleaseEvent_RemoveGravestone : public CDOTA_Buff { public: ParticleIndex_t m_nParticleIndex; // 0x1138 private: [[maybe_unused]] uint8_t __pad113c[0x4]; // 0x113c public: CUtlVector< ParticleIndex_t >* m_pActiveGravestones; // 0x1140 }; // Alignment: 1 // Size: 0x1140 class CDOTA_Modifier_MuertaReleaseEvent : public CDOTA_Buff { public: CHandle< CIngameEvent_MuertaReleaseSpring2023 > m_hEvent; // 0x1138 }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_Tutorial_Sleep : public CDOTA_Modifier_Stunned { public: // no members available }; // Alignment: 0 // Size: 0x1138 class CDOTA_Modifier_ARDM_NewHero : public CDOTA_Modifier_Tutorial_Sleep { public: // no members available }; // Alignment: 1 // Size: 0x1170 class CDOTA_Modifier_Gold_Bag_Launch : public CDOTA_Modifier_Knockback { public: int32_t gold_amount; // 0x1168 }; // Alignment: 0 // Size: 0x9e8 class CAdditionalWearable : public CDynamicProp { public: // no members available }; // Alignment: 5 // Size: 0x938 class CDOTAWearableItem : public CEconWearable { public: // MNetworkEnable bool m_bOwnerModelChanged; // 0x930 // MNetworkEnable bool m_bIsGeneratingEconItem; // 0x931 // MNetworkEnable bool m_bIsItemVisibleOnGeneratedEntity; // 0x932 // MNetworkEnable // MNetworkChangeCallback "OnHideWearableButDrawAdditionalWearablesChanged" bool m_bHideWearableButDrawAdditionalWearables; // 0x933 // MNetworkEnable CHandle< CBaseAnimatingActivity > m_hAdditionalWearable; // 0x934 }; // Alignment: 0 // Size: 0x978 class CEnvDeferredSpotLight : public CEnvDeferredLight { public: // no members available }; // Alignment: 10 // Size: 0xa08 class CDOTA_GuildBannerDynamic : public CDynamicProp { public: // MNetworkEnable bool m_bRespawnClientEntity; // 0x9e8 // MNetworkEnable bool m_bPlaySpawnAnimation; // 0x9e9 // MNetworkEnable uint8_t m_unGuildTier; // 0x9ea // MNetworkEnable uint8_t m_unPrimaryColor; // 0x9eb // MNetworkEnable uint8_t m_unSecondaryColor; // 0x9ec // MNetworkEnable uint8_t m_unPattern; // 0x9ed private: [[maybe_unused]] uint8_t __pad09ee[0x2]; // 0x9ee public: // MNetworkEnable uint64_t m_unLogo; // 0x9f0 // MNetworkEnable GuildID_t m_unGuildID; // 0x9f8 // MNetworkEnable uint32_t m_unGuildFlags; // 0x9fc // MNetworkEnable bool m_bUsePanelCache; // 0xa00 }; // Alignment: 1 // Size: 0x9f0 class CDOTAPropCustomTexture : public CDynamicProp { public: // MNetworkEnable uint32_t m_unTeamID; // 0x9e8 }; // Alignment: 1 // Size: 0x9f0 class CDOTAPropConsumableBanner : public CDynamicProp { public: // MNetworkEnable bool m_bUseAvatar; // 0x9e8 }; // Alignment: 1 // Size: 0xa10 class CDOTAPropTI10PlayerGuildBanner : public CDOTA_GuildBannerDynamic { public: // MNetworkEnable int32_t m_nPlayerID; // 0xa08 }; // Alignment: 1 // Size: 0xa10 class CDOTAPropPlusPlayerGuildBanner : public CDOTA_GuildBannerDynamic { public: // MNetworkEnable int32_t m_nPlayerID; // 0xa08 }; // Alignment: 0 // Size: 0x4f0 class CInfoPlayerStartGoodGuys : public CInfoPlayerStartDota { public: // no members available }; // Alignment: 0 // Size: 0x4f0 class CInfoPlayerStartBadGuys : public CInfoPlayerStartDota { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerGoodTop : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerGoodMid : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerGoodBot : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerBadTop : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerBadMid : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 0 // Size: 0x518 class CDOTA_NPCSpawnerBadBot : public CDOTA_NPCSpawner { public: // no members available }; // Alignment: 5 // Size: 0x840 class CBaseVehicle : public CBaseProp { public: CUtlVector< VehiclePassengerInternalInfo_t > m_vecPassengerInfo; // 0x7a8 private: [[maybe_unused]] uint8_t __pad07c0[0x20]; // 0x7c0 public: CEntityOutputTemplate< int32 > m_PassengerEntered; // 0x7e0 CEntityOutputTemplate< int32 > m_PassengerExited; // 0x808 bool m_bLocked; // 0x830 private: [[maybe_unused]] uint8_t __pad0831[0x3]; // 0x831 public: // MNetworkEnable Vector m_vecSmoothedVelocity; // 0x834 }; // Alignment: 3 // Size: 0xb00 class CVehicleEntityIO : public CBaseVehicle { public: InputBitMask_t m_pButtons[8]; // 0x840 CEntityOutputTemplate< int32 > m_ButtonStart[8]; // 0x880 CEntityOutputTemplate< int32 > m_ButtonEnd[8]; // 0x9c0 }; // Alignment: 16 // Size: 0x900 class CWheeledPhysicsVehicle : public CBaseVehicle { public: // MNetworkEnable bool m_bIsUsingLookSteering; // 0x840 private: [[maybe_unused]] uint8_t __pad0841[0x7]; // 0x841 public: CUtlVector< float32 > m_vecWheelStockAngularDamping; // 0x848 CUtlVector< Vector > m_vecPreSolveVelocities; // 0x860 float m_flOverturnedTime; // 0x878 float m_flTimeOfLastFlipAttempt; // 0x87c float m_flCameraPitchOffset; // 0x880 float m_flTargetCameraPitch; // 0x884 float m_flSmoothedCameraPitch; // 0x888 float m_flTimeCameraPitchViolated; // 0x88c float m_flAirborneModeSwitchAccumulator; // 0x890 private: [[maybe_unused]] uint8_t __pad0894[0x4]; // 0x894 public: // MNetworkEnable CNetworkUtlVectorBase< CTransform > m_Transforms; // 0x898 // MNetworkEnable // MNetworkChangeCallback "OnSpeedChanged" float m_flSpeedKPH; // 0x8b0 private: [[maybe_unused]] uint8_t __pad08b4[0x4]; // 0x8b4 public: // MNetworkEnable CNetworkUtlVectorBase< Vector > m_vecWheelContactPointEntitySpace; // 0x8b8 // MNetworkEnable CNetworkUtlVectorBase< float32 > m_vecWheelSmokeIntensity; // 0x8d0 // MNetworkEnable bool m_bIsAirborne; // 0x8e8 private: [[maybe_unused]] uint8_t __pad08e9[0x7]; // 0x8e9 public: // MNetworkEnable CUtlString m_sNonAirborneSubclassName; // 0x8f0 }; // Alignment: 0 // Size: 0x7e8 class CBaseFlexAlias_funCBaseFlex : public CBaseFlex { public: // no members available }; // Alignment: 2 // Size: 0x860 class CScriptItem : public CItem { public: CEntityIOOutput m_OnPlayerPickup; // 0x830 MoveType_t m_MoveTypeOverride; // 0x858 }; // Alignment: 0 // Size: 0xa20 class CRagdollPropAlias_physics_prop_ragdoll : public CRagdollProp { public: // no members available }; // Alignment: 6 // Size: 0xa60 class CRagdollPropAttached : public CRagdollProp { public: // MNetworkEnable uint32_t m_boneIndexAttached; // 0xa20 // MNetworkEnable uint32_t m_ragdollAttachedObjectIndex; // 0xa24 // MNetworkEnable // MNetworkEncoder Vector m_attachmentPointBoneSpace; // 0xa28 // MNetworkEnable // MNetworkEncoder Vector m_attachmentPointRagdollSpace; // 0xa34 bool m_bShouldDetach; // 0xa40 private: [[maybe_unused]] uint8_t __pad0a41[0xf]; // 0xa41 public: bool m_bShouldDeleteAttachedActivationRecord; // 0xa50 }; // Alignment: 14 // Size: 0x8a0 class CBaseCombatCharacter : public CBaseFlex { public: bool m_bForceServerRagdoll; // 0x7e8 private: [[maybe_unused]] uint8_t __pad07e9[0x7]; // 0x7e9 public: // MNetworkEnable CNetworkUtlVectorBase< CHandle< CEconWearable > > m_hMyWearables; // 0x7f0 // MNetworkEnable float m_flFieldOfView; // 0x808 float m_impactEnergyScale; // 0x80c HitGroup_t m_LastHitGroup; // 0x810 bool m_bApplyStressDamage; // 0x814 private: [[maybe_unused]] uint8_t __pad0815[0x3]; // 0x815 public: int32_t m_bloodColor; // 0x818 private: [[maybe_unused]] uint8_t __pad081c[0x5c]; // 0x81c public: int32_t m_registeredNavTeam; // 0x878 int32_t m_navMeshID; // 0x87c int32_t m_iDamageCount; // 0x880 private: [[maybe_unused]] uint8_t __pad0884[0x4]; // 0x884 public: CUtlVector< RelationshipOverride_t >* m_pVecRelationships; // 0x888 CUtlSymbolLarge m_strRelationships; // 0x890 Hull_t m_eHull; // 0x898 uint32_t m_nNavHullIdx; // 0x89c static int32_t &Get_sm_lastInteraction(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseCombatCharacter")->m_static_fields[0]->m_instance);}; }; // Alignment: 32 // Size: 0x9a0 class CItemGeneric : public CItem { public: bool m_bHasTriggerRadius; // 0x838 bool m_bHasPickupRadius; // 0x839 private: [[maybe_unused]] uint8_t __pad083a[0x2]; // 0x83a public: float m_flPickupRadiusSqr; // 0x83c float m_flTriggerRadiusSqr; // 0x840 GameTime_t m_flLastPickupCheck; // 0x844 bool m_bPlayerCounterListenerAdded; // 0x848 bool m_bPlayerInTriggerRadius; // 0x849 private: [[maybe_unused]] uint8_t __pad084a[0x6]; // 0x84a public: CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hSpawnParticleEffect; // 0x850 CUtlSymbolLarge m_pAmbientSoundEffect; // 0x858 bool m_bAutoStartAmbientSound; // 0x860 private: [[maybe_unused]] uint8_t __pad0861[0x7]; // 0x861 public: CUtlSymbolLarge m_pSpawnScriptFunction; // 0x868 CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hPickupParticleEffect; // 0x870 CUtlSymbolLarge m_pPickupSoundEffect; // 0x878 CUtlSymbolLarge m_pPickupScriptFunction; // 0x880 CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_hTimeoutParticleEffect; // 0x888 CUtlSymbolLarge m_pTimeoutSoundEffect; // 0x890 CUtlSymbolLarge m_pTimeoutScriptFunction; // 0x898 CUtlSymbolLarge m_pPickupFilterName; // 0x8a0 CHandle< CBaseFilter > m_hPickupFilter; // 0x8a8 private: [[maybe_unused]] uint8_t __pad08ac[0x4]; // 0x8ac public: CEntityIOOutput m_OnPickup; // 0x8b0 CEntityIOOutput m_OnTimeout; // 0x8d8 CEntityIOOutput m_OnTriggerStartTouch; // 0x900 CEntityIOOutput m_OnTriggerTouch; // 0x928 CEntityIOOutput m_OnTriggerEndTouch; // 0x950 CUtlSymbolLarge m_pAllowPickupScriptFunction; // 0x978 float m_flPickupRadius; // 0x980 float m_flTriggerRadius; // 0x984 CUtlSymbolLarge m_pTriggerSoundEffect; // 0x988 bool m_bGlowWhenInTrigger; // 0x990 Color m_glowColor; // 0x991 bool m_bUseable; // 0x995 private: [[maybe_unused]] uint8_t __pad0996[0x2]; // 0x996 public: CHandle< CItemGenericTriggerHelper > m_hTriggerHelper; // 0x998 }; // Alignment: 22 // Size: 0x9d8 class CBasePlayerPawn : public CBaseCombatCharacter { public: // MNetworkEnable CPlayer_WeaponServices* m_pWeaponServices; // 0x8a0 // MNetworkEnable CPlayer_ItemServices* m_pItemServices; // 0x8a8 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" CPlayer_AutoaimServices* m_pAutoaimServices; // 0x8b0 // MNetworkEnable CPlayer_ObserverServices* m_pObserverServices; // 0x8b8 // MNetworkEnable CPlayer_WaterServices* m_pWaterServices; // 0x8c0 // MNetworkEnable CPlayer_UseServices* m_pUseServices; // 0x8c8 // MNetworkEnable CPlayer_FlashlightServices* m_pFlashlightServices; // 0x8d0 // MNetworkEnable CPlayer_CameraServices* m_pCameraServices; // 0x8d8 // MNetworkEnable CPlayer_MovementServices* m_pMovementServices; // 0x8e0 private: [[maybe_unused]] uint8_t __pad08e8[0x8]; // 0x8e8 public: QAngle v_angle; // 0x8f0 private: [[maybe_unused]] uint8_t __pad08fc[0x10]; // 0x8fc public: // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" uint32_t m_iHideHUD; // 0x90c // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" sky3dparams_t m_skybox3d; // 0x910 GameTime_t m_fTimeLastHurt; // 0x9a0 // MNetworkEnable // MNetworkUserGroup "LocalPlayerExclusive" GameTime_t m_flDeathTime; // 0x9a4 GameTime_t m_fNextSuicideTime; // 0x9a8 bool m_fInitHUD; // 0x9ac private: [[maybe_unused]] uint8_t __pad09ad[0x3]; // 0x9ad public: GameTime_t m_flNextDecalTime; // 0x9b0 private: [[maybe_unused]] uint8_t __pad09b4[0x4]; // 0x9b4 public: CAI_Expresser* m_pExpresser; // 0x9b8 // MNetworkEnable CHandle< CBasePlayerController > m_hController; // 0x9c0 private: [[maybe_unused]] uint8_t __pad09c4[0x4]; // 0x9c4 public: float m_fHltvReplayDelay; // 0x9c8 float m_fHltvReplayEnd; // 0x9cc CEntityIndex m_iHltvReplayEntity; // 0x9d0 }; // Alignment: 2 // Size: 0x930 class NextBotCombatCharacter : public CBaseCombatCharacter { public: // MNetworkEnable uint8_t m_nLod; // 0x928 bool m_didModelChange; // 0x929 }; // Alignment: 0 // Size: 0x938 class CDOTA_Tiny_ScepterTree : public CDOTAWearableItem { public: // no members available }; // Alignment: 0 // Size: 0x9d8 class CDOTAPlayerPawn : public CBasePlayerPawn { public: // no members available }; // Alignment: 252 // Size: 0x1718 class CDOTA_BaseNPC : public NextBotCombatCharacter { public: bool m_bPledgedOfrenda; // 0x950 private: [[maybe_unused]] uint8_t __pad0951[0x3]; // 0x951 public: uint32_t m_iUnitType; // 0x954 Color m_colorGemColor; // 0x958 bool m_bHasColorGem; // 0x95c // MNetworkEnable bool m_bSelectionRingVisible; // 0x95d private: [[maybe_unused]] uint8_t __pad095e[0xa]; // 0x95e public: CUtlSymbolLarge m_iszBaseClass; // 0x968 int32_t m_iStartingMaxHealth; // 0x970 int32_t m_iStartingMaxMana; // 0x974 int32_t m_iStartingMana; // 0x978 // MNetworkEnable // MNetworkPriority "32" int32_t m_iCurrentLevel; // 0x97c // MNetworkEnable // MNetworkBitCount "20" // MNetworkMinValue "0" // MNetworkMaxValue "65536" float m_flMana; // 0x980 float m_flBaseMaxMana; // 0x984 // MNetworkEnable // MNetworkBitCount "20" // MNetworkMinValue "0" // MNetworkMaxValue "65536" float m_flMaxMana; // 0x988 // MNetworkEnable // MNetworkBitCount "14" // MNetworkMinValue "-50" // MNetworkMaxValue "500" float m_flManaThinkRegen; // 0x98c float m_flBaseMaxHealth; // 0x990 // MNetworkEnable // MNetworkBitCount "18" // MNetworkMinValue "-100" // MNetworkMaxValue "1000" float m_flHealthThinkRegen; // 0x994 // MNetworkEnable int32_t m_nHealthBarOffsetOverride; // 0x998 int32_t m_nHealthBarOffset; // 0x99c // MNetworkEnable bool m_bIsPhantom; // 0x9a0 // MNetworkEnable bool m_bIsAncient; // 0x9a1 // MNetworkEnable bool m_bIsBossCreature; // 0x9a2 // MNetworkEnable bool m_bIsNeutralUnitType; // 0x9a3 bool m_bAutoAttacksByDefault; // 0x9a4 // MNetworkEnable bool m_bIsSummoned; // 0x9a5 // MNetworkEnable bool m_bCanBeDominated; // 0x9a6 // MNetworkEnable bool m_bCanRespawn; // 0x9a7 bool m_bConsideredHero; // 0x9a8 bool m_bUsesConstantGesture; // 0x9a9 bool m_bIsPlayingSingleForcedActivity; // 0x9aa // MNetworkEnable bool m_bHasUpgradeableAbilities; // 0x9ab // MNetworkEnable int32_t m_iBKBChargesUsed; // 0x9ac // MNetworkEnable int32_t m_iAeonChargesUsed; // 0x9b0 // MNetworkEnable GameTime_t m_flRefresherUseTime; // 0x9b4 // MNetworkEnable float m_flRefresherLastCooldown; // 0x9b8 // MNetworkEnable int32_t m_iBotDebugData; // 0x9bc // MNetworkEnable bool m_bIsMoving; // 0x9c0 private: [[maybe_unused]] uint8_t __pad09c1[0x197]; // 0x9c1 public: // MNetworkEnable bool m_bCanUseWards; // 0xb58 // MNetworkEnable bool m_bCanUseAllItems; // 0xb59 private: [[maybe_unused]] uint8_t __pad0b5a[0x2]; // 0xb5a public: PlayerID_t m_iLastAbilityPlayer; // 0xb5c bool m_bIsPhantomBlocker; // 0xb60 bool m_bBlocksCreepSpawn; // 0xb61 bool m_bCanSellItems; // 0xb62 private: [[maybe_unused]] uint8_t __pad0b63[0x1]; // 0xb63 public: // MNetworkEnable CHandle< CDOTA_NeutralSpawner > m_hNeutralSpawner; // 0xb64 bool m_bTrackDamageTaken; // 0xb68 private: [[maybe_unused]] uint8_t __pad0b69[0x3]; // 0xb69 public: GameTick_t m_nNextRegenThink; // 0xb6c GameTick_t m_nNextModifierThink; // 0xb70 GameTick_t m_nNextModelScaleThink; // 0xb74 GameTick_t m_nNextUnitThink; // 0xb78 // MNetworkEnable // MNetworkBitCount "18" // MNetworkMinValue "-100" // MNetworkMaxValue "1000" float m_flManaRegen; // 0xb7c // MNetworkEnable // MNetworkBitCount "18" // MNetworkMinValue "-100" // MNetworkMaxValue "1000" float m_flHealthRegen; // 0xb80 private: [[maybe_unused]] uint8_t __pad0b84[0x4]; // 0xb84 public: // MNetworkEnable // MNetworkPriority "32" int64_t m_nTotalDamageTaken; // 0xb88 float m_flHealthRegenCounter; // 0xb90 float m_flManaRegenCounter; // 0xb94 float m_flAccumulatedHeal; // 0xb98 int32_t m_iBaseAttackSpeed; // 0xb9c int32_t m_iBaseDamageMin; // 0xba0 int32_t m_iBaseDamageMax; // 0xba4 int32_t m_iAttackRange; // 0xba8 int32_t m_iAttackRangeBuffer; // 0xbac // MNetworkEnable int32_t m_iMoveSpeed; // 0xbb0 float m_flTurnRate; // 0xbb4 int32_t m_iHasAggressiveStance; // 0xbb8 bool m_bInAggressiveStance; // 0xbbc bool m_bInInjuredAggressiveStance; // 0xbbd private: [[maybe_unused]] uint8_t __pad0bbe[0x2]; // 0xbbe public: float m_flFollowRange; // 0xbc0 int32_t m_iAcquisitionRange; // 0xbc4 float m_flAttackAnimationPoint; // 0xbc8 float m_flHullRadius; // 0xbcc float m_flCollisionPadding; // 0xbd0 // MNetworkEnable GameTime_t m_flTauntCooldown; // 0xbd4 // MNetworkEnable GameTime_t m_flTauntCooldown2; // 0xbd8 // MNetworkEnable float m_fRevealRadius; // 0xbdc float m_flProjectileCollisionSize; // 0xbe0 ObstructionRelationshipClass_t m_ObstructionRelationshipClass; // 0xbe4 CUtlSymbolLarge m_iszParticleFolder; // 0xbe8 CUtlSymbolLarge m_iszGameSoundsFile; // 0xbf0 CUtlSymbolLarge m_iszVoiceFile; // 0xbf8 CUtlSymbolLarge m_iszSoundSet; // 0xc00 CUtlSymbolLarge m_iszSelectionGroup; // 0xc08 CUtlSymbolLarge m_iszAnimationModifier; // 0xc10 private: [[maybe_unused]] uint8_t __pad0c18[0x8]; // 0xc18 public: float m_flBaseAttackTime; // 0xc20 // MNetworkEnable int32_t m_iDayTimeVisionRange; // 0xc24 // MNetworkEnable int32_t m_iNightTimeVisionRange; // 0xc28 float m_fBotAttackDesire; // 0xc2c int32_t m_iCombatClass; // 0xc30 int32_t m_iCombatClassAttack; // 0xc34 int32_t m_iCombatClassDefend; // 0xc38 int32_t m_iUnitRelationshipClass; // 0xc3c // MNetworkEnable float m_flPhysicalArmorValue; // 0xc40 // MNetworkEnable float m_flMagicalResistanceValue; // 0xc44 int32_t m_iTeamName; // 0xc48 // MNetworkEnable // MNetworkPriority "32" int32_t m_iAttackCapabilities; // 0xc4c // MNetworkEnable // MNetworkPriority "32" int32_t m_iSpecialAbility; // 0xc50 int32_t m_iMoveCapabilities; // 0xc54 int32_t m_iOriginalAttackCapabilities; // 0xc58 // MNetworkEnable int32_t m_iXPBounty; // 0xc5c // MNetworkEnable int32_t m_iXPBountyExtra; // 0xc60 // MNetworkEnable int32_t m_iGoldBountyMin; // 0xc64 // MNetworkEnable int32_t m_iGoldBountyMax; // 0xc68 PlayerID_t m_nFarmClaimPlayerID; // 0xc6c // MNetworkEnable PlayerID_t m_nPlayerOwnerID; // 0xc70 private: [[maybe_unused]] uint8_t __pad0c74[0x4]; // 0xc74 public: CUtlSymbolLarge m_iszAbilityList[35]; // 0xc78 int32_t m_iAttackDamageType; // 0xd90 bool m_bIsIdle; // 0xd94 bool m_bHold; // 0xd95 bool m_bWasKilledPassively; // 0xd96 private: [[maybe_unused]] uint8_t __pad0d97[0x1]; // 0xd97 public: CountdownTimer m_AngerTimer; // 0xd98 CountdownTimer m_AlertTimer; // 0xdb0 CHandle< CBaseEntity > m_hAngerTarget; // 0xdc8 CHandle< CBaseEntity > m_hAlertTarget; // 0xdcc CHandle< CBaseEntity > m_hForceAttackTarget; // 0xdd0 bool m_bAllowAllyForceAttack; // 0xdd4 private: [[maybe_unused]] uint8_t __pad0dd5[0x3]; // 0xdd5 public: Vector m_vTargetLastKnownPosition; // 0xdd8 private: [[maybe_unused]] uint8_t __pad0de4[0x1c]; // 0xde4 public: GameTime_t m_flLastDamageTime; // 0xe00 GameTime_t m_flLastAttackTime; // 0xe04 GameTime_t m_flTimeSinceLastAbilityNag; // 0xe08 GameTime_t m_flLastTeleportTime; // 0xe0c // MNetworkEnable uint64_t m_nUnitState64; // 0xe10 GameTime_t m_vLastVisibilityChange[14]; // 0xe18 private: [[maybe_unused]] uint8_t __pad0e50[0x18]; // 0xe50 public: bool m_bFirstSpawn; // 0xe68 private: [[maybe_unused]] uint8_t __pad0e69[0x3]; // 0xe69 public: CHandle< CBaseEntity > m_hAttackTarget; // 0xe6c CHandle< CBaseEntity > m_hAggroTarget; // 0xe70 CHandle< CBaseEntity > m_hCommandAttackTarget; // 0xe74 CUtlSymbolLarge m_iszOriginalModel; // 0xe78 // MNetworkEnable int8_t m_nUnitModelVariant; // 0xe80 int8_t m_nUnitModelVariantCount; // 0xe81 bool m_bPseudoQueueOrders; // 0xe82 bool m_bCastLocked; // 0xe83 private: [[maybe_unused]] uint8_t __pad0e84[0x1c]; // 0xe84 public: GameTime_t m_flAttackRegulator; // 0xea0 float m_flTimeDisparityTolerance; // 0xea4 GameTime_t m_fAttackPhaseEndTime; // 0xea8 GameTime_t m_flPositionUpdateTime; // 0xeac Vector m_vLastPositionSent; // 0xeb0 // MNetworkEnable // MNetworkUserGroup "SpectatorsOnly" // MNetworkPriority "32" int32_t m_iTaggedAsVisibleByTeam; // 0xebc // MNetworkEnable uint64_t m_iIsControllableByPlayer64; // 0xec0 PlayerID_t m_nControllingPlayerID; // 0xec8 bool m_bRunAIWhenControllableByPlayer; // 0xecc private: [[maybe_unused]] uint8_t __pad0ecd[0x3]; // 0xecd public: // MNetworkEnable // MNetworkUserGroup "Abilities" // MNetworkPriority "32" CHandle< CBaseEntity > m_hAbilities[35]; // 0xed0 private: [[maybe_unused]] uint8_t __pad0f5c[0x4]; // 0xf5c public: CUtlVector< CHandle< CBaseEntity > > m_associatedEmptyAbilities; // 0xf60 CHandle< CBaseEntity > m_hActiveAbility; // 0xf78 Vector m_vCursorLocation; // 0xf7c CHandle< CBaseEntity > m_hCursorTarget; // 0xf88 CHandle< CBaseEntity > m_hOriginalCursorTarget; // 0xf8c bool m_bCursorTargetingNothing; // 0xf90 private: [[maybe_unused]] uint8_t __pad0f91[0x7]; // 0xf91 public: // MNetworkEnable CDOTA_ModifierManager m_ModifierManager; // 0xf98 private: [[maybe_unused]] uint8_t __pad11f8[0x8]; // 0x11f8 public: float m_flInvisibilityLevel; // 0x1200 private: [[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204 public: CUtlSymbolLarge m_iszMapUnitName; // 0x1208 // MNetworkEnable // MNetworkDisable CUtlSymbolLarge m_iszUnitName; // 0x1210 // MNetworkEnable int32_t m_iUnitNameIndex; // 0x1218 // MNetworkEnable int32_t m_iDamageMin; // 0x121c // MNetworkEnable int32_t m_iDamageMax; // 0x1220 // MNetworkEnable int32_t m_iDamageBonus; // 0x1224 // MNetworkEnable bool m_bIsWaitingToSpawn; // 0x1228 private: [[maybe_unused]] uint8_t __pad1229[0x3]; // 0x1229 public: int32_t m_iLeashType; // 0x122c int32_t m_iAggroType; // 0x1230 bool m_bCreepIgnoreAggro; // 0x1234 bool m_bCreepFirstWave; // 0x1235 // MNetworkEnable bool m_bIsIllusion; // 0x1236 // MNetworkEnable uint8_t m_nUnitLabelIndex; // 0x1237 // MNetworkEnable CUtlString m_szUnitLabel; // 0x1238 CUtlString m_strAnimationModifier; // 0x1240 private: [[maybe_unused]] uint8_t __pad1248[0x8]; // 0x1248 public: CLocomotionBase* m_locomotor; // 0x1250 IBody* m_body; // 0x1258 bool m_bNeverMoveToClearSpace; // 0x1260 private: [[maybe_unused]] uint8_t __pad1261[0x3]; // 0x1261 public: // MNetworkEnable // MNetworkUserGroup "SpectatorsOnly" CHandle< CBaseEntity > m_hGoalEntity; // 0x1264 bool m_bMustReachEachGoalEntity; // 0x1268 private: [[maybe_unused]] uint8_t __pad1269[0x3]; // 0x1269 public: Vector m_vInitialGoalPosition; // 0x126c private: [[maybe_unused]] uint8_t __pad1278[0x18]; // 0x1278 public: CUnitOrders m_CurrentQueuedOrder; // 0x1290 private: [[maybe_unused]] uint8_t __pad12d0[0x18]; // 0x12d0 public: // MNetworkEnable CDOTA_UnitInventory m_Inventory; // 0x12e8 CHandle< CBaseEntity > m_hItemToDrop; // 0x13b8 // MNetworkEnable DOTA_SHOP_TYPE m_iCurShop; // 0x13bc CHandle< CBaseEntity > m_hLastNearShop; // 0x13c0 private: [[maybe_unused]] uint8_t __pad13c4[0x4]; // 0x13c4 public: // MNetworkEnable CUtlSymbolLarge m_szCurShopEntName; // 0x13c8 bool m_bHasInventory; // 0x13d0 private: [[maybe_unused]] uint8_t __pad13d1[0x3]; // 0x13d1 public: float m_flBaselineModelScale; // 0x13d4 float m_fModelScaleMultiplier; // 0x13d8 float m_fModelScaleMultiplierChangeStart; // 0x13dc GameTime_t m_fModelScaleMultiplierChangeTime; // 0x13e0 float m_flPreviousModelScale; // 0x13e4 float m_fMaxModelScaleMultiplier; // 0x13e8 bool m_bIsCamped; // 0x13ec bool m_bIsReturningHome; // 0x13ed bool m_bWantsToFlee; // 0x13ee bool m_bWakesNeutrals; // 0x13ef bool m_bNeutralIgnore; // 0x13f0 bool m_bIdleAcquire; // 0x13f1 bool m_bCanFollowUnseenUnits; // 0x13f2 bool m_bExpired; // 0x13f3 Vector m_vCurrentMovementOrderDestination; // 0x13f4 Vector m_vPreviousMovementOrderDestination; // 0x1400 Vector m_vResumePreviousMovementRequestLocation; // 0x140c bool m_bCurrentOrderIsMovement; // 0x1418 bool m_bPreviousOrderIsMovement; // 0x1419 bool m_bResumePreviousMovement; // 0x141a bool m_bIsPatrolling; // 0x141b GameTime_t m_flCreationTime; // 0x141c bool m_bTargetMovedOutOfRange; // 0x1420 bool m_bChaseTargetMoves; // 0x1421 private: [[maybe_unused]] uint8_t __pad1422[0x2]; // 0x1422 public: float m_flChaseDistance; // 0x1424 CHandle< CBaseEntity > m_hChaseEntity; // 0x1428 private: [[maybe_unused]] uint8_t __pad142c[0x4]; // 0x142c public: CUtlVector< CUtlSymbol > m_ActivityModifiers; // 0x1430 bool m_bActivityModifiersDirty; // 0x1448 private: [[maybe_unused]] uint8_t __pad1449[0x7]; // 0x1449 public: CUtlVector< CUtlSymbol > m_ActivityModifiersFromScript; // 0x1450 GameTime_t m_flBlinkDaggerTime; // 0x1468 float m_flAdditionalBattleMusicWeight; // 0x146c // MNetworkEnable bool m_bStolenScepter; // 0x1470 bool m_bHasScepterCached; // 0x1471 bool m_bHasShardCached; // 0x1472 private: [[maybe_unused]] uint8_t __pad1473[0x5]; // 0x1473 public: CLocalNPCObstructionsCache m_LocalNPCObstructionsCache; // 0x1478 private: [[maybe_unused]] uint8_t __pad1498[0x20]; // 0x1498 public: GameTime_t m_flCritBashFailUntil; // 0x14b8 float m_flAttackTimeLostToLastTick; // 0x14bc float m_flAttackTimeAtLastTick; // 0x14c0 float m_flCompanionDistance; // 0x14c4 bool m_bIsPartyCompanion; // 0x14c8 bool m_bCanPartyCompanionAttack; // 0x14c9 private: [[maybe_unused]] uint8_t __pad14ca[0x2]; // 0x14ca public: CHandle< CBaseEntity > m_CompanionEntity; // 0x14cc bool m_bFacePlayer; // 0x14d0 private: [[maybe_unused]] uint8_t __pad14d1[0x3]; // 0x14d1 public: GameTime_t m_flLastIdleChangeTime; // 0x14d4 bool m_bUseNeutralCreepBehavior; // 0x14d8 private: [[maybe_unused]] uint8_t __pad14d9[0x27]; // 0x14d9 public: bool m_bHasBuiltWearableSpawnList; // 0x1500 private: [[maybe_unused]] uint8_t __pad1501[0x3]; // 0x1501 public: GameTick_t m_nFoWFadeStartTime[14]; // 0x1504 int32_t m_nFOWVisibilityRadius; // 0x153c Vector m_vFOWOriginOverride; // 0x1540 private: [[maybe_unused]] uint8_t __pad154c[0x4]; // 0x154c public: CUtlString m_strLastKillerAbility; // 0x1550 // MNetworkEnable // MNetworkPriority "32" int32_t m_anglediff; // 0x1558 // MNetworkEnable // MNetworkPriority "32" int32_t m_NetworkActivity; // 0x155c // MNetworkEnable // MNetworkPriority "32" int32_t m_NetworkSequenceIndex; // 0x1560 // MNetworkEnable bool m_bShouldDoFlyHeightVisual; // 0x1564 private: [[maybe_unused]] uint8_t __pad1565[0x3]; // 0x1565 public: // MNetworkEnable float m_flStartSequenceCycle; // 0x1568 bool m_bMidLoading; // 0x156c private: [[maybe_unused]] uint8_t __pad156d[0x3]; // 0x156d public: CHandle< CDOTA_ScriptedSpawner > m_hTutorialSpawner; // 0x1570 private: [[maybe_unused]] uint8_t __pad1574[0x4]; // 0x1574 public: CountdownTimer m_AngerCooldownTimer; // 0x1578 int32_t m_iProjectileMoveSpeed; // 0x1590 private: [[maybe_unused]] uint8_t __pad1594[0x4]; // 0x1594 public: CUtlSymbolLarge m_iszAutoAttackRangedParticle; // 0x1598 int32_t m_nPoseParameterTurn; // 0x15a0 int32_t m_nPoseParameterRun; // 0x15a4 float m_flLean; // 0x15a8 float m_flRun; // 0x15ac // MNetworkEnable char m_CustomHealthLabel[256]; // 0x15b0 // MNetworkEnable Color m_CustomHealthLabelColor; // 0x16b0 item_definition_index_t m_nWearableDefIndex; // 0x16b4 int8_t m_nArcanaLevel; // 0x16b8 int8_t m_nDefaultArcanaLevel; // 0x16b9 Color m_defaultColorGemColor; // 0x16ba bool m_bDisableDamageDisplay; // 0x16be private: [[maybe_unused]] uint8_t __pad16bf[0x1]; // 0x16bf public: Color m_gibTintColor; // 0x16c0 float m_flPathfindingSearchDepthScale; // 0x16c4 CUtlVector< int32 > m_ActivitiesStarted; // 0x16c8 CHandle< CBaseEntity > m_hIllusionOriginal; // 0x16e0 CHandle< CDOTA_BaseNPC > m_hDirectionalRangedFakeTarget; // 0x16e4 private: [[maybe_unused]] uint8_t __pad16e8[0x28]; // 0x16e8 public: bool m_bShouldComputeRemainingPathLength; // 0x1710 private: [[maybe_unused]] uint8_t __pad1711[0x3]; // 0x1711 public: float m_flRemainingPathLength; // 0x1714 }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Additive : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 4 // Size: 0x1748 class CDOTA_BaseNPC_Creep : public CDOTA_BaseNPC_Additive { public: CDOTA_CreepKillInfo m_KillInfo; // 0x1718 DOTA_LANE m_Lane; // 0x1738 bool m_bPushback; // 0x173c private: [[maybe_unused]] uint8_t __pad173d[0x3]; // 0x173d public: // MNetworkEnable float m_flAim; // 0x1740 }; // Alignment: 2 // Size: 0x1768 class CDOTA_BaseNPC_Creep_Lane : public CDOTA_BaseNPC_Creep { public: CountdownTimer m_ThinkTimer; // 0x1748 bool m_bInEnemyBase; // 0x1760 }; // Alignment: 0 // Size: 0x1768 class CDOTA_BaseNPC_Creep_Siege : public CDOTA_BaseNPC_Creep_Lane { public: // no members available }; // Alignment: 1 // Size: 0x1760 class CDOTA_BaseNPC_Creep_Neutral : public CDOTA_BaseNPC_Creep { public: CountdownTimer m_ThinkTimer; // 0x1748 }; // Alignment: 0 // Size: 0x1748 class CDOTA_BaseNPC_Creep_Talking : public CDOTA_BaseNPC_Creep { public: // no members available }; // Alignment: 36 // Size: 0x1820 class CDOTA_BaseNPC_Building : public CDOTA_BaseNPC { public: // MNetworkEnable int32_t m_iDamageLevel; // 0x1718 private: [[maybe_unused]] uint8_t __pad171c[0x4]; // 0x171c public: // MNetworkEnable CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nFXIndex; // 0x1720 // MNetworkEnable CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nFXIndexDestruction; // 0x1728 // MNetworkEnable QAngle m_angInitialAngles; // 0x1730 // MNetworkEnable HSequence m_hHeroStatueSequence; // 0x173c // MNetworkEnable HSequence m_hConstantLayerSequence; // 0x1740 // MNetworkEnable float m_fHeroStatueCycle; // 0x1744 // MNetworkEnable int32_t m_iHeroStatueStatusEffectIndex; // 0x1748 // MNetworkEnable bool m_bHeroStatue; // 0x174c // MNetworkEnable bool m_bBattleCup; // 0x174d // MNetworkEnable char m_HeroStatueInscription[32]; // 0x174e private: [[maybe_unused]] uint8_t __pad176e[0x2]; // 0x176e public: // MNetworkEnable PlayerID_t m_iHeroStatueOwnerPlayerID; // 0x1770 // MNetworkEnable Color m_ParticleTintColor; // 0x1774 CUtlSymbolLarge m_sDestroySnd; // 0x1778 CUtlSymbolLarge m_sDmgLvl1Snd; // 0x1780 CUtlSymbolLarge m_sDmgLvl2Snd; // 0x1788 CUtlSymbolLarge m_iszLinkedUnit; // 0x1790 CUtlSymbolLarge m_iszAmbientEffectName; // 0x1798 CUtlSymbolLarge m_iszDestructionEffectName; // 0x17a0 CUtlSymbolLarge m_iszDamageModelLevel1; // 0x17a8 CUtlSymbolLarge m_iszDamageModelLevel2; // 0x17b0 CUtlSymbolLarge m_iszDamageEffectLevel1; // 0x17b8 CUtlSymbolLarge m_iszDamageEffectLevel2; // 0x17c0 float m_flDamageThresholdLevel1; // 0x17c8 float m_flDamageThresholdLevel2; // 0x17cc bool m_bVulnerableOnCreepSpawn; // 0x17d0 bool m_bHasOverriddenDestructionEffect; // 0x17d1 private: [[maybe_unused]] uint8_t __pad17d2[0x2]; // 0x17d2 public: int32_t m_iUpgradeIdentifier; // 0x17d4 int32_t m_iInvulnCount; // 0x17d8 int32_t m_iPlayerOwner; // 0x17dc DOTA_LANE m_Lane; // 0x17e0 float m_fAmountAlongLane[2]; // 0x17e4 Vector m_vOverrideInitialAngles; // 0x17ec Vector m_vOverrideInitialAnglesBG; // 0x17f8 int32_t m_nOverrideInitialAngles; // 0x1804 CountdownTimer m_IdleRareAnimationTime; // 0x1808 static GameTime_t &Get_m_fLastAttackWarnTimers(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_BaseNPC_Building")->m_static_fields[0]->m_instance);}; }; // Alignment: 3 // Size: 0x1858 class CDOTA_BaseNPC_Tower : public CDOTA_BaseNPC_Building { public: CEntityIOOutput m_OnTowerKilled; // 0x1820 // MNetworkEnable CHandle< CBaseEntity > m_hTowerAttackTarget; // 0x1848 // MNetworkEnable CHandle< CBaseEntity > m_hTowerHighFiveTarget; // 0x184c }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Filler : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 2 // Size: 0x1830 class CDOTA_BaseNPC_Watch_Tower : public CDOTA_BaseNPC_Building { public: // MNetworkEnable CUtlSymbolLarge m_szOutpostName; // 0x1820 // MNetworkEnable CUtlSymbolLarge m_szInteractAbilityName; // 0x1828 }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Healer : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1858 class CDOTA_BaseNPC_RespawningTower : public CDOTA_BaseNPC_Tower { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Fort : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Barracks : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1858 class CDOTA_BaseNPC_SDKTower : public CDOTA_BaseNPC_Tower { public: // no members available }; // Alignment: 1 // Size: 0x1860 class CDOTA_BaseNPC_HoldoutTower : public CDOTA_BaseNPC_Tower { public: DOTA_HOLDOUT_TOWER_TYPE m_iTowerType; // 0x1858 }; // Alignment: 0 // Size: 0x1860 class CDOTA_BaseNPC_HoldoutTower_LightFast : public CDOTA_BaseNPC_HoldoutTower { public: // no members available }; // Alignment: 0 // Size: 0x1860 class CDOTA_BaseNPC_HoldoutTower_HeavySlow : public CDOTA_BaseNPC_HoldoutTower { public: // no members available }; // Alignment: 0 // Size: 0x1860 class CDOTA_BaseNPC_HoldoutTower_ReduceSpeed : public CDOTA_BaseNPC_HoldoutTower { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Effigy_Statue : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Effigy_BattleCup : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_RotatableBuilding : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 80 // Size: 0x1d50 class CDOTA_BaseNPC_Hero : public CDOTA_BaseNPC_Additive { public: // MNetworkEnable float m_flStrength; // 0x17b0 // MNetworkEnable float m_flAgility; // 0x17b4 // MNetworkEnable float m_flIntellect; // 0x17b8 // MNetworkEnable float m_flStrengthTotal; // 0x17bc // MNetworkEnable float m_flAgilityTotal; // 0x17c0 // MNetworkEnable float m_flIntellectTotal; // 0x17c4 // MNetworkEnable int32_t m_iRecentDamage; // 0x17c8 // MNetworkEnable int32_t m_iPrimaryAttribute; // 0x17cc // MNetworkEnable GameTime_t m_flDeathTime; // 0x17d0 float m_flStrengthGain; // 0x17d4 float m_flAgilityGain; // 0x17d8 float m_flIntellectGain; // 0x17dc float m_flLastSuggestionTime; // 0x17e0 int32_t m_nSuggestionHandle; // 0x17e4 bool m_bItemsAddedToLoadout; // 0x17e8 private: [[maybe_unused]] uint8_t __pad17e9[0x3]; // 0x17e9 public: int32_t m_nSuggestPregameHandle; // 0x17ec bool m_bPregameItemsAddedToLoadout; // 0x17f0 private: [[maybe_unused]] uint8_t __pad17f1[0x3]; // 0x17f1 public: CHandle< CBaseEntity > m_hNewARDMHero; // 0x17f4 GameTime_t m_fBuybackCooldown; // 0x17f8 GameTime_t m_fBuybackGoldLimit; // 0x17fc int32_t m_nLastHealedAmount; // 0x1800 float m_flLastHealedTime; // 0x1804 CHandle< CBaseEntity > m_hLastHealEntity; // 0x1808 Vector m_vRespawnPosition; // 0x180c CUtlVector< CDOTA_BaseNPC_Hero::sHeroDamageInfo > m_HeroDamageInfoArray; // 0x1818 CUtlVector< CDOTA_BaseNPC_Hero::sHeroRecentModifierInfo > m_vecRecentModifiers; // 0x1830 GameTime_t m_fMostRecentDamageTime; // 0x1848 // MNetworkEnable int32_t m_iAbilityPoints; // 0x184c // MNetworkEnable // MNetworkPriority "32" int32_t m_iCurrentXP; // 0x1850 // MNetworkEnable GameTime_t m_flRespawnTime; // 0x1854 // MNetworkEnable float m_flRespawnTimePenalty; // 0x1858 float m_flTimeUntilRespawn; // 0x185c float m_flScriptRespawnTime; // 0x1860 float m_flPendingRespawnTime; // 0x1864 // MNetworkEnable bool m_bScriptDisableRespawns; // 0x1868 private: [[maybe_unused]] uint8_t __pad1869[0x3]; // 0x1869 public: // MNetworkEnable PlayerID_t m_iPlayerID; // 0x186c PlayerID_t m_iIllusionOriginalPlayerID; // 0x1870 int32_t m_iHeroID; // 0x1874 // MNetworkEnable CHandle< CDOTA_BaseNPC_Hero > m_hReplicatingOtherHeroModel; // 0x1878 private: [[maybe_unused]] uint8_t __pad187c[0x3c]; // 0x187c public: CountdownTimer m_RespawnMusicTimer; // 0x18b8 CountdownTimer m_HeroKillTimer; // 0x18d0 CountdownTimer m_MultipleHeroKillTimer; // 0x18e8 CountdownTimer m_MultipleLastHitTimer; // 0x1900 int32_t m_iMultipleKillCount; // 0x1918 bool m_bDisableWearables; // 0x191c private: [[maybe_unused]] uint8_t __pad191d[0x3]; // 0x191d public: CHandle< CDOTAWearableItem > m_hTogglableWearable[97]; // 0x1920 private: [[maybe_unused]] uint8_t __pad1aa4[0x4]; // 0x1aa4 public: CDOTA_BaseNPC_Hero::KillInfo_t m_KillInfo; // 0x1aa8 CountdownTimer m_DirectorAbilityActivity; // 0x1ac8 // MNetworkEnable bool m_bReincarnating; // 0x1ae0 // MNetworkEnable bool m_bCustomKillEffect; // 0x1ae1 private: [[maybe_unused]] uint8_t __pad1ae2[0x2]; // 0x1ae2 public: // MNetworkEnable GameTime_t m_flSpawnedAt; // 0x1ae4 CountdownTimer m_PurchaseItemTimer; // 0x1ae8 CountdownTimer m_NeutralItemTimer; // 0x1b00 CountdownTimer m_RetrieveItemsFromStashTimer; // 0x1b18 CountdownTimer m_RequestGoToSecretShopTimer; // 0x1b30 int32_t m_iNextItemToPurchase; // 0x1b48 bool m_bDoesNextItemCompleteRecipe; // 0x1b4c private: [[maybe_unused]] uint8_t __pad1b4d[0x3]; // 0x1b4d public: CUtlVector< sLoadoutItem > m_Loadout; // 0x1b50 CUtlVector< CUtlPair< AbilityID_t, bool > > m_BuildingOrBuilt; // 0x1b68 sLoadoutItem m_TPScroll; // 0x1b80 sLoadoutItem m_Dust; // 0x1b98 sLoadoutItem m_Gem; // 0x1bb0 sLoadoutItem m_SentryWard; // 0x1bc8 sLoadoutItem m_ObserverWard; // 0x1be0 sLoadoutItem m_Courier; // 0x1bf8 sLoadoutItem m_FlyingCourier; // 0x1c10 bool m_bAutoPurchaseItems; // 0x1c28 bool m_bBuybackDisabled; // 0x1c29 private: [[maybe_unused]] uint8_t __pad1c2a[0x6]; // 0x1c2a public: CUtlVector< CHandle< CDOTA_BaseNPC_Pet > > m_hPets; // 0x1c30 bool m_bPreventPetSpawn; // 0x1c48 private: [[maybe_unused]] uint8_t __pad1c49[0x7]; // 0x1c49 public: CDOTAMusicProbabilityEntry m_MusicProbabilityGank; // 0x1c50 private: [[maybe_unused]] uint8_t __pad1c78[0x28]; // 0x1c78 public: CUtlString m_strCustomKillEffect; // 0x1ca0 CUtlString m_strCustomHexModel; // 0x1ca8 ParticleIndex_t m_nKillStreakFX; // 0x1cb0 private: [[maybe_unused]] uint8_t __pad1cb4[0x4]; // 0x1cb4 public: CUtlVector< CHandle< CBaseEntity > > m_AbilitiesPendingDelete; // 0x1cb8 CUtlVector< sAcquireHistory > m_vecItemPurchaseHistory; // 0x1cd0 CUtlVector< sAcquireHistory > m_vecAbilitySkillHistory; // 0x1ce8 CUtlVector< sAcquireHistory > m_vecNeutralItemEquippedHistory; // 0x1d00 private: [[maybe_unused]] uint8_t __pad1d18[0x18]; // 0x1d18 public: CUtlVector< CHandle< CDOTA_BaseNPC_Hero > > m_vecExpiredIllusions; // 0x1d30 private: [[maybe_unused]] uint8_t __pad1d48[0x4]; // 0x1d48 public: float m_flLastTimeLookedAtByDirector; // 0x1d4c }; // Alignment: 10 // Size: 0x1748 class CDOTA_BaseNPC_Pet : public CDOTA_BaseNPC { public: CHandle< CDOTA_BaseNPC_Hero > m_hHeroHandle; // 0x1718 float m_flPetThreatLevel; // 0x171c bool m_bReadyToPerformCoopTeleport; // 0x1720 bool m_bSupportsCoopTeleport; // 0x1721 private: [[maybe_unused]] uint8_t __pad1722[0x2]; // 0x1722 public: PetCoopStates_t m_nCoopState; // 0x1724 CUtlString m_strPickupItemModel; // 0x1728 CHandle< CDOTA_Pet_CarriedItem > m_hCarriedItem; // 0x1730 int32_t m_nPetLevel; // 0x1734 PetLevelup_Rule_t m_nLevelupRule; // 0x1738 private: [[maybe_unused]] uint8_t __pad173c[0x4]; // 0x173c public: int32_t m_nXPCompendiumEventID; // 0x1740 }; // Alignment: 1 // Size: 0x1828 class CDOTA_BaseNPC_Shop : public CDOTA_BaseNPC_Building { public: // MNetworkEnable DOTA_SHOP_TYPE m_ShopType; // 0x1820 }; // Alignment: 2 // Size: 0x1850 class CDOTA_BaseNPC_HallofFame : public CDOTA_BaseNPC_Building { public: int32_t m_event_dota_player_team_changed; // 0x1830 private: [[maybe_unused]] uint8_t __pad1834[0x4]; // 0x1834 public: CountdownTimer m_glowThinkTimer; // 0x1838 }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Promo : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 47 // Size: 0x1898 class CDOTA_BaseNPC_Creature : public CDOTA_BaseNPC_Creep { public: bool m_bInitialized; // 0x1748 bool m_bCanRespawn; // 0x1749 bool m_bUsesGestureBasedAttackAnimation; // 0x174a bool m_bIsHybridFlyer; // 0x174b bool m_bRequiresReachingEndPath; // 0x174c bool m_bAggroOwnerOnDamage; // 0x174d bool m_bReceivedAggroOnDamageOrder; // 0x174e private: [[maybe_unused]] uint8_t __pad174f[0x1]; // 0x174f public: CUtlVector< CreatureStateData_t > m_vCreatureStates; // 0x1750 char* m_pszDefaultState; // 0x1768 char* m_pszCurrentState; // 0x1770 int32_t m_nHPGain; // 0x1778 int32_t m_nManaGain; // 0x177c float m_flHPRegenGain; // 0x1780 float m_flManaRegenGain; // 0x1784 int32_t m_nDamageGain; // 0x1788 float m_flArmorGain; // 0x178c float m_flMagicResistGain; // 0x1790 float m_flDisableResistGain; // 0x1794 float m_flAttackTimeGain; // 0x1798 int32_t m_nMoveSpeedGain; // 0x179c int32_t m_nBountyGain; // 0x17a0 int32_t m_nXPGain; // 0x17a4 int32_t m_nPermanentDesire; // 0x17a8 int32_t m_nCreatureDesire; // 0x17ac int32_t m_nCurrentCastBehavior; // 0x17b0 bool m_bIsBuildingAggressive; // 0x17b4 bool m_bIsHeroAggressive; // 0x17b5 bool m_bDisableClumpingBehavior; // 0x17b6 private: [[maybe_unused]] uint8_t __pad17b7[0x1]; // 0x17b7 public: float m_flDisableResistance; // 0x17b8 float m_flUltimateDisableResistance; // 0x17bc bool m_bHasOffensiveAbility; // 0x17c0 private: [[maybe_unused]] uint8_t __pad17c1[0x7]; // 0x17c1 public: CUtlVector< CreatureAbilityData_t > m_vOffensiveAbilities; // 0x17c8 bool m_bHasDefensiveAbility; // 0x17e0 private: [[maybe_unused]] uint8_t __pad17e1[0x7]; // 0x17e1 public: CUtlVector< CreatureAbilityData_t > m_vDefensiveAbilities; // 0x17e8 bool m_bHasEscapeAbility; // 0x1800 private: [[maybe_unused]] uint8_t __pad1801[0x7]; // 0x1801 public: CUtlVector< CreatureAbilityData_t > m_vEscapeAbilities; // 0x1808 CDOTABaseAbility* m_pLastUsedAbility; // 0x1820 Vector m_vDesiredCastLocation; // 0x1828 private: [[maybe_unused]] uint8_t __pad1834[0x4]; // 0x1834 public: CDOTA_BaseNPC* m_pDesiredNPCTarget; // 0x1838 CDOTA_BaseNPC* m_pEscortTarget; // 0x1840 Vector m_vLastDamageSource; // 0x1848 bool m_bIsChampion; // 0x1854 private: [[maybe_unused]] uint8_t __pad1855[0x3]; // 0x1855 public: CUtlVector< ItemDropData_t* > m_vItemDropData; // 0x1858 CUtlVector< item_definition_index_t > m_vecAttachWearableItemDefs; // 0x1870 GameTime_t m_flRespawnTime; // 0x1888 // MNetworkEnable bool m_bIsCurrentlyChanneling; // 0x188c private: [[maybe_unused]] uint8_t __pad188d[0x3]; // 0x188d public: // MNetworkEnable float m_flChannelCycle; // 0x1890 }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_NeutralItemStash : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 2 // Size: 0x18b0 class CDOTA_BaseNPC_Trap_Ward : public CDOTA_BaseNPC_Creature { public: CUtlSymbolLarge m_iszDefaultAnim; // 0x1898 Vector m_vTrapTargetLocal; // 0x18a0 }; // Alignment: 2 // Size: 0x1828 class CDOTA_BaseNPC_CustomEffigy : public CDOTA_BaseNPC_Building { public: uint32_t m_unStatusEffectIndex; // 0x1820 CHandle< CBaseEntity > m_hPedestal; // 0x1824 }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_JungleVarmint : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CIngameEvent_MuertaReleaseSpring2023_DummyModifierHolder : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_DataDriven : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_AghsFort_EarthSpiritBoss_Stone : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 2 // Size: 0x1720 class CDOTA_NPC_Aghsfort_WitchDoctor_Ward : public CDOTA_BaseNPC_Additive { public: // MNetworkEnable int32_t m_nTargetType; // 0x1718 // MNetworkEnable int32_t m_nTargetFlags; // 0x171c }; // Alignment: 0 // Size: 0x1718 class CDOTA_AghsFort_Unit_Undying_Tombstone : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 2 // Size: 0x1768 class CDOTA_AghsFort_Unit_Undying_Zombie : public CDOTA_BaseNPC_Creep { public: CountdownTimer m_ctRespawn; // 0x1748 CDOTA_BaseNPC* m_pTombstone; // 0x1760 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_AghsFort_Unit_Hero_Undying : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_AghsFort_Lich_Ice_Spire : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_AghsFort_Hero_Phoenix : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 3 // Size: 0x1d60 class CDOTA_AghsFort_Unit_ArcWarden_Boss : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nTalkFXIndex; // 0x1d50 ParticleIndex_t m_nFXDeath; // 0x1d54 ParticleIndex_t m_nTempestFX; // 0x1d58 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Aghsfort_PrimalBeast_Boss : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_AghsFort_Hero_Clinkz : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_AghsFort_Clinkz_Skeleton_Archer : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 0 // Size: 0x1898 class CDOTA_BaseNPC_AghsFort_Clinkz_Skeleton_Colossus : public CDOTA_BaseNPC_Creature { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_AncientApparition : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_AntiMage : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Bane : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Pudge : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Juggernaut : public CDOTA_BaseNPC_Hero { public: uint32_t m_unOmniKills; // 0x1d50 }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Nevermore : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_SandKing : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Mirana : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Sven : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 3 // Size: 0x1d80 class CDOTA_Unit_Hero_SkeletonKing : public CDOTA_BaseNPC_Hero { public: int32_t m_nSkeletonWarriors; // 0x1d50 // MNetworkEnable // MNetworkChangeCallback "OnSKArcanaProgressChanged" int32_t m_vecInitialHeroKillBitmask[5]; // 0x1d54 // MNetworkEnable // MNetworkChangeCallback "OnSKArcanaProgressChanged" int32_t m_vecInGameHeroKillBitmask[5]; // 0x1d68 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_StormSpirit : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_DrowRanger : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Earthshaker : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_VengefulSpirit : public CDOTA_BaseNPC_Hero { public: bool m_bArcanaEquipped; // 0x1d50 }; // Alignment: 2 // Size: 0x1d58 class CDOTA_Unit_Hero_CrystalMaiden : public CDOTA_BaseNPC_Hero { public: int32_t m_iParticleMouthIndex; // 0x1d50 int32_t m_iParticleHandRIndex; // 0x1d54 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Axe : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Bloodseeker : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_PhantomLancer : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1d58 class CDOTA_Unit_Hero_Razor : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable // MNetworkPriority "32" int32_t m_nTargetAngle; // 0x1d50 // MNetworkEnable // MNetworkPriority "32" int32_t m_nTargetRange; // 0x1d54 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Lina : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Morphling : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_ZeusCloud : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Zuus : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Kunkka : public CDOTA_BaseNPC_Hero { public: int32_t m_nFXIndex; // 0x1d50 }; // Alignment: 4 // Size: 0x1d60 class CDOTA_Unit_Hero_Tiny : public CDOTA_BaseNPC_Hero { public: CHandle< CBaseEntity > m_hTreeWearable; // 0x1d50 ParticleIndex_t m_nFXIndexScepterAmbient; // 0x1d54 // MNetworkEnable CHandle< CDOTA_BaseNPC > m_hIllusionOwner; // 0x1d58 // MNetworkEnable bool m_bIllusionHasTree; // 0x1d5c }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Puck : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1d58 class CDOTA_Unit_Hero_Windrunner : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable // MNetworkPriority "32" int32_t m_nTargetAngle; // 0x1d50 ParticleIndex_t m_nFXDeath; // 0x1d54 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Lich : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_Lich_Ice_Spire : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Tidehunter : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1728 class CDOTA_BaseNPC_ShadowShaman_SerpentWard : public CDOTA_BaseNPC_Additive { public: QAngle m_angle; // 0x1718 int32_t m_iPoseParameterAim; // 0x1724 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_ShadowShaman : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Riki : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Enigma : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Tinker : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_WitchDoctor : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1720 class CDOTA_NPC_WitchDoctor_Ward : public CDOTA_BaseNPC_Additive { public: // MNetworkEnable int32_t m_nTargetType; // 0x1718 // MNetworkEnable int32_t m_nTargetFlags; // 0x171c }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Sniper : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d58 class CDOTA_Unit_Hero_Necrolyte : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Slardar : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Ursa : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Lion : public CDOTA_BaseNPC_Hero { public: uint32_t m_unFingerPrestigeKills; // 0x1d50 }; // Alignment: 1 // Size: 0x1720 class CDOTA_Unit_Announcer : public CDOTA_BaseNPC { public: int32_t m_iAudienceTeam; // 0x1718 }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_CustomGameAnnouncer : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 10 // Size: 0x1750 class CDOTA_Unit_Courier : public CDOTA_BaseNPC_Additive { public: bool m_bUnitRespawned; // 0x1718 bool m_bPreUpdateFlyingCourier; // 0x1719 private: [[maybe_unused]] uint8_t __pad171a[0x2]; // 0x171a public: // MNetworkEnable PlayerID_t m_nSoleControllingPlayer; // 0x171c // MNetworkEnable bool m_bFlyingCourier; // 0x1720 private: [[maybe_unused]] uint8_t __pad1721[0x3]; // 0x1721 public: // MNetworkEnable GameTime_t m_flRespawnTime; // 0x1724 // MNetworkEnable CourierState_t m_nCourierState; // 0x1728 // MNetworkEnable CHandle< CBaseEntity > m_hCourierStateEntity; // 0x172c CUtlString m_strCourierModel; // 0x1730 CUtlString m_strFlyingCourierModel; // 0x1738 Vector m_vSpawnLocation; // 0x1740 }; // Alignment: 0 // Size: 0x1820 class CDOTA_Unit_Fountain : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 4 // Size: 0x1740 class CDOTA_Unit_Roshan : public CDOTA_BaseNPC_Additive { public: int32_t m_iLastHealthPercent; // 0x1718 ParticleIndex_t m_nFXIndex; // 0x171c CUtlVector< CHandle< CBaseEntity > > m_hAttackingHeroes; // 0x1720 // MNetworkEnable bool m_bGoldenRoshan; // 0x1738 }; // Alignment: 3 // Size: 0x1738 class CDOTA_Unit_Nian_Attachment : public CDOTA_BaseNPC_Additive { public: bool m_bAttachmentBroken; // 0x1718 private: [[maybe_unused]] uint8_t __pad1719[0x3]; // 0x1719 public: ParticleIndex_t m_nfxIndex_tailgrow; // 0x171c CUtlVector< NianDamageTaken_t > m_vecRecentDamage; // 0x1720 }; // Alignment: 3 // Size: 0x18b8 class CDOTA_Unit_Nian : public CDOTA_BaseNPC_Creature { public: CUtlVector< NianDamageTaken_t > m_vecRecentDamage; // 0x1898 CHandle< CBaseEntity > m_hTail; // 0x18b0 CHandle< CBaseEntity > m_hHorn; // 0x18b4 }; // Alignment: 0 // Size: 0x1748 class CDOTA_BaseNPC_Warlock_Golem : public CDOTA_BaseNPC_Creep { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Warlock : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Beastmaster : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1748 class CDOTA_Unit_Hero_Beastmaster_Beasts : public CDOTA_BaseNPC_Creep_Talking { public: // no members available }; // Alignment: 0 // Size: 0x1748 class CDOTA_Unit_Hero_Beastmaster_Hawk : public CDOTA_Unit_Hero_Beastmaster_Beasts { public: // no members available }; // Alignment: 0 // Size: 0x1748 class CDOTA_Unit_Hero_Beastmaster_Boar : public CDOTA_Unit_Hero_Beastmaster_Beasts { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_QueenOfPain : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1728 class CDOTA_BaseNPC_Venomancer_PlagueWard : public CDOTA_BaseNPC_Additive { public: QAngle m_angle; // 0x1718 int32_t m_iPoseParameterAim; // 0x1724 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Venomancer : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d60 class CDOTA_Unit_Hero_FacelessVoid : public CDOTA_BaseNPC_Hero { public: Vector m_vecStanceDestinationPoint; // 0x1d50 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_DeathProphet : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Pugna : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1d58 class CDOTA_Unit_Hero_PhantomAssassin : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 // MNetworkEnable uint32_t m_nArcanaLevel; // 0x1d54 }; // Alignment: 1 // Size: 0x1720 class CDOTA_BaseNPC_Phantom_Assassin_GroundDagger : public CDOTA_BaseNPC_Additive { public: ParticleIndex_t m_nFXIndex; // 0x1718 static char* &Get_PARTICLE_SPAWN(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_BaseNPC_Phantom_Assassin_GroundDagger")->m_static_fields[0]->m_instance);}; }; // Alignment: 1 // Size: 0x1720 class CDOTA_PhantomAssassin_Gravestone : public CDOTA_BaseNPC_Additive { public: PlayerID_t m_nVictimPlayerID; // 0x1718 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_TemplarAssassin : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Viper : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 5 // Size: 0x1d68 class CDOTA_Unit_TargetDummy : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable float m_flDamageTaken; // 0x1d50 // MNetworkEnable float m_flLastHit; // 0x1d54 // MNetworkEnable GameTime_t m_flStartDamageTime; // 0x1d58 // MNetworkEnable GameTime_t m_flLastDamageTime; // 0x1d5c bool m_bIsMoving; // 0x1d60 }; // Alignment: 2 // Size: 0x1820 class CDOTA_Unit_LoopingSound : public CDOTA_BaseNPC_Additive { public: // MNetworkEnable char m_pszNetworkedSoundLoop[256]; // 0x1718 // MNetworkEnable int32_t m_nLoopingSoundParity; // 0x1818 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Luna : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_DragonKnight : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Dazzle : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Leshrac : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Rattletrap : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_Rattletrap_Cog : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Furion : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Life_Stealer : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_DarkSeer : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nNormalPunchBuffIndex; // 0x1d50 }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Clinkz_Skeleton_Army : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Clinkz : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Omniknight : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Enchantress : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Huskar : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_NightStalker : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Broodmother : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1748 class CDOTA_Unit_Broodmother_Spiderling : public CDOTA_BaseNPC_Creep_Talking { public: // no members available }; // Alignment: 2 // Size: 0x1728 class CDOTA_Unit_Broodmother_Web : public CDOTA_BaseNPC_Additive { public: ParticleIndex_t m_nFXIndex; // 0x1718 Vector m_vecOrigin; // 0x171c }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_BroodmotherStickyWeb : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_BountyHunter : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Weaver : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Jakiro : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Batrider : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Chen : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 5 // Size: 0x1d60 class CDOTA_Unit_Hero_Spectre : public CDOTA_BaseNPC_Hero { public: bool m_bArcanaKillstreakCompleted; // 0x1d50 // MNetworkEnable // MNetworkChangeCallback "OnSpectreArcanaProgressChanged" uint8_t m_unCurrentArcanaKillStreak; // 0x1d51 // MNetworkEnable // MNetworkChangeCallback "OnSpectreArcanaProgressChanged" uint8_t m_unBestArcanaKillStreak; // 0x1d52 private: [[maybe_unused]] uint8_t __pad1d53[0x1]; // 0x1d53 public: // MNetworkEnable // MNetworkChangeCallback "OnSpectreArcanaProgressChanged" PlayerID_t m_nVictimPlayerID; // 0x1d54 // MNetworkEnable // MNetworkChangeCallback "OnSpectreArcanaProgressChanged" bool m_bArcanaKillstreakRecordBroken; // 0x1d58 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_DoomBringer : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_SpiritBreaker : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Gyrocopter : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Alchemist : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Invoker : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1748 class CDOTA_BaseNPC_Invoker_Forged_Spirit : public CDOTA_BaseNPC_Creep { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Silencer : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Obsidian_Destroyer : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Brewmaster : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1750 class CDOTA_Unit_Brewmaster_PrimalEarth : public CDOTA_BaseNPC_Creep { public: ParticleIndex_t m_nFXEarthAmbient1; // 0x1748 ParticleIndex_t m_nFXEarthAmbient2; // 0x174c }; // Alignment: 2 // Size: 0x1750 class CDOTA_Unit_Brewmaster_PrimalStorm : public CDOTA_BaseNPC_Creep { public: ParticleIndex_t m_nFXStormAmbient1; // 0x1748 ParticleIndex_t m_nFXStormAmbient2; // 0x174c }; // Alignment: 1 // Size: 0x1750 class CDOTA_Unit_Brewmaster_PrimalFire : public CDOTA_BaseNPC_Creep { public: ParticleIndex_t m_nFXAmbient; // 0x1748 }; // Alignment: 1 // Size: 0x1750 class CDOTA_Unit_Brewmaster_PrimalVoid : public CDOTA_BaseNPC_Creep { public: ParticleIndex_t m_nFXAmbient; // 0x1748 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Lycan : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Shadow_Demon : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1720 class CDOTA_Unit_SpiritBear : public CDOTA_BaseNPC_Additive { public: // MNetworkEnable bool m_bShouldRespawn; // 0x1718 // MNetworkEnable bool m_bStolen; // 0x1719 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_LoneDruid : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_ChaosKnight : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Meepo : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable int32_t m_nWhichMeepo; // 0x1d50 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Treant : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1720 class CDOTA_NPC_Treant_EyesInTheForest : public CDOTA_BaseNPC_Additive { public: bool m_bIsBlind; // 0x1718 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Ogre_Magi : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_Undying_Tombstone : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 2 // Size: 0x1768 class CDOTA_Unit_Undying_Zombie : public CDOTA_BaseNPC_Creep { public: CountdownTimer m_ctRespawn; // 0x1748 CDOTA_BaseNPC* m_pTombstone; // 0x1760 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Undying : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 4 // Size: 0x1d78 class CDOTA_Unit_Hero_Rubick : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable // MNetworkChangeCallback "OnAbilityColorChanged" Vector m_stolenAbilityColorHSV1; // 0x1d50 // MNetworkEnable // MNetworkChangeCallback "OnAbilityColorChanged" Vector m_stolenAbilityColorHSV2; // 0x1d5c // MNetworkEnable // MNetworkChangeCallback "OnAbilityColorChanged" Vector m_stolenAbilityFXColorHSV; // 0x1d68 // MNetworkDisable bool m_bHasInitializedAbilityColors; // 0x1d74 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Disruptor : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Nyx_Assassin : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Naga_Siren : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_IngisFatuus : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_KeeperOfTheLight : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 8 // Size: 0x1d68 class CDOTA_Unit_Hero_Wisp : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nAmbientFXIndex; // 0x1d50 ParticleIndex_t m_nStunnedFXIndex; // 0x1d54 ParticleIndex_t m_nTalkFXIndex; // 0x1d58 ParticleIndex_t m_nIllusionFXIndex; // 0x1d5c bool m_bParticleHexed; // 0x1d60 bool m_bParticleStunned; // 0x1d61 bool m_bDetermineAmbientEffect; // 0x1d62 private: [[maybe_unused]] uint8_t __pad1d63[0x1]; // 0x1d63 public: float m_flPrevHealth; // 0x1d64 }; // Alignment: 0 // Size: 0x1718 class CDOTA_Wisp_Spirit : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Visage : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1768 class CDOTA_Unit_VisageFamiliar : public CDOTA_BaseNPC_Creep { public: CountdownTimer ctTimer; // 0x1748 ParticleIndex_t m_nFXAmbient; // 0x1760 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Slark : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Medusa : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_TrollWarlord : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Centaur : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Magnataur : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Shredder : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Bristleback : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Tusk : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Tusk_Sigil : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Skywrath_Mage : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Abaddon : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_Elder_Titan_AncestralSpirit : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Elder_Titan : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Legion_Commander : public CDOTA_BaseNPC_Hero { public: uint32_t m_unDuelsWon; // 0x1d50 }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Techies : public CDOTA_BaseNPC_Hero { public: bool m_bLastDeathFromSuicide; // 0x1d50 }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_TechiesMines : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_NPC_Techies_Minefield_Sign : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_EmberSpirit : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_Earth_Spirit_Stone : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_EarthSpirit : public CDOTA_BaseNPC_Hero { public: bool m_bHasGainedShardCharges; // 0x1d50 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_AbyssalUnderlord : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1720 class CDOTA_Unit_Underlord_Portal : public CDOTA_BaseNPC_Additive { public: CHandle< CBaseEntity > m_hOtherPortal; // 0x1718 }; // Alignment: 3 // Size: 0x1d68 class CDOTA_Unit_Hero_Terrorblade : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 private: [[maybe_unused]] uint8_t __pad1d54[0x4]; // 0x1d54 public: CUtlString m_szResponseCriteria; // 0x1d58 // MNetworkEnable uint32_t m_nArcanaColor; // 0x1d60 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Phoenix : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Oracle : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Winter_Wyvern : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 3 // Size: 0x1d60 class CDOTA_Unit_Hero_ArcWarden : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nTalkFXIndex; // 0x1d50 ParticleIndex_t m_nFXDeath; // 0x1d54 ParticleIndex_t m_nTempestFX; // 0x1d58 }; // Alignment: 8 // Size: 0x1d78 class CDOTA_Unit_Hero_MonkeyKing : public CDOTA_BaseNPC_Hero { public: bool mb_MonkeyHasArcana; // 0x1d50 private: [[maybe_unused]] uint8_t __pad1d51[0x3]; // 0x1d51 public: // MNetworkEnable uint32_t m_nTreeDisguise; // 0x1d54 // MNetworkEnable uint32_t m_nPerchedTree; // 0x1d58 Vector m_vLastPos; // 0x1d5c bool m_bIsOnCloud; // 0x1d68 private: [[maybe_unused]] uint8_t __pad1d69[0x3]; // 0x1d69 public: float m_fTotalDistOnCloud; // 0x1d6c float m_fTotalDistoffCloud; // 0x1d70 float m_fBackOnCloudThresh; // 0x1d74 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Pangolier : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_DarkWillow : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_DarkWillow_Creature : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Grimstroke : public CDOTA_BaseNPC_Hero { public: ParticleIndex_t m_nFXDeath; // 0x1d50 }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_Grimstroke_InkCreature : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Mars : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Snapfire : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Void_Spirit : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Hoodwink : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 2 // Size: 0x1d58 class CDOTA_Unit_Hero_Dawnbreaker : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable int32_t m_nAttackState; // 0x1d50 GameTime_t m_flLastAttackAnimAdvanceTime; // 0x1d54 }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_Marci : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 0 // Size: 0x1d50 class CDOTA_Unit_Hero_PrimalBeast : public CDOTA_BaseNPC_Hero { public: // no members available }; // Alignment: 1 // Size: 0x1d58 class CDOTA_Unit_Hero_Muerta : public CDOTA_BaseNPC_Hero { public: // MNetworkEnable // MNetworkPriority "32" CHandle< CBaseEntity > m_hDoubleShotTarget; // 0x1d50 }; // Alignment: 0 // Size: 0x1718 class CDOTA_Muerta_Revenant : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 3 // Size: 0x1728 class CDOTA_NPC_Observer_Ward : public CDOTA_BaseNPC_Additive { public: int32_t m_iDuration; // 0x1718 bool m_bPlacedInSpawnBox; // 0x171c private: [[maybe_unused]] uint8_t __pad171d[0x3]; // 0x171d public: GameTime_t m_flSpawnTime; // 0x1720 }; // Alignment: 3 // Size: 0x1738 class CDOTA_NPC_Observer_Ward_TrueSight : public CDOTA_NPC_Observer_Ward { public: int32_t m_iTrueSight; // 0x1728 CEntityHandle m_hCasterEntity; // 0x172c CEntityHandle m_hAbilityEntity; // 0x1730 }; // Alignment: 2 // Size: 0x1720 class CDOTA_BaseNPC_Thinker : public CDOTA_BaseNPC { public: bool m_bSendToAllPlayers; // 0x1718 bool m_bSendToClients; // 0x1719 }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_Snowman : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_Penguin : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_Dragon : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_CNY_Balloon : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI9_Balloon : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI9_Drums : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI9_Monkey : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Frostivus2018_Snowman : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Frostivus2018_Clinkz_Skeleton_Army : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_SpectralTusk_Tombstone : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_AghsFort_SpectralTusk_Tombstone : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1898 class CDOTA_Unit_AghsFort_Creature_DragonKnight : public CDOTA_BaseNPC_Creature { public: // no members available }; // Alignment: 1 // Size: 0x1720 class CDOTA_Unit_Aghsfort_Aziyog_Underlord_Portal : public CDOTA_BaseNPC_Additive { public: CHandle< CBaseEntity > m_hOtherPortal; // 0x1718 }; // Alignment: 1 // Size: 0x18a0 class CDOTA_Unit_AghsFort_Creature_DungeonBat : public CDOTA_BaseNPC_Creature { public: ParticleIndex_t m_nFXAmbient; // 0x1898 }; // Alignment: 0 // Size: 0x1898 class CDOTA_Unit_AghsFort_Creature_Batrider : public CDOTA_BaseNPC_Creature { public: // no members available }; // Alignment: 1 // Size: 0x1828 class CDOTA_BaseNPC_Effigy_AghsFort : public CDOTA_BaseNPC_Building { public: uint32_t m_unStatusEffectIndex; // 0x1820 }; // Alignment: 17 // Size: 0x1890 class CDOTA_BaseNPC_AghsFort_Watch_Tower : public CDOTA_BaseNPC_Building { public: int32_t m_nOptionNumber; // 0x1830 float m_flMovePlayersRadius; // 0x1834 CDOTA_BaseNPC_AghsFort_Watch_Tower::ExitDirection_t m_nExitDirection; // 0x1838 Vector m_vExitLocation; // 0x183c int32_t m_nPathSelectedID; // 0x1848 // MNetworkEnable int32_t m_nEncounterType; // 0x184c // MNetworkEnable bool m_bIsEliteEncounter; // 0x1850 // MNetworkEnable bool m_bIsAscensionLevelPicker; // 0x1851 private: [[maybe_unused]] uint8_t __pad1852[0x6]; // 0x1852 public: // MNetworkEnable CUtlSymbolLarge m_strEncounterName; // 0x1858 // MNetworkEnable CUtlSymbolLarge m_strAscensionAbilities; // 0x1860 // MNetworkEnable CHandle< CBaseEntity > m_hEffigy; // 0x1868 int32_t m_nDepth; // 0x186c CHandle< CDOTA_BaseNPC_Effigy_AghsFort > m_hPedestal; // 0x1870 CHandle< CBaseEntity > m_hParticleSystem; // 0x1874 private: [[maybe_unused]] uint8_t __pad1878[0x8]; // 0x1878 public: // MNetworkEnable CHandle< CBaseAnimatingActivity > m_hRoomGate; // 0x1880 // MNetworkEnable bool m_bIsBeingChanneled; // 0x1884 private: [[maybe_unused]] uint8_t __pad1885[0x3]; // 0x1885 public: // MNetworkEnable float m_flGoalCaptureProgress; // 0x1888 }; // Alignment: 0 // Size: 0x1718 class CDOTA_Unit_CustomGameAnnouncerAghanim : public CDOTA_BaseNPC { public: // no members available }; // Alignment: 7 // Size: 0x18b0 class CDOTA_Creature_Jungle_Spirit : public CDOTA_BaseNPC_Creature { public: int32_t m_iCurrentXP; // 0x1898 float m_fInitialScaleGain; // 0x189c float m_fScaleGainMultiplierPerLevel; // 0x18a0 float m_fLastModelScaleGained; // 0x18a4 bool m_bGainedSecondPlatemail; // 0x18a8 bool m_bGainedBonusHealth; // 0x18a9 private: [[maybe_unused]] uint8_t __pad18aa[0x2]; // 0x18aa public: ParticleIndex_t m_nAmbientFXIndex; // 0x18ac }; // Alignment: 3 // Size: 0x1750 class CDOTA_BaseNPC_Seasonal_TI10_DiscoBall : public CDOTA_BaseNPC_Additive { public: int32_t NUM_SOUNDS; // 0x1718 ParticleIndex_t m_nFXIndex; // 0x171c CUtlVector< PlayerID_t > m_vecDancers; // 0x1720 static char* &Get_PARTICLE_SPAWN(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_BaseNPC_Seasonal_TI10_DiscoBall")->m_static_fields[0]->m_instance);}; static char* &Get_PARTICLE_DEATH(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_BaseNPC_Seasonal_TI10_DiscoBall")->m_static_fields[1]->m_instance);}; static char* &Get_PARTICLE_CHANNEL(){return *reinterpret_cast(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_BaseNPC_Seasonal_TI10_DiscoBall")->m_static_fields[2]->m_instance);}; }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI10_SoccerBall : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI11_Balloon : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Seasonal_TI11_Balloon_Dire : public CDOTA_BaseNPC_Seasonal_TI11_Balloon { public: // no members available }; // Alignment: 5 // Size: 0x1838 class CDOTA_Unit_Diretide_Portal : public CDOTA_BaseNPC_Building { public: CHandle< CBaseEntity > m_hPartnerPortal; // 0x1820 int32_t m_nRuneType; // 0x1824 int32_t m_nOriginalTeamNumber; // 0x1828 ParticleIndex_t m_nActiveFXIndex; // 0x182c ParticleIndex_t m_nRuneFXIndex; // 0x1830 }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Spring2021_DefusalBomb : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Spring2021_MeteorCrashSite : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1718 class CDOTA_BaseNPC_Spring2021_AbilityBuilding : public CDOTA_BaseNPC_Additive { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CDOTA_BaseNPC_Winter2022_CandyBucket : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1898 class CDOTA_BaseNPC_Winter2022_FeedableRoshan : public CDOTA_BaseNPC_Creature { public: // no members available }; // Alignment: 0 // Size: 0x1820 class CInfoOfrendaStatue : public CDOTA_BaseNPC_Building { public: // no members available }; // Alignment: 0 // Size: 0x1720 class CDOTA_Unit_Announcer_Killing_Spree : public CDOTA_Unit_Announcer { public: // no members available };