source2sdk/sdk/server.hpp
Arsenii es3n1n 4a6af749fe sdk update
2023-03-23 15:05:13 +01:00

91807 lines
2.0 MiB

#pragma once
#include <cstdint>
#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<EntComponentInfo_t*>(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<int32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<GameTime_t*>(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<int32_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[0]->m_instance);};
static int32_t &Get_s_nWatchTransmitEntity(){return *reinterpret_cast<int32_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[1]->m_instance);};
static bool &Get_s_bUseNetworkVars(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[2]->m_instance);};
static bool &Get_s_bNetworkVarPerFieldTracking(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[3]->m_instance);};
static bool &Get_s_bNetworkVarValidate(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CNetworkTransmitComponent")->m_static_fields[4]->m_instance);};
static bool &Get_s_bUsingPVSConvars(){return *reinterpret_cast<bool*>(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<EntComponentInfo_t*>(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<int32_t*>(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<CUtlVector< CScriptUniformRandomStream* >*>(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<EntComponentInfo_t*>(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<int32_t*>(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<GameTick_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<uint32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<int32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<Relationship_t***>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[0]->m_instance);};
static bool &Get_sm_bAccurateTriggerBboxChecks(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[1]->m_instance);};
static bool &Get_sm_bDisableTouchFuncs(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[2]->m_instance);};
static bool &Get_m_bAllowPrecache(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[3]->m_instance);};
static bool &Get_s_bAbsQueriesValid(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[4]->m_instance);};
static bool &Get_s_bPreventingSetAnimRunAnimEvents(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[5]->m_instance);};
static int32_t &Get_m_nPredictionRandomSeed(){return *reinterpret_cast<int32_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[6]->m_instance);};
static CBasePlayerController* &Get_m_pPredictionPlayerController(){return *reinterpret_cast<CBasePlayerController**>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[7]->m_instance);};
static bool &Get_sm_bDatadescValidating(){return *reinterpret_cast<bool*>(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<float*>(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<CTakeDamageInfo*>(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<SummaryTakeDamageInfo_t*>(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<CHeadLookParams*>(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<EntComponentInfo_t*>(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<int32_t*>(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<EntComponentInfo_t*>(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<int32_t*>(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<CDOTAGameManagerProxy**>(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<int32_t*>(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<CModifierParams*>(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<uint64_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_PlayerResource")->m_static_fields[0]->m_instance);};
static uint64_t &Get_s_unLobbyPartyID(){return *reinterpret_cast<uint64_t*>(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<CDOTASpectatorGraphManagerProxy**>(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<char**>(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<char**>(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<char**>(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<char**>(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<char**>(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<char**>(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<char**>(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<char**>(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<EntComponentInfo_t*>(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<int32_t*>(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<int32_t*>(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<uint32_t*>(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<int32_t*>(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<int32_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CPathTrack")->m_static_fields[0]->m_instance);};
static bool &Get_s_bIsIterating(){return *reinterpret_cast<bool*>(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<CUtlVector< CInfoDynamicShadowHint* >*>(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<float*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CDOTA_Modifier_ContextualTips")->m_static_fields[0]->m_instance);};
static float &Get_k_flGlobalTipCooldown(){return *reinterpret_cast<float*>(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<int32_t*>(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<GameTime_t*>(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<char**>(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<char**>(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<char**>(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<char**>(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
};