source2sdk/sdk/server.hpp
Konstantin 'cpz' L 9e7f47e65d 04.06.2023
2023-06-04 08:57:18 +03:00

94090 lines
2.1 MiB

#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
// /////////////////////////////////////////////////////////////
// Binary: server.dll
// Classes count: 8094
// Enums count: 314
// 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: 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 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: 0xc
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,
HULL_SMALL = 0x9,
NUM_HULLS = 0xa,
HULL_NONE = 0xb,
};
// 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: 0x3
enum class EntitySubclassScope_t : uint32_t
{
SUBCLASS_SCOPE_NONE = 0xffffffffffffffff,
SUBCLASS_SCOPE_PLAYER = 0x0,
SUBCLASS_SCOPE_COUNT = 0x1,
};
// 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__PostureType : uint32_t
{
STAND = 0x0,
CROUCH = 0x1,
SIT = 0x2,
CRAWL = 0x3,
LIE = 0x4,
};
// 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: 0xe
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_PLAYER_DRAFT = 0xc,
DOTA_GAMERULES_STATE_LAST = 0xd,
};
// 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: 0x2c
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,
EVENT_ID_TEAM_2023_TOUR3 = 0x2b,
};
// Alignment: 4
// Size: 0x7
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,
k_ERankType_CasualGlicko = 0x5,
k_ERankType_RankedGlicko = 0x6,
};
// 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: 0x3
enum class EDOTAMatchPlayerTimeCustomStat : uint32_t
{
k_EDOTA_MatchPlayerTimeCustomStat_HPRegenUnderT1Towers = 0x1,
k_EDOTA_MatchPlayerTimeCustomStat_MagicDamageReducedWithNewFormula_Absolute = 0x2,
k_EDOTA_MatchPlayerTimeCustomStat_MagicDamageReducedWithNewFormula_PercentOfTotalHP = 0x3,
};
// 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: 0x335
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,
k_EMsgClientToGCRankRequest = 0x22af,
k_EMsgGCToClientRankResponse = 0x22b0,
k_EMsgGCToClientRankUpdate = 0x22b1,
k_EMsgSignOutMapStats = 0x22b2,
k_EMsgClientToGCMapStatsRequest = 0x22b3,
k_EMsgGCToClientMapStatsResponse = 0x22b4,
k_EMsgGCToServerSetSteamLearnInferencing = 0x22b5,
};
// 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: 0x61
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,
DOTA_CM_ChooseNeutralItem = 0x18f,
DOTA_CM_PlayerDraftPick = 0x320,
DOTA_CM_PlayerDraftSuggest = 0x321,
DOTA_CM_PlayerDraftPreferRole = 0x322,
DOTA_CM_PlayerDraftPreferTeam = 0x323,
};
// Alignment: 4
// Size: 0x9c
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,
DOTA_UM_PlayerDraftSuggestPick = 0x26c,
DOTA_UM_PlayerDraftPick = 0x26d,
};
// 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: 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: 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: 0x5
enum class DOTA_PlayerDraftState : uint32_t
{
DOTA_PLAYERDRAFT_STATE_INACTIVE = 0x0,
DOTA_PLAYERDRAFT_STATE_INTRO = 0x1,
DOTA_PLAYERDRAFT_STATE_DRAFT = 0x2,
DOTA_PLAYERDRAFT_STATE_OUTRO = 0x3,
DOTA_PLAYERDRAFT_STATE_COUNT = 0x4,
};
// 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: 0x6
enum class Attributes : uint32_t
{
DOTA_ATTRIBUTE_STRENGTH = 0x0,
DOTA_ATTRIBUTE_AGILITY = 0x1,
DOTA_ATTRIBUTE_INTELLECT = 0x2,
DOTA_ATTRIBUTE_ALL = 0x3,
DOTA_ATTRIBUTE_MAX = 0x4,
DOTA_ATTRIBUTE_INVALID = 0xffffffffffffffff,
};
// Alignment: 4
// Size: 0xb
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,
DOTA_ATTRIBUTE_INTELLIGENCE_MAGIC_RESIST = 0x9,
DOTA_ATTRIBUTE_ALL_DAMAGE = 0xa,
};
// 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: 0x12
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_DRAFT_POOL = 0xe,
DOTA_TEAM_COUNT = 0xf,
DOTA_TEAM_CUSTOM_MIN = 0x6,
DOTA_TEAM_CUSTOM_MAX = 0xd,
DOTA_TEAM_CUSTOM_COUNT = 0x8,
};
// Alignment: 4
// Size: 0x3c
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_NO_HEALTH_BAR_FOR_OTHER_PLAYERS = 0x19,
MODIFIER_STATE_FLYING = 0x1a,
MODIFIER_STATE_NO_UNIT_COLLISION = 0x1b,
MODIFIER_STATE_NO_TEAM_MOVE_TO = 0x1c,
MODIFIER_STATE_NO_TEAM_SELECT = 0x1d,
MODIFIER_STATE_PASSIVES_DISABLED = 0x1e,
MODIFIER_STATE_DOMINATED = 0x1f,
MODIFIER_STATE_BLIND = 0x20,
MODIFIER_STATE_OUT_OF_GAME = 0x21,
MODIFIER_STATE_FAKE_ALLY = 0x22,
MODIFIER_STATE_FLYING_FOR_PATHING_PURPOSES_ONLY = 0x23,
MODIFIER_STATE_TRUESIGHT_IMMUNE = 0x24,
MODIFIER_STATE_UNTARGETABLE = 0x25,
MODIFIER_STATE_UNTARGETABLE_ALLIED = 0x26,
MODIFIER_STATE_UNTARGETABLE_ENEMY = 0x27,
MODIFIER_STATE_UNTARGETABLE_SELF = 0x28,
MODIFIER_STATE_IGNORING_MOVE_AND_ATTACK_ORDERS = 0x29,
MODIFIER_STATE_ALLOW_PATHING_THROUGH_TREES = 0x2a,
MODIFIER_STATE_NOT_ON_MINIMAP_FOR_ENEMIES = 0x2b,
MODIFIER_STATE_UNSLOWABLE = 0x2c,
MODIFIER_STATE_TETHERED = 0x2d,
MODIFIER_STATE_IGNORING_STOP_ORDERS = 0x2e,
MODIFIER_STATE_FEARED = 0x2f,
MODIFIER_STATE_TAUNTED = 0x30,
MODIFIER_STATE_CANNOT_BE_MOTION_CONTROLLED = 0x31,
MODIFIER_STATE_FORCED_FLYING_VISION = 0x32,
MODIFIER_STATE_ATTACK_ALLIES = 0x33,
MODIFIER_STATE_ALLOW_PATHING_THROUGH_CLIFFS = 0x34,
MODIFIER_STATE_ALLOW_PATHING_THROUGH_FISSURE = 0x35,
MODIFIER_STATE_SPECIALLY_UNDENIABLE = 0x36,
MODIFIER_STATE_ALLOW_PATHING_THROUGH_OBSTRUCTIONS = 0x37,
MODIFIER_STATE_DEBUFF_IMMUNE = 0x38,
MODIFIER_STATE_NO_INVISIBILITY_VISUALS = 0x39,
MODIFIER_STATE_ALLOW_PATHING_THROUGH_BASE_BLOCKER = 0x3a,
MODIFIER_STATE_LAST = 0x3b,
};
// 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: 0xc
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_XP = 0x8,
DOTA_RUNE_SHIELD = 0x9,
DOTA_RUNE_COUNT = 0xa,
};
// 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: 0x6
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,
DOTA_MOTION_CONTROLLER_PRIORITY_ULTRA = 0x5,
};
// 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: 0x8
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_FULL_BODY_LOADOUT = 0x5,
DOTA_PORTRAIT_ENVIRONMENT_TYPE_COUNT = 0x6,
};
// 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_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,
DOTA_DAMAGE_FLAG_ATTACK_MODIFIER = 0x40000,
};
// 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: 0x112
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_HEALTHCOST_REDUCTION_CONSTANT = 0x23,
MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT = 0x24,
MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT_ADJUST = 0x25,
MODIFIER_PROPERTY_BASE_ATTACK_TIME_PERCENTAGE = 0x26,
MODIFIER_PROPERTY_ATTACK_POINT_CONSTANT = 0x27,
MODIFIER_PROPERTY_BONUSDAMAGEOUTGOING_PERCENTAGE = 0x28,
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE = 0x29,
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION = 0x2a,
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION_AMPLIFY = 0x2b,
MODIFIER_PROPERTY_TOTALDAMAGEOUTGOING_PERCENTAGE = 0x2c,
MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE_CREEP = 0x2d,
MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE = 0x2e,
MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE_UNIQUE = 0x2f,
MODIFIER_PROPERTY_HEAL_AMPLIFY_PERCENTAGE_SOURCE = 0x30,
MODIFIER_PROPERTY_HEAL_AMPLIFY_PERCENTAGE_TARGET = 0x31,
MODIFIER_PROPERTY_HP_REGEN_CAN_BE_NEGATIVE = 0x32,
MODIFIER_PROPERTY_HP_REGEN_AMPLIFY_PERCENTAGE = 0x33,
MODIFIER_PROPERTY_LIFESTEAL_AMPLIFY_PERCENTAGE = 0x34,
MODIFIER_PROPERTY_SPELL_LIFESTEAL_AMPLIFY_PERCENTAGE = 0x35,
MODIFIER_PROPERTY_MP_REGEN_AMPLIFY_PERCENTAGE = 0x36,
MODIFIER_PROPERTY_MANA_DRAIN_AMPLIFY_PERCENTAGE = 0x37,
MODIFIER_PROPERTY_MP_RESTORE_AMPLIFY_PERCENTAGE = 0x38,
MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE = 0x39,
MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE_UNIQUE = 0x3a,
MODIFIER_PROPERTY_INCOMING_DAMAGE_PERCENTAGE = 0x3b,
MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_PERCENTAGE = 0x3c,
MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_CONSTANT = 0x3d,
MODIFIER_PROPERTY_INCOMING_SPELL_DAMAGE_CONSTANT = 0x3e,
MODIFIER_PROPERTY_EVASION_CONSTANT = 0x3f,
MODIFIER_PROPERTY_NEGATIVE_EVASION_CONSTANT = 0x40,
MODIFIER_PROPERTY_STATUS_RESISTANCE = 0x41,
MODIFIER_PROPERTY_STATUS_RESISTANCE_STACKING = 0x42,
MODIFIER_PROPERTY_STATUS_RESISTANCE_CASTER = 0x43,
MODIFIER_PROPERTY_AVOID_DAMAGE = 0x44,
MODIFIER_PROPERTY_AVOID_SPELL = 0x45,
MODIFIER_PROPERTY_MISS_PERCENTAGE = 0x46,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BASE_PERCENTAGE = 0x47,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_TOTAL_PERCENTAGE = 0x48,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS = 0x49,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE = 0x4a,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE_ACTIVE = 0x4b,
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_POST = 0x4c,
MODIFIER_PROPERTY_IGNORE_PHYSICAL_ARMOR = 0x4d,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BASE_REDUCTION = 0x4e,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DIRECT_MODIFICATION = 0x4f,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS = 0x50,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS_ILLUSIONS = 0x51,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS_UNIQUE = 0x52,
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DECREPIFY_UNIQUE = 0x53,
MODIFIER_PROPERTY_BASE_MANA_REGEN = 0x54,
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT = 0x55,
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT_UNIQUE = 0x56,
MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE = 0x57,
MODIFIER_PROPERTY_HEALTH_REGEN_CONSTANT = 0x58,
MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE = 0x59,
MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE_UNIQUE = 0x5a,
MODIFIER_PROPERTY_HEALTH_BONUS = 0x5b,
MODIFIER_PROPERTY_MANA_BONUS = 0x5c,
MODIFIER_PROPERTY_EXTRA_STRENGTH_BONUS = 0x5d,
MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS = 0x5e,
MODIFIER_PROPERTY_EXTRA_MANA_BONUS = 0x5f,
MODIFIER_PROPERTY_EXTRA_MANA_BONUS_PERCENTAGE = 0x60,
MODIFIER_PROPERTY_EXTRA_HEALTH_PERCENTAGE = 0x61,
MODIFIER_PROPERTY_EXTRA_MANA_PERCENTAGE = 0x62,
MODIFIER_PROPERTY_STATS_STRENGTH_BONUS = 0x63,
MODIFIER_PROPERTY_STATS_AGILITY_BONUS = 0x64,
MODIFIER_PROPERTY_STATS_INTELLECT_BONUS = 0x65,
MODIFIER_PROPERTY_STATS_STRENGTH_BONUS_PERCENTAGE = 0x66,
MODIFIER_PROPERTY_STATS_AGILITY_BONUS_PERCENTAGE = 0x67,
MODIFIER_PROPERTY_STATS_INTELLECT_BONUS_PERCENTAGE = 0x68,
MODIFIER_PROPERTY_CAST_RANGE_BONUS = 0x69,
MODIFIER_PROPERTY_CAST_RANGE_BONUS_PERCENTAGE = 0x6a,
MODIFIER_PROPERTY_CAST_RANGE_BONUS_TARGET = 0x6b,
MODIFIER_PROPERTY_CAST_RANGE_BONUS_STACKING = 0x6c,
MODIFIER_PROPERTY_ATTACK_RANGE_BASE_OVERRIDE = 0x6d,
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS = 0x6e,
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_UNIQUE = 0x6f,
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_PERCENTAGE = 0x70,
MODIFIER_PROPERTY_MAX_ATTACK_RANGE = 0x71,
MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS = 0x72,
MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS_PERCENTAGE = 0x73,
MODIFIER_PROPERTY_PROJECTILE_NAME = 0x74,
MODIFIER_PROPERTY_REINCARNATION = 0x75,
MODIFIER_PROPERTY_RESPAWNTIME = 0x76,
MODIFIER_PROPERTY_RESPAWNTIME_PERCENTAGE = 0x77,
MODIFIER_PROPERTY_RESPAWNTIME_STACKING = 0x78,
MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE = 0x79,
MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_ONGOING = 0x7a,
MODIFIER_PROPERTY_CASTTIME_PERCENTAGE = 0x7b,
MODIFIER_PROPERTY_ATTACK_ANIM_TIME_PERCENTAGE = 0x7c,
MODIFIER_PROPERTY_MANACOST_PERCENTAGE = 0x7d,
MODIFIER_PROPERTY_MANACOST_PERCENTAGE_STACKING = 0x7e,
MODIFIER_PROPERTY_HEALTHCOST_PERCENTAGE = 0x7f,
MODIFIER_PROPERTY_HEALTHCOST_PERCENTAGE_STACKING = 0x80,
MODIFIER_PROPERTY_DEATHGOLDCOST = 0x81,
MODIFIER_PROPERTY_EXP_RATE_BOOST = 0x82,
MODIFIER_PROPERTY_GOLD_RATE_BOOST = 0x83,
MODIFIER_PROPERTY_PREATTACK_CRITICALSTRIKE = 0x84,
MODIFIER_PROPERTY_PREATTACK_TARGET_CRITICALSTRIKE = 0x85,
MODIFIER_PROPERTY_MAGICAL_CONSTANT_BLOCK = 0x86,
MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK = 0x87,
MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK_SPECIAL = 0x88,
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK_UNAVOIDABLE_PRE_ARMOR = 0x89,
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK = 0x8a,
MODIFIER_PROPERTY_OVERRIDE_ANIMATION = 0x8b,
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_WEIGHT = 0x8c,
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_RATE = 0x8d,
MODIFIER_PROPERTY_ABSORB_SPELL = 0x8e,
MODIFIER_PROPERTY_REFLECT_SPELL = 0x8f,
MODIFIER_PROPERTY_DISABLE_AUTOATTACK = 0x90,
MODIFIER_PROPERTY_BONUS_DAY_VISION = 0x91,
MODIFIER_PROPERTY_BONUS_NIGHT_VISION = 0x92,
MODIFIER_PROPERTY_BONUS_NIGHT_VISION_UNIQUE = 0x93,
MODIFIER_PROPERTY_BONUS_VISION_PERCENTAGE = 0x94,
MODIFIER_PROPERTY_FIXED_DAY_VISION = 0x95,
MODIFIER_PROPERTY_FIXED_NIGHT_VISION = 0x96,
MODIFIER_PROPERTY_MIN_HEALTH = 0x97,
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PHYSICAL = 0x98,
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_MAGICAL = 0x99,
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PURE = 0x9a,
MODIFIER_PROPERTY_IS_ILLUSION = 0x9b,
MODIFIER_PROPERTY_ILLUSION_LABEL = 0x9c,
MODIFIER_PROPERTY_STRONG_ILLUSION = 0x9d,
MODIFIER_PROPERTY_SUPER_ILLUSION = 0x9e,
MODIFIER_PROPERTY_SUPER_ILLUSION_WITH_ULTIMATE = 0x9f,
MODIFIER_PROPERTY_XP_DURING_DEATH = 0xa0,
MODIFIER_PROPERTY_TURN_RATE_PERCENTAGE = 0xa1,
MODIFIER_PROPERTY_TURN_RATE_OVERRIDE = 0xa2,
MODIFIER_PROPERTY_DISABLE_HEALING = 0xa3,
MODIFIER_PROPERTY_ALWAYS_ALLOW_ATTACK = 0xa4,
MODIFIER_PROPERTY_ALWAYS_ETHEREAL_ATTACK = 0xa5,
MODIFIER_PROPERTY_OVERRIDE_ATTACK_MAGICAL = 0xa6,
MODIFIER_PROPERTY_UNIT_STATS_NEEDS_REFRESH = 0xa7,
MODIFIER_PROPERTY_BOUNTY_CREEP_MULTIPLIER = 0xa8,
MODIFIER_PROPERTY_BOUNTY_OTHER_MULTIPLIER = 0xa9,
MODIFIER_PROPERTY_UNIT_DISALLOW_UPGRADING = 0xaa,
MODIFIER_PROPERTY_DODGE_PROJECTILE = 0xab,
MODIFIER_PROPERTY_TRIGGER_COSMETIC_AND_END_ATTACK = 0xac,
MODIFIER_PROPERTY_MAX_DEBUFF_DURATION = 0xad,
MODIFIER_PROPERTY_PRIMARY_STAT_DAMAGE_MULTIPLIER = 0xae,
MODIFIER_PROPERTY_PREATTACK_DEADLY_BLOW = 0xaf,
MODIFIER_PROPERTY_ALWAYS_AUTOATTACK_WHILE_HOLD_POSITION = 0xb0,
MODIFIER_EVENT_ON_SPELL_TARGET_READY = 0xb1,
MODIFIER_EVENT_ON_ATTACK_RECORD = 0xb2,
MODIFIER_EVENT_ON_ATTACK_START = 0xb3,
MODIFIER_EVENT_ON_ATTACK = 0xb4,
MODIFIER_EVENT_ON_ATTACK_LANDED = 0xb5,
MODIFIER_EVENT_ON_ATTACK_FAIL = 0xb6,
MODIFIER_EVENT_ON_ATTACK_ALLIED = 0xb7,
MODIFIER_EVENT_ON_PROJECTILE_DODGE = 0xb8,
MODIFIER_EVENT_ON_ORDER = 0xb9,
MODIFIER_EVENT_ON_UNIT_MOVED = 0xba,
MODIFIER_EVENT_ON_ABILITY_START = 0xbb,
MODIFIER_EVENT_ON_ABILITY_EXECUTED = 0xbc,
MODIFIER_EVENT_ON_ABILITY_FULLY_CAST = 0xbd,
MODIFIER_EVENT_ON_BREAK_INVISIBILITY = 0xbe,
MODIFIER_EVENT_ON_ABILITY_END_CHANNEL = 0xbf,
MODIFIER_EVENT_ON_PROCESS_UPGRADE = 0xc0,
MODIFIER_EVENT_ON_REFRESH = 0xc1,
MODIFIER_EVENT_ON_TAKEDAMAGE = 0xc2,
MODIFIER_EVENT_ON_DEATH_PREVENTED = 0xc3,
MODIFIER_EVENT_ON_STATE_CHANGED = 0xc4,
MODIFIER_EVENT_ON_ORB_EFFECT = 0xc5,
MODIFIER_EVENT_ON_PROCESS_CLEAVE = 0xc6,
MODIFIER_EVENT_ON_DAMAGE_CALCULATED = 0xc7,
MODIFIER_EVENT_ON_MAGIC_DAMAGE_CALCULATED = 0xc8,
MODIFIER_EVENT_ON_ATTACKED = 0xc9,
MODIFIER_EVENT_ON_DEATH = 0xca,
MODIFIER_EVENT_ON_DEATH_COMPLETED = 0xcb,
MODIFIER_EVENT_ON_RESPAWN = 0xcc,
MODIFIER_EVENT_ON_SPENT_MANA = 0xcd,
MODIFIER_EVENT_ON_SPENT_HEALTH = 0xce,
MODIFIER_EVENT_ON_TELEPORTING = 0xcf,
MODIFIER_EVENT_ON_TELEPORTED = 0xd0,
MODIFIER_EVENT_ON_SET_LOCATION = 0xd1,
MODIFIER_EVENT_ON_HEALTH_GAINED = 0xd2,
MODIFIER_EVENT_ON_MANA_GAINED = 0xd3,
MODIFIER_EVENT_ON_TAKEDAMAGE_KILLCREDIT = 0xd4,
MODIFIER_EVENT_ON_HERO_KILLED = 0xd5,
MODIFIER_EVENT_ON_HEAL_RECEIVED = 0xd6,
MODIFIER_EVENT_ON_BUILDING_KILLED = 0xd7,
MODIFIER_EVENT_ON_MODEL_CHANGED = 0xd8,
MODIFIER_EVENT_ON_MODIFIER_ADDED = 0xd9,
MODIFIER_PROPERTY_TOOLTIP = 0xda,
MODIFIER_PROPERTY_MODEL_CHANGE = 0xdb,
MODIFIER_PROPERTY_MODEL_SCALE = 0xdc,
MODIFIER_PROPERTY_MODEL_SCALE_ANIMATE_TIME = 0xdd,
MODIFIER_PROPERTY_IS_SCEPTER = 0xde,
MODIFIER_PROPERTY_IS_SHARD = 0xdf,
MODIFIER_PROPERTY_RADAR_COOLDOWN_REDUCTION = 0xe0,
MODIFIER_PROPERTY_TRANSLATE_ACTIVITY_MODIFIERS = 0xe1,
MODIFIER_PROPERTY_TRANSLATE_ATTACK_SOUND = 0xe2,
MODIFIER_PROPERTY_LIFETIME_FRACTION = 0xe3,
MODIFIER_PROPERTY_PROVIDES_FOW_POSITION = 0xe4,
MODIFIER_PROPERTY_SPELLS_REQUIRE_HP = 0xe5,
MODIFIER_PROPERTY_FORCE_DRAW_MINIMAP = 0xe6,
MODIFIER_PROPERTY_DISABLE_TURNING = 0xe7,
MODIFIER_PROPERTY_IGNORE_CAST_ANGLE = 0xe8,
MODIFIER_PROPERTY_CHANGE_ABILITY_VALUE = 0xe9,
MODIFIER_PROPERTY_OVERRIDE_ABILITY_SPECIAL = 0xea,
MODIFIER_PROPERTY_OVERRIDE_ABILITY_SPECIAL_VALUE = 0xeb,
MODIFIER_PROPERTY_ABILITY_LAYOUT = 0xec,
MODIFIER_EVENT_ON_DOMINATED = 0xed,
MODIFIER_EVENT_ON_KILL = 0xee,
MODIFIER_EVENT_ON_ASSIST = 0xef,
MODIFIER_PROPERTY_TEMPEST_DOUBLE = 0xf0,
MODIFIER_PROPERTY_PRESERVE_PARTICLES_ON_MODEL_CHANGE = 0xf1,
MODIFIER_EVENT_ON_ATTACK_FINISHED = 0xf2,
MODIFIER_PROPERTY_IGNORE_COOLDOWN = 0xf3,
MODIFIER_PROPERTY_CAN_ATTACK_TREES = 0xf4,
MODIFIER_PROPERTY_VISUAL_Z_DELTA = 0xf5,
MODIFIER_PROPERTY_VISUAL_Z_SPEED_BASE_OVERRIDE = 0xf6,
MODIFIER_PROPERTY_INCOMING_DAMAGE_ILLUSION = 0xf7,
MODIFIER_PROPERTY_DONT_GIVE_VISION_OF_ATTACKER = 0xf8,
MODIFIER_PROPERTY_TOOLTIP2 = 0xf9,
MODIFIER_EVENT_ON_ATTACK_RECORD_DESTROY = 0xfa,
MODIFIER_EVENT_ON_PROJECTILE_OBSTRUCTION_HIT = 0xfb,
MODIFIER_PROPERTY_SUPPRESS_TELEPORT = 0xfc,
MODIFIER_EVENT_ON_ATTACK_CANCELLED = 0xfd,
MODIFIER_PROPERTY_SUPPRESS_CLEAVE = 0xfe,
MODIFIER_PROPERTY_BOT_ATTACK_SCORE_BONUS = 0xff,
MODIFIER_PROPERTY_ATTACKSPEED_REDUCTION_PERCENTAGE = 0x100,
MODIFIER_PROPERTY_MOVESPEED_REDUCTION_PERCENTAGE = 0x101,
MODIFIER_PROPERTY_ATTACK_WHILE_MOVING_TARGET = 0x102,
MODIFIER_PROPERTY_ATTACKSPEED_PERCENTAGE = 0x103,
MODIFIER_EVENT_ON_ATTEMPT_PROJECTILE_DODGE = 0x104,
MODIFIER_EVENT_ON_PREDEBUFF_APPLIED = 0x105,
MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_STACKING = 0x106,
MODIFIER_PROPERTY_SPELL_REDIRECT_TARGET = 0x107,
MODIFIER_PROPERTY_TURN_RATE_CONSTANT = 0x108,
MODIFIER_PROPERTY_RAT_PACK = 0x109,
MODIFIER_PROPERTY_PHYSICALDAMAGEOUTGOING_PERCENTAGE = 0x10a,
MODIFIER_PROPERTY_KNOCKBACK_AMPLIFICATION_PERCENTAGE = 0x10b,
MODIFIER_PROPERTY_HEALTHBAR_PIPS = 0x10c,
MODIFIER_PROPERTY_INCOMING_DAMAGE_CONSTANT = 0x10d,
MODIFIER_EVENT_SPELL_APPLIED_SUCCESSFULLY = 0x10e,
MODIFIER_PROPERTY_AVOID_DAMAGE_AFTER_REDUCTIONS = 0x10f,
MODIFIER_FUNCTION_LAST = 0x110,
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: 0x6
enum class ScoutState_t : uint32_t
{
SCOUT_STATE_INIT = 0xffffffffffffffff,
SCOUT_STATE_IDLE = 0x0,
SCOUT_STATE_AT_BASE = 0x1,
SCOUT_STATE_MOVING = 0x2,
SCOUT_STATE_DEAD = 0x3,
SCOUT_NUM_STATES = 0x4,
};
// 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 fogplayerparams_t;
struct audioparams_t;
struct CInButtonState;
struct AmmoIndex_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 AttachmentHandle_t;
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 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 ragdoll_t;
struct CAttributeList;
struct CSoundPatch;
struct sSpiritInfo;
struct CDOTA_Tree;
struct CPathTrack;
struct CLightComponent;
struct IChoreoServices;
struct AnimationUpdateListHandle_t;
struct PhysicsRagdollPose_t;
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x70]; // 0x0
public:
// No members available
};
// Alignment: 1
// Size: 0x98
class CNavVolumeVector : public CNavVolume
{
private:
[[maybe_unused]] uint8_t __pad0070[0x8]; // 0x70
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x14]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0008[0x28]; // 0x8
public:
CUtlSymbolLarge m_scriptClassName; // 0x30
// Static fields:
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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.000000"
// MNetworkMaxValue "256.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "OnCellChanged"
// MNetworkPriority "31"
// MNetworkSerializer "posx"
CNetworkedQuantizedFloat m_vecX; // 0x18
// MNetworkBitCount "13"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "256.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "OnCellChanged"
// MNetworkPriority "31"
// MNetworkSerializer "posy"
CNetworkedQuantizedFloat m_vecY; // 0x20
// MNetworkBitCount "13"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "256.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "OnCellChanged"
// MNetworkPriority "31"
// MNetworkSerializer "posz"
CNetworkedQuantizedFloat m_vecZ; // 0x28
};
// Alignment: 2
// Size: 0x10
class CGameSceneNodeHandle
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkEnable
CEntityHandle m_hOwner; // 0x8
// MNetworkEnable
CUtlStringToken m_name; // 0xc
};
// Alignment: 1
// Size: 0x28
class CHitboxComponent : public CEntityComponent
{
private:
[[maybe_unused]] uint8_t __pad0008[0x1c]; // 0x8
public:
// MNetworkEnable
uint32_t m_bvDisabledHitGroups[1]; // 0x24
// Static fields:
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x16c]; // 0x0
public:
uint8_t m_nTransmitStateOwnedCounter; // 0x16c
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0008[0x8]; // 0x8
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 fields:
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: 0x4
struct AnimationUpdateListHandle_t
{
public:
uint32_t m_Value; // 0x0
};
// Alignment: 2
// Size: 0x28
class CBuoyancyHelper
{
private:
[[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0
public:
float m_flFluidDensity; // 0x18
float m_flDisplacementFromObjects; // 0x1c
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
HSCRIPT m_hScriptScope; // 0x8
private:
[[maybe_unused]] uint8_t __pad0010[0x8c]; // 0x10
public:
int32_t m_nInitialSeed; // 0x9c
// Static fields:
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: 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x8
};
// Alignment: 1
// Size: 0x40
class CPlayerControllerComponent
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
uint64_t m_pButtonStates[3]; // 0x8
};
// Alignment: 14
// 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.000000"
// MNetworkMaxValue "2048.000000"
// MNetworkEncodeFlags
float m_flMaxspeed; // 0x190
// MNetworkEnable
float m_flForceSubtickMoveWhen; // 0x194
float m_flForwardMove; // 0x198
float m_flLeftMove; // 0x19c
float m_flUpMove; // 0x1a0
QAngle m_vecOldViewAngles; // 0x1a4
};
// 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: 5
// Size: 0x38
struct AmmoTypeInfo_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
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: 7
// Size: 0x230
class CModelState
{
private:
[[maybe_unused]] uint8_t __pad0000[0xa0]; // 0x0
public:
// MNetworkEnable
// MNetworkChangeCallback "skeletonModelChanged"
CStrongHandle< InfoForResourceTypeCModel > m_hModel; // 0xa0
// MNetworkDisable
CUtlSymbolLarge m_ModelName; // 0xa8
private:
[[maybe_unused]] uint8_t __pad00b0[0x38]; // 0xb0
public:
// MNetworkEnable
bool m_bClientClothCreationSuppressed; // 0xe8
private:
[[maybe_unused]] uint8_t __pad00e9[0x97]; // 0xe9
public:
// MNetworkEnable
// MNetworkChangeCallback "skeletonMeshGroupMaskChanged"
uint64_t m_MeshGroupMask; // 0x180
private:
[[maybe_unused]] uint8_t __pad0188[0x9a]; // 0x188
public:
// MNetworkEnable
// MNetworkChangeCallback "skeletonMotionTypeChanged"
int8_t m_nIdealMotionType; // 0x222
// MNetworkDisable
int8_t m_nForceLOD; // 0x223
// MNetworkDisable
int8_t m_nClothUpdateFlags; // 0x224
};
// Alignment: 8
// Size: 0x3f0
class CSkeletonInstance : public CGameSceneNode
{
private:
[[maybe_unused]] uint8_t __pad0150[0x10]; // 0x150
public:
// MNetworkEnable
CModelState m_modelState; // 0x160
// MNetworkEnable
bool m_bIsAnimationEnabled; // 0x390
// MNetworkEnable
bool m_bUseParentRenderBounds; // 0x391
// MNetworkDisable
bool m_bDisableSolidCollisionsForHierarchy; // 0x392
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; // 0x394
// MNetworkEnable
uint8_t m_nHitboxSet; // 0x398
};
// Alignment: 3
// Size: 0x28
class CNetworkOriginQuantizedVector
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
// MNetworkBitCount "19"
// MNetworkMinValue "-16384.000000"
// MNetworkMaxValue "16384.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkOriginQuantizedVector"
CNetworkedQuantizedFloat m_vecX; // 0x10
// MNetworkBitCount "19"
// MNetworkMinValue "-16384.000000"
// MNetworkMaxValue "16384.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkOriginQuantizedVector"
CNetworkedQuantizedFloat m_vecY; // 0x18
// MNetworkBitCount "19"
// MNetworkMinValue "-16384.000000"
// MNetworkMaxValue "16384.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkOriginQuantizedVector"
CNetworkedQuantizedFloat m_vecZ; // 0x20
};
// Alignment: 3
// Size: 0x28
class CNetworkVelocityVector
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
// MNetworkBitCount "18"
// MNetworkMinValue "-4096.000000"
// MNetworkMaxValue "4096.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkVelocityVector"
CNetworkedQuantizedFloat m_vecX; // 0x10
// MNetworkBitCount "18"
// MNetworkMinValue "-4096.000000"
// MNetworkMaxValue "4096.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkVelocityVector"
CNetworkedQuantizedFloat m_vecY; // 0x18
// MNetworkBitCount "18"
// MNetworkMinValue "-4096.000000"
// MNetworkMaxValue "4096.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkVelocityVector"
CNetworkedQuantizedFloat m_vecZ; // 0x20
};
// Alignment: 3
// Size: 0x28
class CNetworkViewOffsetVector
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
// MNetworkBitCount "10"
// MNetworkMinValue "-64.000000"
// MNetworkMaxValue "64.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkViewOffsetVector"
CNetworkedQuantizedFloat m_vecX; // 0x10
// MNetworkBitCount "10"
// MNetworkMinValue "-64.000000"
// MNetworkMaxValue "64.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkViewOffsetVector"
CNetworkedQuantizedFloat m_vecY; // 0x18
// MNetworkBitCount "20"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "128.000000"
// MNetworkEncodeFlags
// MNetworkChangeCallback "CNetworkViewOffsetVector"
CNetworkedQuantizedFloat m_vecZ; // 0x20
};
// Alignment: 71
// Size: 0x1d8
class CLightComponent : public CEntityComponent
{
private:
[[maybe_unused]] uint8_t __pad0008[0x40]; // 0x8
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 fields:
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 fields:
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: 0x470
class CBodyComponentSkeletonInstance : public CBodyComponent
{
public:
// MNetworkEnable
CSkeletonInstance m_skeletonInstance; // 0x50
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x440
// Static fields:
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// Static fields:
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);};
};
// Alignment: 14
// Size: 0x208
class CPlayer_MovementServices_Humanoid : public CPlayer_MovementServices
{
public:
float m_flStepSoundTime; // 0x1b8
// MNetworkEnable
// MNetworkUserGroup "LocalPlayerExclusive"
// MNetworkBitCount "17"
// MNetworkMinValue "-4096.000000"
// MNetworkMaxValue "4096.000000"
// 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: 0
// Size: 0x8
class ISkeletonAnimationController
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// No members available
};
// Alignment: 1
// Size: 0x10
class CSkeletonAnimationController : public ISkeletonAnimationController
{
public:
// MNetworkDisable
CSkeletonInstance* m_pSkeletonInstance; // 0x8
};
// Alignment: 8
// Size: 0x28
class CNetworkedSequenceOperation
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkEnable
// MNetworkSerializer "minusone"
// MNetworkChangeCallback "sequenceOpSequenceChanged"
// MNetworkPriority "32"
HSequence m_hSequence; // 0x8
// MNetworkEnable
// MNetworkBitCount "15"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1.000000"
// MNetworkEncodeFlags
// MNetworkPriority "32"
// MNetworkSendProxyRecipientsFilter
// MNetworkUserGroup "m_flCycle"
float m_flPrevCycle; // 0xc
// MNetworkEnable
// MNetworkBitCount "15"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1.000000"
// MNetworkEncodeFlags
// MNetworkPriority "32"
// MNetworkSendProxyRecipientsFilter
// MNetworkUserGroup "m_flCycle"
// MNetworkChangeCallback "sequenceOpCycleChanged"
float m_flCycle; // 0x10
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1.000000"
// 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: 0x4a0
class CBodyComponentBaseModelEntity : public CBodyComponentSkeletonInstance
{
public:
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x470
// Static fields:
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: 10
// Size: 0x68
class CBaseAnimGraphController : public CSkeletonAnimationController
{
public:
// MNetworkEnable
// MNetworkChangeCallback "baseAnimBaseLayerChangedCompat"
CNetworkedSequenceOperation m_baseLayer; // 0x10
// MNetworkDisable
bool m_bSequenceFinished; // 0x38
private:
[[maybe_unused]] uint8_t __pad0039[0x3]; // 0x39
public:
// MNetworkDisable
float m_flLastEventCycle; // 0x3c
// MNetworkEnable
// MNetworkBitCount "10"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "5.000000"
// MNetworkEncodeFlags
// MNetworkPriority "32"
// MNetworkChangeCallback "playbackRateChangedCompat"
CNetworkedQuantizedFloat m_flPlaybackRate; // 0x40
// MNetworkDisable
float m_flPrevAnimTime; // 0x48
// MNetworkEnable
// MNetworkChangeCallback "clientSideAnimationChangedCompat"
bool m_bClientSideAnimation; // 0x4c
// MNetworkDisable
bool m_bNetworkedAnimationInputsChanged; // 0x4d
private:
[[maybe_unused]] uint8_t __pad004e[0x2]; // 0x4e
public:
// MNetworkEnable
// MNetworkPriority "32"
// MNetworkChangeCallback "clientSideAnimCycleResetCompat"
int32_t m_nNewSequenceParity; // 0x50
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_nResetEventsParity; // 0x54
// MNetworkEnable
AnimLoopMode_t m_nAnimLoopMode; // 0x58
};
// Alignment: 2
// Size: 0x10
class IntervalTimer
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkEnable
GameTime_t m_timestamp; // 0x8
// MNetworkEnable
WorldGroupId_t m_nWorldGroupId; // 0xc
};
// Alignment: 4
// Size: 0x18
class CountdownTimer
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x38]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x50]; // 0x0
public:
CUtlVector< CAI_Expresser* > m_ExpresserTargets; // 0x50
};
// Alignment: 5
// Size: 0x240
class CResponseQueue::CDeferredResponse
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x11]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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: 10
// Size: 0xa
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
bool m_bHull_Small; // 0x9
};
// Alignment: 4
// Size: 0x40
class CConstantForceController
{
private:
[[maybe_unused]] uint8_t __pad0000[0xc]; // 0x0
public:
Vector m_linear; // 0xc
RotationVector m_angular; // 0x18
Vector m_linearSave; // 0x24
RotationVector m_angularSave; // 0x30
};
// Alignment: 4
// Size: 0x20
class CMotorController
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0008[0x10]; // 0x8
public:
// Static fields:
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);};
};
// 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.000000"
// MNetworkMaxValue "4.000000"
// 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.000000"
// MNetworkMaxValue "1.000000"
// 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 fields:
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 int32_t &Get_m_nPredictionRandomSeedServer(){return *reinterpret_cast<int32_t*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[7]->m_instance);};
static CBasePlayerController* &Get_m_pPredictionPlayerController(){return *reinterpret_cast<CBasePlayerController**>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[8]->m_instance);};
static bool &Get_sm_bDatadescValidating(){return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("server.dll")->FindDeclaredClass("CBaseEntity")->m_static_fields[9]->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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
SimpleConstraintSoundProfile::SimpleConstraintsSoundProfileKeypoints_t eKeypoints; // 0x8
float m_keyPoints[2]; // 0xc
float m_reversalSoundThresholds[3]; // 0x14
};
// Alignment: 8
// Size: 0x88
class ConstraintSoundInfo
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0098[0x8]; // 0x98
public:
Vector m_vStartPos; // 0xa0
float m_flSearchDist; // 0xac
};
// Alignment: 8
// Size: 0x30
struct VPhysicsCollisionAttribute_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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.000000"
// MNetworkMaxValue "1023.000000"
// MNetworkEncodeFlags
float m_flMagnitude; // 0x44
// MNetworkEnable
// MNetworkBitCount "10"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1023.000000"
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
char m_szQuestName[128]; // 0x8
int32_t m_nQuestPhase; // 0x88
};
// Alignment: 10
// Size: 0x58
class CGlowProperty
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
public:
// No members available
};
// Alignment: 4
// Size: 0x20
struct thinkfunc_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0630[0x18]; // 0x630
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
CUtlVector< SummaryTakeDamageInfo_t* > m_vecSummaries; // 0x8
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// No members available
};
// Alignment: 7
// Size: 0x68
class CAttributeManager
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// No members available
};
// Alignment: 0
// Size: 0x8
class INextBotEventResponder
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// No members available
};
// Alignment: 15
// Size: 0xa0
class CAnimationLayer
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
// MNetworkChangeCallback "animationLayerOpChanged"
CNetworkedSequenceOperation m_op; // 0x30
// MNetworkEnable
// MNetworkChangeCallback "animationLayerOrderChanged"
int32_t m_nOrder; // 0x58
// MNetworkEnable
// MNetworkBitCount "10"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "5.000000"
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
CNetworkedSequenceOperation m_currentOp; // 0x8
float m_flCurrentPlaybackRate; // 0x30
float m_flCurrentAnimTime; // 0x34
TransitioningLayer_t m_transitioningLayers[4]; // 0x38
CBaseAnimatingController* m_pOwner; // 0x158
};
// Alignment: 14
// Size: 0x238
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.000000"
// MNetworkMaxValue "5.000000"
// MNetworkEncodeFlags
// MNetworkPriority "32"
// MNetworkChangeCallback "playbackRateChanged"
CNetworkedQuantizedFloat m_flPlaybackRate; // 0x48
// MNetworkDisable
float m_flPrevAnimTime; // 0x50
// MNetworkEnable
// MNetworkBitCount "11"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1.000000"
// 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
// MNetworkEnable
AnimLoopMode_t m_nAnimLoopMode; // 0xc0
private:
[[maybe_unused]] uint8_t __pad00c4[0x14]; // 0xc4
public:
// MNetworkDisable
CSequenceTransitioner2 m_SequenceTransitioner; // 0xd8
};
// Alignment: 1
// Size: 0x290
class CBaseAnimatingOverlayController : public CBaseAnimatingController
{
public:
// MNetworkEnable
// MNetworkUserGroup "overlay_vars"
// MNetworkChangeCallback "OnOverlaysChanged2"
CUtlVectorEmbeddedNetworkVar< CAnimationLayer > m_AnimOverlay; // 0x238
};
// Alignment: 2
// Size: 0x730
class CBodyComponentBaseAnimatingOverlay : public CBodyComponentSkeletonInstance
{
public:
// MNetworkEnable
CBaseAnimatingOverlayController m_animationController; // 0x470
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x700
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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: 0x6d0
class CBodyComponentBaseAnimating : public CBodyComponentSkeletonInstance
{
public:
// MNetworkEnable
CBaseAnimatingController m_animationController; // 0x470
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x6a8
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x18]; // 0x498
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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: 3
// Size: 0x30
struct RegionTriggerBoxes_t
{
public:
AABB_t regionBox; // 0x0
Vector vRegionBoxOrigin; // 0x18
private:
[[maybe_unused]] uint8_t __pad0024[0x4]; // 0x24
public:
CUtlString strRegionName; // 0x28
};
// Alignment: 2
// Size: 0x8
class sMuertaPartingShotSoulDef
{
public:
CHandle< CBaseEntity > hHeroOwner; // 0x0
CHandle< CBaseEntity > hSoulClone; // 0x4
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
CNetworkUtlVectorBase< int32 > m_vecHeroIDs; // 0x30
};
// Alignment: 2
// Size: 0x38
class CHeroStatueLiked
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
PlayerID_t m_iPlayerIDLiker; // 0x30
// MNetworkEnable
PlayerID_t m_iPlayerIDLiked; // 0x34
};
// Alignment: 2
// Size: 0x10
class DOTA_AssassinMinigameNetworkState
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkEnable
uint16_t nAssassinState; // 0x8
// MNetworkEnable
uint16_t nVictimHeroID; // 0xa
};
// Alignment: 3
// Size: 0x40
class CDOTA_AbilityDraftAbilityState
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
char m_CustomShopName[256]; // 0x30
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CDOTACustomShopItemInfo > m_CustomShopItems; // 0x130
};
// Alignment: 104
// Size: 0x760
class CDOTABaseGameMode : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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_flIntelligenceMres; // 0x568
// MNetworkEnable
float m_flIntelligenceSpellAmpPercent; // 0x56c
// MNetworkEnable
float m_flStrengthMagicResistancePercent; // 0x570
// MNetworkEnable
float m_flAttributeAllDamage; // 0x574
// MNetworkEnable
float m_flDraftingHeroPickSelectTimeOverride; // 0x578
// MNetworkEnable
float m_flDraftingBanningTimeOverride; // 0x57c
// MNetworkEnable
bool m_bPauseEnabled; // 0x580
private:
[[maybe_unused]] uint8_t __pad0581[0x3]; // 0x581
public:
// MNetworkEnable
float m_flCustomScanCooldown; // 0x584
// MNetworkEnable
float m_flCustomGlyphCooldown; // 0x588
// MNetworkEnable
float m_flCustomBackpackSwapCooldown; // 0x58c
// MNetworkEnable
float m_flCustomBackpackCooldownPercent; // 0x590
// MNetworkEnable
bool m_bDefaultRuneSpawnLogic; // 0x594
// MNetworkEnable
bool m_bEnableFreeCourierMode; // 0x595
// MNetworkEnable
bool m_bAllowNeutralItemDrops; // 0x596
// MNetworkEnable
bool m_bEnableNeutralStash; // 0x597
// MNetworkEnable
bool m_bEnableNeutralStashTeamViewOnly; // 0x598
// MNetworkEnable
bool m_bEnableNeutralItemHideUndiscovered; // 0x599
// MNetworkEnable
bool m_bEnableSendToStash; // 0x59a
// MNetworkEnable
bool m_bForceRightClickAttackDisabled; // 0x59b
private:
[[maybe_unused]] uint8_t __pad059c[0x4]; // 0x59c
public:
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CDOTACustomShopInfo > m_vecCustomShopInfo; // 0x5a0
// MNetworkEnable
bool m_bCanSellAnywhere; // 0x5f0
private:
[[maybe_unused]] uint8_t __pad05f1[0x3]; // 0x5f1
public:
// MNetworkEnable
float m_flCameraNearZ; // 0x5f4
// MNetworkEnable
float m_flCameraFarZ; // 0x5f8
// MNetworkEnable
int32_t m_nCustomRadiantScore; // 0x5fc
// MNetworkEnable
int32_t m_nCustomDireScore; // 0x600
// MNetworkEnable
bool m_bAbilityUpgradeWhitelistEnabled; // 0x604
private:
[[maybe_unused]] uint8_t __pad0605[0x3]; // 0x605
public:
// MNetworkEnable
CNetworkUtlVectorBase< AbilityID_t > m_vecAbilityUpgradeWhitelist; // 0x608
// MNetworkEnable
bool m_bGiveFreeTPOnDeath; // 0x620
private:
[[maybe_unused]] uint8_t __pad0621[0x3]; // 0x621
public:
// MNetworkEnable
int32_t m_nInnateMeleeDamageBlockPct; // 0x624
// MNetworkEnable
int32_t m_nInnateMeleeDamageBlockAmount; // 0x628
// MNetworkEnable
int32_t m_nInnateMeleeDamageBlockPerLevelAmount; // 0x62c
// MNetworkEnable
float m_flWaterRuneSpawnInterval; // 0x630
private:
[[maybe_unused]] uint8_t __pad0634[0x1c]; // 0x634
public:
bool m_bSelectionGoldPenaltyEnabled; // 0x650
bool m_bRemoveIllusionsOnDeath; // 0x651
bool m_bRandomHeroBonusItemGrantDisabled; // 0x652
bool m_bDisableClumpingBehaviorByDefault; // 0x653
bool m_bRuneTypeEnabled[10]; // 0x654
bool m_bOverrideBotLateGame; // 0x65e
bool m_bBotsAlwaysPushWithHuman; // 0x65f
bool m_bBotsInLateGame; // 0x660
private:
[[maybe_unused]] uint8_t __pad0661[0x3]; // 0x661
public:
int32_t m_nBotMaxPushTier; // 0x664
float m_flFountainPercentageHealthRegen; // 0x668
float m_flFountainPercentageManaRegen; // 0x66c
float m_flFountainConstantManaRegen; // 0x670
float m_flPowerRuneSpawnInterval; // 0x674
float m_flBountyRuneSpawnInterval; // 0x678
};
// Alignment: 11
// Size: 0x810
class CDOTATurboGameMode : public CDOTABaseGameMode
{
private:
[[maybe_unused]] uint8_t __pad0760[0x18]; // 0x760
public:
int32_t m_nHighestLevelInCurrentGame; // 0x778
private:
[[maybe_unused]] uint8_t __pad077c[0x34]; // 0x77c
public:
CUtlVector< float32 > m_ExtraMeleeCreepTimes; // 0x7b0
CUtlVector< float32 > m_ExtraRangedCreepTimes; // 0x7c8
CUtlVector< float32 > m_ExtraSiegeCreepTimes; // 0x7e0
int32_t m_nExtraGoldPerWave; // 0x7f8
int32_t m_nExtraXPPerWave; // 0x7fc
float m_flNextRewardDistributionTime; // 0x800
float m_flNextWaveRecalculationTime; // 0x804
float m_flNextNeutralItemDistributionTime; // 0x808
bool m_bInOvertime; // 0x80c
bool m_bDistributingPassiveGoldAndXp; // 0x80d
};
// Alignment: 5
// Size: 0x818
class CDOTANewPlayerPoolGameMode : public CDOTABaseGameMode
{
public:
int32_t m_nHighestLevelInCurrentGame; // 0x760
private:
[[maybe_unused]] uint8_t __pad0764[0x64]; // 0x764
public:
CUtlVector< float32 > m_ExtraMeleeCreepTimes; // 0x7c8
CUtlVector< float32 > m_ExtraRangedCreepTimes; // 0x7e0
CUtlVector< float32 > m_ExtraSiegeCreepTimes; // 0x7f8
bool m_bInOvertime; // 0x810
};
// Alignment: 0
// Size: 0x760
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: 86
// Size: 0x248
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
int32_t m_iTokenTier; // 0x6c
item_definition_index_t m_iAssociatedConsumableItemDef; // 0x70
uint32_t m_nRequiredEffectsMask; // 0x74
int32_t m_iAssociatedEventID; // 0x78
int32_t m_iMaxLevel; // 0x7c
int32_t m_iItemBaseLevel; // 0x80
float m_flItemLevelByGameTime; // 0x84
int32_t m_iItemCost; // 0x88
int32_t m_iItemInitialCharges; // 0x8c
int32_t m_iItemNeutralTierIndex; // 0x90
int32_t m_iItemStockMax; // 0x94
float m_fItemStockTime; // 0x98
private:
[[maybe_unused]] uint8_t __pad009c[0x4]; // 0x9c
public:
int32* m_pItemShopTagKeys; // 0xa0
AbilityID_t m_nRecipeResultAbilityID; // 0xa8
private:
[[maybe_unused]] uint8_t __pad00ac[0x4]; // 0xac
public:
CUtlVector< AbilityID_t > m_vecItemCombinesInto; // 0xb0
CUtlVector< ItemRecipe_t > m_vecItemRecipes; // 0xc8
int32_t m_nUpgradeGoal; // 0xe0
ItemQuality_t m_ItemQuality; // 0xe4
float m_flModifierValue; // 0xe8
float m_flModifierValueBonus; // 0xec
CUtlVector< CUtlString > m_InvalidHeroes; // 0xf0
private:
[[maybe_unused]] uint8_t __pad0108[0xcc]; // 0x108
public:
bool m_bHasScepterUpgrade; // 0x1d4
bool m_bHasShardUpgrade; // 0x1d5
bool m_bSharedWithTeammates; // 0x1d6
private:
[[maybe_unused]] uint8_t __pad01d7[0x1]; // 0x1d7
public:
int32_t m_nCastRangeBuffer; // 0x1d8
int32_t m_nSpecialAbilities; // 0x1dc
DOTASpecialAbility_t* m_pSpecialAbilities; // 0x1e0
CUtlVector< DOTAOutgoingBonus_t > m_OutgoingBonuses; // 0x1e8
char* m_pModelName; // 0x200
char* m_pModelAlternateName; // 0x208
char* m_pEffectName; // 0x210
char* m_pPingOverrideText; // 0x218
char* m_pszRequiredCustomShopName; // 0x220
char* m_pszLinkedScepterAbility; // 0x228
char* m_pszLinkedShardAbility; // 0x230
int32_t m_nKillToastOverride; // 0x238
int32_t m_iLevelsBetweenUpgrades; // 0x23c
int32_t m_iRequiredLevel; // 0x240
struct
{
uint8_t m_bIsItem: 1;
uint8_t m_bItemIsRecipe: 1;
uint8_t m_bItemIsRecipeGenerated: 1;
uint8_t m_bItemRecipeConsumesCharges: 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;
uint8_t __pad2: 5;
}; // 34 bits
};
// Alignment: 1
// Size: 0x4
struct LeagueID_t
{
public:
uint32_t m_Value; // 0x0
};
// Alignment: 311
// Size: 0x5710
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[15]; // 0x420
// MNetworkEnable
float m_flNeutralInitialSpawnOffset; // 0x45c
float m_flOverride_dota_tree_regrow_time; // 0x460
// MNetworkEnable
int32_t m_iGameMode; // 0x464
// MNetworkEnable
// MNetworkChangeCallback "OnGameModeEntityChanged"
CHandle< CBaseEntity > m_hGameModeEntity; // 0x468
// MNetworkEnable
CHandle< CBaseEntity > m_hCustomHeroPickRulesEntity; // 0x46c
// MNetworkEnable
GameTime_t m_flHeroPickStateTransitionTime; // 0x470
private:
[[maybe_unused]] uint8_t __pad0474[0x4]; // 0x474
public:
// MNetworkEnable
// MNetworkEncoder
uint64_t m_iPlayerIDsInControl; // 0x478
// MNetworkEnable
bool m_bSameHeroSelectionEnabled; // 0x480
// MNetworkEnable
bool m_bUseCustomHeroXPValue; // 0x481
// MNetworkEnable
bool m_bUseBaseGoldBountyOnHeroes; // 0x482
// MNetworkEnable
bool m_bUseUniversalShopMode; // 0x483
// MNetworkEnable
bool m_bHideKillMessageHeaders; // 0x484
private:
[[maybe_unused]] uint8_t __pad0485[0x3]; // 0x485
public:
// MNetworkEnable
float m_flHeroMinimapIconScale; // 0x488
// MNetworkEnable
float m_flCreepMinimapIconScale; // 0x48c
// MNetworkEnable
bool m_bCreepSpawningEnabled; // 0x490
private:
[[maybe_unused]] uint8_t __pad0491[0x3]; // 0x491
public:
// MNetworkEnable
float m_flRuneMinimapIconScale; // 0x494
// MNetworkEnable
char m_CustomVictoryMessage[256]; // 0x498
// MNetworkEnable
float m_flCustomGameEndDelay; // 0x598
// MNetworkEnable
float m_flCustomGameSetupAutoLaunchDelay; // 0x59c
// MNetworkEnable
float m_flCustomGameSetupTimeout; // 0x5a0
// MNetworkEnable
float m_flCustomVictoryMessageDuration; // 0x5a4
// MNetworkEnable
float m_flHeroSelectPenaltyTime; // 0x5a8
// MNetworkEnable
bool m_bCustomGameSetupAutoLaunchEnabled; // 0x5ac
// MNetworkEnable
bool m_bCustomGameTeamSelectionLocked; // 0x5ad
// MNetworkEnable
bool m_bCustomGameEnablePickRules; // 0x5ae
// MNetworkEnable
bool m_bCustomGameAllowHeroPickMusic; // 0x5af
// MNetworkEnable
bool m_bCustomGameAllowMusicAtGameStart; // 0x5b0
// MNetworkEnable
bool m_bCustomGameAllowBattleMusic; // 0x5b1
// MNetworkEnable
bool m_bCustomGameDisableIK; // 0x5b2
// MNetworkEnable
bool m_bCustomGameAllowSecondaryAbilitiesOnOtherUnits; // 0x5b3
// MNetworkEnable
int32_t m_iCMModePickBanOrder; // 0x5b4
// MNetworkEnable
int32_t m_iCDModePickBanOrder; // 0x5b8
// MNetworkEnable
int32_t m_nGGTeam; // 0x5bc
// MNetworkEnable
GameTime_t m_flGGEndsAtTime; // 0x5c0
// MNetworkEnable
bool m_bGGCalled; // 0x5c4
// MNetworkEnable
bool m_bWhiteListEnabled; // 0x5c5
private:
[[maybe_unused]] uint8_t __pad05c6[0x2]; // 0x5c6
public:
// MNetworkEnable
// MNetworkEncoder
// MNetworkChangeCallback "OnWhitelistChanged"
uint64_t m_bItemWhiteList[4]; // 0x5c8
// MNetworkEnable
int32_t m_nLastHitUIMode; // 0x5e8
// MNetworkEnable
bool m_bHUDTimerTutorialMode; // 0x5ec
private:
[[maybe_unused]] uint8_t __pad05ed[0x3]; // 0x5ed
public:
CountdownTimer m_HeroPickMiscTimer; // 0x5f0
CountdownTimer m_ExtraTimeTimer; // 0x608
// MNetworkEnable
float m_fExtraTimeRemaining[2]; // 0x620
// MNetworkEnable
bool m_bHeroRespawnEnabled; // 0x628
// MNetworkEnable
bool m_bIsRandomingEnabled; // 0x629
private:
[[maybe_unused]] uint8_t __pad062a[0x6]; // 0x62a
public:
CUtlVector< int32 > m_HeroPickPhaseBitfield; // 0x630
bool m_bHasSwapped[64]; // 0x648
// MNetworkEnable
PlayerID_t m_iCaptainPlayerIDs[2]; // 0x688
// MNetworkEnable
int32_t m_BannedHeroes[24]; // 0x690
// MNetworkEnable
int32_t m_SelectedHeroes[24]; // 0x6f0
// MNetworkEnable
int32_t m_iActiveTeam; // 0x750
// MNetworkEnable
int32_t m_iStartingTeam; // 0x754
// MNetworkEnable
int32_t m_iPenaltyLevelRadiant; // 0x758
// MNetworkEnable
int32_t m_iPenaltyLevelDire; // 0x75c
// MNetworkEnable
bool m_bIsLoadingScenario; // 0x760
private:
[[maybe_unused]] uint8_t __pad0761[0x7]; // 0x761
public:
CUtlVector< int32 > m_vecBanNominatedHeroes; // 0x768
// MNetworkEnable
CNetworkUtlVectorBase< int32 > m_vecNewBannedHeroes; // 0x780
// MNetworkEnable
CNetworkUtlVectorBase< int32 > m_vecWhitelistedHeroes; // 0x798
// MNetworkEnable
CNetworkUtlVectorBase< int32 > m_vecBlacklistedHeroes; // 0x7b0
// MNetworkEnable
bool m_bHideBlacklistedHeroes; // 0x7c8
private:
[[maybe_unused]] uint8_t __pad07c9[0x3]; // 0x7c9
public:
// MNetworkEnable
int32_t m_nSeriesType; // 0x7cc
// MNetworkEnable
int32_t m_nRadiantSeriesWins; // 0x7d0
// MNetworkEnable
int32_t m_nDireSeriesWins; // 0x7d4
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecAvailableHerosPerPlayerID; // 0x7d8
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecLockedHerosByPlayerID; // 0x848
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CHeroesPerPlayer > m_vecDisabledRandomHerosByPlayerID; // 0x8b8
int32_t m_CustomGameForceSelectHero[24]; // 0x928
float m_flGoldTime; // 0x988
float m_flXPTime; // 0x98c
GameTime_t m_flCreepSpawntime; // 0x990
float m_flAnnounceStartTime; // 0x994
// MNetworkEnable
int32_t m_iGoodTomeCount; // 0x998
// MNetworkEnable
int32_t m_iBadTomeCount; // 0x99c
// MNetworkEnable
GameTime_t m_flPreGameStartTime; // 0x9a0
// MNetworkEnable
GameTime_t m_flGameStartTime; // 0x9a4
// MNetworkEnable
GameTime_t m_flGameEndTime; // 0x9a8
// MNetworkEnable
float m_flGameLoadTime; // 0x9ac
// MNetworkEnable
int32_t m_iCustomGameScore[2]; // 0x9b0
// MNetworkEnable
int32_t m_nCustomGameDifficulty; // 0x9b8
bool m_bEnemyModifiersEnabled; // 0x9bc
private:
[[maybe_unused]] uint8_t __pad09bd[0x3]; // 0x9bd
public:
int32_t m_iWaves; // 0x9c0
int32_t m_iCreepUpgradeState; // 0x9c4
// MNetworkEnable
GameTime_t m_fGoodGlyphCooldown; // 0x9c8
// MNetworkEnable
GameTime_t m_fBadGlyphCooldown; // 0x9cc
// MNetworkEnable
GameTime_t m_flGlyphCooldowns[15]; // 0x9d0
// MNetworkEnable
GameTime_t m_fGoodRadarCooldown; // 0xa0c
// MNetworkEnable
GameTime_t m_fBadRadarCooldown; // 0xa10
// MNetworkEnable
GameTime_t m_flRadarCooldowns[15]; // 0xa14
// MNetworkEnable
float m_flOutpostTimes[24]; // 0xa50
// MNetworkEnable
bool m_bIsNightstalkerNight; // 0xab0
// MNetworkEnable
bool m_bIsTemporaryNight; // 0xab1
// MNetworkEnable
bool m_bIsTemporaryDay; // 0xab2
private:
[[maybe_unused]] uint8_t __pad0ab3[0x1]; // 0xab3
public:
// MNetworkEnable
int32_t m_nRiverType; // 0xab4
// MNetworkEnable
PlayerID_t m_nTeamFeaturedPlayerID[15]; // 0xab8
// MNetworkEnable
item_definition_index_t m_nTeamVersusScreen[15]; // 0xaf4
float m_flGoldRedistributeTime; // 0xb30
int32_t m_nGoldToRedistribute[2]; // 0xb34
GameTime_t m_flNextPreGameThink; // 0xb3c
GameTime_t m_flNextAllDraftGoldThink; // 0xb40
private:
[[maybe_unused]] uint8_t __pad0b44[0x4]; // 0xb44
public:
double m_flTimeEnteredState; // 0xb48
uint32_t m_unRiverAccountID; // 0xb50
private:
[[maybe_unused]] uint8_t __pad0b54[0x4]; // 0xb54
public:
itemid_t m_ulRiverItemID; // 0xb58
private:
[[maybe_unused]] uint8_t __pad0b60[0x40]; // 0xb60
public:
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< CDOTA_ItemStockInfo > m_vecItemStockInfo; // 0xba0
// MNetworkEnable
DOTA_AssassinMinigameNetworkState m_AssassinMiniGameNetData; // 0xc10
// MNetworkEnable
int32_t m_nGameWinner; // 0xc20
private:
[[maybe_unused]] uint8_t __pad0c24[0x4]; // 0xc24
public:
// MNetworkEnable
MatchID_t m_unMatchID64; // 0xc28
// MNetworkEnable
bool m_bMatchSignoutComplete; // 0xc30
private:
[[maybe_unused]] uint8_t __pad0c31[0x3]; // 0xc31
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hSideShop1; // 0xc34
// MNetworkEnable
CHandle< CBaseEntity > m_hSideShop2; // 0xc38
// MNetworkEnable
CHandle< CBaseEntity > m_hSecretShop1; // 0xc3c
// MNetworkEnable
CHandle< CBaseEntity > m_hSecretShop2; // 0xc40
// MNetworkEnable
CHandle< CBaseEntity > m_hTeamFountains[15]; // 0xc44
// MNetworkEnable
CHandle< CBaseEntity > m_hTeamForts[15]; // 0xc80
// MNetworkEnable
CHandle< CBaseEntity > m_hTeamShops[15]; // 0xcbc
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerGood; // 0xcf8
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerBad; // 0xcfc
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerSpectator; // 0xd00
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerGood_KillingSpree; // 0xd04
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerBad_KillingSpree; // 0xd08
// MNetworkEnable
CHandle< CBaseEntity > m_hAnnouncerSpectator_KillingSpree; // 0xd0c
// MNetworkEnable
bool m_arrTier1TowerDestroyed[15]; // 0xd10
// MNetworkEnable
bool m_arrTier2TowerDestroyed[15]; // 0xd1f
// MNetworkEnable
bool m_arrTier3TowerDestroyed[15]; // 0xd2e
// MNetworkEnable
bool m_bTier1TowerDestroyed; // 0xd3d
// MNetworkEnable
bool m_bTier2TowerDestroyed; // 0xd3e
// MNetworkEnable
bool m_bTier3TowerDestroyed; // 0xd3f
float m_fTimeOfDay; // 0xd40
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iNetTimeOfDay; // 0xd44
// MNetworkEnable
int32_t m_nLoadedPlayers; // 0xd48
// MNetworkEnable
int32_t m_nExpectedPlayers; // 0xd4c
private:
[[maybe_unused]] uint8_t __pad0d50[0x8]; // 0xd50
public:
// MNetworkEnable
int32_t m_iMinimapDebugGridState; // 0xd58
private:
[[maybe_unused]] uint8_t __pad0d5c[0x7c]; // 0xd5c
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iFoWFrameNumber; // 0xdd8
// MNetworkEnable
Vector m_vWeatherWindDirection; // 0xddc
KeyValues* m_pKVPostGameTable; // 0xde8
KeyValues* m_pKVEventMatchMetadata; // 0xdf0
KeyValues* m_pKVEventSignout; // 0xdf8
private:
[[maybe_unused]] uint8_t __pad0e00[0x58]; // 0xe00
public:
// MNetworkEnable
int32_t m_vecRequiredPlaytestHeroesStorage[24]; // 0xe58
// MNetworkEnable
int32_t m_vecRecommendedPlaytestHeroesStorage[24]; // 0xeb8
// MNetworkEnable
bool m_bAllRequiredPlaytestHeroesPicked; // 0xf18
private:
[[maybe_unused]] uint8_t __pad0f19[0x3]; // 0xf19
public:
// MNetworkEnable
int32_t m_nLastPlaytestPickPhase; // 0xf1c
int32_t m_nCustomGameFowTeamCount; // 0xf20
bool m_bUseAlternateABRules; // 0xf24
bool m_bLobbyIsAssociatedWithGame; // 0xf25
private:
[[maybe_unused]] uint8_t __pad0f26[0x2]; // 0xf26
public:
CountdownTimer m_BotDebugTimer; // 0xf28
// MNetworkEnable
// MNetworkPriority "48"
uint8_t m_BotDebugPushLane[18]; // 0xf40
// MNetworkEnable
uint8_t m_BotDebugDefendLane[18]; // 0xf52
// MNetworkEnable
uint8_t m_BotDebugFarmLane[6]; // 0xf64
// MNetworkEnable
uint8_t m_BotDebugRoam[8]; // 0xf6a
private:
[[maybe_unused]] uint8_t __pad0f72[0x2]; // 0xf72
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hBotDebugRoamTarget[2]; // 0xf74
// MNetworkEnable
uint8_t m_BotDebugRoshan[2]; // 0xf7c
private:
[[maybe_unused]] uint8_t __pad0f7e[0x2]; // 0xf7e
public:
// MNetworkEnable
ERoshanSpawnPhase m_nRoshanRespawnPhase; // 0xf80
// MNetworkEnable
GameTime_t m_flRoshanRespawnPhaseEndTime; // 0xf84
// MNetworkEnable
// MNetworkTypeAlias "CDOTA_AbilityDraftAbilityState[MAX_ABILITY_DRAFT_ABILITIES]"
CUtlVectorEmbeddedNetworkVar< CDOTA_AbilityDraftAbilityState > m_AbilityDraftAbilities; // 0xf88
// MNetworkEnable
bool m_bAbilityDraftCurrentPlayerHasPicked; // 0xff8
private:
[[maybe_unused]] uint8_t __pad0ff9[0x3]; // 0xff9
public:
// MNetworkEnable
int32_t m_nAbilityDraftPlayerTracker; // 0xffc
// MNetworkEnable
int32_t m_nAbilityDraftRoundNumber; // 0x1000
// MNetworkEnable
int32_t m_nAbilityDraftAdvanceSteps; // 0x1004
// MNetworkEnable
int32_t m_nAbilityDraftPhase; // 0x1008
// MNetworkEnable
// MNetworkChangeCallback "OnAbilityDraftHeroesChanged"
int32_t m_nAbilityDraftHeroesChosen[13]; // 0x100c
// MNetworkEnable
bool m_bIsPlayerDraft; // 0x1040
private:
[[maybe_unused]] uint8_t __pad1041[0x3]; // 0x1041
public:
// MNetworkEnable
DOTA_PlayerDraftState m_ePlayerDraftState; // 0x1044
// MNetworkEnable
CNetworkUtlVectorBase< uint8 > m_vecPlayerDraftPickOrder; // 0x1048
// MNetworkEnable
int32_t m_nPlayerDraftPick; // 0x1060
// MNetworkEnable
int32_t m_nPlayerDraftActiveTeam; // 0x1064
// MNetworkEnable
float m_flPlayerDraftTimeBank[2]; // 0x1068
CUtlVector< KeyValues* > m_vecARDMHeroes[2]; // 0x1070
int32_t m_nARDMHeroesPrecached; // 0x10a0
float m_fLastARDMPrecache; // 0x10a4
// MNetworkEnable
int32_t m_nAllDraftPhase; // 0x10a8
// MNetworkEnable
bool m_bAllDraftRadiantFirst; // 0x10ac
// MNetworkEnable
bool m_bAllowOverrideVPK; // 0x10ad
private:
[[maybe_unused]] uint8_t __pad10ae[0x2]; // 0x10ae
public:
// MNetworkEnable
int32_t m_nARDMHeroesRemaining[2]; // 0x10b0
CUtlVector< CHandle< CDOTA_BaseNPC_Pet > > m_hGlobalPetList; // 0x10b8
private:
[[maybe_unused]] uint8_t __pad10d0[0x50]; // 0x10d0
public:
int32_t m_nRadiantRoshanKills; // 0x1120
int32_t m_nDireRoshanKills; // 0x1124
int32_t m_nRoshanKillsDay; // 0x1128
int32_t m_nRoshanKillsNight; // 0x112c
int32_t m_nMinibossKills; // 0x1130
int32_t m_nOutpostCaptures; // 0x1134
private:
[[maybe_unused]] uint8_t __pad1138[0xc]; // 0x1138
public:
int32_t m_nDistanceCalculations; // 0x1144
bool m_bLaneVictoryPredicted; // 0x1148
private:
[[maybe_unused]] uint8_t __pad1149[0x7]; // 0x1149
public:
CUtlOrderedMap< PlayerID_t, int32 > m_mapSuccessfulSmokes; // 0x1150
private:
[[maybe_unused]] uint8_t __pad1178[0x10]; // 0x1178
public:
// MNetworkEnable
bool m_bExperimentalGameplay; // 0x1188
private:
[[maybe_unused]] uint8_t __pad1189[0x1f]; // 0x1189
public:
CUtlVector< HeroPickRecord_t > m_vecHeroPickRecord; // 0x11a8
private:
[[maybe_unused]] uint8_t __pad11c0[0x20]; // 0x11c0
public:
CUtlVector< HeroDeathRecord_t > m_vecHeroDeathRecord; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11f8[0x18]; // 0x11f8
public:
CUtlVector< CHandle< CBaseEntity > > m_BadResultPositionTriggers; // 0x1210
CUtlVector< CHandle< CBaseEntity > > m_RoshanPositionTriggers; // 0x1228
CUtlVector< HeroPickRecord_t > m_vecAllDraftHeroPickRecord; // 0x1240
CUtlOrderedMap< PlayerID_t, CUtlVector< AbilityID_t > > m_vecAbilityDraftOrder; // 0x1258
private:
[[maybe_unused]] uint8_t __pad1280[0x18]; // 0x1280
public:
int32_t m_nAllDraftHeroPickCollisionsThisPhase; // 0x1298
private:
[[maybe_unused]] uint8_t __pad129c[0x4]; // 0x129c
public:
CUtlVector< CHandle< CBaseEntity > > m_hRuneSpawners; // 0x12a0
CUtlVector< CHandle< CBaseEntity > > m_hBountyRuneSpawners; // 0x12b8
CUtlVector< CHandle< CBaseEntity > > m_hXPRuneSpawners; // 0x12d0
CUtlVector< CHandle< CBaseEntity > > m_hNeutralSpawners[2]; // 0x12e8
int32_t m_iPreviousRune1; // 0x1318
int32_t m_iPreviousRune2; // 0x131c
CUtlVector< int32 > m_vecAvailableRunes; // 0x1320
float m_fNextPowerupRuneSpawnTime; // 0x1338
float m_fNextBountyRuneSpawnTime; // 0x133c
float m_fNextBountyRunePrepTime; // 0x1340
float m_fNextXPRuneSpawnTime; // 0x1344
float m_fNextXPRunePrepTime; // 0x1348
bool m_aNeutralChoicesLoaded[5]; // 0x134c
bool m_bFirstPowerupRune; // 0x1351
bool m_bFirstBountyRune; // 0x1352
bool m_bFilterMoreGold; // 0x1353
bool m_bAllowOutpostXP; // 0x1354
private:
[[maybe_unused]] uint8_t __pad1355[0x3]; // 0x1355
public:
CHandle< CBaseEntity > m_hRoshanSpawner; // 0x1358
int32_t m_iPreviousSpectators; // 0x135c
uint32_t m_nMaxSpectators; // 0x1360
private:
[[maybe_unused]] uint8_t __pad1364[0x4]; // 0x1364
public:
CUtlVector< CHandle< CBaseEntity > > m_hDroppedItems; // 0x1368
CUtlVector< CHandle< CBaseEntity > > m_hWards; // 0x1380
CHandle< CBaseEntity > m_hGameEvents; // 0x1398
private:
[[maybe_unused]] uint8_t __pad139c[0x1c]; // 0x139c
public:
CUtlVector< CHandle< CBaseEntity > > m_Towers; // 0x13b8
CUtlVector< CHandle< CDOTA_BaseNPC_Tower > > m_TeamTowers[10]; // 0x13d0
CUtlVector< CHandle< CBaseEntity > > m_Outposts; // 0x14c0
CUtlVector< Vector > m_TeamTowerPositions[10]; // 0x14d8
CUtlVector< int32 > m_TeamTowerLevels[10]; // 0x15c8
CUtlVector< int32 > m_TeamTowerLanes[10]; // 0x16b8
CUtlVector< CHandle< CDOTA_BaseNPC_Building > > m_TeamBarracks[10]; // 0x17a8
CUtlVector< CHandle< CDOTA_BaseNPC_Building > > m_TeamShrines[10]; // 0x1898
CountdownTimer m_TempDayTimer; // 0x1988
CountdownTimer m_TempNightTimer; // 0x19a0
CountdownTimer m_NightstalkerNightTimer; // 0x19b8
CountdownTimer m_TempRiverTimer; // 0x19d0
bool m_bUseLenientAFK[2]; // 0x19e8
bool m_bFirstBlood; // 0x19ea
private:
[[maybe_unused]] uint8_t __pad19eb[0x1]; // 0x19eb
public:
int32_t m_nFirstBloodTime; // 0x19ec
CountdownTimer m_CheckIdleTimer; // 0x19f0
PlayerID_t m_nAnnounceHeroPickRadiantPlayerID; // 0x1a08
PlayerID_t m_nAnnounceHeroPickDirePlayerID; // 0x1a0c
CUtlString m_pszLastUsedAbility[64]; // 0x1a10
CUtlVector< CDOTA_ReconnectInfo > m_reconnectinfos; // 0x1c10
CUtlVector< CHandle< CBaseEntity > > m_hEnemyCreepsInBase[10]; // 0x1c28
bool m_bTeamHasAbandonedPlayer[10]; // 0x1d18
bool m_bLobbyHasLeaverDetected; // 0x1d22
bool m_bGameIsForcedSafeToLeave; // 0x1d23
bool m_bLobbyHasDicardMatchResults; // 0x1d24
private:
[[maybe_unused]] uint8_t __pad1d25[0x3]; // 0x1d25
public:
int32_t m_iGameEndReason; // 0x1d28
bool m_bNotifiedPlayerLeaverStatus[64]; // 0x1d2c
bool m_bUploadedReplay; // 0x1d6c
private:
[[maybe_unused]] uint8_t __pad1d6d[0x3]; // 0x1d6d
public:
float m_flLobbyWaitTime; // 0x1d70
bool m_bGameWasLoaded; // 0x1d74
private:
[[maybe_unused]] uint8_t __pad1d75[0x3]; // 0x1d75
public:
int32_t m_nLoadPauseFrameCount; // 0x1d78
private:
[[maybe_unused]] uint8_t __pad1d7c[0x4]; // 0x1d7c
public:
double m_flStateFallbackTransitionTime; // 0x1d80
EngineCountdownTimer m_timerFinishReplay; // 0x1d88
CUtlVector< GameChatLogEntry_t > m_vecChatLog; // 0x1da0
private:
[[maybe_unused]] uint8_t __pad1db8[0x2658]; // 0x1db8
public:
bool m_bFatalErrorAbortGame; // 0x4410
bool m_bFillEmptySlotsWithBots; // 0x4411
private:
[[maybe_unused]] uint8_t __pad4412[0x2]; // 0x4412
public:
uint32_t m_dotaMapSpawnGroup; // 0x4414
private:
[[maybe_unused]] uint8_t __pad4418[0x28]; // 0x4418
public:
// MNetworkEnable
uint32_t m_lobbyType; // 0x4440
// MNetworkEnable
LeagueID_t m_lobbyLeagueID; // 0x4444
// MNetworkEnable
char m_lobbyGameName[256]; // 0x4448
// MNetworkEnable
// MNetworkChangeCallback "OnHeroStatueLiked"
CUtlVectorEmbeddedNetworkVar< CHeroStatueLiked > m_vecHeroStatueLiked; // 0x4548
// MNetworkEnable
int32_t m_CustomGameTeamMaxPlayers[15]; // 0x45b8
private:
[[maybe_unused]] uint8_t __pad45f4[0x3c]; // 0x45f4
public:
// MNetworkEnable
int32_t m_iMutations[5]; // 0x4630
private:
[[maybe_unused]] uint8_t __pad4644[0x4]; // 0x4644
public:
// MNetworkEnable
CNetworkUtlVectorBase< CHandle< CIngameEvent_Base > > m_vecIngameEvents; // 0x4648
// MNetworkEnable
int8_t m_nPrimaryIngameEventIndex; // 0x4660
private:
[[maybe_unused]] uint8_t __pad4661[0x3]; // 0x4661
public:
uint32_t m_nOfrendaPledges; // 0x4664
uint32_t m_nRadiantOfrendas; // 0x4668
uint32_t m_nDireOfrendas; // 0x466c
// MNetworkEnable
bool m_bOfrendaEnabled; // 0x4670
private:
[[maybe_unused]] uint8_t __pad4671[0x7]; // 0x4671
public:
CUtlVector< sMuertaPartingShotSoulDef > m_vecMuertaPartingShotSouls; // 0x4678
private:
[[maybe_unused]] uint8_t __pad4690[0x18]; // 0x4690
public:
// MNetworkEnable
CNetworkUtlVectorBase< NeutralSpawnBoxes_t > m_NeutralSpawnBoxes; // 0x46a8
// MNetworkEnable
CNetworkUtlVectorBase< RegionTriggerBoxes_t > m_RegionTriggerBoxes; // 0x46c0
double m_flLastItemSuggestionRequestTime[15]; // 0x46d8
private:
[[maybe_unused]] uint8_t __pad4750[0xfb8]; // 0x4750
public:
double m_flLastPerfSampleTime; // 0x5708
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
CHandle< CBaseEntity > m_hSource; // 0x8
CHandle< CDOTABaseAbility > 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x4]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0030[0xc]; // 0x30
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
CHandle< CBaseEntity > m_hCaster; // 0x10
CHandle< CBaseEntity > m_hAbility; // 0x14
};
// Alignment: 15
// Size: 0x70
class CDOTA_PlayerChallengeInfo
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x20]; // 0x498
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: 0x270
class CDOTA_ModifierManager
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hModifierParent; // 0x8
private:
[[maybe_unused]] uint8_t __pad000c[0x254]; // 0xc
public:
uint16_t m_nHasTruesightForTeam; // 0x260
uint16_t m_nHasTruesightForTeamValid; // 0x262
uint16_t m_nProvidesFOWPositionForTeam; // 0x264
uint16_t m_nProvidesFOWPositionForTeamValid; // 0x266
int32_t m_iBuffIndex; // 0x268
int32_t m_iLockRefCount; // 0x26c
};
// Alignment: 67
// Size: 0x1d8
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
int32_t nDamageType; // 0x34
int32_t nDamageflags; // 0x38
int32_t nDamageCategory; // 0x3c
int32_t iFailType; // 0x40
int16_t iRecord; // 0x44
private:
[[maybe_unused]] uint8_t __pad0046[0x2]; // 0x46
public:
CDOTA_Orb* pOrb; // 0x48
CDOTA_Orb* pOrb2; // 0x50
int32_t nCost; // 0x58
int32_t nOrdertype; // 0x5c
Vector vOldLoc; // 0x60
Vector vNewLoc; // 0x6c
Vector vCastLocation; // 0x78
bool bCraniumBasherTested; // 0x84
bool bMKBTested; // 0x85
bool bOctarineTested; // 0x86
bool bHeartRegenApplied; // 0x87
bool bSangeAmpApplied; // 0x88
bool bLocketAmpApplied; // 0x89
bool bPaladinAmpApplied; // 0x8a
bool bBlademailApplied; // 0x8b
bool bForceFieldApplied; // 0x8c
bool bKayaApplied; // 0x8d
bool bStoutConsidered; // 0x8e
bool bInterrupted; // 0x8f
bool bDiffusalApplied; // 0x90
bool bChainLightningConsidered; // 0x91
bool bSuppressDamage; // 0x92
bool bRangedAttack; // 0x93
bool bProcessProcs; // 0x94
bool bProjectileIsFromIllusion; // 0x95
bool bHasMagicComponent; // 0x96
bool bIsSpellLifesteal; // 0x97
CEntityIndex pnMagicStickProcEntityIndices[64]; // 0x98
bool bBloodstoneRegenApplied; // 0x198
bool bShroudManaRestoreApplied; // 0x199
bool bPhylacteryApplied; // 0x19a
bool bIgnoreNegativeValuesIfDebuffImmune; // 0x19b
bool bIgnorePositiveValuesIfDebuffImmune; // 0x19c
bool bIgnoreAllIfDebuffImmune; // 0x19d
bool bAlsoIgnoreBuffsIfDebuffImmune; // 0x19e
bool bIgnoreLowerIfDebuffImmune; // 0x19f
float flIgnoreLowerIfDebuffImmune; // 0x1a0
bool bIgnoreHigherIfDebuffImmune; // 0x1a4
private:
[[maybe_unused]] uint8_t __pad01a5[0x3]; // 0x1a5
public:
float flIgnoreHigherIfDebuffImmune; // 0x1a8
private:
[[maybe_unused]] uint8_t __pad01ac[0x4]; // 0x1ac
public:
char* pszAbilitySpecialName; // 0x1b0
int32_t nAbilitySpecialLevel; // 0x1b8
CHandle< CBaseEntity > hattacker; // 0x1bc
CHandle< CBaseEntity > htarget; // 0x1c0
CHandle< CBaseEntity > hunit; // 0x1c4
CHandle< CDOTABaseAbility > inflictor; // 0x1c8
private:
[[maybe_unused]] uint8_t __pad01cc[0x4]; // 0x1cc
public:
CDOTA_Buff* pAddedBuff; // 0x1d0
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x96]; // 0x498
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: 40
// Size: 0x558
class CDOTABaseAbility : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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.000000"
// MNetworkMaxValue "1024.000000"
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:
// MNetworkEnable
int32_t m_nMaxLevelOverride; // 0x504
CHandle< CBaseEntity > m_hReflectionCause; // 0x508
private:
[[maybe_unused]] uint8_t __pad050c[0x24]; // 0x50c
public:
CHandle< CBaseEntity > m_pReflectionSourceAbility; // 0x530
private:
[[maybe_unused]] uint8_t __pad0534[0xc]; // 0x534
public:
item_definition_index_t m_nBackedByEconItemIndex; // 0x540
};
// Alignment: 56
// Size: 0x600
class CDOTA_Item : public CDOTABaseAbility
{
public:
int32_t m_iState; // 0x558
int32_t m_CastAnimation; // 0x55c
// MNetworkEnable
bool m_bCombinable; // 0x560
// MNetworkEnable
// MNetworkPriority "32"
bool m_bPermanent; // 0x561
// MNetworkEnable
// MNetworkPriority "32"
bool m_bStackable; // 0x562
private:
[[maybe_unused]] uint8_t __pad0563[0x1]; // 0x563
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iStackableMax; // 0x564
// MNetworkEnable
bool m_bRecipe; // 0x568
// MNetworkEnable
bool m_bRecipeConsumesCharges; // 0x569
private:
[[maybe_unused]] uint8_t __pad056a[0x2]; // 0x56a
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iSharability; // 0x56c
// MNetworkEnable
bool m_bDroppable; // 0x570
// MNetworkEnable
bool m_bPurchasable; // 0x571
// MNetworkEnable
bool m_bSellable; // 0x572
// MNetworkEnable
bool m_bInitiallySellable; // 0x573
// MNetworkEnable
bool m_bForceUnsellable; // 0x574
// MNetworkEnable
bool m_bRequiresCharges; // 0x575
// MNetworkEnable
bool m_bKillable; // 0x576
// MNetworkEnable
bool m_bGloballyCombinable; // 0x577
// MNetworkEnable
bool m_bDisassemblable; // 0x578
bool m_bNeverDisassemble; // 0x579
bool m_bIsTempestDoubleClonable; // 0x57a
// MNetworkEnable
bool m_bIsNeutralDrop; // 0x57b
// MNetworkEnable
int32_t m_nNeutralDropTeam; // 0x57c
// MNetworkEnable
bool m_bAlertable; // 0x580
private:
[[maybe_unused]] uint8_t __pad0581[0x3]; // 0x581
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iInitialCharges; // 0x584
// MNetworkEnable
bool m_bCastOnPickup; // 0x588
// MNetworkEnable
bool m_bOnlyPlayerHeroPickup; // 0x589
// MNetworkEnable
bool m_bCreepHeroPickup; // 0x58a
// MNetworkEnable
bool m_bCanBeUsedOutOfInventory; // 0x58b
// MNetworkEnable
bool m_bItemEnabled; // 0x58c
private:
[[maybe_unused]] uint8_t __pad058d[0x3]; // 0x58d
public:
// MNetworkEnable
// MNetworkPriority "32"
GameTime_t m_flEnableTime; // 0x590
// MNetworkEnable
GameTime_t m_flReclaimTime; // 0x594
// MNetworkEnable
bool m_bDisplayOwnership; // 0x598
// MNetworkEnable
bool m_bShowOnMinimap; // 0x599
private:
[[maybe_unused]] uint8_t __pad059a[0x2]; // 0x59a
public:
// MNetworkEnable
float m_flMinimapIconSize; // 0x59c
// MNetworkEnable
bool m_bIsUpgradeable; // 0x5a0
private:
[[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1
public:
// MNetworkEnable
int32_t m_nUpgradeProgress; // 0x5a4
// MNetworkEnable
int32_t m_nUpgradeGoal; // 0x5a8
private:
[[maybe_unused]] uint8_t __pad05ac[0x4]; // 0x5ac
public:
// MNetworkEnable
CNetworkUtlVectorBase< uint8 > m_vecPreGameTransferPlayerIDs; // 0x5b0
bool m_bStackWithOtherOwners; // 0x5c8
bool m_bTemporarilyUncombinable; // 0x5c9
bool m_bHasCommentedOnEquip; // 0x5ca
private:
[[maybe_unused]] uint8_t __pad05cb[0x1]; // 0x5cb
public:
int32_t m_iDeclarationFlags; // 0x5cc
bool m_bCreatedByDisassemble; // 0x5d0
bool m_bHasMixedOwnership; // 0x5d1
bool m_bIsClonedItemProxy; // 0x5d2
bool m_bNeutralItemRequestDrop; // 0x5d3
// MNetworkEnable
// MNetworkPriority "32"
GameTime_t m_flPurchaseTime; // 0x5d4
// MNetworkEnable
GameTime_t m_flAssembledTime; // 0x5d8
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iCurrentCharges; // 0x5dc
// MNetworkEnable
int32_t m_iValuelessCharges; // 0x5e0
// MNetworkEnable
int32_t m_iSecondaryCharges; // 0x5e4
// MNetworkEnable
bool m_bCombineLocked; // 0x5e8
private:
[[maybe_unused]] uint8_t __pad05e9[0x3]; // 0x5e9
public:
CHandle< CDOTA_Item_Physical > m_hContainer; // 0x5ec
// MNetworkEnable
PlayerID_t m_iPlayerOwnerID; // 0x5f0
// MNetworkEnable
bool m_bPurchasedWhileDead; // 0x5f4
private:
[[maybe_unused]] uint8_t __pad05f5[0x3]; // 0x5f5
public:
int32_t m_nCombineVersion; // 0x5f8
};
// 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: 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: 125
// Size: -0x2268
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
private:
[[maybe_unused]] uint8_t __pad2de8[0x240]; // 0x2de8
public:
int32_t m_iAegisPickups[24]; // 0x3028
int32_t m_iTeleportsUsed[24]; // 0x3088
int32_t m_iNumConsumablesPurchased[24]; // 0x30e8
int32_t m_iNumItemsPurchased[24]; // 0x3148
CUtlVector< PurchasedItem_t > m_vecItemsPurchased[24]; // 0x31a8
float m_flTimeOfLastItemPurchase[24]; // 0x33e8
float m_flTimeOfLastConsumablePurchase[24]; // 0x3448
float m_flTimeOfLastDeath[24]; // 0x34a8
int32_t m_iTowerDamageTaken[24]; // 0x3508
int32_t m_iCreepDamageTaken[24]; // 0x3568
int32_t m_iHeroDamageTaken[24]; // 0x35c8
int32_t m_iTotalTowerDamageTaken[24]; // 0x3628
int32_t m_iTotalCreepDamageTaken[24]; // 0x3688
int32_t m_iTotalHeroDamageTaken[24]; // 0x36e8
private:
[[maybe_unused]] uint8_t __pad3748[0x240]; // 0x3748
public:
int32_t m_iRank[24]; // 0x3988
bool m_bRankCalibrated[24]; // 0x39e8
bool m_bTextChatBanned[24]; // 0x3a00
bool m_bLowPriority[24]; // 0x3a18
bool m_bWasHeroPickDotaPlusSuggestion[24]; // 0x3a30
bool m_bIdleInFountain[24]; // 0x3a48
bool m_bLoggedInElsewhere[24]; // 0x3a60
bool m_bPlayerLoadedCompletely[64]; // 0x3a78
int32_t m_iDisconnectionReason[64]; // 0x3ab8
uint64_t m_SelectedGuide[64]; // 0x3bb8
bool m_bIsUsingPlusGuide[64]; // 0x3db8
int32_t m_iCustomTeamAssignments[24]; // 0x3df8
CUtlVector< float32 > m_vecPlayerLevelUpTimes[24]; // 0x3e58
int32_t m_iManaSpent[64][6]; // 0x4098
int32_t m_iNeutralOption[64][6][6]; // 0x4698
bool m_bLeaverAlreadyDetected; // 0x6a98
private:
[[maybe_unused]] uint8_t __pad6a99[0x427]; // 0x6a99
public:
CUtlVector< TimedKillEvent_t > m_TimedKillList; // 0x6ec0
CUtlVector< TimedKillEvent_t > m_TimedAssistList; // 0x6ed8
CUtlVector< TimedKillEvent_t > m_TimedDeathList; // 0x6ef0
uint32_t m_unLastHeroPickOrder; // 0x6f08
int32_t m_iBountyGoldEarned[24]; // 0x6f0c
int32_t m_iRangeCreepUpgradeGoldEarned[24]; // 0x6f6c
int32_t m_iObserverWardsDestroyed[24]; // 0x6fcc
int32_t m_iReliableGoldEarned[24]; // 0x702c
int32_t m_iGoldLossPrevented[24]; // 0x708c
private:
[[maybe_unused]] uint8_t __pad70ec[0x5c]; // 0x70ec
public:
CUtlVector< CHandle< CDOTA_Unit_Courier > > m_hTeamCouriers[15]; // 0x7148
CUtlVector< CHandle< CDOTA_Unit_Courier > > m_hPlayerCouriers[64]; // 0x72b0
float m_flAvailableLaneGold[15]; // 0x78b0
private:
[[maybe_unused]] uint8_t __pad78ec[0x4]; // 0x78ec
public:
CUtlVector< DamageShareEvent_t > m_DamageShareList[24]; // 0x78f0
DamageShareEvent_t m_AbsorbedDamageRollup[24][25]; // 0x7b30
AbilityID_t m_playerAbilityUpgradeOrder[24][25]; // 0x9750
int32_t m_playerAbilityUpgradeTimes[24][25]; // 0xa0b0
int32_t m_playerAbilityUpgradeCount[24]; // 0xaa10
private:
[[maybe_unused]] uint8_t __padaa70[0x40]; // 0xaa70
public:
int32_t m_fullUpdateCount[64]; // 0xaab0
int32_t m_iCouriersDeployed[24]; // 0xabb0
int32_t m_iCouriersPotentiallyKilled[24]; // 0xac10
int32_t m_iCommandsIssued[24]; // 0xac70
uint32_t m_hHeroSpawnGroup[24]; // 0xacd0
private:
[[maybe_unused]] uint8_t __padad30[0x17c0]; // 0xad30
public:
float m_fNextLaneDetectionUpdate; // 0xc4f0
float m_fNextTimedHeroStatsUpdate; // 0xc4f4
private:
[[maybe_unused]] uint8_t __padc4f8[0x2a0]; // 0xc4f8
public:
bool m_bInitializedLaneWaypoints; // 0xc798
private:
[[maybe_unused]] uint8_t __padc799[0x757]; // 0xc799
public:
uint32_t m_nLastWardSuggestionBuildingState; // 0xcef0
uint32_t m_nLastWardSuggestionUpdateNum; // 0xcef4
bool m_bLastWardSuggestionRoshanAlive; // 0xcef8
bool bDoFinalPregameSuggestion[10]; // 0xcef9
private:
[[maybe_unused]] uint8_t __padcf03[0x1]; // 0xcf03
public:
int32_t m_hAbilitiesSuggestion[10]; // 0xcf04
int32_t m_hPregameItemsSuggestion[10]; // 0xcf2c
int32_t m_hItemsSuggestion[10]; // 0xcf54
int32_t m_hTopNItemsSuggestion[10]; // 0xcf7c
int32_t m_hNeutralItemsSuggestion[10][5]; // 0xcfa4
int32_t m_hLanesSuggestion[15]; // 0xd06c
int32_t m_hWinProbabilitySuggestion; // 0xd0a8
int32_t m_hHeroSuggestion[10]; // 0xd0ac
int32_t m_hWardLocationsSuggestion[15]; // 0xd0d4
float m_fNextCreepDistanceUpdate; // 0xd110
float m_fCreepDistanceSafe[15]; // 0xd114
float m_fCreepDistanceMid[15]; // 0xd150
float m_fCreepDistanceOff[15]; // 0xd18c
GameTime_t m_fLastSuggestionTime; // 0xd1c8
bool m_bHasRevealedAnonymizedEnemyPlayerInfo; // 0xd1cc
private:
[[maybe_unused]] uint8_t __padd1cd[0x603]; // 0xd1cd
public:
PlayerID_t m_nRequestedBotPlayerID; // 0xd7d0
float m_fNextCombatLogLocationUpdateTime; // 0xd7d4
float m_fNextAPMUpdateTime; // 0xd7d8
private:
[[maybe_unused]] uint8_t __padd7dc[0x4]; // 0xd7dc
public:
CUtlVector< uint32 > m_vecPendingPlayerResourceRequests; // 0xd7e0
int32_t m_iRampages[24]; // 0xd7f8
int32_t m_iTripleKills[24]; // 0xd858
int32_t m_iCouriersKilled[24]; // 0xd8b8
int32_t m_iAegisesSnatched[24]; // 0xd918
int32_t m_iCheesesEaten[24]; // 0xd978
int32_t m_iRapiersPurchased[24]; // 0xd9d8
float m_flPushingDamage[24]; // 0xda38
int32_t m_iRoshanKillsNight[24]; // 0xda98
int32_t m_iRoshanKillsDay[24]; // 0xdaf8
int32_t m_iPortalsUsed[24]; // 0xdb58
int32_t m_iLanternsLit[24]; // 0xdbb8
int32_t m_iFamangosGained[24]; // 0xdc18
int32_t m_iWisdomRunesGained[24]; // 0xdc78
int32_t m_iShieldRunesGained[24]; // 0xdcd8
int32_t m_iMinibossKills[24]; // 0xdd38
// Static fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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: 2
// Size: 0x50
struct TierNeutralInfo_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
int32_t m_nTier; // 0x30
private:
[[maybe_unused]] uint8_t __pad0034[0x4]; // 0x34
public:
// MNetworkEnable
CNetworkUtlVectorBase< AbilityID_t > m_nAbilityID; // 0x38
};
// Alignment: 3
// Size: 0x40
struct PlayerResourcePlayerPeriodicResourceData_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
float m_flKillability; // 0x30
// MNetworkEnable
int32_t m_nEntIndex; // 0x34
};
// Alignment: 63
// Size: 0x1f0
struct PlayerResourcePlayerTeamData_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
// MNetworkChangeCallback "OnTeamChanged"
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
// MNetworkEnable
uint8_t m_nPlayerDraftPreferredRoles; // 0x1ea
// MNetworkEnable
int8_t m_nPlayerDraftPreferredTeam; // 0x1eb
};
// Alignment: 1
// Size: 0x1
struct CavernCrawlMapVariant_t
{
public:
uint8_t m_Value; // 0x0
};
// Alignment: 3
// Size: 0x48
struct PlayerResourceBroadcasterData_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
CUtlSymbolLarge m_iszBroadcasterChannelDescription; // 0x30
// MNetworkEnable
CUtlSymbolLarge m_iszBroadcasterChannelCountryCode; // 0x38
// MNetworkEnable
CUtlSymbolLarge m_iszBroadcasterChannelLanguageCode; // 0x40
};
// Alignment: 80
// Size: 0x518
struct DataTeamPlayer_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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[25]; // 0x3ac
// MNetworkEnable
uint32_t m_iSuggestedHeroes[10]; // 0x474
// MNetworkEnable
float m_flSuggestedHeroesWeights[10]; // 0x49c
// MNetworkEnable
int32_t m_iDamageByTypeReceivedPreReduction[3]; // 0x4c4
// MNetworkEnable
int32_t m_iDamageByTypeReceivedPostReduction[3]; // 0x4d0
// MNetworkEnable
int32_t m_iOutgoingDamageByTypePreReduction[3]; // 0x4dc
// MNetworkEnable
int32_t m_iOutgoingDamageByTypePostReduction[3]; // 0x4e8
// MNetworkEnable
int32_t m_iCommandsIssued; // 0x4f4
// MNetworkEnable
int32_t m_iGoldSpentOnConsumables; // 0x4f8
// MNetworkEnable
int32_t m_iGoldSpentOnItems; // 0x4fc
// MNetworkEnable
int32_t m_iGoldSpentOnBuybacks; // 0x500
// MNetworkEnable
int32_t m_iGoldLostToDeath; // 0x504
// MNetworkEnable
bool m_bIsNewPlayer; // 0x508
// MNetworkEnable
bool m_bIsGuidePlayer; // 0x509
private:
[[maybe_unused]] uint8_t __pad050a[0x6]; // 0x50a
public:
// MNetworkEnable
// MNetworkEncoder
// MNetworkChangeCallback "OnPlayerSteamIDsChanged"
uint64_t m_iPlayerSteamID; // 0x510
};
// Alignment: 3
// Size: 0x238
struct TreeModelReplacement_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
public:
// MNetworkEnable
int32_t m_nBinaryObjectID; // 0x30
// MNetworkEnable
char m_szModel[512]; // 0x34
// MNetworkDisable
int32_t m_nChangeToken; // 0x234
};
// Alignment: 19
// Size: 0xf00
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
CUtlVectorEmbeddedNetworkVar< TierNeutralInfo_t > m_vecNeutralItemsTierInfo; // 0xdf8
// MNetworkEnable
CNetworkUtlVectorBase< AbilityID_t > m_vecNeutralItemsEarned; // 0xe48
// MNetworkEnable
CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_vecNeutralStashItems; // 0xe60
// MNetworkEnable
CNetworkUtlVectorBase< AbilityID_t > m_vecNeutralItemsConsumed; // 0xe78
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< PingConfirmationState_t > m_PingConfirmationStates; // 0xe90
// MNetworkEnable
CNetworkUtlVectorBase< CHandle< CBaseEntity > > m_vecKnownClearCamps; // 0xee0
int32_t m_iTowerKills; // 0xef8
};
// Alignment: 0
// Size: 0xf00
class CDOTA_DataRadiant : public CDOTA_DataNonSpectator
{
public:
// No members available
};
// Alignment: 0
// Size: 0xf00
class CDOTA_DataDire : public CDOTA_DataNonSpectator
{
public:
// No members available
};
// Alignment: 0
// Size: 0xf00
class CDOTA_DataCustomTeam : public CDOTA_DataNonSpectator
{
public:
// No members available
};
// Alignment: 11
// Size: 0xfd8
class CDOTA_DataSpectator : public CDOTA_DataNonSpectator
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hPowerupRune_1; // 0xf00
// MNetworkEnable
CHandle< CBaseEntity > m_hPowerupRune_2; // 0xf04
// MNetworkEnable
CHandle< CBaseEntity > m_hBountyRune_1; // 0xf08
// MNetworkEnable
CHandle< CBaseEntity > m_hBountyRune_2; // 0xf0c
// MNetworkEnable
CHandle< CBaseEntity > m_hBountyRune_3; // 0xf10
// MNetworkEnable
CHandle< CBaseEntity > m_hBountyRune_4; // 0xf14
// MNetworkEnable
CHandle< CBaseEntity > m_hXPRune_1; // 0xf18
// MNetworkEnable
CHandle< CBaseEntity > m_hXPRune_2; // 0xf1c
// MNetworkEnable
int32_t m_iNetWorth[24]; // 0xf20
// MNetworkEnable
float m_fRadiantWinProbability; // 0xf80
private:
[[maybe_unused]] uint8_t __pad0f84[0x4]; // 0xf84
public:
// MNetworkEnable
CUtlVectorEmbeddedNetworkVar< DOTAThreatLevelInfo_t > m_ThreatLevelInfos; // 0xf88
};
// Alignment: 0
// Size: 0x4c0
class CDOTA_MapTree : public CDOTA_BinaryObject
{
public:
// No members available
};
// Alignment: 5
// Size: 0x38
struct InGamePredictionData_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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: 0x558
class CDOTA_Ability_AttributeBonus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Base : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Undefined : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Ability_Draft : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl15_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl20_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl25_r : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl10_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl15_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl20_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_lvl25_l : public CDOTA_Ability_Special_Bonus_Gold_Ability_Draft
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_125 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_225 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_275 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_325 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_350 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_375 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_450 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_475 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_500 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_600 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_650 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_700 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_800 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_900 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_1000 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_125 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_225 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_275 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_350 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_500 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_600 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_700 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_800 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_1000 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Base_Attack_Rate_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_45 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_55 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_70 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_80 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_110 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_120 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_140 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_160 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_225 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Speed_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Corruption_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Corruption_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Corruption_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Corruption_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_130 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_140 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cleave_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Haste : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_TrueStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Reincarnation_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Reincarnation_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Reincarnation_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Block_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Block_18 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Block_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Break_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Break_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Break_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Break_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Break_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Immunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_HP_Regen_80 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_125 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_Amp_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Reduction_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Reduction_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Mana_Reduction_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_MP_Regen_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_Percentage_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Speed_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_45 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_65 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_90 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Movement_Speed_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_All_Stats_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attributes : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_And_Intelligence_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Intelligence_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_18 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Strength_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_80 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Agility_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Armor_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Status_Resistance_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Status_Resistance_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Status_Resistance_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Status_Resistance_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_80 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Magic_Resistance_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Day_Vision_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Night_Vision_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Night_Vision_500 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Night_Vision_600 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Night_Vision_800 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Night_Vision_1000 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Vision_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_45 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Base_Damage_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_18 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_45 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_55 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_65 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_70 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_80 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_90 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_120 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_160 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_251 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_252 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Damage_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_125 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_275 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_325 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Attack_Range_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_125 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_175 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_200 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_225 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_250 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_275 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_325 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_350 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cast_Range_400 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_18 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Amplify_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Cooldown_Reduction_65 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_45 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Respawn_Reduction_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_90 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_120 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_150 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_180 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_210 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_240 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_300 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Gold_Income_420 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_16 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Evasion_75 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Spell_Lifesteal_70 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_18 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Lifesteal_100 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_20_Bash_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_24_Crit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_30_Crit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_20_Crit_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_50_Crit_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_15 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_20 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_25 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_30 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_35 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_40 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_50 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Exp_Boost_60 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Queen_Of_Pain_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Broodmother_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Broodmother_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Broodmother_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Broodmother_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Broodmother_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lone_Druid_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wisp_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Techies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Techies_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Techies_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Techies_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Techies_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Arc_Warden_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Invoker_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ancient_Apparition_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Gyrocopter_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Legion_Commander_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pugna_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Windranger_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Death_Prophet_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sniper_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Monkey_King_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Riki_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tusk_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Medusa : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Medusa_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Medusa_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Medusa_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Medusa_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ogre_Magi_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Silencer_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Elder_Titan_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ember_Spirit_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lifestealer_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slark_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spectre_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Spirit_Breaker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Storm_Spirit_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tidehunter_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tinker_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Troll_Warlord_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Viper_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Brewmaster_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Luna_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Faceless_Void_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nyx_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Weaver_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Ursa_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lycan_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bristleback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bristleback_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bristleback_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bristleback_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Abaddon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Abaddon_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Abaddon_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Abaddon_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Abaddon_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Alchemist_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Juggernaut : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Juggernaut_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Winter_Wyvern_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Terrorblade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Terrorblade_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phoenix_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enchantress_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enchantress_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enchantress_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enchantress_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enchantress_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Wraith_King_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Kunkka_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bloodseeker_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earth_Spirit_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Timbersaw : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Timbersaw_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Huskar_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Naga_Siren_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sand_King_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Demon_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dragon_Knight_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morphling_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bane_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Nevermore_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Templar_Assassin_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Crystal_Maiden_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Doom_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Vengeful_Spirit_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Venomancer_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Earthshaker_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Shadow_Shaman_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Warlock_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dazzle_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dazzle_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dazzle_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dazzle_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dazzle_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Visage_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Omniknight_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Necrophos_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Antimage_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Mirana_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bounty_Hunter_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Treant_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pangolier_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x28]; // 0x0
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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: 0x558
class CDOTA_Ability_Consumable_Hidden : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Throw_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Throw_Coal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Healing_Campfire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ShootFirework : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Throw_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Summon_Snowman : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Seasonal_Summon_Penguin : public CDOTABaseAbility
{
public:
int32_t spawn_offset; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Decorate_Tree : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Festive_Firework : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Firecrackers : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Summon_Dragon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Summon_CNY_Tree : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Summon_CNY_Balloon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_Summon_TI9_Balloon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x598
class CDOTA_Ability_Seasonal_TI9_Banner : public CDOTABaseAbility
{
public:
CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI9_Instruments : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Seasonal_TI9_Shovel : public CDOTABaseAbility
{
public:
Vector m_vChannelPos; // 0x558
bool m_bIsUnderwater; // 0x564
private:
[[maybe_unused]] uint8_t __pad0565[0x3]; // 0x565
public:
ParticleIndex_t m_nPhaseStartFXIndex; // 0x568
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI9_Monkey : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x18
class CDOTA_ActionRunner
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
public:
// MNetworkDisable
CModifierParams* m_pEventContext; // 0x8
// MNetworkDisable
CDOTA_BaseNPC* m_pCaster; // 0x10
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lesser_NightCrawler_Pounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zombie_Berserk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Corspselord_Revive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slithereen_Riptide : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x5a0
class CDOTA_Ability_Creature_Fire_Breath : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t projectile_count; // 0x55c
float rotation_angle; // 0x560
float damage; // 0x564
float radius; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CountdownTimer ctTimer; // 0x570
Vector m_vecStartRot; // 0x588
Vector m_vecEndRot; // 0x594
};
// Alignment: 9
// Size: 0x5a0
class CDOTA_Ability_Creature_Ice_Breath : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t projectile_count; // 0x55c
float rotation_angle; // 0x560
float damage; // 0x564
float radius; // 0x568
float slow_duration; // 0x56c
CountdownTimer ctTimer; // 0x570
Vector m_vecStartRot; // 0x588
Vector m_vecEndRot; // 0x594
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Creature_IceSlam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GreaterClarity : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UpgradedMortar : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UpgradedBarricade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BagOfGold : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Throw_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Summon_Snowman : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Decorate_Tree : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Festive_Firework : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
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: 0x560
class CDOTA_Ability_Frostivus2018_Luna_LucentBeam : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Frostivus2018_Luna_Eclipse : public CDOTABaseAbility
{
public:
bool m_bIsScepterCast; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Clinkz_Strafe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Clinkz_SearingArrows : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Clinkz_WindWalk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Frostivus2018_Clinkz_Burning_Army : public CDOTABaseAbility
{
public:
int32_t range; // 0x558
Vector m_vEndpoint; // 0x55c
Vector m_vSlashDir; // 0x568
int32_t m_nDashProjectileID; // 0x574
Vector m_vDashProjectileLocation; // 0x578
};
// Alignment: 7
// Size: 0x578
class CDOTA_Ability_Tusk_SnowballMeteor : public CDOTABaseAbility
{
public:
int32_t area_of_effect; // 0x558
float damage_interval; // 0x55c
int32_t vision_distance; // 0x560
float end_vision_duration; // 0x564
float main_damage; // 0x568
float burn_duration; // 0x56c
float burn_dps; // 0x570
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Frostivus2018_Tusk_WalrusKick : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXKickIndex; // 0x558
};
// Alignment: 4
// Size: 0x588
class CDOTA_Ability_Frostivus2018_Windrunner_Shackleshot : public CDOTABaseAbility
{
public:
int32_t shackle_count; // 0x558
Vector m_vArrowStartPos; // 0x55c
CHandle< CBaseEntity > m_hTarget; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x570
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_DarkWillow_ShadowRealm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_DarkWillow_BrambleMaze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_DarkWillow_Bedlam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Frostivus2018_Puck_DreamCoil : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Frostivus2018_Spectre_ActiveDispersion : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
float duration; // 0x55c
};
// Alignment: 10
// Size: 0x598
class CDOTA_Ability_Frostivus2018_Centaur_Stampede : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t base_damage; // 0x55c
float strength_damage; // 0x560
float slow_duration; // 0x564
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x568
int32_t armor_amount; // 0x580
float armor_duration; // 0x584
int32_t max_armor_stacks; // 0x588
int32_t m_nHeroesHit; // 0x58c
bool m_bHitInvisibleHero; // 0x590
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Centaur_Return : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Centaur_DoubleEdge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Huskar_Inner_Fire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Huskar_Burning_Spear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Omniknight_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Omniknight_Degen_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Omniknight_Repel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x578
class CDOTA_Ability_Frostivus2018_Magnataur_Skewer : public CDOTABaseAbility
{
public:
int32_t skewer_radius; // 0x558
int32_t skewer_speed; // 0x55c
int32_t range; // 0x560
int32_t tree_radius; // 0x564
int32_t m_nProjectileID; // 0x568
int32_t m_nVisibleTargetCount; // 0x56c
int32_t m_nTargetsHit; // 0x570
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Pangolier_ShieldCrash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Frostivus2018_TrollWarlord_BattleTrance : public CDOTABaseAbility
{
public:
float trance_duration; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_TrollWarlord_Fervor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x590
class CDOTA_Ability_Frostivus2018_Rubick_GhostShip : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
float stun_duration; // 0x55c
int32_t ghostship_width; // 0x560
int32_t ghostship_speed; // 0x564
int32_t ghostship_distance; // 0x568
Vector m_vFinalDestination; // 0x56c
Vector m_vStartingPoint; // 0x578
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Frostivus2018_Weaver_GeminateAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_Tower_BlastWave : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
float duration; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TempBuff_CorpseExplosion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Reward_HPAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Reward_CritAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Reward_MagicResistAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Reward_ArmorAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ascension_PlasmaField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ascension_Bulwark : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ascension_AcidBlood : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ascension_Firefly : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Ascension_Silence : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ascension_MagneticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Ascension_Invis : public CDOTABaseAbility
{
public:
float warning_duration; // 0x558
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Morty_Hop : public CDOTABaseAbility
{
public:
float max_distance; // 0x558
Vector m_vTarget; // 0x55c
int32_t m_iTrackerProjectile; // 0x568
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morty_Hop_Launch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_ExplosiveBarrel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x628
class CDOTA_Ability_AghsFort_Ravage_Potion : public CDOTA_Item
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntsHit; // 0x600
int32_t damage; // 0x618
float duration; // 0x61c
float spend_charge_delay; // 0x620
};
// Alignment: 7
// Size: 0x620
class CDOTA_Ability_AghsFort_Dragon_Potion : public CDOTA_Item
{
public:
int32_t bonus_movement_speed; // 0x600
int32_t bonus_attack_damage; // 0x604
int32_t bonus_attack_range; // 0x608
int32_t magic_resistance; // 0x60c
int32_t model_scale; // 0x610
int32_t skin_number; // 0x614
bool flying_movement; // 0x618
};
// Alignment: 2
// Size: 0x608
class CDOTA_Ability_AghsFort_Arcanist_Potion : public CDOTA_Item
{
public:
int32_t cooldown_reduction_pct; // 0x600
int32_t manacost_reduction_pct; // 0x604
};
// Alignment: 6
// Size: 0x618
class CDOTA_Ability_AghsFort_EchoSlamPotion : public CDOTA_Item
{
public:
int32_t echo_slam_damage_range; // 0x600
int32_t echo_slam_echo_search_range; // 0x604
int32_t echo_slam_echo_range; // 0x608
int32_t echo_slam_echo_damage; // 0x60c
int32_t echo_slam_initial_damage; // 0x610
float spend_charge_delay; // 0x614
};
// Alignment: 0
// Size: 0x600
class CDOTA_Ability_AghsFort_ShadowWaveEffectPotion : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_AghsFort_RefresherOrb_Shard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Minor_Stats_Upgrade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Aghsfort_BootsOfTravel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Aghsfort_BootsOfTravel_2 : public CDOTA_Item_Aghsfort_BootsOfTravel
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_RestorativeFlower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x580
class CDOTA_Ability_AghsFort_StonehallGeneral_OverwhelmingOdds : public CDOTABaseAbility
{
public:
int32_t max_steps; // 0x558
Vector m_vTarget; // 0x55c
Vector m_vDir; // 0x568
int32_t m_nSteps; // 0x574
GameTime_t m_flChannelStartTime; // 0x578
ParticleIndex_t m_nFXIndex; // 0x57c
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_Spectre_ActiveDispersion : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
float duration; // 0x55c
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_AghsFort_RockGolem_Smash : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
Vector m_vTargetLoc; // 0x55c
private:
[[maybe_unused]] uint8_t __pad0568[0x8]; // 0x568
public:
int32_t radius; // 0x570
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Creature_Phoenix_FireSpirits : public CDOTABaseAbility
{
public:
int32_t hp_cost_perc; // 0x558
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_AghsFort_Creature_Phoenix_LaunchFireSpirit : public CDOTABaseAbility
{
public:
int32_t spirit_speed; // 0x558
float duration; // 0x55c
int32_t radius; // 0x560
int32_t hp_cost_perc; // 0x564
ParticleIndex_t m_nFXIndex; // 0x568
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Creature_Phoenix_Supernova : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PudgeMiniboss_HatefulStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PudgeMiniboss_ArmorCorruption : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_AghsFort_Wave_Blast : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
float knockback_duration; // 0x55c
float disarm_duration; // 0x560
private:
[[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x568
ParticleIndex_t m_nPreviewFX; // 0x580
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Waveblaster_Leap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_AghsFort_Creature_Impale : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
int32_t width; // 0x55c
float duration; // 0x560
int32_t length; // 0x564
int32_t speed; // 0x568
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Creature_SpikedCarapace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Creature_Flamestrike : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
};
// Alignment: 6
// Size: 0x578
class CDOTA_Ability_AghsFort_DragonKnight_BreatheFire : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
int32_t start_radius; // 0x55c
int32_t end_radius; // 0x560
Vector m_vStartPos; // 0x564
GameTime_t m_fStartTime; // 0x570
float m_fTotalTime; // 0x574
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Gyrocopter_Multi_Homing_Missile : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_PineCone_ShieldBash : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nPreviewFX; // 0x558
};
// Alignment: 5
// Size: 0x590
class CDOTA_Ability_PineCone_AcornShot : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x20]; // 0x558
public:
// MNetworkEnable
uint32_t m_nAcornTree; // 0x578
float projectile_speed; // 0x57c
float bounce_delay; // 0x580
int32_t bounce_range; // 0x584
int32_t bounce_count; // 0x588
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Lifestealer_Enraged_Pulse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x5c0
class CDOTA_Ability_Aghanim_UrnUpheaval : public CDOTABaseAbility
{
public:
Vector m_vPosition; // 0x558
float aoe; // 0x564
float slow_rate; // 0x568
float slow_rate_duration; // 0x56c
float duration; // 0x570
float max_slow; // 0x574
float burn_damage; // 0x578
float m_flCurrentSlow; // 0x57c
ParticleIndex_t m_nFXIndex; // 0x580
private:
[[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584
public:
CountdownTimer m_SlowTimer; // 0x588
CountdownTimer m_timer; // 0x5a0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_UpheavalUrn_Reincarnation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghanimsFortress_SkeletonKing_VampiricAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x598
class CDOTA_Ability_AghsFort_Shadow_Demon_Shadow_Poison : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hPoisonedUnits; // 0x558
int32_t radius; // 0x570
private:
[[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x578
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Shadow_Demon_Shadow_Poison_Release : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_ShadowShaman_Shackles : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hShackleTarget; // 0x558
ParticleIndex_t nShackleFXIndex; // 0x55c
};
// Alignment: 5
// Size: 0x5b0
class CDOTA_Ability_Aghanim_Spear : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
CUtlVector< int32 > m_vecProjectileHandles; // 0x570
private:
[[maybe_unused]] uint8_t __pad0588[0x8]; // 0x588
public:
Vector m_vTarget; // 0x590
Vector m_vSourcePosition; // 0x59c
int32_t damage; // 0x5a8
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Aghsfort_Wildwing_Tornado_Blast : public CDOTABaseAbility
{
public:
float disable_duration; // 0x558
float damage; // 0x55c
ParticleIndex_t m_nPreviewFX; // 0x560
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_TreantMiniboss_NaturesGuise : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_Creature_Venomancer_PoisonNova : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXPreview; // 0x558
int32_t radius; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_AghsFort_Ability_Creature_Venomancer_PoisonSting : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Firestorm : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Portal_Warp : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Aziyog_Underlord_Dark_Portal : public CDOTABaseAbility
{
public:
float duration; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Aghsfort_Ability_CrystalMaiden_CrystalNova : public CDOTABaseAbility
{
public:
int32_t nova_damage; // 0x558
};
// Alignment: 2
// Size: 0x560
class CDOTA_Aghsfort_AbilityCrystalMaiden_FreezingField : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nWarningFX; // 0x558
ParticleIndex_t m_nRadiusFX; // 0x55c
};
// Alignment: 5
// Size: 0x570
class CDOTA_Aghsfort_Ability_Creature_Magnus_Push_Skewer : public CDOTABaseAbility
{
public:
int32_t skewer_radius; // 0x558
int32_t skewer_speed; // 0x55c
int32_t range; // 0x560
int32_t tree_radius; // 0x564
int32_t m_nProjectileID; // 0x568
};
// Alignment: 1
// Size: 0x560
class CDOTA_Aghsfort_Ability_Hoodwink_HuntersBoomerang : public CDOTABaseAbility
{
public:
int32_t min_distance; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Pugna_Grandmaster_NetherWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_AssaultCaptain_SearingChains : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nWarningFX; // 0x558
ParticleIndex_t m_nRadiusFX; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_AssaultCaptain_SunRay : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x578
class CDOTA_Ability_AghsFort_TrapRoom_Hookshot : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
Vector m_vProjectileVelocity; // 0x55c
bool m_bRetract; // 0x568
private:
[[maybe_unused]] uint8_t __pad0569[0xb]; // 0x569
public:
CHandle< CBaseEntity > m_hSourceCaster; // 0x574
};
// 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: 0x568
class CDOTA_Ability_AghsFort_Capture : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CDOTA_Buff* m_pMyBuff; // 0x560
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_HighFive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jungle_Spirit_Reductions : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jungle_Spirit_RiverRejuvenation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_TreantLevel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_CDOTA_Item_BagOfGold_Caster_Only : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x600
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morokai_JungleHealBeam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SummonCreeps : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SecondBeam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_ThirdBeam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_BeamRange : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_BeamHeal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_SummonCreeps_Interval : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_JungleHeal_Treant_Level : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x580
class CDOTA_Ability_JungleSpirit_Volcano_Eruption : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
int32_t m_iProjectile; // 0x560
int32_t primary_explosion_radius; // 0x564
int32_t secondary_explosion_radius; // 0x568
int32_t split_radius; // 0x56c
char* szProjectileFXName; // 0x570
char* szGroundMarkerFXName; // 0x578
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_JungleSpirit_Volcano_Multitarget : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_JungleSpirit_Volcano_Splinter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_JungleSpirit_Volcano_Damage_Bonus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_JungleSpirit_Storm_Cyclone : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Projectiles : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Jungle_Spirit_Storm_Cyclone_Debuff_Duration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jungle_Spirit_Range_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_Range_Attack_Projectile_Duration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Morokai_Range_Attack_Aoe_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Movement_Speed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Spell_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Evasion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Bonus_Health : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Cooldown_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Magic_Resistance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Spell_Amplify : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Attack_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Health_Regen : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jungle_Spirit_Bonus_Armor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI10_Portal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI10_DiscoBall : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_TI10_DiscoBall_Channel : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x558
// MNetworkEnable
float m_flChannelTime; // 0x55c
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Seasonal_TI10_SoccerBall : public CDOTABaseAbility
{
public:
Vector m_vEndpoint; // 0x558
// Static fields:
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: 0x570
class CDOTA_Ability_Seasonal_TI10_HotPotato : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x8]; // 0x55c
public:
int32_t projectile_speed; // 0x564
float time_to_explode; // 0x568
GameTime_t throw_time; // 0x56c
};
// Alignment: 0
// Size: 0x570
class CDOTA_Ability_Seasonal_TI10_HotPotato_ThrowExistingPotato : public CDOTA_Ability_Seasonal_TI10_HotPotato
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TI10_HighFive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x598
class CDOTA_Ability_Seasonal_TI10_GuildBanner : public CDOTABaseAbility
{
public:
CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_BubbleGun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_RockPaperScissors : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_Rock : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_Paper : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Seasonal_TI11_Scissors : public CDOTA_Ability_Seasonal_TI11_RockPaperScissors_Base
{
public:
// No members available
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Seasonal_TI11_Balloon : public CDOTABaseAbility
{
public:
float charge_use_interval; // 0x558
float max_usable_charges; // 0x55c
GameTime_t m_flLastChargeUseTime; // 0x560
CHandle< CBaseEntity > m_hBalloon; // 0x564
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Seasonal_TI11_Duel : public CDOTABaseAbility
{
public:
float model_scale; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Seasonal_TI11_CongaLine : public CDOTABaseAbility
{
public:
float max_duration; // 0x558
};
// Alignment: 7
// Size: 0x628
class CDOTA_Item_SpookyTeleportScroll : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hTeleportTarget; // 0x600
ParticleIndex_t m_nFXOrigin; // 0x604
ParticleIndex_t m_nFXDestination; // 0x608
Vector m_vDestination; // 0x60c
int32_t m_iMinDistance; // 0x618
float m_flBaseTeleportTime; // 0x61c
float m_flExtraTeleportTime; // 0x620
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Diretide_Portal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x578
class CDOTA_Ability_Diretide_Portal_Channel : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
CHandle< CBaseEntity > m_hInitialPortal; // 0x55c
Vector m_vDestination; // 0x560
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x56c
CDOTA_Buff* m_pMyBuff; // 0x570
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Diretide2020_HighFive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x610
class CDOTA_Item_Spring2021_DefusalBomb : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x600
int32_t m_nOwnerTeamNumber; // 0x604
bool m_bInBombSite; // 0x608
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Spring2021_DefusalBomb_Defuse : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spring2021_TowerDeathRing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Plus_HighFive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x598
class CDOTA_Ability_Plus_GuildBanner : public CDOTABaseAbility
{
public:
CUtlVectorFixedGrowable< CHandle< CBaseEntity > > m_vecBanners; // 0x558
};
// Alignment: 12
// Size: 0x650
class CDOTA_Item_Muertas_Gun : public CDOTA_Item
{
public:
int32_t radius; // 0x600
int32_t ricochet_radius_start; // 0x604
int32_t ricochet_radius_end; // 0x608
int32_t speed; // 0x60c
Vector m_vTargetPos; // 0x610
Vector m_vEndpoint; // 0x61c
CHandle< CBaseEntity > m_hTreeTarget; // 0x628
bool m_bHasRicocheted; // 0x62c
bool m_bHasRicochetDamaged; // 0x62d
private:
[[maybe_unused]] uint8_t __pad062e[0x2]; // 0x62e
public:
Vector m_vRicochetDir; // 0x630
private:
[[maybe_unused]] uint8_t __pad063c[0x8]; // 0x63c
public:
int32_t m_iTempViewerRadiant; // 0x644
int32_t m_iTempViewerDire; // 0x648
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ofrenda_Pledge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ofrenda : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x620
class CDOTA_Item_Ofrenda_Shovel : public CDOTA_Item
{
public:
Vector m_vTreasurePos; // 0x600
Vector m_vChannelPos; // 0x60c
bool m_bIsUnderwater; // 0x618
private:
[[maybe_unused]] uint8_t __pad0619[0x3]; // 0x619
public:
ParticleIndex_t m_nPhaseStartFXIndex; // 0x61c
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_AghsFort_Bloodstone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_AghsFort_Bloodstone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 28
// Size: 0xd8
struct PlayerResourcePlayerData_t
{
private:
[[maybe_unused]] uint8_t __pad0000[0x30]; // 0x0
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
// MNetworkEnable
bool m_bHasNeutralTier[5]; // 0xcd
// MNetworkEnable
bool m_bHasRedeemedNeutralTier[5]; // 0xd2
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x18]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0xc]; // 0x0
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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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: 75
// Size: 0x1488
class CDOTA_TeamCommander
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
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
GameTime_t m_fPlayerDraftChooseTime; // 0x12e8
private:
[[maybe_unused]] uint8_t __pad12ec[0xc]; // 0x12ec
public:
CUtlString m_sScriptDirectory; // 0x12f8
HSCRIPT m_hHeroSelectionScriptScope; // 0x1300
HSCRIPT m_hTeamLevelDesiresScriptScope; // 0x1308
private:
[[maybe_unused]] uint8_t __pad1310[0x68]; // 0x1310
public:
GameTick_t m_nScriptPathAvoidanceUpdateTick; // 0x1378
float m_fExecutionTime[30]; // 0x137c
int32_t m_iCurExecutionTime; // 0x13f4
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0000[0x8]; // 0x0
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: 0x78
class CDOTABehaviorDie
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CountdownTimer m_timer; // 0x60
};
// Alignment: 1
// Size: 0x78
class CDOTABehaviorIdle
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CountdownTimer m_IdleRareAnimationTime; // 0x60
};
// Alignment: 0
// Size: 0x78
class CDOTABehaviorTutorialIdle : public CDOTABehaviorIdle
{
public:
// No members available
};
// Alignment: 2
// Size: 0x90
class CDOTABehaviorTutorialVictory
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CountdownTimer m_StartAnimationTime; // 0x60
CountdownTimer m_FinishAnimationTime; // 0x78
};
// Alignment: 7
// Size: 0xe0
class CDOTABehaviorMoveTo
{
private:
[[maybe_unused]] uint8_t __pad0000[0xb8]; // 0x0
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: 0xa0
class CDOTABehaviorNeutralAggro
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
Vector m_vHomePosition; // 0x60
bool m_bNoLeashTime; // 0x6c
bool m_bShortLeashTime; // 0x6d
private:
[[maybe_unused]] uint8_t __pad006e[0x2]; // 0x6e
public:
CountdownTimer m_LeashTimer; // 0x70
CountdownTimer m_FleeAgainTimer; // 0x88
};
// Alignment: 5
// Size: 0x158
class CDOTABehaviorCommandMoveToNPC
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hTarget; // 0x148
int32_t m_nMovementState; // 0x14c
bool m_bInRange; // 0x150
bool m_bWasAttacking; // 0x151
};
// Alignment: 5
// Size: 0x158
class CDOTABehaviorCommandMoveToNPCToGive
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hTarget; // 0x148
int32_t m_nMovementState; // 0x14c
CHandle< CBaseEntity > m_hItem; // 0x150
float m_flRange; // 0x154
};
// Alignment: 11
// Size: 0x170
class CDOTABehaviorCommandMoveToTargetToAttack
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hTarget; // 0x148
int32_t m_nMovementState; // 0x14c
bool m_bFailedCast; // 0x150
private:
[[maybe_unused]] uint8_t __pad0151[0x3]; // 0x151
public:
float m_flTargetRange; // 0x154
bool m_bDeny; // 0x158
bool m_bInvisBreak; // 0x159
bool m_bNightmareAttack; // 0x15a
bool m_bTurningToTarget; // 0x15b
float m_flTargetAngle; // 0x15c
Vector m_vMoveToOrderPosition; // 0x160
};
// Alignment: 13
// Size: 0x180
class CDOTABehaviorCommandVampireThrall
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hTarget; // 0x148
private:
[[maybe_unused]] uint8_t __pad014c[0x4]; // 0x14c
public:
float m_flTargetRange; // 0x150
bool m_bDeny; // 0x154
bool m_bInvisBreak; // 0x155
bool m_bNightmareAttack; // 0x156
bool m_bTurningToTarget; // 0x157
bool m_bHasPositionOrder; // 0x158
bool m_bIsAggressive; // 0x159
private:
[[maybe_unused]] uint8_t __pad015a[0x2]; // 0x15a
public:
float m_flTargetAngle; // 0x15c
Vector m_vFollowOffset; // 0x160
Vector m_vMoveToPosition; // 0x16c
CHandle< CBaseEntity > m_hMaster; // 0x178
};
// Alignment: 5
// Size: 0x160
class CDOTABehaviorPuppetMasterVoodooDoll
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
float m_flDistanceFromMaster; // 0x148
Vector m_vLastDir; // 0x14c
CHandle< CDOTA_BaseNPC > m_hMaster; // 0x158
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x15c
};
// Alignment: 8
// Size: 0x198
class CDOTABehaviorMoveToNPCToAttack
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
private:
[[maybe_unused]] uint8_t __pad0148[0x8]; // 0x148
public:
bool m_bMovingToLastKnownTargetPosition; // 0x150
private:
[[maybe_unused]] uint8_t __pad0151[0x7]; // 0x151
public:
CountdownTimer m_AttackDelay; // 0x158
CountdownTimer m_ChaseLimit; // 0x170
bool m_bInAttackPosition; // 0x188
bool m_bTurningToTarget; // 0x189
private:
[[maybe_unused]] uint8_t __pad018a[0x2]; // 0x18a
public:
float m_flTargetAngle; // 0x18c
bool m_bAttackMove; // 0x190
};
// Alignment: 1
// Size: 0x1b0
class CDOTABehaviorTutorialRazorMoveToNPCToAttack : public CDOTABehaviorMoveToNPCToAttack
{
public:
CountdownTimer m_PlasmaFieldDelay; // 0x198
};
// Alignment: 5
// Size: 0x180
class CDOTABehaviorNeutralHome
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
Vector m_vHomePosition; // 0x148
Vector m_vHomeFacing; // 0x154
bool m_bHomePositionSet; // 0x160
private:
[[maybe_unused]] uint8_t __pad0161[0x7]; // 0x161
public:
CountdownTimer m_IdleRareAnimationTime; // 0x168
};
// Alignment: 5
// Size: 0xb8
class CDOTABehaviorAttack
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CHandle< CBaseEntity > m_hTarget; // 0x60
private:
[[maybe_unused]] uint8_t __pad0064[0x24]; // 0x64
public:
CountdownTimer m_backSwingTimer; // 0x88
bool m_bCastAttack; // 0xa0
private:
[[maybe_unused]] uint8_t __pad00a1[0x3]; // 0xa1
public:
float m_flBackswingTime; // 0xa4
float m_flAnimSpeed; // 0xa8
};
// Alignment: 5
// Size: 0x158
class CDOTABehaviorInvade
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_goalEntity; // 0x148
CHandle< CBaseEntity > m_nextGoalEntity; // 0x14c
bool m_bReachedFinalGoal; // 0x150
bool m_bRequireReachingEndPath; // 0x151
};
// Alignment: 4
// Size: 0x158
class CDOTABehaviorCommandMoveToPosition
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
Vector m_vPosition; // 0x148
bool m_bDirectional; // 0x154
bool m_bRelative; // 0x155
};
// Alignment: 5
// Size: 0x178
class CDOTABehaviorCommandPatrol
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
Vector m_vOrderPosition; // 0x148
private:
[[maybe_unused]] uint8_t __pad0154[0x4]; // 0x154
public:
CUtlVector< Vector > m_vPatrolPoints; // 0x158
int32_t m_nCurrentTargetIndex; // 0x170
int32_t m_nDirection; // 0x174
};
// Alignment: 3
// Size: 0x158
class CDOTABehaviorCommandMoveToPositionToDropItem
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
Vector m_vPosition; // 0x148
CHandle< CBaseEntity > m_hItem; // 0x154
};
// Alignment: 2
// Size: 0x150
class CDOTABehaviorCommandMoveToRuneToTake
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hRune; // 0x148
};
// Alignment: 2
// Size: 0x150
class CDOTABehaviorCommandMoveToItemToTake
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hItem; // 0x148
};
// Alignment: 10
// Size: 0xc8
class CDOTABehaviorAttackPhase
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CHandle< CBaseEntity > m_hTarget; // 0x60
private:
[[maybe_unused]] uint8_t __pad0064[0x4]; // 0x64
public:
CountdownTimer m_attackTimer; // 0x68
bool m_bAttackComplete; // 0x80
private:
[[maybe_unused]] uint8_t __pad0081[0x27]; // 0x81
public:
bool m_bDeny; // 0xa8
bool m_bCastAttack; // 0xa9
bool m_bTargetTeleported; // 0xaa
private:
[[maybe_unused]] uint8_t __pad00ab[0x1]; // 0xab
public:
float m_flBackswingDuration; // 0xac
float m_flAnimSpeed; // 0xb0
float m_flAttackPortionPriorToTimer; // 0xb4
HSequence m_iSequence; // 0xb8
};
// Alignment: 7
// Size: 0xa0
class CDOTABehaviorAbilityPhase
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CountdownTimer m_abilityTimer; // 0x60
CountdownTimer m_backSwingTimer; // 0x78
bool m_bBackswinging; // 0x90
private:
[[maybe_unused]] uint8_t __pad0091[0x3]; // 0x91
public:
CHandle< CBaseEntity > m_hAbility; // 0x94
bool m_bActionLocked; // 0x98
bool m_bTargetTeleported; // 0x99
bool m_bOriginalTargetTeleported; // 0x9a
};
// Alignment: 5
// Size: 0x160
class CDOTABehaviorCommandMoveToPositionToCast
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
Vector m_vPosition; // 0x148
CHandle< CBaseEntity > m_hAbility; // 0x154
bool m_bTurningToTarget; // 0x158
private:
[[maybe_unused]] uint8_t __pad0159[0x3]; // 0x159
public:
float m_flTargetAngle; // 0x15c
};
// Alignment: 8
// Size: 0x168
class CDOTABehaviorCommandMoveToTargetToCast
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hTarget; // 0x148
CHandle< CBaseEntity > m_hAbility; // 0x14c
int32_t m_nMovementState; // 0x150
bool m_bFailedCast; // 0x154
private:
[[maybe_unused]] uint8_t __pad0155[0x3]; // 0x155
public:
float m_flTargetRange; // 0x158
bool m_bTurningToTarget; // 0x15c
private:
[[maybe_unused]] uint8_t __pad015d[0x3]; // 0x15d
public:
float m_flTargetAngle; // 0x160
};
// Alignment: 5
// Size: 0x88
class CDOTABehaviorAbilityChannel
{
private:
[[maybe_unused]] uint8_t __pad0000[0x60]; // 0x0
public:
CountdownTimer m_timer; // 0x60
float m_flAbilityChannelDuration; // 0x78
CHandle< CBaseEntity > m_hAbility; // 0x7c
CHandle< CBaseEntity > m_hTarget; // 0x80
bool m_bCompletedChanneling; // 0x84
};
// Alignment: 6
// Size: 0x178
class CDOTABehaviorCompanion
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_goalEntity; // 0x148
Vector m_vOffset; // 0x14c
int32_t m_iRightOffset; // 0x158
int32_t m_iForwardOffset; // 0x15c
CountdownTimer m_PositionFuzziness; // 0x160
};
// Alignment: 0
// Size: 0x178
class CDOTABehaviorCreatureCompanion : public CDOTABehaviorCompanion
{
public:
// No members available
};
// Alignment: 26
// Size: 0x2e8
class CDOTABehaviorPet : public CDOTABehaviorCompanion
{
private:
[[maybe_unused]] uint8_t __pad0178[0x10]; // 0x178
public:
float m_flThreatLevel; // 0x188
private:
[[maybe_unused]] uint8_t __pad018c[0x4]; // 0x18c
public:
CountdownTimer m_ThreatTimer; // 0x190
CountdownTimer m_StuckTimer; // 0x1a8
bool m_bHasVanished; // 0x1c0
private:
[[maybe_unused]] uint8_t __pad01c1[0x7]; // 0x1c1
public:
CountdownTimer m_VanishOnThreatTimer; // 0x1c8
Vector m_vecFleeCurrentTarget; // 0x1e0
Vector m_vecFleeDirection; // 0x1ec
Vector m_vecOldFleeDirection; // 0x1f8
private:
[[maybe_unused]] uint8_t __pad0204[0x4]; // 0x204
public:
CountdownTimer m_FleePersistTimer; // 0x208
CountdownTimer m_CombatRepositionTimer; // 0x220
CHandle< CDOTA_BaseNPC > m_hNearestEnemyHero; // 0x238
GameTime_t m_flLastInWater; // 0x23c
Vector m_vecHomeBasePosition; // 0x240
bool m_bReturnToBase; // 0x24c
private:
[[maybe_unused]] uint8_t __pad024d[0x3]; // 0x24d
public:
CountdownTimer m_ReturnToBaseTimer; // 0x250
PetCoopStates_t m_nCoopTeleportState; // 0x268
private:
[[maybe_unused]] uint8_t __pad026c[0x4]; // 0x26c
public:
CountdownTimer m_CarryItemTimer; // 0x270
CountdownTimer m_PickupDelayTimer; // 0x288
CountdownTimer m_LevelupCheckTimer; // 0x2a0
bool m_bIsEmoting; // 0x2b8
private:
[[maybe_unused]] uint8_t __pad02b9[0x3]; // 0x2b9
public:
CHandle< CDOTA_BaseNPC > m_hEmoteTarget; // 0x2bc
CountdownTimer m_EmoteTimer; // 0x2c0
int32_t m_nEmoteActivity; // 0x2d8
CHandle< CBaseEntity > m_tempGoalEntity; // 0x2dc
bool m_bFollowingTempGoal; // 0x2e0
private:
[[maybe_unused]] uint8_t __pad02e1[0x3]; // 0x2e1
public:
int32_t m_event_dota_illusions_created; // 0x2e4
};
// Alignment: 7
// Size: 0x178
class CDOTABehaviorChase
{
private:
[[maybe_unused]] uint8_t __pad0000[0x68]; // 0x0
public:
CDOTABehaviorMoveTo m_MoveTo; // 0x68
CHandle< CBaseEntity > m_hChaseEntity; // 0x148
bool m_bTargetMoves; // 0x14c
private:
[[maybe_unused]] uint8_t __pad014d[0x3]; // 0x14d
public:
float m_flFollowDistance[2]; // 0x150
float m_flForwardDistance; // 0x158
float m_flRightDistance; // 0x15c
CountdownTimer m_PositionFuzziness; // 0x160
};
// Alignment: 0
// Size: 0x10
class CHorizontalMotionController
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
// No members available
};
// Alignment: 0
// Size: 0x10
class CVerticalMotionController
{
private:
[[maybe_unused]] uint8_t __pad0000[0x10]; // 0x0
public:
// No members available
};
// Alignment: 0
// Size: 0x498
class CPointEntity : public CBaseEntity
{
public:
// No members available
};
// Alignment: 25
// Size: 0x1618
class CEnvCombinedLightProbeVolume : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x10d0]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0xf0]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0xfe0]; // 0x498
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 CInfoTargetServerOnly : public CServerOnlyPointEntity
{
public:
// No members available
};
// Alignment: 0
// Size: 0x498
class CInfoParticleTarget : public CPointEntity
{
public:
// No members available
};
// Alignment: 3
// Size: 0x4b0
class CInfoVisibilityBox : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x4]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x20]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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: 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: 0x500
class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance
{
public:
// MNetworkEnable
CBaseAnimGraphController m_animationController; // 0x470
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
CNetworkVarChainer __m_pChainEntity; // 0x4d8
// Static fields:
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: 0
// Size: 0x578
class CPathParticleRopeAlias_path_particle_rope_clientside : public CPathParticleRope
{
public:
// No members available
};
// 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.000000"
// MNetworkMaxValue "360.000000"
float m_InnerAngle; // 0x754
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "360.000000"
float m_OuterAngle; // 0x758
// MNetworkEnable
float m_SpotRadius; // 0x75c
};
// Alignment: 1
// Size: 0x5480
class CDebugHistory : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x1f4040]; // 0x498
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.000000"
// MNetworkMaxValue "63.000000"
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.000000"
// MNetworkMaxValue "64.000000"
// MNetworkEncodeFlags
float m_flGlowProxySize; // 0x75c
// MNetworkEnable
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "100.000000"
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x10]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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: 3
// Size: 0x4c8
class CPathCorner : public CPointEntity
{
public:
float m_flWait; // 0x498
float m_flRadius; // 0x49c
CEntityIOOutput m_OnPass; // 0x4a0
};
// Alignment: 6
// Size: 0x4f8
class CPhysForce : public CPointEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad04f0[0x8]; // 0x4f0
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
{
private:
[[maybe_unused]] uint8_t __pad04f0[0x8]; // 0x4f0
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
{
private:
[[maybe_unused]] uint8_t __pad04f0[0x8]; // 0x4f0
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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 fields:
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: 57
// Size: 0x7a0
class CScriptedSequence : public CBaseEntity
{
public:
CUtlSymbolLarge m_iszEntry; // 0x498
CUtlSymbolLarge m_iszPreIdle; // 0x4a0
CUtlSymbolLarge m_iszPlay; // 0x4a8
CUtlSymbolLarge m_iszPostIdle; // 0x4b0
CUtlSymbolLarge m_iszModifierToAddOnPlay; // 0x4b8
CUtlSymbolLarge m_iszNextScript; // 0x4c0
CUtlSymbolLarge m_iszEntity; // 0x4c8
CUtlSymbolLarge m_iszSyncGroup; // 0x4d0
ScriptedMoveTo_t m_nMoveTo; // 0x4d8
bool m_bIsPlayingEntry; // 0x4dc
bool m_bLoopActionSequence; // 0x4dd
bool m_bSynchPostIdles; // 0x4de
bool m_bIgnoreGravity; // 0x4df
bool m_bDisableNPCCollisions; // 0x4e0
bool m_bKeepAnimgraphLockedPost; // 0x4e1
bool m_bDontAddModifiers; // 0x4e2
private:
[[maybe_unused]] uint8_t __pad04e3[0x1]; // 0x4e3
public:
float m_flRadius; // 0x4e4
float m_flRepeat; // 0x4e8
float m_flPlayAnimFadeInTime; // 0x4ec
float m_flMoveInterpTime; // 0x4f0
float m_flAngRate; // 0x4f4
int32_t m_iDelay; // 0x4f8
GameTime_t m_startTime; // 0x4fc
bool m_bWaitForBeginSequence; // 0x500
private:
[[maybe_unused]] uint8_t __pad0501[0x3]; // 0x501
public:
int32_t m_saved_effects; // 0x504
int32_t m_savedFlags; // 0x508
int32_t m_savedCollisionGroup; // 0x50c
bool m_interruptable; // 0x510
bool m_sequenceStarted; // 0x511
bool m_bPrevAnimatedEveryTick; // 0x512
bool m_bForcedAnimatedEveryTick; // 0x513
bool m_bPositionRelativeToOtherEntity; // 0x514
private:
[[maybe_unused]] uint8_t __pad0515[0x3]; // 0x515
public:
CHandle< CBaseEntity > m_hTargetEnt; // 0x518
CHandle< CScriptedSequence > m_hNextCine; // 0x51c
bool m_bThinking; // 0x520
bool m_bInitiatedSelfDelete; // 0x521
bool m_bIsTeleportingDueToMoveTo; // 0x522
bool m_bAllowCustomInterruptConditions; // 0x523
CHandle< CBaseEntity > m_hLastFoundEntity; // 0x524
CHandle< CBaseAnimGraph > m_hForcedTarget; // 0x528
bool m_bDontCancelOtherSequences; // 0x52c
bool m_bForceSynch; // 0x52d
bool m_bTargetWasAsleep; // 0x52e
bool m_bPreventUpdateYawOnFinish; // 0x52f
bool m_bEnsureOnNavmeshOnFinish; // 0x530
private:
[[maybe_unused]] uint8_t __pad0531[0x3]; // 0x531
public:
ScriptedOnDeath_t m_onDeathBehavior; // 0x534
ScriptedConflictResponse_t m_ConflictResponse; // 0x538
private:
[[maybe_unused]] uint8_t __pad053c[0x4]; // 0x53c
public:
CEntityIOOutput m_OnBeginSequence; // 0x540
CEntityIOOutput m_OnActionStartOrLoop; // 0x568
CEntityIOOutput m_OnEndSequence; // 0x590
CEntityIOOutput m_OnPostIdleEndSequence; // 0x5b8
CEntityIOOutput m_OnCancelSequence; // 0x5e0
CEntityIOOutput m_OnCancelFailedSequence; // 0x608
CEntityIOOutput m_OnScriptEvent[8]; // 0x630
CTransform m_matOtherToMain; // 0x770
CHandle< CBaseEntity > m_hInteractionMainEntity; // 0x790
int32_t m_iPlayerDeathBehavior; // 0x794
};
// Alignment: 8
// Size: 0x4e0
class CSoundOpvarSetEntity : public CBaseEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0498[0x8]; // 0x498
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
{
private:
[[maybe_unused]] uint8_t __pad0748[0x8]; // 0x748
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.000000"
// MNetworkMaxValue "500.000000"
// MNetworkEncodeFlags
float m_flNearZ; // 0x998
// MNetworkEnable
// MNetworkBitCount "18"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1500.000000"
// 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
{
private:
[[maybe_unused]] uint8_t __pad0748[0x10]; // 0x748
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
{
private:
[[maybe_unused]] uint8_t __pad0750[0x30]; // 0x750
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
{
private:
[[maybe_unused]] uint8_t __pad0748[0x8]; // 0x748
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.100000"
// MNetworkMaxValue "10.000000"
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: 0
// Size: 0x8f0
class CTriggerBuoyancy : public CBaseTrigger
{
public:
// No members available
};
// 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.000000"
// MNetworkMaxValue "25.000000"
// 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.000000"
// MNetworkMaxValue "102.300003"
// MNetworkEncodeFlags
float m_fWidth; // 0x7ac
// MNetworkEnable
// MNetworkBitCount "10"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "102.300003"
// MNetworkEncodeFlags
float m_fEndWidth; // 0x7b0
// MNetworkEnable
float m_fFadeLength; // 0x7b4
// MNetworkEnable
float m_fHaloScale; // 0x7b8
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "64.000000"
// MNetworkEncodeFlags
float m_fAmplitude; // 0x7bc
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "256.000000"
// MNetworkEncodeFlags
float m_fStartFrame; // 0x7c0
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "100.000000"
float m_fSpeed; // 0x7c4
// MNetworkEnable
// MNetworkBitCount "20"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "256.000000"
// 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 fields:
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.000000"
// MNetworkMaxValue "60.000000"
// MNetworkEncodeFlags
float m_flSpriteFramerate; // 0x758
// MNetworkEnable
// MNetworkBitCount "20"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "256.000000"
// 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.000000"
// MNetworkMaxValue "64.000000"
// 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: 0x20
class IIntention : public INextBotComponent
{
public:
// No members available
};
// Alignment: 0
// Size: 0x90
class CLocomotionBase : public INextBotComponent
{
private:
[[maybe_unused]] uint8_t __pad0020[0x50]; // 0x20
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: 0x558
class CDOTA_Ability_Courier_AutoDeliver : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x580
class CDOTA_Ability_Brewmaster_PrimalSplit : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hPrimary; // 0x558
// MNetworkEnable
CHandle< CBaseEntity > m_hSecondary; // 0x55c
// MNetworkEnable
CHandle< CBaseEntity > m_hTertiary; // 0x560
// MNetworkEnable
CHandle< CBaseEntity > m_hFourth; // 0x564
GameTime_t m_fHurlBoulder_CooldownTime; // 0x568
GameTime_t m_fHDispelMagic_CooldownTime; // 0x56c
GameTime_t m_fCyclone_CooldownTime; // 0x570
GameTime_t m_fWindWalk_CooldownTime; // 0x574
GameTime_t m_fAstralPulse_CooldownTime; // 0x578
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_DeathProphet_Exorcism : public CDOTABaseAbility
{
public:
CUtlVector< sSpiritInfo* > m_SpiritInfos; // 0x558
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Wisp_Spirits : public CDOTABaseAbility
{
public:
CUtlVector< sSpiritDef > m_SpiritDefs; // 0x558
int32_t m_nWispDirection; // 0x570
int32_t spirit_amount; // 0x574
};
// Alignment: 8
// Size: 0x590
class CDOTA_Ability_MonkeyKing_FurArmy : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
ParticleIndex_t m_nFXIndex; // 0x55c
int32_t num_first_soldiers; // 0x560
int32_t num_second_soldiers; // 0x564
bool m_bCreateMonkeys; // 0x568
private:
[[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569
public:
GameTime_t m_flNextCreationTime; // 0x56c
GameTime_t m_flScepterTime; // 0x570
private:
[[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574
public:
CUtlVector< CHandle< CBaseEntity > > m_vecSoldiers; // 0x578
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Generic_Hidden : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Book : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BookStrength : public CDOTA_Item_Book
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BookAgility : public CDOTA_Item_Book
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BookIntelligence : public CDOTA_Item_Book
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Jungle_Varmint_Dive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Pudge_FleshHeap : public CDOTABaseAbility
{
public:
int32_t m_iKills; // 0x558
};
// Alignment: 6
// Size: 0x620
class CDOTA_Item_Tombstone : public CDOTA_Item
{
public:
float m_flTimer; // 0x600
CHandle< CDOTA_Item_Tombstone > m_hParent; // 0x604
CHandle< CDOTA_Item_Tombstone > m_hNextChild; // 0x608
Vector m_vContainerPosition; // 0x60c
ParticleIndex_t m_nFXIndex; // 0x618
ParticleIndex_t m_nFXIndex2; // 0x61c
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_VengefulSpirit_Command_Aura : public CDOTABaseAbility
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnScepterIllusionChanged"
CHandle< CBaseEntity > m_hScepterIllusion; // 0x558
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Capture : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CDOTA_Buff* m_pMyBuff; // 0x560
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Lamp_Use : public CDOTABaseAbility
{
public:
GameTime_t m_flLastCaptureTime; // 0x558
ParticleIndex_t m_nChannelFXIndex; // 0x55c
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Twin_Gate_Portal_Warp : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 0
// Size: 0x620
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0758[0x20]; // 0x758
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[15]; // 0x7a9
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KoboldTaskmaster_SpeedAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CentaurKhan_EnduranceAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CentaurKhan_WarStomp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spawnlord_Master_Stomp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spawnlord_Master_Freeze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_GnollAssassin_EnvenomedWeapon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ghost_FrostAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PolarFurbolgUrsaWarrior_ThunderClap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_WarpineRaider_SeedShot : public CDOTABaseAbility
{
public:
int32_t m_iBounces; // 0x558
int32_t bounces; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Neutral_SpellImmunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_OgreMagi_FrostArmor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkTrollWarlord_Ensnare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkTrollWarlord_RaiseDead : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_GiantWolf_CriticalStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_AncientGolem_Rockslide : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MudGolem_RockDestroy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MudGolem_HurlBoulder : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AlphaWolf_CriticalStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AncientRockGolem_Weakening_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlackDrake_MagicAmplification_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AlphaWolf_CommandAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FrostbittenGolem_TimeWarpAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_IceShaman_IncendiaryBomb : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tornado_Tempest : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_EnragedWildkin_Tornado : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTornado; // 0x558
CHandle< CBaseEntity > m_hNeutralTarget; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x560
};
// Alignment: 6
// Size: 0x590
class CDOTA_Ability_EnragedWildkin_Hurricane : public CDOTABaseAbility
{
public:
float distance; // 0x558
Vector m_vEndpoint; // 0x55c
Vector m_vDashPosition; // 0x568
Vector m_vFacePosition; // 0x574
Vector m_vTravelDir; // 0x580
float m_fTravelDistance; // 0x58c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BerserkerTroll_Break : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Kobold_Disarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_EnragedWildkin_ToughnessAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_GraniteGolem_HPAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_GraniteGolem_Bash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spawnlord_Master_Bash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_SatyrTrickster_Purge : public CDOTABaseAbility
{
public:
GameTime_t m_flTargetTime; // 0x558
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_SatyrSoulstealer_ManaBurn : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > hNeutralTarget; // 0x558
GameTime_t m_flTimeBuffer; // 0x55c
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_SatyrHellcaller_Shockwave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SatyrHellcaller_UnholyAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spawnlord_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ForestTrollHighPriest_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ForestTrollHighPriest_ManaAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ForestTrollHighPriest_HealAmp_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furbolg_Enrage_AttackSpeed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furbolg_Enrage_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_FelBeast_Haunt : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
float duration; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KoboldTunneler_Prospecting : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_HillTroll_Rally : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_HarpyScout_TakeOff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_OgreBruiser_OgreSmash : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
float hero_stun_duration; // 0x55c
int32_t damage; // 0x560
float damage_pct; // 0x564
GameTime_t flCooldown; // 0x568
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_GiantWolf_Intimidate : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
float duration; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_HarpyStorm_ChainLightning : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlackDragon_Fireball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlackDragon_SplashAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlackDragon_DragonhideAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MudGolem_CloakAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlueDragonspawnSorcerer_Evasion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlueDragonspawnOverseer_Evasion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BlueDragonspawnOverseer_DevotionAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BigThunderLizard_Wardrums : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BigThunderLizard_Slam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BigThunderLizard_Frenzy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Black_Nightmare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Black_BrainSap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Blue_ColdFeet : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Greevil_Miniboss_Blue_IceVortex : public CDOTABaseAbility
{
public:
int32_t vision_aoe; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Red_Earthshock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Red_Overpower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Yellow_IonShell : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Yellow_Surge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_White_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_White_Degen_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Green_LivingArmor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Green_Overgrowth : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Orange_DragonSlave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Orange_LightStrikeArray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Greevil_Miniboss_Purple_VenomousGale : public CDOTABaseAbility
{
public:
float duration; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Purple_PlagueWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Greevil_Miniboss_Sight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Neutral_Upgrade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Creep_Siege : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Creep_Piercing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Creep_Irresolute : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FlagBearer_Creep_Aura_Effect : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Filler_Tooltip : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 34
// Size: 0x11d8
class CDOTA_Buff : public CHorizontalMotionController
{
private:
[[maybe_unused]] uint8_t __pad0010[0x18]; // 0x10
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[0x1100]; // 0xd0
public:
HSCRIPT m_hScriptScope; // 0x11d0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Buff_Item : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Stacking_Base : public CDOTA_Buff
{
public:
int32_t max_stacks; // 0x11d8
bool destroy_on_zero_stacks; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float sub_modifier_forced_duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlString m_szSubModifierName; // 0x11e8
KeyValues* m_pSubModifierKV; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Stacking_Multiple_Buff_Base : public CDOTA_Buff
{
public:
int32_t m_nParentBuffIndex; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Glyph_Reset : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_SetScaleset : public CDOTA_Buff
{
public:
CUtlString m_Scaleset; // 0x11d8
bool m_bActive; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_StackedNeutral : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Filler_LastDitch : public CDOTA_Buff
{
public:
float melee_number; // 0x11d8
float ranged_number; // 0x11dc
float siege_number; // 0x11e0
int32_t lane; // 0x11e4
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_FillerThinker : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > hCasterList; // 0x11d8
bool bStarted; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
int32_t nCount; // 0x11f4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Filler_Buff_Icon : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Filler_Heal_Aura : public CDOTA_Buff_Item
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Filler_Heal : public CDOTA_Buff
{
public:
int32_t hp_heal; // 0x11d8
int32_t mp_heal; // 0x11dc
int32_t hp_heal_growth; // 0x11e0
float mp_heal_growth; // 0x11e4
int32_t hp_heal_pct; // 0x11e8
int32_t mp_heal_pct; // 0x11ec
int32_t tota_hp_per_second; // 0x11f0
int32_t tota_mp_per_second; // 0x11f4
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_FountainInvulnerabilityBuff : public CDOTA_Buff
{
public:
Vector m_vecPosition; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Building_DispelsSmoke : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Truesight_Aura : public CDOTA_Buff
{
public:
int32_t m_nAuraRadius; // 0x11d8
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Tower_Truesight_Aura : public CDOTA_Modifier_Truesight_Aura
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Fountain_Truesight_Aura : public CDOTA_Modifier_Truesight_Aura
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Tower_Aura : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
bool m_bOverrideArmor; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float hp_regen; // 0x11e0
bool m_bOverrideRegen; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t m_nRadius; // 0x11e8
};
// Alignment: 5
// Size: 0x11e8
class CDOTA_Modifier_Tower_Aura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
float hp_regen; // 0x11dc
bool m_bOverrideArmor; // 0x11e0
bool m_bOverrideRegen; // 0x11e1
bool m_bSentFirstRefresh; // 0x11e2
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tower_Armor_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Scout_Bonuses : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ScoutVisible : public CDOTA_Buff
{
public:
int32_t reveal_radius; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_ScoutBonuses : public CDOTA_Buff
{
public:
int32_t reveal_radius; // 0x11d8
float increase_health; // 0x11dc
int32_t max_health; // 0x11e0
float increase_armor; // 0x11e4
float max_armor; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BackdoorProtection : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BackdoorProtectionInBase : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FillerAbility : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_BackdoorProtection : public CDOTA_Buff
{
public:
bool m_bActivated; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
float m_flHealthToRestore; // 0x11dc
int32_t radius; // 0x11e0
float activation_time; // 0x11e4
int32_t regen_rate; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CountdownTimer m_TimerToActivate; // 0x11f0
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_BackdoorProtectionInBase : public CDOTA_Modifier_BackdoorProtection
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BackdoorProtectionActive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ProjectileVision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ProjectileVisionOnMinimap : public CDOTA_Modifier_ProjectileVision
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pet : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_HeroStatue : public CDOTA_Buff
{
public:
uint32_t m_unStatusEffectIndex; // 0x11d8
CHandle< CBaseEntity > m_hPedestal; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_HeroStatuePedestal : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BattleCupEffigy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Hidden_NoDamage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tutorial_Disable_Healing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tutorial_SpeechBubble : public CDOTA_Buff
{
public:
bool m_bFacePlayer; // 0x11d8
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Tutorial_ForceAnimation : public CDOTA_Buff
{
public:
int32_t m_nActivity; // 0x11d8
bool m_bLoop; // 0x11dc
bool m_bFacePlayer; // 0x11dd
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tutorial_HideNPC : public CDOTA_Buff
{
public:
bool m_bRemoveOnDeath; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tutorial_LowAttackPriority : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tutorial_LastHittable : public CDOTA_Buff
{
public:
bool m_bIsFriend; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Creep_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Creep_Haste : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Buyback_Gold_Penalty : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Provide_Vision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_ScriptedMotionController : public CDOTA_Buff
{
public:
HSCRIPT m_hHorizontalControlFunction; // 0x11d8
HSCRIPT m_hVerticalControlFunction; // 0x11e0
HSCRIPT m_hOnDestroyFunction; // 0x11e8
CVariantBase< CVariantDefaultAllocator > m_parameterTable; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Generic_Hidden : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Disable_Healing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BaseBlocker_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BaseBlocker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BaseBlocker_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Rune_Shield : public CDOTA_Buff
{
public:
int32_t damage_absorb; // 0x11d8
bool m_bStartedTimer; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
int32_t m_nDamageAbsorbed; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bonus_Armor : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bonus_Mres : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bonus_Damage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_HP_Regen : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MP_Regen : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MagicImmune : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DebuffImmune : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CameraFollow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Hexed : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Editor : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Prosperous_Soul : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MoveSpeed_Percentage : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kill : public CDOTA_Buff
{
public:
bool m_bHideOnKill; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Phased : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dominated : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrueSight : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrueSightFoW : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrueSightAll : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Stunned : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bashed : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Taunt : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_PersistentInvisibility : public CDOTA_Buff
{
public:
float fade_delay; // 0x11d8
float m_flFadeTime; // 0x11dc
GameTime_t m_flLastActionTime; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Invisible : public CDOTA_Buff
{
public:
bool m_bSubtle; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
GameTime_t m_flFadeTime; // 0x11dc
float m_flFadeTimeValue; // 0x11e0
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_InvisibleTrueSightImmune : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Followthrough : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Fear : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AttackImmune : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Disarmed : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Break : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muted : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rooted : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NoHealthBar : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NotOnMinimap : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FountainAura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FountainAuraBuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1238
class CDOTA_Modifier_Illusion : public CDOTA_Buff
{
public:
int32_t outgoing_damage; // 0x11d8
int32_t outgoing_damage_structure; // 0x11dc
int32_t outgoing_damage_roshan; // 0x11e0
int32_t incoming_damage; // 0x11e4
int32_t bounty_base; // 0x11e8
int32_t bounty_growth; // 0x11ec
CUtlString m_strIllusionType; // 0x11f0
char m_szIllusionLabel[64]; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_DoubleDamage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Rune_ExtraDamage : public CDOTA_Modifier_Rune_DoubleDamage
{
public:
int32_t m_iAdditionalDamagePct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_Haste : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_FlyingHaste : public CDOTA_Modifier_Rune_Haste
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Rune_Invisibility : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Rune_Super_Invisibility : public CDOTA_Modifier_PersistentInvisibility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_Regen : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rune_SuperRegen : public CDOTA_Modifier_Rune_Regen
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rune_Arcane : public CDOTA_Buff
{
public:
int32_t m_iCooldownReductionPct; // 0x11d8
int32_t m_iCostReductionPct; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Rune_SuperArcane : public CDOTA_Modifier_Rune_Arcane
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1630
class CDOTA_Modifier_Teleporting : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x20]; // 0x11d8
public:
float m_fStartTime; // 0x11f8
char m_iszPortalLoopAppear[260]; // 0x11fc
char m_iszPortalLoopDisappear[260]; // 0x1300
char m_iszHeroLoopAppear[260]; // 0x1404
char m_iszHeroLoopDisappear[260]; // 0x1508
bool m_bSkipTeleportAnim; // 0x160c
bool m_bPlayingCoopAnim; // 0x160d
bool m_bIsPlayingTauntGesture; // 0x160e
private:
[[maybe_unused]] uint8_t __pad160f[0x1]; // 0x160f
public:
float m_fChannelTime; // 0x1610
Vector m_vStart; // 0x1614
Vector m_vEnd; // 0x1620
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Teleporting_Root_Logic : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1208
class CDOTA_Modifier_Knockback : public CDOTA_Buff
{
public:
float knockback_distance; // 0x11d8
int32_t knockback_height; // 0x11dc
float knockback_duration; // 0x11e0
Vector m_vHorizOffset; // 0x11e4
Vector m_vStartPosition; // 0x11f0
float m_fCurrentTimeHoriz; // 0x11fc
float m_fCurrentTimeVert; // 0x1200
bool m_bShouldStun; // 0x1204
bool m_bRespectLeash; // 0x1205
bool m_bReversePolarity; // 0x1206
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Cyclone : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
Vector m_vStartPos; // 0x11dc
float m_flCurTime; // 0x11e8
float m_flHeightT; // 0x11ec
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_IceSlide : public CDOTA_Buff
{
public:
GameTime_t m_fLastUpdateTime; // 0x11d8
Vector m_vVelocity; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tutorial_LastHitHelper : public CDOTA_Buff
{
public:
bool m_bTargetFriendlies; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TeamShowcase_Global : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TeamShowcase_Showcase : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1208
class CDOTA_Modifier_HallOfFame_Glow : public CDOTA_Buff
{
public:
CUtlVector< PlayerID_t > m_vecGlowingPlayerIDs; // 0x11d8
CUtlVector< PlayerID_t > m_vecGlowingPlayerIDs2; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DisableTauntAnimationCancel : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_PreventTaunts : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Activity_Modifier : public CDOTA_Buff
{
public:
CUtlSymbolLarge m_activityModifier; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_SecondaryUnit_Taunt : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f0
class CDOTA_Modifier_MonkeyKing_BouncePerch : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTree; // 0x11d8
bool m_bGroundToTree; // 0x11dc
bool m_bTreeToGround; // 0x11dd
bool m_bTreeToTree; // 0x11de
private:
[[maybe_unused]] uint8_t __pad11df[0x1]; // 0x11df
public:
float perched_day_vision; // 0x11e0
float perched_night_vision; // 0x11e4
bool m_bAbilityIsStolen; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BookOfStrength : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BookOfAgility : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BookOfIntelligence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_No_Invisibility : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hide_On_Minimap : public CDOTA_Buff
{
public:
bool m_bEnemiesOnly; // 0x11d8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_ChangeTreeModel_Thinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTree; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlString m_strModel; // 0x11e0
int32_t m_nModelChangeToken; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LegacyChargeCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_FixedNumberOfHitsToKill : public CDOTA_Buff
{
public:
int32_t creep_attack_divisor; // 0x11d8
int32_t attack_count; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_NPXBuff : public CDOTA_Buff
{
public:
int32_t m_nCurReduction; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Muerta_PartingShot_PhysicalBodyDebuff : public CDOTA_Modifier_Stunned
{
public:
CHandle< CBaseEntity > m_hSoulEntity; // 0x11d8
int32_t damage_reduction_percent; // 0x11dc
};
// Alignment: 20
// Size: 0x608
class CDOTA_Ability_DataDriven : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x18]; // 0x558
public:
bool m_bProcsMagicStick; // 0x570
bool m_bIsSharedWithTeammates; // 0x571
bool m_bCastFilterRejectCaster; // 0x572
private:
[[maybe_unused]] uint8_t __pad0573[0x1]; // 0x573
public:
float m_fAOERadius; // 0x574
int32_t m_CastAnimation; // 0x578
private:
[[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c
public:
CUtlVector< KeyValues* > m_ModifierKVDescriptions; // 0x580
KeyValues* m_pOnChannelFinishKV; // 0x598
KeyValues* m_pOnChannelSucceededKV; // 0x5a0
KeyValues* m_pOnChannelInterruptedKV; // 0x5a8
KeyValues* m_pOnOwnerSpawnedKV; // 0x5b0
KeyValues* m_pOnOwnerDiedKV; // 0x5b8
KeyValues* m_pOnUpgradeKV; // 0x5c0
KeyValues* m_pOnProjectileHitUnitKV; // 0x5c8
KeyValues* m_pOnProjectileFinishKV; // 0x5d0
KeyValues* m_pOnSpellStartKV; // 0x5d8
KeyValues* m_pOnAbilityPhaseStartKV; // 0x5e0
KeyValues* m_pOnAbilityPhaseInterruptedKV; // 0x5e8
KeyValues* m_pOnToggleOnKV; // 0x5f0
KeyValues* m_pOnToggleOffKV; // 0x5f8
KeyValues* m_pOnCreatedKV; // 0x600
};
// Alignment: 21
// Size: 0x6b0
class CDOTA_Item_DataDriven : public CDOTA_Item
{
private:
[[maybe_unused]] uint8_t __pad0600[0x18]; // 0x600
public:
bool m_bProcsMagicStick; // 0x618
bool m_bIsSharedWithTeammates; // 0x619
bool m_bCastFilterRejectCaster; // 0x61a
private:
[[maybe_unused]] uint8_t __pad061b[0x1]; // 0x61b
public:
float m_fAnimationPlaybackRate; // 0x61c
float m_fAOERadius; // 0x620
int32_t m_CastAnimation; // 0x624
CUtlVector< KeyValues* > m_ModifierKVDescriptions; // 0x628
KeyValues* m_pOnChannelFinishKV; // 0x640
KeyValues* m_pOnChannelSucceededKV; // 0x648
KeyValues* m_pOnChannelInterruptedKV; // 0x650
KeyValues* m_pOnOwnerSpawnedKV; // 0x658
KeyValues* m_pOnOwnerDiedKV; // 0x660
KeyValues* m_pOnProjectileHitUnitKV; // 0x668
KeyValues* m_pOnProjectileFinishKV; // 0x670
KeyValues* m_pOnSpellStartKV; // 0x678
KeyValues* m_pOnAbilityPhaseStartKV; // 0x680
KeyValues* m_pOnToggleOnKV; // 0x688
KeyValues* m_pOnToggleOffKV; // 0x690
KeyValues* m_pOnEquipKV; // 0x698
KeyValues* m_pOnUnequipKV; // 0x6a0
KeyValues* m_pOnCreatedKV; // 0x6a8
};
// Alignment: 63
// Size: 0x3578
class CDOTA_Modifier_DataDriven : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x18]; // 0x11d8
public:
AbilityID_t m_nAbilityID; // 0x11f0
int32_t m_nIndexInAbility; // 0x11f4
bool m_bIsHidden; // 0x11f8
bool m_bIsDebuff; // 0x11f9
bool m_bIsPurgable; // 0x11fa
bool m_bIsStunDebuff; // 0x11fb
bool m_bAllowIllusionDuplicate; // 0x11fc
bool m_bRemoveOnDeath; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
char* m_pszAuraModifier; // 0x1200
int32_t m_nAuraModifierIndex; // 0x1208
int32_t m_nAuraRadius; // 0x120c
int32_t m_nAuraSearchTeam; // 0x1210
int32_t m_nAuraSearchType; // 0x1214
int32_t m_nAuraSearchFlags; // 0x1218
bool m_bAuraApplyToCaster; // 0x121c
bool m_bAuraApplyToParent; // 0x121d
private:
[[maybe_unused]] uint8_t __pad121e[0x2]; // 0x121e
public:
int32_t m_nAttributes; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
char* m_pszEffectName; // 0x1228
int32_t m_nEffectAttachType; // 0x1230
int32_t m_nPriority; // 0x1234
char* m_pszStatusEffectName; // 0x1238
int32_t m_nStatusEffectPriority; // 0x1240
int32_t m_nOverrideAnimation; // 0x1244
int32_t m_nOrbPriority; // 0x1248
int32_t m_nOrbLabel; // 0x124c
bool m_bOrbIsCastAttack; // 0x1250
private:
[[maybe_unused]] uint8_t __pad1251[0x3]; // 0x1251
public:
float m_flThinkInterval; // 0x1254
bool m_bNeedsReParseIfRefreshed; // 0x1258
private:
[[maybe_unused]] uint8_t __pad1259[0x7]; // 0x1259
public:
char* m_pszModelName; // 0x1260
char* m_pszOrbProjectileName; // 0x1268
private:
[[maybe_unused]] uint8_t __pad1270[0x2200]; // 0x1270
public:
uint64_t m_nModifierStatesEnabled; // 0x3470
uint64_t m_nModifierStatesDisabled; // 0x3478
KeyValues* m_pOnCreated; // 0x3480
KeyValues* m_pOnIntervalThink; // 0x3488
KeyValues* m_pOnDestroy; // 0x3490
KeyValues* m_pOnAttackStart; // 0x3498
KeyValues* m_pOnAttack; // 0x34a0
KeyValues* m_pOnAttackLanded; // 0x34a8
KeyValues* m_pOnAttackFailed; // 0x34b0
KeyValues* m_pOnAttackAllied; // 0x34b8
KeyValues* m_pOnProjectileDodge; // 0x34c0
KeyValues* m_pOnOrder; // 0x34c8
KeyValues* m_pOnUnitMoved; // 0x34d0
KeyValues* m_pOnAbilityStart; // 0x34d8
KeyValues* m_pOnAbilityExecuted; // 0x34e0
KeyValues* m_pOnBreakInvisibility; // 0x34e8
KeyValues* m_pOnAbilityEndChannel; // 0x34f0
KeyValues* m_pOnTakeDamage; // 0x34f8
KeyValues* m_pOnDealDamage; // 0x3500
KeyValues* m_pOnStateChanged; // 0x3508
KeyValues* m_pOnAttacked; // 0x3510
KeyValues* m_pOnDeath; // 0x3518
KeyValues* m_pOnKill; // 0x3520
KeyValues* m_pOnRespawn; // 0x3528
KeyValues* m_pOnSpentMana; // 0x3530
KeyValues* m_pOnTeleporting; // 0x3538
KeyValues* m_pOnTeleported; // 0x3540
KeyValues* m_pOnHealthGained; // 0x3548
KeyValues* m_pOnManaGained; // 0x3550
KeyValues* m_pOnHeroKilled; // 0x3558
KeyValues* m_pOnHealReceived; // 0x3560
KeyValues* m_pOnAttackFinished; // 0x3568
KeyValues* m_pOnAttackCancelled; // 0x3570
};
// Alignment: 0
// Size: 0x5a0
class CDOTA_Ability_Lua : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x12c8
class CDOTA_Modifier_Lua : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0xe8]; // 0x11d8
public:
bool m_bHasCustomTransmitterData; // 0x12c0
};
// Alignment: 0
// Size: 0x12c8
class CDOTA_Modifier_Lua_Horizontal_Motion : public CDOTA_Modifier_Lua
{
public:
// No members available
};
// Alignment: 0
// Size: 0x12c8
class CDOTA_Modifier_Lua_Vertical_Motion : public CDOTA_Modifier_Lua
{
public:
// No members available
};
// Alignment: 0
// Size: 0x12c8
class CDOTA_Modifier_Lua_Motion_Both : public CDOTA_Modifier_Lua
{
public:
// No members available
};
// Alignment: 0
// Size: 0x648
class CDOTA_Item_Lua : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Interval_Upgrade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Mana_Restore : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_Crit_Chance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Thunder_Strike_On_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Disruptor_Thunder_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Disruptor_Thunder_Strike : public CDOTA_Buff
{
public:
float strike_interval; // 0x11d8
int32_t radius; // 0x11dc
int32_t strike_damage; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Disruptor_Thunder_Strike_On_Attack : public CDOTA_Buff
{
public:
int32_t strike_chance; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Disruptor_Thunder_Strike_Slow : public CDOTA_Buff
{
public:
int32_t slow_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Cast_AoE : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Hit_On_Arrival : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_Glimpse_Travel_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Aghsfort_Disruptor_Glimpse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nNPCSpawnedID; // 0x568
};
// Alignment: 1
// Size: 0x1248
class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse : public CDOTA_Buff
{
public:
Vector m_PositionIndex[9]; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Attack_Buff : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Thinker : public CDOTA_Buff
{
public:
Vector m_vStartLoc; // 0x11d8
CHandle< CBaseEntity > m_hEntity; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Disruptor_Glimpse_Travel_Damage : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t max_ticks; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Instant_Setup : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_DoubleRing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Allied_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_KineticField_Allied_AttackBuff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Disruptor_KineticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Disruptor_KineticFieldThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float formation_time; // 0x11dc
bool m_bActive; // 0x11e0
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Disruptor_KineticField : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
Vector m_vOriginLoc; // 0x11dc
bool m_bCanBeAffected; // 0x11e8
bool m_bTruesight; // 0x11e9
private:
[[maybe_unused]] uint8_t __pad11ea[0x2]; // 0x11ea
public:
int32_t intellect_bonus; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Kinetic_Field_On_Cast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Crits_On_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Disruptor_StaticStorm_Damage_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Disruptor_StaticStorm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Disruptor_StaticStormThinker : public CDOTA_Buff
{
public:
int32_t m_nCurrentPulse; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage_max; // 0x11e0
int32_t pulses; // 0x11e4
float duration; // 0x11e8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Disruptor_StaticStorm : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
int32_t movement_speed_reduction; // 0x11dc
int32_t attack_speed_reduction; // 0x11e0
bool m_bHasScepter; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Disruptor_StaticStormMute : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Disruptor_StaticStorm_Damage_Reduction : public CDOTA_Buff
{
public:
int32_t damage_reduction_pct; // 0x11d8
int32_t move_slow_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Disruptor_ThunderStrike_Int_Increase : public CDOTA_Buff
{
public:
int32_t int_increase_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Special_Disruptor_ThunderStrike_Int_Increase_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Magnataur_Horn_Toss : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Aghsfort_Magnataur_Horn_Toss : public CDOTA_Buff
{
public:
float air_duration; // 0x11d8
int32_t air_height; // 0x11dc
int32_t travel_distance; // 0x11e0
Vector m_vDestination; // 0x11e4
float m_flStartZ; // 0x11f0
float m_flCurTime; // 0x11f4
float m_flJumpDuration; // 0x11f8
float m_flJumpHeight; // 0x11fc
Vector m_vTargetHorizontalDirection; // 0x1200
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Magnataur_Horn_Toss_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x578
class CDOTA_Ability_Aghsfort_Magnataur_Shockwave : public CDOTABaseAbility
{
public:
CUtlVector< ParticleIndex_t > m_nFXIndices; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Multishot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Damage_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Damage_Increase : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Magnataur_Shockwave_Damage_Reduction : public CDOTA_Buff
{
public:
int32_t damage_reduction_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Shockwave_Boomerang : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Magnataur_Shockwave : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Magnataur_Shockwave_Pull : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float pull_duration; // 0x11ec
float effective_distance; // 0x11f0
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Aghsfort_Magnataur_ReversePolarity : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
Vector m_vPullLocation; // 0x55c
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Magnataur_Empower : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Magnataur_Empower : public CDOTA_Buff
{
public:
int32_t bonus_damage_pct; // 0x11d8
float cleave_damage_pct; // 0x11dc
int32_t cleave_starting_width; // 0x11e0
int32_t cleave_ending_width; // 0x11e4
int32_t cleave_distance; // 0x11e8
float splash_damage_pct; // 0x11ec
int32_t splash_radius; // 0x11f0
float self_multiplier; // 0x11f4
int32_t lifesteal_pct; // 0x11f8
GameTime_t m_fLastShockwaveProcTime; // 0x11fc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_All_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Empower_ShockwaveOnAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x580
class CDOTA_Ability_Aghsfort_Magnataur_Skewer : public CDOTABaseAbility
{
public:
int32_t skewer_radius; // 0x558
int32_t skewer_speed; // 0x55c
int32_t range; // 0x560
int32_t tree_radius; // 0x564
int32_t m_nProjectileID; // 0x568
int32_t m_nVisibleTargetCount; // 0x56c
Vector m_vSkewerDirection; // 0x570
int32_t m_nTargetsHit; // 0x57c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Impact : public CDOTA_Buff
{
public:
float slow_duration; // 0x11d8
int32_t skewer_damage; // 0x11dc
Vector m_vDirection; // 0x11e0
float m_flEndTime; // 0x11ec
float m_flCurTime; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Magnataur_Skewer_Slow : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
};
// Alignment: 8
// Size: 0x578
class CDOTA_Ability_Aghsfort_Magnataur_FriendlySkewer : public CDOTABaseAbility
{
public:
int32_t skewer_radius; // 0x558
int32_t skewer_speed; // 0x55c
int32_t max_targets; // 0x560
int32_t range; // 0x564
int32_t tree_radius; // 0x568
int32_t affects_creeps; // 0x56c
int32_t m_nProjectileID; // 0x570
int32_t m_nTargetsHit; // 0x574
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Magnataur_Skewer_Bonus_Strength : public CDOTA_Buff
{
public:
int32_t strength_gain; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_OriginalScepter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_BonusStrength : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_Shockwave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Skewer_HornToss : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Radius : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Allies_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Steroid : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Magnataur_ReversePolarity_Steroid : public CDOTA_Buff
{
public:
int32_t move_speed_percent; // 0x11d8
int32_t attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Magnataur_Reverse_Polarity_Polarity_Dummy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Magnataur_Reverse_Polarity_Polarity_Dummy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Aghsfort_Special_Magnataur_ReversePolarity_Polarity : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
Vector m_vPullLocation; // 0x55c
CDOTABaseAbility* pAbilityPrimaryPolarity; // 0x568
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_No_Secondary_Dagger_Restriction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_On_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_AutoDagger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PhantomAssassin_Stifling_Dagger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PhantomAssassin_StiflingDagger_Caster : public CDOTA_Buff
{
public:
int32_t base_damage; // 0x11d8
int32_t attack_factor; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PhantomAssassin_StiflingDagger : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_On_Attack : public CDOTA_Buff
{
public:
int32_t strike_chance; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_Stifling_Dagger_AutoDagger : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Buff_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Mastery : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_PhantomStrike_Damage_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PhantomAssassin_PhantomStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PhantomAssassin_PhantomStrike : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_evasion; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_PhantomAssassin_PhantomStrike_Damage_Reduction : public CDOTA_Buff
{
public:
int32_t damage_reduction_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Regen_When_Active : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Dagger_On_End : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_PhantomAssassin_Blur_Immediate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PhantomAssassin_Blur : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PhantomAssassin_Blur : public CDOTA_Buff
{
public:
int32_t bonus_evasion; // 0x11d8
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_PhantomAssassin_BlurActive : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
float fade_duration; // 0x11ec
bool m_bDestroyNext; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PhantomAssassin_CoupdeGrace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PhantomAssassin_CoupdeGrace : public CDOTA_Buff
{
public:
int32_t crit_bonus; // 0x11d8
int32_t crit_chance; // 0x11dc
bool crit_active; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t m_nAttackRecord; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_PhantomAssassin_MarkedForDeath : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_MarksTarget : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_Execute : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_KillsRefresh : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_PhantomAssassin_CoupDeGrace_BloodyDebuff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_PhantomAssassin_CoupDeGrace_BloodyDebuff : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splitshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splitshot : public CDOTA_Buff
{
public:
int32_t damage_modifier; // 0x11d8
int32_t split_shot_bonus_range; // 0x11dc
int32_t arrow_count; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_DoubleAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_DoubleAttack : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_iAttacksRemaining; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_NoMana : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Arctic_Burn_Splash_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Aghsfort_Winter_Wyvern_Arctic_Burn : public CDOTABaseAbility
{
public:
CUtlVector< CEntityIndex > m_BurnedTargets; // 0x558
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Frost_Attack : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Flight : public CDOTA_Buff
{
public:
float attack_point; // 0x11d8
int32_t attack_range_bonus; // 0x11dc
int32_t projectile_speed_bonus; // 0x11e0
int32_t night_vision_bonus; // 0x11e4
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Arctic_Burn_Slow : public CDOTA_Buff
{
public:
float damage_per_second; // 0x11d8
int32_t move_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Main_Target_Hit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Vacuum : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Aghsfort_Winter_Wyvern_Splinter_Blast : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
int32_t splinter_damage; // 0x560
CHandle< CBaseEntity > m_hMainTarget; // 0x564
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Splinter_Blast_Slow : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Splinter_Blast_Vacuum : public CDOTA_Buff
{
public:
float pull_speed; // 0x11d8
Vector vPullLocation; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Blast_On_End : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Magic_Damage_Block : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Winter_Wyvern_Cold_Embrace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Cold_Embrace : public CDOTA_Buff
{
public:
int32_t m_nOriginalAttackCapability; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x8]; // 0x11dc
public:
bool m_bDidBlast; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t heal_additive; // 0x11e8
float heal_percentage; // 0x11ec
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Winter_Wyvern_Cold_Embrace_Magic_Damage_Block : public CDOTA_Buff
{
public:
int32_t barrier_amount; // 0x11d8
int32_t barrier_block; // 0x11dc
int32_t m_nMaxMovementSpeed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Transfer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Damage_Amp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Winter_Wyvern_Winters_Curse_Heal_On_Death : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Winter_Wyvern_Winters_Curse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse_Kill_Credit : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse_Aura : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nAlliesTaunted; // 0x11dc
bool m_bRelicTriggered; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t radius; // 0x11e4
int32_t damage_amplification; // 0x11e8
int32_t damage_reduction; // 0x11ec
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Winter_Wyvern_Winters_Curse : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
CHandle< CBaseEntity > m_hDesiredTarget; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
};
// Alignment: 11
// Size: 0x5a8
class CDOTA_Ability_Aghsfort_Snapfire_MortimerKisses : public CDOTABaseAbility
{
public:
int32_t m_nDamagePerProjectile; // 0x558
int32_t damage_per_impact; // 0x55c
int32_t impact_radius; // 0x560
int32_t projectile_vision; // 0x564
int32_t m_nFragmentationImpactRadius; // 0x568
int32_t firetrail_radius; // 0x56c
int32_t firetrail_damage; // 0x570
int32_t firetrail_tick_interval; // 0x574
CUtlVector< Vector > m_vFirePoolLocations; // 0x578
float m_fNextDamageTick; // 0x590
Vector m_vLastFirePoolLoc; // 0x594
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Aghsfort_Snapfire_Scatterblast : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
float debuff_duration; // 0x55c
int32_t point_blank_range; // 0x560
float point_blank_dmg_bonus_pct; // 0x564
int32_t blast_width_end; // 0x568
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Snapfire_Scatterblast_Slow : public CDOTA_Buff
{
public:
bool m_bIsPointBlank; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t movement_slow_pct; // 0x11dc
int32_t attack_slow_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Snapfire_Scatterblast_Disarm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Aghsfort_Snapfire_FiresnapCookie : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x8]; // 0x55c
public:
int32_t projectile_speed; // 0x564
float pre_hop_duration; // 0x568
float cast_on_ally_gesture_time; // 0x56c
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_PreHop : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
bool m_bMovesHorizontal; // 0x11dc
bool m_bSecondaryCookie; // 0x11dd
};
// Alignment: 15
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_ShortHop : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
int32_t jump_height; // 0x11dc
int32_t jump_horizontal_distance; // 0x11e0
float pre_land_anim_time; // 0x11e4
float landing_gesture_duration; // 0x11e8
int32_t impact_radius; // 0x11ec
int32_t impact_damage; // 0x11f0
float impact_stun_duration; // 0x11f4
float m_flStartZ; // 0x11f8
float m_flCurTime; // 0x11fc
float m_flJumpDuration; // 0x1200
float m_flJumpDistance; // 0x1204
float m_flJumpHeight; // 0x1208
Vector m_vTargetHorizontalDirection; // 0x120c
bool m_bSecondaryCookie; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_AllyFlailAnim : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Snapfire_FiresnapCookie_LandingGesture : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Snapfire_FiresnapCookie_AlliedBuff : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t bonus_attack_damage; // 0x11dc
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Aghsfort_Snapfire_LilShredder : public CDOTABaseAbility
{
public:
int32_t m_iAttackIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< sLilShredderBounceInfo > m_BounceInfo; // 0x560
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Buff : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
int32_t m_nIsActive; // 0x11f8
bool m_bHasAttackTalent; // 0x11fc
private:
[[maybe_unused]] uint8_t __pad11fd[0x3]; // 0x11fd
public:
int32_t attack_range_bonus; // 0x1200
int32_t buffed_attacks; // 0x1204
float base_attack_time; // 0x1208
int32_t attack_speed_bonus; // 0x120c
float armor_duration; // 0x1210
int32_t damage; // 0x1214
int32_t bounce_range; // 0x1218
int32_t bounces; // 0x121c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Attack : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Snapfire_LilShredder_Debuff : public CDOTA_Buff
{
public:
float armor_reduction_per_attack; // 0x11d8
};
// Alignment: 16
// Size: 0x1228
class CDOTA_Modifier_Aghsfort_Snapfire_MortimerKisses : public CDOTA_Buff
{
public:
float m_fIntervalPerRocket; // 0x11d8
float m_flFacingTarget; // 0x11dc
ParticleIndex_t m_nBeamFXIndex; // 0x11e0
CHandle< CBaseEntity > m_hBeamEnd; // 0x11e4
float m_flCurDistance; // 0x11e8
Vector m_vAimTarget; // 0x11ec
float m_fLastTurnAmount; // 0x11f8
int32_t m_nProjectilesLaunched; // 0x11fc
bool m_bDestroyOnNextThink; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_nProjectilesToLaunch; // 0x1204
bool m_bHasProjectileTalent; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0xb]; // 0x1209
public:
int32_t projectile_count; // 0x1214
int32_t projectile_vision; // 0x1218
float turn_rate; // 0x121c
int32_t min_range; // 0x1220
float delay_after_last_projectile; // 0x1224
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Snapfire_MortimerKisses_VisionSource : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Snapfire_Magma_Thinker : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
int32_t impact_radius; // 0x11dc
int32_t move_slow_pct; // 0x11e0
float burn_linger_duration; // 0x11e4
ParticleIndex_t m_nPathEffectIndex; // 0x11e8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Snapfire_Magma_Burn_Slow : public CDOTA_Buff
{
public:
int32_t m_nMoveSlowPct; // 0x11d8
float m_fBurnDamagePerTick; // 0x11dc
int32_t move_slow_pct; // 0x11e0
float burn_interval; // 0x11e4
int32_t burn_damage; // 0x11e8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Aghsfort_Snapfire_GobbleUp : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hGobbledUnit; // 0x558
float max_time_in_belly; // 0x55c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Snapfire_GobbleUp_Creep : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Snapfire_GobbleUp_BellyHasUnit : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hGobbledUnit; // 0x11d8
float max_time_in_belly; // 0x11dc
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Aghsfort_Snapfire_SpitCreep : public CDOTABaseAbility
{
public:
int32_t m_nDamagePerProjectile; // 0x558
CHandle< CBaseEntity > m_hGobbledUnit; // 0x55c
int32_t m_nProjectileID; // 0x560
};
// Alignment: 24
// Size: 0x1248
class CDOTA_Modifier_Aghsfort_Snapfire_SpitCreep_ArcingUnit : public CDOTA_Buff
{
public:
float m_flPredictedTotalTime; // 0x11d8
Vector m_vStartPosition; // 0x11dc
float m_flCurrentTimeHoriz; // 0x11e8
float m_flCurrentTimeVert; // 0x11ec
bool m_bHorizontalMotionInterrupted; // 0x11f0
bool m_bDamageApplied; // 0x11f1
bool m_bTargetTeleported; // 0x11f2
private:
[[maybe_unused]] uint8_t __pad11f3[0x1]; // 0x11f3
public:
Vector m_vHorizontalVelocity; // 0x11f4
Vector m_vLastKnownTargetPosition; // 0x1200
float m_flInitialVelocityZ; // 0x120c
float m_fClampedProjectileSpeed; // 0x1210
ParticleIndex_t m_nFXIndex; // 0x1214
float m_fAcceleration; // 0x1218
int32_t min_range; // 0x121c
float min_lob_travel_time; // 0x1220
float max_lob_travel_time; // 0x1224
int32_t impact_radius; // 0x1228
int32_t projectile_vision; // 0x122c
float stun_duration; // 0x1230
int32_t impact_damage; // 0x1234
float min_height_above_lowest; // 0x1238
float min_height_above_highest; // 0x123c
float min_acceleration; // 0x1240
float max_acceleration; // 0x1244
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Double_Barrel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_FullRange_PointBlank : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_Scatterblast_Barrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_MultiCookie : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_EnemyTarget : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_FiresnapCookie_Allied_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_Explosives : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_AllyCast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_LilShredder_Bouncing_Bullets : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Fragmentation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Incoming_Damage_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Fire_Trail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Snapfire_MortimerKisses_Autoattack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Snapfire_MortimerKisses_Autoattack : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Snapfire_MortimerKisses_Incoming_Damage_Reduction : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 15
// Size: 0x658
class CDOTA_Ability_Aghsfort_Tusk_Snowball_Dummy : public CDOTABaseAbility
{
public:
int32_t snowball_radius; // 0x558
int32_t snowball_grow_rate; // 0x55c
int32_t snowball_damage; // 0x560
int32_t snowball_damage_bonus; // 0x564
float stun_duration; // 0x568
int32_t bonus_damage; // 0x56c
float bonus_stun; // 0x570
int32_t snowball_speed; // 0x574
float snowball_duration; // 0x578
bool m_bIsExpired; // 0x57c
private:
[[maybe_unused]] uint8_t __pad057d[0x3]; // 0x57d
public:
Vector m_vProjectileLocation; // 0x580
private:
[[maybe_unused]] uint8_t __pad058c[0x4]; // 0x58c
public:
CountdownTimer ctSnowball; // 0x590
CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x5a8
ParticleIndex_t m_nFXIndex; // 0x5c0
CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5c4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Tusk_IceShards_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x5b0
class CDOTA_Ability_Aghsfort_Tusk_IceShards : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
int32_t shard_width; // 0x55c
int32_t shard_damage; // 0x560
int32_t shard_count; // 0x564
float shard_speed; // 0x568
float shard_duration; // 0x56c
float shard_angle_step; // 0x570
int32_t shard_distance; // 0x574
int32_t secondary_damage_pct; // 0x578
Vector m_vSpawnOrigin; // 0x57c
Vector m_vDirection; // 0x588
private:
[[maybe_unused]] uint8_t __pad0594[0xc]; // 0x594
public:
CDOTABaseAbility* m_pIceShardsStop; // 0x5a0
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Tusk_IceShard : public CDOTA_Buff
{
public:
Vector m_vPos; // 0x11d8
int32_t radius; // 0x11e4
float damage; // 0x11e8
float explosion_interval; // 0x11ec
};
// Alignment: 20
// Size: 0x678
class CDOTA_Ability_Aghsfort_Tusk_Snowball : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t snowball_windup_radius; // 0x568
int32_t snowball_radius; // 0x56c
int32_t snowball_grow_rate; // 0x570
int32_t snowball_damage; // 0x574
int32_t snowball_damage_bonus; // 0x578
float stun_duration; // 0x57c
int32_t bonus_damage; // 0x580
float bonus_stun; // 0x584
int32_t snowball_speed; // 0x588
float snowball_duration; // 0x58c
Vector m_vProjectileLocation; // 0x590
private:
[[maybe_unused]] uint8_t __pad059c[0x4]; // 0x59c
public:
CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x5a0
ParticleIndex_t m_nFXIndex; // 0x5b8
private:
[[maybe_unused]] uint8_t __pad05bc[0x4]; // 0x5bc
public:
CountdownTimer ctSnowball; // 0x5c0
bool m_bSpeakAlly; // 0x5d8
bool m_bIsExpired; // 0x5d9
bool m_bInWindup; // 0x5da
private:
[[maybe_unused]] uint8_t __pad05db[0x1]; // 0x5db
public:
CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5dc
int32_t m_nContainedValidUnits; // 0x5e0
bool m_bEndingSnowball; // 0x5e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Target : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Tusk_Launch_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Visible : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Movement : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Tusk_Snowball_Movement_Friendly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Tusk_WalrusPunch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch : public CDOTA_Buff
{
public:
int32_t crit_multiplier; // 0x11d8
float air_time; // 0x11dc
float slow_duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11f0
bool m_bWalrusPunch; // 0x11f4
bool m_bPunchKill; // 0x11f5
private:
[[maybe_unused]] uint8_t __pad11f6[0x2]; // 0x11f6
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x1210
int32_t m_nAttackRecord; // 0x1214
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 12
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Tusk_WalrusPunch_AirTime : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float flAirTime; // 0x1204
float m_flEndTime; // 0x1208
float m_fHorizontalDistance; // 0x120c
float m_fVerticalDistance; // 0x1210
float m_fDamage; // 0x1214
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Tusk_Tag_Team : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
float slow_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Tusk_Tag_Team_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Circle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Explode : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_IceShards_Secondary : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Tusk_Snowball_SpellLifesteal : public CDOTA_Buff
{
public:
float spell_lifesteal_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_End_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Snowball_Global : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Toggle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_DeathCooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_TagTeam_Global : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Reset : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Land_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Tusk_Walrus_Punch_Wallop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Tusk_Ice_Shards_Explode_Dummy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ursa_Overpower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ursa_Fury_Swipes : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ursa_Fury_Swipes : public CDOTA_Buff
{
public:
int32_t damage_per_stack; // 0x11d8
float bonus_reset_time; // 0x11dc
float bonus_reset_time_roshan; // 0x11e0
int32_t max_swipe_stack; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ursa_Fury_Swipes_Damage_Increase : public CDOTA_Buff
{
public:
int32_t damage_per_stack; // 0x11d8
int32_t m_nArmorReductionPerStack; // 0x11dc
int32_t m_nLifestealPerStack; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ursa_Earthshock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Ursa_Earthshock_Move : public CDOTA_Buff
{
public:
float hop_duration; // 0x11d8
int32_t hop_height; // 0x11dc
int32_t hop_distance; // 0x11e0
int32_t impact_damage; // 0x11e4
float m_flStartZ; // 0x11e8
float m_flCurTime; // 0x11ec
float m_flJumpDuration; // 0x11f0
float m_flJumpHeight; // 0x11f4
Vector m_vTargetHorizontalDirection; // 0x11f8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ursa_Overpower : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus_pct; // 0x11d8
int32_t m_nEarthshockAttacks; // 0x11dc
int32_t m_nOverpowerCritMultiplier; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Ursa_Earthshock : public CDOTA_Buff
{
public:
int32_t m_nMissChance; // 0x11d8
bool m_bAddOverpower; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float m_flOverpowerDuration; // 0x11e0
int32_t m_nNumOverpowerAttacks; // 0x11e4
int32_t movement_slow; // 0x11e8
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Ursa_Earthshock_DeepInvis : public CDOTA_Modifier_Invisible
{
public:
CHandle< CBaseEntity > m_hVisibleEntity; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Ursa_Earthshock_DeepInvis_Visual : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1210
class CDOTA_Modifier_Aghsfort_Special_Ursa_Earthshock_Knockback : public CDOTA_Modifier_Knockback
{
public:
float value3; // 0x1208
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Ursa_Overpower_Evasion : public CDOTA_Buff
{
public:
int32_t value2; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Ursa_Overpower_Taunt : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
bool m_bDidSetAttackTarget; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Ursa_Overpower_Taunt_Armor : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Ursa_Enrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Ursa_Enrage : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t status_resistance; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Ursa_Enrage_Magic_Immunity : public CDOTA_Modifier_MagicImmune
{
public:
int32_t m_nModelScale; // 0x11d8
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ursa_Enrage_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Ursa_Enrage_Armor : public CDOTA_Buff
{
public:
int32_t value2; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Ursa_Enrage_AttackSpeed : public CDOTA_Buff
{
public:
int32_t value2; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_Invis : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_ApplyFurySwipes : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_OverpowerStack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Earthshock_MissChance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Evasion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Taunt : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Overpower_Cleave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_ArmorReduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_FurySwipes_UrsaMinor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Magic_Immunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Fear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Armor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_AttackSpeed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Ursa_Enrage_Earthshock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x5d0
class CDOTA_Ability_Aghsfort_Mars_Spear : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
CUtlVector< int32 > m_vecProjectileHandles; // 0x570
private:
[[maybe_unused]] uint8_t __pad0588[0x8]; // 0x588
public:
int32_t damage; // 0x590
private:
[[maybe_unused]] uint8_t __pad0594[0x4]; // 0x594
public:
CUtlVector< CHandle< CBaseEntity > > hImpaledTargetList; // 0x598
int32_t m_nTargetsImpaled; // 0x5b0
int32_t m_nMaxImpaleTargets; // 0x5b4
int32_t m_nBurningTrailRadius; // 0x5b8
Vector m_vLastTrailThinkerLocation; // 0x5bc
bool bHasStartedBurning; // 0x5c8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_Spear_Impale : public CDOTA_Buff
{
public:
int32_t m_nProjectileHandle; // 0x11d8
bool m_bLatched; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Mars_Spear_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Mars_ArenaOfBlood : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Thinker : public CDOTA_Buff
{
public:
float radius; // 0x11d8
float formation_time; // 0x11dc
float m_flInitialZ; // 0x11e0
float m_flFinalZ; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e8[0x10]; // 0x11e8
public:
bool m_bCaughtOne; // 0x11f8
bool m_bKilledOne; // 0x11f9
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_AnimationAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Animation : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_BuffAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Buff : public CDOTA_Buff
{
public:
int32_t health_regen; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 7
// Size: 0x1240
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t width; // 0x11dc
int32_t spear_damage; // 0x11e0
int32_t spear_distance_from_wall; // 0x11e4
float spear_attack_interval; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x34]; // 0x11ec
public:
int32_t m_hObstruction; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
CUtlVector< Vector > m_vecAvoidLocations; // 0x1228
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Spear : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Leash : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float width; // 0x11dc
Vector m_vOriginLoc; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Mars_ArenaOfBlood_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Mars_GodsRebuke : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_Gods_Rebuke : public CDOTA_Buff
{
public:
int32_t knockback_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_GodsRebuke_Crit : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Mars_Bulwark : public CDOTABaseAbility
{
public:
float active_duration; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Mars_Bulwark_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Mars_Bulwark : public CDOTA_Buff
{
public:
float physical_damage_reduction; // 0x11d8
float physical_damage_reduction_side; // 0x11dc
float forward_angle; // 0x11e0
float side_angle; // 0x11e4
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Mars_Bulwark_Active : public CDOTA_Buff
{
public:
int32_t redirect_chance; // 0x11d8
int32_t redirect_range; // 0x11dc
float forward_angle; // 0x11e0
float side_angle; // 0x11e4
int32_t redirect_speed_penatly; // 0x11e8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_Mars_Spear_Burning_Trail_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
int32_t path_radius; // 0x11e4
float linger_duration; // 0x11e8
float flDamage; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Mars_Spear_Burning_Trail_Burn : public CDOTA_Buff
{
public:
float flDamage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Mars_Gods_Rebuke_Strength_Buff : public CDOTA_Buff
{
public:
int32_t strength_gain; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Spear_MultiSkewer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Spear_ImpaleExplosion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Spear_BurningTrail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_FullCircle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_GodsRebuke_Strength_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Counter_Rebuke : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Healing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Return : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Spears : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Bulwark_Soldiers : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Fear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Global : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Attack_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Mars_Arena_Of_Blood_Outside_Perimeter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Mars_Bulwark_Spears : public CDOTA_Buff
{
public:
int32_t stack_limit; // 0x11d8
float stack_interval; // 0x11dc
ParticleIndex_t m_nFxIndexB; // 0x11e0
int32_t iCur_stack; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Mars_Bulwark_Soldier_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Aghsfort_Weaver_TheSwarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Weaver_Swarm : public CDOTA_Buff
{
public:
int32_t m_iMaxDist; // 0x11d8
int32_t m_iAttackCount; // 0x11dc
int32_t destroy_attacks; // 0x11e0
Vector m_vDirection; // 0x11e4
Vector m_vStartLoc; // 0x11f0
CHandle< CBaseEntity > m_hAttachTarget; // 0x11fc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Weaver_Swarm_Debuff : public CDOTA_Buff
{
public:
float armor_reduction; // 0x11d8
int32_t damage; // 0x11dc
int32_t damage_share_percentage; // 0x11e0
float m_flCurrentArmorReduction; // 0x11e4
float flTotalDamage; // 0x11e8
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Aghsfort_Weaver_Shukuchi : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t radius; // 0x55c
int32_t damage; // 0x560
float fade_time; // 0x564
};
// Alignment: 7
// Size: 0x1228
class CDOTA_Modifier_Aghsfort_Weaver_Shukuchi : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
int32_t damage; // 0x11ec
int32_t speed; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11f8
bool bHasStartedBurning; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1211[0x3]; // 0x1211
public:
int32_t m_nBurningTrailRadius; // 0x1214
Vector m_vLastTrailThinkerLocation; // 0x1218
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Weaver_GeminateAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1250
class CDOTA_Modifier_Aghsfort_Weaver_GeminateAttack : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_iAttacksRemaining; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Weaver_GeminateAttack_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Aghsfort_Weaver_TimeLapse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nNPCSpawnedID; // 0x568
};
// Alignment: 4
// Size: 0x12b8
class CDOTA_Modifier_Aghsfort_Weaver_TimeLapse : public CDOTA_Buff
{
public:
Vector m_PositionIndex[11]; // 0x11d8
float m_flLife[11]; // 0x125c
float m_flMana[11]; // 0x1288
bool m_bHasValidHistory; // 0x12b4
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_Weaver_Shukuchi_Trail_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
int32_t path_radius; // 0x11e4
float linger_duration; // 0x11e8
float flDamage; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Weaver_Shukuchi_Trail_Burn : public CDOTA_Buff
{
public:
float flDamage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Explosion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Swarm_Damage_Transfer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Splitshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Applies_Swarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Geminate_Attack_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Pull : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Trail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Attack_On_Completion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Swarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Shukuchi_Greater_Invisibility : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Restoration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Weaver_Time_Lapse_Explosion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_PoisonAttackExplode : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_PoisonAttackSpread : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_PoisonSnap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Viper_PoisonAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Viper_PoisonAttack : public CDOTA_Buff
{
public:
float duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Viper_PoisonAttack_Slow : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t magic_resistance; // 0x11e0
float m_flAccumDamage; // 0x11e4
float m_flPoisonSnapCounter; // 0x11e8
int32_t m_nPoisonSnapThreshold; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Viper_NethertoxinCharges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Viper_NethertoxinLifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Viper_Nethertoxin_Persist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Viper_Nethertoxin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Viper_Nethertoxin_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Viper_Nethertoxin : public CDOTA_Buff
{
public:
int32_t min_damage; // 0x11d8
int32_t max_damage; // 0x11dc
float max_duration; // 0x11e0
float m_flDamageInterval; // 0x11e4
float m_flTimeIncrement; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Viper_NethertoxinMute : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkinFlying : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkinSpeedSteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_CorrosiveSkin_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Flying : public CDOTA_Buff
{
public:
int32_t m_nRadius; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Viper_CorrosiveSkin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin : public CDOTA_Buff
{
public:
int32_t bonus_magic_resistance; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Speed_Steal : public CDOTA_Buff
{
public:
float m_flFactor; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Viper_CorrosiveSkin_Slow : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_ViperStrikeAllies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_ChainViperStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_ChanneledViperStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Viper_PeriodicViperStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Aghsfort_Viper_Aghsfort_ViperStrike : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
int32_t m_nTargetTeam; // 0x55c
float m_flNextViperStrikeTime; // 0x560
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Viper_ViperStrike_Slow : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t damage; // 0x11e0
bool m_bTargetedAlly; // 0x11e4
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Special_Viper_Periodic_Strike : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t radius; // 0x11dc
int32_t m_nTargetTeam; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_hAlreadyHit; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_VoidSpiritBoss_Passive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x598
class CDOTA_Ability_AghsFort_VoidSpiritBoss_AetherRemnant : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXPreview; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x8]; // 0x55c
public:
Vector m_vDashPosition; // 0x564
Vector m_vFacePosition; // 0x570
Vector m_vEndpoint; // 0x57c
int32_t start_radius; // 0x588
int32_t end_radius; // 0x58c
int32_t remnant_watch_distance; // 0x590
int32_t projectile_speed; // 0x594
};
// Alignment: 11
// Size: 0x1240
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_Unit : public CDOTA_Buff
{
public:
Vector m_vFacingDir; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_hWatchPathThinkers; // 0x11e8
ParticleIndex_t m_nBeamFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< int32 > m_nViewerIDs; // 0x1208
int32_t remnant_watch_distance; // 0x1220
int32_t remnant_watch_radius; // 0x1224
float duration; // 0x1228
int32_t watch_path_vision_radius; // 0x122c
int32_t impact_damage; // 0x1230
float pull_duration; // 0x1234
float activation_delay; // 0x1238
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_WatchThinker : public CDOTA_Buff
{
public:
int32_t remnant_watch_radius; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnant_Pull : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
PlayerID_t m_nPlayerID; // 0x11dc
float m_fMovementSpeed; // 0x11e0
CHandle< CDOTA_BaseNPC > m_hPullTarget; // 0x11e4
float think_interval; // 0x11e8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnantThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
Vector m_vFacingDir; // 0x11dc
CHandle< CBaseEntity > m_hRemnant; // 0x11e8
bool m_bTriggered; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_flCurThink; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AetherRemnantUnit_Truesight : public CDOTA_Buff
{
public:
int32_t m_nRadius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 10
// Size: 0x598
class CDOTA_Ability_AghsFort_VoidSpiritBoss_AstralStep : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXPreview; // 0x558
ParticleIndex_t m_nFXDestinationPreview; // 0x55c
Vector m_vStartPos; // 0x560
Vector m_vDestination; // 0x56c
Vector m_vDirection; // 0x578
int32_t radius; // 0x584
int32_t min_travel_distance; // 0x588
int32_t max_travel_distance; // 0x58c
float debuff_duration; // 0x590
float pop_damage_delay; // 0x594
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_Debuff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXStackIndex; // 0x11d8
int32_t movement_slow_pct; // 0x11dc
int32_t pop_damage; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_AstralStep_Caster : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_VoidSpiritBoss_Dissimilate : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXPreview; // 0x558
float phase_duration; // 0x55c
};
// Alignment: 19
// Size: 0x1278
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Dissimilate_Phase : public CDOTA_Buff
{
public:
Vector m_vFirstPortalPos; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< Vector > m_vecDestinations; // 0x11e8
CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1200
CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1218
int32_t m_nCurrentDestinationIndex; // 0x1230
int32_t m_nClosestIndexPosToClick; // 0x1234
int32_t m_nPortalHeightOffset; // 0x1238
private:
[[maybe_unused]] uint8_t __pad123c[0x4]; // 0x123c
public:
char* m_szAlliesPortalFX; // 0x1240
char* m_szEnemiesPortalFX; // 0x1248
int32_t m_nPortalRadius; // 0x1250
int32_t m_nPortalPadding; // 0x1254
int32_t m_nFinalImpactDamageRadius; // 0x1258
int32_t m_nFinalImpactFXRadius; // 0x125c
int32_t destination_fx_radius; // 0x1260
int32_t damage_radius; // 0x1264
int32_t portals_per_ring; // 0x1268
int32_t angle_per_ring_portal; // 0x126c
int32_t first_ring_distance_offset; // 0x1270
float debuff_duration; // 0x1274
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_Dissimilate_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_ResonantPulse_PhysicalBuff : public CDOTA_Buff
{
public:
int32_t base_absorb_amount; // 0x11d8
int32_t m_nAbsorbRemaining; // 0x11dc
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_AghsFort_VoidSpiritBoss_ResonantPulse : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXPreview; // 0x558
bool m_bGrantedScepterCharges; // 0x55c
private:
[[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d
public:
float buff_duration; // 0x560
int32_t base_absorb_amount; // 0x564
int32_t absorb_per_hero_hit; // 0x568
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_AghsFort_VoidSpiritBoss_ResonantPulse_Ring : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x11e8
int32_t speed; // 0x1200
int32_t radius; // 0x1204
int32_t damage; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Sniper_Shrapnel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float duration; // 0x11dc
float damage_delay; // 0x11e0
int32_t m_nShrapnelPct; // 0x11e4
bool m_bExploded; // 0x11e8
};
// Alignment: 0
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Sniper_TakeAim_Artillery_Thinker : public CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Thinker
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Slow : public CDOTA_Buff
{
public:
float m_fAccumulatedDamage; // 0x11d8
int32_t shrapnel_damage; // 0x11dc
int32_t slow_movement_speed; // 0x11e0
int32_t miss_chance; // 0x11e4
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Sniper_TakeAim_Artillery_Slow : public CDOTA_Modifier_AghsFort_Sniper_Shrapnel_Slow
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_AttackSpeed : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
float value2; // 0x11dc
int32_t m_nAttackSpeedBonus; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Sniper_Shrapnel_AttackSpeed_Decrementer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Sniper_Headshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1228
class CDOTA_Modifier_AghsFort_Sniper_Headshot : public CDOTA_Buff
{
public:
int32_t proc_chance; // 0x11d8
float slow_duration; // 0x11dc
int32_t damage; // 0x11e0
int32_t knockback_distance; // 0x11e4
GameTime_t m_fLastStunProcTime; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< int16 > m_vHeadshotRecords; // 0x11f0
CUtlVector< int16 > m_vHeadshotAssassinateRecords; // 0x1208
int32_t m_nCritPct; // 0x1220
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Sniper_Shotgun : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Sniper_Headshot_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t slow_vs_considered_hero; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Sniper_TakeAim : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Sniper_TakeAim : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t active_attack_range_multiplier; // 0x11dc
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Sniper_TakeAim_Bonus : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t m_nAttackSpeedPerAttack; // 0x11dc
int32_t m_nShrapnelPct; // 0x11e0
bool m_bNoCollision; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CUtlVector< CHandle< CBaseEntity > > m_vecArtilleryEnemies; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Sniper_TakeAim_ArmorReduction : public CDOTA_Buff
{
public:
int32_t value2; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Sniper_TakeAim_RapidFire : public CDOTA_Buff
{
public:
int32_t value2; // 0x11d8
int32_t value3; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Sniper_TakeAim_AOE_Marked : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_AghsFort_Sniper_TakeAim_HopBackwards : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bDamageApplied; // 0x11fd
bool m_bTargetTeleported; // 0x11fe
private:
[[maybe_unused]] uint8_t __pad11ff[0x1]; // 0x11ff
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 9
// Size: 0x580
class CDOTA_Ability_AghsFort_Sniper_Assassinate : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
CHandle< CBaseEntity > m_hTarget; // 0x560
ParticleIndex_t m_iIndex; // 0x564
bool m_bHasBuckshotAbility; // 0x568
bool m_bInBuckshot; // 0x569
private:
[[maybe_unused]] uint8_t __pad056a[0x2]; // 0x56a
public:
int32_t m_nScatterRange; // 0x56c
int32_t m_nScatterWidth; // 0x570
int32_t m_nBuckshotDamagePct; // 0x574
int32_t m_nDamageType; // 0x578
int32_t damage; // 0x57c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Sniper_Assassinate : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Special_Sniper_Assassinate_Killshot : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_Bombs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_AttackSpeed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_MissChance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Shrapnel_MoveSpeed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Crits : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Stuns : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_SelfPurge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_Shrapnel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_AOE : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_HopBackwards : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_ArmorReduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_TakeAim_RapidFire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_Buckshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_OriginalScepter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_Killshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Assassinate_ConcussiveDummy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Shotgun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Sniper_Concussive_Grenade : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Sniper_Concussive_Grenade : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_Assassinate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Sniper_Headshot_ArmorReduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Sniper_Headshot_ArmorReduction : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_EarthSpiritBoss_StoneCaller : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_StoneThinker : public CDOTA_Buff
{
public:
bool m_bHasBeenMagnetized; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 12
// Size: 0x5a0
class CDOTA_Ability_AghsFort_EarthSpiritBoss_BoulderSmash : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t rock_damage; // 0x55c
int32_t radius; // 0x560
int32_t rock_search_aoe; // 0x564
float unit_distance; // 0x568
float rock_distance; // 0x56c
int32_t m_nProjectileID; // 0x570
CHandle< CBaseEntity > m_hCursorTarget; // 0x574
bool m_bUsedStone; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
CHandle< CBaseEntity > m_hTarget; // 0x57c
bool m_bTargetStone; // 0x580
private:
[[maybe_unused]] uint8_t __pad0581[0x7]; // 0x581
public:
CUtlVector< CHandle< CBaseEntity > > m_vecBoulderSmashedEnts; // 0x588
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_BoulderSmash : public CDOTA_Buff
{
public:
bool m_bInterrupted; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t m_nProjectileID; // 0x11dc
};
// Alignment: 15
// Size: 0x5c8
class CDOTA_Ability_AghsFort_EarthSpiritBoss_RollingBoulder : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t radius; // 0x568
int32_t speed; // 0x56c
int32_t rock_speed; // 0x570
int32_t damage; // 0x574
float distance; // 0x578
float rock_distance; // 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
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_RollingBoulder_Caster : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_BoulderSmash_Debuff : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_GeogmagneticGrip_Debuff : public CDOTA_Modifier_Silence
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_EarthSpiritBoss_GeomagneticGrip : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 10
// Size: 0x1228
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_GeomagneticGrip : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t rock_damage; // 0x11dc
float pull_units_per_second; // 0x11e0
float pull_units_per_second_heroes; // 0x11e4
float total_pull_distance; // 0x11e8
float duration; // 0x11ec
bool m_bUsedStone; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
Vector m_vDestination; // 0x11f4
Vector m_vLocation; // 0x1200
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1210
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_Petrify : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
bool m_bHasBeenMagnetized; // 0x11dc
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_AghsFort_EarthSpiritBoss_Magnetize : public CDOTABaseAbility
{
public:
int32_t cast_radius; // 0x558
int32_t rock_explosion_radius; // 0x55c
float damage_duration; // 0x560
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_AghsFort_EarthSpiritBoss_Magnetize : public CDOTA_Buff
{
public:
int32_t rock_search_radius; // 0x11d8
int32_t damage_per_second; // 0x11dc
float damage_interval; // 0x11e0
float rock_explosion_delay; // 0x11e4
float damage_duration; // 0x11e8
int32_t cast_radius; // 0x11ec
int32_t rock_explosion_radius; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_hExplodedRocks; // 0x11f8
float duration; // 0x1210
bool m_bShowOverhead; // 0x1214
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_EarthSpiritBoss_Petrify : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Cast_Radius : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Cooldown_Reduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Omniknight_Purification_Cooldown_Reduction : public CDOTA_Buff
{
public:
float cooldown_reduction_per_hit; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Purification_Multicast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Omniknight_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Omniknight_Purification_Multicast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Omniknight_Degen_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Omniknight_Degen_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Omniknight_Degen_Aura_Effect : public CDOTA_Buff
{
public:
int32_t move_speed_bonus; // 0x11d8
int32_t attack_speed_bonus; // 0x11dc
float damage_interval; // 0x11e0
int32_t attack_damage_pct; // 0x11e4
int32_t death_heal; // 0x11e8
bool bIsAllied; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Omniknight_Repel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Omniknight_Repel : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
float hp_regen; // 0x11dc
int32_t bonus_str; // 0x11e0
int32_t damage_increase_outgoing_pct; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Omniknight_GuardianAngel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Omniknight_GuardianAngel : public CDOTA_Buff
{
public:
int32_t hp_regen; // 0x11d8
int32_t magic_resistance; // 0x11dc
int32_t purification_trigger_chance; // 0x11e0
float purification_trigger_cooldown; // 0x11e4
GameTime_t m_fLastProc; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Procs_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Outgoing_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Applies_Degen_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Damage_Instance_Refraction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Omniknight_Repel_Damage_Instance_Refraction : public CDOTA_Buff
{
public:
int32_t damage_threshold; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Repel_Knockback_On_Cast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Toggle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Degen_Aura_Restoration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Immune_Flight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Aghsfort_Omniknight_Repel_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target_Dummy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Omniknight_Guardian_Angel_Single_Target_Dummy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Aghsfort_WitchDoctor_ParalyzingCask : public CDOTABaseAbility
{
public:
int32_t bounces; // 0x558
int32_t bounce_bonus_damage; // 0x55c
int32_t damage; // 0x560
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_WitchDoctor_Cask_Thinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t remaining_bounces; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_WitchDoctor_VoodooRestoration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_WitchDoctor_Voodoo_Restoration_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_WitchDoctor_Voodoo_Restoration_Heal : public CDOTA_Buff
{
public:
int32_t heal; // 0x11d8
float mana_per_second; // 0x11dc
float heal_interval; // 0x11e0
int32_t lifesteal_percent; // 0x11e4
int32_t spell_lifesteal_pct; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_WitchDoctor_Maledict : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_WitchDoctor_MaledictDoT : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_WitchDoctor_Maledict : public CDOTA_Buff
{
public:
int32_t m_iStartHealth; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t bonus_damage_threshold; // 0x11e0
int32_t max_bonus_damage; // 0x11e4
int32_t ticks; // 0x11e8
int32_t iCurrentTick; // 0x11ec
};
// Alignment: 9
// Size: 0x590
class CDOTA_Ability_Aghsfort_WitchDoctor_DeathWard : public CDOTABaseAbility
{
public:
int32_t m_iDamage; // 0x558
int32_t m_iBounceRadius; // 0x55c
int32_t m_iProjectileSpeed; // 0x560
int32_t m_iBounces; // 0x564
CHandle< CBaseEntity > m_hWard; // 0x568
GameTime_t m_fWardExpireTime; // 0x56c
ParticleIndex_t m_nFXIndex; // 0x570
int32_t m_iAttackIndex; // 0x574
CUtlVector< sAghsfortWardBounceInfo > m_BounceInfo; // 0x578
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_WitchDoctor_DeathWard : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t m_iBounceRadius; // 0x11dc
bool m_bFirstAttack; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t m_iBounces; // 0x11e4
ParticleIndex_t m_nStaffParticle; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Multicask : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Applies_Maledict : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_AoE_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_ParalyzingCask_Attack_Procs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Ground_Curse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_AoE_Procs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Death_Restoration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Affects_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Maledict_Infectious : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Enemy_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Damage_Amp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Voodoo_Restoration_Mana_Restore : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_No_Channel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Splitshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Damage_Resist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_WitchDoctor_Death_Ward_Bounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_WitchDoctor_ParalyzingCask_Attack_Procs : public CDOTA_Buff
{
public:
int32_t cask_chance; // 0x11d8
int32_t cask_cooldown; // 0x11dc
GameTime_t flLastProcTime; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_WitchDoctor_DeathWard_Damage_Resist : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 9
// Size: 0x590
class CDOTA_Ability_Aghsfort_WitchDoctor_DeathWard_No_Channel : public CDOTABaseAbility
{
public:
int32_t m_iDamage; // 0x558
int32_t m_iBounceRadius; // 0x55c
int32_t m_iProjectileSpeed; // 0x560
int32_t m_iBounces; // 0x564
CHandle< CBaseEntity > m_hWard; // 0x568
float m_fWardExpireTime; // 0x56c
ParticleIndex_t m_nFXIndex; // 0x570
int32_t m_iAttackIndex; // 0x574
CUtlVector< sAghsfortWardBounceInfo > m_BounceInfo; // 0x578
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Aghsfort_Modifier_WitchDoctor_ForceKill : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Witch_Doctor_Death_Ward_No_Channel : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Special_Witch_Doctor_Death_Ward_Splitshot : public CDOTA_Buff
{
public:
int32_t damage_modifier; // 0x11d8
int32_t split_shot_bonus_range; // 0x11dc
int32_t split_shot_count; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TemplarAssassin_PsionicTrap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TemplarAssassin_Refraction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_RefractionDamage : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_RefractionAbsorb : public CDOTA_Buff
{
public:
int32_t damage_threshold; // 0x11d8
int32_t max_damage_absorb; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TemplarAssassin_Meld : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_Meld_Animation : public CDOTA_Buff
{
public:
bool launched_attack; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_TemplarAssassin_Meld : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
bool launched_attack; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
CHandle< CBaseEntity > m_hTarget; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_MeldArmor : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TemplarAssassin_PsiBlades : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_PsiBlades : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
float attack_spill_range; // 0x11dc
int32_t attack_spill_width; // 0x11e0
int32_t attack_spill_pct; // 0x11e4
int32_t attack_spill_penalty; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_PsiBlades_Slow : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_Psionic_Trap_Thinker : public CDOTA_Buff
{
public:
int32_t trap_radius; // 0x11d8
float trap_delay_time; // 0x11dc
float slow_duration; // 0x11e0
int32_t max_pulses; // 0x11e4
int32_t iCurrentPulse; // 0x11e8
CHandle< CBaseEntity > m_hImage; // 0x11ec
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TemplarAssassin_Trap_Slow : public CDOTA_Buff
{
public:
int32_t movement_speed_slow; // 0x11d8
int32_t trap_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TemplarAssassin_Refraction_Holdout : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_TemplarAssassin_Refraction_Holdout : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t damage_absorb; // 0x11dc
float m_flDamageAbsorbed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_KillRefresh : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Counter_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Refraction_Detonate_Trap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_Area_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Attack_On_Activation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Teleport : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Meld_Refraction_On_Kill : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_Trap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_Splash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_Damage_Heals : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_Psionic_Trap_MultiPulse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Templar_Assassin_PsiBlades_AutoAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Special_Templar_Assassin_PsiBlades_AutoAttack : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t radius; // 0x11dc
int32_t m_iAttackRecord; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Templar_Assassin_Trap_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Slark_DarkPact : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Slark_DarkPact : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Slark_DarkPact_Pulses : public CDOTA_Buff
{
public:
int32_t m_iPulseCount; // 0x11d8
int32_t radius; // 0x11dc
float total_damage; // 0x11e0
int32_t total_pulses; // 0x11e4
int32_t heal_pct; // 0x11e8
float pulse_interval; // 0x11ec
bool bIsBaseAbility; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Slark_Pounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 16
// Size: 0x1240
class CDOTA_Modifier_Aghsfort_Slark_Pounce : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
bool m_bFoundUnit; // 0x1201
private:
[[maybe_unused]] uint8_t __pad1202[0x6]; // 0x1202
public:
CUtlVector< CHandle< CBaseEntity > > hitEntities; // 0x1208
int32_t pounce_distance; // 0x1220
int32_t pounce_distance_default; // 0x1224
float pounce_speed; // 0x1228
float pounce_acceleration; // 0x122c
int32_t pounce_radius; // 0x1230
int32_t pounce_damage; // 0x1234
float leash_duration; // 0x1238
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Slark_Pounce_Leash : public CDOTA_Buff
{
public:
int32_t leash_radius; // 0x11d8
Vector vLeashLocation; // 0x11dc
bool m_bEscaped; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
float pounce_damage_multiplier; // 0x11ec
int32_t pounce_damage; // 0x11f0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Slark_EssenceShift_Counter : public CDOTA_Buff
{
public:
int32_t max_stacks; // 0x11d8
int32_t passive_agility; // 0x11dc
GameTime_t flLastProcTime; // 0x11e0
float debuff_duration; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Slark_EssenceShift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Slark_EssenceShift_Active : public CDOTA_Buff
{
public:
int32_t agi_gain; // 0x11d8
int32_t iPrimaryAttribute; // 0x11dc
float model_scale; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Slark_Essence_Shift_Debuff : public CDOTA_Buff
{
public:
int32_t reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Slark_ShadowDance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_Aura : public CDOTA_Buff
{
public:
int32_t scepter_aoe; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_PassiveRegen : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_regen_pct; // 0x11dc
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Slark_ShadowDance : public CDOTA_Modifier_Invisible
{
public:
CHandle< CBaseEntity > m_hVisibleEntity; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
GameTime_t flLastPulseTime; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Slark_ShadowDance_Visual : public CDOTA_Buff
{
public:
bool m_bScepter; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Essence_Shift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Push_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Dispells_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Dark_Pact_Unit_Target : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Attack_All : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Pounce_Projectiles : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Pounce_Leashed_Bonus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_AoE_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_Leash_Chance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Essence_Shift_Allied_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Essence_Shift_Bonus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Dark_Pact_Pulses : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Slark_Shadow_Dance_Leash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Slark_Pounce_Leashed_Bonus : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Slark_Shadow_Dance_Leash : public CDOTA_Buff
{
public:
Vector m_vPullLocation; // 0x11d8
float pull_speed; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Special_Slark_Pounce_Projectiles : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_QueenOfPain_ScreamOfPain : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
};
// Alignment: 2
// Size: 0x580
class CDOTA_Ability_AghsFort_QueenOfPain_ShadowStrike : public CDOTABaseAbility
{
public:
Vector projectile_speed; // 0x558
private:
[[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x568
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_AghsFort_QueenOfPain_ShadowStrike : public CDOTA_Buff
{
public:
int32_t duration_damage; // 0x11d8
int32_t duration_heal; // 0x11dc
int32_t movement_slow; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CountdownTimer m_SlowInterval; // 0x11e8
float m_flSlowStep; // 0x1200
float m_flSlowStepStep; // 0x1204
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_AghsFort_QueenOfPain_Blink : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_QueenOfPain_Blink_AttackSpeed : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 9
// Size: 0x590
class CDOTA_Ability_AghsFort_QueenOfPain_SonicWave : public CDOTABaseAbility
{
public:
GameTime_t m_fStartTime; // 0x558
float m_fTotalTime; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x560
int32_t m_nSonicTrailRadius; // 0x564
Vector m_vLastTrailThinkerLocation; // 0x568
bool bTrailStartedBurning; // 0x574
private:
[[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575
public:
int32_t damage; // 0x578
int32_t starting_aoe; // 0x57c
int32_t final_aoe; // 0x580
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_Sonic_Wave_Trail_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
int32_t m_nRadius; // 0x11e4
ParticleIndex_t m_nTrailFX; // 0x11e8
float linger_duration; // 0x11ec
float flDamage; // 0x11f0
float damage_pct; // 0x11f4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_Sonic_Wave_Trail_Burn : public CDOTA_Buff
{
public:
float flDamage; // 0x11d8
float burn_interval; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_ShadowStrike_On_Attack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_On_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Generates_Scream : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Attack_Speed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Trail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_Chain : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ShadowStrike_Scream : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Resets_Blink : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Restores_Caster : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_ScreamOfPain_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Circle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Sonic_Wave_Attack_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_QueenOfPain_Blink_Shadow_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_QueenOfPain_Blink_Scream_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Aghsfort_QueenOfPain_Scream_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_QueenOfPain_SonicWave_AttackBuff : public CDOTA_Buff
{
public:
int32_t spell_amp; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TuskBoss_IceShards_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x5a8
class CDOTA_Ability_Aghsfort_TuskBoss_IceShards : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
int32_t shard_width; // 0x55c
int32_t shard_damage; // 0x560
int32_t shard_count; // 0x564
float shard_speed; // 0x568
float shard_duration; // 0x56c
float shard_angle_step; // 0x570
int32_t shard_distance; // 0x574
Vector m_vSpawnOrigin; // 0x578
Vector m_vDirection; // 0x584
private:
[[maybe_unused]] uint8_t __pad0590[0x8]; // 0x590
public:
CDOTABaseAbility* m_pIceShardsStop; // 0x598
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_TuskBoss_IceShard : public CDOTA_Buff
{
public:
Vector m_vPos; // 0x11d8
int32_t radius; // 0x11e4
float damage; // 0x11e8
float explosion_interval; // 0x11ec
};
// Alignment: 20
// Size: 0x678
class CDOTA_Ability_Aghsfort_TuskBoss_Snowball : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t snowball_windup_radius; // 0x568
int32_t snowball_radius; // 0x56c
int32_t snowball_grow_rate; // 0x570
int32_t snowball_damage; // 0x574
int32_t snowball_damage_bonus; // 0x578
float stun_duration; // 0x57c
int32_t bonus_damage; // 0x580
float bonus_stun; // 0x584
int32_t snowball_speed; // 0x588
float snowball_duration; // 0x58c
Vector m_vProjectileLocation; // 0x590
private:
[[maybe_unused]] uint8_t __pad059c[0x4]; // 0x59c
public:
CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x5a0
ParticleIndex_t m_nFXIndex; // 0x5b8
private:
[[maybe_unused]] uint8_t __pad05bc[0x4]; // 0x5bc
public:
CountdownTimer ctSnowball; // 0x5c0
bool m_bSpeakAlly; // 0x5d8
bool m_bIsExpired; // 0x5d9
bool m_bInWindup; // 0x5da
private:
[[maybe_unused]] uint8_t __pad05db[0x1]; // 0x5db
public:
CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5dc
int32_t m_nContainedValidUnits; // 0x5e0
bool m_bEndingSnowball; // 0x5e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Target : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TuskBoss_Launch_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Visible : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Movement : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_TuskBoss_Snowball_Movement_Friendly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TuskBoss_WalrusPunch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch : public CDOTA_Buff
{
public:
int32_t crit_multiplier; // 0x11d8
float air_time; // 0x11dc
float slow_duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11f0
bool m_bWalrusPunch; // 0x11f4
bool m_bPunchKill; // 0x11f5
private:
[[maybe_unused]] uint8_t __pad11f6[0x2]; // 0x11f6
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x1210
int32_t m_nAttackRecord; // 0x1214
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 13
// Size: 0x1228
class CDOTA_Modifier_Aghsfort_TuskBoss_WalrusPunch_AirTime : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float flAirTime; // 0x1204
float m_flEndTime; // 0x1208
float m_fHorizontalDistance; // 0x120c
float m_fVerticalDistance; // 0x1210
float m_fDamage; // 0x1214
Vector m_vLandingPos; // 0x1218
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_TuskBoss_Tag_Team : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
float slow_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TuskBoss_Tag_Team_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Circle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Explode : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_IceShards_Secondary : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_End_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Snowball_Global : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Toggle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_TagTeam_Global : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Reset : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Land_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_TuskBoss_Walrus_Punch_Wallop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_TuskBoss_Ice_Shards_Explode_Dummy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float health_threshold_pct; // 0x11dc
float duration; // 0x11e0
CHandle< CDOTABaseAbility > m_hTombstoneSourceAbility; // 0x11e4
CHandle< CBaseEntity > m_hChaseUnit; // 0x11e8
};
// Alignment: 3
// Size: 0x578
class CDOTA_AghsFort_Ability_Undying_Tombstone : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vZombies; // 0x558
CHandle< CBaseEntity > hTombstone; // 0x570
float duration; // 0x574
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_Tombstone_HP : public CDOTA_Buff
{
public:
int32_t tombstone_health; // 0x11d8
int32_t bonus_health; // 0x11dc
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float zombie_interval; // 0x11dc
int32_t spawn_at_parent; // 0x11e0
int32_t remove_on_death; // 0x11e4
float knockback_duration; // 0x11e8
int32_t knockback_distance; // 0x11ec
int32_t knockback_height; // 0x11f0
int32_t spawn_distance; // 0x11f4
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Bunker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hLoadedUnit; // 0x11d8
float heal_percent_per_tick; // 0x11dc
int32_t tombstone_grab_radius; // 0x11e0
ParticleIndex_t m_nBunkerEnterFXIndex; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Bunker_Friendly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Undying_Decay_BuffCounter : public CDOTA_Buff
{
public:
float m_fStrengthStolen; // 0x11d8
float model_scale_per_strength; // 0x11dc
float model_scale_max; // 0x11e0
};
// Alignment: 6
// Size: 0x570
class CDOTA_AghsFort_Ability_Undying_Decay : public CDOTABaseAbility
{
public:
int32_t decay_damage; // 0x558
int32_t radius; // 0x55c
float decay_duration; // 0x560
float str_steal; // 0x564
float str_steal_captain_mult; // 0x568
float str_steal_boss_mult; // 0x56c
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Undying_Decay_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
float interval; // 0x11dc
int32_t extra_decays; // 0x11e0
int32_t radius; // 0x11e4
int32_t decay_strength_percent; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_Decay_Buff : public CDOTA_Buff
{
public:
float str_stolen; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Decay_On_Attack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x570
class CDOTA_AghsFort_Ability_Undying_SoulRip : public CDOTABaseAbility
{
public:
int32_t damage_per_unit; // 0x558
int32_t radius; // 0x55c
int32_t max_units; // 0x560
int32_t tombstone_heal; // 0x564
int32_t damage_bonus_percent; // 0x568
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Undying_SoulRipWard : public CDOTA_Buff
{
public:
int32_t ward_radius; // 0x11d8
int32_t explosion_damage; // 0x11dc
float taunt_interval; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_SoulRip_Share_Strength : public CDOTA_Buff
{
public:
float str_gain; // 0x11d8
int32_t model_scale; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
float m_flDecrementTime; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathstrike_Slow_Counter : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_AghsFort_Ability_Undying_Tombstone_Zombie_DeathStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Deathlust : public CDOTA_Buff
{
public:
int32_t bonus_move_speed; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Zombie_Modifier : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Undying_Exploding_Zombie : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Undying_ConsumeZombies_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_ConsumeZombies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Undying_ConsumeZombies_Buff : public CDOTA_Buff
{
public:
int32_t bonus_move_speed_per_stack; // 0x11d8
int32_t bonus_attack_speed_per_stack; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_AghsFort_Ability_Undying_FleshGolem : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_FleshGolem : public CDOTA_Buff
{
public:
int32_t str_percentage; // 0x11d8
int32_t movement_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Undying_FleshGolem_Slow : public CDOTA_Buff
{
public:
int32_t damage_amp; // 0x11d8
int32_t slow; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Undying_FleshGolem_PlagueAura : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t damage; // 0x11dc
float tick_rate; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Undying_Tombstone_Death_Trigger : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Aghsfort_Ability_Special_Bonus_Unique_Undying_TombstoneOnDeath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Undying_Decay_Spawn_Zombies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Undying_Decay_On_Attack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Undying_Decay_Reverberation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Aghsfort_Ability_Special_Bonus_Unique_Undying_SoulRip_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Spawn_Zombies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Share_Strength : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_SoulRip_Ward : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_Tombstone_Exploding_Zombies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_Tombstone_Bunker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_SpawnZombies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_HealOnEnemyDeath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_FleshGolem_Smash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Undying_ConsumeZombies_Dummy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Special_Undying_ConsumeZombies_Dummy : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Lina_LightStrikeArray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x5a0
class CDOTA_Ability_Aghsfort_Lina_DragonSlave : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
int32_t dragon_slave_distance; // 0x560
Vector m_vLastTrailThinkerLocation; // 0x564
int32_t dragon_slave_damage; // 0x570
float m_flLSADistance; // 0x574
int32_t m_nLSAPower; // 0x578
float m_flLSADelay; // 0x57c
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Lina_DragonSlave_Ignite : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
float burn_damage; // 0x11dc
int32_t mana_restore; // 0x11e0
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Lina_LightStrikeArray_Thinker : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
int32_t m_iDamage; // 0x11f0
float m_flStunDuration; // 0x11f4
int32_t light_strike_array_damage; // 0x11f8
float light_strike_array_stun_duration; // 0x11fc
float light_strike_array_delay; // 0x1200
int32_t m_nLSARadius; // 0x1204
int32_t m_nCount; // 0x1208
int32_t max_count; // 0x120c
int32_t iPower; // 0x1210
float pulse_interval; // 0x1214
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Lina_Light_Strike_Array_Vacuum : public CDOTA_Buff
{
public:
float pull_speed; // 0x11d8
Vector vPullLocation; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Lina_FierySoul : public CDOTABaseAbility
{
public:
float active_duration; // 0x558
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_Aghsfort_Lina_FierySoul_Active : public CDOTA_Buff
{
public:
int32_t attack_range_per_stack; // 0x11d8
bool m_bShouldReset; // 0x11dc
bool m_bIsActive; // 0x11dd
private:
[[maybe_unused]] uint8_t __pad11de[0x2]; // 0x11de
public:
int32_t fiery_soul_attack_speed_bonus; // 0x11e0
float fiery_soul_move_speed_bonus; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f0
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Lina_FierySoul : public CDOTA_Buff
{
public:
int32_t fiery_soul_attack_speed_bonus; // 0x11d8
float fiery_soul_move_speed_bonus; // 0x11dc
int32_t fiery_soul_max_stacks; // 0x11e0
float fiery_soul_stack_duration; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
GameTime_t m_flFierySoulDieTime; // 0x11ec
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Aghsfort_Lina_LagunaBlade : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x558
int32_t m_nMaxBounces; // 0x570
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Lina_LagunaBlade_Line : public CDOTA_Buff
{
public:
Vector vStart; // 0x11d8
Vector vEnd; // 0x11e4
float damage_delay; // 0x11f0
CHandle< CBaseEntity > m_hMainTarget; // 0x11f4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Lina_LagunaBlade : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_LSA_Trail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_Triwave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_DragonSlave_Ignite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Pulsate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Attacks : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_LightStrikeArray_Vacuum : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Multishot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_DragonSlave_On_Cast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Mini_Lagunas : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_LSA_Attacks : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_FierySoul_Ally_Cast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Bounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_LSA : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Channel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_Laguna_Blade_Line : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lina_Dragon_Slave_Booster : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Special_Lina_Fiery_Soul_Splitshot : public CDOTA_Buff
{
public:
int32_t damage_modifier; // 0x11d8
int32_t split_shot_bonus_range; // 0x11dc
int32_t arrow_count; // 0x11e0
};
// Alignment: 7
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Special_Lina_Laguna_Blade_Channel : public CDOTA_Buff
{
public:
int32_t stack_limit; // 0x11d8
float stack_interval; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesToHit; // 0x11e0
ParticleIndex_t m_nFxIndexB; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< ParticleIndex_t > m_nFXIndices; // 0x1200
int32_t bounces_remaining; // 0x1218
int32_t iCur_stack; // 0x121c
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Special_Lina_Laguna_Blade_Bounce : public CDOTA_Buff
{
public:
int32_t bounces_remaining; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Lina_Light_Strike_Array_Attacks_Bonus : public CDOTA_Buff
{
public:
float attack_damage; // 0x11d8
int32_t damage_penalty; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Lina_LightStrikeArray_Stun : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Lina_DragonSlave_Movement : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float m_flPushDistance; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_AghsFort_Ability_Juggernaut_BladeFury : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury : public CDOTA_Buff
{
public:
int32_t blade_fury_radius; // 0x11d8
int32_t blade_fury_damage; // 0x11dc
float blade_fury_damage_tick; // 0x11e0
int32_t movement_bonus; // 0x11e4
int32_t spark_radius; // 0x11e8
int32_t spark_damage_percent; // 0x11ec
bool m_bDestroyParentThinkerOnDeath; // 0x11f0
bool m_bPreIntervalThink; // 0x11f1
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury_Force : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Juggernaut_BladeFury_Force_Pull : public CDOTA_Buff
{
public:
int32_t blade_fury_radius; // 0x11d8
int32_t pull_speed; // 0x11dc
int32_t pull_stop; // 0x11e0
Vector pull_origin; // 0x11e4
GameTime_t m_flLastThinkTime; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Juggernaut_HealingWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Juggernaut_Healing_Ward : public CDOTA_Buff
{
public:
int32_t healing_ward_aura_radius; // 0x11d8
float healing_ward_heal_amount; // 0x11dc
float healing_ward_interval; // 0x11e0
int32_t m_nTotalHealing; // 0x11e4
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Juggernaut_Healing_Ward_Primed : public CDOTA_Buff
{
public:
int32_t healing_ward_aura_radius; // 0x11d8
int32_t trigger_radius; // 0x11dc
int32_t search_radius; // 0x11e0
int32_t damage_percent; // 0x11e4
int32_t movement_bonus; // 0x11e8
int32_t power; // 0x11ec
CHandle< CBaseEntity > m_hTarget; // 0x11f0
bool m_bPlayerControlled; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Juggernaut_ZenWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Juggernaut_Zen_Ward : public CDOTA_Buff
{
public:
int32_t healing_ward_aura_radius; // 0x11d8
float healing_ward_heal_amount; // 0x11dc
float healing_ward_interval; // 0x11e0
int32_t m_nTotalRegen; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Juggernaut_Zen_Ward_Armor : public CDOTA_Buff
{
public:
int32_t armor_bonus; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Juggernaut_BladeDance : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hBladeFuryThinker; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Juggernaut_BladeDance : public CDOTA_Buff
{
public:
int32_t blade_dance_crit_mult; // 0x11d8
int32_t blade_dance_crit_chance; // 0x11dc
bool m_bDidBladeDanceCrit; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Juggernaut_BladeDance_Buff : public CDOTA_Buff
{
public:
int32_t evasion_per_stack; // 0x11d8
int32_t movespeed_per_stack; // 0x11dc
int32_t evasion_bonus; // 0x11e0
int32_t movespeed_bonus; // 0x11e4
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Juggernaut_Double_Attack : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
float bonus_attack_duration; // 0x11dc
int32_t bonus_attack_count; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
float m_fBonusRange; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Juggernaut_Omnislash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 16
// Size: 0x1230
class CDOTA_modifier_aghsfort_juggernaut_omnislash : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
CHandle< CBaseEntity > m_hLastTarget; // 0x11dc
int32_t m_nJumps; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t bonus_attack_speed; // 0x11e8
int32_t omni_slash_radius; // 0x11ec
float attack_rate_multiplier; // 0x11f0
int32_t upgraded_radius; // 0x11f4
int32_t m_iTotalDamage; // 0x11f8
int32_t m_iHeroDamage; // 0x11fc
bool m_bReflection; // 0x1200
bool m_bFirstHit; // 0x1201
bool m_bEndNext; // 0x1202
private:
[[maybe_unused]] uint8_t __pad1203[0x1]; // 0x1203
public:
GameTime_t m_fNextAttackTime; // 0x1204
Vector m_vCastOrigin; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CUtlVector< CHandle< CBaseEntity > > m_hIllusions; // 0x1218
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_modifier_aghsfort_juggernaut_omnislash_Camera : public CDOTA_Buff
{
public:
bool m_bIsDone; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_modifier_aghsfort_juggernaut_omnislash_Invulnerability : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite : public CDOTA_Buff
{
public:
int32_t slow_movement_speed_pct; // 0x11d8
float tick_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite_Invuln : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Juggernaut_Omnislash_Ignite_Disarm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Sparks : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Force : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Shared : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Fury_Lifesteal_Hit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Blade_Fury : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Healing_Ward_Detonate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Cooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Launches_Blade_Fury : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Shared : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Blade_Dance_Teleport : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Range : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Illusion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Crit_Extend : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Shared : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Spin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Omnislash_Ignite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Juggernaut_Zen_Ward : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort2_DrowRanger_FrostArrows : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_AghsFort2_DrowRanger_FrostArrows_Chill : public CDOTA_Buff
{
public:
float interval; // 0x11d8
int32_t max_stacks; // 0x11dc
int32_t damage_percent; // 0x11e0
int32_t movement_damage_percent; // 0x11e4
int32_t m_nDamage; // 0x11e8
ParticleIndex_t m_nFXStackIndex; // 0x11ec
Vector m_vLastPosition; // 0x11f0
};
// Alignment: 7
// Size: 0x580
class CDOTA_Ability_Aghsfort2_DrowRanger_WaveOfSilence : public CDOTABaseAbility
{
public:
int32_t wave_length; // 0x558
int32_t wave_width; // 0x55c
float wave_speed; // 0x560
float silence_duration; // 0x564
float knockback_distance_max; // 0x568
float knockback_duration; // 0x56c
Vector m_vVectorTarget; // 0x570
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence : public CDOTA_Buff
{
public:
int32_t blind_percent; // 0x11d8
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Echo_Thinker : public CDOTA_Buff
{
public:
Vector m_vTarget; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Movement : public CDOTA_Buff
{
public:
int32_t movespeed_percent; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Frost : public CDOTA_Buff
{
public:
float m_fDamagePerSecond; // 0x11d8
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_AghsFort2_DrowRanger_WaveOfSilence_Agility : public CDOTA_Buff
{
public:
CUtlVector< GameTime_t > m_AgilityTimers; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Aghsfort2_DrowRanger_Multishot : public CDOTABaseAbility
{
public:
CUtlVector< CUtlVector< CHandle< CBaseEntity > > > m_vHitTargets; // 0x558
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_Buff : public CDOTA_Buff
{
public:
int32_t damage_percent; // 0x11d8
int32_t knockback_distance; // 0x11dc
float knockback_duration; // 0x11e0
int32_t move_speed_percent; // 0x11e4
int32_t max_move_speed_percent; // 0x11e8
int32_t model_scale; // 0x11ec
int32_t max_model_scale; // 0x11f0
bool m_bActive; // 0x11f4
};
// Alignment: 15
// Size: 0x1228
class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot : public CDOTA_Buff
{
public:
int32_t arrow_width; // 0x11d8
float arrow_speed; // 0x11dc
int32_t range; // 0x11e0
int32_t wave_count; // 0x11e4
float wave_delay; // 0x11e8
int32_t arrow_count_per_wave; // 0x11ec
float arrow_delay; // 0x11f0
float per_arrow_angle; // 0x11f4
float m_fYawOffset; // 0x11f8
int32_t m_iWaveIndex; // 0x11fc
int32_t m_iArrowIndex; // 0x1200
Vector m_vTarget; // 0x1204
QAngle m_vWaveAngle; // 0x1210
float m_flInterval; // 0x121c
GameTime_t m_flNextThink; // 0x1220
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_SideLine : public CDOTA_Buff
{
public:
int32_t m_iWaveIndex; // 0x11d8
float m_fYawOffset; // 0x11dc
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_AghsFort2_DrowRanger_Multishot_Buff_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort2_DrowRanger_Multishot_Refire : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort2_DrowRanger_Marksmanship : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort2_DrowRanger_Marksmanship_Aura : public CDOTA_Buff
{
public:
int32_t aura_disable_range; // 0x11d8
int32_t aura_range; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t m_nBonusFactor; // 0x11e4
GameTime_t m_fLastEnableTime; // 0x11e8
ParticleIndex_t m_nFxIndex; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort2_DrowRanger_Marksmanship_Aura_Bonus : public CDOTA_Buff
{
public:
int32_t aura_agility_multiplier; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_Active : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_range; // 0x11dc
int32_t attack_speed_reduction; // 0x11e0
float duration; // 0x11e4
int32_t charges; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_AoE : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort2_DrowRanger_Marksmanship_WaveOfSilence_Primed : public CDOTA_Buff
{
public:
int32_t aura_disable_range; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_WaveOfSilence_Blind : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_Multishot_Range : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort2_Talent_DrowRanger_Marksmanship_Attack_Count : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_Split : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_MoveDamage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_FrostArrows_Wave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Echo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Movement : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Cooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_WaveOfSilence_Frost : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Move : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_SideLine : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Refire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Multishot_Buff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Marksmanship_WaveOfSilence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_DrowRanger_Marksmanship_AoE : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LucentBeam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LucentBeam_Moonglow : public CDOTA_Buff
{
public:
int32_t bonus_aspd; // 0x11d8
int32_t lifesteal; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t night_bonus_pct; // 0x11dc
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_AghsFort_Luna_MoonGlaive : public CDOTABaseAbility
{
public:
int32_t m_iAttackIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< sAghsFortGlaiveInfo > m_GlaiveInfo; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Active : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback : public CDOTA_Buff
{
public:
int32_t attack_speed_slow; // 0x11d8
int32_t move_speed_slow_pct; // 0x11dc
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_Knockback_Bounce : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bTargetTeleported; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
float stun_duration; // 0x121c
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
int32_t bounces; // 0x11dc
int32_t damage_reduction_percent; // 0x11e0
int32_t bounce_pct; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_MoonGlaive_FX : public CDOTA_Buff
{
public:
ParticleIndex_t m_nMoonGlaiveFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_MoonMark : public CDOTA_Buff
{
public:
int32_t spell_resist_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_LunarRemnant : public CDOTA_Buff
{
public:
int32_t m_nBonusDamage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Moonfright : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_LunarPower : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_MoonShield_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura_MoonShield_Trigger : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessingAura_MoonShield : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Active_Buff : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Lunar_Grace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_Lunar_Grace : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
float night_multiplier; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Eclipse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1240
class CDOTA_Modifier_AghsFort_Luna_Eclipse : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t radius; // 0x11dc
int32_t beams; // 0x11e0
int32_t hit_count; // 0x11e4
int32_t m_iBeamDamage; // 0x11e8
float m_flBeamStun; // 0x11ec
Vector vPosition; // 0x11f0
bool m_bAreaTarget; // 0x11fc
bool m_bMoonWell; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
int32_t m_iTickCount; // 0x1200
ParticleIndex_t m_nMoonlightFXIndex; // 0x1204
CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1208
CUtlVector< CHandle< CBaseEntity > > m_HitAllies; // 0x1220
float beam_interval; // 0x1238
float m_flInterval; // 0x123c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LucentBeam_Bloodmoon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LucentBeam_Diffusion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LucentBeam_Moonglow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_MoonMark : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_LunarRemnant : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_MoonGlaive_AllyBounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_MoonGlaive_DoubleMoon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_MoonGlaive_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_MoonShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_Moonfright : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_LunarPower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Eclipse_Moonstruck : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarCycle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarFavor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Eclipse_LunarFocus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LucentBeam_Glaives : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_Glaives_MoonWell : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Eclispe_Hide : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Luna_LunarBlessing_Leap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 16
// Size: 0x1240
class CDOTA_Modifier_AghsFort_Luna_LunarBlessing_Leap : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t leap_distance; // 0x1204
float leap_speed; // 0x1208
float leap_acceleration; // 0x120c
int32_t leap_radius; // 0x1210
int32_t search_range; // 0x1214
float damage_multiplier; // 0x1218
float m_flPowerLevelPct; // 0x121c
bool m_bLaunched; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1221[0x7]; // 0x1221
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1228
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_AghsFort_Luna_GlaiveShield : public CDOTABaseAbility
{
public:
CUtlVector< sGlaiveDef > m_GlaiveDefs; // 0x558
};
// Alignment: 9
// Size: 0x13e0
class CDOTA_Modifier_AghsFort_Luna_GlaiveShield : public CDOTA_Buff
{
public:
bool m_bSpiritsExplode; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t hit_radius; // 0x11dc
int32_t rotate_range; // 0x11e0
int32_t glaive_movement_rate; // 0x11e4
float replenish_time; // 0x11e8
float m_flRotation; // 0x11ec
float m_flGlaiveRadius; // 0x11f0
GameTime_t m_flNextSpawn; // 0x11f4
bool m_bPaused; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Luna_Eclipse_IntoTheNight : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Luna_Eclipse_IntoTheNight_Aura : public CDOTA_Buff
{
public:
int32_t m_nMoveSpeed; // 0x11d8
int32_t m_nEvasion; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Lich_FrostNova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Lich_FrostNova_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t slow_attack_speed; // 0x11dc
bool is_primary_target; // 0x11e0
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_AghsFort_Lich_Sinister_Gaze : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hShackleTarget; // 0x558
Vector m_vPullLocation; // 0x55c
float m_flIntervalRate; // 0x568
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze_Self : public CDOTA_Buff
{
public:
int32_t mana_drain; // 0x11d8
float m_flIntervalRate; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t mana_drain; // 0x11dc
float m_flIntervalRate; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Lich_Sinister_Gaze_Summon : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t base_damage_outgoing_percentage; // 0x11dc
bool m_bFirstTick; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_Lich_Ice_Spire : public CDOTABaseAbility
{
public:
int32_t aura_radius; // 0x558
float duration; // 0x55c
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Lich_Ice_Spire : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
CountdownTimer m_Timer; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Lich_Ice_Spire_Debuff : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Lich_ChainFrost_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t slow_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Lich_FrostShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Lich_FrostShield : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float interval; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t bonus_health_regen; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Lich_FrostShield_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Lich_FrostShield_Magic_Resistance_Debuff : public CDOTA_Buff
{
public:
int32_t magic_resist_reduction; // 0x11d8
int32_t max_stacks; // 0x11dc
ParticleIndex_t m_nFXStackIndex; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_AghsFort_Modifier_Lich_Frost_Giant : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t model_scale; // 0x11dc
int32_t damage_radius; // 0x11e0
int32_t pct_int_damage_per_second; // 0x11e4
float tick_rate; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_AghsFort_Modifier_Lich_Frost_Shield_Magic_Immune : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 5
// Size: 0x578
class CDOTA_Ability_AghsFort_Lich_ChainFrost : public CDOTABaseAbility
{
public:
int32_t jump_range; // 0x558
int32_t jumps; // 0x55c
float slow_duration; // 0x560
int32_t vision_radius; // 0x564
int32_t projectile_speed; // 0x568
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Lich_Chain_Frost_Thinker : public CDOTA_Buff
{
public:
int32_t m_nDamageToHeroes; // 0x11d8
int32_t m_nHeroesKilled; // 0x11dc
int32_t m_nJumps; // 0x11e0
CHandle< CBaseEntity > m_hTarget; // 0x11e4
CHandle< CBaseEntity > m_hAvoidTarget; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Root_Disarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Applies_Frost_Shield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_Execute_Refund : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Nova_AOE_Attacks : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Magic_Resist_Debuff_And_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Heal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Frost_Giant : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Frost_Shield_Dispels : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Spawns_Ice_Spire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Drains_Life : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Sinister_Gaze_Raises_Skeletons : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Split : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Applies_Frost_Shield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Lich_Chain_Frost_Applies_Frost_Nova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Aghsfort_Lich_Extra_Chain_Frost_Jumps : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Rumboldened_Immunity : public CDOTA_Modifier_MagicImmune
{
public:
int32_t model_scale; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Kunkka_Torrent : public CDOTABaseAbility
{
public:
int32_t torrent_storm_chance; // 0x558
};
// Alignment: 12
// Size: 0x1210
class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Thinker : public CDOTA_Buff
{
public:
bool m_bIsSquall; // 0x11d8
bool m_bIsSeaLegs; // 0x11d9
private:
[[maybe_unused]] uint8_t __pad11da[0x2]; // 0x11da
public:
float m_flRadius; // 0x11dc
bool m_bShowEnemies; // 0x11e0
bool m_bTorrentStorm; // 0x11e1
private:
[[maybe_unused]] uint8_t __pad11e2[0x2]; // 0x11e2
public:
float m_flDelay; // 0x11e4
float m_flFireTime; // 0x11e8
bool m_bForcePosition; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
Vector m_vStartPosition; // 0x11f0
Vector m_vEndPosition; // 0x11fc
int32_t m_nPercentChanceOfGhostShip; // 0x1208
CHandle< CBaseEntity > m_hTarget; // 0x120c
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Kunkka_Torrent : public CDOTA_Buff
{
public:
float flIntervalThinkTime; // 0x11d8
int32_t torrent_damage; // 0x11dc
float m_flDamageScale; // 0x11e0
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
bool m_bTorrentStorm; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_bonus; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Kunkka_Fire_Cannons_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Kunkka_Tidebringer_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Torrent_Storm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Kunkka_Torrent_Storm : public CDOTA_Buff
{
public:
int32_t torrent_min_distance; // 0x11d8
int32_t torrent_max_distance; // 0x11dc
int32_t m_iExplosionQuadrant; // 0x11e0
Vector m_vPosition; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Tidebringer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Kunkka_Tidebringer : public CDOTA_Buff
{
public:
bool m_bTidebringerAttack; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t cleave_starting_width; // 0x11dc
int32_t cleave_ending_width; // 0x11e0
int32_t cleave_distance; // 0x11e4
int32_t damage_bonus; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
int32_t cleave_damage; // 0x11f0
bool m_bIgnoreCooldown; // 0x11f4
bool m_bDreadPirate; // 0x11f5
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_AghsFort_Kunkka_XMarksTheSpot : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hThinkerEntities; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Kunkka_NoQuarter : public CDOTA_Buff
{
public:
int32_t m_nSpeedBonusPercentage; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot : public CDOTA_Buff
{
public:
float armour_increase; // 0x11d8
float speed_increase_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpotMarker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot_SeaLegs_Thinker : public CDOTA_Buff
{
public:
Vector m_vLastPosition; // 0x11d8
CHandle< CBaseEntity > m_hEntity; // 0x11e4
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Kunkka_XMarksTheSpot_Thinker : public CDOTA_Buff
{
public:
Vector m_vStartLoc; // 0x11d8
bool m_bIsReflection; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CHandle< CBaseEntity > m_hEntity; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Return : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Fear : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_pEntityToBeAfraidOf; // 0x11d8
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_AghsFort_Kunkka_GhostShip : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
float stun_duration; // 0x55c
int32_t ghostship_width; // 0x560
int32_t ghostship_width_scepter; // 0x564
Vector m_vFinalDestination; // 0x568
Vector m_vStartingPoint; // 0x574
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Kunkka_Ghost_Ship_Fire_Cannons : public CDOTA_Buff
{
public:
float m_flDistance; // 0x11d8
float m_flSpeed; // 0x11dc
int32_t m_nNumCannons; // 0x11e0
float m_flProjectileRadius; // 0x11e4
bool m_bGhostShipIsEntity; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
int32_t m_hGhostShipProjectile; // 0x11ec
CHandle< CBaseEntity > m_hGhostShip; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Ghost_Ship_Fire_Cannons : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Kunkka_Ghost_Ship_Fleet : public CDOTA_Buff
{
public:
Vector vCasterOrigin; // 0x11d8
Vector vEnd; // 0x11e4
int32_t m_nHitCount; // 0x11f0
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_Loaded : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_DamageAbsorb : public CDOTA_Buff
{
public:
int32_t m_iAccumulatedDamage; // 0x11d8
int32_t movespeed_bonus; // 0x11dc
float ghostship_absorb; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Kunkka_GhostShip_DamageDelay : public CDOTA_Buff
{
public:
int32_t m_iAccumulatedDamage; // 0x11d8
float m_flDuration; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Kunkka_SeaSickness : public CDOTA_Buff
{
public:
int32_t m_iAccumulatedDamage; // 0x11d8
float m_flDuration; // 0x11dc
float m_flMovespeedBonus; // 0x11e0
};
// Alignment: 1
// Size: 0x5c0
class CDOTA_Ability_AghsFort_Kunkka_Tidal_Wave : public CDOTABaseAbility
{
public:
WaveData_t m_WaveData[2]; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Squall : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Grog_Blossom : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Marked : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Green_Around_the_Gills : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Angry_Recall : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Keelhaul : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Sealegs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Rumboldened : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Man_the_Helm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Davy_Jones_Locker_Aura : public CDOTA_Buff
{
public:
float m_flRadius; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Davy_Jones_Locker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 19
// Size: 0x1280
class CDOTA_Modifier_Kunkka_Man_the_Helm : public CDOTA_Modifier_MagicImmune
{
public:
float tick_interval; // 0x11d8
float forward_move_speed; // 0x11dc
float turn_rate_boosted; // 0x11e0
float turn_rate; // 0x11e4
int32_t hit_radius; // 0x11e8
int32_t knockback_radius; // 0x11ec
bool m_bHitFirstUpdate; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
GameTime_t m_flHitEndTime; // 0x11f4
float hit_recover_time; // 0x11f8
float m_flTurnBoostProgress; // 0x11fc
float m_flFacingTarget; // 0x1200
GameTime_t m_flLastHeroAttackTime; // 0x1204
ParticleIndex_t m_nFXIndex; // 0x1208
float m_flGyroshellDurationRemaining; // 0x120c
CUtlVector< float32 > m_flTurnHistory; // 0x1210
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1228
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x1240
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x1258
Vector m_vDirection; // 0x1270
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Dread_Pirate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Kunkka_No_Quarter_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_No_Quarter_Counter : public CDOTA_Buff
{
public:
int32_t m_nStackCount; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_No_Quarter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Skull_and_Bones : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Kunkka_Tidebringer_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x598
class CDOTA_Ability_AghsFort_VoidSpirit_AetherRemnant : public CDOTABaseAbility
{
public:
int32_t start_radius; // 0x558
int32_t end_radius; // 0x55c
int32_t remnant_watch_distance; // 0x560
int32_t projectile_speed; // 0x564
private:
[[maybe_unused]] uint8_t __pad0568[0x8]; // 0x568
public:
Vector m_vDashPosition; // 0x570
Vector m_vFacePosition; // 0x57c
Vector m_vEndpoint; // 0x588
int32_t m_nProjectileID; // 0x594
};
// Alignment: 12
// Size: 0x1240
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Unit : public CDOTA_Buff
{
public:
bool m_bActivated; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
Vector m_vFacingDir; // 0x11dc
CUtlVector< Vector > m_vecWatchPositions; // 0x11e8
ParticleIndex_t m_nBeamFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< int32 > m_nViewerIDs; // 0x1208
int32_t remnant_watch_distance; // 0x1220
int32_t remnant_watch_radius; // 0x1224
float duration; // 0x1228
int32_t watch_path_vision_radius; // 0x122c
int32_t impact_damage; // 0x1230
float pull_duration; // 0x1234
float activation_delay; // 0x1238
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Pull : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
PlayerID_t m_nPlayerID; // 0x11dc
float m_fMovementSpeed; // 0x11e0
Vector m_vPullTarget; // 0x11e4
Vector m_vFacingDir; // 0x11f0
float think_interval; // 0x11fc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnantThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
Vector m_vFacingDir; // 0x11dc
CHandle< CBaseEntity > m_hRemnant; // 0x11e8
bool m_bTriggered; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_flCurThink; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnantUnit_Truesight : public CDOTA_Buff
{
public:
int32_t m_nRadius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 9
// Size: 0x598
class CDOTA_Ability_AghsFort_VoidSpirit_AstralStep : public CDOTABaseAbility
{
public:
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
int32_t pop_damage; // 0x590
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Debuff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXStackIndex; // 0x11d8
float m_fVoidMarkPct; // 0x11dc
int32_t movement_slow_pct; // 0x11e0
int32_t pop_damage; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Caster : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_AghsFort_VoidSpirit_Dissimilate : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vecTranslocatingAllies; // 0x558
float phase_duration; // 0x570
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Phase_Ally : public CDOTA_Buff
{
public:
int32_t damage_radius; // 0x11d8
float debuff_duration; // 0x11dc
int32_t destination_fx_radius; // 0x11e0
int32_t damage; // 0x11e4
Vector m_vExitPos; // 0x11e8
};
// Alignment: 20
// Size: 0x1280
class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Phase : public CDOTA_Buff
{
public:
Vector m_vFirstPortalPos; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< Vector > m_vecDestinations; // 0x11e8
CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1200
CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1218
int32_t m_nCurrentDestinationIndex; // 0x1230
int32_t m_nClosestIndexPosToClick; // 0x1234
int32_t m_nPortalHeightOffset; // 0x1238
private:
[[maybe_unused]] uint8_t __pad123c[0x4]; // 0x123c
public:
char* m_szAlliesPortalFX; // 0x1240
char* m_szEnemiesPortalFX; // 0x1248
int32_t m_nPortalRadius; // 0x1250
int32_t m_nPortalPadding; // 0x1254
int32_t m_nFinalImpactDamageRadius; // 0x1258
int32_t m_nFinalImpactFXRadius; // 0x125c
int32_t destination_fx_radius; // 0x1260
int32_t damage_radius; // 0x1264
int32_t portals_per_ring; // 0x1268
int32_t angle_per_ring_portal; // 0x126c
int32_t first_ring_distance_offset; // 0x1270
float debuff_duration; // 0x1274
int32_t damage; // 0x1278
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpirit_Dissimilate_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_PhysicalBuff : public CDOTA_Buff
{
public:
int32_t base_absorb_amount; // 0x11d8
int32_t m_nAbsorbRemaining; // 0x11dc
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_AghsFort_VoidSpirit_ResonantPulse : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
int32_t base_absorb_amount; // 0x55c
int32_t absorb_per_unit_hit; // 0x560
float hero_absorb_multiplier; // 0x564
float boss_absorb_multiplier; // 0x568
};
// Alignment: 9
// Size: 0x1228
class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_Ring : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_EnemiesHit; // 0x11e8
CUtlVector< CHandle< CBaseEntity > > m_AlliesHit; // 0x1200
int32_t speed; // 0x1218
int32_t radius; // 0x121c
int32_t damage; // 0x1220
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_Push : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_Push : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_nRemnantProjectileID; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_PhantomAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpirit_AetherRemnant_PhantomAttack_Crit : public CDOTA_Buff
{
public:
int32_t m_nCritPercent; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AetherRemnant_Bowling_ImpactSlow : public CDOTA_Buff
{
public:
int32_t move_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Translocate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Expanse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Remnants : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_Dissimilate_Lure : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_Dissimilate_Lure_Thinker : public CDOTA_Buff
{
public:
int32_t m_nDamageRadius; // 0x11d8
float m_fDissimilateDamage; // 0x11dc
float m_fThinkInterval; // 0x11e0
float m_fDissimilateDamagePctPerInterval; // 0x11e4
float m_fLingerDuration; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_Dissimilate_Lure_Burn : public CDOTA_Buff
{
public:
float m_fDamagePerInterval; // 0x11d8
int32_t m_nBonusIncomingMagicDamage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Knockback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_SpellAmped : public CDOTA_Buff
{
public:
int32_t m_nSpellAmp; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Cadence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_VoidSpirit_ResonantPulse_Cadence : public CDOTA_Buff
{
public:
float m_fSpellAmp; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Special_VoidSpirit_ResonantPulse_Suppression : public CDOTABaseAbility
{
public:
int32_t m_nBonusCharges; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_VoidSpirit_ResonantPulse_Suppression_MagicImmunity : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Vacuum : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_VoidSpirit_AstralStep_Vacuum_Motion : public CDOTA_Buff
{
public:
float m_fVacuumSpeed; // 0x11d8
float m_fStunDuration; // 0x11dc
Vector m_vPullLoc; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Attacks : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_VoidSpirit_AstralStep_Attacks : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Trail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Trail_Thinker : public CDOTA_Buff
{
public:
float m_fThinkInterval; // 0x11d8
float m_fPopDamagePctPerInterval; // 0x11dc
float m_fLingerDuration; // 0x11e0
int32_t radius; // 0x11e4
int32_t pop_damage; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Trail_Burn : public CDOTA_Buff
{
public:
float m_fDamagePerInterval; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_VoidSpirit_AstralStep_Breach : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_VoidSpirit_AstralStep_Breach_Burn : public CDOTA_Buff
{
public:
float m_fDamagePerInterval; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AstralStep_RestoreTime : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AetherRemnant_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_Dissimilate_Stun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_ResonantPulse_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_AstralStep_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_VoidSpirit_Dissimilate_Invis : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Aghsfort_Gyrocopter_Call_Down : public CDOTABaseAbility
{
public:
Vector m_vEndpoint; // 0x558
int32_t range_scepter; // 0x564
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Gyrocopter_Rocket_Barrage : public CDOTABaseAbility
{
public:
float duration; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Gyrocopter_Rocket_Barrage : public CDOTA_Buff
{
public:
int32_t rocket_damage; // 0x11d8
int32_t m_nPower; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride : public CDOTA_Buff
{
public:
int32_t grab_radius; // 0x11d8
CHandle< CBaseEntity > m_hLoadedUnit; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Gyrocopter_Homing_Missile : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 14
// Size: 0x1230
class CDOTA_Modifier_Aghsfort_Gyrocopter_Homing_Missile : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nFXIndex2; // 0x11dc
int32_t acceleration; // 0x11e0
float pre_flight_time; // 0x11e4
float stun_duration; // 0x11e8
int32_t m_nMissileDamage; // 0x11ec
int32_t damage; // 0x11f0
int32_t m_nTeamNumber; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f8[0x8]; // 0x11f8
public:
float speed; // 0x1200
float m_flFacingTarget; // 0x1204
int32_t movement_turn_rate; // 0x1208
int32_t m_nPower; // 0x120c
CHandle< CBaseEntity > m_hAttachTarget; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CountdownTimer m_MoveTime; // 0x1218
};
// Alignment: 0
// Size: 0x578
class CDOTA_Ability_Aghsfort_Gyrocopter_Flak_Cannon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Gyrocopter_Flak_Cannon : public CDOTA_Buff
{
public:
int32_t max_attacks; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t m_iNumAttacks; // 0x11e0
int32_t projectile_speed; // 0x11e4
int32_t radius; // 0x11e8
int32_t max_targets; // 0x11ec
bool m_bFirstStrike; // 0x11f0
bool m_bShouldFireMissiles; // 0x11f1
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Gyrocopter_Flak_Cannon_Scepter : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t scepter_radius; // 0x11dc
int32_t m_iAttackRecord; // 0x11e0
};
// Alignment: 12
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Gyrocopter_Call_Down : public CDOTA_Buff
{
public:
int32_t slow_duration_first; // 0x11d8
int32_t slow_duration_second; // 0x11dc
int32_t damage_first; // 0x11e0
int32_t damage_second; // 0x11e4
float power; // 0x11e8
int32_t radius; // 0x11ec
float slow_first; // 0x11f0
float slow_second; // 0x11f4
bool m_bDelayed; // 0x11f8
bool m_bHalfDamage; // 0x11f9
bool m_bFirstStrike; // 0x11fa
private:
[[maybe_unused]] uint8_t __pad11fb[0x1]; // 0x11fb
public:
CHandle< CBaseEntity > m_hInflictorAbility; // 0x11fc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Gyrocopter_Call_Down_Slow : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_OnAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_DoubleTarget : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_Flare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_RocketBarrage_Ground : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Barrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Ride : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Minimissile : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_CallDown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_First_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_Side_Gunner : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_Missiles : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_Flak_Cannon_FireTrail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_AttackBuff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_MineField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_Strafe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_HomingMissile_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Gyrocopter_CallDown_Precision_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_RocketBarrage_On_Attack : public CDOTA_Buff
{
public:
int32_t strike_chance; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Gyrocopter_Rocket_Barrage_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride_LoadedUnit : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_hMissile; // 0x11d8
int32_t hit_radius; // 0x11dc
float timeout_duration; // 0x11e0
int32_t damage; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Gyrocopter_Homing_Missile_Ride_LoadedUnit_Timeout : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Flak_Cannon_Fire_Trail_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
int32_t path_radius; // 0x11e4
float linger_duration; // 0x11e8
float flDamage; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Flak_Cannon_Fire_Trail_Burn : public CDOTA_Buff
{
public:
float flDamage; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Call_Down_Attack_Buff : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
int32_t attackspeed; // 0x11dc
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Special_Gyrocopter_Call_Down_Land_Mines : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float proximity_threshold; // 0x11dc
float damage; // 0x11e0
float activation_delay; // 0x11e4
bool bActivated; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x7]; // 0x11e9
public:
CountdownTimer m_Timer; // 0x11f0
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Aghsfort_Special_Gyrocopter_Call_Down_Wingman : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
float m_flCurVertTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float m_flEndTime; // 0x1204
int32_t push_length; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Dawnbreaker_Fire_Wreath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Aghsfort_Dawnbreaker_Solar_Guardian : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
bool m_bJumping; // 0x55c
private:
[[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d
public:
CUtlVector< CHandle< CBaseEntity > > m_vecDeathThinkers; // 0x560
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Thinker : public CDOTA_Buff
{
public:
float pulse_interval; // 0x11d8
int32_t iEffectRadius; // 0x11dc
int32_t base_damage; // 0x11e0
int32_t base_heal; // 0x11e4
int32_t scepter_heal; // 0x11e8
CHandle< CBaseEntity > m_hFollowTarget; // 0x11ec
CHandle< CBaseEntity > m_hInflictor; // 0x11f0
GameTime_t m_flNextPulseTime; // 0x11f4
ParticleIndex_t m_nThinkerFXIndex; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Evasion : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_AghsFort_Dawnbreaker_Solar_Guardian_AirTime : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
Vector m_vDirection; // 0x11e0
float m_flEndTime; // 0x11ec
CHandle< CBaseEntity > m_hThinker; // 0x11f0
Vector m_vTargetPosition; // 0x11f4
Vector m_vStartPosition; // 0x1200
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_Disable : public CDOTA_Buff
{
public:
ParticleIndex_t m_nCasterFXIndex; // 0x11d8
ParticleIndex_t m_nStatusFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Solar_Guardian_After_Land : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Dawnbreaker_Luminosity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity : public CDOTA_Buff
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t attack_count; // 0x11dc
bool m_bShouldIncrement; // 0x11e0
};
// Alignment: 14
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Attack_Buff : public CDOTA_Buff
{
public:
bool m_bIsBuffedAttack; // 0x11d8
bool m_bSunSentinel; // 0x11d9
private:
[[maybe_unused]] uint8_t __pad11da[0x2]; // 0x11da
public:
int32_t heal_pct; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t heal_radius; // 0x11e4
int32_t heal_from_creeps; // 0x11e8
int32_t allied_healing_pct; // 0x11ec
int32_t m_nSmashDamage; // 0x11f0
int32_t m_nCounterOrbitalChance; // 0x11f4
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesToHeal; // 0x11f8
float m_flTotalToHeal; // 0x1210
bool m_bCounterOrbitalProcessed; // 0x1214
bool m_bIsCounterOrbitalSmash; // 0x1215
bool m_bBrightFoundryProcessed; // 0x1216
};
// Alignment: 9
// Size: 0x598
class CDOTA_Ability_Aghsfort_Dawnbreaker_Celestial_Hammer : public CDOTABaseAbility
{
public:
int32_t projectile_speed; // 0x558
int32_t projectile_radius; // 0x55c
int32_t hammer_damage; // 0x560
int32_t hammer_aoe_radius; // 0x564
int32_t flare_radius; // 0x568
bool bHasStartedBurning; // 0x56c
private:
[[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d
public:
float flare_debuff_duration; // 0x570
int32_t return_anim_distance_threshold; // 0x574
int32_t range; // 0x578
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge_Thinker : public CDOTA_Buff
{
public:
int32_t flare_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
CHandle< CBaseEntity > m_hInflictor; // 0x11e0
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
int32_t projectile_speed; // 0x11dc
int32_t travel_speed_pct; // 0x11e0
int32_t m_nMaxRange; // 0x11e4
Vector m_vStartPoint; // 0x11e8
Vector m_vLastTrailThinkerLocation; // 0x11f4
Vector m_vEndPointShard; // 0x1200
ParticleIndex_t m_nStatusFXIndex; // 0x120c
int32_t flare_radius; // 0x1210
bool bHasStartedBurning; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
float flare_debuff_duration; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Caster : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Celestial_Hammer_Thinker : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float trail_duration; // 0x11dc
int32_t flare_radius; // 0x11e0
int32_t m_nProjectileHandle; // 0x11e4
CHandle< CBaseEntity > m_hHavenThinker; // 0x11e8
};
// Alignment: 22
// Size: 0x1238
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Caster : public CDOTA_Buff
{
public:
int32_t swipe_radius; // 0x11d8
int32_t swipe_damage; // 0x11dc
int32_t smash_radius; // 0x11e0
int32_t smash_damage; // 0x11e4
int32_t m_nCurrentSpeed; // 0x11e8
float flSwipeInterval; // 0x11ec
GameTime_t m_flNextHit; // 0x11f0
int32_t iCurrentAttack; // 0x11f4
int32_t total_attacks; // 0x11f8
float smash_stun_duration; // 0x11fc
float sweep_stun_duration; // 0x1200
bool m_bHasCompletedMove; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1205[0x3]; // 0x1205
public:
float duration; // 0x1208
Vector m_vTargetHorizontalDirection; // 0x120c
int32_t smash_distance_from_hero; // 0x1218
float animation_rate; // 0x121c
float turn_rate; // 0x1220
float m_flFacingTarget; // 0x1224
bool m_bSuncrusher; // 0x1228
private:
[[maybe_unused]] uint8_t __pad1229[0x3]; // 0x1229
public:
float m_flDistanceSinceStandAblazeThinker; // 0x122c
float m_flDistancePerStandAblazeThinker; // 0x1230
CHandle< CDOTABaseAbility > m_hCelestialHammerForFire; // 0x1234
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Attack_Bonus : public CDOTA_Buff
{
public:
int32_t attack_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Slow : public CDOTA_Buff
{
public:
int32_t swipe_slow; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Fire_Wreath_Smash_Stun : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Dawnbreaker_Converge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
int32_t burn_damage; // 0x11dc
float burn_interval; // 0x11e0
CHandle< CBaseEntity > m_hInflictor; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Dawnbreaker_Land : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_StarbreakerCelestialFire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_CelestialFire_Thinker : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge_Thinker
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_CelestialFire_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Starbreaker_Suncrusher : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_SunForge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_BrightFoundry : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_BrightFoundry_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_Haven : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_CelestialHammer_HammerTime : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_SolarBattery : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_SolarBattery : public CDOTA_Buff
{
public:
int32_t move_speed_pct; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t m_nBonusMovementSpeedPct; // 0x11e0
int32_t m_nBonusAttackSpeed; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Luminosity_Lightbringer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Lightbringer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_SunSentinel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Dawnbreaker_SunSentinelLuminosity_Attack_Buff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Luminosity_Attack_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Special_Dawnbreaker_Solar_Guardian_DeathOfAStar_Active : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
bool m_bPassive; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float m_flCooldown; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Solar_Guardian_SolarFlare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Dawnbreaker_SolarFlare_Debuff : public CDOTA_Modifier_Aghsfort_Dawnbreaker_Converge
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Dawnbreaker_Starbreaker_CounterOrbital : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Dawnbreaker_Starbreaker_CounterOrbital : public CDOTA_Buff
{
public:
int32_t trigger_chance; // 0x11d8
float cooldown; // 0x11dc
GameTime_t m_fLastProc; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Dawnbreaker_Starbreaker_CounterOrbital_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_Invis : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_Confusion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_Burst : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Bane_Enfeeble : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Bane_Enfeeble : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Bane_Enfeeble_Effect : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t heal_reduction; // 0x11dc
int32_t cast_reduction; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Aghsfort_Bane_BrainSap : public CDOTABaseAbility
{
public:
int32_t cast_range; // 0x558
int32_t brain_sap_damage; // 0x55c
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Bane_Nightmare : public CDOTABaseAbility
{
public:
int32_t m_nNightmareSwapCount; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Bane_NightmareEnd : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_Bane_Nightmare : public CDOTA_Buff
{
public:
bool m_bSweetDreams; // 0x11d8
bool m_bConfusion; // 0x11d9
bool m_bSelfBreakAvailable; // 0x11da
bool m_bNoStatusEffect; // 0x11db
int32_t m_nSource; // 0x11dc
float animation_rate; // 0x11e0
GameTime_t m_flNextNightmareDamageTime; // 0x11e4
float m_flAccumNightmareDamage; // 0x11e8
int32_t movespeed_pct; // 0x11ec
int32_t attack_speed; // 0x11f0
int32_t model_scale; // 0x11f4
CHandle< CBaseEntity > m_hConfusionAttackTarget; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Bane_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable
{
public:
int32_t m_nMoveSpeed; // 0x11d8
};
// Alignment: 6
// Size: 0x570
class CDOTA_Ability_Aghsfort_Bane_FiendsGrip : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hGripTarget; // 0x558
int32_t fiend_grip_damage; // 0x55c
int32_t fiend_grip_spread_radius; // 0x560
float channel_time; // 0x564
float fiend_grip_tick_interval; // 0x568
GameTime_t m_flLastSpreadTime; // 0x56c
};
// Alignment: 9
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip : public CDOTA_Buff
{
public:
int32_t fiend_grip_mana_drain; // 0x11d8
int32_t fiend_grip_boost_lifesteal_multiplier; // 0x11dc
int32_t fiend_grip_damage; // 0x11e0
int32_t fiend_grip_spread_radius; // 0x11e4
float fiend_grip_tick_interval; // 0x11e8
GameTime_t m_flLastSpreadTime; // 0x11ec
bool m_bThinkerSource; // 0x11f0
bool m_bRequiresChanneling; // 0x11f1
bool m_bPrimaryGrip; // 0x11f2
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Cast_Illusion : public CDOTA_Buff
{
public:
int32_t fiend_grip_mana_drain; // 0x11d8
float fiend_grip_tick_interval; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Self : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Illusion_Can_Only_Channel : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Bane_FiendsGrip_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_DeathSpread : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_DamageSteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Bane_Enfeeble_DamageStealBuff : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_EndFiendGrip : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Bane_FiendsGripThinker : public CDOTA_Buff
{
public:
int32_t latch_range; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_Spread : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_AutoNightmare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_NightmareMirror : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Enfeeble_Spill : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_FiendsGrip_BoostAlly : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_BrainSap_Knockback_Slow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1230
class CDOTA_Modifier_AghsFort_Bane_BrainSap_Knockback : public CDOTA_Modifier_Knockback
{
public:
int32_t radius; // 0x1208
int32_t heal_pct; // 0x120c
float slow_duration; // 0x1210
int32_t m_nBrainSapDamage; // 0x1214
CUtlVector< CHandle< CBaseEntity > > m_vecHitTargets; // 0x1218
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Bane_BrainSap_KnockbackSlow : public CDOTA_Buff
{
public:
int32_t movement_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Bane_Nightmare_SweetDreams : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Bane_BrainSap_NightmareMirror : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Bane_BrainSap_Invis : public CDOTA_Modifier_Invisible
{
public:
int32_t invis_movement_speed; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Bane_Invis_Crit : public CDOTA_Buff
{
public:
int32_t invis_brain_sap_crit_pct; // 0x11d8
int32_t m_nCritPct; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Phoenix_SunRay : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Phoenix_SunRayStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Phoenix_SunRayVision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 21
// Size: 0x1258
class CDOTA_Modifier_AghsFort_Phoenix_SunRay : public CDOTA_Buff
{
public:
float hp_cost_pct; // 0x11d8
int32_t beam_range; // 0x11dc
int32_t base_damage; // 0x11e0
int32_t base_heal; // 0x11e4
float tick_interval; // 0x11e8
float forward_move_speed; // 0x11ec
float turn_rate_initial; // 0x11f0
float turn_rate; // 0x11f4
int32_t radius; // 0x11f8
float m_flCurrentTime; // 0x11fc
float m_flAccumulatedSelfDamage; // 0x1200
bool m_bMovingForward; // 0x1204
bool m_bTurningFast; // 0x1205
private:
[[maybe_unused]] uint8_t __pad1206[0x2]; // 0x1206
public:
float m_flFacingTarget; // 0x1208
float hp_perc_heal; // 0x120c
ParticleIndex_t m_nBeamFXIndex; // 0x1210
CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1214
CHandle< CBaseEntity > m_hBeamEnd; // 0x1234
bool m_bCreatedVisionThinkers; // 0x1238
private:
[[maybe_unused]] uint8_t __pad1239[0x3]; // 0x1239
public:
CHandle< CBaseEntity > m_hBeamEndSound; // 0x123c
CUtlVector< CHandle< CBaseEntity > > m_vecDispelledAllies; // 0x1240
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Phoenix_SunRayToggleMove : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_Phoenix_IcarusDive : public CDOTABaseAbility
{
public:
int32_t hp_cost_perc; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Phoenix_IcarusDiveStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1248
class CDOTA_Modifier_AghsFort_Phoenix_IcarusDive : public CDOTA_Buff
{
public:
Vector m_vSource; // 0x11d8
Vector m_vTarget; // 0x11e4
Vector m_vDirection; // 0x11f0
QAngle m_angDirection; // 0x11fc
float m_flCurrentTime; // 0x1208
int32_t dash_length; // 0x120c
int32_t dash_width; // 0x1210
int32_t hit_radius; // 0x1214
float burn_duration; // 0x1218
float dive_duration; // 0x121c
int32_t damage_per_second; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1228
bool m_bSavedAlly; // 0x1240
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Phoenix_IcarusDiveBurn : public CDOTA_Buff
{
public:
float burn_tick_interval; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t slow_movement_speed_pct; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AghsFort_Phoenix_FireSpirits : public CDOTABaseAbility
{
public:
int32_t hp_cost_perc; // 0x558
int32_t spirit_count; // 0x55c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Phoenix_FireSpiritCount : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t spirit_count; // 0x11dc
};
// Alignment: 6
// Size: 0x570
class CDOTA_Ability_AghsFort_Phoenix_LaunchFireSpirit : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
bool m_bUnitCarriedByArtillery; // 0x55c
private:
[[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d
public:
int32_t m_nSpiritSpeed; // 0x560
float m_fDuration; // 0x564
int32_t m_nRadius; // 0x568
int32_t m_nSpiritCount; // 0x56c
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Phoenix_FireSpiritBurn : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
int32_t damage_per_second; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Phoenix_Supernova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Phoenix_SupernovaHiding : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Phoenix_Sun : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float stun_duration; // 0x11dc
int32_t attacks_to_kill; // 0x11e0
int32_t captain_attack_value; // 0x11e4
int32_t boss_attack_value; // 0x11e8
CHandle< CBaseEntity > m_hSecondaryTarget; // 0x11ec
bool m_bHasExpelCoreShard; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
int32_t m_nAttackCount; // 0x11f4
int32_t creep_attacks_count; // 0x11f8
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Phoenix_SecondSun : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float stun_duration; // 0x11dc
int32_t attacks_to_kill; // 0x11e0
int32_t captain_attack_value; // 0x11e4
int32_t boss_attack_value; // 0x11e8
int32_t m_nAttackCount; // 0x11ec
int32_t m_nRadius; // 0x11f0
float m_fSecondSunRadiusPct; // 0x11f4
int32_t creep_attacks_count; // 0x11f8
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Phoenix_Sun_Debuff : public CDOTA_Buff
{
public:
int32_t damage_per_sec; // 0x11d8
float damage_interval; // 0x11dc
int32_t aura_radius; // 0x11e0
float m_fRadius; // 0x11e4
float m_fSecondSunRadiusPct; // 0x11e8
GameTime_t m_fNextDamageTime; // 0x11ec
GameTime_t m_fLastThinkTime; // 0x11f0
bool m_bHasHorizonAbility; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
int32_t m_nHorizonPushDistance; // 0x11f8
float m_fHorizonPushInterval; // 0x11fc
GameTime_t m_fNextHorizonPushTime; // 0x1200
ParticleIndex_t m_nHorizonFX; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_Savior : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Caster : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Ally : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hSaviorEnt; // 0x11d8
float ally_position_offset; // 0x11dc
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Special_Phoenix_IcarusDive_Savior_Invis : public CDOTA_Modifier_PersistentInvisibility
{
public:
float duration; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_BlastWave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_IcarusDive_SecondSun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_Vitality : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_Artillery : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Special_Phoenix_FireSpirits_Artillery_Carry : public CDOTA_Buff
{
public:
int32_t m_nProjectileHandle; // 0x11d8
Vector m_vDirection; // 0x11dc
float unit_position_offset; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_FireSpirits_FlameRevenant : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Phoenix_Flame_Revenant_Attack : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Attack_TreeFire_Thinker : public CDOTA_Buff
{
public:
CUtlVector< CUtlPair< CHandle< CBaseEntity >, GameTime_t > > m_vecTreeFires; // 0x11d8
bool m_bCleanupWhenEmpty; // 0x11f0
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_AghsFort_Phoenix_FlameRevenant_Attack : public CDOTA_Buff
{
public:
float radius_pct_as_length; // 0x11d8
int32_t width; // 0x11dc
float linger_duration; // 0x11e0
float m_fLength; // 0x11e4
ParticleIndex_t m_nBeamFXIndex; // 0x11e8
CHandle< CBaseEntity > m_hBeamEnd; // 0x11ec
GameTime_t m_flLastHit; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CBaseEntity* > m_vecBurningTrees; // 0x11f8
CHandle< CBaseEntity > m_hTreeFireThinker; // 0x1210
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Phoenix_FlameRevenant_Attack_Damage : public CDOTA_Buff
{
public:
float m_fDamagePerSecond; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
ParticleIndex_t m_nActiveFXIndex; // 0x11e0
ParticleIndex_t m_nActiveStatusFXIndex; // 0x11e4
float flame_revenant_damage_pct; // 0x11e8
float think_interval; // 0x11ec
int32_t move_slow_pct; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_Luminance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_FocusPoint : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_SunRay_GammaRay : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Special_Phoenix_SunRay_GammaRay_Slow : public CDOTA_Buff
{
public:
int32_t move_slow_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Phoenix_SunRay_Luminance : public CDOTA_Buff
{
public:
float pct_of_heal_as_attack_speed; // 0x11d8
float m_fAttackSpeedBonus; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_Capture : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_Horizon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Phoenix_Supernova_ExpelCore : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Phoenix_Supernova_BonusDps : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Phoenix_SunRay_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Phoenix_Supernova_AttacksToKill : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_ArcWardenBoss_Flux : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1208
class CDOTA_Modifier_AghsFort_ArcWardenBoss_Flux : public CDOTA_Buff
{
public:
int32_t m_nCasterTeam; // 0x11d8
int32_t damage_per_tick_min; // 0x11dc
int32_t damage_per_tick_max; // 0x11e0
int32_t search_radius; // 0x11e4
int32_t move_speed_slow_pct; // 0x11e8
float think_interval; // 0x11ec
float m_fCurrentDamage; // 0x11f0
float m_fDamageIncreasePerTick; // 0x11f4
int32_t m_nCurrentSlow; // 0x11f8
bool m_bAlone; // 0x11fc
private:
[[maybe_unused]] uint8_t __pad11fd[0x3]; // 0x11fd
public:
ParticleIndex_t m_nFXIndex; // 0x1200
};
// Alignment: 0
// Size: 0x558
class CDOTA_AghsFort_Ability_ArcWardenBoss_MagneticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Evasion : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t radius; // 0x11e0
float explosion_delay_time; // 0x11e4
float explosion_stun_duration; // 0x11e8
int32_t explosion_damage; // 0x11ec
int32_t caster_team; // 0x11f0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Explosion : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t explosion_damage; // 0x11dc
float explosion_stun_duration; // 0x11e0
float explosion_delay_time; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Thinker_Attack_Speed : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Evasion : public CDOTA_Buff
{
public:
int32_t evasion_chance; // 0x11d8
int32_t radius; // 0x11dc
float aura_origin_x; // 0x11e0
float aura_origin_y; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MagneticField_Attack_Speed : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus; // 0x11d8
};
// Alignment: 5
// Size: 0x570
class CDOTA_AghsFort_Ability_ArcWardenBoss_SparkWraith : public CDOTABaseAbility
{
public:
float duration; // 0x558
float activation_delay; // 0x55c
float wraith_vision_duration; // 0x560
int32_t wraith_vision_radius; // 0x564
int32_t spark_damage; // 0x568
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_ArcWardenBoss_SparkWraith_Purge : public CDOTA_Buff
{
public:
int32_t move_speed_slow_pct; // 0x11d8
};
// Alignment: 18
// Size: 0x1230
class CDOTA_Modifier_AghsFort_ArcWardenBoss_SparkWraith_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t wraith_vision_radius; // 0x11dc
int32_t wraith_speed; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x8]; // 0x11e4
public:
float activation_delay; // 0x11ec
float scepter_activation_delay; // 0x11f0
float think_interval; // 0x11f4
float search_timer_min; // 0x11f8
float search_timer_max; // 0x11fc
float mini_stun_duration; // 0x1200
int32_t move_speed_slow_pct; // 0x1204
int32_t m_nSparkDamage; // 0x1208
bool m_bActive; // 0x120c
bool m_bOriginal; // 0x120d
private:
[[maybe_unused]] uint8_t __pad120e[0x2]; // 0x120e
public:
float m_fSearchTimer; // 0x1210
float m_fRotationSpeed; // 0x1214
int32_t m_nRotationDirection; // 0x1218
Vector m_vRotationCenter; // 0x121c
ParticleIndex_t m_nFXIndex; // 0x1228
};
// Alignment: 1
// Size: 0x560
class CDOTA_AghsFort_Ability_ArcWardenBoss_TempestDouble : public CDOTABaseAbility
{
public:
int32_t m_nNumDoubles; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_ArcWardenBoss_TempestDouble : public CDOTA_Buff
{
public:
int32_t damage_increase; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_ArcWardenBoss_TempestDouble_Phase : public CDOTA_Buff
{
public:
int32_t num_doubles; // 0x11d8
};
// Alignment: 12
// Size: 0x1238
class CDOTA_Modifier_AghsFort_ArcWardenBoss_MeteorShockwave_Thinker : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
bool m_bWindingUp; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CountdownTimer m_ViewerTimer; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1208
int32_t speed; // 0x1220
int32_t radius; // 0x1224
float knockback_distance; // 0x1228
float knockback_duration; // 0x122c
float windup_time; // 0x1230
};
// Alignment: 0
// Size: 0x558
class CDOTA_Aghsfort_Ability_ArcWardenBoss_Gleipnir : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ArcWardenBoss_SparkWraith_Missile : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1258
class CDOTA_Modifier_Aghsfort_ArcWardenBoss_SparkWraith_Missile : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nFXIndex2; // 0x11dc
int32_t hero_damage; // 0x11e0
int32_t acceleration; // 0x11e4
int32_t min_damage; // 0x11e8
int32_t max_distance; // 0x11ec
float pre_flight_time; // 0x11f0
float stun_duration; // 0x11f4
int32_t m_nMissileDamage; // 0x11f8
int32_t m_nTeamNumber; // 0x11fc
private:
[[maybe_unused]] uint8_t __pad1200[0x8]; // 0x1200
public:
float speed; // 0x1208
CHandle< CBaseEntity > m_hAttachTarget; // 0x120c
Vector m_vStartPosition; // 0x1210
private:
[[maybe_unused]] uint8_t __pad121c[0x4]; // 0x121c
public:
CountdownTimer m_EnemyVision; // 0x1220
CountdownTimer m_MoveTime; // 0x1238
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_ArcWardenBoss_SparkWraith_Missile_Target : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_BossEarthshaker_Fissure : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Shard : public CDOTA_Buff
{
public:
Vector m_vStartPos; // 0x11d8
Vector m_vEndPos; // 0x11e4
GameTime_t m_flEndTime; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Shard_Pathing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_BossEarthshaker_Fissure_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_BossEarthshaker_EnchantTotem : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 19
// Size: 0x1240
class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_Leap : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x4]; // 0x11d8
public:
Vector m_vLoc; // 0x11dc
float m_flPredictedTotalTime; // 0x11e8
Vector m_vStartPosition; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bHorizontalMotionInterrupted; // 0x1200
bool m_bDamageApplied; // 0x1201
bool m_bTargetTeleported; // 0x1202
private:
[[maybe_unused]] uint8_t __pad1203[0x1]; // 0x1203
public:
Vector m_vHorizontalVelocity; // 0x1204
Vector m_vLastKnownTargetPosition; // 0x1210
float m_flInitialVelocityZ; // 0x121c
ParticleIndex_t m_nPreviewFX; // 0x1220
int32_t scepter_height; // 0x1224
int32_t scepter_height_arcbuffer; // 0x1228
int32_t scepter_acceleration_z; // 0x122c
int32_t scepter_acceleration_horizontal; // 0x1230
int32_t landing_radius; // 0x1234
float landing_debuff_duration; // 0x1238
int32_t landing_impact_damage; // 0x123c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_Animation : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem_LandDebuff : public CDOTA_Buff
{
public:
int32_t landing_move_slow_pct; // 0x11d8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_BossEarthshaker_EnchantTotem : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t totem_damage_percentage; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11e0[0x8]; // 0x11e0
public:
bool bActive; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_CreateRock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_Thinker : public CDOTA_Buff
{
public:
int32_t effect_radius; // 0x11d8
float rock_duration; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_HP : public CDOTA_Buff
{
public:
int32_t rock_health; // 0x11d8
int32_t rock_visualzdelta; // 0x11dc
bool m_bIsCrushing; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t summon_count; // 0x11e4
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Rock_Crush : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hRock; // 0x11d8
QAngle m_qRotation; // 0x11dc
float m_flOldPitch; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_HeavySteps : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Primalbeast_Boss_HeavySteps : public CDOTA_Buff
{
public:
Vector vLastPos; // 0x11d8
float flCurrentDistance; // 0x11e4
int32_t step_distance; // 0x11e8
int32_t effect_radius; // 0x11ec
int32_t base_damage; // 0x11f0
CHandle< CBaseEntity > m_hTarget; // 0x11f4
CountdownTimer ctLastCommandTimer; // 0x11f8
bool m_bMoveCommandIssued; // 0x1210
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Pummel : public CDOTABaseAbility
{
public:
CDOTA_BaseNPC* m_hTarget; // 0x558
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float m_flOffset; // 0x11dc
QAngle m_vStartAngles; // 0x11e0
float animation_rate; // 0x11ec
};
// Alignment: 14
// Size: 0x1230
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Self : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x11d8
Vector m_vPos; // 0x11dc
int32_t splash_radius; // 0x11e8
float interval; // 0x11ec
float ministun; // 0x11f0
int32_t m_nCurrentHitCount; // 0x11f4
int32_t total_ripple_circles; // 0x11f8
int32_t ripple_step_distance; // 0x11fc
int32_t ripple_step_distance_offset; // 0x1200
float health_damage; // 0x1204
float ripple_duration; // 0x1208
int32_t ripple_damage; // 0x120c
CUtlVector< int32 > m_vLastRippleOffsets; // 0x1210
float self_animation_rate; // 0x1228
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Ripple_Thinker : public CDOTA_Buff
{
public:
int32_t ripple_effect_width; // 0x11d8
int32_t ripple_damage; // 0x11dc
int32_t health_damage; // 0x11e0
int32_t ripple_count; // 0x11e4
int32_t total_ripple_circles; // 0x11e8
float radius; // 0x11ec
float ripple_slow_duration; // 0x11f0
float ripple_knockback_duration; // 0x11f4
CHandle< CBaseEntity > m_hGrabbedEnemy; // 0x11f8
ParticleIndex_t m_nPreviewFXIndex; // 0x11fc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_Damage_Tracking : public CDOTA_Buff
{
public:
int32_t damage_limit; // 0x11d8
ParticleIndex_t m_nFxIndex; // 0x11dc
float m_fTotalDamage; // 0x11e0
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Pummel_End_Knockback : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bTargetTeleported; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 14
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Pummel_LootDrop_Thinker : public CDOTA_Buff
{
public:
bool m_bAutoPickup; // 0x11d8
bool m_bOnlyPlayerHeroPickup; // 0x11d9
bool m_bCreepHeroPickup; // 0x11da
bool m_bAutoUse; // 0x11db
bool m_bFlying; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
GameTime_t m_flKnockbackStartTime; // 0x11e0
GameTime_t m_flKnockbackEndTime; // 0x11e4
float m_flKnockbackHeight; // 0x11e8
float m_flInitialHeight; // 0x11ec
float m_flKnockbackDuration; // 0x11f0
float m_flEndHeight; // 0x11f4
Vector m_vStartPos; // 0x11f8
Vector m_vEndPos; // 0x1204
ParticleIndex_t m_nContainerFx; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Pummel_DroppedItem : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPreviewFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Onslaught : public CDOTABaseAbility
{
public:
float max_charge_time; // 0x558
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Windup : public CDOTA_Buff
{
public:
float m_flFacingTarget; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
ParticleIndex_t m_nCrosshairFX; // 0x11e0
float charge_duration; // 0x11e4
float max_charge_time; // 0x11e8
float turn_rate; // 0x11ec
float base_power; // 0x11f0
int32_t charge_speed; // 0x11f4
float animation_rate; // 0x11f8
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Movement : public CDOTA_Buff
{
public:
float charge_speed; // 0x11d8
int32_t knockback_radius; // 0x11dc
int32_t knockback_distance; // 0x11e0
int32_t knockback_damage; // 0x11e4
int32_t forward_offset; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11ec
float m_flFacingTarget; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11f4
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11f8
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Onslaught_Knockback : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bTargetTeleported; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Inhibition : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Inhibition : public CDOTA_Buff
{
public:
float debuff_duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Inhibition_Debuff : public CDOTA_Buff
{
public:
int32_t heal_suppression_pct; // 0x11d8
int32_t armor_reduction_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_Vault : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_Vault : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
GameTime_t m_flEndTime; // 0x11e0
Vector m_vStartPosition; // 0x11e4
Vector m_vTargetHorizontalDirection; // 0x11f0
float m_flCurrentTimeHoriz; // 0x11fc
float m_flCurrentTimeVert; // 0x1200
bool m_bInterrupted; // 0x1204
bool m_bStartedLandingSequence; // 0x1205
private:
[[maybe_unused]] uint8_t __pad1206[0x2]; // 0x1206
public:
float vault_speed; // 0x1208
float vault_acceleration; // 0x120c
int32_t vault_radius; // 0x1210
};
// Alignment: 6
// Size: 0x578
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_ThrowAttack : public CDOTABaseAbility
{
public:
int32_t base_damage; // 0x558
int32_t hp_damage_pct; // 0x55c
int32_t impact_radius; // 0x560
int32_t fragment_impact_distance; // 0x564
int32_t min_range; // 0x568
ParticleIndex_t m_nFXPreview; // 0x56c
};
// Alignment: 8
// Size: 0x5a0
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_RoarAttack : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t projectile_count; // 0x55c
float rotation_angle; // 0x560
float damage; // 0x564
float radius; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CountdownTimer ctTimer; // 0x570
Vector m_vecStartRot; // 0x588
Vector m_vecEndRot; // 0x594
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Primalbeast_Boss_RoarAttack_Start : public CDOTA_Buff
{
public:
int32_t rock_drop_intervals; // 0x11d8
int32_t rock_drop_per_interval; // 0x11dc
int32_t rock_drop_distance; // 0x11e0
int32_t m_nCurrentInterval; // 0x11e4
int32_t rock_drop_rotation_angle; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_NoCC : public CDOTA_Buff
{
public:
bool bCanbeMotionControlled; // 0x11d8
};
// Alignment: 23
// Size: 0x1288
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift : public CDOTA_Buff
{
public:
int32_t projectile_speed; // 0x11d8
int32_t projectile_speed_increment; // 0x11dc
int32_t projectile_distance; // 0x11e0
int32_t projectile_width; // 0x11e4
int32_t projectiles_per_interval; // 0x11e8
int32_t projectiles_per_interval_increment; // 0x11ec
int32_t initial_spread_angle; // 0x11f0
int32_t angle_offset; // 0x11f4
int32_t iCurrentInterval; // 0x11f8
int32_t splinter_angle; // 0x11fc
CountdownTimer m_LeftHandSmashTimer; // 0x1200
CountdownTimer m_RightHandSmashTimer; // 0x1218
CountdownTimer m_AttackIntervalTimer; // 0x1230
float initial_interval; // 0x1248
float interval_reduction; // 0x124c
float min_interval; // 0x1250
int32_t arm_distance_forward; // 0x1254
int32_t arm_distance_side; // 0x1258
int32_t splash_radius; // 0x125c
int32_t max_split_amount; // 0x1260
int32_t m_nCurrentCastCount; // 0x1264
int32_t max_projectiles; // 0x1268
private:
[[maybe_unused]] uint8_t __pad126c[0x4]; // 0x126c
public:
CUtlVector< int32 > m_vecProjectileHandles; // 0x1270
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_TectonicShift : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Aghsfort_PrimalBeast_Boss_PrimalRoar : public CDOTABaseAbility
{
public:
int32_t path_width; // 0x558
float push_duration; // 0x55c
int32_t push_distance; // 0x560
int32_t min_distance; // 0x564
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed_pct; // 0x11d8
int32_t slow_attack_speed_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_PrimalRoar_Push : public CDOTA_Buff
{
public:
Vector m_vVelocity; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_InAbilityPhaseStart : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_CastTracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_TimeOut : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_PrimalBeast_Boss_TectonicShift_Damage : public CDOTA_Buff
{
public:
float tick_damage; // 0x11d8
int32_t damage_ticks; // 0x11dc
int32_t m_nTickAmount; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Sand_King_SandStorm : public CDOTABaseAbility
{
public:
int32_t m_iRadius; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Sand_King_CausticFinale : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinaleOrb : public CDOTA_Buff
{
public:
int32_t caustic_finale_radius; // 0x11d8
int32_t caustic_finale_damage_death; // 0x11dc
int32_t caustic_finale_damage_dot; // 0x11e0
int32_t caustic_finale_slow; // 0x11e4
float caustic_finale_dot_tick; // 0x11e8
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinale : public CDOTA_Buff
{
public:
float caustic_finale_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike_Reverse_Tracking : public CDOTA_Buff
{
public:
Vector m_vStartLocation; // 0x11d8
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Aghsfort_Sand_King_BurrowStrike : public CDOTABaseAbility
{
public:
int32_t burrow_width; // 0x558
int32_t burrow_speed; // 0x55c
float burrow_anim_time; // 0x560
Vector m_vStartLocation; // 0x564
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Sand_King_Impale : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
bool m_bDamageApplied; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
float m_flPower; // 0x11e4
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike : public CDOTA_Buff
{
public:
Vector m_vPopupLocation; // 0x11d8
bool m_bTeleported; // 0x11e4
};
// Alignment: 10
// Size: 0x1210
class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm : public CDOTA_Buff
{
public:
float sand_storm_radius; // 0x11d8
int32_t sand_storm_damage; // 0x11dc
float damage_tick_rate; // 0x11e0
GameTime_t m_flLastDamageTime; // 0x11e4
ParticleIndex_t m_nSandStormParticleIndex1; // 0x11e8
ParticleIndex_t m_nSandStormParticleIndex2; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11f0[0x8]; // 0x11f0
public:
CHandle< CBaseEntity > m_hThinker; // 0x11f8
CHandle< CBaseEntity > m_hBurrowstrikeFieldThinker; // 0x11fc
bool m_bIsPrimarySandstorm; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
Vector vecSpawnPos; // 0x1204
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm_Slow_Aura_Thinker : public CDOTA_Buff
{
public:
float sand_storm_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Sand_King_SandStorm_Slow : public CDOTA_Buff
{
public:
int32_t blind_slow_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Aghsfort_Sand_King_Epicenter : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXEpicenterIndex; // 0x558
};
// Alignment: 5
// Size: 0x1230
class CDOTA_Modifier_Aghsfort_Sand_King_Epicenter : public CDOTA_Buff
{
public:
int32_t epicenter_pulses; // 0x11d8
int32_t epicenter_radius[16]; // 0x11dc
int32_t epicenter_damage; // 0x121c
int32_t m_iMaxPulses; // 0x1220
int32_t m_iPulseCount; // 0x1224
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Sand_King_Epicenter_Slow : public CDOTA_Buff
{
public:
int32_t epicenter_slow; // 0x11d8
int32_t epicenter_slow_as; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Reverse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Sand_King_BurrowStrike_Channel : public CDOTA_Buff
{
public:
Vector m_vTargetPos; // 0x11d8
ParticleIndex_t m_nCrosshairFX; // 0x11e4
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Sand_King_Burrowstrike_Transport : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
Vector m_vDirection; // 0x11dc
float m_flEndTime; // 0x11e8
float m_flCurTime; // 0x11ec
};
// Alignment: 11
// Size: 0x1208
class CDOTA_Modifier_Aghsfort_Sand_King_Sandstorm_Burrowstrike_Field_Thinker : public CDOTA_Buff
{
public:
float radius; // 0x11d8
float explosion_interval; // 0x11dc
int32_t explosion_radius; // 0x11e0
int32_t explosion_min_dist; // 0x11e4
float m_fLastTick; // 0x11e8
float m_fTimeAccumulator; // 0x11ec
int32_t m_iExplosionCount; // 0x11f0
int32_t m_iExplosionTotalCount; // 0x11f4
int32_t m_iExplosionQuadrant; // 0x11f8
int32_t m_iExplosionDistance; // 0x11fc
ParticleIndex_t m_nFXIndex; // 0x1200
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Special_Sand_King_Sandstorm_Vacuum : public CDOTA_Buff
{
public:
float pull_speed; // 0x11d8
Vector vPullLocation; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Sand_King_CausticFinale_Active : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Channel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_BurrowStrike_Transport : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Independant : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Burrowstrike_Field : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_SandStorm_Vacuum : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Sandstorm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Active : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_StrengthBuff : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Sand_King_Caustic_Finale_StrengthBuff : public CDOTA_Buff
{
public:
int32_t str_pct; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Caustic_Finale_Epicenter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_Movement : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Special_Sand_King_Epicenter_Movement : public CDOTA_Buff
{
public:
Vector vLastPos; // 0x11d8
float m_fAccumulatedDistance; // 0x11e4
int32_t movement_distance; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_Allies : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Aghsfort_Special_Sand_King_Epicenter_DamageResist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Special_Sand_King_Epicenter_DamageResist : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t status_resistance; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Sand_King_BurrowStrike_Channel_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x598
class CDOTA_Ability_AghsFort_Clinkz_BurningBarrage : public CDOTABaseAbility
{
public:
Vector m_vStartPos; // 0x558
int32_t m_iArrowProjectile; // 0x564
int32_t m_nFXIndex; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x1c]; // 0x56c
public:
int32_t m_nTriSplitCount; // 0x588
int32_t projectile_speed; // 0x58c
int32_t projectile_width; // 0x590
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_DamageReduction : public CDOTA_Buff
{
public:
int32_t damage_pct; // 0x11d8
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage : public CDOTA_Buff
{
public:
Vector m_vOriginalTarget; // 0x11d8
int32_t wave_count; // 0x11e4
int32_t projectile_speed; // 0x11e8
int32_t projectile_width; // 0x11ec
float m_flInterval; // 0x11f0
int32_t m_nArrowsFired; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Clinkz_SearingArrows : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
bool m_bBonusAttack; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
int32_t damage_bonus; // 0x11f4
float debuff_duration; // 0x11f8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows_Debuff : public CDOTA_Buff
{
public:
int32_t attack_slow; // 0x11d8
float m_fIgniteThinkInterval; // 0x11dc
float m_fIgniteDmgPerSec; // 0x11e0
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_AghsFort_Clinkz_BurningArmy : public CDOTABaseAbility
{
public:
int32_t range; // 0x558
Vector m_vEndpoint; // 0x55c
Vector m_vSlashDir; // 0x568
int32_t m_nDashProjectileID; // 0x574
Vector m_vDashProjectileLocation; // 0x578
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
Vector m_vFacePosition; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy : public CDOTA_Buff
{
public:
float attack_rate; // 0x11d8
int32_t damage_percent; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
bool m_bHasAttacked; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Clinkz_SkeletonWalk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk : public CDOTA_Modifier_Invisible
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vecWraithTouchedEntities; // 0x11e8
int32_t move_speed_bonus_pct; // 0x1200
int32_t bonus_magic_resist; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_TriSplit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_SkeletonShot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningBarrage_Singe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_Singe : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_BurningBarrage_Singe_Slow : public CDOTA_Buff
{
public:
int32_t move_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_Ignite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_SkeletalColossus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Clinkz_SkeletalColossus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_Thinker : public CDOTA_Buff
{
public:
float lifetime; // 0x11d8
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Clinkz_SkeletonColossus : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float cleave_damage_pct; // 0x11dc
int32_t cleave_starting_width; // 0x11e0
int32_t cleave_ending_width; // 0x11e4
int32_t cleave_distance; // 0x11e8
int32_t block_damage_ranged_active; // 0x11ec
int32_t block_damage_melee_active; // 0x11f0
int32_t hp_gain_per_caster_level; // 0x11f4
float hp_regen_per_caster_level; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SearingArrows_Melter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SearingArrows_Melter : public CDOTA_Buff
{
public:
float armor_reduction_per_arrow; // 0x11d8
int32_t m_nMaxStacks; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_BeckonUndead : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_WraithTouch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_WraithTouch_Enemy : public CDOTA_Buff
{
public:
float m_fAttackLoss; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_WraithTouch_Caster : public CDOTA_Buff
{
public:
int32_t max_stacks; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_SkeletonWalk_Strafe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SkeletonWalk_Strafe : public CDOTA_Buff
{
public:
float m_fAttackSpeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_Entrenchment : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Clinkz_BurningArmy_Entrenchment : public CDOTA_Buff
{
public:
float m_fSlowPct; // 0x11d8
float radius; // 0x11dc
float think_interval; // 0x11e0
float linger_duration; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Entrenchment_Buff : public CDOTA_Buff
{
public:
float m_fLifestealPct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_Entrenchment_Debuff : public CDOTA_Buff
{
public:
float m_fSlowPct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_BigSkeletons : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Special_Clinkz_BurningArmy_StunningSkeletons : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_StunningSkeleton_Debuff : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1228
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_BigSkeletons : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x38]; // 0x11d8
public:
int32_t model_scale; // 0x1210
float radius; // 0x1214
int32_t splitshot_count; // 0x1218
float debuff_duration; // 0x121c
float pct_for_moveslow; // 0x1220
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_BurningArmy_BigSkeletons_Debuff : public CDOTA_Buff
{
public:
float m_fMovementSlow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_BigSkeletons : public CDOTA_Buff
{
public:
int32_t m_nInitialHealthBarOffset; // 0x11d8
int32_t colossus_model_scale; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Clinkz_SkeletalColossus_BigSkeletons_Ministun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_Talent_Clinkz_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AghsFort_BossDarkWillow_ShadowRealm : public CDOTABaseAbility
{
public:
int32_t projectile_damage; // 0x558
};
// Alignment: 11
// Size: 0x1208
class CDOTA_Modifier_AghsFort_BossDarkWillow_ShadowRealm_Buff : public CDOTA_Buff
{
public:
float m_fAddInterval; // 0x11d8
GameTime_t m_fNextAddTime; // 0x11dc
GameTime_t m_flStartTime; // 0x11e0
float m_flDamageScale; // 0x11e4
float duration; // 0x11e8
float attack_logic_duration; // 0x11ec
int32_t speed_boost; // 0x11f0
int32_t num_adds; // 0x11f4
int32_t projectile_range; // 0x11f8
int32_t projectile_speed; // 0x11fc
int32_t projectile_width; // 0x1200
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AghsFort_BossDarkWillow_CursedCrown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_BossDarkWillow_CursedCrown : public CDOTA_Buff
{
public:
float delay; // 0x11d8
float stun_duration; // 0x11dc
int32_t stun_radius; // 0x11e0
int32_t damage; // 0x11e4
GameTime_t m_fStartTime; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AncientApparition_ColdFeet : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_AncientApparition_ColdFeet : public CDOTA_Buff
{
public:
Vector m_vecStartPosition; // 0x11d8
int32_t m_nCurrentTick; // 0x11e4
float damage; // 0x11e8
int32_t break_distance; // 0x11ec
float stun_duration; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AncientApparition_ColdFeet_Freeze : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AncientApparition_IceVortex : public CDOTABaseAbility
{
public:
int32_t vision_aoe; // 0x558
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_AncientApparition_IceVortexThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t movement_speed_pct; // 0x11dc
int32_t spell_resist_pct; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_hChilledEntities; // 0x11e8
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_AncientApparition_IceVortex : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
int32_t spell_resist_pct; // 0x11dc
int32_t drag_speed; // 0x11e0
float aura_origin_x; // 0x11e4
float aura_origin_y; // 0x11e8
int32_t shard_dps; // 0x11ec
int32_t shard_attack_speed_reduction; // 0x11f0
Vector m_vCenter; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AncientApparition_ChillingTouch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_AncientApparition_ChillingTouch : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float duration; // 0x11dc
int32_t attack_range_bonus; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AncientApparition_ChillingTouch_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 12
// Size: 0x5c8
class CDOTA_Ability_AncientApparition_IceBlast : public CDOTABaseAbility
{
public:
CountdownTimer m_PathTimer; // 0x558
Vector m_vTarget; // 0x570
Vector m_vStartPos; // 0x57c
Vector m_vLastTempViewer; // 0x588
int32_t m_iTrackerProjectile; // 0x594
int32_t path_radius; // 0x598
int32_t radius_min; // 0x59c
int32_t radius_max; // 0x5a0
float radius_grow; // 0x5a4
float frostbite_duration; // 0x5a8
int32_t target_sight_radius; // 0x5ac
CUtlVector< CHandle< CBaseEntity > > m_hFrostbittenEntities; // 0x5b0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AncientApparition_IceBlast_Release : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AncientApparition_IceBlast : public CDOTA_Buff
{
public:
float dot_damage; // 0x11d8
float kill_pct; // 0x11dc
CHandle< CBaseEntity > m_hFracturingEntity; // 0x11e0
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_AncientApparition_IceAge : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
int32_t health_degen; // 0x55c
float duration; // 0x560
int32_t damage; // 0x564
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AncientApparition_IceAge : public CDOTA_Buff
{
public:
float damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_ManaBreak : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AntiMage_ManaBreak : public CDOTA_Buff
{
public:
int32_t percent_damage_per_burn; // 0x11d8
int32_t mana_per_hit; // 0x11dc
float mana_per_hit_pct; // 0x11e0
float slow_duration; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AntiMage_ManaBreak_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_Blink : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_Blink_Fake : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AntiMage_Blink_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_SpellShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_Counterspell : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Antimage_DampenMagic_Aura_Strong : public CDOTA_Buff
{
public:
int32_t shard_bonus_aura_range; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Antimage_DampenMagic_Bonus : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Antimage_DampenMagic_Aura : public CDOTA_Buff
{
public:
int32_t shard_radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Antimage_DampenMagic : public CDOTA_Buff
{
public:
int32_t shard_spell_damage_reduction_pct; // 0x11d8
int32_t shard_bonus_spell_damage_reduction_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AntiMage_Counterspell_Passive : public CDOTA_Buff
{
public:
int32_t magic_resistance; // 0x11d8
};
// Alignment: 2
// Size: 0x13b8
class CDOTA_Modifier_AntiMage_Counterspell : public CDOTA_Buff
{
public:
CModifierParams m_LastParams; // 0x11d8
int32_t magic_resistance; // 0x13b0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_ManaVoid : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AntiMage_ManaVoid : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_Scepter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AntiMage_Mana_Overload : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bane_Enfeeble : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bane_Enfeeble : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Bane_Enfeeble_Effect : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t heal_reduction; // 0x11dc
int32_t cast_reduction; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Bane_BrainSap : public CDOTABaseAbility
{
public:
int32_t brain_sap_damage; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Bane_Nightmare : public CDOTABaseAbility
{
public:
int32_t m_nNightmareSwapCount; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bane_NightmareEnd : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Bane_Nightmare : public CDOTA_Buff
{
public:
int32_t m_nSource; // 0x11d8
float animation_rate; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bane_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Bane_FiendsGrip : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hGripTarget; // 0x558
int32_t fiend_grip_damage; // 0x55c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Bane_FiendsGrip : public CDOTA_Buff
{
public:
int32_t fiend_grip_mana_drain; // 0x11d8
float fiend_grip_tick_interval; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Bane_FiendsGrip_Cast_Illusion : public CDOTA_Buff
{
public:
int32_t fiend_grip_mana_drain; // 0x11d8
float fiend_grip_tick_interval; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bane_FiendsGrip_Self : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bane_FiendsGrip_Illusion_Can_Only_Channel : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bane_FiendsGrip_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pudge_Eject : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pudge_Swallow : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Pudge_Swallow_Hide : public CDOTA_Buff
{
public:
float order_lock_duration; // 0x11d8
GameTime_t m_fOrderLockDone; // 0x11dc
int32_t m_nFXIndex; // 0x11e0
float shard_regen_pct; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pudge_Swallow_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 24
// Size: 0x600
class CDOTA_Ability_Pudge_MeatHook : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
float hook_speed; // 0x574
int32_t hook_width; // 0x578
int32_t hook_distance; // 0x57c
bool m_bRetracting; // 0x580
bool m_bDiedInHook; // 0x581
private:
[[maybe_unused]] uint8_t __pad0582[0x2]; // 0x582
public:
CHandle< CBaseEntity > m_hVictim; // 0x584
Vector m_vTargetPosition; // 0x588
Vector m_vCasterPosition; // 0x594
bool m_bChainDetached; // 0x5a0
private:
[[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1
public:
ParticleIndex_t m_iChainParticle; // 0x5a4
ParticleIndex_t m_iSecondaryChainParticle; // 0x5a8
int32_t m_iHookParticle; // 0x5ac
int32_t m_nManaCost; // 0x5b0
CHandle< CBaseEntity > m_hSourceCaster; // 0x5b4
int32_t m_nNextConsecutiveHitCount; // 0x5b8
Vector m_vEndpoint; // 0x5bc
// MNetworkEnable
int32_t m_nConsecutiveHits; // 0x5c8
bool m_bIsVectorTargeted; // 0x5cc
private:
[[maybe_unused]] uint8_t __pad05cd[0x3]; // 0x5cd
public:
Vector m_vTurnLocation; // 0x5d0
Vector m_vDirectionAfterTurn; // 0x5dc
bool m_bHasTurned; // 0x5e8
private:
[[maybe_unused]] uint8_t __pad05e9[0x3]; // 0x5e9
public:
float m_flDistanceAfterTurn; // 0x5ec
Vector m_vFinalPosition; // 0x5f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pudge_Meat_Hook_PathingFix : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pudge_Meat_Hook : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Pudge_Rot : public CDOTABaseAbility
{
public:
int32_t rot_damage; // 0x558
GameTime_t m_flLastRotTime; // 0x55c
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Pudge_Rot : public CDOTA_Buff
{
public:
int32_t rot_damage; // 0x11d8
int32_t rot_slow; // 0x11dc
int32_t scepter_rot_regen_reduction_pct; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x8]; // 0x11e4
public:
GameTime_t m_flLastRotTime; // 0x11ec
bool m_bQualifiesAsPotentionalDeny; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pudge_FleshHeap_Block : public CDOTA_Buff
{
public:
float damage_block; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Pudge_FleshHeap : public CDOTA_Buff
{
public:
float magic_resistance; // 0x11d8
float damage_block; // 0x11dc
float flesh_heap_strength_buff_amount; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Pudge_Dismember : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hVictim; // 0x558
int32_t shard_cast_range; // 0x55c
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Pudge_Dismember : public CDOTA_Buff
{
public:
int32_t dismember_damage; // 0x11d8
float strength_damage; // 0x11dc
int32_t m_nTicks; // 0x11e0
int32_t m_nMaxTicks; // 0x11e4
float m_flTickRate; // 0x11e8
float animation_rate; // 0x11ec
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Pudge_Dismember_Pull : public CDOTA_Buff
{
public:
Vector m_vDestination; // 0x11d8
int32_t pull_units_per_second; // 0x11e4
float pull_distance_limit; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x8]; // 0x11ec
public:
float animation_rate; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Pudge_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Juggernaut_BladeFury : public CDOTABaseAbility
{
public:
int32_t blade_fury_damage; // 0x558
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Juggernaut_BladeFury : public CDOTA_Buff
{
public:
int32_t blade_fury_radius; // 0x11d8
int32_t blade_fury_damage; // 0x11dc
float blade_fury_damage_tick; // 0x11e0
float m_flTotalAppliedDamage; // 0x11e4
int32_t shard_bonus_move_speed; // 0x11e8
float shard_attack_rate; // 0x11ec
GameTime_t m_flNextAttack; // 0x11f0
bool m_bIgnoreAttackRestriction; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Jugg_Caster : public CDOTA_Buff
{
public:
int32_t shard_damage_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Juggernaut_HealingWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Juggernaut_Healing_Ward_Aura : public CDOTA_Buff
{
public:
int32_t healing_ward_movespeed_tooltip; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Juggernaut_Healing_Ward_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Juggernaut_Healing_Ward_Heal : public CDOTA_Buff
{
public:
int32_t healing_ward_heal_amount; // 0x11d8
int32_t m_nStartingHealthThisInterval; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Juggernaut_BladeDance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11e8
class CDOTA_Modifier_Juggernaut_BladeDance : public CDOTA_Buff
{
public:
int32_t blade_dance_crit_mult; // 0x11d8
int32_t blade_dance_crit_chance; // 0x11dc
int32_t blade_dance_lifesteal; // 0x11e0
bool m_bHasCrit; // 0x11e4
bool m_bWasBladeDanceTriggeredCrit; // 0x11e5
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Juggernaut_Omnislash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Juggernaut_Swift_Slash : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 15
// Size: 0x1210
class CDOTA_Modifier_Juggernaut_Omnislash : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
CHandle< CBaseEntity > m_hLastTarget; // 0x11dc
int32_t m_nJumps; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t bonus_attack_speed; // 0x11e8
int32_t omni_slash_radius; // 0x11ec
float attack_rate_multiplier; // 0x11f0
bool m_bFirstHit; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
int32_t m_iTotalDamage; // 0x11f8
int32_t m_iHeroDamage; // 0x11fc
int32_t m_iKilledHeroes; // 0x1200
GameTime_t m_fNextAttackTime; // 0x1204
bool m_bScepterCast; // 0x1208
bool m_bReflection; // 0x1209
bool m_bEndNext; // 0x120a
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Juggernaut_Omnislash_Invulnerability : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Holdout_BladeFury : public CDOTA_Ability_Juggernaut_BladeFury
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Holdout_BladeFury : public CDOTA_Buff
{
public:
int32_t blade_fury_damage; // 0x11d8
int32_t blade_dance_crit_chance; // 0x11dc
int32_t blade_dance_crit_mult; // 0x11e0
float blade_fury_damage_tick; // 0x11e4
int32_t blade_fury_radius; // 0x11e8
int32_t bonus_evasion; // 0x11ec
bool m_bTryToCrit; // 0x11f0
};
// Alignment: 11
// Size: 0x5b0
class CDOTA_Ability_Holdout_Omnislash : public CDOTABaseAbility
{
public:
int32_t image_travel_speed; // 0x558
int32_t image_radius; // 0x55c
int32_t jugg_travel_speed; // 0x560
int32_t juggcounter; // 0x564
int32_t range; // 0x568
bool m_bFirstProjectileFinished; // 0x56c
private:
[[maybe_unused]] uint8_t __pad056d[0x3]; // 0x56d
public:
Vector m_vCastDir; // 0x570
Vector m_vPos; // 0x57c
Vector m_vJuggStartLocation; // 0x588
float m_flRange; // 0x594
CUtlVector< CHandle< CBaseEntity > > m_hEntities; // 0x598
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Holdout_Omnislash : public CDOTA_Buff
{
public:
float animation_rate; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Juggernaut_Holdout_Omnislash_FollowupAttack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Nevermore_Shadowraze : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
ParticleIndex_t m_nFXIndexB; // 0x55c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Shadowraze_Debuff : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
int32_t turn_rate_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Shadowraze_Counter : public CDOTA_Buff
{
public:
float shadowraze_cooldown; // 0x11d8
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Nevermore_Shadowraze1 : public CDOTA_Ability_Nevermore_Shadowraze
{
public:
// No members available
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Nevermore_Shadowraze2 : public CDOTA_Ability_Nevermore_Shadowraze
{
public:
// No members available
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Nevermore_Shadowraze3 : public CDOTA_Ability_Nevermore_Shadowraze
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nevermore_Presence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Nevermore_Presence_Aura : public CDOTA_Buff
{
public:
int32_t presence_radius; // 0x11d8
float kill_buff_duration; // 0x11dc
GameTime_t m_fLastStackChange; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Nevermore_Presence : public CDOTA_Buff
{
public:
int32_t presence_armor_reduction; // 0x11d8
int32_t bonus_armor_per_stack; // 0x11dc
bool m_bWasHidden; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Nevermore_Necromastery : public CDOTABaseAbility
{
public:
int32_t attack_range_bonus; // 0x558
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_Nevermore_Requiem : public CDOTABaseAbility
{
public:
int32_t requiem_line_width_start; // 0x558
int32_t requiem_line_width_end; // 0x55c
int32_t m_nCachedSouls; // 0x560
ParticleIndex_t m_nFXIndex; // 0x564
int32_t m_nKilleater_nLines; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesReqd; // 0x570
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Nevermore_Necromastery : public CDOTA_Buff
{
public:
int32_t necromastery_damage_per_soul; // 0x11d8
int32_t necromastery_max_souls; // 0x11dc
int32_t necromastery_max_souls_scepter; // 0x11e0
int32_t shard_crit_pct; // 0x11e4
int32_t shard_souls_per_kill; // 0x11e8
float shard_fear_duration; // 0x11ec
ParticleIndex_t m_iParticleSoulsIndex; // 0x11f0
ParticleIndex_t m_FXIndex; // 0x11f4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nevermore_Requiem_InvisBreak : public CDOTA_Buff
{
public:
bool bDisableInvis; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nevermore_Requiem_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nevermore_Requiem_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Nevermore_Requiem_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Nevermore_Necromastery_Fear : public CDOTA_Modifier_Nevermore_Requiem_Fear
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Nevermore_Requiem_Slow : public CDOTA_Buff
{
public:
int32_t requiem_reduction_ms; // 0x11d8
int32_t requiem_reduction_mres; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SandKing_CausticFinale : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_SandKing_CausticFinale : public CDOTA_Buff
{
public:
float caustic_finale_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_SandKing_CausticFinaleOrb : public CDOTA_Buff
{
public:
int32_t caustic_finale_radius; // 0x11d8
int32_t caustic_finale_damage_base; // 0x11dc
int32_t caustic_finale_damage_pct; // 0x11e0
int32_t caustic_finale_slow; // 0x11e4
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_SandKing_BurrowStrike : public CDOTABaseAbility
{
public:
int32_t burrow_width; // 0x558
int32_t burrow_speed; // 0x55c
int32_t burrow_speed_scepter; // 0x560
float burrow_anim_time; // 0x564
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_SandKing_Impale : public CDOTA_Buff
{
public:
float m_flPower; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
bool m_bDamageApplied; // 0x11e4
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Sand_King_BurrowStrike : public CDOTA_Buff
{
public:
Vector m_vPopupLocation; // 0x11d8
bool m_bTeleported; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SandKing_SandStorm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_SandKing_SandStorm : public CDOTA_Modifier_PersistentInvisibility
{
public:
int32_t sand_storm_radius; // 0x11e8
int32_t sand_storm_damage; // 0x11ec
float damage_tick_rate; // 0x11f0
GameTime_t m_flLastDamageTime; // 0x11f4
ParticleIndex_t m_nSandStormParticleIndex1; // 0x11f8
ParticleIndex_t m_nSandStormParticleIndex2; // 0x11fc
private:
[[maybe_unused]] uint8_t __pad1200[0x8]; // 0x1200
public:
CHandle< CBaseEntity > m_hThinker; // 0x1208
Vector vecSpawnPos; // 0x120c
int32_t m_iExplosionQuadrant; // 0x1218
int32_t m_iExplosionDistance; // 0x121c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SandKing_SandStorm_Slow_Aura_Thinker : public CDOTA_Buff
{
public:
int32_t sand_storm_radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SandKing_SandStorm_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t blind; // 0x11dc
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_SandKing_Epicenter : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXEpicenterIndex; // 0x558
ParticleIndex_t m_nFXIndex; // 0x55c
};
// Alignment: 6
// Size: 0x1238
class CDOTA_Modifier_SandKing_Epicenter : public CDOTA_Buff
{
public:
int32_t epicenter_radius_base; // 0x11d8
int32_t epicenter_radius_increment; // 0x11dc
int32_t epicenter_pulses; // 0x11e0
int32_t epicenter_radius[16]; // 0x11e4
int32_t m_iMaxPulses; // 0x1224
int32_t m_iPulseCount; // 0x1228
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SandKing_Epicenter_Slow : public CDOTA_Buff
{
public:
int32_t epicenter_slow; // 0x11d8
int32_t epicenter_slow_as; // 0x11dc
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Sand_King_Shard : public CDOTA_Buff
{
public:
float shard_move_distance; // 0x11d8
Vector vLastPos; // 0x11dc
float m_fAccumulatedDistance; // 0x11e8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Mirana_Starfall : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Mirana_Starfall_Scepter_Thinker : public CDOTA_Buff
{
public:
float interval_scepter; // 0x11d8
bool bInBufferTime; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
int32_t damage; // 0x11e0
GameTime_t m_flLastApplyTime; // 0x11e4
};
// Alignment: 5
// Size: 0x11e8
class CDOTA_Modifier_Mirana_Starfall_Thinker : public CDOTA_Buff
{
public:
int32_t starfall_secondary_radius; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
int32_t m_iDamage; // 0x11e0
bool m_bStarDropped; // 0x11e4
bool m_bSecondStar; // 0x11e5
};
// Alignment: 7
// Size: 0x5d8
class CDOTA_Ability_Mirana_Arrow : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
int32_t scepter_radius; // 0x55c
Vector m_vStartPos; // 0x560
ParticleIndex_t m_nFXIndex; // 0x56c
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList[2]; // 0x570
CUtlVector< CHandle< CBaseEntity > > hStarfallList[2]; // 0x5a0
int32_t m_nActiveArrow; // 0x5d0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mirana_Leap_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Mirana_Leap : public CDOTABaseAbility
{
public:
bool m_bIsVectorTargeted; // 0x558
private:
[[maybe_unused]] uint8_t __pad0559[0x3]; // 0x559
public:
Vector m_vEndpoint; // 0x55c
Vector m_vLandPosition; // 0x568
};
// Alignment: 20
// Size: 0x1240
class CDOTA_Modifier_Mirana_Leap : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
bool m_bIsVectorTargeted; // 0x1201
private:
[[maybe_unused]] uint8_t __pad1202[0x2]; // 0x1202
public:
Vector m_vFaceDirection; // 0x1204
int32_t leap_distance; // 0x1210
float shard_radius; // 0x1214
float shard_radius_end; // 0x1218
float shard_damage; // 0x121c
float shard_slow_pct; // 0x1220
float shard_slow_duration; // 0x1224
float leap_speed; // 0x1228
float leap_acceleration; // 0x122c
int32_t leap_radius; // 0x1230
float leap_bonus_duration; // 0x1234
bool m_bLaunched; // 0x1238
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mirana_Leap_Slow : public CDOTA_Buff
{
public:
int32_t shard_slow_pct; // 0x11d8
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Mirana_Leap_Buff : public CDOTA_Buff
{
public:
int32_t leap_speedbonus; // 0x11d8
int32_t leap_speedbonus_as; // 0x11dc
bool m_bCritUsed; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x7]; // 0x11e1
public:
CUtlVector< int16 > m_vCritRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Mirana_MoonlightShadow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Mirana_MoonlightShadow : public CDOTA_Modifier_PersistentInvisibility
{
public:
float duration; // 0x11e8
int32_t bonus_movement_speed; // 0x11ec
int32_t evasion; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mirana_MoonlightShadow_KillTracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Sven_StormBolt : public CDOTABaseAbility
{
public:
int32_t vision_radius; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sven_Stormbolt_Hide : public CDOTA_Buff
{
public:
int32_t m_nHandle; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sven_GreatCleave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Sven_GreatCleave : public CDOTA_Buff
{
public:
int32_t cleave_starting_width; // 0x11d8
int32_t cleave_ending_width; // 0x11dc
int32_t cleave_distance; // 0x11e0
int32_t great_cleave_damage; // 0x11e4
int32_t strength_bonus; // 0x11e8
int16_t m_nLastCleaveRecord; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ee[0x2]; // 0x11ee
public:
int32_t m_nLastCleaveKills; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sven_Warcry : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sven_Warcry_Aura : public CDOTA_Buff
{
public:
int32_t shard_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sven_Warcry_Passive : public CDOTA_Buff
{
public:
int32_t shard_passive_armor; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Sven_Warcry : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sven_GodsStrength : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sven_GodsStrength : public CDOTA_Buff
{
public:
int32_t gods_strength_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Sven_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SkeletonKing_HellfireBlast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_HellfireBlast : public CDOTA_Buff
{
public:
int32_t blast_dot_damage; // 0x11d8
int32_t blast_slow; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_HellfireBlast_Skeleton_Buff : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_move_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SkeletonKing_VampiricAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_SkeletonKing_VampiricAura : public CDOTA_Buff
{
public:
int32_t vampiric_aura; // 0x11d8
int32_t creep_lifesteal_reduction_pct; // 0x11dc
float skeleton_duration; // 0x11e0
int32_t max_skeleton_charges; // 0x11e4
int32_t m_iKillCounter; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_VampiricAura_Summon_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
};
// Alignment: 11
// Size: 0x1200
class CDOTA_Modifier_SkeletonKing_VampiricAura_Summon : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t talent_skeleton_damage; // 0x11dc
bool m_bRespawnReady; // 0x11e0
bool m_bRespawnConsumed; // 0x11e1
bool m_bKillParentOnDestroy; // 0x11e2
private:
[[maybe_unused]] uint8_t __pad11e3[0x1]; // 0x11e3
public:
GameTime_t m_flRespawnTime; // 0x11e4
int32_t vampiric_aura; // 0x11e8
int32_t gold_bounty; // 0x11ec
int32_t xp_bounty; // 0x11f0
int32_t skeleton_building_damage_reduction; // 0x11f4
bool m_bFirstTick; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SkeletonKing_MortalStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_SkeletonKing_MortalStrike : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_vCritRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_SkeletonKing_Reincarnation : public CDOTABaseAbility
{
public:
bool m_bShouldUseResources; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_SkeletonKing_Reincarnation : public CDOTA_Buff
{
public:
float reincarnate_time; // 0x11d8
int32_t scepter_aura_radius; // 0x11dc
GameTime_t m_fLastReincarnationTime; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_Reincarnation_SpawnSkeletons : public CDOTA_Buff
{
public:
int32_t shard_skeleton_count; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_Reincarnation_Slow : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
int32_t attackslow; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_Reincarnation_Scepter : public CDOTA_Buff
{
public:
float scepter_duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SkeletonKing_Reincarnation_Scepter_RespawnTime : public CDOTA_Buff
{
public:
float scepter_respawn_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Skeleton_King_Scepter_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Skeleton_King_Arcana : public CDOTA_Buff
{
public:
bool m_bHasCrit; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Storm_Spirit_Electric_Rave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_StormSpirit_Electric_Rave : public CDOTA_Buff
{
public:
int32_t overload_aoe; // 0x11d8
int32_t overload_damage; // 0x11dc
int32_t shard_attack_speed_bonus; // 0x11e0
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_StormSpirit_StaticRemnant : public CDOTABaseAbility
{
public:
Vector m_vecCastPos; // 0x558
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_StormSpirit_StaticRemnantThinker : public CDOTA_Buff
{
public:
int32_t static_remnant_radius; // 0x11d8
int32_t static_remnant_damage_radius; // 0x11dc
int32_t static_remnant_damage; // 0x11e0
float static_remnant_delay; // 0x11e4
int32_t m_iSearchRadius; // 0x11e8
int32_t m_iDamageRadius; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_StormSpirit_ElectricVortex : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_StormSpirit_ElectricVortex_SelfSlow : public CDOTA_Buff
{
public:
int32_t electric_vortex_self_slow; // 0x11d8
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_StormSpirit_ElectricVortex_Pull : public CDOTA_Buff
{
public:
Vector m_vDestination; // 0x11d8
int32_t electric_vortex_pull_distance; // 0x11e4
float electric_vortex_pull_tether_range; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_StormSpirit_ElectricVortex_NoStack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_StormSpirit_Overload : public CDOTABaseAbility
{
public:
int32_t m_iAttackIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< sGlaiveInfoStorm > m_GlaiveInfo; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_StormSpirit_Overload_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_StormSpirit_Overload : public CDOTA_Buff
{
public:
int32_t overload_aoe; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_StormSpirit_OverloadSlow : public CDOTA_Buff
{
public:
int32_t overload_move_slow; // 0x11d8
int32_t overload_attack_slow; // 0x11dc
};
// Alignment: 12
// Size: 0x5a8
class CDOTA_Ability_StormSpirit_BallLightning : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
bool m_bHasAutoRemnantTalent; // 0x568
private:
[[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569
public:
float m_fAutoRemnantInterval; // 0x56c
int32_t ball_lightning_initial_mana_base; // 0x570
float ball_lightning_initial_mana_percentage; // 0x574
int32_t ball_lightning_travel_cost_base; // 0x578
float ball_lightning_travel_cost_percent; // 0x57c
int32_t m_iProjectileID; // 0x580
Vector m_vStartLocation; // 0x584
Vector m_vProjectileLocation; // 0x590
float m_fDistanceAccumulator; // 0x59c
float m_fTalentDistanceAccumulator; // 0x5a0
int32_t scepter_remnant_interval; // 0x5a4
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_StormSpirit_BallLightning : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Holdout_StaticRemnantThinker : public CDOTA_Buff
{
public:
int32_t static_remnant_radius; // 0x11d8
int32_t static_remnant_damage_radius; // 0x11dc
int32_t static_remnant_damage; // 0x11e0
float static_remnant_delay; // 0x11e4
float overload_duration; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_StormSpirit_StaticRemnant_Talent : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DrowRanger_Silence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x588
class CDOTA_Ability_DrowRanger_WaveOfSilence : public CDOTABaseAbility
{
public:
Vector m_vStartPosition; // 0x558
Vector m_vEndPosition; // 0x564
int32_t wave_width; // 0x570
float wave_speed; // 0x574
float silence_duration; // 0x578
float knockback_distance_max; // 0x57c
int32_t m_nHeroesHit; // 0x580
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_WaveOfSilence_Buff : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DrowRanger_WaveOfSilence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_DrowRanger_WaveOfSilence_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DrowRanger_Trueshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DrowRanger_Trueshot : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DrowRanger_Trueshot_Global : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_TrueshotAura : public CDOTA_Buff
{
public:
float trueshot_ranged_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DrowRanger_Marksmanship : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1230
class CDOTA_Modifier_DrowRanger_Marksmanship : public CDOTA_Buff
{
public:
int32_t chance; // 0x11d8
ParticleIndex_t m_nFxIndex; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
CUtlVector< int16 > m_GlacialInFlightAttackRecords; // 0x11f8
int32_t bonus_factor; // 0x1210
int32_t disable_range; // 0x1214
int32_t agility_range; // 0x1218
int32_t bonus_damage; // 0x121c
int32_t split_count; // 0x1220
int32_t split_range; // 0x1224
bool m_bGlacialAttack; // 0x1228
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_Marksmanship_Aura_Bonus : public CDOTA_Buff
{
public:
int32_t agility_multiplier; // 0x11d8
float agility_multiplier_ally; // 0x11dc
};
// Alignment: 3
// Size: 0x1250
class CDOTA_Modifier_DrowRanger_Marksmanship_Reduction : public CDOTA_Buff
{
public:
int32_t split_damage_reduction; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVectorFixedGrowable< int32 > m_vecRecords; // 0x11e0
CUtlVectorFixedGrowable< GameTime_t > m_vecRecordTimes; // 0x1218
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_DrowRanger_FrostArrows : public CDOTABaseAbility
{
public:
int32_t shard_burst_damage_per_stack; // 0x558
float shard_burst_slow_duration; // 0x55c
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_DrowRanger_FrostArrows : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
int32_t shard_bonus_damage_per_stack; // 0x11f0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_DrowRanger_FrostArrows_Slow : public CDOTA_Buff
{
public:
int32_t frost_arrows_movement_speed; // 0x11d8
int32_t shard_max_stacks; // 0x11dc
float shard_stack_duration; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_FrostArrows_Shard_Slow : public CDOTA_Buff
{
public:
int32_t shard_burst_move_slow_pct; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_DrowRanger_FrostArrows_Hypothermia : public CDOTA_Buff
{
public:
int32_t shard_regen_reduction_pct_per_stack; // 0x11d8
int32_t shard_burst_radius; // 0x11dc
ParticleIndex_t m_nFXStackIndex; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DrowRanger_FrostArrows_Hypothermia_Active : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Drow_Ranger_Glacier_Hilltop : public CDOTA_Buff
{
public:
int32_t multishot_arrow_bonus; // 0x11d8
int32_t end_height; // 0x11dc
int32_t attack_range_bonus; // 0x11e0
};
// Alignment: 12
// Size: 0x620
class CDOTA_Ability_DrowRanger_Multishot : public CDOTABaseAbility
{
public:
Vector m_vStartPos; // 0x558
int32_t m_iArrowProjectile; // 0x564
int32_t m_nFXIndex; // 0x568
float arrow_speed; // 0x56c
int32_t arrow_spread; // 0x570
private:
[[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574
public:
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets0; // 0x578
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets1; // 0x590
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets2; // 0x5a8
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets3; // 0x5c0
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets4; // 0x5d8
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets5; // 0x5f0
CUtlVector< CHandle< CBaseEntity > > m_vHitTargets6; // 0x608
};
// Alignment: 13
// Size: 0x1218
class CDOTA_Modifier_Drow_Ranger_Multishot : public CDOTA_Buff
{
public:
int32_t m_iArrowCount; // 0x11d8
Vector m_vOriginalTarget; // 0x11dc
int32_t arrow_width; // 0x11e8
float arrow_speed; // 0x11ec
float arrow_range_multiplier; // 0x11f0
int32_t wave_count; // 0x11f4
int32_t arrow_count_per_wave; // 0x11f8
int32_t arrow_angle; // 0x11fc
int32_t m_iLoopCount; // 0x1200
float m_flInterval; // 0x1204
float m_flCycleDelay; // 0x1208
float m_flTimeWaste; // 0x120c
GameTime_t m_flExpectedTime; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Drow_Ranger_Multishot_Damage : public CDOTA_Buff
{
public:
int32_t arrow_damage_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Drow_Ranger_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_ArcanaKill_Delay : public CDOTA_Buff
{
public:
PlayerID_t m_nPlayerID_Drow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DrowRanger_Arcana : public CDOTA_Buff
{
public:
bool m_bFlawlessVictoryProgressGranted; // 0x11d8
};
// Alignment: 10
// Size: 0x5c0
class CDOTA_Ability_Drow_Ranger_Glacier : public CDOTABaseAbility
{
public:
int32_t shard_width; // 0x558
int32_t shard_count; // 0x55c
float shard_duration; // 0x560
float shard_angle_step; // 0x564
int32_t shard_distance; // 0x568
Vector m_vSpawnOrigin; // 0x56c
Vector m_vDirection; // 0x578
private:
[[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584
public:
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: 2
// Size: 0x11e0
class CDOTA_Modifier_Drow_Ranger_Glacier_Hilltop_Aura : public CDOTA_Buff
{
public:
int32_t shard_width; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Drow_Ranger_Glacier_Hilltop_Removal : public CDOTA_Buff
{
public:
float z_speed_override; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Drow_Ranger_Glacier_Shard : public CDOTA_Buff
{
public:
uint32_t m_unOccluderID; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Shard : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Earthshaker_Arcana : public CDOTA_Buff
{
public:
int32_t m_nComboCount; // 0x11d8
float m_flComboWindow; // 0x11dc
float m_flComboDisplayInterval; // 0x11e0
float m_flDamageDone; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Earthshaker_Fissure : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Earthshaker_Fissure_Shard : public CDOTA_Buff
{
public:
int32_t shard_aftershock_stun_duration_pct; // 0x11d8
float shard_free_pathing_linger_duration; // 0x11dc
Vector m_vStartPos; // 0x11e0
Vector m_vEndPos; // 0x11ec
GameTime_t m_flEndTime; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Fissure_Shard_Pathing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Fissure_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Fissure_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Fissure_Rooted : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Earthshaker_EnchantTotem : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1230
class CDOTA_Modifier_Earthshaker_EnchantTotem_Leap : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x4]; // 0x11d8
public:
Vector m_vLoc; // 0x11dc
float m_flPredictedTotalTime; // 0x11e8
Vector m_vStartPosition; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bHorizontalMotionInterrupted; // 0x1200
bool m_bDamageApplied; // 0x1201
bool m_bTargetTeleported; // 0x1202
private:
[[maybe_unused]] uint8_t __pad1203[0x1]; // 0x1203
public:
Vector m_vHorizontalVelocity; // 0x1204
Vector m_vLastKnownTargetPosition; // 0x1210
float m_flInitialVelocityZ; // 0x121c
int32_t scepter_height; // 0x1220
int32_t scepter_height_arcbuffer; // 0x1224
int32_t scepter_acceleration_z; // 0x1228
int32_t scepter_acceleration_horizontal; // 0x122c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_EnchantTotem_Animation : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Earthshaker_EnchantTotem : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t totem_damage_percentage; // 0x11dc
int32_t scepter_cleave_pct; // 0x11e0
float scepter_cleave_starting_width; // 0x11e4
float scepter_cleave_ending_width; // 0x11e8
float scepter_cleave_distance; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11f0[0x8]; // 0x11f0
public:
bool bActive; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Earthshaker_Aftershock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Earthshaker_Aftershock : public CDOTA_Buff
{
public:
int32_t aftershock_range; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_EchoSlam_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Earthshaker_EchoSlam : public CDOTABaseAbility
{
public:
int32_t echo_slam_damage_range; // 0x558
int32_t echo_slam_echo_search_range; // 0x55c
int32_t echo_slam_echo_range; // 0x560
int32_t echo_slam_echo_damage; // 0x564
int32_t echo_slam_initial_damage; // 0x568
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Echoslam_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earthshaker_Echoslam_Heating_Up : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Earthshaker_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
bool m_bFrozen; // 0x11d8
bool m_bFlail; // 0x11d9
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_VengefulSpirit_Magic_Missile : public CDOTABaseAbility
{
public:
bool m_bShouldBounce; // 0x558
};
// Alignment: 7
// Size: 0x590
class CDOTA_Ability_VengefulSpirit_WaveOfTerror : public CDOTABaseAbility
{
public:
int32_t wave_width; // 0x558
float wave_speed; // 0x55c
int32_t m_iProjectile; // 0x560
float vision_aoe; // 0x564
float vision_duration; // 0x568
int32_t m_nNumHeroesHit; // 0x56c
CountdownTimer m_ViewerTimer; // 0x570
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_VengefulSpirit_WaveOfTerror_Fear : public CDOTA_Modifier_Fear
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_WaveOfTerror : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
int32_t damage_reduction_pct; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_WaveOfTerror_Buff : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Command_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Command_Aura_Illusion : public CDOTA_Modifier_Invulnerable
{
public:
CHandle< CBaseEntity > hTarget; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Command_Aura_Effect : public CDOTA_Buff
{
public:
int32_t bonus_base_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Command_Negative_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Command_Negative_Aura_Effect : public CDOTA_Buff
{
public:
int32_t bonus_damage_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_VengefulSpirit_Nether_Swap_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_VengefulSpirit_Nether_Swap : public CDOTABaseAbility
{
public:
int32_t m_nFXIndex; // 0x558
int32_t damage; // 0x55c
float damage_reduction; // 0x560
float damage_reduction_duration; // 0x564
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Nether_Swap_DamageReduction : public CDOTA_Buff
{
public:
float damage_reduction; // 0x11d8
ParticleIndex_t nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_VengefulSpirit_Nether_Swap_PathingFix : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_VengefulSpirit_Hybrid_Special : public CDOTA_Buff
{
public:
bool m_bLeftoverHybrid; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t scepter_illusion_ms_bonus_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_VengefulSpirit_XP_Earn : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CrystalMaiden_Let_It_Go : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathStart; // 0x11d8
Vector m_vPathEnd; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Bonus : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CrystalMaiden_Let_It_Go_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_CrystalMaiden_CrystalNova : public CDOTABaseAbility
{
public:
int32_t nova_damage; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_CrystalMaiden_CrystalNova : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CrystalMaiden_Frostbite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_CrystalMaiden_Frostbite : public CDOTA_Buff
{
public:
int32_t max_ticks; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t creep_damage_per_second; // 0x11e0
float tick_interval; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CrystalMaiden_BrillianceAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CrystalMaiden_BrillianceAura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_CrystalMaiden_BrillianceAuraEffect : public CDOTA_Buff
{
public:
float base_mana_regen; // 0x11d8
float self_factor; // 0x11dc
float proximity_bonus_factor; // 0x11e0
int32_t proximity_bonus_radius; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CrystalMaiden_FreezingField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CrystalMaiden_FreezingFieldStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 22
// Size: 0x1260
class CDOTA_Modifier_CrystalMaiden_FreezingField : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage; // 0x11dc
int32_t bonus_armor; // 0x11e0
float explosion_interval; // 0x11e4
float shard_bonus_explosion; // 0x11e8
int32_t explosion_radius; // 0x11ec
float slow_duration; // 0x11f0
int32_t explosion_min_dist; // 0x11f4
int32_t explosion_max_dist; // 0x11f8
float frostbite_delay; // 0x11fc
GameTime_t m_fLastTick; // 0x1200
float m_fTimeAccumulator; // 0x1204
int32_t m_iExplosionCount; // 0x1208
int32_t m_iExplosionTotalCount; // 0x120c
int32_t m_iExplosionQuadrant; // 0x1210
int32_t m_iExplosionDistance; // 0x1214
int32_t shard_self_movement_speed_slow_pct; // 0x1218
ParticleIndex_t m_nFXIndex; // 0x121c
private:
[[maybe_unused]] uint8_t __pad1220[0x8]; // 0x1220
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1228
CUtlVector< CHandle< CBaseEntity > > m_hHitHeroes; // 0x1240
bool m_bHitInvisibleHero; // 0x1258
private:
[[maybe_unused]] uint8_t __pad1259[0x3]; // 0x1259
public:
int32_t can_move; // 0x125c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_CrystalMaiden_FreezingField_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attack_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CrystalMaiden_FreezingField_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_CrystalMaiden_IceRink : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_CrystalMaiden_IceRink_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float rink_formation_time; // 0x11dc
bool m_bActive; // 0x11e0
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_CrystalMaiden_IceRink_Movement : public CDOTA_Buff
{
public:
bool m_bHitFirstUpdate; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
float flMovementSpeed; // 0x11dc
float m_flTurnBoostProgress; // 0x11e0
float m_flFacingTarget; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
GameTime_t m_flHitEndTime; // 0x11ec
float hit_recover_time; // 0x11f0
Vector m_vDirection; // 0x11f4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_CDOTA_Modifier_CrystalMaiden_IceRink_Movement_Ricochet : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Axe_BattleHunger : public CDOTABaseAbility
{
public:
int32_t damage_per_second; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Axe_BattleHunger : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
int32_t slow; // 0x11dc
int32_t scepter_armor_change; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Axe_BatleHunger_Self : public CDOTA_Buff
{
public:
int32_t scepter_armor_change; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Axe_BatleHunger_Self_Movespeed : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Axe_BerserkersCall : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Axe_BerserkersCall : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
bool m_bDidSetAttackTarget; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Axe_BerserkersCallArmor : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Axe_CounterHelix : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Axe_CounterHelix : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t trigger_attacks; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Axe_CounterHelix_DamageReduction : public CDOTA_Buff
{
public:
int32_t shard_damage_reduction; // 0x11d8
};
// Alignment: 3
// Size: 0x580
class CDOTA_Ability_Axe_CullingBlade : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
bool m_bInterrupted; // 0x568
private:
[[maybe_unused]] uint8_t __pad0569[0x3]; // 0x569
public:
Vector m_vProjectileLocation; // 0x56c
CHandle< CBaseEntity > m_hTarget; // 0x578
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Axe_Culling_Blade_NoMinHealth : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Axe_Culling_Blade_Charge : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Axe_CullingBlade_Boost : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
int32_t atk_speed_bonus; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Axe_CullingBlade_Permanent : public CDOTA_Buff
{
public:
float armor_per_stack; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Axe_CullingBlade_JungleWeaponGesture : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x580
class CDOTA_Ability_Holdout_CullingBlade : public CDOTA_Ability_Axe_CullingBlade
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_HoldoutCullingBlade : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t leap_distance; // 0x1204
int32_t leap_radius; // 0x1208
float leap_speed; // 0x120c
float leap_acceleration; // 0x1210
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Axe_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bloodseeker_Bloodrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Bloodseeker_Bloodrage : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t spell_amp; // 0x11dc
float shard_max_health_dmg_pct; // 0x11e0
float damage_pct; // 0x11e4
float flTickRate; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bloodseeker_Bloodbath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Bloodseeker_Bloodbath_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Bloodseeker_Thirst : public CDOTA_Buff
{
public:
int32_t hero_kill_heal; // 0x11d8
int32_t creep_kill_heal; // 0x11dc
int32_t half_bonus_aoe; // 0x11e0
int32_t visibility_threshold_pct; // 0x11e4
int32_t invis_threshold_pct; // 0x11e8
int32_t min_bonus_pct; // 0x11ec
int32_t max_bonus_pct; // 0x11f0
int32_t bonus_movement_speed; // 0x11f4
float linger_duration; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x11fc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bloodseeker_Thirst : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Bloodseeker_Thirst_Vision : public CDOTA_Buff
{
public:
int32_t invis_threshold_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Bloodseeker_Thirst_Speed : public CDOTA_Buff
{
public:
CUtlSymbolLarge m_iszModifierString; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bloodseeker_Rupture_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bloodseeker_Rupture : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Bloodseeker_Rupture : public CDOTA_Buff
{
public:
int32_t movement_damage_pct; // 0x11d8
float hp_pct; // 0x11dc
Vector vLastPos; // 0x11e0
bool bResetPosition; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_fAccumulatedDamage; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bloodseeker_BloodMist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Bloodseeker_BloodMist_Barrier : public CDOTA_Buff
{
public:
GameTime_t flLastGameTime; // 0x11d8
float m_flCurrentShield; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bloodseeker_BloodMist_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Bloodseeker_BloodMist : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Bloodseeker_BloodMist_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_PhantomLancer_SpiritLance : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hLastHitEntity; // 0x558
int32_t m_nBounceCount; // 0x55c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomLancer_SpiritLance : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomLancer_Doppelwalk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_PhantomLancer_Dopplewalk_Phase : public CDOTA_Buff
{
public:
Vector vTargetPosition; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomLancer_Doppelwalk_Illusion : public CDOTA_Buff
{
public:
float flDamageTaken; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_PhantomLancer_Juxtapose : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hInvisIllusion; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomLancer_Juxtapose_Cache : public CDOTA_Buff
{
public:
PlayerID_t m_nControllingPlayer; // 0x11d8
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_PhantomLancer_Juxtapose_Invisibility : public CDOTA_Modifier_Invisible
{
public:
float invis_movespeed; // 0x11e8
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_PhantomLancer_Juxtapose_Thinker : public CDOTA_Buff
{
public:
int32_t max_illusions; // 0x11d8
int32_t scepter_bonus_illusions; // 0x11dc
float illusion_duration; // 0x11e0
int32_t illusion_damage_out_pct; // 0x11e4
int32_t illusion_damage_in_pct; // 0x11e8
float scepter_bonus_duration; // 0x11ec
int32_t m_iIllusionsSoFar; // 0x11f0
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_PhantomLancer_Juxtapose : public CDOTA_Buff
{
public:
int32_t proc_chance_pct; // 0x11d8
int32_t illusion_proc_chance_pct; // 0x11dc
int32_t max_illusions; // 0x11e0
float illusion_duration; // 0x11e4
int32_t illusion_damage_out_pct; // 0x11e8
int32_t illusion_damage_in_pct; // 0x11ec
int32_t shard_bonus_illusions; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomLancer_PhantomEdge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_PhantomLancer_PhantomEdge : public CDOTA_Buff
{
public:
int32_t min_distance; // 0x11d8
int32_t max_distance; // 0x11dc
CHandle< CBaseEntity > m_hTarget; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_PhantomLancer_PhantomEdge_Boost : public CDOTA_Buff
{
public:
int32_t bonus_speed; // 0x11d8
float agility_duration; // 0x11dc
bool m_bGiveAgility; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
CHandle< CBaseEntity > m_hTarget; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomLancer_PhantomEdge_Agility : public CDOTA_Buff
{
public:
int32_t bonus_agility; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomLancer_JuxtaposeIllusion : public CDOTA_Buff
{
public:
bool m_bstrongIllusion; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Lancer_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Razor_PlasmaField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1240
class CDOTA_Modifier_Razor_PlasmaField_Thinker : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
bool m_bContracting; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CountdownTimer m_ViewerTimer; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1208
int32_t speed; // 0x1220
int32_t radius; // 0x1224
float damage_min; // 0x1228
float damage_max; // 0x122c
int32_t slow_min; // 0x1230
int32_t slow_max; // 0x1234
float slow_duration; // 0x1238
bool m_bHasCreatedFx; // 0x123c
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Razor_StaticLink : public CDOTABaseAbility
{
public:
int32_t m_iLinkIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CountdownTimer m_ViewerTimer; // 0x560
int32_t vision_radius; // 0x578
float vision_duration; // 0x57c
};
// Alignment: 10
// Size: 0x1210
class CDOTA_Modifier_Razor_StaticLink : public CDOTA_Buff
{
public:
float flSmoothness; // 0x11d8
float drain_duration; // 0x11dc
int32_t drain_rate; // 0x11e0
int32_t drain_range; // 0x11e4
int32_t drain_range_buffer; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11ec
int32_t m_iTotalDrainAmount; // 0x11f0
ParticleIndex_t m_iLinkIndex; // 0x11f4
CDOTA_Buff* m_pBuffPositive; // 0x11f8
CDOTA_Buff* m_pNegative; // 0x1200
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Razor_StaticLink_Buff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t drain_rate; // 0x11dc
float drain_length; // 0x11e0
int32_t attack_speed_factor; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Razor_StaticLink_Debuff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t attack_speed_factor; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Razor_Link_Vision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Razor_UnstableCurrent : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Razor_UnstableCurrent_Aura : public CDOTA_Buff
{
public:
int32_t self_movement_speed_pct; // 0x11d8
int32_t shard_pct_chance; // 0x11dc
int32_t shard_damage; // 0x11e0
int32_t shard_move_slow_pct; // 0x11e4
int32_t shard_search_radius; // 0x11e8
int32_t shard_target_count; // 0x11ec
float shard_slow_duration; // 0x11f0
float shard_internal_cd; // 0x11f4
GameTime_t m_flNextShardProcTime; // 0x11f8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Razor_UnstableCurrent_Delayed_Damage : public CDOTA_Buff
{
public:
int32_t shard_damage; // 0x11d8
float shard_slow_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Razor_UnstableCurrent_Slow : public CDOTA_Buff
{
public:
int32_t shard_move_slow_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Razor_PlasmaField_Slow : public CDOTA_Buff
{
public:
int32_t slow_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Razor_EyeOfTheStorm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Razor_EyeOfTheStorm_Passive : public CDOTA_Buff
{
public:
int32_t passive_area_damage; // 0x11d8
float passive_area_interval; // 0x11dc
int32_t radius; // 0x11e0
bool m_bHitNext; // 0x11e4
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Razor_EyeOfTheStorm : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t armor_reduction; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Razor_EyeOfTheStorm_Armor : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Razor_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Razor_Arcana : public CDOTA_Buff
{
public:
bool m_bIsMeleeAttack; // 0x11d8
bool m_bTauntQueued; // 0x11d9
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Razor_Arcana_EmpoweredState : public CDOTA_Buff
{
public:
ParticleIndex_t m_nEmpoweredBodyFX; // 0x11d8
ParticleIndex_t m_nEmpoweredWeaponFX; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Razor_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
ParticleIndex_t m_nCasterFXIndex; // 0x11d8
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Lina_DragonSlave : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
int32_t dragon_slave_distance; // 0x560
float m_flDamage; // 0x564
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lina_LightStrikeArray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Lina_LightStrikeArray_Thinker : public CDOTA_Buff
{
public:
int32_t m_iDamage; // 0x11d8
float m_flStunDuration; // 0x11dc
int32_t light_strike_array_aoe; // 0x11e0
int32_t light_strike_array_damage; // 0x11e4
float light_strike_array_stun_duration; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lina_FierySoul : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Lina_FierySoul : public CDOTA_Buff
{
public:
int32_t fiery_soul_attack_speed_bonus; // 0x11d8
float fiery_soul_move_speed_bonus; // 0x11dc
int32_t fiery_soul_max_stacks; // 0x11e0
float fiery_soul_stack_duration; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
GameTime_t m_flFierySoulDieTime; // 0x11ec
GameTime_t m_flLastFierySoalFullStackTime; // 0x11f0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Lina_LagunaBlade : public CDOTABaseAbility
{
public:
int32_t m_iDamage; // 0x558
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Lina_LagunaBlade_Line : public CDOTA_Buff
{
public:
Vector vStart; // 0x11d8
Vector vEnd; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lina_LagunaBlade : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lina_LagunaBlade_Superheated : public CDOTA_Buff
{
public:
int32_t increased_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lina_Flame_Cloak : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Lina_Fiery_Cloak : public CDOTA_Buff
{
public:
int32_t magic_resistance; // 0x11d8
int32_t spell_amp; // 0x11dc
float visualzdelta; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lina_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_Hybrid : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morphling_Waveform_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Morphling_Waveform : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nProjectileID; // 0x568
Vector m_vProjectileLocation; // 0x56c
CHandle< CBaseEntity > m_hHitHero; // 0x578
bool m_bGrantedGem; // 0x57c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morphling_Waveform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_AdaptiveStrike_Agi : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_AdaptiveStrike_Str : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Morphling_Adaptive_Strike_Armor : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Morphling_Adaptive_Strike : public CDOTA_Modifier_Stunned
{
public:
Vector m_vStartPos; // 0x11d8
Vector m_vDirection; // 0x11e4
float m_flTotalDistance; // 0x11f0
float m_flCurTime; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_Morph : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Morphling_Morph : public CDOTA_Buff
{
public:
float tick_rate; // 0x11d8
int32_t bonus_attributes; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_Morph_Agi : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Morphling_Morph_Agi : public CDOTA_Buff
{
public:
int32_t mana_cost; // 0x11d8
int32_t points_per_tick; // 0x11dc
float morph_cooldown; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Morphling_Morph_Str : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Morphling_Morph_Str : public CDOTA_Buff
{
public:
int32_t mana_cost; // 0x11d8
int32_t points_per_tick; // 0x11dc
float morph_cooldown; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Morphling_Replicate : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Morphling_MorphReplicate : public CDOTABaseAbility
{
public:
float m_flOldHealthPct; // 0x558
float m_flOldManaPct; // 0x55c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Strength_Buff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_status_resist; // 0x11dc
int32_t nStrengthSteal; // 0x11e0
int32_t nAgiSteal; // 0x11e4
int32_t nIntSteal; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Strength_Debuff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_status_resist; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Agility_Buff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_attack_speed; // 0x11dc
int32_t nStrengthSteal; // 0x11e0
int32_t nAgilitySteal; // 0x11e4
int32_t nIntSteal; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Agility_Debuff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_attack_speed; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Intelligence_Buff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_spell_amplify; // 0x11dc
int32_t nStrengthSteal; // 0x11e0
int32_t nIntSteal; // 0x11e4
int32_t nAgilitySteal; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_Intelligence_Debuff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t scepter_spell_amplify; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Morphling_ScepterStatsDrain_All_Buff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
int32_t nStrengthSteal; // 0x11dc
int32_t nAgiSteal; // 0x11e0
int32_t nIntSteal; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Morphling_ScepterStatsDrain_All_Debuff : public CDOTA_Buff
{
public:
int32_t scepter_stat_steal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morphling_Replicate_Manager : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1268
class CDOTA_Modifier_Morphling_Replicate : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTinyTreeWearable; // 0x11d8
float m_flBaseAttackRange; // 0x11dc
float m_flBaseMovementSpeed; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlSymbolLarge m_iszModelName; // 0x11e8
CUtlSymbolLarge m_iszProjectileName; // 0x11f0
CUtlSymbolLarge m_iszOriginalModel; // 0x11f8
int32_t m_nCopiedHeroID; // 0x1200
float m_fOriginalModelScale; // 0x1204
CUtlVector< CEconItemView* > m_vecOriginalItems; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1220[0x30]; // 0x1220
public:
float m_flOriginalStr; // 0x1250
float m_flOriginalAgi; // 0x1254
float m_flOriginalInt; // 0x1258
int32_t m_iOriginalAttackCapability; // 0x125c
float m_flOriginalHealthPercentage; // 0x1260
float m_flOriginalManaPercentage; // 0x1264
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morphling_Replicate_MorphedIllusionsEffect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morphling_Scepter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zuus_StaticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Zuus_Static_Field : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Zuus_Static_Field_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
int32_t aspd_slow; // 0x11dc
int32_t cast_slow; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zuus_ArcLightning : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Zuus_ArcLightning : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t jump_count; // 0x11dc
int32_t arc_damage; // 0x11e0
float jump_delay; // 0x11e4
int32_t damage_health_pct; // 0x11e8
int32_t total_damage_pct; // 0x11ec
int32_t m_iCurJumpCount; // 0x11f0
bool trigger_spell_absorb; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
Vector m_vCurTargetLoc; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1208
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Zuus_ArcLightningSlow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zuus_Cloud : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Zuus_LightningBolt : public CDOTABaseAbility
{
public:
bool m_bZeusHasArcana; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Zuus_LightningBoltThinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Zuus_ThundergodsWrath : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
bool m_bZeusHasArcana; // 0x55c
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Zuus_ThundergodsWrathThinker : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float sight_duration; // 0x11dc
int32_t second_strike_damage_percent; // 0x11e0
float second_strike_delay; // 0x11e4
bool m_bZeusHasArcana; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x7]; // 0x11e9
public:
CUtlVector< CHandle< CBaseEntity > > m_hTargetEntities; // 0x11f0
bool m_bSecondaryStrike; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
int32_t m_nKills; // 0x120c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Zuus_ThundergodsWrathVisionThinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Zuus_Cloud : public CDOTA_Buff
{
public:
CountdownTimer m_CloudBoltTimer; // 0x11d8
float cloud_bolt_interval; // 0x11f0
int32_t cloud_radius; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zuus_Heavenly_Jump : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1228
class CDOTA_Modifier_Zuus_Heavenly_Jump : public CDOTA_Buff
{
public:
float hop_duration; // 0x11d8
int32_t hop_height; // 0x11dc
int32_t hop_distance; // 0x11e0
int32_t search_radius; // 0x11e4
float m_flStartZ; // 0x11e8
float m_flCurTime; // 0x11ec
float m_flJumpDuration; // 0x11f0
float m_flJumpHeight; // 0x11f4
Vector m_vTargetHorizontalDirection; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > hUnitsToHit; // 0x1208
bool m_bLaunched; // 0x1220
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Zuus_Heavenly_Jump_Boost : public CDOTA_Buff
{
public:
int32_t postjump_movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Zeus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Zeus_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Zeus_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Zeus_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Zeus_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x598
class CDOTA_Ability_Zuus_Thunder_Trail : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
private:
[[maybe_unused]] uint8_t __pad0570[0x8]; // 0x570
public:
int32_t damage; // 0x578
int32_t debuff_spell_amp_min; // 0x57c
int32_t debuff_spell_amp_max; // 0x580
Vector m_vStartPos; // 0x584
int32_t m_nMaxRange; // 0x590
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Zuus_ThunderTrail_Debuff : public CDOTA_Buff
{
public:
int32_t debuff_spell_amp; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Zuus_Lightning_Hands : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Zuus_Lightning_Hands : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11f0
int32_t arc_lightning_damage_pct; // 0x11f4
int32_t arc_lightning_damage_illusion_pct; // 0x11f8
int32_t attack_range_bonus; // 0x11fc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Kunkka_Torrent : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Torrent_Thinker : public CDOTA_Buff
{
public:
bool m_bShowEnemies; // 0x11d8
bool m_bTorrentStorm; // 0x11d9
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Kunkka_Torrent : public CDOTA_Buff
{
public:
int32_t torrent_damage; // 0x11d8
float damage_tick_interval; // 0x11dc
float flDamagePerTick; // 0x11e0
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
bool m_bTorrentStorm; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Torrent_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_bonus; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_Tidebringer_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Kunkka_Torrent_Storm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Kunkka_Torrent_Storm : public CDOTA_Buff
{
public:
int32_t torrent_min_distance; // 0x11d8
int32_t torrent_max_distance; // 0x11dc
int32_t m_iExplosionQuadrant; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Kunkka_Tidebringer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Kunkka_Tidebringer : public CDOTA_Buff
{
public:
bool m_bTidebringerAttack; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t cleave_starting_width; // 0x11dc
int32_t cleave_ending_width; // 0x11e0
int32_t cleave_distance; // 0x11e4
int32_t damage_bonus; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
int32_t cleave_damage; // 0x11f0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Kunkka_XMarksTheSpot : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Kunkka_XMarksTheSpot : public CDOTA_Buff
{
public:
int32_t ally_ms; // 0x11d8
int32_t ally_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Kunkka_XMarksTheSpotMarker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Kunkka_XMarksTheSpot_Thinker : public CDOTA_Buff
{
public:
Vector m_vStartLoc; // 0x11d8
bool m_bIsReflection; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CHandle< CBaseEntity > m_hEntity; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Kunkka_Return : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_Kunkka_GhostShip : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
float stun_duration; // 0x55c
int32_t ghostship_width; // 0x560
int32_t ghostship_width_scepter; // 0x564
Vector m_vFinalDestination; // 0x568
Vector m_vStartingPoint; // 0x574
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Kunkka_Ghost_Ship_Fleet : public CDOTA_Buff
{
public:
Vector vCasterOrigin; // 0x11d8
Vector vEnd; // 0x11e4
int32_t hitcount; // 0x11f0
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Kunkka_GhostShip_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Kunkka_GhostShip_Loaded : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Kunkka_GhostShip_DamageAbsorb : public CDOTA_Buff
{
public:
int32_t m_iAccumulatedDamage; // 0x11d8
int32_t movespeed_bonus; // 0x11dc
float ghostship_absorb; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Kunkka_GhostShip_DamageDelay : public CDOTA_Buff
{
public:
int32_t m_iAccumulatedDamage; // 0x11d8
float m_flDuration; // 0x11dc
};
// Alignment: 2
// Size: 0x588
class CDOTA_Ability_Kunkka_Tidal_Wave : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
Vector m_vStart; // 0x570
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tiny_CraggyExterior : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Tiny_CraggyExterior : public CDOTA_Buff
{
public:
int32_t stun_chance; // 0x11d8
float stun_duration; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Tiny_Avalanche : public CDOTABaseAbility
{
public:
Vector m_vTargetLoc; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tiny_Avalanche_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1218
class CDOTA_Modifier_Tiny_Avalanche : public CDOTA_Buff
{
public:
CUtlVector< CDOTA_BaseNPC* > m_pHeroesHit; // 0x11d8
int32_t radius; // 0x11f0
float total_duration; // 0x11f4
float stun_duration; // 0x11f8
int32_t tick_count; // 0x11fc
float toss_multiplier; // 0x1200
int32_t m_damage; // 0x1204
int32_t m_nTicks; // 0x1208
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tiny_Toss_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tiny_Toss : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 14
// Size: 0x1220
class CDOTA_Modifier_Tiny_Toss : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
float m_flPredictedTotalTime; // 0x11dc
Vector m_vStartPosition; // 0x11e0
float m_flCurrentTimeHoriz; // 0x11ec
float m_flCurrentTimeVert; // 0x11f0
bool m_bHorizontalMotionInterrupted; // 0x11f4
bool m_bDamageApplied; // 0x11f5
bool m_bTargetTeleported; // 0x11f6
private:
[[maybe_unused]] uint8_t __pad11f7[0x1]; // 0x11f7
public:
Vector m_vHorizontalVelocity; // 0x11f8
Vector m_vLastKnownTargetPosition; // 0x1204
float m_flInitialVelocityZ; // 0x1210
bool m_bDone; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
int32_t radius; // 0x1218
int32_t toss_damage; // 0x121c
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Tiny_Tree_Grab : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hStolenTree; // 0x558
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_Tiny_Tree_Grab : public CDOTA_Buff
{
public:
int32_t attack_count; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t bonus_damage_buildings; // 0x11e0
float stun_duration; // 0x11e4
int32_t attack_range; // 0x11e8
int32_t m_nOriginalAttackCapability; // 0x11ec
float bat_increase; // 0x11f0
int32_t speed_reduction; // 0x11f4
int32_t m_nBonusAttackRange; // 0x11f8
CHandle< CBaseEntity > m_hStolenTree; // 0x11fc
ParticleIndex_t m_nFXIndex; // 0x1200
ParticleIndex_t m_nFXAttackIndex; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tiny_Tree_Channel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Tiny_Tree_Channel : public CDOTA_Buff
{
public:
int32_t tree_grab_radius; // 0x11d8
int32_t splash_radius; // 0x11dc
int32_t speed; // 0x11e0
float interval; // 0x11e4
Vector m_vPos; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tiny_Tree_Channel_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tiny_TossTree : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tiny_TossTree_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tiny_TossTree_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tiny_Grow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Tiny_Grow : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
int32_t attack_speed_reduction; // 0x11dc
int32_t bonus_damage; // 0x11e0
float tree_bonus_damage_pct; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Tiny_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Puck_EtherealJaunt : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x598
class CDOTA_Ability_Puck_IllusoryOrb : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CountdownTimer m_ViewerTimer; // 0x560
int32_t orb_vision; // 0x578
float vision_duration; // 0x57c
int32_t damage; // 0x580
private:
[[maybe_unused]] uint8_t __pad0584[0x4]; // 0x584
public:
CSoundPatch* m_pSoundPatch; // 0x588
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Puck_WaningRift : public CDOTABaseAbility
{
public:
int32_t max_distance; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Puck_PhaseShift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Puck_PhaseShift : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Puck_PhaseShift_AttackBonus : public CDOTA_Buff
{
public:
int32_t shard_bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Puck_DreamCoil : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Puck_DreamCoil_Thinker : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hLinkedEntities; // 0x11d8
int32_t coil_radius; // 0x11f0
int32_t coil_break_radius; // 0x11f4
int32_t coil_initial_damage; // 0x11f8
float coil_stun_duration; // 0x11fc
float coil_duration; // 0x1200
int32_t coil_break_damage; // 0x1204
CUtlVector< ParticleIndex_t > m_FXIndex; // 0x1208
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Puck_Coiled : public CDOTA_Buff
{
public:
Vector m_vCastLocation; // 0x11d8
int32_t coil_rapid_fire_z_offset; // 0x11e4
float coil_rapid_fire_rate; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Puck_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x590
class CDOTA_Ability_Windrunner_Shackleshot : public CDOTABaseAbility
{
public:
int32_t shackle_count; // 0x558
Vector m_vArrowAvgPos; // 0x55c
Vector m_vArrowStartPos; // 0x568
Vector m_vArrowStartPos2; // 0x574
Vector m_vArrowStartPos3; // 0x580
CHandle< CBaseEntity > m_hTarget; // 0x58c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Windrunner_ShackleShot : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 10
// Size: 0x588
class CDOTA_Ability_Windrunner_Powershot : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
GameTime_t m_fStartTime; // 0x560
float m_fPower; // 0x564
int32_t m_iProjectile; // 0x568
float damage_reduction; // 0x56c
int32_t arrow_width; // 0x570
int32_t powershot_damage; // 0x574
float tree_width; // 0x578
bool m_bAwardedKillEater; // 0x57c
private:
[[maybe_unused]] uint8_t __pad057d[0x3]; // 0x57d
public:
int32_t m_nHeroesHit; // 0x580
ParticleIndex_t m_nFXIndex; // 0x584
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Windrunner_Windrun_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Windrunner_Windrun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Windrunner_Windrun_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Windrunner_Windrun_Invis_Thinker : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Windrunner_Windrun_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Windrunner_Windrun : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t scepter_radius; // 0x11dc
int32_t movespeed_bonus_pct; // 0x11e0
bool m_bDispellable; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t physical_damage_pct; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Windrunner_Windrun_Slow : public CDOTA_Buff
{
public:
float enemy_movespeed_bonus_pct; // 0x11d8
float scepter_movespeed_bonus_pct; // 0x11dc
int32_t scepter_blind; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Windrunner_Arcana : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Windrunner_FocusFire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Windrunner_FocusFire_End : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 14
// Size: 0x1218
class CDOTA_Modifier_Windrunner_FocusFire : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t focusfire_damage_reduction; // 0x11dc
bool bActive; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t bonus_attack_speed; // 0x11e4
int32_t focusfire_fire_on_the_move; // 0x11e8
bool m_bPause; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
int32_t m_nNumArrowsLanded; // 0x11f0
int32_t m_nDamageDealt; // 0x11f4
int32_t m_nDamageDealtMax; // 0x11f8
int32_t m_nTargetInitialHP; // 0x11fc
bool m_bHeroKilled; // 0x1200
bool m_bRecentFocusFireAttack; // 0x1201
private:
[[maybe_unused]] uint8_t __pad1202[0xa]; // 0x1202
public:
ParticleIndex_t m_nFXFocusFire; // 0x120c
GameTime_t m_flLastFocusFireAttackTime; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Windrunner_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
bool m_bFrozen; // 0x11d8
};
// Alignment: 4
// Size: 0x578
class CDOTA_Ability_Windrunner_GaleForce : public CDOTABaseAbility
{
public:
Vector m_vEndpoint; // 0x558
Vector m_vFlowPosition; // 0x564
float duration; // 0x570
CHandle< CBaseEntity > m_hThinker; // 0x574
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Windrunner_GaleForce_Aura : public CDOTA_Buff
{
public:
Vector m_vEndpoint; // 0x11d8
Vector m_vFlowPosition; // 0x11e4
int32_t radius; // 0x11f0
};
// Alignment: 6
// Size: 0x1210
class CDOTA_Modifier_Windrunner_GaleForce : public CDOTA_Buff
{
public:
Vector m_vEndpoint; // 0x11d8
Vector m_vFlowPosition; // 0x11e4
Vector m_vPull; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11fc
GameTime_t m_flLastThinkTime; // 0x1200
float wind_strength; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lich_FrostNova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Lich_FrostNova_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t slow_attack_speed; // 0x11dc
int32_t slow_attack_speed_primary; // 0x11e0
bool m_bIsPrimary; // 0x11e4
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Lich_Sinister_Gaze : public CDOTABaseAbility
{
public:
// MNetworkEnable
float m_flLongestGazeDuration; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< CHandle< CBaseEntity > > m_hAffectedEntities; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lich_Sinister_Gaze_Self : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Lich_Sinister_Gaze : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t mana_drain; // 0x11dc
float m_flIntervalRate; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
float creep_damage; // 0x11e8
bool m_bBlasted; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lich_DarkSorcery : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Lich_DarkSorcery_Buff : public CDOTA_Buff
{
public:
int32_t mana_drain; // 0x11d8
int32_t attack_count; // 0x11dc
int32_t attack_speed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lich_FrostAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lich_FrostAura_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lich_FrostAura : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lich_FrostAura_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Lich_ChainFrost_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t slow_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lich_FrostArmor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lich_FrostArmor_Autocast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Lich_FrostArmor : public CDOTA_Buff
{
public:
int32_t armor_bonus; // 0x11d8
int32_t health_regen; // 0x11dc
float slow_duration; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Lich_FrostArmor_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t slow_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lich_FrostShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Lich_FrostShield : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float interval; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t health_regen; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lich_FrostShield_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 6
// Size: 0x578
class CDOTA_Ability_Lich_ChainFrost : public CDOTABaseAbility
{
public:
int32_t jump_range; // 0x558
int32_t jumps; // 0x55c
float slow_duration; // 0x560
int32_t vision_radius; // 0x564
int32_t projectile_speed; // 0x568
int32_t initial_projectile_speed; // 0x56c
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Lich_Chain_Frost_Thinker : public CDOTA_Buff
{
public:
int32_t m_nDamageToHeroes; // 0x11d8
int32_t m_nHeroesKilled; // 0x11dc
int32_t m_nJumps; // 0x11e0
bool m_bFirstJump; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CHandle< CBaseEntity > m_hTarget; // 0x11e8
CHandle< CBaseEntity > m_hAvoidTarget; // 0x11ec
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Lich_Ice_Spire : public CDOTABaseAbility
{
public:
int32_t aura_radius; // 0x558
float duration; // 0x55c
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Lich_Ice_Spire : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
CountdownTimer m_Timer; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lich_Ice_Spire_Debuff : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lich_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Tidehunter_Gush : public CDOTABaseAbility
{
public:
int32_t gush_damage; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tidehunter_Gush : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
float negative_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tidehunter_KrakenShell : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Tidehunter_KrakenShell : public CDOTA_Buff
{
public:
int32_t m_iDamageTaken; // 0x11d8
int32_t damage_reduction; // 0x11dc
int32_t damage_cleanse; // 0x11e0
float damage_reset_interval; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tidehunter_AnchorSmash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tidehunter_SmashAttack : public CDOTA_Buff
{
public:
int32_t attack_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tidehunter_AnchorSmash_Caster : public CDOTA_Buff
{
public:
int32_t attack_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tidehunter_AnchorSmash : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Tidehunter_Ravage : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntsHit; // 0x558
bool m_bAwardedKillEater; // 0x570
private:
[[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571
public:
float duration; // 0x574
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Tidehunter_Ravage : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
bool m_bDamageApplied; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
float damage; // 0x11e4
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Tidehunter_ArmOfTheDeep : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
float duration; // 0x570
int32_t speed; // 0x574
float damage; // 0x578
float range; // 0x57c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ShadowShaman_EtherShock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ShadowShaman_EtherShock : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ShadowShamanVoodoo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ShadowShaman_Voodoo : public CDOTA_Modifier_Hexed
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ShadowShaman_MassSerpentWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_ShadowShaman_Shackles : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hShackleTarget; // 0x558
ParticleIndex_t nShackleFXIndex; // 0x55c
CUtlVector< CHandle< CBaseEntity > > hWardList; // 0x560
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_ShadowShaman_Shackles : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
float total_damage; // 0x11dc
float channel_time; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ShadowShaman_SerpentWard : public CDOTA_Buff
{
public:
int32_t scepter_range; // 0x11d8
};
// Alignment: 4
// Size: 0x578
class CDOTA_Ability_ShadowShaman_Serpentine : public CDOTABaseAbility
{
public:
int32_t length; // 0x558
int32_t count; // 0x55c
Vector m_vStartPosition; // 0x560
Vector m_vEndPosition; // 0x56c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_SmokeScreen : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Riki_SmokeScreenThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Riki_SmokeScreen : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
int32_t dodge_chance; // 0x11dc
int32_t block_targeting; // 0x11e0
int32_t armor_reduction; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Riki_BlinkStrike_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_BlinkStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Riki_BlinkStrike : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Riki_BlinkStrike_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_Permanent_Invisibility : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Riki_Permanent_Invisibility : public CDOTA_Modifier_PersistentInvisibility
{
public:
int32_t movement_speed; // 0x11e8
float fade_delay; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_Backstab : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_Riki_Backstab : public CDOTA_Modifier_PersistentInvisibility
{
public:
float fade_delay; // 0x11e8
int32_t backstab_angle; // 0x11ec
int32_t cleave; // 0x11f0
float damage_multiplier; // 0x11f4
float bonus_xp_kill; // 0x11f8
float bonus_xp_assist; // 0x11fc
bool m_bBackstab; // 0x1200
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_TricksOfTheTrade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Riki_TricksOfTheTrade_Phase : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFxIndex; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
CountdownTimer m_Timer; // 0x11e0
CHandle< CBaseEntity > m_hPreviousTarget; // 0x11f8
int32_t m_nSucceessiveHits; // 0x11fc
bool m_bGrantedGem; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
float attack_rate; // 0x1204
int32_t damage_pct; // 0x1208
int32_t agility_pct; // 0x120c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Riki_Poison_Dart : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Riki_Poison_Dart : public CDOTA_Buff
{
public:
int32_t wake_damage_limit; // 0x11d8
float m_flDamageTaken; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Riki_Poison_Dart_Debuff : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enigma_DemonicConversion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Enigma_Malefice : public CDOTABaseAbility
{
public:
float tick_rate; // 0x558
int32_t stun_instances; // 0x55c
float m_flDuration; // 0x560
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Enigma_Malefice : public CDOTA_Buff
{
public:
float tick_rate; // 0x11d8
float stun_duration; // 0x11dc
int32_t damage; // 0x11e0
float duration; // 0x11e4
int32_t m_nEidolonSpawnNum; // 0x11e8
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Enigma_DemonicConversion : public CDOTA_Modifier_Kill
{
public:
int32_t m_iAttackCount; // 0x11e0
int32_t split_attack_count; // 0x11e4
float life_extension; // 0x11e8
int32_t hp_bonus; // 0x11ec
bool m_bAllowSplit; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
int32_t m_nSpawnNum; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enigma_MidnightPulse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Enigma_MidnightPulseThinker : public CDOTA_Buff
{
public:
float damage_percent; // 0x11d8
int32_t radius; // 0x11dc
ParticleIndex_t n_FXIndex; // 0x11e0
bool m_bHasGrantedKillEater; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Enigma_MidnightPulse_Damage : public CDOTA_Buff
{
public:
float damage_percent; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Enigma_BlackHole : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
CHandle< CBaseEntity > m_hThinker2; // 0x55c
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Enigma_BlackHoleThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
bool m_bFoundFive; // 0x11dc
bool m_bGrantedKillEater; // 0x11dd
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Enigma_BlackHole_Pull : public CDOTA_Buff
{
public:
int32_t pull_speed; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage; // 0x11e0
float tick_rate; // 0x11e4
float pull_rotate_speed; // 0x11e8
float animation_rate; // 0x11ec
float scepter_pct_damage; // 0x11f0
GameTime_t m_flDamageTick; // 0x11f4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Enigma_Black_Hole_Thinker_Scepter : public CDOTA_Buff
{
public:
int32_t scepter_radius; // 0x11d8
ParticleIndex_t n_FXIndex; // 0x11dc
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Enigma_Black_Hole_Pull_Scepter : public CDOTA_Buff
{
public:
int32_t scepter_drag_speed; // 0x11d8
float scepter_pull_rotate_speed; // 0x11dc
float aura_origin_x; // 0x11e0
float aura_origin_y; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
Vector m_vCenter; // 0x11ec
GameTime_t m_flLastThinkTime; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Enigma_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tinker_Defensive_Matrix : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Tinker_Defensive_Matrix : public CDOTA_Buff
{
public:
int32_t damage_absorb; // 0x11d8
int32_t status_resistance; // 0x11dc
int32_t cooldown_reduction; // 0x11e0
bool m_bStartedTimer; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t m_nDamageAbsorbed; // 0x11e8
};
// Alignment: 3
// Size: 0x580
class CDOTA_Ability_Tinker_Laser : public CDOTABaseAbility
{
public:
Vector m_vProjectileLocation; // 0x558
bool bBlocked; // 0x564
private:
[[maybe_unused]] uint8_t __pad0565[0x3]; // 0x565
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x568
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tinker_LaserBlind : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
float max_health_removed; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Tinker_HeatSeekingMissile : public CDOTABaseAbility
{
public:
int32_t m_nTargetsKilled; // 0x558
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Tinker_WarpGrenade : public CDOTABaseAbility
{
public:
float debuff_duration; // 0x558
float knockback_distance; // 0x55c
float damage; // 0x560
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tinker_Warp_Grenade : public CDOTA_Buff
{
public:
int32_t range_reduction; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Tinker_MarchOfTheMachines : public CDOTABaseAbility
{
public:
int32_t splash_radius; // 0x558
int32_t damage; // 0x55c
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Tinker_MarchOfTheMachinesThinker : public CDOTA_Buff
{
public:
int32_t collision_radius; // 0x11d8
int32_t radius; // 0x11dc
int32_t distance; // 0x11e0
int32_t distance_scepter; // 0x11e4
int32_t speed; // 0x11e8
int32_t machines_per_sec; // 0x11ec
Vector m_vDir; // 0x11f0
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Tinker_Rearm : public CDOTABaseAbility
{
public:
Vector m_vProjectileLocation; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tinker_Rearm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tinker_Shrink_Ray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x580
class CDOTA_Ability_Tinker_Keen_Teleport : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTeleportTarget; // 0x558
ParticleIndex_t m_nFXOrigin; // 0x55c
ParticleIndex_t m_nFXDestination; // 0x560
Vector m_vDestination; // 0x564
int32_t m_iMinDistance; // 0x570
float m_flBaseTeleportTime; // 0x574
float m_flExtraTeleportTime; // 0x578
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_WitchDoctor_ParalyzingCask : public CDOTABaseAbility
{
public:
int32_t m_iBounces; // 0x558
int32_t bounces; // 0x55c
int32_t bounce_bonus_damage; // 0x560
private:
[[maybe_unused]] uint8_t __pad0564[0x4]; // 0x564
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHitHeroes; // 0x568
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_WitchDoctor_Cask_Thinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_WitchDoctor_VoodooRestoration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_WitchDoctor_Voodoo_Restoration_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_WitchDoctor_Voodoo_Restoration_Heal : public CDOTA_Buff
{
public:
int32_t heal; // 0x11d8
float mana_per_second; // 0x11dc
float heal_interval; // 0x11e0
int32_t enemy_damage_pct; // 0x11e4
float m_flTotalHealing; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_WitchDoctor_Maledict : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_WitchDoctor_MaledictDoT : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_WitchDoctor_Maledict : public CDOTA_Buff
{
public:
int32_t m_iStartHealth; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t bonus_damage_threshold; // 0x11e0
int32_t ticks; // 0x11e4
int32_t iCurrentTick; // 0x11e8
};
// Alignment: 8
// Size: 0x590
class CDOTA_Ability_WitchDoctor_DeathWard : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hWard; // 0x558
int32_t m_iDamage; // 0x55c
int32_t m_iBounceRadius; // 0x560
int32_t m_iProjectileSpeed; // 0x564
GameTime_t m_fWardExpireTime; // 0x568
ParticleIndex_t m_nFXIndex; // 0x56c
int32_t m_iAttackIndex; // 0x570
private:
[[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574
public:
CUtlVector< sBounceInfo > m_BounceInfo; // 0x578
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_WitchDoctor_DeathWard : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t m_iBounceRadius; // 0x11dc
int32_t bonus_accuracy; // 0x11e0
bool m_bFirstAttack; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_WitchDoctor_Voodoo_Switcheroo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_WitchDoctor_Voodoo_Switcheroo : public CDOTA_Buff
{
public:
Vector m_vSavedPos; // 0x11d8
CHandle< CBaseEntity > m_hSavedAbility; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_WitchDoctor_DeathWard_Voodoo_Switcheroo_AttackSpeedReduction : public CDOTA_Buff
{
public:
int32_t attack_speed_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Witch_Doctor_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Sniper_Shrapnel_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sniper_Shrapnel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Sniper_Shrapnel_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
bool m_bExploded; // 0x11dc
bool m_bGrantedGem; // 0x11dd
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Sniper_Shrapnel_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
int32_t shrapnel_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sniper_Headshot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Sniper_Headshot : public CDOTA_Buff
{
public:
int32_t proc_chance; // 0x11d8
float slow_duration; // 0x11dc
float knockback_distance; // 0x11e0
int32_t bonus_damage_creeps; // 0x11e4
int32_t bonus_attack_range; // 0x11e8
int32_t damage; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sniper_Headshot_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Sniper_TakeAim : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sniper_TakeAim : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Sniper_TakeAim_Bonus : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t active_attack_range_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Sniper_Assassinate : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
CHandle< CBaseEntity > m_hTarget; // 0x560
ParticleIndex_t m_iIndex; // 0x564
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Sniper_Assassinate_Crit : public CDOTA_Buff
{
public:
int32_t scepter_crit_damage; // 0x11d8
int32_t scatter_damage_pct; // 0x11dc
bool is_secondary; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Sniper_Assassinate : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Sniper_Concussive_Grenade : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Sniper_Concussive_Grenade : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necrolyte_Sadist_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necrolyte_Sadist : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Necrolyte_Sadist_Active : public CDOTA_Buff
{
public:
int32_t heal_bonus; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t slow_aoe; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necrolyte_Sadist_Aura_Effect : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Necrolyte_Death_Pulse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x8]; // 0x558
public:
bool m_bIsDeathSeekerCast; // 0x560
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necrophos_Death_Seeker_Ethereal : public CDOTA_Buff
{
public:
int32_t magic_resistance_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necrolyte_Heartstopper_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Necrolyte_Heartstopper_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
bool m_bStackCountChanged; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
CUtlVector< GameTime_t > m_fStackExpireTimes; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Necrolyte_Heartstopper_Aura_Counter : public CDOTA_Buff
{
public:
float mana_regen; // 0x11d8
float health_regen; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Necrolyte_Heartstopper_Aura_Effect : public CDOTA_Buff
{
public:
float aura_damage; // 0x11d8
int32_t heal_reduction_pct; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necrolyte_ReapersScythe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Necrolyte_ReapersScythe : public CDOTA_Modifier_Stunned
{
public:
float stun_duration; // 0x11d8
bool m_bIllusion; // 0x11dc
bool m_bArcWardenClone; // 0x11dd
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Necrolyte_ReapersScythe_RespawnTime : public CDOTA_Buff
{
public:
float hp_per_kill; // 0x11d8
float mana_per_kill; // 0x11dc
float hp_regen; // 0x11e0
float mp_regen; // 0x11e4
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Necrolyte_Death_Seeker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Death_Seeker_OutOfWorld : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Slardar_Puddle_Thinker : public CDOTA_Buff
{
public:
int32_t puddle_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slardar_Puddle : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slardar_Sprint_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Slardar_Sprint_River : public CDOTA_Buff
{
public:
int32_t river_speed; // 0x11d8
int32_t puddle_regen; // 0x11dc
int32_t puddle_armor; // 0x11e0
int32_t puddle_status_resistance; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slardar_Sprint : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slardar_Sprint : public CDOTA_Buff
{
public:
int32_t bonus_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Slardar_Slithereen_Crush : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slardar_Slithereen_Crush : public CDOTA_Buff
{
public:
int32_t crush_extra_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slardar_Bash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Slardar_Bash_Active : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
float duration; // 0x11dc
int32_t attack_count; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slardar_Amplify_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Slardar_Amplify_Damage : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
float scepter_delay; // 0x11dc
int32_t undispellable; // 0x11e0
int32_t puddle_radius; // 0x11e4
float puddle_duration; // 0x11e8
Vector m_vecLastPuddle; // 0x11ec
CHandle< CBaseEntity > m_hPuddle; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Slardar_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ursa_Overpower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ursa_Overpower : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ursa_Fury_Swipes : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ursa_Fury_Swipes : public CDOTA_Buff
{
public:
int32_t damage_per_stack; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ursa_Fury_Swipes_Damage_Increase : public CDOTA_Buff
{
public:
int32_t damage_per_stack; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ursa_Enrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ursa_Enrage : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t status_resistance; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Ursa_Earthshock : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Ursa_Earthshock_Move : public CDOTA_Buff
{
public:
float hop_duration; // 0x11d8
int32_t hop_height; // 0x11dc
int32_t hop_distance; // 0x11e0
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
float m_flJumpDuration; // 0x11ec
float m_flJumpHeight; // 0x11f0
Vector m_vTargetHorizontalDirection; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ursa_Earthshock : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 7
// Size: 0x578
class CDOTA_Ability_Lion_Impale : public CDOTABaseAbility
{
public:
int32_t width; // 0x558
float duration; // 0x55c
int32_t speed; // 0x560
float length_buffer; // 0x564
float range; // 0x568
int32_t m_iDefaultCastRange; // 0x56c
int32_t pierces_immunity; // 0x570
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Lion_Impale : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
bool m_bDamageApplied; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t damage; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lion_Voodoo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lion_Voodoo : public CDOTA_Modifier_Hexed
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Lion_ManaDrain : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_Victims; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lion_ManaDrain_Immunity : public CDOTA_Modifier_DebuffImmune
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1208
class CDOTA_Modifier_Lion_ManaDrain : public CDOTA_Buff
{
public:
int32_t mana_per_second; // 0x11d8
int32_t break_distance; // 0x11dc
float tick_interval; // 0x11e0
int32_t movespeed; // 0x11e4
int32_t damage_pct; // 0x11e8
GameTime_t m_fAppliedTime; // 0x11ec
int32_t m_nTotalManaDrained; // 0x11f0
int32_t m_nSelfBuffSerialNumber; // 0x11f4
int32_t m_nTargetDebuffSerialNumber; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lion_ManaDrain_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lion_ManaDrain_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lion_FingerOfDeath_Kill_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Lion_FingerOfDeath : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lion_FingerOfDeath : public CDOTA_Buff
{
public:
bool m_bIgnoreBonus; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lion_FingerOfDeath_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Lion_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
bool m_bFrozen; // 0x11d8
bool m_bFlail; // 0x11d9
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Lion_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
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: 0x1240
class CDOTA_Modifier_Track_Order_Issuer : public CDOTA_Buff
{
public:
PlayerID_t m_nIssuerPlayerIndex; // 0x11d8
bool m_bTeamFirstCourier; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
GameTime_t m_nPlayerCommandTime[24]; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Courier_Morph_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Courier_Flying : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_ReturnToBase : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_TakeStashItems : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Courier_TakeStashItems : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hStashOwner; // 0x11d8
Vector m_vLocation; // 0x11dc
bool m_bTransferAfterTake; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
int32_t stash_pickup_distance; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_ReturnStashItems : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Courier_ReturnStashItems : public CDOTA_Buff
{
public:
Vector m_vLocation; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_GoToSecretShop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_GoToEnemySecretShop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_GoToSideShop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_GoToSideShop2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_TransferItems : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_TransferItems_ToOtherPlayer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Courier_TransferItems : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_TakeStashAndTransferItems : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_Burst : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Courier_Burst : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_Morph : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_Shield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Courier_Shield : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Courier_Passive_Bonus : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vecTriggers; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_QueuePickupFromStash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Courier_DequeuePickupFromStash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_FountainPassive : public CDOTA_Buff
{
public:
int32_t bonus_chance; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Fountain_Fury_Swipes_Damage_Increase : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Roshan_SpellBlock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Roshan_SpellBlock : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Roshan_Teleport : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndexStart; // 0x558
ParticleIndex_t m_nFXIndexEnd; // 0x55c
ParticleIndex_t m_nFXIndexEndTeam; // 0x560
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Roshan_Moving : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
bool m_bFlipped; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Roshan_Bash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Roshan_Bash : public CDOTA_Buff
{
public:
int32_t bash_chance; // 0x11d8
int32_t bonus_damage; // 0x11dc
float stun_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Roshan_Slam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Roshan_Slam : public CDOTA_Buff
{
public:
int32_t slow_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Roshan_InherentBuffs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Roshan_InherentBuffs : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Roshan_Devotion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Roshan_DevotionAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Roshan_Devotion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Miniboss_Unyielding_Shield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Miniboss_Reflect : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Miniboss_Reflect : public CDOTA_Buff
{
public:
int32_t passive_reflection_pct; // 0x11d8
int32_t passive_reflection_bonus_per_death; // 0x11dc
bool m_bIsDire; // 0x11e0
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Miniboss_UnyieldingShield : public CDOTA_Buff
{
public:
int32_t damage_absorb; // 0x11d8
float regen_per_second; // 0x11dc
float regen_bonus_per_death; // 0x11e0
int32_t m_nDamageAbsorbed; // 0x11e4
GameTime_t m_timeLastTick; // 0x11e8
ParticleIndex_t nFXIndex; // 0x11ec
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Animation_Attack : public CDOTABaseAbility
{
public:
float m_flPlaybackRate; // 0x558
float animation_time; // 0x55c
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Animation_RightClawSwipe : public CDOTA_Ability_Animation_Attack
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Animation_RightClawSwipe : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_radius; // 0x11dc
float m_flScalar; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x11e8
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Animation_LeftClawSwipe : public CDOTA_Ability_Animation_Attack
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Animation_LeftClawSwipe : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_radius; // 0x11dc
float m_flScalar; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x11e8
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Attached_Unit : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hAttachTarget; // 0x11d8
bool m_bPhysicalImmune; // 0x11dc
bool m_bMagicImmune; // 0x11dd
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Nian_Dive : public CDOTABaseAbility
{
public:
float m_flPlaybackRate; // 0x558
};
// Alignment: 33
// Size: 0x1288
class CDOTA_Modifier_Nian_Dive : public CDOTA_Buff
{
public:
float m_flTotalTimeInAir; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
Vector m_vTargetPosition; // 0x11f8
float m_flCurrentTimeHoriz; // 0x1204
float m_flCurrentTimeVert; // 0x1208
bool m_bInterrupted; // 0x120c
private:
[[maybe_unused]] uint8_t __pad120d[0x3]; // 0x120d
public:
float m_flHorizDelayTime; // 0x1210
float m_flVertDelayTime; // 0x1214
float m_flLeapSequenceDuration; // 0x1218
float m_flClawDamageTime; // 0x121c
float m_flPlaybackRate; // 0x1220
CHandle< CBaseEntity > m_hTarget; // 0x1224
bool m_bPlayedSwipeSound; // 0x1228
private:
[[maybe_unused]] uint8_t __pad1229[0x3]; // 0x1229
public:
int32_t pounce_distance; // 0x122c
float pounce_speed; // 0x1230
float pounce_acceleration; // 0x1234
int32_t pounce_radius; // 0x1238
int32_t pounce_damage; // 0x123c
int32_t stun_radius; // 0x1240
float stun_duration; // 0x1244
float leash_duration; // 0x1248
float initial_delay; // 0x124c
float landing_delay; // 0x1250
float vertical_adjust; // 0x1254
float vertical_adjust_max_distance; // 0x1258
float vertical_adjust_min_distance; // 0x125c
int32_t claw_damage; // 0x1260
int32_t claw_damage_radius; // 0x1264
float claw_damage_delay; // 0x1268
float claw_damage_duration; // 0x126c
CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x1270
};
// Alignment: 11
// Size: 0x5c8
class CDOTA_Ability_NianCharge : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
bool m_bChargeFinished; // 0x568
bool m_bPlayedChargeAnimation; // 0x569
bool m_bPinning; // 0x56a
private:
[[maybe_unused]] uint8_t __pad056b[0x1]; // 0x56b
public:
GameTime_t m_flPinStartTime; // 0x56c
Vector m_vProjectileLocation; // 0x570
Vector m_vTargetLocation; // 0x57c
CHandle< CBaseEntity > m_hTarget; // 0x588
private:
[[maybe_unused]] uint8_t __pad058c[0x4]; // 0x58c
public:
CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x590
CUtlVector< CDOTA_Tree* > m_hTrackingProjectileTrees; // 0x5a8
int32_t nFXIndex; // 0x5c0
int32_t m_iCurProjectileIndex; // 0x5c4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nian_Frenzy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Nian_Frenzy : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_radius; // 0x11dc
int32_t stun_radius; // 0x11e0
float dive_distance; // 0x11e4
float initial_rise_time; // 0x11e8
float right_swipe_time; // 0x11ec
float left_swipe_time; // 0x11f0
float knockdown_duration; // 0x11f4
float stun_duration; // 0x11f8
int32_t m_nTickCounter; // 0x11fc
CUtlVector< CHandle< CBaseEntity > > m_hEnemies; // 0x1200
};
// Alignment: 16
// Size: 0x5b0
class CDOTA_Ability_Nian_Roar : public CDOTABaseAbility
{
public:
int32_t base_projectiles; // 0x558
int32_t max_projectiles; // 0x55c
int32_t projectile_step; // 0x560
int32_t base_speed; // 0x564
int32_t speed_step; // 0x568
int32_t initial_radius; // 0x56c
int32_t end_radius; // 0x570
int32_t damage; // 0x574
float base_interval; // 0x578
float interval_step; // 0x57c
int32_t m_nCastCount; // 0x580
int32_t m_nProjectiles; // 0x584
int32_t m_nWaveCount; // 0x588
private:
[[maybe_unused]] uint8_t __pad058c[0x4]; // 0x58c
public:
CountdownTimer m_ctTimer; // 0x590
float m_flTiming; // 0x5a8
bool m_bScriptRoar; // 0x5ac
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Roar : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Intrinsic : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Attachment : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Attachment_Regrow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Waiting : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Animation_TailSpin : public CDOTABaseAbility
{
public:
float m_flPlaybackRate; // 0x558
float animation_time; // 0x55c
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Animation_TailSpin : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_radius; // 0x11dc
float m_flPlaybackRate; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_vHitEntities; // 0x11e8
};
// Alignment: 7
// Size: 0x590
class CDOTA_Ability_Nian_Apocalypse : public CDOTABaseAbility
{
public:
int32_t area_of_effect; // 0x558
ParticleIndex_t m_nfxIndex_roar; // 0x55c
float fire_interval; // 0x560
float delay; // 0x564
float target_range; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CountdownTimer m_ctTimer; // 0x570
float m_flTiming; // 0x588
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Nian_Apocalypse : public CDOTA_Buff
{
public:
int32_t area_of_effect; // 0x11d8
float damage; // 0x11dc
float stun_duration; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Nian_Knockdown : public CDOTA_Buff
{
public:
float m_flStandUpDuration; // 0x11d8
float m_flKnockDownDuration; // 0x11dc
bool m_bDebuff; // 0x11e0
bool m_bStandingUp; // 0x11e1
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Big_Flinch : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Firecracker_Debuff : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nian_GreaterBash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Nian_GreaterBash : public CDOTA_Buff
{
public:
int32_t chance_pct; // 0x11d8
float damage; // 0x11dc
float movespeed_duration; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nian_GreaterBash_Speed : public CDOTA_Buff
{
public:
int32_t bonus_movespeed_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_NianCharge : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_NianChargePinned : public CDOTA_Buff
{
public:
float pinned_damage_amount; // 0x11d8
float pinned_damage_interval; // 0x11dc
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Nian_Tail_Swipe : public CDOTA_Ability_Animation_Attack
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1248
class CDOTA_Modifier_Nian_Tail_Swipe_Wall : public CDOTA_Buff
{
public:
Vector m_vWallStartPosition; // 0x11d8
Vector m_vWallDirection; // 0x11e4
Vector m_vWallLeft; // 0x11f0
int32_t m_DamageAmount; // 0x11fc
int32_t m_DamageType; // 0x1200
float speed; // 0x1204
float starting_width; // 0x1208
float ending_width; // 0x120c
float stun_duration; // 0x1210
float fly_duration; // 0x1214
float fly_distance; // 0x1218
ParticleIndex_t m_nFXIndex; // 0x121c
GameTime_t m_flWallStartTime; // 0x1220
float m_flScalar; // 0x1224
CUtlVector< CHandle< CBaseEntity > > m_EntitiesToExclude; // 0x1228
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Nian_Tail_Swipe_AirTime : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
float m_flOldPitch; // 0x11e0
QAngle m_qRotation; // 0x11e4
int32_t m_nRotations; // 0x11f0
float m_flDistance; // 0x11f4
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Nian_Hurricane_Whirlpool : public CDOTA_Buff
{
public:
float pull_switch_interval; // 0x11d8
int32_t pull_speed; // 0x11dc
bool m_bForward; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
ParticleIndex_t m_nfxIndex; // 0x11e4
};
// Alignment: 13
// Size: 0x5b0
class CDOTA_Ability_Nian_Hurricane : public CDOTABaseAbility
{
public:
int32_t min_distance; // 0x558
int32_t max_distance; // 0x55c
int32_t torrent_count; // 0x560
float fire_interval; // 0x564
float pull_switch_interval; // 0x568
float game_time_wind_activation; // 0x56c
CountdownTimer m_ctPullTimer; // 0x570
CountdownTimer m_ctTimer; // 0x588
float m_flTiming; // 0x5a0
bool m_bForward; // 0x5a4
bool m_bUseWind; // 0x5a5
private:
[[maybe_unused]] uint8_t __pad05a6[0x2]; // 0x5a6
public:
ParticleIndex_t m_nFXIndex; // 0x5a8
ParticleIndex_t m_nfxIndex_roar; // 0x5ac
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nian_Torrent_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x590
class CDOTA_Ability_Nian_Whirlpool : public CDOTABaseAbility
{
public:
int32_t pool_count; // 0x558
int32_t min_distance; // 0x55c
int32_t max_distance; // 0x560
int32_t pull_radius; // 0x564
float fire_interval; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CountdownTimer m_ctTimer; // 0x570
float m_flTiming; // 0x588
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Nian_WhirlpoolThinker : public CDOTA_Buff
{
public:
int32_t pull_radius; // 0x11d8
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Nian_Whirlpool_Pull : public CDOTA_Buff
{
public:
int32_t pull_radius; // 0x11d8
int32_t pull_speed; // 0x11dc
int32_t radius; // 0x11e0
int32_t whirlpool_damage; // 0x11e4
float tick_rate; // 0x11e8
GameTime_t m_flDamageTick; // 0x11ec
CHandle< CBaseEntity > m_hThinker; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nian_Eruption : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Nian_EruptionPendingThinker : public CDOTA_Buff
{
public:
int32_t tick_count; // 0x11d8
int32_t beam_radius; // 0x11dc
int32_t m_nTickCount; // 0x11e0
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Nian_EruptionThinker : public CDOTA_Buff
{
public:
int32_t explosion_radius; // 0x11d8
float damage_interval; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nian_Sigils : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1210
class CDOTA_Modifier_Nian_Waterball : public CDOTA_Buff
{
public:
int32_t trail_damage_per_second; // 0x11d8
int32_t trail_damage_radius; // 0x11dc
CUtlVector< int32 > m_vFXIndices; // 0x11e0
CUtlVector< Vector > m_vLocations; // 0x11f8
};
// Alignment: 2
// Size: 0x588
class CDOTA_Ability_Nian_Waterball : public CDOTABaseAbility
{
public:
CountdownTimer m_ctTimer; // 0x558
CUtlVector< CHandle< CBaseEntity > > m_hEntities; // 0x570
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Nian_Damage_Reflection : public CDOTA_Buff
{
public:
GameTime_t m_flReflectionStartTime; // 0x11d8
float m_flReflectionAmount; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Nian_Flag_Trap : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Nian_Flag_Trap_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nian_Flag_Trapped : public CDOTA_Buff
{
public:
int32_t bonus_spell_damage_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Ability_Firework_Mine : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Firework_Mine : public CDOTA_Buff
{
public:
int32_t damage_radius; // 0x11d8
int32_t trigger_radius; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_JumpBoots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_JumpBootsIntrinsic : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_JumpBoots : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
int32_t push_length; // 0x11ec
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Nian_Leap : public CDOTABaseAbility
{
public:
float m_flPlaybackRate; // 0x558
};
// Alignment: 17
// Size: 0x1238
class CDOTA_Modifier_Nian_Leap : public CDOTA_Buff
{
public:
float m_flTotalTimeInAir; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
Vector m_vTargetPosition; // 0x11f8
float m_flCurrentTimeHoriz; // 0x1204
float m_flCurrentTimeVert; // 0x1208
bool m_bInterrupted; // 0x120c
private:
[[maybe_unused]] uint8_t __pad120d[0x3]; // 0x120d
public:
float m_flHorizDelayTime; // 0x1210
float m_flVertDelayTime; // 0x1214
float m_flLeapSequenceDuration; // 0x1218
float m_flPlaybackRate; // 0x121c
int32_t pounce_distance; // 0x1220
float pounce_speed; // 0x1224
float pounce_acceleration; // 0x1228
float initial_delay; // 0x122c
float landing_delay; // 0x1230
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Vermillion_Robe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Vermillion_Robe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Vermillion_Robe_Flames : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float damage_per_health_missing; // 0x11dc
float delay; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Vermillion_Robe : public CDOTA_Buff_Item
{
public:
int32_t mana_regen_pct; // 0x11d8
int32_t move_speed_bonus; // 0x11dc
int32_t bonus_stats; // 0x11e0
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Warlock_FatalBonds : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_FatalBondsEntities; // 0x11d8
int32_t damage_share_percentage; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Warlock_Fatal_Bonds : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Warlock_Shadow_Word : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Warlock_Shadow_Word : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
int32_t damage; // 0x11dc
int32_t shard_movement_speed_pct; // 0x11e0
};
// Alignment: 16
// Size: 0x5d0
class CDOTA_Ability_Warlock_Upheaval : public CDOTABaseAbility
{
public:
Vector m_vPosition; // 0x558
float aoe; // 0x564
int32_t slow_per_second; // 0x568
int32_t aspd_per_second; // 0x56c
int32_t max_slow; // 0x570
int32_t damage_per_second; // 0x574
int32_t max_damage; // 0x578
float damage_tick_interval; // 0x57c
CountdownTimer m_timer; // 0x580
CountdownTimer m_shardTimer; // 0x598
float duration; // 0x5b0
GameTime_t m_flElapsedTime; // 0x5b4
float m_flCurrentSlow; // 0x5b8
ParticleIndex_t m_nFXIndex; // 0x5bc
private:
[[maybe_unused]] uint8_t __pad05c0[0x8]; // 0x5c0
public:
bool m_bTargetCast; // 0x5c8
private:
[[maybe_unused]] uint8_t __pad05c9[0x3]; // 0x5c9
public:
CHandle< CBaseEntity > m_hTarget; // 0x5cc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Upheaval : public CDOTA_Buff
{
public:
int32_t m_iSlow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Upheaval_Ally : public CDOTA_Buff
{
public:
int32_t m_iAttackSpeed; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Warlock_RainOfChaos : public CDOTABaseAbility
{
public:
int32_t aoe; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Death_Trigger : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Thinker : public CDOTA_Buff
{
public:
float stun_duration; // 0x11d8
bool bHasScepter; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
int32_t aoe; // 0x11e0
int32_t m_iCount; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Rain_Of_Chaos_Golem : public CDOTA_Buff
{
public:
int32_t bonus_magic_resistance; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Warlock_Golem_Flaming_Fists : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Golem_Flaming_Fists : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Warlock_Golem_Permanent_Immolation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Golem_Permanent_Immolation : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Golem_Permanent_Immolation_Debuff : public CDOTA_Buff
{
public:
int32_t aura_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Warlock_Imp_Explode : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Imp_Explode : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hBestTarget; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Warlock_Imp_ExplodeThinker : public CDOTA_Buff
{
public:
float explosion_radius; // 0x11d8
float explosion_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x758
class CDOTA_Beastmaster_Axe : public CBaseAnimatingActivity
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Beastmaster_WildAxes : public CDOTABaseAbility
{
public:
int32_t axe_damage; // 0x558
};
// Alignment: 19
// Size: 0x12a0
class CDOTA_Modifier_Beastmaster_WildAxes : public CDOTA_Buff
{
public:
Vector m_vLeftControl; // 0x11d8
Vector m_vRightControl; // 0x11e4
Vector m_vTargetLoc; // 0x11f0
Vector m_vSourceLoc; // 0x11fc
float m_flDuration; // 0x1208
GameTime_t m_flDieTime; // 0x120c
bool m_bReturning; // 0x1210
bool m_bCatchingAxes; // 0x1211
private:
[[maybe_unused]] uint8_t __pad1212[0x6]; // 0x1212
public:
CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x1218
ParticleIndex_t m_nAxeFXIndex[2]; // 0x1230
CUtlVector< CHandle< CBaseEntity > > m_hHitList[2]; // 0x1238
int32_t radius; // 0x1268
int32_t spread; // 0x126c
int32_t axe_damage; // 0x1270
float duration; // 0x1274
float min_throw_duration; // 0x1278
float max_throw_duration; // 0x127c
CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x1280
bool m_bHitInvisibleHero; // 0x1298
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Beastmaster_Axe_Stack_Counter : public CDOTA_Buff
{
public:
float damage_amp; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Beastmaster_Axe_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_CallOfTheWild_Boar : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_CallOfTheWild_Hawk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Beastmaster_CallOfTheWild_Hawk : public CDOTA_Buff
{
public:
Vector m_vDestination; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11e4
int32_t m_iTickCount; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_CallOfTheWild_Boar_Poison : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_CallOfTheWild_Boar_BonusDamage : public CDOTA_Buff
{
public:
float boar_bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_CallOfTheWild_Boar_PoisonBase : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_CallOfTheWild_Boar_Poison : public CDOTA_Modifier_CallOfTheWild_Boar_PoisonBase
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_CallOfTheWild_Boar_PoisonEffect : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t movement_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_InnerBeast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Beastmaster_InnerBeast_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Beastmaster_InnerBeast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 9
// Size: 0x580
class CDOTA_Ability_Beastmaster_PrimalRoar : public CDOTABaseAbility
{
public:
float duration; // 0x558
float slow_duration; // 0x55c
int32_t side_damage; // 0x560
int32_t damage_radius; // 0x564
int32_t path_width; // 0x568
float push_duration; // 0x56c
int32_t push_distance; // 0x570
int32_t damage; // 0x574
float movement_speed_duration; // 0x578
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Beastmaster_PrimalRoar_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed_pct; // 0x11d8
int32_t slow_attack_speed_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Beastmaster_PrimalRoar_Speed : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Beastmaster_PrimalRoar_Push : public CDOTA_Buff
{
public:
Vector m_vVelocity; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_Mark_Of_The_Beast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Beastmaster_Mark_Of_The_Beast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_CallOfTheWild_Hawk_Reveal : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_Hawk_Dive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_Beastmaster_Hawk_Dive : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
float m_flPredictedTotalTime; // 0x11dc
Vector m_vStartPosition; // 0x11e0
float m_flCurrentTimeHoriz; // 0x11ec
float m_flCurrentTimeVert; // 0x11f0
bool m_bHorizontalMotionInterrupted; // 0x11f4
bool m_bDamageApplied; // 0x11f5
private:
[[maybe_unused]] uint8_t __pad11f6[0x2]; // 0x11f6
public:
Vector m_vHorizontalVelocity; // 0x11f8
Vector m_vLastKnownTargetPosition; // 0x1204
float m_flInitialVelocityZ; // 0x1210
bool m_bDone; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
int32_t radius; // 0x1218
int32_t toss_damage; // 0x121c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_DrumsOfSlom : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_Beastmaster_DrumsOfSlom : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
int32_t radius; // 0x11dc
int32_t max_stacks; // 0x11e0
float base_damage; // 0x11e4
int32_t heal_pct; // 0x11e8
int32_t creep_heal_pct; // 0x11ec
int32_t iCurrentAttacksAtMinInterval; // 0x11f0
float stack_decay_time; // 0x11f4
float max_drum_hit_interval; // 0x11f8
float min_drum_hit_interval; // 0x11fc
GameTime_t m_flLastStackChangeTime; // 0x1200
GameTime_t m_flLastDrumHitTime; // 0x1204
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Beastmaster_DrumsOfSlom_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Beastmaster_DrumsOfSlom_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_5_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_5 : public CDOTA_Buff
{
public:
int32_t bonus_ms; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_6_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Unique_Beastmaster_6 : public CDOTA_Buff
{
public:
int32_t bonus_hp; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Beastmaster_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_QueenOfPain_ScreamOfPain : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_QueenOfPain_ScreamOfPain_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_QueenOfPain_ShadowStrike : public CDOTABaseAbility
{
public:
Vector projectile_speed; // 0x558
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_QueenOfPain_ShadowStrike : public CDOTA_Buff
{
public:
int32_t duration_damage; // 0x11d8
int32_t duration_heal; // 0x11dc
int32_t movement_slow; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CountdownTimer m_SlowInterval; // 0x11e8
float m_flSlowStep; // 0x1200
float m_flSlowStepStep; // 0x1204
float attack_buff_duration; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_QueenOfPain_Blink : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1230
class CDOTA_Modifier_QueenOfPain_Arcana : public CDOTA_Buff
{
public:
CUtlOrderedMap< PlayerID_t, bool > m_vecHitPlayers; // 0x11d8
CUtlOrderedMap< PlayerID_t, bool > m_vecKilledPlayers; // 0x1200
GameTime_t m_flLastSonicWaveCast; // 0x1228
bool m_bSpeechComplete; // 0x122c
bool m_bMessageComplete; // 0x122d
bool m_bIsMeleeAttack; // 0x122e
};
// Alignment: 5
// Size: 0x578
class CDOTA_Ability_QueenOfPain_SonicWave : public CDOTABaseAbility
{
public:
GameTime_t m_fStartTime; // 0x558
float m_fTotalTime; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x560
int32_t starting_aoe; // 0x564
int32_t final_aoe; // 0x568
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_QueenOfPain_SonicWave_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_QueenOfPain_SonicWave_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_QueenOfPain_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Venomancer_PoisonNova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Venomancer_PlagueWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Venomancer_VenomousGale : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
float duration; // 0x55c
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Venomancer_VenomousGale : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t tick_damage; // 0x11dc
float tick_interval; // 0x11e0
float duration; // 0x11e4
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Venomancer_PoisonSting : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Venomancer_PoisonSting_Applier : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Venomancer_PoisonStingBase : public CDOTA_Buff
{
public:
int32_t m_iDamage; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t m_nTicksRemaining; // 0x11e0
float m_flAttackDamage; // 0x11e4
int32_t hp_regen_reduction; // 0x11e8
};
// Alignment: 0
// Size: 0x11f0
class CDOTA_Modifier_Venomancer_PoisonSting : public CDOTA_Modifier_Venomancer_PoisonStingBase
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Venomancer_PoisonStingWard : public CDOTA_Buff
{
public:
int32_t m_iDamage; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t hp_regen_reduction; // 0x11e0
int32_t m_nTicksRemaining; // 0x11e4
float m_flAttackDamage; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Plague_Wards_Bonus : public CDOTA_Buff
{
public:
int32_t ward_hp; // 0x11d8
int32_t ward_damage; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Plague_Wards_Bonus_Range : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_PoisonNova_Intrinsic : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_PoisonNova_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
int32_t speed; // 0x11f8
int32_t radius; // 0x11fc
int32_t start_radius; // 0x1200
float duration; // 0x1204
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Venomancer_PoisonNova : public CDOTA_Buff
{
public:
float damage; // 0x11d8
float magic_resist; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Holdout_ScourgeWard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Venomancer_NoxiousPlague : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Venomancer_NoxiousPlaguePrimary : public CDOTA_Buff
{
public:
float health_damage; // 0x11d8
float debuff_radius; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Venomancer_NoxiousPlague_Slow : public CDOTA_Buff
{
public:
float attack_slow; // 0x11d8
float movement_slow_max; // 0x11dc
float debuff_radius; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Venomancer_NoxiousPlagueSecondary : public CDOTA_Buff
{
public:
float health_damage; // 0x11d8
float attack_slow; // 0x11dc
float movement_slow_max; // 0x11e0
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Venomancer_Latent_Poison : public CDOTABaseAbility
{
public:
Vector projectile_speed; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Venomancer_Latent_Poison : public CDOTA_Buff
{
public:
int32_t duration_damage; // 0x11d8
int32_t movement_slow; // 0x11dc
int32_t explosion_damage; // 0x11e0
float explosion_stun_duration; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FacelessVoid_Backtrack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_Backtrack : public CDOTA_Buff
{
public:
int32_t dodge_chance_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FacelessVoid_TimeLock : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1238
class CDOTA_Modifier_FacelessVoid_TimeLock : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float duration_creep; // 0x11dc
float delay; // 0x11e0
int32_t chance_pct; // 0x11e4
int32_t bonus_damage; // 0x11e8
GameTime_t last_attack_time; // 0x11ec
CUtlVector< int16 > m_ProcAttackRecords; // 0x11f0
GameTime_t apply_activity_modifier_until; // 0x1208
GameTime_t disable_activity_modifier_until; // 0x120c
CUtlOrderedMap< CHandle< CDOTA_BaseNPC >, int32 > m_mapTargets; // 0x1210
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_TimeLock_Freeze : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_Timelock_TimeWalk_Proc_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_Timelock_Basic_Proc_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FacelessVoid_TimeDilation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1328
class CDOTA_Modifier_FacelessVoid_TimeDilation_Slow : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t m_nAffectedAbilities; // 0x11dc
GameTime_t m_flLastDamageTime; // 0x11e0
int32_t slow; // 0x11e4
int32_t cooldown_percentage; // 0x11e8
int32_t damage_per_stack; // 0x11ec
int32_t base_damage; // 0x11f0
};
// Alignment: 0
// Size: 0x11f0
class CDOTA_Modifier_FacelessVoid_TimeWalk_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_FacelessVoid_TimeWalk_ShardBuff : public CDOTA_Buff
{
public:
Vector m_vStartLocation; // 0x11d8
};
// Alignment: 7
// Size: 0x598
class CDOTA_Ability_FacelessVoid_TimeWalk : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x568
int32_t speed; // 0x56c
int32_t range; // 0x570
int32_t radius; // 0x574
int32_t m_nProjectileID; // 0x578
Vector m_vProjectileLocation; // 0x57c
Vector m_vStartLocation; // 0x588
};
// Alignment: 4
// Size: 0x588
class CDOTA_Ability_FacelessVoid_TimeWalk_Reverse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t speed; // 0x568
int32_t m_nProjectileID; // 0x56c
Vector m_vProjectileLocation; // 0x570
Vector m_vStartLocation; // 0x57c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_FacelessVoid_TimeLock_ForceProc : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float duration_creep; // 0x11dc
int32_t bonus_damage; // 0x11e0
float delay; // 0x11e4
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_TimeWalk_Slow : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_TimeWalk : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_FacelessVoid_Chronosphere : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_Chronosphere : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_ArcanaDamageRouter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_Chronosphere_Freeze : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_Chronosphere_SelfBuff : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_Chronosphere_Speed : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_FacelessVoid_Arcana : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FacelessVoid_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
ParticleIndex_t m_nCasterFXIndex; // 0x11d8
};
// Alignment: 6
// Size: 0x570
class CDOTA_Ability_DeathProphet_CarrionSwarm : public CDOTABaseAbility
{
public:
int32_t start_radius; // 0x558
int32_t end_radius; // 0x55c
GameTime_t m_fStartTime; // 0x560
float m_fTotalTime; // 0x564
int32_t m_nProjectileHandle; // 0x568
ParticleIndex_t m_nFXIndex; // 0x56c
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_DeathProphet_Silence : public CDOTABaseAbility
{
public:
Vector m_vPos; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DeathProphet_Silence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DeathProphet_Silence_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DeathProphet_Witchcraft : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DeathProphet_Witchcraft : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DeathProphet_SpiritSiphon_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_DeathProphet_SpiritSiphon : public CDOTABaseAbility
{
public:
Vector m_vStartPos; // 0x558
int32_t m_iArrowProjectile; // 0x564
int32_t m_nFXIndex; // 0x568
};
// Alignment: 14
// Size: 0x1210
class CDOTA_Modifier_DeathProphet_SpiritSiphon : public CDOTA_Buff
{
public:
float flSmoothness; // 0x11d8
float damage; // 0x11dc
float damage_pct; // 0x11e0
int32_t drain_range; // 0x11e4
float haunt_duration; // 0x11e8
int32_t siphon_buffer; // 0x11ec
int32_t movement_steal; // 0x11f0
CHandle< CBaseEntity > m_hTarget; // 0x11f4
ParticleIndex_t m_iLinkIndex; // 0x11f8
int32_t m_nSelfBuffSerialNumber; // 0x11fc
int32_t m_nTargetDebuffSerialNumber; // 0x1200
bool m_bAppliedFear; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1205[0x3]; // 0x1205
public:
float shard_fear_duration; // 0x1208
float shard_consecutive_siphon_duration; // 0x120c
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_DeathProphet_SpiritSiphon_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DeathProphet_SpiritSiphon_Slow : public CDOTA_Buff
{
public:
int32_t movement_steal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DeathProphet_SpiritSiphon_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
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: 0x1238
class CDOTA_Modifier_DeathProphet_Exorcism : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t spirit_speed; // 0x11dc
int32_t max_distance; // 0x11e0
int32_t give_up_distance; // 0x11e4
int32_t min_damage; // 0x11e8
int32_t max_damage; // 0x11ec
int32_t heal_percent; // 0x11f0
int32_t spirit_duration; // 0x11f4
float ghost_spawn_rate; // 0x11f8
int32_t movement_bonus; // 0x11fc
int32_t m_iSpirits; // 0x1200
GameTime_t m_fStartTime; // 0x1204
GameTime_t m_fLastThinkTime; // 0x1208
GameTime_t m_fSpawnTime; // 0x120c
bool m_bFirstSpawn; // 0x1210
bool m_bCommentedOnExpired; // 0x1211
bool m_bForceExpired; // 0x1212
private:
[[maybe_unused]] uint8_t __pad1213[0x5]; // 0x1213
public:
CUtlVector< sSpiritInfo* > m_vecSpirits; // 0x1218
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DeathProphet_Slow : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
};
// Alignment: 12
// Size: 0x1218
class CDOTA_Modifier_DeathProphet_Scepter : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t spirit_speed; // 0x11dc
int32_t max_distance; // 0x11e0
int32_t give_up_distance; // 0x11e4
int32_t min_damage; // 0x11e8
int32_t max_damage; // 0x11ec
int32_t heal_percent; // 0x11f0
int32_t spirit_duration; // 0x11f4
GameTime_t m_fStartTime; // 0x11f8
GameTime_t m_fLastThinkTime; // 0x11fc
bool m_bExpired; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x7]; // 0x1201
public:
sSpiritInfo* m_SpiritInfo; // 0x1208
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Death_Prophet_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Death_Prophet_Attack_Scepter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pugna_NetherBlast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pugna_NetherBlast_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pugna_Decrepify : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Pugna_Decrepify : public CDOTA_Buff
{
public:
int32_t bonus_spell_damage_pct; // 0x11d8
int32_t bonus_heal_amp_pct_allies; // 0x11dc
int32_t bonus_movement_speed; // 0x11e0
int32_t bonus_movement_speed_allies; // 0x11e4
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Pugna_NetherWard : public CDOTABaseAbility
{
public:
CUtlVector< sAbilityHistory > vecAbilitiesUsed; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Pugna_NetherWard : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float mana_multiplier; // 0x11dc
float mana_drained_per_attack; // 0x11e0
int32_t attacks_to_destroy; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pugna_NetherWard_Aura : public CDOTA_Buff
{
public:
float mana_regen; // 0x11d8
float spell_damage_reduction; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Pugna_LifeDrain : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 14
// Size: 0x1208
class CDOTA_Modifier_Pugna_LifeDrain : public CDOTA_Buff
{
public:
int32_t health_drain; // 0x11d8
float tick_rate; // 0x11dc
bool m_bDoRangeCheck; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
ParticleIndex_t m_nFXIndex; // 0x11e4
GameTime_t m_flElapsedTime; // 0x11e8
bool m_bPrimary; // 0x11ec
bool m_bShard; // 0x11ed
bool m_bFromWard; // 0x11ee
private:
[[maybe_unused]] uint8_t __pad11ef[0x1]; // 0x11ef
public:
CHandle< CBaseEntity > m_hWard; // 0x11f0
float spell_amp_drain_duration; // 0x11f4
int32_t max_spell_amp_drain_pct; // 0x11f8
int32_t spell_amp_drain_rate; // 0x11fc
int32_t spell_amp_drain_rate_ward; // 0x1200
int32_t spell_amp_drain_max; // 0x1204
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pugna_LifeDrain_SpellAmp : public CDOTA_Buff
{
public:
bool m_bIsFriendly; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Phantom_Assassin_GroundDagger : public CDOTA_Buff
{
public:
bool m_bLanded; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomAssassin_Stifling_Dagger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PhantomAssassin_StiflingDagger_Caster : public CDOTA_Buff
{
public:
int32_t base_damage; // 0x11d8
int32_t attack_factor; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomAssassin_StiflingDagger : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomAssassin_Fan_Of_Knives : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1228
class CDOTA_Modifier_PhantomAssassin_Fan_Of_Knives_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
CountdownTimer m_ViewerTimer; // 0x11f8
int32_t projectile_speed; // 0x1210
int32_t radius; // 0x1214
float duration; // 0x1218
float pct_health_damage_initial; // 0x121c
float max_damage_initial; // 0x1220
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_PhantomAssassin_Fan_Of_Knives : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomAssassin_PhantomStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PhantomAssassin_PhantomStrike : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t lifesteal_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomAssassin_Blur : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PhantomAssassin_Blur : public CDOTA_Buff
{
public:
int32_t bonus_evasion; // 0x11d8
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_PhantomAssassin_BlurActive : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
float fade_duration; // 0x11ec
float scepter_fade_duration; // 0x11f0
bool m_bDestroyNext; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PhantomAssassin_CoupdeGrace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_PhantomAssassin_CoupdeGrace : public CDOTA_Buff
{
public:
int32_t crit_bonus; // 0x11d8
int32_t crit_chance; // 0x11dc
bool crit_active; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_PhantomAssassin_Gravestone_Thinker : public CDOTA_Buff
{
public:
int32_t m_nEpitaph; // 0x11d8
PlayerID_t m_nVictimPlayerID; // 0x11dc
int32_t m_nVictimHeroID; // 0x11e0
int32_t m_nCritDmg; // 0x11e4
int32_t m_nContractComplete; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PhantomAssassin_Gravestone : public CDOTA_Buff
{
public:
int32_t m_nFXIndex; // 0x11d8
bool m_bContractGravestoneComplete; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_PhantomAssassin_ScreenSplatter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Phantom_Assassin_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_Refraction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_TemplarAssassin_RefractionDamage : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
int32_t bonus_damage; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TemplarAssassin_RefractionAbsorb : public CDOTA_Buff
{
public:
int32_t damage_threshold; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_Meld : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TemplarAssassin_Meld_Animation : public CDOTA_Buff
{
public:
bool launched_attack; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_TemplarAssassin_Meld : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
bool launched_attack; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
CHandle< CBaseEntity > m_hTarget; // 0x11e0
int32_t m_nAttackRecord; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TemplarAssassin_MeldArmor : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_PsiBlades : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_TemplarAssassin_PsiBlades : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
float attack_spill_range; // 0x11dc
int32_t attack_spill_width; // 0x11e0
int32_t attack_spill_pct; // 0x11e4
int32_t attack_spill_penalty; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TemplarAssassin_PsiBlades_Slow : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TemplarAssassin_PsionicTrap_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_PsionicTrap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_TemplarAssassin_Trap : public CDOTA_Modifier_Invisible
{
public:
int32_t shard_bonus_vision; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_Trap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_TemplarAssassin_Trap_Teleport : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTrap; // 0x558
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_TemplarAssassin_Trap_Slow : public CDOTA_Buff
{
public:
int32_t movement_speed_min; // 0x11d8
int32_t movement_speed_max; // 0x11dc
int32_t trap_bonus_damage; // 0x11e0
float trap_max_charge_duration; // 0x11e4
float shard_min_silence_duration; // 0x11e8
float shard_max_silence_duration; // 0x11ec
float stage; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_SelfTrap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TemplarAssassin_Refraction_Holdout : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_TemplarAssassin_Refraction_Holdout : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t damage_absorb; // 0x11dc
float m_flDamageAbsorbed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Viper_PoisonAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Viper_PoisonAttack : public CDOTA_Buff
{
public:
float duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Viper_PoisonAttack_Slow : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t shard_armor_reduction; // 0x11dc
int32_t shard_building_dmg_pct; // 0x11e0
int32_t movement_speed; // 0x11e4
int32_t magic_resistance; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Viper_Nethertoxin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Viper_Nethertoxin_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Viper_Nethertoxin : public CDOTA_Buff
{
public:
int32_t min_damage; // 0x11d8
int32_t max_damage; // 0x11dc
float max_duration; // 0x11e0
float m_flDamageInterval; // 0x11e4
float m_flTimeIncrement; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Viper_NethertoxinMute : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Viper_CorrosiveSkin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Viper_CorrosiveSkin : public CDOTA_Buff
{
public:
int32_t bonus_magic_resistance; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Viper_CorrosiveSkin_Slow : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t damage; // 0x11dc
int32_t effect_multiplier_distance; // 0x11e0
int32_t effect_multiplier; // 0x11e4
bool m_bEffectMultiplied; // 0x11e8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Viper_ViperStrike : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Viper_ViperStrike_Slow : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Viper_Nose_Dive : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1208
class CDOTA_Modifier_Viper_Nose_Dive : public CDOTA_Buff
{
public:
Vector m_vTargetPos; // 0x11d8
Vector m_vStart; // 0x11e4
float m_flZDelta; // 0x11f0
int32_t radius; // 0x11f4
int32_t corrosive_radius; // 0x11f8
float effect_duration; // 0x11fc
int32_t dive_speed; // 0x1200
float start_height; // 0x1204
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Viper_Nose_Dive_Effect : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Luna_LucentBeam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Luna_LucentBeam_Damage_Buff_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Luna_LucentBeam_Damage_Buff : public CDOTA_Buff
{
public:
int32_t damage_buff_per_beam; // 0x11d8
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Luna_MoonGlaive : public CDOTABaseAbility
{
public:
int32_t m_iAttackIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< sGlaiveInfo > m_GlaiveInfo; // 0x560
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Luna_MoonGlaive : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
int32_t bounces; // 0x11dc
int32_t damage_reduction_percent; // 0x11e0
ParticleIndex_t m_nMoonGlaiveFXIndex; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Luna_LunarBlessing : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Luna_LunarBlessing_Smoke : public CDOTA_Modifier_Invisible
{
public:
int32_t bonus_speed_day; // 0x11e8
int32_t bonus_speed_night; // 0x11ec
int32_t break_distance_day; // 0x11f0
int32_t break_distance_night; // 0x11f4
int32_t visibility_radius; // 0x11f8
int32_t bonus_movement_speed; // 0x11fc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Luna_LunarBlessing : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t bonus_night_vision; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Luna_LunarBlessingAura : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_damage_self; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Luna_LunarBlessing_Active : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Luna_Lunar_Grace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Luna_Lunar_Grace : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
float night_multiplier; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Luna_Eclipse : public CDOTABaseAbility
{
public:
bool m_bIsScepterCast; // 0x558
};
// Alignment: 13
// Size: 0x1230
class CDOTA_Modifier_Luna_Eclipse : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t radius; // 0x11dc
int32_t beams; // 0x11e0
int32_t hit_count; // 0x11e4
int32_t m_iBeamDamage; // 0x11e8
float beam_interval; // 0x11ec
float stun_duration; // 0x11f0
Vector vPosition; // 0x11f4
bool bAreaTarget; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_iTickCount; // 0x1204
ParticleIndex_t m_nMoonlightFXIndex; // 0x1208
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1210
float m_flBeamStun; // 0x1228
};
// Alignment: 6
// Size: 0x578
class CDOTA_Ability_DragonKnight_BreatheFire : public CDOTABaseAbility
{
public:
int32_t start_radius; // 0x558
int32_t end_radius; // 0x55c
float damage; // 0x560
Vector m_vStartPos; // 0x564
GameTime_t m_fStartTime; // 0x570
float m_fTotalTime; // 0x574
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_BreatheFire_Reduction : public CDOTA_Buff
{
public:
int32_t reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DragonKnight_DragonTail : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DragonKnight_DragonBlood : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_DragonBlood_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_DragonBlood : public CDOTA_Buff
{
public:
int32_t bonus_health_regen; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DragonKnight_ElderDragonForm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_DragonKnight_DragonForm : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_attack_damage; // 0x11dc
int32_t bonus_attack_range; // 0x11e0
int32_t attack_projectile_speed_bonus; // 0x11e4
int32_t magic_resistance; // 0x11e8
int32_t model_scale; // 0x11ec
int32_t iLevel; // 0x11f0
int32_t m_iOriginalAttackCapabilities; // 0x11f4
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_CorrosiveBreath : public CDOTA_Buff
{
public:
float corrosive_breath_duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_CorrosiveBreathDoT : public CDOTA_Buff
{
public:
int32_t corrosive_breath_damage; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_DragonKnight_SplashAttack : public CDOTA_Buff
{
public:
int32_t splash_radius; // 0x11d8
int32_t splash_damage_percent; // 0x11dc
float corrosive_breath_duration; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_FrostBreath : public CDOTA_Buff
{
public:
float frost_duration; // 0x11d8
float frost_aoe; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_FrostBreath_Slow : public CDOTA_Buff
{
public:
int32_t frost_bonus_movement_speed; // 0x11d8
int32_t frost_bonus_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DragonKnight_BlackDragon_Tooltip : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DragonKnight_Fireball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_Fireball_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float linger_duration; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DragonKnight_Fireball_Burn : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Good_Juju : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Dazzle_Good_Juju : public CDOTA_Buff
{
public:
float cooldown_reduction; // 0x11d8
float item_cooldown_reduction; // 0x11dc
float duration; // 0x11e0
int32_t radius; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Bad_Juju : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dazzle_Bad_Juju_Manacost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dazzle_Bad_Juju_Armor_Counter : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float armor_reduction; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dazzle_Bad_Juju_Armor : public CDOTA_Buff
{
public:
float armor_reduction; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Rain_Of_Vermin : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Dazzle_Rain_Of_Vermin : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float interval; // 0x11dc
float hex_chance; // 0x11e0
float hex_duration; // 0x11e4
int32_t damage; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Poison_Touch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Dazzle_Poison_Touch : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
float bonus_slow; // 0x11dc
int32_t bonus_damage; // 0x11e0
float flAccummulatedBonusSlow; // 0x11e4
int32_t iAccummulatedBonusDamage; // 0x11e8
int32_t attack_range_bonus; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Dazzle_Poison_Touch_Self : public CDOTA_Buff
{
public:
int32_t attack_range_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Shallow_Grave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Dazzle_Shallow_Grave : public CDOTA_Buff
{
public:
bool m_bHasPostedEvent; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
ParticleIndex_t m_nFXIndex; // 0x11dc
float fx_halo_height; // 0x11e0
int32_t heal_amplify; // 0x11e4
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_Dazzle_ShadowWave : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x558
int32_t bounce_radius; // 0x570
int32_t damage_radius; // 0x574
int32_t damage; // 0x578
int32_t max_targets; // 0x57c
float scepter_heal_pct; // 0x580
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dazzle_Weave : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dazzle_Weave_Armor : public CDOTA_Buff
{
public:
float armor_per_second; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Leshrac_Split_Earth : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Split_Earth_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Leshrac_Diabolic_Edict : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Leshrac_Diabolic_Edict : public CDOTA_Buff
{
public:
int32_t num_explosions; // 0x11d8
int32_t radius; // 0x11dc
float m_fExplosions; // 0x11e0
float tower_bonus; // 0x11e4
bool m_bTalentActive; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Leshrac_Lightning_Storm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Lightning_Storm_Scepter_Thinker : public CDOTA_Buff
{
public:
float interval_scepter; // 0x11d8
};
// Alignment: 13
// Size: 0x1228
class CDOTA_Modifier_Leshrac_Lightning_Storm : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t radius; // 0x11dc
int32_t jump_count; // 0x11e0
float slow_duration; // 0x11e4
float jump_delay; // 0x11e8
CHandle< CBaseEntity > hInitialTarget; // 0x11ec
float m_flDamage; // 0x11f0
int32_t m_iCurJumpCount; // 0x11f4
Vector m_vCurTargetLoc; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1208
bool m_bGrantedGem; // 0x1220
bool m_bBounceTwice; // 0x1221
private:
[[maybe_unused]] uint8_t __pad1222[0x2]; // 0x1222
public:
CHandle< CBaseEntity > m_eLastTarget; // 0x1224
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Lightning_Storm_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Leshrac_Greater_Lightning_Storm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Decrepify_Aura : public CDOTA_Buff
{
public:
int32_t magic_amp; // 0x11d8
int32_t slow; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Decrepify : public CDOTA_Buff
{
public:
int32_t magic_amp; // 0x11d8
int32_t slow; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Leshrac_Greater_Lightning_Storm : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float interval; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Leshrac_Pulse_Nova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Leshrac_Pulse_Nova : public CDOTA_Buff
{
public:
bool m_bFirst; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0xb]; // 0x11d9
public:
int32_t damage_resistance; // 0x11e4
int32_t bonus_movespeed; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Leshrac_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rattletrap_Overclocking : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Rattletrap_Overclocking : public CDOTA_Buff
{
public:
ParticleIndex_t m_nOverclockFX; // 0x11d8
int32_t bonus_movement_speed; // 0x11dc
int32_t bonus_attack_speed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rattletrap_BatteryAssault : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_BatteryAssault : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rattletrap_PowerCogs : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_Cog_Barrier : public CDOTA_Buff
{
public:
int32_t magic_barrier; // 0x11d8
int32_t m_nAbsorbRemaining; // 0x11dc
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Rattletrap_Cog_Thinker : public CDOTA_Buff
{
public:
int32_t cogs_radius; // 0x11d8
int32_t extra_pull_buffer; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rattletrap_Cog_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_Cog_Thinker_Leash : public CDOTA_Buff
{
public:
int32_t cogs_radius; // 0x11d8
int32_t extra_pull_buffer; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_Cog_Leash : public CDOTA_Buff
{
public:
int32_t leash; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_Cog_Thinker_Talent : public CDOTA_Buff
{
public:
int32_t cogs_radius; // 0x11d8
int32_t extra_pull_buffer; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rattletrap_Cog_Immune : public CDOTA_Modifier_DebuffImmune
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_Cog_Thinker_Self_Bonuses : public CDOTA_Buff
{
public:
int32_t cogs_radius; // 0x11d8
int32_t extra_pull_buffer; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rattletrap_Cog_Self_Bonuses : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1208
class CDOTA_Modifier_Rattletrap_Cog : public CDOTA_Buff
{
public:
bool m_bEnabled; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t trigger_distance; // 0x11dc
int32_t push_length; // 0x11e0
float push_duration; // 0x11e4
int32_t cogs_radius; // 0x11e8
int32_t attacks_to_destroy; // 0x11ec
int32_t m_iCogIndex; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11f4
Vector vCenter; // 0x11f8
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Rattletrap_CogPush : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
Vector m_vDirection; // 0x11dc
float m_flEndTime; // 0x11e8
float m_flCurTime; // 0x11ec
int32_t push_length; // 0x11f0
float push_duration; // 0x11f4
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Rattletrap_RocketFlare : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vecEnemyHeroesInFog; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_RocketFlare_Slow : public CDOTA_Buff
{
public:
float slow_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Clockwerk_RocketFlare_Thinker : public CDOTA_Buff
{
public:
float radius; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Rattletrap_RocketFlare : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Rattletrap_RocketFlare_Overclock : public CDOTA_Buff
{
public:
float rocket_flare_interval; // 0x11d8
int32_t rocket_flare_offset_pct; // 0x11dc
int32_t rocket_flare_rockets; // 0x11e0
int32_t m_nRocketsFired; // 0x11e4
int32_t radius; // 0x11e8
Vector m_vOriginalTarget; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rattletrap_JetPack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1250
class CDOTA_Modifier_Rattletrap_JetPack : public CDOTA_Buff
{
public:
int32_t bonus_speed; // 0x11d8
float turn_rate; // 0x11dc
GameTime_t m_flStartTime; // 0x11e0
float tick_interval; // 0x11e4
float m_flFacingTarget; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
CUtlVector< float32 > m_flTurnHistory; // 0x11f0
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1208
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x1220
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x1238
};
// Alignment: 4
// Size: 0x578
class CDOTA_Ability_Rattletrap_Hookshot : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
Vector m_vProjectileVelocity; // 0x55c
bool m_bRetract; // 0x568
private:
[[maybe_unused]] uint8_t __pad0569[0xb]; // 0x569
public:
CHandle< CBaseEntity > m_hSourceCaster; // 0x574
};
// Alignment: 7
// Size: 0x1218
class CDOTA_Modifier_Rattletrap_Hookshot : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hDamaged; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11f0
Vector m_vStartPosition; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad1200[0x8]; // 0x1200
public:
int32_t speed; // 0x1208
float stun_radius; // 0x120c
float damage; // 0x1210
float duration; // 0x1214
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clockwerk_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furion_Greater_Sprout : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Furion_Sprout : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
int32_t m_iShardCount; // 0x55c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_Sprout_Blind_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Furion_Sprout_Blind : public CDOTA_Buff
{
public:
int32_t blind_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_Sprout_Tether_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_Sprout_Tether : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_Sprout_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_Sprout_Entangle : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Furion_Teleportation : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndexStart; // 0x558
ParticleIndex_t m_nFXIndexEnd; // 0x55c
ParticleIndex_t m_nFXIndexEndTeam; // 0x560
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Furion_Arboreal_Might_Attack_Damage : public CDOTA_Buff
{
public:
float damage_per_stack; // 0x11d8
int32_t iMaxStacks; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Furion_Arboreal_Might_Armor : public CDOTA_Buff
{
public:
float armor_per_stack; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furion_ForceOfNature : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furion_WrathOfNature : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Furion_WrathOfNature_Thinker : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t max_targets; // 0x11dc
int32_t damage_percent_add; // 0x11e0
float jump_delay; // 0x11e4
int32_t m_iFixedDamage; // 0x11e8
GameTime_t m_flLastTickTime; // 0x11ec
float m_flTimeAccumulator; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitTargets; // 0x11f8
int32_t m_nBaseDamage; // 0x1210
int32_t m_nMaxTargets; // 0x1214
float m_flJumpDelay; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_WrathOfNature_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_WrathOfNature_BuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Furion_WrathOfNature_Spawn : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Furion_CurseOfTheForest : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Furion_CurseOfTheForest : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage_per_tree; // 0x11dc
int32_t slow_per_tree; // 0x11e0
int32_t m_nSlow; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Treant_Bonus : public CDOTA_Buff
{
public:
int32_t treant_hp_bonus; // 0x11d8
int32_t treant_damage_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Treant_Large_Bonus : public CDOTA_Buff
{
public:
int32_t treant_large_hp_bonus; // 0x11d8
int32_t treant_large_damage_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Furion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Furion_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Furion_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Furion_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Furion_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Feast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Feast : public CDOTA_Buff
{
public:
float hp_leech_percent; // 0x11d8
float hp_damage_percent; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Ghoul_Frenzy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Ghoul_Frenzy : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Ghoul_Frenzy_Slow : public CDOTA_Buff
{
public:
int32_t miss_pct; // 0x11d8
int32_t movement_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Open_Wounds : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1210
class CDOTA_Modifier_Life_Stealer_Open_Wounds : public CDOTA_Buff
{
public:
int32_t slow_steps[8]; // 0x11d8
int32_t heal_percent; // 0x11f8
int32_t m_nDamageTracker; // 0x11fc
int32_t damage_threshold; // 0x1200
int32_t spread_radius; // 0x1204
int32_t max_health_as_damage_pct; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Empty2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Empty3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Infest : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Life_Stealer_Infest : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nFXIndex; // 0x11dc
float self_regen; // 0x11e0
int32_t m_nStartingHealth; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Infest_Effect : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_health; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Infest_Enemy_Hero : public CDOTA_Buff
{
public:
float attack_rate_enemy; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Consume : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Control : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Infest_Creep : public CDOTA_Buff
{
public:
bool m_bChangedTeams; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Life_Stealer_Assimilate : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hLastAssimilation; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Life_Stealer_Assimilate : public CDOTA_Buff
{
public:
float order_lock_duration; // 0x11d8
GameTime_t m_fOrderLockDone; // 0x11dc
int32_t m_nFXIndex; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Life_Stealer_Assimilate_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_AssimilateEject : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Life_Stealer_Rage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Life_Stealer_Rage : public CDOTA_Buff
{
public:
int32_t movement_speed_bonus; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkSeer_Normal_Punch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1350
class CDOTA_Modifier_DarkSeer_Normal_Punch : public CDOTA_Buff
{
public:
Vector m_PositionIndex[30]; // 0x11d8
ParticleIndex_t m_nNormalPunchBuffIndex; // 0x1340
float m_flDistanceTraveled; // 0x1344
bool m_bIsValidTarget; // 0x1348
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_DarkSeer_Normal_Punch_Illusion_Thinker : public CDOTA_Buff
{
public:
Vector m_vecIllusionSpawnPosition; // 0x11d8
int32_t speed; // 0x11e4
CHandle< CBaseEntity > m_hTarget; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_DarkSeer_Vacuum : public CDOTABaseAbility
{
public:
Vector m_vPullLocation; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_Vacuum : public CDOTA_Buff
{
public:
float pull_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkSeer_IonShell : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_IonShell : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage_per_second; // 0x11dc
float tick_interval; // 0x11e0
int32_t bonus_health; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_IonShell_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkSeer_Surge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_DarkSeer_Surge : public CDOTA_Buff
{
public:
int32_t speed_boost; // 0x11d8
int32_t trail_radius; // 0x11dc
float trail_duration; // 0x11e0
Vector m_vLastTrailThinkerLocation; // 0x11e4
bool m_bTrailStarted; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_Surge_Trail_Thinker : public CDOTA_Buff
{
public:
int32_t trail_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_DarkSeer_Surge_Trail : public CDOTA_Buff
{
public:
int32_t trail_move_slow; // 0x11d8
int32_t trail_damage; // 0x11dc
float trail_damage_interval; // 0x11e0
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_DarkSeer_WallOfReplica : public CDOTABaseAbility
{
public:
int32_t width; // 0x558
Vector m_vEndpoint; // 0x55c
Vector m_vSlashDir; // 0x568
int32_t m_nDashProjectileID; // 0x574
Vector m_vDashProjectileLocation; // 0x578
};
// Alignment: 7
// Size: 0x1240
class CDOTA_Modifier_DarkSeer_WallOfReplica : public CDOTA_Buff
{
public:
Vector m_vWallDirection; // 0x11d8
Vector m_vWallRight; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11f0[0x18]; // 0x11f0
public:
CUtlMap< int32, GameTime_t > m_PreventReplicateTime; // 0x1208
int32_t width; // 0x1228
float slow_duration; // 0x122c
int32_t replica_damage_incoming; // 0x1230
int32_t replica_damage_outgoing; // 0x1234
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_WallOfReplica_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_WallOfReplica_Illusion : public CDOTA_Buff
{
public:
int32_t replica_scale; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_Normal_Punch_Illusion : public CDOTA_Buff
{
public:
int32_t replica_scale; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkSeer_IonShell_IllusionInvulnerability : public CDOTA_Modifier_Invulnerable
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dark_Seer_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Clinkz_SearingArrows : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1200
class CDOTA_Modifier_Clinkz_SearingArrows : public CDOTA_Buff
{
public:
int32_t damage_bonus; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
bool m_bBonusAttack; // 0x11f8
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Clinkz_DeathPact : public CDOTABaseAbility
{
public:
int32_t m_nDevourFirstSlot; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< CHandle< CBaseEntity > > m_hSkeletonSummons; // 0x560
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Clinkz_DeathPact : public CDOTA_Buff
{
public:
int32_t health_gain; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Clinkz_DeathPact_Permanent_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Clinkz_Burning_Army : public CDOTABaseAbility
{
public:
int32_t range; // 0x558
Vector m_vEndpoint; // 0x55c
Vector m_vSlashDir; // 0x568
int32_t m_nDashProjectileID; // 0x574
Vector m_vDashProjectileLocation; // 0x578
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Clinkz_Burning_Army_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
int32_t count; // 0x11dc
int32_t range; // 0x11e0
Vector m_vFacePosition; // 0x11e4
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Clinkz_Burning_Army : public CDOTA_Buff
{
public:
float attack_rate; // 0x11d8
int32_t damage_percent; // 0x11dc
int32_t skeleton_health; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
int32_t skeleton_building_damage_reduction; // 0x11e8
int32_t m_nDamageCounter; // 0x11ec
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Clinkz_WindWalk : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hSkeletonSummons; // 0x558
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Clinkz_WindWalk : public CDOTA_Modifier_Invisible
{
public:
int32_t move_speed_bonus_pct; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Clinkz_Strafe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Clinkz_Strafe : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus; // 0x11d8
int32_t attack_range_bonus; // 0x11dc
int32_t archer_attack_speed_pct; // 0x11e0
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Clinkz_BurningBarrage : public CDOTABaseAbility
{
public:
Vector m_vStartPos; // 0x558
int32_t m_iArrowProjectile; // 0x564
int32_t m_nFXIndex; // 0x568
float arrow_speed; // 0x56c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Clinkz_BurningBarrage_DamageReduction : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1218
class CDOTA_Modifier_Clinkz_BurningBarrage : public CDOTA_Buff
{
public:
int32_t m_iArrowCount; // 0x11d8
Vector m_vOriginalTarget; // 0x11dc
int32_t arrow_width; // 0x11e8
float arrow_speed; // 0x11ec
float arrow_range_multiplier; // 0x11f0
int32_t wave_count; // 0x11f4
int32_t arrow_count_per_wave; // 0x11f8
int32_t arrow_angle; // 0x11fc
int32_t m_iLoopCount; // 0x1200
float m_flInterval; // 0x1204
float m_flCycleDelay; // 0x1208
float m_flTimeWaste; // 0x120c
GameTime_t m_flExpectedTime; // 0x1210
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Clinkz_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Clinkz_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Clinkz_Tar_Bomb : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Clinkz_Tar_Bomb_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float slow_duration; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Clinkz_Tar_Bomb_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
};
// Alignment: 3
// Size: 0x1200
class CDOTA_Modifier_Clinkz_Tar_Bomb_SearingArrows : public CDOTA_Buff
{
public:
int32_t damage_bonus; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
bool m_bBonusAttack; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Hammer_Of_Purity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_HammerOfPurity : public CDOTA_Buff
{
public:
GameTime_t m_flNextAttackTime; // 0x11d8
float attack_cooldown; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_Hammer_Of_Purity_Bomb : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Angelic_Flight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_Angelic_Flight : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t hp_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Purification : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Pacify : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_Pacify : public CDOTA_Buff
{
public:
int32_t spell_resistance_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Repel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Omniknight_Repel : public CDOTA_Buff
{
public:
int32_t status_resistance; // 0x11d8
float hp_regen; // 0x11dc
int32_t bonus_str; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Degen_Aura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_Degen_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_Degen_Aura_Effect : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_Martyr : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Omniknight_Marty : public CDOTA_Buff
{
public:
int32_t base_strength; // 0x11d8
int32_t base_hpregen; // 0x11dc
int32_t strength_bonus; // 0x11e0
int32_t nDebuffAmount; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Omniknight_GuardianAngel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Omniknight_GuardianAngel : public CDOTA_Buff
{
public:
int32_t scepter_status_resist; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Enchantress_Little_Friends : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t radius; // 0x55c
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Enchantress_Little_Friends_Kill_Credit : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Enchantress_Little_Friends_Aura : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nAlliesTaunted; // 0x11dc
bool m_bRelicTriggered; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t radius; // 0x11e4
int32_t damage_amplification; // 0x11e8
int32_t damage_reduction; // 0x11ec
GameTime_t m_flLastSeen; // 0x11f0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Enchantress_Little_Friends : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
CHandle< CBaseEntity > m_hDesiredTarget; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
int32_t bonus_move_speed; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enchantress_Bunny_Hop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Enchantress_Bunny_Hop : public CDOTA_Buff
{
public:
float hop_duration; // 0x11d8
int32_t hop_height; // 0x11dc
int32_t hop_distance; // 0x11e0
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
float m_flJumpDuration; // 0x11ec
float m_flJumpHeight; // 0x11f0
Vector m_vTargetHorizontalDirection; // 0x11f4
CUtlVector< CHandle< CBaseEntity > > hUnitsToHit; // 0x1200
bool m_bLaunched; // 0x1218
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enchantress_Untouchable : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Enchantress_Untouchable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Enchantress_Untouchable_Slow : public CDOTA_Buff
{
public:
int32_t slow_attack_speed; // 0x11d8
ParticleIndex_t m_nStatusFXIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Enchantress_Enchant : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hUnits; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Enchantress_Enchant : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Enchantress_Enchant_Controlled : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t enchant_health; // 0x11dc
int32_t enchant_armor; // 0x11e0
int32_t enchant_damage; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Enchantress_Enchant_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enchantress_NaturesAttendants : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Enchantress_NaturesAttendants_Shard : public CDOTA_Buff
{
public:
float heal_interval; // 0x11d8
float heal; // 0x11dc
int32_t radius; // 0x11e0
int32_t shard_permanent_wisp_count; // 0x11e4
bool m_bActive; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
ParticleIndex_t m_nWispFXIndex; // 0x11ec
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Enchantress_NaturesAttendants : public CDOTA_Buff
{
public:
float heal_interval; // 0x11d8
float heal; // 0x11dc
int32_t radius; // 0x11e0
int32_t wisp_count; // 0x11e4
int32_t movespeed; // 0x11e8
ParticleIndex_t m_nWispFXIndex; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Enchantress_Impetus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Enchantress_Impetus : public CDOTA_Buff
{
public:
float distance_damage_pct; // 0x11d8
int32_t distance_cap; // 0x11dc
float creep_multiplier; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Huskar_Inner_Fire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Huskar_Inner_Fire_Knockback : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float knockback_distance; // 0x11ec
float knockback_duration; // 0x11f0
float effective_distance; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Huskar_Inner_Fire_Disarm : public CDOTA_Buff
{
public:
int32_t movement_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Huskar_Inner_Vitality : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Huskar_Inner_Vitality : public CDOTA_Buff
{
public:
int32_t heal; // 0x11d8
float attrib_bonus; // 0x11dc
float hurt_attrib_bonus; // 0x11e0
float hurt_percent; // 0x11e4
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Huskar_Burning_Spear_Self : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
float duration; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Huskar_Burning_Spear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Huskar_Burning_Spear_Counter : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Huskar_Burning_Spear_Debuff : public CDOTA_Buff
{
public:
int32_t burn_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Huskar_Berserkers_Blood : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Huskar_Berserkers_Blood : public CDOTA_Buff
{
public:
int32_t maximum_health_regen; // 0x11d8
int32_t maximum_attack_speed; // 0x11dc
int32_t maximum_magic_resist; // 0x11e0
int32_t hp_threshold_max; // 0x11e4
};
// Alignment: 3
// Size: 0x580
class CDOTA_Ability_Huskar_Life_Break : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
CHandle< CBaseEntity > m_hTarget; // 0x574
bool m_bInterrupted; // 0x578
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Huskar_Life_Break_Taunt : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
bool m_bDidSetAttackTarget; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Huskar_Life_Break_Charge : public CDOTA_Modifier_DebuffImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Huskar_Life_Break : public CDOTA_Modifier_MoveSpeed_Percentage
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NightStalker_Void : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_NightStalker_Void : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_NightStalker_Void_ZoneThinker : public CDOTA_Buff
{
public:
int32_t radius_scepter; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NightStalker_Void_Zone : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NightStalker_CripplingFear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_NightStalker_CripplingFear_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_NightStalker_CripplingFear : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NightStalker_HunterInTheNight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_NightStalker_HunterInTheNight : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed_pct_night; // 0x11d8
int32_t bonus_attack_speed_night; // 0x11dc
int32_t bonus_status_resist_night; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
bool m_bIsDay; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NightStalker_Darkness : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_NightStalker_Darkness : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t status_resistance; // 0x11dc
int32_t hp_regen; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
bool m_bIsDay; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Night_Stalker_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_SpawnSpiderlings : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpawnSpiderlings : public CDOTA_Buff
{
public:
float spiderling_duration; // 0x11d8
int32_t count; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpawnSpiderlingsShard : public CDOTA_Buff
{
public:
float shard_spiderling_duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_Spider_HP : public CDOTA_Buff
{
public:
int32_t hp_bonus; // 0x11d8
int32_t damage_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_SpawnSpiderite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpawnSpiderite : public CDOTA_Buff
{
public:
float buff_duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpawnSpideriteDebuff : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hParentSpider; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_PoisonSting : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_PoisonSting : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float duration_hero; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_PoisonStingDebuff : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
int32_t movement_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Broodmother_SpinWeb_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Broodmother_SpinWeb : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hWebs; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpinWeb_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Broodmother_SpinWebInvisibleApplier : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_SpinWeb_Slowed : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Broodmother_SpinWeb : public CDOTA_Buff
{
public:
int32_t heath_regen; // 0x11d8
int32_t bonus_movespeed; // 0x11dc
int32_t bonus_movespeed_scepter; // 0x11e0
float bonus_turn_rate; // 0x11e4
float flLastDamageTime; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Broodmother_SpinWeb_NoTreeWalking : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_SpinWeb_Destroy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_IncapacitatingBite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_IncapacitatingBite : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_IncapacitatingBiteOrb : public CDOTA_Buff
{
public:
int32_t miss_chance; // 0x11d8
int32_t bonus_movespeed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Broodmother_InsatiableHunger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Broodmother_InsatiableHunger : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t lifesteal_pct; // 0x11dc
float slow_duration; // 0x11e0
float bat_bonus; // 0x11e4
float shard_damage_tick_interval; // 0x11e8
int32_t damage_tick_count; // 0x11ec
int32_t shard_damage_per_tick; // 0x11f0
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Broodmother_Silken_Bola : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Broodmother_Silken_Bola : public CDOTA_Buff
{
public:
int32_t attack_damage; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t miss_chance; // 0x11e0
int32_t shard_miss_chance; // 0x11e4
};
// Alignment: 5
// Size: 0x5a0
class CDOTA_Ability_Broodmother_StickySnare : public CDOTABaseAbility
{
public:
Vector m_vEndpoint; // 0x558
float duration; // 0x564
int32_t width; // 0x568
bool m_bStolenSnareCheck; // 0x56c
private:
[[maybe_unused]] uint8_t __pad056d[0x1b]; // 0x56d
public:
CUtlVector< CHandle< CBaseEntity > > m_vecSnares; // 0x588
};
// Alignment: 14
// Size: 0x1240
class CDOTA_Modifier_Broodmother_StickySnare : public CDOTA_Buff
{
public:
Vector m_vOrigin; // 0x11d8
Vector m_vWallDirection; // 0x11e4
Vector m_vWallRight; // 0x11f0
int32_t width; // 0x11fc
float root_duration; // 0x1200
float formation_delay; // 0x1204
bool m_bTouching; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
CHandle< CBaseEntity > m_hRight; // 0x120c
bool m_bParticle; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1211[0x3]; // 0x1211
public:
GameTime_t m_flStartingTime; // 0x1214
int32_t m_nFoWID; // 0x1218
int32_t m_nTeamID; // 0x121c
CUtlVector< CHandle< CBaseEntity > > m_vecAffectedHeroes; // 0x1220
ParticleIndex_t m_nWarmupFXIndex; // 0x1238
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Broodmother_StickySnare_Root : public CDOTA_Buff
{
public:
float damage_per_second; // 0x11d8
bool m_bFirstSecond; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Broodmother_Tough : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_BountyHunter_Track : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
int32_t m_nParentGold; // 0x11dc
int32_t target_crit_multiplier; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_BountyHunter_ShurikenToss : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
CHandle< CBaseEntity > m_hSourceCaster; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BountyHunter_Jinada : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_BountyHunter_Jinada : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t gold_steal; // 0x11dc
ParticleIndex_t m_nFXIndexA; // 0x11e0
ParticleIndex_t m_nFXIndexB; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BountyHunter_WindWalk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1208
class CDOTA_Modifier_BountyHunter_WindWalk : public CDOTA_Modifier_Invisible
{
public:
int32_t damage_reduction_pct; // 0x11e8
float shard_stun_duration; // 0x11ec
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BountyHunter_WindWalk_Fade : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_BountyHunter_WindWalk_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t attack_slow; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_BountyHunter_Track : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTrap; // 0x558
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_BountyHunter_Track_Bear_Trap : public CDOTA_Modifier_Invisible
{
public:
bool m_bActivated; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BountyHunter_TrackEffect : public CDOTA_Buff
{
public:
int32_t bonus_move_speed_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_BountyHunter_Lookout : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_BountyHunter_Lookout : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Weaver_TheSwarm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Weaver_Swarm : public CDOTA_Buff
{
public:
int32_t m_iMaxDist; // 0x11d8
int32_t m_iAttackCount; // 0x11dc
int32_t destroy_attacks; // 0x11e0
Vector m_vDirection; // 0x11e4
Vector m_vStartLoc; // 0x11f0
CHandle< CBaseEntity > m_hAttachTarget; // 0x11fc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Weaver_Swarm_Debuff : public CDOTA_Buff
{
public:
float armor_reduction; // 0x11d8
int32_t damage; // 0x11dc
float m_flCurrentArmorReduction; // 0x11e0
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Weaver_Shukuchi : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t radius; // 0x55c
int32_t damage; // 0x560
float fade_time; // 0x564
};
// Alignment: 5
// Size: 0x1210
class CDOTA_Modifier_Weaver_Shukuchi : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
int32_t damage; // 0x11ec
int32_t speed; // 0x11f0
float geminate_attack_mark_duration; // 0x11f4
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Weaver_Shukuchi_GeminateAttackMark : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Weaver_GeminateAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Weaver_GeminateAttack : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_iAttacksRemaining; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Weaver_GeminateAttack_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Weaver_TimeLapse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nNPCSpawnedID; // 0x568
};
// Alignment: 4
// Size: 0x12b8
class CDOTA_Modifier_Weaver_TimeLapse : public CDOTA_Buff
{
public:
Vector m_PositionIndex[11]; // 0x11d8
float m_flLife[11]; // 0x125c
float m_flMana[11]; // 0x1288
bool m_bHasValidHistory; // 0x12b4
};
// Alignment: 2
// Size: 0x580
class CDOTA_Ability_Jakiro_DualBreath : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitHeroes; // 0x558
bool m_bGrantedGem; // 0x570
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Jakiro_DualBreath_Thinker : public CDOTA_Buff
{
public:
int32_t start_radius; // 0x11d8
int32_t end_radius; // 0x11dc
GameTime_t m_fStartTime; // 0x11e0
float m_fTotalTime; // 0x11e4
Vector m_vCastPosition; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Jakiro_DualBreath_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed_pct; // 0x11d8
int32_t slow_attack_speed_pct; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Jakiro_DualBreath_Burn : public CDOTA_Buff
{
public:
bool m_bFirst; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t burn_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jakiro_IcePath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jakiro_IcePath_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1230
class CDOTA_Modifier_Jakiro_IcePath_Thinker : public CDOTA_Buff
{
public:
float path_delay; // 0x11d8
int32_t path_radius; // 0x11dc
int32_t m_nDamage; // 0x11e0
float m_flRadius; // 0x11e4
float stun_duration; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< CHandle< CBaseEntity > > m_hUnitsHit; // 0x11f0
Vector m_vPathStart; // 0x1208
Vector m_vPathEnd; // 0x1214
GameTime_t m_fStartTime; // 0x1220
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jakiro_Liquid_Ice : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Jakiro_LiquidIce : public CDOTA_Buff
{
public:
float duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
int32_t radius; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x11fc
bool m_bForceProc; // 0x1200
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Jakiro_LiquidIce_Debuff : public CDOTA_Buff
{
public:
int32_t base_damage; // 0x11d8
float pct_health_damage; // 0x11dc
int32_t movement_slow; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jakiro_Liquid_Fire : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Jakiro_LiquidFire : public CDOTA_Buff
{
public:
float duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
int32_t radius; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x11fc
bool m_bForceProc; // 0x1200
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Jakiro_LiquidFire_Burn : public CDOTA_Buff
{
public:
int32_t slow_attack_speed_pct; // 0x11d8
float damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Jakiro_Macropyre : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Jakiro_Macropyre_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
float burn_interval; // 0x11e4
int32_t path_radius; // 0x11e8
int32_t cast_range; // 0x11ec
float linger_duration; // 0x11f0
bool m_bTestedGem; // 0x11f4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Jakiro_Macropyre_Burn : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_scepter; // 0x11dc
float burn_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Jakiro_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Batrider_StickyNapalm_Application_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Batrider_StickyNapalm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Batrider_StickyNapalm_Application : public CDOTA_Buff
{
public:
bool m_bShouldApply; // 0x11d8
};
// Alignment: 6
// Size: 0x1210
class CDOTA_Modifier_Batrider_StickyNapalm : public CDOTA_Modifier_Stacking_Base
{
public:
float movement_speed_pct; // 0x11f8
int32_t turn_rate_pct; // 0x11fc
int32_t damage; // 0x1200
int32_t application_damage; // 0x1204
ParticleIndex_t m_nFXIndex; // 0x1208
ParticleIndex_t m_nFXStackIndex; // 0x120c
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Batrider_Flamebreak : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Ability_Batrider_Flamebreak_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Batrider_Flamebreak_Damage : public CDOTA_Buff
{
public:
int32_t damage_impact; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t slow; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Batrider_Firefly : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1228
class CDOTA_Modifier_Batrider_Firefly : public CDOTA_Buff
{
public:
bool m_bActive; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t radius; // 0x11dc
int32_t m_ifirefly_Active; // 0x11e0
int32_t tree_radius; // 0x11e4
int32_t damage_per_second; // 0x11e8
int32_t movement_speed; // 0x11ec
float tick_interval; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11f4
ParticleIndex_t m_nFXIndexB; // 0x11f8
GameTime_t m_fNextDamageTick; // 0x11fc
Vector m_vLastFirePoolLoc; // 0x1200
int32_t bonus_vision; // 0x120c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Batrider_FlamingLasso : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Batrider_FlamingLasso : public CDOTA_Buff
{
public:
float tick_rate; // 0x11d8
int32_t drag_distance; // 0x11dc
int32_t break_distance; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
Vector vPreviousLocation; // 0x11e8
CHandle< CDOTA_BaseNPC > m_hAnchor; // 0x11f4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Batrider_FlamingLasso_Self : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Batrider_FlamingLasso_Damage : public CDOTA_Buff
{
public:
int32_t max_ticks; // 0x11d8
float damage; // 0x11dc
float duration; // 0x11e0
float tick_rate; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Batrider_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_Penitence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Chen_Penitence : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_damage_taken; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Chen_Penitence_Attack_Speed_Buff : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_TestOfFaith : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_DivineFavor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Chen_Divine_Favor_Teleport : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
float teleport_delay; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Chen_DivineFavor_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Chen_DivineFavor : public CDOTA_Buff
{
public:
int32_t armor; // 0x11d8
float heal_rate; // 0x11dc
int32_t creep_bonus; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_TestOfFaithTeleport : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Chen_HolyPersuasion : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hDominatedUnits; // 0x558
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Chen_HolyPersuasion : public CDOTA_Buff
{
public:
int32_t health_min; // 0x11d8
int32_t new_max; // 0x11dc
int32_t health_bonus; // 0x11e0
int32_t damage_bonus; // 0x11e4
int32_t movement_speed_bonus; // 0x11e8
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Chen_TestOfFaith_Teleport : public CDOTA_Buff
{
public:
bool bToChen; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_HandOfGod : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Chen_HandOfGod_Hot : public CDOTA_Buff
{
public:
int32_t heal_per_second; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Chen_Martyrdom : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chen_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Spectre_Arcana : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spectre_Desolate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spectre_Desolate : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 7
// Size: 0x1220
class CDOTA_Modifier_Spectre_SpectralDaggerPath : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x18]; // 0x11d8
public:
CUtlVector< CHandle< CBaseEntity > > m_hUnitsInPath; // 0x11f0
int32_t path_radius; // 0x1208
int32_t vision_radius; // 0x120c
int32_t dagger_radius; // 0x1210
float buff_persistence; // 0x1214
float dagger_grace_period; // 0x1218
float dagger_path_duration; // 0x121c
};
// Alignment: 9
// Size: 0x5b0
class CDOTA_Ability_Spectre_SpectralDagger : public CDOTABaseAbility
{
public:
float dagger_path_duration; // 0x558
float hero_path_duration; // 0x55c
float m_fCreateInterval; // 0x560
GameTime_t m_fLastCreate; // 0x564
Vector m_vecLastPosition; // 0x568
bool m_bIsTrackingProjectile; // 0x574
private:
[[maybe_unused]] uint8_t __pad0575[0x3]; // 0x575
public:
CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x578
CUtlVector< CHandle< CBaseEntity > > m_hUnitsHit; // 0x590
CHandle< CBaseEntity > m_hTrackingTarget; // 0x5a8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Spectre_SpectralDagger : public CDOTA_Buff
{
public:
int32_t path_radius; // 0x11d8
float hero_path_duration; // 0x11dc
Vector m_vLastPosition; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spectre_SpectralDaggerInPath : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
CHandle< CBaseEntity > m_hTrackingTarget; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spectre_SpectralDaggerPathPhased : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spectre_SpectralDaggerPath_ActivityModifierOnly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Spectre_Desolate_Blind : public CDOTA_Buff
{
public:
int32_t blind_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spectre_Dispersion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Spectre_Dispersion : public CDOTA_Buff
{
public:
int32_t damage_reflection_pct; // 0x11d8
int32_t min_radius; // 0x11dc
int32_t max_radius; // 0x11e0
int32_t activation_bonus_pct; // 0x11e4
GameTime_t m_flLastDispersionPulseEffectTime; // 0x11e8
float m_fDamageCounter; // 0x11ec
float m_fLastTime; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spectre_Dispersion_Memory : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spectre_Dispersion_Boost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spectre_Haunt : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spectre_Haunt_Single : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spectre_Haunt : public CDOTA_Buff
{
public:
GameTime_t m_fStartAttackTime; // 0x11d8
CHandle< CBaseEntity > hTarget; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Spectre_Reality : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spectre_Spectral_Dagger_Illusions : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Spectre_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
ParticleIndex_t m_nCasterFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_DoomBringer_Devour : public CDOTABaseAbility
{
public:
int32_t m_nDevourFirstSlot; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoomBringer_Devour_Hero_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DoomBringer_Devour : public CDOTA_Buff
{
public:
int32_t armor; // 0x11d8
int32_t magic_resist; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoomBringer_Devour_Hero_Ability : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DoomBringer_ScorchedEarth : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoomBringer_ScorchedEarth_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DoomBringer_ScorchedEarthEffect : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed_pct; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_DoomBringer_ScorchedEarthEffectAura : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
int32_t bonus_movement_speed_pct; // 0x11dc
int32_t radius; // 0x11e0
int32_t damage_per_hero; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DoomBringer_InfernalBlade : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_DoomBringer_InfernalBlade : public CDOTA_Buff
{
public:
bool m_bInfernalBladeAttack; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
ParticleIndex_t m_nFXIndex; // 0x11dc
float burn_duration; // 0x11e0
float ministun_duration; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DoomBringer_InfernalBlade_Burn : public CDOTA_Buff
{
public:
int32_t burn_damage; // 0x11d8
float burn_damage_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DoomBringer_Doom : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DoomBringer_Doom_Aura_Self : public CDOTA_Buff
{
public:
int32_t scepter_aura_radius; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_DoomBringer_Doom_Aura_Enemy : public CDOTA_Buff
{
public:
int32_t scepter_aura_radius; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_DoomBringer_Doom : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float duration; // 0x11dc
int32_t deniable_pct; // 0x11e0
float flElapsedTime; // 0x11e4
int32_t damage_amp; // 0x11e8
bool m_bDoesBreak; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoomBringer_Doom_Break : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DoomBringer_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DoomBringer_Empty2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x5d0
class CDOTA_Ability_SpiritBreaker_ChargeOfDarkness : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
bool m_bFinished; // 0x568
bool m_bInterrupted; // 0x569
bool m_bPlayedChargeAnimation; // 0x56a
private:
[[maybe_unused]] uint8_t __pad056b[0x1]; // 0x56b
public:
Vector m_vProjectileLocation; // 0x56c
Vector m_vTargetLocation; // 0x578
CHandle< CBaseEntity > m_hTarget; // 0x584
CUtlVector< CHandle< CBaseEntity > > m_hTrackingProjectileHits; // 0x588
CUtlVector< CDOTA_Tree* > m_hTrackingProjectileTrees; // 0x5a0
int32_t nFXIndex; // 0x5b8
int32_t m_iCurProjectileIndex; // 0x5bc
Vector m_vChargeStartPos; // 0x5c0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SpiritBreaker_GreaterBash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_SpiritBreaker_GreaterBash : public CDOTA_Buff
{
public:
int32_t chance_pct; // 0x11d8
float damage; // 0x11dc
float movespeed_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_SpiritBreaker_GreaterBash_Break : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_GreaterBash_Speed : public CDOTA_Buff
{
public:
int32_t bonus_movespeed_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_ChargeOfDarkness : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_ChargeOfDarknessTarget : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
CEntityIndex m_iChargeTargetEntityIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_ChargeOfDarknessVision : public CDOTA_Buff
{
public:
int32_t m_nFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_SpecialAttack : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SpiritBreaker_Bulldoze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_SpiritBreaker_Bulldoze : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t status_resistance; // 0x11dc
float damage_barrier; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SpiritBreaker_EmpoweringHaste : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_EmpoweringHasteAura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_SpiritBreaker_EmpoweringHaste : public CDOTA_Buff
{
public:
int32_t bonus_movespeed_pct_self; // 0x11d8
int32_t bonus_movespeed_pct_allies; // 0x11dc
int32_t bonus_movespeed_pct_extra; // 0x11e0
int32_t duration; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SpiritBreaker_NetherStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_NetherStrike_Vision : public CDOTA_Buff
{
public:
int32_t invis_threshold_pct; // 0x11d8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_SpiritBreaker_NetherStrike : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
bool m_bStrikeLanded; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
Vector m_vCastLocation; // 0x11e0
CHandle< CBaseEntity > m_hTarget; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_SpiritBreaker_PlanarPocket : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_SpiritBreaker_PlanarPocketAura : public CDOTA_Buff
{
public:
bool m_bHasActivated; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t radius; // 0x11dc
int32_t magic_resistance; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_SpiritBreaker_PlanarPocket : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hRedirectAbility; // 0x11d8
GameTick_t nRedirectTick; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Gyrocopter_Rocket_Barrage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Gyrocopter_Rocket_Barrage : public CDOTA_Buff
{
public:
int32_t rocket_damage; // 0x11d8
int32_t bonus_movement_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Gyrocopter_HomingMissile_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Gyrocopter_Homing_Missile : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 17
// Size: 0x1258
class CDOTA_Modifier_Gyrocopter_Homing_Missile : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nFXIndex2; // 0x11dc
int32_t hero_damage; // 0x11e0
int32_t acceleration; // 0x11e4
int32_t min_damage; // 0x11e8
int32_t max_distance; // 0x11ec
int32_t shard_radius; // 0x11f0
float shard_delay; // 0x11f4
float pre_flight_time; // 0x11f8
float stun_duration; // 0x11fc
int32_t m_nMissileDamage; // 0x1200
int32_t m_nTeamNumber; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1208[0x8]; // 0x1208
public:
float speed; // 0x1210
CHandle< CBaseEntity > m_hAttachTarget; // 0x1214
Vector m_vStartPosition; // 0x1218
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
CountdownTimer m_EnemyVision; // 0x1228
CountdownTimer m_MoveTime; // 0x1240
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Gyrocopter_Homing_Rocket_Barrage : public CDOTA_Buff
{
public:
int32_t rocket_damage; // 0x11d8
int32_t shard_radius; // 0x11dc
CHandle< CBaseEntity > m_hTarget; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Gyrocopter_Flak_Cannon : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Gyrocopter_Flak_Cannon : public CDOTA_Buff
{
public:
int32_t max_attacks; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t m_iNumAttacks; // 0x11e0
int32_t projectile_speed; // 0x11e4
int32_t radius; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Gyrocopter_Flak_Cannon_Scepter : public CDOTA_Buff
{
public:
float fire_rate; // 0x11d8
int32_t scepter_radius; // 0x11dc
int32_t m_iAttackRecord; // 0x11e0
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Gyrocopter_Call_Down : public CDOTABaseAbility
{
public:
Vector m_vEndpoint; // 0x558
int32_t range_scepter; // 0x564
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_Gyrocopter_Call_Down : public CDOTA_Buff
{
public:
int32_t slow_duration_first; // 0x11d8
int32_t slow_duration_second; // 0x11dc
int32_t damage_first; // 0x11e0
int32_t damage_second; // 0x11e4
int32_t damage_second_scepter; // 0x11e8
int32_t radius; // 0x11ec
float slow_first; // 0x11f0
float slow_second; // 0x11f4
bool m_bFirstStrike; // 0x11f8
bool m_bDelayed; // 0x11f9
bool m_bHalfDamage; // 0x11fa
private:
[[maybe_unused]] uint8_t __pad11fb[0x5]; // 0x11fb
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHitHeroes; // 0x1200
bool m_bHitInvisibleHeroes; // 0x1218
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Gyrocopter_Call_Down_Slow : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_AcidSpray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Alchemist_AcidSpray_Thinker : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t armor_allies; // 0x11dc
int32_t radius; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Alchemist_AcidSpray : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_UnstableConcoction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Alchemist_UnstableConcoctionThrow : public CDOTABaseAbility
{
public:
float m_fCookTime; // 0x558
Vector m_vProjectileLoc; // 0x55c
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Alchemist_UnstableConcoction : public CDOTA_Buff
{
public:
float brew_time; // 0x11d8
float brew_explosion; // 0x11dc
GameTime_t m_fStartTime; // 0x11e0
GameTime_t m_fLastAlertTime; // 0x11e4
ParticleIndex_t m_nConcoctionFXIndex; // 0x11e8
bool m_bHasStunned; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
int32_t damage_resistance; // 0x11f0
int32_t move_speed; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_GoblinsGreed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Alchemist_GoblinsGreed : public CDOTA_Buff
{
public:
CUtlVector< GameTime_t > m_DeathList; // 0x11d8
float damage; // 0x11f0
float duration; // 0x11f4
int32_t bonus_gold; // 0x11f8
int32_t bonus_bonus_gold; // 0x11fc
int32_t bonus_gold_cap; // 0x1200
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_ChemicalRage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Alchemist_ChemicalRageTransform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Alchemist_ChemicalRage : public CDOTA_Buff
{
public:
float base_attack_time; // 0x11d8
int32_t bonus_health; // 0x11dc
int32_t bonus_health_regen; // 0x11e0
float bonus_mana_regen; // 0x11e4
int32_t bonus_movespeed; // 0x11e8
ParticleIndex_t m_nFXAlchemistCRIndex; // 0x11ec
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Alchemist_Scepter_Bonus_Damage : public CDOTA_Buff
{
public:
int32_t scepter_bonus_damage; // 0x11d8
int32_t scepter_spell_amp; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_Berserk_Potion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Alchemist_Berserk_Potion : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t hp_regen; // 0x11dc
int32_t move_speed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Alchemist_Corrosive_Weaponry : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Alchemist_Self_Corrosive_Weaponry : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Alchemist_Corrosive_Weaponry_Debuff : public CDOTA_Buff
{
public:
int32_t slow_per_stack; // 0x11d8
float status_resist_per_stack; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Invoker_Instance : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x5b8
class CDOTA_Ability_Invoker_Invoke : public CDOTABaseAbility
{
public:
int32_t max_invoked_spells; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CDOTA_Modifier_Invoker_Instance* m_instances[3]; // 0x560
int32_t m_nCurInstanceSlot; // 0x578
bool m_bInvokedAbilitiesInitialized; // 0x57c
private:
[[maybe_unused]] uint8_t __pad057d[0x3]; // 0x57d
public:
CHandle< CBaseEntity > m_invokedAbilities[10]; // 0x580
Vector m_vecCurrentColor; // 0x5a8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_AttributeBonus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Invoker_InvokedBase : public CDOTABaseAbility
{
public:
// MNetworkEnable
int32_t m_nQuasLevel; // 0x558
// MNetworkEnable
int32_t m_nWexLevel; // 0x55c
// MNetworkEnable
int32_t m_nExortLevel; // 0x560
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_ColdSnap : public CDOTA_Ability_Invoker_InvokedBase
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Invoker_ColdSnap : public CDOTA_Buff
{
public:
float freeze_damage; // 0x11d8
float freeze_duration; // 0x11dc
float freeze_cooldown; // 0x11e0
float damage_trigger; // 0x11e4
CountdownTimer m_freezeCooldownTimer; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Invoker_ColdSnap_Freeze : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_GhostWalk : public CDOTA_Ability_Invoker_InvokedBase
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Invoker_GhostWalk_Self : public CDOTA_Modifier_Invisible
{
public:
int32_t self_slow; // 0x11e8
int32_t area_of_effect; // 0x11ec
float aura_fade_time; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_GhostWalk_Enemy : public CDOTA_Buff
{
public:
int32_t enemy_slow; // 0x11d8
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_Invoker_Tornado : public CDOTA_Ability_Invoker_InvokedBase
{
public:
int32_t vision_distance; // 0x568
float end_vision_duration; // 0x56c
float lift_duration; // 0x570
float base_damage; // 0x574
float quas_damage; // 0x578
float wex_damage; // 0x57c
};
// Alignment: 1
// Size: 0x11f8
class CDOTA_Modifier_Invoker_Tornado : public CDOTA_Modifier_Cyclone
{
public:
float m_flLandDamage; // 0x11f0
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_EMP : public CDOTA_Ability_Invoker_InvokedBase
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Invoker_EMP : public CDOTA_Buff
{
public:
int32_t area_of_effect; // 0x11d8
int32_t mana_burned; // 0x11dc
float damage_per_mana; // 0x11e0
CHandle< CBaseEntity > m_hPullThinker; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_EMP_Pull_Thinker : public CDOTA_Buff
{
public:
int32_t area_of_effect; // 0x11d8
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Invoker_EMP_Pull : public CDOTA_Buff
{
public:
int32_t shard_drag_speed; // 0x11d8
float aura_origin_x; // 0x11dc
float aura_origin_y; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
Vector m_vCenter; // 0x11e8
GameTime_t m_flLastThinkTime; // 0x11f4
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_Alacrity : public CDOTA_Ability_Invoker_InvokedBase
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Invoker_Alacrity : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 7
// Size: 0x590
class CDOTA_Ability_Invoker_ChaosMeteor : public CDOTA_Ability_Invoker_InvokedBase
{
public:
int32_t area_of_effect; // 0x568
float damage_interval; // 0x56c
int32_t vision_distance; // 0x570
float end_vision_duration; // 0x574
float main_damage; // 0x578
float burn_duration; // 0x57c
float burn_dps; // 0x580
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Invoker_ChaosMeteor_Land : public CDOTA_Buff
{
public:
Vector m_vDir; // 0x11d8
int32_t travel_speed; // 0x11e4
int32_t travel_distance; // 0x11e8
int32_t vision_distance; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_ChaosMeteor_Burn : public CDOTA_Buff
{
public:
float m_flDamagePerSecond; // 0x11d8
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_SunStrike : public CDOTA_Ability_Invoker_InvokedBase
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_SunStrike_Cataclysm_Thinker : public CDOTA_Buff
{
public:
float damage; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Invoker_SunStrike : public CDOTA_Buff
{
public:
int32_t area_of_effect; // 0x11d8
float damage; // 0x11dc
int32_t vision_distance; // 0x11e0
float vision_duration; // 0x11e4
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Invoker_SunStrike_Cataclysm : public CDOTA_Buff
{
public:
int32_t area_of_effect; // 0x11d8
float damage; // 0x11dc
int32_t vision_distance; // 0x11e0
float vision_duration; // 0x11e4
Vector m_vSoundPos; // 0x11e8
bool m_bPlaySound; // 0x11f4
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Invoker_ForgeSpirit : public CDOTA_Ability_Invoker_InvokedBase
{
public:
CHandle< CBaseEntity > m_Spirits[2]; // 0x568
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_ForgedSpirit_Stats : public CDOTA_Buff
{
public:
int32_t level; // 0x11d8
int32_t armor; // 0x11dc
int32_t mana; // 0x11e0
float attack_range; // 0x11e4
float armor_per_attack; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ForgedSpirit_MeltingStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ForgedSpirit_MeltingStrike : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_MeltingStrike_Debuff : public CDOTA_Buff
{
public:
float armor_removed; // 0x11d8
int32_t m_nMaxStacks; // 0x11dc
};
// Alignment: 2
// Size: 0x580
class CDOTA_Ability_Invoker_IceWall : public CDOTA_Ability_Invoker_InvokedBase
{
public:
Vector m_vStartPosition; // 0x568
Vector m_vEndPosition; // 0x574
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Invoker_IceWall_Thinker : public CDOTA_Buff
{
public:
float damage_per_second; // 0x11d8
int32_t num_wall_elements; // 0x11dc
int32_t wall_element_spacing; // 0x11e0
int32_t wall_element_radius; // 0x11e4
Vector m_vWallDir; // 0x11e8
bool m_bGrantedGem; // 0x11f4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Invoker_IceWall_SlowAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t slow; // 0x11dc
float slow_duration; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_IceWall_SlowDebuff : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 6
// Size: 0x598
class CDOTA_Ability_Invoker_DeafeningBlast : public CDOTA_Ability_Invoker_InvokedBase
{
public:
float end_vision_duration; // 0x568
float damage; // 0x56c
float knockback_duration; // 0x570
float disarm_duration; // 0x574
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x578
bool m_bGrantedGem; // 0x590
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Invoker_DeafeningBlast_Knockback : public CDOTA_Buff
{
public:
float disarm_duration; // 0x11d8
Vector m_vPushDir; // 0x11dc
GameTime_t m_flStartTime; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Invoker_DeafeningBlast_Disarm : public CDOTA_Modifier_Disarmed
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_QuasInstance : public CDOTA_Modifier_Invoker_Instance
{
public:
char* m_pSlotName; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_WexInstance : public CDOTA_Modifier_Invoker_Instance
{
public:
char* m_pSlotName; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Invoker_ExortInstance : public CDOTA_Modifier_Invoker_Instance
{
public:
char* m_pSlotName; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_Quas : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_Wex : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_Exort : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Invoker_Empty2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Invoker_AttackVisuals : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_ColdSnap_AD : public CDOTA_Ability_Invoker_ColdSnap
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_GhostWalk_AD : public CDOTA_Ability_Invoker_GhostWalk
{
public:
// No members available
};
// Alignment: 0
// Size: 0x588
class CDOTA_Ability_Invoker_Tornado_AD : public CDOTA_Ability_Invoker_Tornado
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_EMP_AD : public CDOTA_Ability_Invoker_EMP
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_Alacrity_AD : public CDOTA_Ability_Invoker_Alacrity
{
public:
// No members available
};
// Alignment: 0
// Size: 0x568
class CDOTA_Ability_Invoker_SunStrike_AD : public CDOTA_Ability_Invoker_SunStrike
{
public:
// No members available
};
// Alignment: 0
// Size: 0x570
class CDOTA_Ability_Invoker_ForgeSpirit_AD : public CDOTA_Ability_Invoker_ForgeSpirit
{
public:
// No members available
};
// Alignment: 0
// Size: 0x590
class CDOTA_Ability_Invoker_ChaosMeteor_AD : public CDOTA_Ability_Invoker_ChaosMeteor
{
public:
// No members available
};
// Alignment: 0
// Size: 0x580
class CDOTA_Ability_Invoker_IceWall_AD : public CDOTA_Ability_Invoker_IceWall
{
public:
// No members available
};
// Alignment: 0
// Size: 0x598
class CDOTA_Ability_Invoker_DeafeningBlast_AD : public CDOTA_Ability_Invoker_DeafeningBlast
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Silencer_CurseOfTheSilent : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Silencer_CurseOfTheSilent : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
ParticleIndex_t nFxIndex; // 0x11dc
int32_t penalty_duration; // 0x11e0
float penalty_multiplier; // 0x11e4
int32_t movespeed; // 0x11e8
int32_t undispellable; // 0x11ec
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Silencer_GlaivesOfWisdom : public CDOTABaseAbility
{
public:
int32_t m_iAttackIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< sGlaiveInfoSilencer > m_GlaiveInfo; // 0x560
};
// Alignment: 4
// Size: 0x1218
class CDOTA_Modifier_Silencer_GlaivesOfWisdom : public CDOTA_Buff
{
public:
float intellect_damage_pct; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
CUtlVector< int16 > m_InFlightSilenceAttackRecords; // 0x11f8
CDOTA_Buff* m_pAttackCounterBuff; // 0x1210
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silencer_GlaivesOfWisdom_AttackCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Silencer_GlaivesOfWisdom_Debuff : public CDOTA_Buff
{
public:
int32_t int_steal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silencer_GlaivesOfWisdom_DebuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Silencer_GlaivesOfWisdom_Buff : public CDOTA_Buff
{
public:
int32_t int_steal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silencer_GlaivesOfWisdom_BuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Silencer_LastWord : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Silencer_LastWord : public CDOTA_Buff
{
public:
int32_t duration; // 0x11d8
bool spellcast; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
int32_t damage; // 0x11e0
float debuff_duration; // 0x11e4
float int_multiplier; // 0x11e8
int32_t scepter_bonus_damage; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silencer_LastWord_Disarm : public CDOTA_Modifier_Silence
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Silencer_GlobalSilence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silencer_GlobalSilence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Obsidian_Destroyer_ArcaneOrb : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Obsidian_Destroyer_ArcaneOrb : public CDOTA_Buff
{
public:
float mana_pool_damage_pct; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Obsidian_Destroyer_AstralImprisonment : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hImprisonedUnit; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Obsidian_Destroyer_AstralImprisonment_Prison : public CDOTA_Buff
{
public:
int32_t allied_movement_speed_pct; // 0x11d8
bool m_bAllowMovement; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
ParticleIndex_t m_nDebuffImmuneEffect; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Obsidian_Destroyer_EssenceAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Obsidian_Destroyer_EssenceAura : public CDOTA_Buff
{
public:
int32_t bonus_mana; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Obsidian_Destroyer_EssenceAura_Effect : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t restore_chance; // 0x11dc
float restore_amount; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Obsidian_Destroyer_SanityEclipse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Obsidian_Destroyer_Sanity_Eclipse_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Obsidian_Destroyer_Equilibrium : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium : public CDOTA_Buff
{
public:
int32_t proc_chance; // 0x11d8
int32_t mana_restore; // 0x11dc
float mana_capacity_steal; // 0x11e0
float mana_capacity_duration; // 0x11e4
float shard_mana_duration; // 0x11e8
float scepter_barrier_threshold; // 0x11ec
float scepter_barrier_duration; // 0x11f0
float scepter_barrier_cooldown; // 0x11f4
float scepter_max_mana_barrier_pct; // 0x11f8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Barrier : public CDOTA_Buff
{
public:
float barrier_amt; // 0x11d8
int32_t m_nDamageAbsorbed; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_BonusMana : public CDOTA_Buff
{
public:
int32_t shard_bonus_mana; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Debuff : public CDOTA_Buff
{
public:
int32_t mana_steal; // 0x11d8
float m_flCurrentMana; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Buff : public CDOTA_Buff
{
public:
int32_t mana_steal; // 0x11d8
float m_flCurrentMana; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Debuff_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Obsidian_Destroyer_Equilibrium_Buff_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Outworld_Devourer_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_ThunderClap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_ThunderClap : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t attack_speed_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_DrunkenHaze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_DrunkenHaze : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t miss_chance; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_CinderBrew : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Brewmaster_BrewUp : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Brewmaster_CinderBrew : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
bool m_bIgniteActive; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float m_flDamagePerTick; // 0x11e0
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Brewmaster_DrunkenBrawler : public CDOTABaseAbility
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnBrawlActiveChanged"
int32_t m_iBrawlActive; // 0x558
bool m_bUpdateIcons; // 0x55c
private:
[[maybe_unused]] uint8_t __pad055d[0x3]; // 0x55d
public:
ParticleIndex_t m_nDrunkenBrawlerFX; // 0x560
};
// Alignment: 13
// Size: 0x1210
class CDOTA_Modifier_Brewmaster_DrunkenBrawler_Passive : public CDOTA_Buff
{
public:
int32_t dodge_chance; // 0x11d8
int32_t crit_chance; // 0x11dc
int32_t crit_multiplier; // 0x11e0
int32_t active_multiplier; // 0x11e4
int32_t stun_chance; // 0x11e8
float bash_cooldown; // 0x11ec
float stun_duration; // 0x11f0
float slow_duration; // 0x11f4
int32_t bonus_move_speed; // 0x11f8
int32_t bonus_status_resist; // 0x11fc
int32_t armor; // 0x1200
int32_t magic_resist; // 0x1204
float m_flLastBash; // 0x1208
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_Void_Brawler_Slow : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
int32_t active_multiplier; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_DrunkenBrawler_Slow : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Brewmaster_DrunkenBrawler : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nFXIndexB; // 0x11dc
int32_t min_movement; // 0x11e0
int32_t max_movement; // 0x11e4
int32_t m_iMovementBonus; // 0x11e8
GameTime_t m_flNextUpdateTime; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Brewmaster_PrimalSplit_Scepter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_PrimalSplitDelay : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_Primal_Split_Fire_Phase : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_Fire_Phase : public CDOTA_Buff
{
public:
int32_t status_resistance; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_PrimalSplitDuration : public CDOTA_Buff
{
public:
int32_t bonus_brewling_hp; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Brewmaster_PrimalSplit : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
CHandle< CBaseEntity > m_hSecondaryTarget; // 0x11dc
CHandle< CBaseEntity > m_hTertiaryTarget; // 0x11e0
CHandle< CBaseEntity > m_hFourthTarget; // 0x11e4
CHandle< CBaseEntity > m_hReturnBrewling; // 0x11e8
int32_t m_nFXIndex; // 0x11ec
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_Brewmaster_HurlBoulder : public CDOTABaseAbility
{
public:
int32_t m_iBounces; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x560
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_AstralPulse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_Void_AstralPulse : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Brewmaster_Void_Void_Strike : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_SpellImmunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Brewmaster_SpellImmunity : public CDOTA_Modifier_DebuffImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_Pulverize : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_Pulverize : public CDOTA_Buff
{
public:
int32_t bonus_building_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_DispelMagic : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_Cyclone : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11f0
class CDOTA_Modifier_Brewmaster_Cyclone : public CDOTA_Modifier_Cyclone
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_WindWalk : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Brewmaster_WindWalk : public CDOTA_Modifier_Invisible
{
public:
int32_t bonus_movement_speeed; // 0x11e8
int32_t bonus_damage; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_PermanentImmolation : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_PermanentImmolation_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Brewmaster_PermanentImmolation : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Brewmaster_Primal_Split_Cancel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Brewmaster_Fear : public CDOTA_Modifier_Fear
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Primal_Companion : public CDOTABaseAbility
{
public:
CHandle< CDOTA_BaseNPC > m_hCurrentBrewling; // 0x558
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Brewmaster_Primal_Companion : public CDOTA_Buff
{
public:
float cooldown_on_death; // 0x11d8
float cooldown_on_take_damage; // 0x11dc
int32_t disable_distance; // 0x11e0
int32_t movement_slow_when_out_of_range; // 0x11e4
bool m_bCanAttack; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
ParticleIndex_t m_nFxIndex; // 0x11ec
int32_t cooldown_penalty_pct; // 0x11f0
int32_t bonus_brewling_hp; // 0x11f4
};
// Alignment: 4
// Size: 0x578
class CDOTA_Ability_Brewmaster_Void_Astral_Pull : public CDOTABaseAbility
{
public:
int32_t pull_speed; // 0x558
int32_t pull_distance; // 0x55c
Vector m_vTargetPos; // 0x560
Vector m_vEndpoint; // 0x56c
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Brewmaster_Void_Astral_Pull_Movement : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
int32_t pull_distance; // 0x11ec
int32_t damage; // 0x11f0
float pull_duration; // 0x11f4
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Lycan_Wolf_Bite : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Lycan_Wolf_Bite_Lifesteal : public CDOTA_Buff
{
public:
int32_t lifesteal_percent; // 0x11d8
int32_t lifesteal_range; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_vecTargets; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lycan_Wolf_Bite_Attack_Range : public CDOTA_Buff
{
public:
int32_t attack_range; // 0x11d8
};
// Alignment: 4
// Size: 0x680
class CDOTA_Ability_Lycan_SummonWolves : public CDOTABaseAbility
{
public:
char szUnitName[260]; // 0x558
int32_t wolf_index; // 0x65c
float wolf_duration; // 0x660
private:
[[maybe_unused]] uint8_t __pad0664[0x4]; // 0x664
public:
CUtlVector< CHandle< CBaseEntity > > m_hExistingUnits; // 0x668
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lycan_Shard : public CDOTA_Buff
{
public:
float m_flNextSpawn; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lycan_Wolf_Uncontrollable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lycan_SummonWolves_BonusDamage : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Lycan_SummonWolves_Bash : public CDOTA_Buff
{
public:
int32_t bash_chance; // 0x11d8
float bash_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lycan_SummonWolves_Health : public CDOTA_Buff
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lycan_SummonWolves_CriticalStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Lycan_SummonWolves_CriticalStrike : public CDOTA_Buff
{
public:
CountdownTimer m_CooldownTimer; // 0x11d8
int32_t maim_chance; // 0x11f0
float maim_duration; // 0x11f4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Lycan_SummonWolves_Maim : public CDOTA_Buff
{
public:
int32_t maim_movement_speed; // 0x11d8
int32_t maim_attack_speed; // 0x11dc
int32_t maim_damage; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lycan_SummonWolves_PermanentInvisibility : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Lycan_SummonWolves_PermanentInvisibility : public CDOTA_Modifier_PersistentInvisibility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lycan_Howl : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Lycan_Howl : public CDOTA_Buff
{
public:
int32_t attack_damage_reduction; // 0x11d8
int32_t total_attack_damage_reduction; // 0x11dc
int32_t armor; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lycan_FeralImpulse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lycan_FeralImpulse_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Lycan_FeralImpulse : public CDOTA_Buff
{
public:
int32_t bonus_hp_regen; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Lycan_Shapeshift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lycan_Shapeshift_Transform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lycan_Shapeshift_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Lycan_Shapeshift : public CDOTA_Buff
{
public:
int32_t bonus_night_vision; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
int32_t m_iOriginalAttackCapability; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Lycan_Shapeshift_Speed : public CDOTA_Buff
{
public:
int32_t speed; // 0x11d8
int32_t crit_chance; // 0x11dc
int32_t crit_multiplier; // 0x11e0
int32_t health_bonus; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lycan_Fear : public CDOTA_Modifier_Fear
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Shadow_Demon_Disruption_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Shadow_Demon_Disruption : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hDisruptedUnit; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Shadow_Demon_Disruption : public CDOTA_Buff
{
public:
float m_flHealth; // 0x11d8
float m_flDisseminate_Duration; // 0x11dc
CHandle< CBaseEntity > m_hDisseminateAbility; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shadow_Demon_Soul_Catcher : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Shadow_Demon_Soul_Catcher : public CDOTA_Buff
{
public:
int32_t actual_health_lost; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Shadow_Demon_Soul_Catcher_SpellAmp : public CDOTA_Buff
{
public:
int32_t num_heroes; // 0x11d8
int32_t bonus_spell_amp; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Shadow_Demon_Soul_Catcher_Illusion : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > hTarget; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shadow_Demon_Shadow_Poison_Release : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x598
class CDOTA_Ability_Shadow_Demon_Shadow_Poison : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hPoisonedUnits; // 0x558
bool m_bHitDisruptedUnit; // 0x570
private:
[[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571
public:
int32_t radius; // 0x574
CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x578
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Shadow_Demon_Shadow_Poison : public CDOTA_Buff
{
public:
float stack_damage; // 0x11d8
float bonus_stack_damage; // 0x11dc
int32_t max_multiply_stacks; // 0x11e0
ParticleIndex_t m_nFXStackIndex; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Shadow_Demon_DemonicPurge_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Shadow_Demon_Demonic_Purge : public CDOTABaseAbility
{
public:
bool m_bGrantedScepterCharges; // 0x558
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Shadow_Demon_Demonic_Cleanse : public CDOTABaseAbility
{
public:
bool m_bGrantedScepterCharges; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Shadow_Demon_Purge_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shadow_Demon_Disseminate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Shadow_Demon_Disseminate : public CDOTA_Buff
{
public:
int32_t damage_reflection_pct; // 0x11d8
int32_t radius; // 0x11dc
GameTime_t m_flLastDispersionPulseEffectTime; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_LoneDruid_SpiritBear_AttackCheck : public CDOTA_Buff
{
public:
bool m_bCanBeResummoned; // 0x11d8
bool m_bCanAttack; // 0x11d9
private:
[[maybe_unused]] uint8_t __pad11da[0x2]; // 0x11da
public:
ParticleIndex_t m_nFxIndex; // 0x11dc
ParticleIndex_t m_nStatusFxIndex; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LoneDruid_SpiritBear_Talent_Logic : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_LoneDruid_SpiritBear : public CDOTABaseAbility
{
public:
bool m_bLevelChanged; // 0x558
private:
[[maybe_unused]] uint8_t __pad0559[0x3]; // 0x559
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hBear; // 0x55c
CHandle< CBaseEntity > m_hPreBear; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spirit_Bear_Attack_Damage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_LoneDruid_SpiritBear_Return : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXOrigin; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SpiritBear_Defender : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LoneDruid_SpiritBear_Defender_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_LoneDruid_SpiritBear_Defender : public CDOTA_Buff
{
public:
int32_t damage_share; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_Entangling_Claws : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_LoneDruid_Entangling_Claws : public CDOTA_Buff
{
public:
int32_t attack_amp; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SpiritBear_Entangle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_LoneDruid_SpiritBear_Entangle : public CDOTA_Buff
{
public:
int32_t entangle_chance; // 0x11d8
int32_t hero_entangle_chance; // 0x11dc
float hero_duration; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_LoneDruid_SpiritBear_Entangle_Effect : public CDOTA_Buff
{
public:
int32_t m_iEntangleDamage; // 0x11d8
float interval_rate; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SpiritBear_Demolish : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_LoneDruid_SpiritBear_Demolish : public CDOTA_Buff
{
public:
int32_t bonus_building_damage; // 0x11d8
int32_t true_form_bonus_building_damage; // 0x11dc
int32_t spell_resistance; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_LoneDruid_Rabid : public CDOTABaseAbility
{
public:
float rabid_duration; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_LoneDruid_Rabid : public CDOTA_Buff
{
public:
int32_t shard_movement_speed_pct; // 0x11d8
int32_t shard_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SpiritLink : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_LoneDruid_SpiritLink : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t lifesteal_percent; // 0x11dc
int32_t armor; // 0x11e0
int32_t armor_sharing; // 0x11e4
CHandle< CBaseEntity > m_hTarget; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_TrueForm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LoneDruid_TrueForm_Transform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_LoneDruid_TrueForm : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
int32_t bonus_hp; // 0x11dc
float base_attack_time; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_TrueForm_Druid : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LoneDruid_DruidForm_Transform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_LoneDruid_TrueForm_BattleCry : public CDOTABaseAbility
{
public:
float cry_duration; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_LoneDruid_TrueForm_BattleCry : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SavageRoar : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_LoneDruid_SavageRoar_Bear : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bear_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bear_Empty2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_LoneDruid_SavageRoar : public CDOTA_Modifier_Fear
{
public:
int32_t bonus_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_LoneDruid_SpiritBear_TowerKillTracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_ChaosKnight_Chaos_Bolt : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
};
// Alignment: 3
// Size: 0x580
class CDOTA_Ability_ChaosKnight_Reality_Rift : public CDOTABaseAbility
{
public:
float m_flPercentage; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CUtlVector< ParticleIndex_t > m_FXIndex; // 0x560
CHandle< CBaseEntity > m_hRiftIllusion; // 0x578
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ChaosKnight_Reality_Rift_Debuff : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ChaosKnight_Chaos_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_ChaosKnight_Chaos_Strike : public CDOTA_Buff
{
public:
float creep_multiplier; // 0x11d8
float creep_lifesteal_reduction_pct; // 0x11dc
int32_t crit_min; // 0x11e0
int32_t crit_max; // 0x11e4
int32_t lifesteal; // 0x11e8
float chance; // 0x11ec
int32_t m_nNextCrit; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< int16 > m_vCritRecords; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ChaosKnight_Chaos_Strike_Debuff : public CDOTA_Buff
{
public:
int32_t maim_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ChaosKnight_Phantasm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ChaosKnight_Phantasm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ChaosKnight_Phantasm_Illusion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ChaosKnight_Phantasm_Illusion_Shard : public CDOTA_Modifier_ChaosKnight_Phantasm_Illusion
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Chaos_Knight_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Meepo_Earthbind : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Meepo_Earthbind : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Meepo_Earthbind_ChainDuration : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Meepo_Geostrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Meepo_Self_Geostrike : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Geostrike_Debuff : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Meepo_DividedWeStand : public CDOTABaseAbility
{
public:
// MNetworkEnable
int32_t m_nWhichDividedWeStand; // 0x558
// MNetworkEnable
int32_t m_nNumDividedWeStand; // 0x55c
// MNetworkEnable
CHandle< CDOTA_Ability_Meepo_DividedWeStand > m_entPrimeDividedWeStand; // 0x560
// MNetworkEnable
CHandle< CDOTA_Ability_Meepo_DividedWeStand > m_entNextDividedWeStand; // 0x564
int32_t m_iPendingUpgrades; // 0x568
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Flung : public CDOTA_Buff
{
public:
int32_t m_nHandle; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Fling_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Divided_We_Stand : public CDOTA_Buff
{
public:
float respawn; // 0x11d8
float magic_resist; // 0x11dc
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Meepo_Poof : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x8]; // 0x55c
public:
int32_t radius; // 0x564
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Meepo_Poof_Damage_Sharing : public CDOTA_Buff
{
public:
int32_t damage_share_percentage; // 0x11d8
int32_t damage_share_radius; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_BondedEntities; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Poof_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Meepo_Ransack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Ransack : public CDOTA_Buff
{
public:
int32_t health_steal_heroes; // 0x11d8
int32_t health_steal_creeps; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Meepo_5 : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Meepo_FairShare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Meepo_Poof_Casting : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Meepo_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Meepo_MegaMeepo : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > hPreviousMeepo; // 0x558
CHandle< CBaseEntity > hMegameepoFrame; // 0x55c
CUtlVector< CHandle< CBaseEntity > > hListOfMeepos; // 0x560
bool m_bHasSwappedAbilities; // 0x578
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Meepo_MegaMeepo : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float m_flOffset; // 0x11dc
QAngle m_vStartAngles; // 0x11e0
Vector m_vStartLocation; // 0x11ec
float animation_rate; // 0x11f8
bool m_bInterrupted; // 0x11fc
bool m_bHasBeenDestroyed; // 0x11fd
bool m_bIsHighestMeepo; // 0x11fe
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Meepo_MegaMeepo_Self : public CDOTA_Buff
{
public:
int32_t base_strength; // 0x11d8
int32_t base_int; // 0x11dc
int32_t base_agi; // 0x11e0
int32_t stats_pct; // 0x11e4
CHandle< CBaseEntity > m_hMegameepoFrame; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Meepo_MegaMeepo_Frame_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Meepo_Megameepo_Fling : public CDOTABaseAbility
{
public:
int32_t vision_radius; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Meepo_Petrify : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Meepo_Petrify : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t hp_restore; // 0x11dc
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Treant_EyesInTheForest : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > vTrees; // 0x558
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Treant_EyesInTheForest_Thinker : public CDOTA_Buff
{
public:
float vision_aoe; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CDOTA_Tree* m_Tree; // 0x11e0
CHandle< CBaseEntity > m_hTree; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
bool m_bUpgradedVision; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_NaturesGrasp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1208
class CDOTA_Modifier_Treant_NaturesGrasp_Creation_Thinker : public CDOTA_Buff
{
public:
float creation_interval; // 0x11d8
float vines_duration; // 0x11dc
int32_t vine_spawn_interval; // 0x11e0
Vector m_vInitialLoc; // 0x11e4
Vector m_vFinalLoc; // 0x11f0
int32_t m_iVineCount; // 0x11fc
int32_t m_iVinesIndex; // 0x1200
bool m_bFoundTree; // 0x1204
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Treant_NaturesGrasp_Latch_Thinker : public CDOTA_Buff
{
public:
int32_t latch_range; // 0x11d8
int32_t latch_vision; // 0x11dc
float initial_latch_delay; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x8]; // 0x11e4
public:
bool m_bBonus; // 0x11ec
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Treant_NaturesGrasp_Damage : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t damage_per_second; // 0x11dc
float tick_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Treant_NaturesGrasp_Damage_Bonus : public CDOTA_Modifier_Treant_NaturesGrasp_Damage
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Treant_LifeBomb : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
CHandle< CBaseEntity > m_hRMine; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_LifeBomb_Explode : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Treant_Lifebomb_Explode : public CDOTA_Buff
{
public:
GameTime_t flStartTime; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_NaturesGuise : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1220
class CDOTA_Modifier_Treant_NaturesGuise : public CDOTA_Buff
{
public:
CountdownTimer m_RevealTimer; // 0x11d8
CountdownTimer m_InvisAttackTimer; // 0x11f0
CountdownTimer m_CooldownTimer; // 0x1208
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Treant_NaturesGuise_Tree_Walking : public CDOTA_Buff
{
public:
int32_t movement_bonus; // 0x11d8
int32_t regen_amp; // 0x11dc
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Treant_NaturesGuise_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Treant_NaturesGuise_NearTreeDisplay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Treant_NaturesGuise_Root : public CDOTA_Buff
{
public:
float m_flEntangleDamage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_LeechSeed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Treant_LeechSeed : public CDOTA_Buff
{
public:
float damage_interval; // 0x11d8
int32_t leech_damage; // 0x11dc
int32_t movement_slow; // 0x11e0
int32_t radius; // 0x11e4
int32_t projectile_speed; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Treant_LeechSeed_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_LivingArmor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Treant_LivingArmor : public CDOTA_Buff
{
public:
int32_t heal_per_second; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Treant_Overgrowth : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Treant_Overgrowth : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t mute; // 0x11dc
bool bPurgable; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ogre_Magi_Arcana : public CDOTA_Buff
{
public:
int32_t m_nLastMulticastCount; // 0x11d8
int32_t m_nMulticastStreakCount; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ogre_Magi_Multicast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Ogre_Magi_Fireblast : public CDOTABaseAbility
{
public:
int32_t m_nMostRecentMulticastCount; // 0x558
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_Ogre_Magi_Unrefined_Fireblast : public CDOTA_Ability_Ogre_Magi_Fireblast
{
public:
int32_t m_nMostRecentMulticastCount; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Ogre_Magi_Fireblast_Attack_Proc : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Ogre_Magi_Fireblast_Multicast : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x11d8
float multicast_delay; // 0x11dc
int32_t m_nMultiCastCount; // 0x11e0
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Ogre_Magi_Ignite : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
int32_t m_nMostRecentMulticastCount; // 0x55c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ogre_Magi_Ignite : public CDOTA_Buff
{
public:
int32_t slow_movement_speed_pct; // 0x11d8
int32_t burn_damage; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Ogre_Magi_Ignite_Multicast : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x11d8
float multicast_delay; // 0x11dc
int32_t m_nMultiCastCount; // 0x11e0
int32_t ignite_multicast_aoe; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ogre_Magi_Bloodlust : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Ogre_Magi_Bloodlust_Autocast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Ogre_Magi_Bloodlust : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_movement_speed; // 0x11dc
int32_t self_bonus; // 0x11e0
float modelscale; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Ogre_Magi_Item_Multicast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ogre_Magi_Smash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Ogre_Magi_Smash_Buff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t attacks; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Ogre_Magi_DumbLuck : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ogre_Magi_DumbLuck : public CDOTA_Buff
{
public:
float mana_per_str; // 0x11d8
float mana_regen_per_str; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float health_threshold_pct; // 0x11dc
float duration; // 0x11e0
CHandle< CDOTABaseAbility > m_hTombstoneSourceAbility; // 0x11e4
CHandle< CBaseEntity > m_hChaseUnit; // 0x11e8
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Undying_Decay : public CDOTABaseAbility
{
public:
int32_t decay_damage; // 0x558
int32_t radius; // 0x55c
float decay_duration; // 0x560
int32_t str_steal; // 0x564
float creep_damage_multiplier; // 0x568
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Undying_Decay_Shard : public CDOTA_Buff
{
public:
float shard_buff_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< GameTime_t > m_vecStackExpirationTimes; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Undying_Decay_Debuff : public CDOTA_Buff
{
public:
int32_t str_steal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Decay_DebuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Decay_BuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_Decay_Buff : public CDOTA_Buff
{
public:
int32_t str_steal; // 0x11d8
int32_t str_scale_up; // 0x11dc
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Undying_SoulRip : public CDOTABaseAbility
{
public:
int32_t damage_per_unit; // 0x558
int32_t radius; // 0x55c
int32_t max_units; // 0x560
int32_t tombstone_heal; // 0x564
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
float m_flDecrementTime; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathstrike_Slow_Counter : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Undying_Tombstone_Zombie_DeathStrike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_Tombstone_Zombie_Deathlust : public CDOTA_Buff
{
public:
int32_t bonus_move_speed; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Tombstone_Zombie_Modifier : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Undying_Tombstone_Bunker : public CDOTA_Buff
{
public:
float bunker_heal_pct; // 0x11d8
float tombstone_grab_radius; // 0x11dc
CHandle< CBaseEntity > m_hLoadedUnit; // 0x11e0
ParticleIndex_t m_nBunkerEnterFXIndex; // 0x11e4
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Undying_Tombstone : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vZombies; // 0x558
CHandle< CBaseEntity > hTombstone; // 0x570
int32_t radius; // 0x574
float duration; // 0x578
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Undying_TombstoneUnitGrab : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hOwner; // 0x558
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Undying_TombstoneGrab : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hTombstones; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_Tombstone_Zombie_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float zombie_interval; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Undying_Tombstone_HP : public CDOTA_Buff
{
public:
int32_t tombstone_health; // 0x11d8
int32_t zombie_damage_interval; // 0x11dc
int32_t m_nDamageCounter; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Tombstone_Bunker_Cooldown : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Tombstone_Bunker_Friendly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Undying_FleshGolem : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_FleshGolem : public CDOTA_Buff
{
public:
int32_t str_percentage; // 0x11d8
int32_t movement_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Undying_FleshGolem_Slow : public CDOTA_Buff
{
public:
int32_t damage_amp; // 0x11d8
int32_t slow; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Undying_FleshGolem_PlagueAura : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t damage; // 0x11dc
float tick_rate; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Undying_Tombstone_Death_Trigger : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Undying_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Rubick_Telekinesis : public CDOTABaseAbility
{
public:
// MNetworkEnable
Vector m_vStartLocation; // 0x558
Vector m_vLandLocation; // 0x564
GameTime_t m_flStartTime; // 0x570
private:
[[maybe_unused]] uint8_t __pad0574[0x4]; // 0x574
public:
CDOTA_BaseNPC* m_pTarget; // 0x578
};
// Alignment: 10
// Size: 0x1210
class CDOTA_Modifier_Rubick_Telekinesis : public CDOTA_Buff
{
public:
GameTime_t m_fStartTime; // 0x11d8
GameTime_t m_fEndTime; // 0x11dc
float m_fTargetHeight; // 0x11e0
float m_fCurHeight; // 0x11e4
Vector m_vStartLoc; // 0x11e8
Vector m_vCurLoc; // 0x11f4
int32_t max_land_distance; // 0x1200
float fall_duration; // 0x1204
bool m_bOverrideDuration; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
float m_flOverrideDuration; // 0x120c
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Rubick_TelekinesisLand : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nLandPreviewFX; // 0x558
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Rubick_TelekinesisLand_Self : public CDOTA_Ability_Rubick_TelekinesisLand
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_FadeBolt : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_Rubick_FadeBolt : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage; // 0x11dc
int32_t jump_damage_reduction_pct; // 0x11e0
float jump_delay; // 0x11e4
int32_t m_iCurJumpCount; // 0x11e8
Vector m_vCurTargetLoc; // 0x11ec
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rubick_Telekinesis_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Rubick_FadeBoltDebuff : public CDOTA_Buff
{
public:
int32_t attack_damage_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Rubick_FadeBolt_BuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rubick_FadeBoltBuff : public CDOTA_Buff
{
public:
int32_t attack_damage_bonus; // 0x11d8
int32_t attack_damage_reduction; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_NullField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Rubick_NullField : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rubick_NullField_Effect : public CDOTA_Buff
{
public:
int32_t magic_damage_reduction_pct; // 0x11d8
bool m_bWasHidden; // 0x11dc
};
// Alignment: 6
// Size: 0x670
class CDOTA_Ability_Rubick_SpellSteal : public CDOTABaseAbility
{
public:
// MNetworkEnable
char m_ActivityModifier[256]; // 0x558
// MNetworkEnable
float m_fStolenCastPoint; // 0x658
CHandle< CBaseEntity > m_hStealTarget; // 0x65c
CHandle< CDOTABaseAbility > m_hStealAbility; // 0x660
ParticleIndex_t m_nFXIndex; // 0x664
int32_t m_hProjectile; // 0x668
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Rubick_SpellSteal : public CDOTA_Buff
{
public:
CUtlString m_strActivityModifier; // 0x11d8
CUtlVector< CHandle< CBaseEntity > > m_vecAbilities; // 0x11e0
bool m_bUsesTwoSlots; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
int32_t stolen_debuff_amp; // 0x11fc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Empty1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Empty2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Hidden1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Hidden2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Hidden3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Rubick_Arcane_Supremacy : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Rubick_Arcane_Supremacy : public CDOTA_Buff
{
public:
int32_t cast_range; // 0x11d8
int32_t spell_amp; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Rubick_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Disruptor_Thunder_Strike : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f0
class CDOTA_Modifier_Disruptor_Thunder_Strike : public CDOTA_Buff
{
public:
float strike_interval; // 0x11d8
int32_t radius; // 0x11dc
float strike_damage; // 0x11e0
GameTime_t m_flGroundDelayEndTime; // 0x11e4
bool is_thinker; // 0x11e8
bool m_bTransferred; // 0x11e9
private:
[[maybe_unused]] uint8_t __pad11ea[0x2]; // 0x11ea
public:
int32_t m_nThinkerViewer; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Disruptor_Thunder_Strike_Slow : public CDOTA_Buff
{
public:
int32_t slow_amount; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Disruptor_Thunder_Strike_Speed : public CDOTA_Buff
{
public:
int32_t shard_movement_speed_bonus; // 0x11d8
int32_t shard_attack_speed_bonus; // 0x11dc
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Disruptor_Glimpse : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nNPCSpawnedID; // 0x568
};
// Alignment: 1
// Size: 0x12b0
class CDOTA_Modifier_Disruptor_Glimpse : public CDOTA_Buff
{
public:
Vector m_PositionIndex[18]; // 0x11d8
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Disruptor_Glimpse_Thinker : public CDOTA_Buff
{
public:
Vector m_vStartLoc; // 0x11d8
CHandle< CBaseEntity > m_hEntity; // 0x11e4
float m_flDistance; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Disruptor_KineticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Disruptor_KineticFieldThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float formation_time; // 0x11dc
bool m_bActive; // 0x11e0
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Disruptor_KineticField : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
Vector m_vOriginLoc; // 0x11dc
bool m_bTruesight; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
float damage_per_second; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Disruptor_StaticStorm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Disruptor_StaticStormThinker : public CDOTA_Buff
{
public:
int32_t m_nCurrentPulse; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage_max; // 0x11e0
int32_t pulses; // 0x11e4
float duration; // 0x11e8
bool m_bHasGrantedThreeHeroKillEater; // 0x11ec
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Disruptor_StaticStorm : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
int32_t movement_speed_reduction; // 0x11dc
int32_t attack_speed_reduction; // 0x11e0
bool m_bHasScepter; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Disruptor_StaticStormMute : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Disruptor_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x590
class CDOTA_Ability_Nyx_Assassin_Impale : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
int32_t width; // 0x570
float duration; // 0x574
int32_t length; // 0x578
int32_t speed; // 0x57c
Vector vOriginalCast; // 0x580
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Nyx_Assassin_Impale : public CDOTA_Buff
{
public:
int32_t impale_damage; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
bool m_bDamageApplied; // 0x11e4
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Nyx_Assassin_ManaBurn : public CDOTABaseAbility
{
public:
int32_t aoe; // 0x558
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Nyx_Assassin_Burrow : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nSpellStartFXIndex; // 0x558
ParticleIndex_t m_nPhaseStartFXIndex; // 0x55c
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Nyx_Assassin_Burrow : public CDOTA_Modifier_Invisible
{
public:
float health_regen_rate; // 0x11e8
float mana_regen_rate; // 0x11ec
int32_t damage_reduction; // 0x11f0
Vector m_vecInitialPos; // 0x11f4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nyx_Assassin_Unburrow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nyx_Assassin_SpikedCarapace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Nyx_Assassin_SpikedCarapace : public CDOTA_Buff
{
public:
float stun_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< CHandle< CBaseEntity > > m_hProcessedEnemies; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Nyx_Assassin_Vendetta : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Nyx_Assassin_Vendetta : public CDOTA_Modifier_Invisible
{
public:
int32_t bonus_damage; // 0x11e8
int32_t movement_speed; // 0x11ec
int32_t shard_movement_speed_bonus; // 0x11f0
int32_t mana_removal_pct; // 0x11f4
bool m_bFreePathing; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nyx_Assassin_Vendetta_Armor_Reduction : public CDOTA_Buff
{
public:
int32_t shard_magic_resist_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Nyx_Assassin_Vendetta_Break : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11f0
class CDOTA_Modifier_Nyx_Assassin_Jolt_Damage_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Nyx_Assassin_Jolt : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t aoe; // 0x568
int32_t damage; // 0x56c
int32_t m_nNPCSpawnedID; // 0x570
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nyx_Assassin_Jolt_Debuff : public CDOTA_Buff
{
public:
int32_t resist_debuff; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_NagaSiren_MirrorImage : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hIllusions; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_MirrorImage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NagaSiren_Ensnare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_Ensnare : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NagaSiren_RipTide : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_RipTide_Passive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_RipTideCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_NagaSiren_RipTide : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_RipTide_Slow : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NagaSiren_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_NagaSiren_Crit_Passive : public CDOTA_Buff
{
public:
int32_t chance; // 0x11d8
int32_t crit; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NagaSiren_SongOfTheSiren : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_NagaSiren_SongOfTheSiren_Cancel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_NagaSiren_SongOfTheSiren_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t m_nAffectedEnemies; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_vhAffectedHeroes; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_NagaSiren_SongOfTheSiren : public CDOTA_Buff
{
public:
float animation_rate; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_NagaSiren_SongOfTheSiren_IgnoreMe : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_NagaSiren_SongOfTheSiren_Healing_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t m_nAffectedAllies; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_vhAffectedHeroes; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class NagaSiren_SongOfTheSiren_Healing : public CDOTA_Buff
{
public:
int32_t heal_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Naga_Siren_Reel_In : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > affectedEntities; // 0x558
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Naga_Siren_Reel_In : public CDOTA_Buff
{
public:
float pull_strength; // 0x11d8
int32_t min_pull_distance; // 0x11dc
GameTime_t m_flLastThinkTime; // 0x11e0
};
// Alignment: 8
// Size: 0x580
class CDOTA_Ability_KeeperOfTheLight_Illuminate : public CDOTABaseAbility
{
public:
GameTime_t m_fStartTime; // 0x558
float m_fPower; // 0x55c
int32_t m_iProjectile; // 0x560
ParticleIndex_t m_nFXIndex; // 0x564
ParticleIndex_t m_nFXIndexB; // 0x568
Vector m_vPos; // 0x56c
int32_t total_damage; // 0x578
bool m_bStarted; // 0x57c
};
// Alignment: 10
// Size: 0x1210
class CDOTA_Modifier_KeeperOfTheLight_Illuminate : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
int32_t total_damage; // 0x11dc
int32_t radius; // 0x11e0
int32_t channel_vision_radius; // 0x11e4
float channel_vision_interval; // 0x11e8
float channel_vision_duration; // 0x11ec
int32_t channel_vision_step; // 0x11f0
GameTime_t m_flLastChantTime; // 0x11f4
Vector m_vNextVisionLocation; // 0x11f8
Vector m_vCastDirection; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_IlluminateEnd : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x570
class CDOTA_Ability_KeeperOfTheLight_SpiritFormIlluminate : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
float max_channel_time; // 0x55c
int32_t total_damage; // 0x560
float m_fPower; // 0x564
GameTime_t m_fStartTime; // 0x568
ParticleIndex_t m_nFXIndex; // 0x56c
};
// Alignment: 21
// Size: 0x1258
class CDOTA_Modifier_KeeperOfTheLight_SpiritForm_Illuminate : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
int32_t vision_radius; // 0x11dc
int32_t radius; // 0x11e0
int32_t total_damage; // 0x11e4
float max_channel_time; // 0x11e8
float speed; // 0x11ec
float vision_duration; // 0x11f0
int32_t channel_vision_radius; // 0x11f4
float channel_vision_interval; // 0x11f8
float channel_vision_duration; // 0x11fc
int32_t channel_vision_step; // 0x1200
Vector m_vCastLoc; // 0x1204
Vector m_vTargetLoc; // 0x1210
GameTime_t m_fStartTime; // 0x121c
float m_fPower; // 0x1220
QAngle m_qCastAngle; // 0x1224
int32_t m_iProjectile; // 0x1230
ParticleIndex_t m_nFXIndex; // 0x1234
ParticleIndex_t m_nFXIndexB; // 0x1238
Vector m_vNextVisionLocation; // 0x123c
Vector m_vCastDirection; // 0x1248
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_SpiritFormIlluminateEnd : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_ManaLeak : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_KeeperOfTheLight_ManaLeak : public CDOTA_Buff
{
public:
float mana_leak_pct; // 0x11d8
Vector vLastPos; // 0x11dc
bool bResetPosition; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
float m_fAccumulatedManaLeak; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_Radiant_Bind : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_KeeperOfTheLight_Radiant_Bind : public CDOTA_Buff
{
public:
float slow; // 0x11d8
int32_t magic_resistance; // 0x11dc
Vector vLastPos; // 0x11e0
bool bResetPosition; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_fAccumulatedDistance; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11f4
ParticleIndex_t m_nStatusFXIndex; // 0x11f8
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_KeeperOfTheLight_Will_O_Wisp_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float off_duration; // 0x11dc
float off_duration_initial; // 0x11e0
float on_duration; // 0x11e4
int32_t hit_count; // 0x11e8
int32_t m_iAttackCount; // 0x11ec
GameTime_t m_flNextTimeOn; // 0x11f0
bool m_bActive; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
ParticleIndex_t m_nFXIndex; // 0x11f8
ParticleIndex_t m_nFXIndexB; // 0x11fc
GameTime_t m_flNextTime; // 0x1200
float m_flCorrectionTime; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_Will_O_Wisp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_KeeperOfTheLight_Will_O_Wisp : public CDOTA_Buff
{
public:
int32_t fixed_movement_speed; // 0x11d8
Vector m_vSource; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_ChakraMagic : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_KeeperOfTheLight_SpiritForm : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndexA; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t cast_range; // 0x11e0
bool m_bDidSwapSpiritForm; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_SpiritForm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_Recall : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KeeperOfTheLight_Recall : public CDOTA_Buff
{
public:
bool m_bWasAttacked; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_KeeperOfTheLight_BlindingLight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_KeeperOfTheLight_BlindingLight_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KeeperOfTheLight_BlindingLight : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_BlindingLight_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_10 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_11 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_12 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_13 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Keeper_of_the_Light_14 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Wisp_Tentacles : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
CHandle< CBaseEntity > hCurrentEntity; // 0x11dc
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Wisp_Tether : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hTarget; // 0x568
Vector m_vProjectileLocation; // 0x56c
bool m_bProjectileActive; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
int32_t latch_distance; // 0x57c
int32_t m_iProjectileIndex; // 0x580
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Wisp_Tether_Spell_Lifesteal : public CDOTA_Buff
{
public:
float shard_bonus_spell_lifesteal; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Wisp_Tether_Break : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 14
// Size: 0x1228
class CDOTA_Modifier_Wisp_Tether : public CDOTA_Buff
{
public:
bool m_bInManaGained; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
CHandle< CBaseEntity > m_hTarget; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > hStunnedEntities; // 0x11e0
float stun_duration; // 0x11f8
int32_t movespeed; // 0x11fc
int32_t self_bonus; // 0x1200
bool m_bIsInRange; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1205[0x3]; // 0x1205
public:
int32_t radius; // 0x1208
int32_t latch_distance; // 0x120c
float m_flHealthHealed; // 0x1210
float m_flManaHealed; // 0x1214
float tether_heal_amp; // 0x1218
GameTime_t m_flHealMessageTime; // 0x121c
GameTime_t m_flManaMessageTime; // 0x1220
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Wisp_Tether_Stun_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Wisp_Tether_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Wisp_Tether_Haste : public CDOTA_Buff
{
public:
float movespeed; // 0x11d8
float shard_bonus_spell_lifesteal; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Wisp_Tether_Scepter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Wisp_Spirits_In : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Wisp_Spirit_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Wisp_Spirits_Out : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x12a8
class CDOTA_Modifier_Wisp_Spirits : public CDOTA_Buff
{
public:
bool m_bSpiritsExplode; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t creep_damage; // 0x11dc
int32_t hero_damage; // 0x11e0
int32_t hit_radius; // 0x11e4
int32_t hero_hit_radius; // 0x11e8
int32_t explode_radius; // 0x11ec
int32_t min_range; // 0x11f0
int32_t max_range; // 0x11f4
int32_t default_radius; // 0x11f8
int32_t spirit_amount; // 0x11fc
float m_flRotation; // 0x1200
float m_flSpiritRadius; // 0x1204
int32_t spirit_movement_rate; // 0x1208
GameTime_t m_flNextSpawn; // 0x120c
CUtlString m_strSpiritsOutSwapAbility; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Wisp_Spirits_Slow : public CDOTA_Buff
{
public:
int32_t scepter_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Wisp_Overcharge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Wisp_Overcharge : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_spell_amp; // 0x11dc
int32_t shard_bonus_spell_amp; // 0x11e0
float hp_regen; // 0x11e4
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Wisp_Relocate : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndexEndTeam; // 0x558
ParticleIndex_t m_nFXIndexChannel; // 0x55c
float cast_delay; // 0x560
float return_time; // 0x564
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Wisp_Relocate_Thinker : public CDOTA_Buff
{
public:
float cast_delay; // 0x11d8
ParticleIndex_t m_nFXIndexEndTeam; // 0x11dc
ParticleIndex_t m_nFXIndexChannel; // 0x11e0
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Wisp_Relocate_Return : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
Vector m_vecReturnPosition; // 0x11dc
float return_time; // 0x11e8
ParticleIndex_t m_nFXTimeRemaining; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Visage_GraveChill : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Visage_GraveChill_Debuff : public CDOTA_Buff
{
public:
int32_t movespeed_bonus; // 0x11d8
int32_t attackspeed_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Visage_GraveChill_Buff : public CDOTA_Buff
{
public:
int32_t movespeed_bonus; // 0x11d8
int32_t attackspeed_bonus; // 0x11dc
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Visage_SoulAssumption : public CDOTABaseAbility
{
public:
float m_fDamage; // 0x558
ParticleIndex_t m_nFXIndex; // 0x55c
int32_t m_iForcedStacks; // 0x560
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Visage_SoulAssumption : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t stack_limit; // 0x11dc
int32_t damage_limit; // 0x11e0
float stack_duration; // 0x11e4
float damage_min; // 0x11e8
float damage_max; // 0x11ec
ParticleIndex_t m_nFxIndexA; // 0x11f0
ParticleIndex_t m_nFxIndexB; // 0x11f4
int32_t iCur_stack; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x1c]; // 0x11fc
public:
float m_fTotalDamage; // 0x1218
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Visage_GravekeepersCloak : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Visage_GravekeepersCloak_Stack : public CDOTA_Buff
{
public:
bool m_bIsRecovering; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t m_nFXIndex[4]; // 0x11dc
};
// Alignment: 9
// Size: 0x1220
class CDOTA_Modifier_Visage_GravekeepersCloak : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t max_layers; // 0x11dc
float minimum_damage; // 0x11e0
int32_t recovery_time; // 0x11e4
int32_t radius; // 0x11e8
int32_t max_damage_reduction; // 0x11ec
ParticleIndex_t m_nFXIndex[4]; // 0x11f0
ParticleIndex_t m_nFXIndexB; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CDOTA_Modifier_Visage_GravekeepersCloak_Stack* > vStacks; // 0x1208
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Visage_GravekeepersCloak_Secondary : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 2
// Size: 0x678
class CDOTA_Ability_Visage_SummonFamiliars : public CDOTABaseAbility
{
public:
char szUnitName[260]; // 0x558
private:
[[maybe_unused]] uint8_t __pad065c[0x4]; // 0x65c
public:
CUtlVector< CHandle< CBaseEntity > > m_hExistingUnits; // 0x660
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Visage_SummonFamiliars_Talents : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Visage_Amor_Reduction : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Visage_SummonFamiliars_DamageCharge : public CDOTA_Buff
{
public:
int32_t familiar_speed; // 0x11d8
int32_t m_nFXIndex; // 0x11dc
int32_t m_nFXIndexB; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CountdownTimer m_ctTimer; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Visage_SummonFamiliars_StoneForm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Visage_Stone_Form_Self_Cast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Visage_Stone_Form_Self_Cast_Cooldown_Manager : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Thinker : public CDOTA_Buff
{
public:
int32_t stun_radius; // 0x11d8
int32_t stun_damage; // 0x11dc
float stun_delay; // 0x11e0
float stun_duration; // 0x11e4
float stone_duration; // 0x11e8
int32_t m_iIntervalCount; // 0x11ec
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Buff : public CDOTA_Buff
{
public:
float hp_regen; // 0x11d8
int32_t stun_radius; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Visage_Scepter : public CDOTA_Buff
{
public:
GameTime_t m_flReadyTime; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Visage_SummonFamiliars_StoneForm_Timer : public CDOTA_Buff
{
public:
float stone_duration; // 0x11d8
GameTime_t m_fStartTime; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Visage_Silent_As_The_Grave : public CDOTABaseAbility
{
public:
float invis_duration; // 0x558
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Visage_Silent_As_The_Grave : public CDOTA_Modifier_Invisible
{
public:
bool m_bHasMadeAttack; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Visage_Silent_As_The_Grave_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 2
// Size: 0x1200
class CDOTA_Modifier_Slark_EssenceShift : public CDOTA_Modifier_Stacking_Base
{
public:
int32_t agi_gain; // 0x11f8
float duration; // 0x11fc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slark_DarkPact : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slark_DarkPact : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Slark_DarkPact_Pulses : public CDOTA_Buff
{
public:
int32_t m_iPulseCount; // 0x11d8
int32_t radius; // 0x11dc
int32_t total_damage; // 0x11e0
int32_t total_pulses; // 0x11e4
int32_t self_damage_pct; // 0x11e8
float pulse_interval; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slark_Pounce_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slark_Pounce : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1220
class CDOTA_Modifier_Slark_Pounce : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
bool m_bFoundUnit; // 0x1201
private:
[[maybe_unused]] uint8_t __pad1202[0x2]; // 0x1202
public:
int32_t pounce_distance; // 0x1204
int32_t pounce_distance_scepter; // 0x1208
float pounce_speed; // 0x120c
float pounce_acceleration; // 0x1210
int32_t pounce_radius; // 0x1214
int32_t pounce_damage; // 0x1218
float leash_duration; // 0x121c
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Slark_Pounce_Leash : public CDOTA_Buff
{
public:
int32_t leash_radius; // 0x11d8
Vector vLeashLocation; // 0x11dc
bool m_bEscaped; // 0x11e8
bool m_bFishBait; // 0x11e9
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slark_EssenceShift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11f8
class CDOTA_Modifier_Slark_EssenceShift_DebuffCounter : public CDOTA_Modifier_Stacking_Base
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Slark_EssenceShift_Debuff : public CDOTA_Modifier_Stacking_Multiple_Buff_Base
{
public:
int32_t stat_loss; // 0x11e0
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Slark_EssenceShift_Buff : public CDOTA_Modifier_Stacking_Multiple_Buff_Base
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slark_EssenceShift_Permanent_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Slark_EssenceShift_Permanent_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Slark_ShadowDance : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slark_ShadowDance_Aura : public CDOTA_Buff
{
public:
int32_t scepter_aoe; // 0x11d8
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Slark_ShadowDance_Passive : public CDOTA_Buff
{
public:
float activation_delay; // 0x11d8
float neutral_disable; // 0x11dc
bool m_bPendingRefresh; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
GameTime_t m_fPendingStateChangeTime; // 0x11e4
CountdownTimer m_NeutralHitTimer; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Slark_ShadowDance_PassiveRegen : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
float bonus_regen; // 0x11dc
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Slark_ShadowDance : public CDOTA_Modifier_Invisible
{
public:
CHandle< CBaseEntity > m_hVisibleEntity; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slark_ShadowDance_Visual : public CDOTA_Buff
{
public:
bool m_bScepter; // 0x11d8
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Slark_Depth_Shroud : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Slark_Depth_Shroud_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
CHandle< CBaseEntity > m_hVisibleEntity; // 0x11dc
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Slark_Depth_Shroud : public CDOTA_Modifier_Invisible
{
public:
ParticleIndex_t m_nFXIndex; // 0x11e8
int32_t bonus_movement_speed; // 0x11ec
float bonus_regen; // 0x11f0
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Slark_Fish_Bait : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slark_Fish_Bait_Pre : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Slark_Fish_Bait_Post : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Medusa_SplitShot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1228
class CDOTA_Modifier_Medusa_SplitShot : public CDOTA_Buff
{
public:
int32_t damage_modifier; // 0x11d8
int32_t range; // 0x11dc
int32_t arrow_count; // 0x11e0
int32_t projectile_speed; // 0x11e4
ParticleIndex_t m_nSplitShotBowFXIndex; // 0x11e8
};
// Alignment: 11
// Size: 0x660
class CDOTA_Ability_Medusa_MysticSnake : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
int32_t snake_jumps; // 0x55c
int32_t snake_damage; // 0x560
int32_t snake_damage_pct; // 0x564
int32_t snake_mana_steal; // 0x568
int32_t snake_scale; // 0x56c
int32_t snake_speed_scale; // 0x570
int32_t initial_speed; // 0x574
int32_t return_speed; // 0x578
float jump_delay; // 0x57c
float slow_duration; // 0x580
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Medusa_Mystic_Snake_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t turn_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Medusa_ManaShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Medusa_ManaShield : public CDOTA_Buff
{
public:
int32_t bonus_mana; // 0x11d8
float absorption_pct; // 0x11dc
float damage_per_mana; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Medusa_StoneGaze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Medusa_StoneGaze_Tracker : public CDOTA_Buff
{
public:
int32_t m_nNumStoned; // 0x11d8
bool m_bAnyInvisible; // 0x11dc
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Medusa_StoneGaze : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float vision_cone; // 0x11dc
float duration; // 0x11e0
int32_t speed_boost; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Medusa_StoneGaze_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Medusa_StoneGaze_Facing : public CDOTA_Buff
{
public:
float face_duration; // 0x11d8
float stone_duration; // 0x11dc
float duration; // 0x11e0
float vision_cone; // 0x11e4
float m_flAccumulatedTime; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CountdownTimer ctFacing; // 0x11f0
bool m_bAlreadyStoned; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
ParticleIndex_t m_nFXIndex; // 0x120c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Medusa_StoneGaze_Stone : public CDOTA_Buff
{
public:
int32_t bonus_physical_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Medusa_Cold_Blooded : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Medusa_Cold_Blooded : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Troll_Warlord_Rampage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Troll_Warlord_Rampage : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t status_resistance; // 0x11dc
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_TrollWarlord_BerserkersRage : public CDOTABaseAbility
{
public:
int32_t m_iOriginalAttackCapabilities; // 0x558
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_TrollWarlord_BerserkersRage : public CDOTA_Buff
{
public:
int32_t bonus_move_speed; // 0x11d8
int32_t bonus_range; // 0x11dc
int32_t bonus_hp; // 0x11e0
int32_t bonus_armor; // 0x11e4
int32_t ensnare_chance; // 0x11e8
float ensnare_duration; // 0x11ec
float base_attack_time; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrollWarlord_BerserkersRage_Ensnare : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TrollWarlord_BerserkersRage_Maim : public CDOTA_Buff
{
public:
int32_t maim_slow; // 0x11d8
};
// Alignment: 8
// Size: 0x598
class CDOTA_Ability_TrollWarlord_WhirlingAxes_Ranged : public CDOTABaseAbility
{
public:
Vector m_vStartPos; // 0x558
int32_t m_iArrowProjectile; // 0x564
int32_t axe_width; // 0x568
float axe_speed; // 0x56c
float axe_range; // 0x570
int32_t axe_spread; // 0x574
int32_t axe_count; // 0x578
private:
[[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x580
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TrollWarlord_WhirlingAxes_Slow : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 2
// Size: 0x578
class CDOTA_Ability_TrollWarlord_Whirling_Axes_Melee : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x558
int32_t m_nAxeIdx; // 0x570
};
// Alignment: 16
// Size: 0x1248
class CDOTA_Modifier_TrollWarlord_Whirling_Axes_Melee : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t hit_radius; // 0x11dc
int32_t axe_movement_speed; // 0x11e0
float whirl_duration; // 0x11e4
float max_range; // 0x11e8
float blind_duration; // 0x11ec
float m_flRotation; // 0x11f0
float m_flAxeRadius; // 0x11f4
GameTime_t m_flDieTime; // 0x11f8
float m_bPiercesMagicImmunity; // 0x11fc
int32_t m_nSwapIndex; // 0x1200
bool m_bReturning; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1205[0x3]; // 0x1205
public:
ParticleIndex_t m_nAxeFXIndex[2]; // 0x1208
int32_t m_nHeroesHitForRelic; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CUtlVector< CHandle< CBaseEntity > > hitEntities; // 0x1218
CUtlVector< CHandle< CBaseEntity > > m_hAxes; // 0x1230
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrollWarlord_Axe_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_TrollWarlord_WhirlingAxes_Blind : public CDOTA_Buff
{
public:
int32_t blind_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_TrollWarlord_Fervor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_TrollWarlord_Fervor : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t max_stacks; // 0x11dc
CHandle< CBaseEntity > m_hUnit; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_TrollWarlord_BattleTrance : public CDOTABaseAbility
{
public:
float trance_duration; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_TrollWarlord_BattleTrance : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t lifesteal; // 0x11e0
CHandle< CBaseEntity > m_hTarget; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrollWarlord_BattleTrance_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_TrollWarlord_BattleTrance_Vision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Centaur_HoofStomp : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Centaur_DoubleEdge : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Centaur_DoubleEdge_Slow : public CDOTA_Buff
{
public:
int32_t shard_movement_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Centaur_DoubleEdge_Buff : public CDOTA_Buff
{
public:
int32_t shard_str_pct; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Centaur_Return : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Centaur_Return_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Centaur_Return : public CDOTA_Buff
{
public:
int32_t return_damage; // 0x11d8
int32_t return_damage_str; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Centaur_Return_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Centaur_Return_Bonus_Damage : public CDOTA_Buff
{
public:
float damage_gain_pct; // 0x11d8
};
// Alignment: 8
// Size: 0x590
class CDOTA_Ability_Centaur_Stampede : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t base_damage; // 0x55c
float strength_damage; // 0x560
float slow_duration; // 0x564
float scepter_bonus_duration; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x570
int32_t m_nHeroesHit; // 0x588
bool m_bHitInvisibleHero; // 0x58c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Centaur_Stampede_Slow : public CDOTA_Buff
{
public:
int32_t cast_time_increase; // 0x11d8
int32_t slow_movement_speed; // 0x11dc
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Centaur_Stampede : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage_reduction; // 0x11dc
int32_t has_flying_movement; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11e8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Centaur_Mount : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Centaur_Cart : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hUnit; // 0x11d8
bool m_bWasMoving; // 0x11dc
bool m_bSpawnDone; // 0x11dd
private:
[[maybe_unused]] uint8_t __pad11de[0x2]; // 0x11de
public:
Vector m_vecOldForward; // 0x11e0
int32_t break_distance; // 0x11ec
Vector m_vecPreviousLocation; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Centaur_Hitched_Into_Cart : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1228
class CDOTA_Modifier_Centaur_Mount_Toss : public CDOTA_Buff
{
public:
float air_duration; // 0x11d8
int32_t air_height; // 0x11dc
int32_t travel_distance; // 0x11e0
CHandle< CBaseEntity > m_hTarget; // 0x11e4
float m_flPredictedTotalTime; // 0x11e8
Vector m_vStartPosition; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bHorizontalMotionInterrupted; // 0x1200
bool m_bDamageApplied; // 0x1201
bool m_bTargetTeleported; // 0x1202
private:
[[maybe_unused]] uint8_t __pad1203[0x1]; // 0x1203
public:
Vector m_vHorizontalVelocity; // 0x1204
Vector m_vLastKnownTargetPosition; // 0x1210
float m_flInitialVelocityZ; // 0x121c
bool m_bDone; // 0x1220
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Centaur_Mounted : public CDOTA_Buff
{
public:
int32_t melee_attack_range; // 0x11d8
CHandle< CBaseEntity > m_hCart; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Centaur_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Magnataur_Horn_Toss : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Magnataur_Horn_Toss : public CDOTA_Buff
{
public:
float air_duration; // 0x11d8
int32_t air_height; // 0x11dc
int32_t travel_distance; // 0x11e0
Vector m_vDestination; // 0x11e4
float m_flStartZ; // 0x11f0
float m_flCurTime; // 0x11f4
float m_flJumpDuration; // 0x11f8
float m_flJumpHeight; // 0x11fc
Vector m_vTargetHorizontalDirection; // 0x1200
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_Horn_Toss_Slow : public CDOTA_Buff
{
public:
int32_t horn_toss_slow_pct; // 0x11d8
};
// Alignment: 3
// Size: 0x598
class CDOTA_Ability_Magnataur_Shockwave : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0xc]; // 0x55c
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x568
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitListReturning; // 0x580
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Magnataur_Shockwave_Erupt : public CDOTA_Buff
{
public:
int32_t scepter_width; // 0x11d8
float scepter_duration; // 0x11dc
bool play_particle; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
Vector m_vStart; // 0x11e4
Vector m_vEnd; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_Shockwave : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_Shockwave_Eruption_Slow : public CDOTA_Buff
{
public:
int32_t scepter_slow_pct; // 0x11d8
int32_t scepter_armor_pct; // 0x11dc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Magnataur_Shockwave_Pull : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float pull_duration; // 0x11ec
float effective_distance; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Magnataur_Empower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Magnataur_Empower : public CDOTA_Buff
{
public:
int32_t bonus_damage_pct; // 0x11d8
float cleave_damage_pct; // 0x11dc
int32_t cleave_starting_width; // 0x11e0
int32_t cleave_ending_width; // 0x11e4
int32_t cleave_distance; // 0x11e8
float self_multiplier; // 0x11ec
int32_t secondary_cleave_distance; // 0x11f0
};
// Alignment: 7
// Size: 0x578
class CDOTA_Ability_Magnataur_Skewer : public CDOTABaseAbility
{
public:
int32_t skewer_radius; // 0x558
int32_t skewer_speed; // 0x55c
int32_t range; // 0x560
int32_t tree_radius; // 0x564
int32_t m_nProjectileID; // 0x568
int32_t m_nVisibleTargetCount; // 0x56c
int32_t m_nTargetsHit; // 0x570
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_Skewer_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Magnataur_Skewer_Impact : public CDOTA_Buff
{
public:
float slow_duration; // 0x11d8
int32_t skewer_damage; // 0x11dc
Vector m_vDirection; // 0x11e0
float m_flEndTime; // 0x11ec
float m_flCurTime; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_Skewer_Slow : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x568
class CDOTA_Ability_Magnataur_ReversePolarity : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
Vector m_vPullLocation; // 0x55c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Magnataur_ReversePolarity : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Magnataur_ReversePolarity_Stats : public CDOTA_Buff
{
public:
int32_t stats_per_stack; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Magnus_Strength_Of_Joelrak : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Magnus_Strength_Of_Joelrak : public CDOTA_Buff
{
public:
int32_t strength_per_stack; // 0x11d8
int32_t max_stacks; // 0x11dc
float stack_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Magnus_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Shredder_WhirlingDeath : public CDOTABaseAbility
{
public:
int32_t whirling_radius; // 0x558
int32_t whirling_damage; // 0x55c
float whirling_tick; // 0x560
float duration; // 0x564
int32_t tree_damage_scale; // 0x568
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Shredder_WhirlingDeath_Debuff : public CDOTA_Buff
{
public:
int32_t stat_loss_pct; // 0x11d8
int32_t stat_loss_univ; // 0x11dc
int32_t iPrimaryAttribute; // 0x11e0
float flStatLossStr; // 0x11e4
float flStatLossAgi; // 0x11e8
float flStatLossInt; // 0x11ec
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Shredder_TimberChain : public CDOTABaseAbility
{
public:
int32_t chain_radius; // 0x558
ParticleIndex_t m_nFXIndex; // 0x55c
Vector m_vProjectileVelocity; // 0x560
bool m_bRetract; // 0x56c
};
// Alignment: 6
// Size: 0x1210
class CDOTA_Modifier_Shredder_TimberChain : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hDamaged; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11f0
Vector m_vStartPosition; // 0x11f4
int32_t speed; // 0x1200
int32_t radius; // 0x1204
int32_t damage; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shredder_Reactive_Armor : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_Shredder_ReactiveArmor_Bomb : public CDOTA_Buff
{
public:
float initial_shield; // 0x11d8
float max_shield; // 0x11dc
float shield_per_sec; // 0x11e0
float shield_per_sec_per_enemy; // 0x11e4
float duration; // 0x11e8
float base_explosion; // 0x11ec
int32_t radius; // 0x11f0
int32_t explosion_radius; // 0x11f4
int32_t m_nDamageAbsorbed; // 0x11f8
GameTime_t m_timeLastTick; // 0x11fc
GameTime_t m_StartTime; // 0x1200
int32_t m_nLastParticleTime; // 0x1204
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Shredder_Reactive_Armor : public CDOTA_Buff
{
public:
int32_t stack_limit; // 0x11d8
float stack_duration; // 0x11dc
GameTime_t m_flStackDieTime; // 0x11e0
ParticleIndex_t m_pFXIndex[4]; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Shredder_Reactive_Armor_Stack : public CDOTA_Buff
{
public:
float bonus_armor; // 0x11d8
float bonus_hp_regen; // 0x11dc
};
// Alignment: 13
// Size: 0x5b0
class CDOTA_Ability_Shredder_Chakram : public CDOTABaseAbility
{
public:
float radius; // 0x558
float speed; // 0x55c
float pass_slow_duration; // 0x560
int32_t pass_damage; // 0x564
Vector m_vEndLocation; // 0x568
float m_fZCoord; // 0x574
bool m_bIsReturning; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
ParticleIndex_t m_nFXIndex; // 0x57c
ParticleIndex_t m_nFXIndexB; // 0x580
ParticleIndex_t m_nFXIndexC; // 0x584
int32_t m_nProjectileIndex; // 0x588
CHandle< CBaseEntity > m_hThinker; // 0x58c
CUtlVector< CHandle< CBaseEntity > > m_hReturnHits; // 0x590
};
// Alignment: 0
// Size: 0x5b0
class CDOTA_Ability_Shredder_ChakramAlias_shredder_chakram_2 : public CDOTA_Ability_Shredder_Chakram
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Shredder_Chakram_Thinker : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
float mana_per_second; // 0x11dc
float radius; // 0x11e0
float break_distance; // 0x11e4
float damage_interval; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Shredder_Chakram_Debuff : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t slow_health_percentage; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Shredder_Chakram_Debuff_2 : public CDOTA_Modifier_Shredder_Chakram_Debuff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shredder_ReturnChakram : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shredder_ReturnChakramAlias_shredder_return_chakram_2 : public CDOTA_Ability_Shredder_ReturnChakram
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Shredder_Chakram_Disarm : public CDOTA_Modifier_Disarmed
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Shredder_Flamethrower : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Shredder_Flamethrower_TreeFire_Thinker : public CDOTA_Buff
{
public:
CUtlVector< CUtlPair< CHandle< CBaseEntity >, GameTime_t > > m_vecTreeFires; // 0x11d8
bool m_bCleanupWhenEmpty; // 0x11f0
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Shredder_Flamethrower : public CDOTA_Buff
{
public:
int32_t length; // 0x11d8
int32_t width; // 0x11dc
int32_t damage_per_second; // 0x11e0
ParticleIndex_t m_nBeamFXIndex; // 0x11e4
CHandle< CBaseEntity > m_hBeamEnd; // 0x11e8
GameTime_t m_flLastHit; // 0x11ec
CUtlVector< CBaseEntity* > m_vecBurningTrees; // 0x11f0
CHandle< CBaseEntity > m_hTreeFireThinker; // 0x1208
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Shredder_Flamethrower_Damage : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nActiveFXIndex; // 0x11dc
ParticleIndex_t m_nActiveStatusFXIndex; // 0x11e0
float damage_per_second; // 0x11e4
int32_t building_dmg_pct; // 0x11e8
int32_t move_slow_pct; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bristleback_Warpath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Bristleback_Warpath : public CDOTA_Buff
{
public:
int32_t damage_per_stack; // 0x11d8
int32_t move_speed_per_stack; // 0x11dc
int32_t max_stacks; // 0x11e0
float stack_duration; // 0x11e4
float m_flDuration; // 0x11e8
GameTime_t m_flMaxStackStartTime; // 0x11ec
bool m_bSuppressKillEater; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bristleback_Warpath_Stack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bristleback_ViscousNasalGoo : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Bristleback_ViscousNasalGoo : public CDOTA_Buff
{
public:
float base_armor; // 0x11d8
float armor_per_stack; // 0x11dc
int32_t base_move_slow; // 0x11e0
int32_t move_slow_per_stack; // 0x11e4
int32_t stack_limit; // 0x11e8
ParticleIndex_t m_nFXStackIndex; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bristleback_QuillSpray : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bristleback_QuillSpray_AutoCast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Bristleback_QuillSpray_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
CountdownTimer m_ViewerTimer; // 0x11f8
int32_t projectile_speed; // 0x1210
int32_t radius; // 0x1214
bool m_bTriggeredByBristleback; // 0x1218
bool m_bDelayed; // 0x1219
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Bristleback_QuillSpray : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Bristleback_QuillSprayStack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bristleback_Bristleback : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Bristleback_Bristleback : public CDOTA_Buff
{
public:
int32_t side_damage_reduction; // 0x11d8
int32_t back_damage_reduction; // 0x11dc
int32_t side_angle; // 0x11e0
int32_t back_angle; // 0x11e4
float quill_release_threshold; // 0x11e8
float quill_release_interval; // 0x11ec
bool m_bRearHit; // 0x11f0
bool m_bSideHit; // 0x11f1
private:
[[maybe_unused]] uint8_t __pad11f2[0x2]; // 0x11f2
public:
float m_flDamageAccumulated; // 0x11f4
int32_t m_nAccumulatedHits; // 0x11f8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Bristleback_Hairball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tusk_IceShards_Stop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x5c8
class CDOTA_Ability_Tusk_IceShards : public CDOTABaseAbility
{
public:
int32_t m_iProjectile; // 0x558
int32_t shard_width; // 0x55c
int32_t shard_damage; // 0x560
int32_t shard_count; // 0x564
float shard_speed; // 0x568
float shard_duration; // 0x56c
float shard_angle_step; // 0x570
int32_t shard_distance; // 0x574
Vector m_vSpawnOrigin; // 0x578
Vector m_vDirection; // 0x584
CUtlVector< CHandle< CBaseEntity > > m_vecShards; // 0x590
private:
[[maybe_unused]] uint8_t __pad05a8[0x8]; // 0x5a8
public:
CDOTABaseAbility* m_pIceShardsStop; // 0x5b0
private:
[[maybe_unused]] uint8_t __pad05b8[0x8]; // 0x5b8
public:
ParticleIndex_t m_nFXIndex; // 0x5c0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_IceShard_Slow_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_IceShard : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 21
// Size: 0x678
class CDOTA_Ability_Tusk_Snowball : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t snowball_windup_radius; // 0x568
int32_t snowball_radius; // 0x56c
int32_t snowball_grow_rate; // 0x570
int32_t snowball_damage; // 0x574
int32_t snowball_damage_bonus; // 0x578
float stun_duration; // 0x57c
int32_t bonus_damage; // 0x580
float bonus_stun; // 0x584
int32_t snowball_speed; // 0x588
int32_t snowball_speed_bonus; // 0x58c
float snowball_duration; // 0x590
Vector m_vProjectileLocation; // 0x594
CUtlVector< CHandle< CBaseEntity > > m_hSnowballedUnits; // 0x5a0
ParticleIndex_t m_nFXIndex; // 0x5b8
private:
[[maybe_unused]] uint8_t __pad05bc[0x4]; // 0x5bc
public:
CountdownTimer ctSnowball; // 0x5c0
bool m_bSpeakAlly; // 0x5d8
bool m_bIsExpired; // 0x5d9
bool m_bInWindup; // 0x5da
private:
[[maybe_unused]] uint8_t __pad05db[0x1]; // 0x5db
public:
CHandle< CBaseEntity > m_hPrimaryTarget; // 0x5dc
int32_t m_nContainedValidUnits; // 0x5e0
bool m_bEndingSnowball; // 0x5e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_Snowball_Target : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tusk_Launch_Snowball : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_Snowball_Visible : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_Snowball_Movement : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tusk_Snowball_Movement_Friendly : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tusk_FrozenSigil : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tusk_FrozenSigil_Aura : public CDOTA_Buff
{
public:
int32_t sigil_radius; // 0x11d8
ParticleIndex_t m_iIndex; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Tusk_FrozenSigil : public CDOTA_Buff
{
public:
int32_t aghs_shard_move_slow; // 0x11d8
int32_t aghs_shard_damage; // 0x11dc
int32_t attack_slow; // 0x11e0
int32_t turn_rate_slow; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tusk_WalrusPunch : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_Tusk_WalrusPunch : public CDOTA_Buff
{
public:
int32_t crit_multiplier; // 0x11d8
float air_time; // 0x11dc
float slow_duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11e8
CHandle< CBaseEntity > m_hTarget; // 0x11f0
bool m_bWalrusPunch; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
ParticleIndex_t m_nFXIndex; // 0x1210
int32_t m_nAttackRecord; // 0x1214
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tusk_WalrusPunch_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Tusk_WalrusPunch_AirTime : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float m_flEndTime; // 0x1204
float air_time; // 0x1208
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Tusk_WalrusKick : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nTargetFXIndex; // 0x558
Vector m_vEndpoint; // 0x55c
int32_t landing_radius; // 0x568
int32_t push_length; // 0x56c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tusk_WalrusKick_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Tusk_WalrusKick_AirTime : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float m_flEndTime; // 0x1204
int32_t push_length; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Tusk_Tag_Team : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tusk_Tag_Team_Aura : public CDOTA_Buff
{
public:
ParticleIndex_t m_iIndex; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tusk_Tag_Team : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
float slow_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tusk_Tag_Team_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Skywrath_Mage_Shield_Of_The_Scion : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Shard : public CDOTA_Buff
{
public:
float stack_duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Shard_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_intelligence; // 0x11d8
float bonus_armor; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Shard_Bonus_Counter : public CDOTA_Buff
{
public:
int32_t bonus_intelligence; // 0x11d8
float bonus_armor; // 0x11dc
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Skywrath_Mage_Arcane_Bolt : public CDOTABaseAbility
{
public:
int32_t bolt_vision; // 0x558
float vision_duration; // 0x55c
float m_flDamage; // 0x560
int32_t m_nFXIndex; // 0x564
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Arcane_Bolt_Lifesteal : public CDOTA_Buff
{
public:
float lifesteal_amt; // 0x11d8
};
// Alignment: 6
// Size: 0x570
class CDOTA_Ability_Skywrath_Mage_Concussive_Shot : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t slow_radius; // 0x55c
int32_t damage; // 0x560
int32_t shot_vision; // 0x564
float slow_duration; // 0x568
float vision_duration; // 0x56c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Concussive_Shot : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Skywrath_Mage_Ancient_Seal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Skywrath_Mage_Ancient_Seal : public CDOTA_Buff
{
public:
int32_t resist_debuff; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Skywrath_Mage_Mystic_Flare : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Skywrath_Mage_Mystic_Flare : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage; // 0x11dc
float duration; // 0x11e0
float damage_interval; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Skywrath_Mystic_Flare_Aura_Effect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Skywrath_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Abaddon_DeathCoil : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Abaddon_AphoticShield : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Abaddon_AphoticShield : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float damage_absorb; // 0x11dc
int32_t m_nDamageAbsorbed; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Abaddon_Frostmourne : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Abaddon_Frostmourne : public CDOTA_Buff
{
public:
float slow_duration; // 0x11d8
float curse_duration; // 0x11dc
int32_t hit_count; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_Frostmourne_Debuff : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
ParticleIndex_t m_nFXStackIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_Frostmourne_Debuff_Bonus : public CDOTA_Buff
{
public:
int32_t curse_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_Frostmourne_Buff : public CDOTA_Buff
{
public:
int32_t curse_attack_speed; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Abaddon_BorrowedTime : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_BorrowedTime : public CDOTA_Buff
{
public:
int32_t m_iTotalDamageAbsorbed; // 0x11d8
int32_t redirect_range_scepter; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_BorrowedTime_Passive : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_Borrowed_Time_Damage_Redirect : public CDOTA_Buff
{
public:
float m_fDamageTaken; // 0x11d8
int32_t ally_threshold_scepter; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_BorrowedTime_ImmolationAura : public CDOTA_Buff
{
public:
int32_t immolate_aoe; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Abaddon_BorrowedTime_ImmolationDamage : public CDOTA_Buff
{
public:
float immolate_damage; // 0x11d8
};
// Alignment: 10
// Size: 0x588
class CDOTA_Ability_Elder_Titan_AncestralSpirit : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t radius; // 0x55c
float buff_duration; // 0x560
float spirit_duration; // 0x564
int32_t m_nCreepsHit; // 0x568
int32_t m_nHeroesHit; // 0x56c
bool m_bIsReturning; // 0x570
private:
[[maybe_unused]] uint8_t __pad0571[0x3]; // 0x571
public:
CHandle< CBaseEntity > m_hAncestralSpirit; // 0x574
ParticleIndex_t m_nReturnFXIndex; // 0x578
private:
[[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c
public:
CUtlString m_strMoveSpiritSwapAbility; // 0x580
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_Elder_Titan_AncestralSpirit : public CDOTA_Buff
{
public:
int32_t pass_damage; // 0x11d8
int32_t radius; // 0x11dc
int32_t m_nCreepsHit; // 0x11e0
int32_t m_nHeroesHit; // 0x11e4
float m_flSpeed; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x11f0
int32_t m_nBonusMoveSpeed; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Elder_Titan_MoveSpirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Elder_Titan_ReturnSpirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1210
class CDOTA_Modifier_Elder_Titan_AncestralSpirit_Buff : public CDOTA_Buff
{
public:
float move_pct_creeps; // 0x11d8
int32_t move_pct_heroes; // 0x11dc
int32_t damage_creeps; // 0x11e0
int32_t damage_heroes; // 0x11e4
float armor_creeps; // 0x11e8
float armor_heroes; // 0x11ec
float move_pct_cap; // 0x11f0
int32_t m_nCreepsHit; // 0x11f4
int32_t m_nHeroesHit; // 0x11f8
float m_fSpeedPercentage; // 0x11fc
int32_t m_nDamage; // 0x1200
int32_t m_nArmor; // 0x1204
bool m_bSpellImmunity; // 0x1208
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Elder_Titan_4 : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Elder_Titan_AncestralSpirit_Hidden : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 11
// Size: 0x5b0
class CDOTA_Ability_Elder_Titan_EchoStomp : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndexTitan; // 0x558
ParticleIndex_t m_nFXIndexSpirit; // 0x55c
ParticleIndex_t m_nFXIndexTitanB; // 0x560
ParticleIndex_t m_nFXIndexSpiritB; // 0x564
int32_t radius; // 0x568
int32_t stomp_damage; // 0x56c
float sleep_duration; // 0x570
float cast_time; // 0x574
CUtlVector< CHandle< CBaseEntity > > m_vecStompedHeroes; // 0x578
CUtlVector< CHandle< CBaseEntity > > m_vecStompedHeroes_BuffCounted; // 0x590
bool m_bStompedInvisibleHero; // 0x5a8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Elder_Titan_EchoStomp_Spirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Elder_Titan_AncestralSpirit_CastTime : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_EchoStomp_Magic_Immune : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t model_scale; // 0x11d8
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Elder_Titan_EchoStomp : public CDOTA_Buff
{
public:
int32_t wake_damage_limit; // 0x11d8
float animation_rate; // 0x11dc
float initial_stun_duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CountdownTimer ctStunTimer; // 0x11e8
float m_flDamageTaken; // 0x1200
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Elder_Titan_NaturalOrder : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Elder_Titan_NaturalOrder_Spirit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_NaturalOrder_Aura_Armor : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_NaturalOrder_Aura_MagicResistance : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_NaturalOrder_Armor : public CDOTA_Buff
{
public:
int32_t armor_reduction_pct; // 0x11d8
float m_flArmorReduction; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_NaturalOrder_MagicResistance : public CDOTA_Buff
{
public:
int32_t magic_resistance_pct; // 0x11d8
};
// Alignment: 13
// Size: 0x1240
class CDOTA_Modifier_Elder_Titan_EarthSplitter_Caster : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitUnits; // 0x11d8
int32_t vision_width; // 0x11f0
float vision_interval; // 0x11f4
float vision_duration; // 0x11f8
int32_t vision_step; // 0x11fc
int32_t total_steps; // 0x1200
int32_t m_nCompletedSteps; // 0x1204
Vector m_vStart; // 0x1208
Vector m_vEnd; // 0x1214
Vector m_vNextVisionLocation; // 0x1220
Vector m_vCastDirection; // 0x122c
int32_t m_nHumHeroesHit; // 0x1238
bool m_bHitInvisibleHero; // 0x123c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Elder_Titan_EarthSplitter_Thinker : public CDOTA_Buff
{
public:
int32_t crack_width; // 0x11d8
int32_t damage_pct; // 0x11dc
float slow_duration; // 0x11e0
float slow_duration_scepter; // 0x11e4
CDOTA_Buff* m_pParentModifier; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_EarthSplitter : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Elder_Titan_EarthSplitterScepter : public CDOTA_Modifier_Elder_Titan_EarthSplitter
{
public:
// No members available
};
// Alignment: 5
// Size: 0x578
class CDOTA_Ability_Elder_Titan_EarthSplitter : public CDOTABaseAbility
{
public:
int32_t crack_width; // 0x558
int32_t crack_distance; // 0x55c
int32_t speed; // 0x560
int32_t vision_width; // 0x564
float crack_time; // 0x568
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Legion_Commander_OverwhelmingOdds : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Legion_Commander_OverwhelmingOdds_Armor : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Legion_Commander_OverwhelmingOdds : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed_creeps; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
float armor_per_creep; // 0x11e0
float armor_per_hero; // 0x11e4
int32_t m_nTotalBonus; // 0x11e8
float m_flBonusArmor; // 0x11ec
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Legion_Commander_PressTheAttack : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Legion_Commander_PressTheAttack_Immunity : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t model_scale; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Legion_Commander_PressTheAttack : public CDOTA_Buff
{
public:
int32_t move_speed; // 0x11d8
int32_t hp_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Legion_Commander_MomentOfCourage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Legion_Commander_MomentOfCourage : public CDOTA_Buff
{
public:
int32_t trigger_chance; // 0x11d8
float buff_duration; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Legion_Commander_MomentOfCourage_Lifesteal : public CDOTA_Buff
{
public:
int32_t hp_leech_percent; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Legion_Commander_Duel : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Legion_Commander_Duel_DamageBoost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Holdout_GladiatorsUnite : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Holdout_GladiatorsUnite_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Holdout_GladiatorsUnite : public CDOTA_Buff
{
public:
int32_t bonus_armor_per_hero; // 0x11d8
int32_t bonus_damage_per_hero; // 0x11dc
int32_t lifesteal_per_hero; // 0x11e0
int32_t scepter_damage_reduction_pct; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Techies_Suicide_RespawnTime : public CDOTA_Buff
{
public:
int32_t m_nSuicideKillCount; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_LandMines_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Techies_ReactiveTazer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Techies_ReactiveTazer : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t bonus_ms; // 0x11e0
int32_t stun_radius; // 0x11e4
float stun_duration; // 0x11e8
int32_t damage_percent; // 0x11ec
int32_t m_nDamageRemaining; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_ReactiveTazer_Disarm : public CDOTA_Modifier_Disarmed
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Techies_StickyBomb : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_Techies_StickyBombThrow : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
float m_flPredictedTotalTime; // 0x11dc
Vector m_vStartPosition; // 0x11e0
float m_flCurrentTimeHoriz; // 0x11ec
float m_flCurrentTimeVert; // 0x11f0
bool m_bHorizontalMotionInterrupted; // 0x11f4
bool m_bDamageApplied; // 0x11f5
bool m_bTargetTeleported; // 0x11f6
private:
[[maybe_unused]] uint8_t __pad11f7[0x1]; // 0x11f7
public:
Vector m_vHorizontalVelocity; // 0x11f8
Vector m_vLastKnownTargetPosition; // 0x1204
float m_flInitialVelocityZ; // 0x1210
bool m_bDone; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
int32_t radius; // 0x1218
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_Techies_StickyBomb_Chase : public CDOTA_Buff
{
public:
int32_t acceleration; // 0x11d8
int32_t m_nTeamNumber; // 0x11dc
float speed; // 0x11e0
float pre_chase_time; // 0x11e4
CHandle< CBaseEntity > m_hAttachTarget; // 0x11e8
Vector m_vStartPosition; // 0x11ec
CountdownTimer m_MoveTime; // 0x11f8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Techies_StickyBomb_Countdown : public CDOTA_Buff
{
public:
Vector m_vLastLoc; // 0x11d8
CHandle< CBaseEntity > m_hAttachTarget; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Techies_StickyBomb_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Techies_StickyBomb_Slow_Secondary : public CDOTA_Buff
{
public:
int32_t secondary_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Techies_LandMines : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Techies_LandMine : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
float proximity_threshold; // 0x11ec
float damage; // 0x11f0
float activation_delay; // 0x11f4
float outer_damage; // 0x11f8
int32_t min_distance; // 0x11fc
bool bActivated; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x7]; // 0x1201
public:
CountdownTimer m_Timer; // 0x1208
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Techies_LandMine_Burn : public CDOTA_Buff
{
public:
int32_t mres_reduction; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Techies_StasisTrap : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
CHandle< CBaseEntity > m_hTrap; // 0x55c
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Techies_StasisTrap : public CDOTA_Modifier_Invisible
{
public:
int32_t activation_radius; // 0x11e8
int32_t stun_radius; // 0x11ec
float stun_duration; // 0x11f0
float explode_delay; // 0x11f4
float activation_time; // 0x11f8
bool m_bActivated; // 0x11fc
bool m_bTriggered; // 0x11fd
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_StasisTrap_Stunned : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Techies_Suicide : public CDOTABaseAbility
{
public:
uint32_t m_unSuicideKills; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_Suicide_Leap_Animation : public CDOTA_Modifier_Disarmed
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Techies_Suicide_Leap : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bDamageApplied; // 0x11fd
bool m_bTargetTeleported; // 0x11fe
private:
[[maybe_unused]] uint8_t __pad11ff[0x1]; // 0x11ff
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Techies_RemoteMines : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
CHandle< CBaseEntity > m_hRMine; // 0x55c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_DeployRemoteMine : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1208
class CDOTA_Modifier_Techies_RemoteMine : public CDOTA_Modifier_Invisible
{
public:
int32_t radius; // 0x11e8
int32_t damage; // 0x11ec
int32_t radius_scepter; // 0x11f0
int32_t damage_scepter; // 0x11f4
int32_t vision_radius; // 0x11f8
float vision_duration; // 0x11fc
int32_t model_scale; // 0x1200
bool bExploding; // 0x1204
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Techies_FocusedDetonate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Techies_RemoteMines_SelfDetonate : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Techies_Minefield_Sign : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
ParticleIndex_t m_nFXHammerIndex; // 0x55c
int32_t aura_radius; // 0x560
CHandle< CBaseEntity > m_hSign; // 0x564
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Techies_Minefield_Sign_Thinker : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float trigger_radius; // 0x11dc
float minefield_duration; // 0x11e0
bool m_bTriggered; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_Minefield_Sign_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Techies_Minefield_Sign_Scepter : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float minefield_duration; // 0x11dc
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Techies_Minefield_Sign_Scepter_Aura : public CDOTA_Buff
{
public:
float aura_radius; // 0x11d8
float scepter_move_damage; // 0x11dc
float scepter_move_amt; // 0x11e0
float minefield_duration; // 0x11e4
float m_flMoveAmount; // 0x11e8
Vector m_vLastPosition; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Techies_Arcana_DamageListener : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_EmberSpirit_SearingChains : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_EmberSpirit_SearingChains : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
float tick_interval; // 0x11dc
float tick_damage; // 0x11e0
float duration; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_SlightOfFist_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 4
// Size: 0x588
class CDOTA_Ability_EmberSpirit_SleightOfFist : public CDOTABaseAbility
{
public:
Vector m_vCastLoc; // 0x558
int32_t m_nHeroesKilled; // 0x564
CUtlVector< CHandle< CBaseEntity > > m_hAttackEntities; // 0x568
ParticleIndex_t m_nFXMarkerIndex; // 0x580
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_SleightOfFist_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_SleightOfFist_InProgress : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_EmberSpirit_SleightOfFist_Caster : public CDOTA_Buff
{
public:
int32_t bonus_hero_damage; // 0x11d8
int32_t creep_damage_penalty; // 0x11dc
int32_t radius; // 0x11e0
float attack_interval; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_SleightOfFist_Caster_Invulnerability : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_EmberSpirit_FlameGuard : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_EmberSpirit_FlameGuard : public CDOTA_Buff
{
public:
int32_t absorb_amount; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t radius; // 0x11e0
float tick_interval; // 0x11e4
int32_t shield_pct_absorb; // 0x11e8
int32_t m_nAbsorbRemaining; // 0x11ec
float m_flShowParticleInterval; // 0x11f0
bool m_bDestroy; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EmberSpirit_FlameGuard_Debuff : public CDOTA_Buff
{
public:
int32_t blind_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_FireRemnant_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_EmberSpirit_FireRemnant : public CDOTABaseAbility
{
public:
CUtlVector< RemnantData_t > m_vRemnantData; // 0x558
};
// Alignment: 3
// Size: 0x1210
class CDOTA_Modifier_EmberSpirit_FireRemnant_RemnantTracker : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vActiveRemnants; // 0x11d8
CUtlVector< CHandle< CBaseEntity > > m_vTrackingDelayedRemnants; // 0x11f0
int32_t shard_charge_radius; // 0x1208
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_EmberSpirit_FireRemnantThinker : public CDOTA_Buff
{
public:
int32_t m_nProjectileHandle; // 0x11d8
bool m_bIsShardRemnant; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EmberSpirit_FireRemnant_Shard : public CDOTA_Buff
{
public:
int32_t shard_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EmberSpirit_FireRemnant_Shard_Debuff : public CDOTA_Buff
{
public:
int32_t shard_damage_per_second; // 0x11d8
};
// Alignment: 7
// Size: 0x5b0
class CDOTA_Ability_EmberSpirit_Activate_FireRemnant : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nProjectileID; // 0x568
Vector m_vStartLocation; // 0x56c
Vector m_vProjectileLocation; // 0x578
QAngle m_ProjectileAngles; // 0x584
CHandle< CBaseEntity > m_hRemnantToKill; // 0x590
bool m_bProjectileStarted; // 0x594
private:
[[maybe_unused]] uint8_t __pad0595[0x3]; // 0x595
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x598
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_FireRemnant_Timer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EmberSpirit_FireRemnant : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Earth_Spirit_StoneCaller_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 18
// Size: 0x5d8
class CDOTA_Ability_EarthSpirit_RollingBoulder : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t radius; // 0x568
int32_t speed; // 0x56c
int32_t rock_speed; // 0x570
int32_t damage; // 0x574
int32_t damage_str; // 0x578
float distance; // 0x57c
float rock_distance; // 0x580
float rock_distance_multiplier; // 0x584
float slow_duration; // 0x588
ParticleIndex_t m_nFXIndex; // 0x58c
bool m_boulderSetposBool; // 0x590
private:
[[maybe_unused]] uint8_t __pad0591[0x3]; // 0x591
public:
int32_t m_nProjectileID; // 0x594
Vector m_vStartingLocation; // 0x598
Vector m_vProjectileLocation; // 0x5a4
Vector m_vDir; // 0x5b0
Vector m_vVel; // 0x5bc
bool m_bUsedStone; // 0x5c8
private:
[[maybe_unused]] uint8_t __pad05c9[0x3]; // 0x5c9
public:
Vector m_vRollDirection; // 0x5cc
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_EarthSpirit_RollingBoulder_Caster : public CDOTA_Buff
{
public:
Vector m_vDir; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_EarthSpirit_StoneCaller : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_EarthSpirit_StoneThinker : public CDOTA_Buff
{
public:
int32_t vision_radius; // 0x11d8
bool m_bHasBeenMagnetized; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 12
// Size: 0x588
class CDOTA_Ability_EarthSpirit_BoulderSmash : public CDOTABaseAbility
{
public:
int32_t speed; // 0x558
int32_t rock_damage; // 0x55c
float creep_multiplier; // 0x560
int32_t radius; // 0x564
int32_t rock_search_aoe; // 0x568
float unit_distance; // 0x56c
float rock_distance; // 0x570
int32_t m_nProjectileID; // 0x574
CHandle< CBaseEntity > m_hCursorTarget; // 0x578
bool m_bUsedStone; // 0x57c
private:
[[maybe_unused]] uint8_t __pad057d[0x3]; // 0x57d
public:
CHandle< CBaseEntity > m_hTarget; // 0x580
bool m_bTargetStone; // 0x584
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_EarthSpirit_BoulderSmash : public CDOTA_Buff
{
public:
bool m_bInterrupted; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t m_nProjectileID; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EarthSpirit_Boulder_Smash_Debuff : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EarthSpirit_Geogmagnetic_Grip_Debuff : public CDOTA_Modifier_Silence
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_EarthSpirit_GeomagneticGrip : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
};
// Alignment: 10
// Size: 0x1228
class CDOTA_Modifier_EarthSpirit_GeomagneticGrip : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t rock_damage; // 0x11dc
float pull_units_per_second; // 0x11e0
float pull_units_per_second_heroes; // 0x11e4
float total_pull_distance; // 0x11e8
float duration; // 0x11ec
bool m_bUsedStone; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
Vector m_vDestination; // 0x11f4
Vector m_vLocation; // 0x1200
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1210
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_EarthSpirit_Petrify : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
bool m_bHasBeenMagnetized; // 0x11dc
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_EarthSpirit_Magnetize : public CDOTABaseAbility
{
public:
int32_t cast_radius; // 0x558
int32_t rock_explosion_radius; // 0x55c
float damage_duration; // 0x560
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_EarthSpirit_Magnetize : public CDOTA_Buff
{
public:
int32_t rock_search_radius; // 0x11d8
int32_t damage_per_second; // 0x11dc
float damage_interval; // 0x11e0
float rock_explosion_delay; // 0x11e4
float damage_duration; // 0x11e8
int32_t cast_radius; // 0x11ec
int32_t rock_explosion_radius; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_hExplodedRocks; // 0x11f8
float duration; // 0x1210
bool m_bShowOverhead; // 0x1214
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_EarthSpirit_Petrify : public CDOTABaseAbility
{
public:
int32_t ally_cast_range; // 0x558
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_EarthSpirit_Polarization : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
float damage_interval; // 0x11dc
float damage_duration; // 0x11e0
int32_t rock_search_radius; // 0x11e4
CHandle< CBaseEntity > m_hMagnetizeAbility; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_EarthSpirit_Polarization_Damage_Timer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_AbyssalUnderlord_Firestorm : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AbyssalUnderlord_Firestorm_Thinker : public CDOTA_Buff
{
public:
int32_t wave_damage; // 0x11d8
int32_t wave_count; // 0x11dc
int32_t radius; // 0x11e0
float wave_interval; // 0x11e4
float burn_duration; // 0x11e8
float burn_interval; // 0x11ec
float first_wave_delay; // 0x11f0
float building_damage; // 0x11f4
CHandle< CBaseEntity > m_hTarget; // 0x11f8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AbyssalUnderlord_Firestorm_Burn : public CDOTA_Buff
{
public:
float burn_damage; // 0x11d8
float burn_interval; // 0x11dc
float building_damage; // 0x11e0
};
// Alignment: 1
// Size: 0x568
class CDOTA_Ability_AbyssalUnderlord_PitOfMalice : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Thinker : public CDOTA_Buff
{
public:
int32_t pit_damage; // 0x11d8
int32_t radius; // 0x11dc
float pit_interval; // 0x11e0
float ensnare_duration; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Ensnare : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Slow : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AbyssalUnderlord_PitOfMalice_Buff_Placer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AbyssalUnderlord_AtrophyAura : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Effect : public CDOTA_Buff
{
public:
int32_t damage_reduction_pct; // 0x11d8
float bonus_damage_duration; // 0x11dc
int32_t bonus_damage_from_creep; // 0x11e0
int32_t bonus_damage_from_hero; // 0x11e4
bool m_bWasHidden; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_HeroDmgBuff : public CDOTA_Buff
{
public:
int32_t bonus_damage_from_hero; // 0x11d8
float bonus_shared_by_allies_pct; // 0x11dc
float m_flModifier; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Permanent_HeroDmgBuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_CreepDmgBuff : public CDOTA_Buff
{
public:
int32_t bonus_damage_from_creep; // 0x11d8
float bonus_shared_by_allies_pct; // 0x11dc
float m_flModifier; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_DmgBuffCounter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AbyssalUnderlord_AtrophyAura_Scepter : public CDOTA_Buff
{
public:
int32_t bonus_damage_from_creep; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AbyssalUnderlord_DarkRift : public CDOTABaseAbility
{
public:
float teleport_delay; // 0x558
CHandle< CBaseEntity > m_hTeleportTarget; // 0x55c
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_AbyssalUnderlord_DarkRift : public CDOTA_Buff
{
public:
ParticleIndex_t m_nfxTargetTp; // 0x11d8
int32_t radius; // 0x11dc
int32_t duration; // 0x11e0
ParticleIndex_t m_nfxAmbientFx; // 0x11e4
bool bPointTarget; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
Vector vDestination; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AbyssalUnderlord_DarkRift_Bonus_Health : public CDOTA_Buff
{
public:
int32_t scepter_health_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_AbyssalUnderlord_Cancel_DarkRift : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Underlord_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AbyssalUnderlord_Portal_Warp : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
// MNetworkEnable
float m_flChannelTime; // 0x55c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Underlord_Portal_FX : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPortalAmbientFX; // 0x11d8
float m_fPortalRadius; // 0x11dc
ParticleIndex_t m_nChannelFX; // 0x11e0
int32_t m_nChannelCount; // 0x11e4
ParticleIndex_t m_nCountdownFX; // 0x11e8
};
// Alignment: 12
// Size: 0x1218
class CDOTA_Modifier_Underlord_Portal_Warp_Channel : public CDOTA_Buff
{
public:
ParticleIndex_t m_nfxTargetTp; // 0x11d8
ParticleIndex_t m_nfxTargetTp2; // 0x11dc
ParticleIndex_t m_nfxAmbientFx; // 0x11e0
ParticleIndex_t m_nfxPortal1; // 0x11e4
ParticleIndex_t m_nfxPortal2; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x8]; // 0x11ec
public:
CHandle< CBaseEntity > m_hPortal; // 0x11f4
CHandle< CBaseEntity > m_hOtherPortal; // 0x11f8
Vector m_vStartPosition; // 0x11fc
float m_flTotalTime; // 0x1208
float m_flElapsedTimePortion; // 0x120c
float animation_rate; // 0x1210
int32_t stop_distance; // 0x1214
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Underlord_Portal_Buff : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
int32_t bonus_ms; // 0x11dc
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_AbyssalUnderlord_Dark_Portal : public CDOTABaseAbility
{
public:
float duration; // 0x558
float distance_from_fountain; // 0x55c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Underlord_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Terrorblade_Reflection : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Terrorblade_Reflection_Invulnerability : public CDOTA_Modifier_Invulnerable
{
public:
CHandle< CBaseEntity > hTarget; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Terrorblade_Reflection_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
int32_t attack_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Terrorblade_ConjureImage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Terrorblade_ConjureImage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Terrorblade_Metamorphosis : public CDOTABaseAbility
{
public:
bool m_bBlockMetamorph; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Terrorblade_Demon_Zeal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Terrorblade_Demon_Zeal : public CDOTA_Buff
{
public:
int32_t berserk_bonus_attack_speed; // 0x11d8
int32_t berserk_bonus_movement_speed; // 0x11dc
int32_t melee_bonus; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Terrorblade_Terror_Wave : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Terrorblade_Fear : public CDOTA_Buff
{
public:
Vector m_vOriginal; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform_Aura_Applier : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Terrorblade_Metamorphosis_Transform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Terrorblade_Metamorphosis : public CDOTA_Buff
{
public:
float base_attack_time; // 0x11d8
int32_t bonus_range; // 0x11dc
int32_t m_iOriginalAttackCapabilities; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t speed_loss; // 0x11e8
int32_t attack_projectile_speed_bonus; // 0x11ec
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11f0
CUtlSymbolLarge m_iszOriginalRangedAttackEffect; // 0x11f8
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Terrorblade_Metamorphosis_Fear_Thinker : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x11e8
int32_t scepter_speed; // 0x1200
int32_t scepter_radius; // 0x1204
bool m_bFirstThink; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Terrorblade_Sunder : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Terrorblade_Arcana_Kill_Effect : public CDOTA_Buff
{
public:
bool m_bFrozen; // 0x11d8
bool m_bFlail; // 0x11d9
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_SunRay : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_SunRayStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Phoenix_SunRayVision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 21
// Size: 0x1248
class CDOTA_Modifier_Phoenix_SunRay : public CDOTA_Buff
{
public:
int32_t hp_cost_perc_per_second; // 0x11d8
int32_t beam_range; // 0x11dc
int32_t base_damage; // 0x11e0
int32_t base_heal; // 0x11e4
float tick_interval; // 0x11e8
float forward_move_speed; // 0x11ec
float turn_rate_initial; // 0x11f0
float turn_rate; // 0x11f4
int32_t radius; // 0x11f8
float m_flCurrentTime; // 0x11fc
float m_flAccumulatedSelfDamage; // 0x1200
bool m_bMovingForward; // 0x1204
bool m_bTurningFast; // 0x1205
private:
[[maybe_unused]] uint8_t __pad1206[0x2]; // 0x1206
public:
float m_flFacingTarget; // 0x1208
float hp_perc_damage; // 0x120c
float hp_perc_heal; // 0x1210
ParticleIndex_t m_nBeamFXIndex; // 0x1214
CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1218
CHandle< CBaseEntity > m_hBeamEnd; // 0x1238
bool m_bCreatedVisionThinkers; // 0x123c
private:
[[maybe_unused]] uint8_t __pad123d[0x3]; // 0x123d
public:
CHandle< CBaseEntity > m_hBeamEndSound; // 0x1240
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Phoenix_Sun_Ray_Slow : public CDOTA_Buff
{
public:
int32_t shard_move_slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_SunRayToggleMove : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Phoenix_IcarusDive : public CDOTABaseAbility
{
public:
int32_t hp_cost_perc; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_IcarusDiveStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1238
class CDOTA_Modifier_Phoenix_IcarusDive : public CDOTA_Buff
{
public:
Vector m_vSource; // 0x11d8
Vector m_vTarget; // 0x11e4
Vector m_vDirection; // 0x11f0
QAngle m_angDirection; // 0x11fc
float m_flCurrentTime; // 0x1208
int32_t dash_length; // 0x120c
int32_t dash_width; // 0x1210
int32_t hit_radius; // 0x1214
float burn_duration; // 0x1218
float dive_duration; // 0x121c
CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x1220
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Phoenix_IcarusDiveBurn : public CDOTA_Buff
{
public:
float burn_tick_interval; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t slow_movement_speed_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_FireSpirits : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Phoenix_FireSpiritCount : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_Phoenix_LaunchFireSpirit : public CDOTABaseAbility
{
public:
int32_t spirit_speed; // 0x558
float duration; // 0x55c
int32_t radius; // 0x560
ParticleIndex_t m_nFXIndex; // 0x564
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Phoenix_FireSpiritBurn : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
int32_t damage_per_second; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Phoenix_Supernova : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Phoenix_SupernovaHiding : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Phoenix_Sun : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float stun_duration; // 0x11dc
int32_t max_hero_attacks; // 0x11e0
int32_t max_hero_attacks_scepter; // 0x11e4
int32_t max_hero_attacks_required; // 0x11e8
CHandle< CBaseEntity > m_hSecondaryTarget; // 0x11ec
int32_t m_iAttackCount; // 0x11f0
int32_t creep_attacks_count; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Phoenix_Sun_Debuff : public CDOTA_Buff
{
public:
int32_t damage_per_sec; // 0x11d8
};
// Alignment: 11
// Size: 0x588
class CDOTA_Ability_Oracle_FortunesEnd : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
int32_t radius; // 0x55c
int32_t bolt_speed; // 0x560
float maximum_purge_duration; // 0x564
float minimum_purge_duration; // 0x568
GameTime_t m_flStartTime; // 0x56c
float m_flDuration; // 0x570
float m_flDamage; // 0x574
bool m_bAbsorbed; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
CHandle< CBaseEntity > m_hTarget; // 0x57c
ParticleIndex_t m_nFXIndex; // 0x580
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Oracle_FortunesEndChannelTarget : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Oracle_FortunesEndPurge : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Oracle_FatesEdict : public CDOTABaseAbility
{
public:
bool m_bTargetIsAlly; // 0x558
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Oracle_FatesEdict : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Oracle_PurifyingFlames : public CDOTABaseAbility
{
public:
bool m_bTargetIsAlly; // 0x558
private:
[[maybe_unused]] uint8_t __pad0559[0x3]; // 0x559
public:
CHandle< CBaseEntity > m_hRecentTarget; // 0x55c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Oracle_PurifyingFlames : public CDOTA_Buff
{
public:
float heal_per_second; // 0x11d8
float tick_rate; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Oracle_FalsePromise : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Oracle_FalsePromiseTimer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Oracle_FalsePromise_Invis : public CDOTA_Modifier_PersistentInvisibility
{
public:
float shard_spell_amp_bonus; // 0x11e8
float shard_bat_bonus; // 0x11ec
};
// Alignment: 8
// Size: 0x1228
class CDOTA_Modifier_Oracle_FalsePromise : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x30]; // 0x11d8
public:
bool m_bWaitingForInvulnerability; // 0x1208
bool m_bDisableHealing; // 0x1209
private:
[[maybe_unused]] uint8_t __pad120a[0x2]; // 0x120a
public:
float m_flHealthOnCreated; // 0x120c
ParticleIndex_t m_nFXIndex; // 0x1210
ParticleIndex_t m_nFXIndexB; // 0x1214
float m_flRunningDmg; // 0x1218
float m_flRunningHealth; // 0x121c
int32_t bonus_armor; // 0x1220
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Oracle_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Oracle_RainOfDestiny : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Oracle_RainOfDestiny_Aura : public CDOTA_Buff
{
public:
float damage; // 0x11d8
int32_t radius; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Oracle_RainOfDestiny : public CDOTA_Buff
{
public:
int32_t heal_amp; // 0x11d8
};
// Alignment: 1
// Size: 0x570
class CDOTA_Ability_Winter_Wyvern_Arctic_Burn : public CDOTABaseAbility
{
public:
CUtlVector< CEntityIndex > m_BurnedTargets; // 0x558
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Frost_Attack : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Flight : public CDOTA_Buff
{
public:
float attack_point; // 0x11d8
int32_t attack_range_bonus; // 0x11dc
int32_t projectile_speed_bonus; // 0x11e0
int32_t night_vision_bonus; // 0x11e4
int32_t movement_scepter; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11f0
int32_t max_attacks; // 0x11f8
int32_t m_iNumAttacks; // 0x11fc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Winter_Wyvern_Arctic_Burn_Slow : public CDOTA_Buff
{
public:
float percent_damage; // 0x11d8
int32_t move_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x560
class CDOTA_Ability_Winter_Wyvern_Splinter_Blast : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Winter_Wyvern_Splinter_Blast_Slow : public CDOTA_Buff
{
public:
int32_t bonus_movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Winter_Wyvern_Cold_Embrace : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Winter_Wyvern_Cold_Embrace : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t heal_additive; // 0x11e0
float heal_percentage; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Winter_Wyvern_Winters_Curse : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Winter_Wyvern_Winters_Curse_Kill_Credit : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Winter_Wyvern_Winters_Curse_Aura : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nAlliesTaunted; // 0x11dc
bool m_bRelicTriggered; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t radius; // 0x11e4
int32_t damage_amplification; // 0x11e8
int32_t damage_reduction; // 0x11ec
GameTime_t m_flLastSeen; // 0x11f0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Winter_Wyvern_Winters_Curse : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
CHandle< CBaseEntity > m_hDesiredTarget; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ArcWarden_Flux : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1210
class CDOTA_Modifier_ArcWarden_Flux : public CDOTA_Buff
{
public:
int32_t m_nCasterTeam; // 0x11d8
int32_t damage_per_second; // 0x11dc
int32_t tempest_damage_per_second; // 0x11e0
int32_t search_radius; // 0x11e4
int32_t move_speed_slow_pct; // 0x11e8
int32_t tempest_move_speed_slow_pct; // 0x11ec
int32_t status_resist; // 0x11f0
float think_interval; // 0x11f4
int32_t m_nCurrentMovementSlow; // 0x11f8
int32_t m_nCurrentStatusResistance; // 0x11fc
bool m_bAlone; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
ParticleIndex_t m_nFXIndex; // 0x1204
bool m_bIsTempestVersion; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ArcWarden_MagneticField : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_ArcWarden_MagneticField_Thinker_Evasion : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t radius; // 0x11e0
Vector m_vPos; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ArcWarden_MagneticField_Thinker_Attack_Speed : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_ArcWarden_MagneticField_Evasion : public CDOTA_Buff
{
public:
int32_t evasion_chance; // 0x11d8
int32_t radius; // 0x11dc
int32_t shard_magic_resist; // 0x11e0
int32_t shard_slow_pct; // 0x11e4
float aura_origin_x; // 0x11e8
float aura_origin_y; // 0x11ec
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_ArcWarden_MagneticField_Thinker_AttackRange : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t radius; // 0x11e0
Vector m_vPos; // 0x11e4
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_ArcWarden_MagneticField_AttackRange : public CDOTA_Buff
{
public:
int32_t attack_range_bonus; // 0x11d8
int32_t attack_magic_damage; // 0x11dc
int32_t radius; // 0x11e0
int32_t shard_magic_resist; // 0x11e4
int32_t shard_slow_pct; // 0x11e8
float aura_origin_x; // 0x11ec
float aura_origin_y; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ArcWarden_MagneticField_Attack_Speed : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus; // 0x11d8
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_ArcWarden_SparkWraith : public CDOTABaseAbility
{
public:
float duration; // 0x558
float activation_delay; // 0x55c
float wraith_vision_duration; // 0x560
int32_t wraith_vision_radius; // 0x564
int32_t spark_damage; // 0x568
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ArcWarden_SparkWraith_Purge : public CDOTA_Buff
{
public:
int32_t move_speed_slow_pct; // 0x11d8
};
// Alignment: 11
// Size: 0x1208
class CDOTA_Modifier_ArcWarden_SparkWraith_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t scepter_radius; // 0x11dc
int32_t wraith_vision_radius; // 0x11e0
int32_t wraith_speed; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e8[0x8]; // 0x11e8
public:
float activation_delay; // 0x11f0
float scepter_activation_delay; // 0x11f4
float think_interval; // 0x11f8
int32_t m_nSparkDamage; // 0x11fc
int32_t m_nViewerID; // 0x1200
bool m_bActive; // 0x1204
bool m_bOriginal; // 0x1205
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_ArcWarden_TempestDouble : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hDoubles; // 0x558
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_ArcWarden_TempestDouble : public CDOTA_Buff
{
public:
int32_t penalty_distance; // 0x11d8
int32_t attack_damage_penalty; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ArcWarden_TempestDouble_DistancePenalty : public CDOTA_Buff
{
public:
int32_t attack_damage_penalty; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_ArcWarden_Scepter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Arc_Warden_Scepter : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hRune; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Banana : public CDOTA_Buff
{
public:
int32_t slide_distance; // 0x11d8
int32_t radius; // 0x11dc
float slide_duration; // 0x11e0
};
// Alignment: 11
// Size: 0x1228
class CDOTA_Modifier_Banana_Knockback : public CDOTA_Buff
{
public:
Vector m_vCenter; // 0x11d8
int32_t knockback_distance; // 0x11e4
int32_t knockback_height; // 0x11e8
float knockback_duration; // 0x11ec
Vector m_vHorizOffset; // 0x11f0
Vector m_vStartPosition; // 0x11fc
Vector m_vDir; // 0x1208
float m_fCurrentTimeHoriz; // 0x1214
float m_fCurrentTimeVert; // 0x1218
bool m_bShouldStun; // 0x121c
private:
[[maybe_unused]] uint8_t __pad121d[0x3]; // 0x121d
public:
float flTimeSinceChange; // 0x1220
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_MonkeyKing_TreeDance : public CDOTABaseAbility
{
public:
int32_t perched_jump_distance; // 0x558
int32_t ground_jump_distance; // 0x55c
};
// Alignment: 5
// Size: 0x578
class CDOTA_Ability_MonkeyKing_Spring : public CDOTABaseAbility
{
public:
Vector m_vPos; // 0x558
GameTime_t m_fStartChannelTime; // 0x564
CHandle< CBaseEntity > m_hThinker; // 0x568
ParticleIndex_t m_nFxIndex; // 0x56c
int32_t m_nRefCount; // 0x570
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_MonkeyKing_Boundless_Strike : public CDOTABaseAbility
{
public:
int32_t strike_cast_range; // 0x558
int32_t strike_radius; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x560
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_Strike_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_Strike_Crit : public CDOTA_Buff
{
public:
int32_t strike_crit_mult; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_Bounce : public CDOTA_Buff
{
public:
float jump_damage_cooldown; // 0x11d8
};
// Alignment: 18
// Size: 0x1228
class CDOTA_Modifier_MonkeyKing_BounceLeap : public CDOTA_Buff
{
public:
float give_up_distance; // 0x11d8
float ground_jump_distance; // 0x11dc
float m_flZDelta; // 0x11e0
float perched_day_vision; // 0x11e4
float perched_night_vision; // 0x11e8
Vector m_vStart; // 0x11ec
CHandle< CBaseEntity > m_hTarget; // 0x11f8
Vector m_vTargetPos; // 0x11fc
float m_flSpeed; // 0x1208
bool m_bTargetingEntity; // 0x120c
bool m_bGroundToTree; // 0x120d
bool m_bTreeToGround; // 0x120e
bool m_bTreeToTree; // 0x120f
bool m_bIsSpringJump; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1211[0x3]; // 0x1211
public:
float m_fSpringChanneledPercent; // 0x1214
int32_t m_nLeapSpeed; // 0x1218
ParticleIndex_t m_nFXIndex; // 0x121c
ParticleIndex_t m_nFXIndex2; // 0x1220
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MonkeyKing_Spring_Early : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_TreeDance_Activity : public CDOTA_Buff
{
public:
float m_fAbilityRangePct; // 0x11d8
float m_bIsSpring; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_RightClickJump_Activity : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_SpringSlow : public CDOTA_Buff
{
public:
int32_t impact_movement_slow; // 0x11d8
int32_t m_nSlowPct; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_Spring_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_TreeJump_Hidden : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_UnperchedStunned : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_MonkeyKing_ArcToGround : public CDOTA_Buff
{
public:
float leap_speed; // 0x11d8
float give_up_distance; // 0x11dc
float attackspeed_duration; // 0x11e0
float m_flOriginalZDelta; // 0x11e4
float m_flZDelta; // 0x11e8
Vector m_vStart; // 0x11ec
Vector m_vTargetPos; // 0x11f8
float m_flSpeed; // 0x1204
bool m_bDroppedFromTree; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
ParticleIndex_t m_nFXIndex; // 0x120c
ParticleIndex_t m_nFXIndex2; // 0x1210
float m_flOriginalHeight; // 0x1214
bool m_bRightClickHop; // 0x1218
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MonkeyKing_Transform : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1220
class CDOTA_Modifier_MonkeyKing_Transform : public CDOTA_Buff
{
public:
CUtlString m_strDisguise; // 0x11d8
int32_t movespeed; // 0x11e0
int32_t m_nDisguisedSpeed; // 0x11e4
int32_t reveal_radius; // 0x11e8
ParticleIndex_t m_nDisguiseEffectIndex; // 0x11ec
CHandle< CBaseEntity > m_hCourierToClone; // 0x11f0
CHandle< CBaseEntity > m_hCreepToClone; // 0x11f4
CUtlVector< CHandle< CBaseEntity > > m_aryBountyRuneSpawners; // 0x11f8
bool m_bIsFlyingCourier; // 0x1210
bool m_bIsRune; // 0x1211
bool m_bIsBanana; // 0x1212
bool m_bIsFakeAlly; // 0x1213
uint32_t m_nMischiefUnitType; // 0x1214
int32_t m_nMischiefHealthbarOffset; // 0x1218
float invul_duration; // 0x121c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MonkeyKing_UnTransform : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_MonkeyKing_FurArmyThinker : public CDOTA_Buff
{
public:
float m_fDuration; // 0x11d8
GameTime_t m_fTimeThinkerCreated; // 0x11dc
CUtlVector< Vector > m_vTargetPositions; // 0x11e0
Vector m_vInitialPos; // 0x11f8
int32_t first_radius; // 0x1204
int32_t num_first_soldiers; // 0x1208
int32_t second_radius; // 0x120c
int32_t num_second_soldiers; // 0x1210
ParticleIndex_t m_nRingFXIndex; // 0x1214
int32_t final_radius; // 0x1218
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_MonkeyKing_FurArmy_Soldier : public CDOTA_Buff
{
public:
Vector m_vTargetPos; // 0x11d8
Vector m_vDirection; // 0x11e4
int32_t move_speed; // 0x11f0
CHandle< CBaseEntity > m_hThinker; // 0x11f4
bool m_bIsInPosition; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
ParticleIndex_t m_nFXIndex; // 0x11fc
bool m_bAutoSpawn; // 0x1200
};
// Alignment: 10
// Size: 0x1208
class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierInPosition : public CDOTA_Buff
{
public:
Vector m_vTargetPos; // 0x11d8
CHandle< CBaseEntity > m_hAttackTarget; // 0x11e4
float attack_speed; // 0x11e8
int32_t second_radius; // 0x11ec
int32_t outer_attack_buffer; // 0x11f0
CHandle< CBaseEntity > m_hThinker; // 0x11f4
bool m_bDisarmed; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
GameTime_t m_flNextAttackTime; // 0x11fc
ParticleIndex_t m_nFXIndex; // 0x1200
bool m_bAutoSpawn; // 0x1204
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierInactive : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_FurArmy_SoldierHidden : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ObliterateSoldier : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_FurArmy_BonusDamage : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_MonkeyKing_QuadrupleTap : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_MonkeyKing_QuadrupleTap : public CDOTA_Buff
{
public:
int32_t counter_duration; // 0x11d8
int32_t required_hits; // 0x11dc
int32_t max_duration; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MonkeyKing_QuadrupleTap_Counter : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXStackIndex; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_MonkeyKing_QuadrupleTap_Bonuses : public CDOTA_Buff
{
public:
int32_t charges; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t lifesteal; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
int32_t m_nIgnoreStrikeIndex; // 0x11e8
bool m_bIsAttackAnim; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_CloudRun : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MonkeyKing_CloudRunStart : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1220
class CDOTA_Modifier_MonkeyKing_BoundlessStrike_ShardMovement : public CDOTA_Buff
{
public:
float m_flPredictedTotalTime; // 0x11d8
Vector m_vStartPosition; // 0x11dc
float m_flCurrentTimeHoriz; // 0x11e8
float m_flCurrentTimeVert; // 0x11ec
bool m_bHorizontalMotionInterrupted; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
Vector m_vHorizontalVelocity; // 0x11f4
Vector m_vLastKnownTargetPosition; // 0x1200
float m_flInitialVelocityZ; // 0x120c
int32_t acceleration_z; // 0x1210
int32_t min_height_above_lowest; // 0x1214
int32_t min_height_above_highest; // 0x1218
int32_t max_horizontal_acceleration; // 0x121c
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pangolier_HeartPiercer : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_HeartPiercer : public CDOTA_Buff
{
public:
float debuff_delay; // 0x11d8
int32_t chance_pct; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_HeartPiercer_Delay : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float debuff_delay; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_HeartPiercer_Debuff : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pangolier_LuckyShot : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_LuckyShot : public CDOTA_Buff
{
public:
int32_t chance_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_LuckyShot_Disarm : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
int32_t armor; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_LuckyShot_Silence : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pangolier_ShieldCrash : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1208
class CDOTA_Modifier_Pangolier_ShieldCrash_Jump : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
float jump_duration_gyroshell; // 0x11dc
int32_t jump_height; // 0x11e0
int32_t jump_height_gyroshell; // 0x11e4
float m_flStartZ; // 0x11e8
float m_flCurTime; // 0x11ec
float m_flJumpDuration; // 0x11f0
float m_flJumpHeight; // 0x11f4
int32_t jump_horizontal_distance; // 0x11f8
Vector m_vTargetHorizontalDirection; // 0x11fc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_ShieldCrash_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_ShieldCrash_Buff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pangolier_Swashbuckle_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 11
// Size: 0x5c0
class CDOTA_Ability_Pangolier_Swashbuckle : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t dash_speed; // 0x568
int32_t start_radius; // 0x56c
int32_t end_radius; // 0x570
int32_t range; // 0x574
int32_t damage; // 0x578
Vector m_vDashPosition; // 0x57c
Vector m_vFacePosition; // 0x588
Vector m_vEndpoint; // 0x594
Vector m_vSlashDir; // 0x5a0
int32_t m_nDashProjectileID; // 0x5ac
Vector m_vDashProjectileLocation; // 0x5b0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_Swashbuckle_Attack : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Pangolier_Swashbuckle : public CDOTA_Buff
{
public:
int32_t m_nStrikesLeft; // 0x11d8
float attack_interval; // 0x11dc
Vector m_vSpawnPos; // 0x11e0
Vector m_vStrikeDir; // 0x11ec
Vector m_vDashDir; // 0x11f8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pangolier_Swashbuckle_Stunned : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Pangolier_Gyroshell : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFxIndex; // 0x558
};
// Alignment: 20
// Size: 0x1278
class CDOTA_Modifier_Pangolier_Gyroshell : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t mp_cost_per_second; // 0x11d8
float tick_interval; // 0x11dc
float forward_move_speed; // 0x11e0
float turn_rate_boosted; // 0x11e4
float turn_rate; // 0x11e8
int32_t hit_radius; // 0x11ec
int32_t knockback_radius; // 0x11f0
bool m_bHitFirstUpdate; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
GameTime_t m_flHitEndTime; // 0x11f8
float hit_recover_time; // 0x11fc
GameTime_t m_flJumpEndTime; // 0x1200
float jump_recover_time; // 0x1204
float m_flTurnBoostProgress; // 0x1208
float m_flFacingTarget; // 0x120c
bool m_bIsJumping; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1211[0x3]; // 0x1211
public:
ParticleIndex_t m_nFXIndex; // 0x1214
CUtlVector< float32 > m_flTurnHistory; // 0x1218
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1230
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x1248
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x1260
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Pangolier_Gyroshell_Ricochet : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pangolier_GyroshellStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pangolier_GyroshellTimeout : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Pangolier_GyroshellBounce : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bTargetTeleported; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Pangolier_Gyroshell_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Pangolier_Rollup : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFxIndex; // 0x558
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Pangolier_RollupStop : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 22
// Size: 0x1280
class CDOTA_Modifier_Pangolier_Rollup : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t mp_cost_per_second; // 0x11d8
float tick_interval; // 0x11dc
float forward_move_speed; // 0x11e0
float turn_rate_boosted; // 0x11e4
float turn_rate; // 0x11e8
int32_t hit_radius; // 0x11ec
int32_t knockback_radius; // 0x11f0
bool m_bHitFirstUpdate; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
GameTime_t m_flHitEndTime; // 0x11f8
float hit_recover_time; // 0x11fc
GameTime_t m_flJumpEndTime; // 0x1200
float jump_recover_time; // 0x1204
float m_flTurnBoostProgress; // 0x1208
float m_flFacingTarget; // 0x120c
GameTime_t m_flLastHeroAttackTime; // 0x1210
bool m_bIsJumping; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
ParticleIndex_t m_nFXIndex; // 0x1218
float m_flGyroshellDurationRemaining; // 0x121c
CUtlVector< float32 > m_flTurnHistory; // 0x1220
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitLastRicochet; // 0x1238
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesCredited; // 0x1250
CUtlVector< CHandle< CBaseEntity > > m_vecHeroesHitCurrentRicochet; // 0x1268
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkWillow_BrambleMaze : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_DarkWillow_BrambleMaze_Creation_Thinker : public CDOTA_Buff
{
public:
float latch_creation_interval; // 0x11d8
float initial_creation_delay; // 0x11dc
int32_t placement_count; // 0x11e0
float placement_duration; // 0x11e4
int32_t m_iBramblesIndex; // 0x11e8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_DarkWillow_BrambleMaze_Thinker : public CDOTA_Buff
{
public:
int32_t latch_range; // 0x11d8
int32_t latch_vision; // 0x11dc
float latch_creation_delay; // 0x11e0
float latch_duration; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e8[0x8]; // 0x11e8
public:
bool m_bActive; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DarkWillow_BrambleMaze : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkWillow_ShadowRealm : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DarkWillow_ShadowRealm_FadeTime : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_DarkWillow_ShadowRealm_Buff : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float max_damage_duration; // 0x11dc
int32_t attack_range_bonus; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
bool bAttackRange; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
GameTime_t m_flStartTime; // 0x1204
GameTime_t m_flFadeTime; // 0x1208
float m_flDamageScale; // 0x120c
float duration; // 0x1210
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_DarkWillow_ShadowRealm_Buff_Attack_Logic : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t m_iRecord; // 0x11dc
float m_flDamageScale; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_DarkWillow_CursedCrown : public CDOTABaseAbility
{
public:
CHandle< CDOTABaseAbility > m_hSourceAbility; // 0x558
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_DarkWillow_CursedCrown : public CDOTA_Buff
{
public:
float delay; // 0x11d8
float stun_duration; // 0x11dc
int32_t stun_radius; // 0x11e0
GameTime_t m_fStartTime; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_DarkWillow_Bedlam : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_DarkWillow_Bedlam : public CDOTA_Buff
{
public:
float m_flRotation; // 0x11d8
CHandle< CBaseEntity > m_hWisp; // 0x11dc
GameTime_t m_flLastAttack; // 0x11e0
int32_t roaming_radius; // 0x11e4
int32_t attack_radius; // 0x11e8
float roaming_seconds_per_rotation; // 0x11ec
float attack_interval; // 0x11f0
int32_t target_count; // 0x11f4
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_DarkWillow_Terrorize : public CDOTABaseAbility
{
public:
ParticleIndex_t m_nFXIndex; // 0x558
};
// Alignment: 14
// Size: 0x1218
class CDOTA_Modifier_DarkWillow_Terrorize_Thinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hWisp; // 0x11d8
int32_t destination_travel_speed; // 0x11dc
int32_t return_travel_speed; // 0x11e0
int32_t destination_radius; // 0x11e4
float destination_status_duration; // 0x11e8
float initial_delay; // 0x11ec
float starting_height; // 0x11f0
Vector m_vAttackLocation; // 0x11f4
bool m_bAttacking; // 0x1200
bool m_bReturning; // 0x1201
private:
[[maybe_unused]] uint8_t __pad1202[0x2]; // 0x1202
public:
float m_fCurHeight; // 0x1204
float m_fEstimatedTravelTime; // 0x1208
float think_interval; // 0x120c
bool m_bInFlight; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkWillow_Debuff_Fear : public CDOTA_Modifier_Fear
{
public:
bool m_bDidGiveOrder; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DarkWillow_Creature_Invulnerable : public CDOTA_Buff
{
public:
int32_t m_nOverrideAnim; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_DarkWillow_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Grimstroke_InkCreature : public CDOTABaseAbility
{
public:
float spawn_time; // 0x558
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grimstroke_InkCreature_Spawning : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hAttachTarget; // 0x11d8
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_Grimstroke_InkCreature : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
ParticleIndex_t m_nAmbientFXIndex; // 0x11dc
int32_t m_nAttackCount; // 0x11e0
bool m_bIsLatched; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CHandle< CBaseEntity > m_hAttachTarget; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CountdownTimer m_EnemyVision; // 0x11f0
float latch_duration; // 0x1208
float speed; // 0x120c
int32_t destroy_attacks; // 0x1210
int32_t hero_attack_multiplier; // 0x1214
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Grimstroke_InkCreature_Debuff : public CDOTA_Buff
{
public:
float m_flCurrentArmorReduction; // 0x11d8
CHandle< CBaseEntity > m_hLatchedCreature; // 0x11dc
float tick_interval; // 0x11e0
int32_t damage_per_second; // 0x11e4
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Grimstroke_InkCreature_Latched : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hAttachTarget; // 0x11d8
float m_fZOffset; // 0x11dc
bool m_bRemovedByEnemy; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
float latch_duration; // 0x11e4
int32_t pop_damage; // 0x11e8
int32_t latched_unit_offset; // 0x11ec
int32_t latched_unit_offset_short; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Grimstroke_Scepter : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_Grimstroke_SpiritWalk : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
};
// Alignment: 14
// Size: 0x1210
class CDOTA_Modifier_Grimstroke_SpiritWalk_Buff : public CDOTA_Buff
{
public:
GameTime_t m_fStartTime; // 0x11d8
int32_t m_nHeroTickDamageApplied; // 0x11dc
GameTime_t m_fLastEffectsTime; // 0x11e0
int32_t radius; // 0x11e4
float buff_duration; // 0x11e8
float debuff_duration; // 0x11ec
int32_t max_damage; // 0x11f0
float max_stun; // 0x11f4
int32_t movespeed_bonus_pct; // 0x11f8
int32_t damage_per_tick; // 0x11fc
float tick_rate; // 0x1200
float max_threshold_duration; // 0x1204
int32_t shard_bonus_damage_pct; // 0x1208
int32_t shard_heal_pct; // 0x120c
};
// Alignment: 17
// Size: 0x5b8
class CDOTA_Ability_Grimstroke_DarkArtistry : public CDOTABaseAbility
{
public:
Vector m_vCastDir; // 0x558
GameTime_t m_fStartTime; // 0x564
float m_fTotalTime; // 0x568
int32_t m_nProjectileID; // 0x56c
Vector m_vProjectileDir; // 0x570
ParticleIndex_t m_nFXIndex; // 0x57c
ParticleIndex_t m_nFXIndexB; // 0x580
int32_t m_nTargetsHit; // 0x584
int32_t m_nHeroesHit; // 0x588
int32_t m_nVisibleHeroesHit; // 0x58c
float m_fDmgMultiplierTalent; // 0x590
private:
[[maybe_unused]] uint8_t __pad0594[0x8]; // 0x594
public:
float slow_duration; // 0x59c
int32_t start_radius; // 0x5a0
int32_t end_radius; // 0x5a4
int32_t damage; // 0x5a8
int32_t bonus_damage_per_target; // 0x5ac
float vision_duration; // 0x5b0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grimstroke_DarkArtistry_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow_pct; // 0x11d8
};
// Alignment: 3
// Size: 0x568
class CDOTA_Ability_Grimstroke_SoulChain : public CDOTABaseAbility
{
public:
float chain_duration; // 0x558
int32_t chain_latch_radius; // 0x55c
float creep_duration_pct; // 0x560
};
// Alignment: 17
// Size: 0x1220
class CDOTA_Modifier_Grimstroke_SoulChain : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hPartner; // 0x11d8
bool m_bIsPrimary; // 0x11dc
bool m_bEscaped; // 0x11dd
bool m_bTethered; // 0x11de
private:
[[maybe_unused]] uint8_t __pad11df[0x1]; // 0x11df
public:
ParticleIndex_t m_nFXIndex; // 0x11e0
ParticleIndex_t m_nFXIndexA; // 0x11e4
ParticleIndex_t m_nFXIndexB; // 0x11e8
bool m_bStartedLeashSound; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_fLeashDistance; // 0x11f0
GameTime_t m_fOriginalStartTime; // 0x11f4
ParticleIndex_t m_nOverheadFXIndex; // 0x11f8
int32_t chain_latch_radius; // 0x11fc
int32_t chain_break_distance; // 0x1200
float leash_limit_multiplier; // 0x1204
float chain_duration; // 0x1208
float creep_duration_pct; // 0x120c
int32_t bonus_reflected_spell_damage; // 0x1210
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_Grimstroke_SoulChain_ChannelCheck : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hAbility; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_hAbilities; // 0x11e0
Vector m_vLocation; // 0x11f8
GameTime_t m_fChannelEnd; // 0x1204
bool m_bInterrupt; // 0x1208
bool m_bExpired; // 0x1209
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Grimstroke_Dark_Portrait : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grimstroke_Scepter_Buff : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t images_movespeed_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Grimstroke_Ink_Over : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Grimstroke_Shard_Buff : public CDOTA_Buff
{
public:
int32_t total_damage; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t move_speed; // 0x11e0
float m_flInterval; // 0x11e4
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Grimstroke_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x5b0
class CDOTA_Ability_Mars_Spear : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x558
private:
[[maybe_unused]] uint8_t __pad0570[0x8]; // 0x570
public:
int32_t damage; // 0x578
private:
[[maybe_unused]] uint8_t __pad057c[0x4]; // 0x57c
public:
CUtlVector< CHandle< CBaseEntity > > hImpaledTargetList; // 0x580
int32_t m_nTargetsImpaled; // 0x598
int32_t m_nMaxImpaleTargets; // 0x59c
Vector m_vLastTrailThinkerLocation; // 0x5a0
bool bHasStartedBurning; // 0x5ac
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Mars_Spear_Impale : public CDOTA_Buff
{
public:
int32_t m_nProjectileHandle; // 0x11d8
bool m_bLatched; // 0x11dc
bool m_bHitArenaOfBlood; // 0x11dd
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Special_Mars_Spear_Burning_Trail_Thinker : public CDOTA_Buff
{
public:
Vector m_vPathDir; // 0x11d8
int32_t shard_trail_radius; // 0x11e4
float shard_debuff_linger_duration; // 0x11e8
float shard_interval; // 0x11ec
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Special_Mars_Spear_Burning_Trail_Burn : public CDOTA_Buff
{
public:
int32_t shard_dps; // 0x11d8
int32_t shard_move_slow_pct; // 0x11dc
float shard_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mars_Spear_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Mars_ArenaOfBlood : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Mars_ArenaOfBlood_Thinker : public CDOTA_Buff
{
public:
float radius; // 0x11d8
float formation_time; // 0x11dc
float m_flInitialZ; // 0x11e0
float m_flFinalZ; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e8[0x10]; // 0x11e8
public:
bool m_bCaughtOne; // 0x11f8
bool m_bKilledOne; // 0x11f9
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_ArenaOfBlood_AnimationAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mars_ArenaOfBlood_Animation : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_ArenaOfBlood_BuffAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_ArenaOfBlood_Buff : public CDOTA_Buff
{
public:
int32_t health_regen; // 0x11d8
};
// Alignment: 7
// Size: 0x1240
class CDOTA_Modifier_Mars_ArenaOfBlood : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t width; // 0x11dc
int32_t spear_damage; // 0x11e0
int32_t spear_distance_from_wall; // 0x11e4
float spear_attack_interval; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x34]; // 0x11ec
public:
int32_t m_hObstruction; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
CUtlVector< Vector > m_vecAvoidLocations; // 0x1228
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Mars_ArenaOfBlood_Spear : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Mars_ArenaOfBlood_Leash : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float width; // 0x11dc
Vector m_vOriginLoc; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mars_ArenaOfBlood_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Mars_Bulwark : public CDOTABaseAbility
{
public:
GameTime_t m_flNextAttack; // 0x558
GameTime_t m_flLastActive; // 0x55c
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_Mars_Bulwark : public CDOTA_Buff
{
public:
float physical_damage_reduction; // 0x11d8
float physical_damage_reduction_side; // 0x11dc
float forward_angle; // 0x11e0
float side_angle; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e8[0x18]; // 0x11e8
public:
float m_flRecentDamage; // 0x1200
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Mars_Bulwark_Active : public CDOTA_Buff
{
public:
int32_t redirect_chance; // 0x11d8
int32_t redirect_range; // 0x11dc
float forward_angle; // 0x11e0
float side_angle; // 0x11e4
int32_t redirect_speed_penatly; // 0x11e8
int32_t redirect_close_range; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mars_Bulwark_Soldier_Bonus : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Mars_Bulwark_Soldier_Thinker : public CDOTA_Buff
{
public:
GameTime_t m_NextAttack; // 0x11d8
CHandle< CBaseEntity > m_hSoldier1; // 0x11dc
CHandle< CBaseEntity > m_hSoldier2; // 0x11e0
CHandle< CBaseEntity > m_hSoldier3; // 0x11e4
CHandle< CBaseEntity > m_hSoldier4; // 0x11e8
CHandle< CBaseEntity > m_hSoldier5; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mars_Scepter_Damage_Tracker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_Scepter_Damage_Slow : public CDOTA_Buff
{
public:
int32_t scepter_movement_slow_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_Scepter_Damage : public CDOTA_Buff
{
public:
int32_t scepter_bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Mars_GodsRebuke : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_Gods_Rebuke : public CDOTA_Buff
{
public:
int32_t knockback_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mars_GodsRebuke_Crit : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_MarsSpearStunDuration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_ArenaOfBloodHPRegen : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_SpearBonusDamage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_GodsRebuke_ExtraCrit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_SpearCooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_RebukeCooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_GodsRebuke_Slow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bulwark_Speed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Bulwark_DamageReduction : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Snapfire_MortimerKisses : public CDOTABaseAbility
{
public:
int32_t m_nDamagePerProjectile; // 0x558
int32_t damage_per_impact; // 0x55c
int32_t impact_radius; // 0x560
int32_t projectile_vision; // 0x564
};
// Alignment: 21
// Size: 0x1240
class CDOTA_Modifier_Snapfire_MortimerKisses : public CDOTA_Buff
{
public:
float m_fIntervalPerRocket; // 0x11d8
float m_flFacingTarget; // 0x11dc
ParticleIndex_t m_nBeamFXIndex; // 0x11e0
CHandle< CBaseEntity > m_hBeamEnd; // 0x11e4
float m_flCurDistance; // 0x11e8
Vector m_vAimTarget; // 0x11ec
float m_fLastTurnAmount; // 0x11f8
int32_t m_nProjectilesLaunched; // 0x11fc
bool m_bDestroyOnNextThink; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_nProjectilesToLaunch; // 0x1204
bool m_bHasProjectileTalent; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0xb]; // 0x1209
public:
int32_t projectile_count; // 0x1214
int32_t projectile_speed; // 0x1218
int32_t projectile_width; // 0x121c
int32_t projectile_vision; // 0x1220
float turn_rate; // 0x1224
int32_t min_range; // 0x1228
int32_t impact_radius; // 0x122c
float min_lob_travel_time; // 0x1230
float max_lob_travel_time; // 0x1234
float delay_after_last_projectile; // 0x1238
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Snapfire_MortimerKisses_VisionSource : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Snapfire_Magma_Thinker : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
int32_t impact_radius; // 0x11dc
int32_t move_slow_pct; // 0x11e0
float burn_linger_duration; // 0x11e4
ParticleIndex_t m_nPathEffectIndex; // 0x11e8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Snapfire_Magma_Burn_Slow : public CDOTA_Buff
{
public:
int32_t m_nMoveSlowPct; // 0x11d8
float m_fBurnDamagePerTick; // 0x11dc
int32_t move_slow_pct; // 0x11e0
float burn_interval; // 0x11e4
int32_t burn_damage; // 0x11e8
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Snapfire_Scatterblast : public CDOTABaseAbility
{
public:
int32_t damage; // 0x558
float debuff_duration; // 0x55c
int32_t point_blank_range; // 0x560
float point_blank_dmg_bonus_pct; // 0x564
int32_t blast_width_end; // 0x568
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Snapfire_Scatterblast_Slow : public CDOTA_Buff
{
public:
bool m_bIsPointBlank; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t movement_slow_pct; // 0x11dc
int32_t attack_slow_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Snapfire_Scatterblast_Disarm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x570
class CDOTA_Ability_Snapfire_FiresnapCookie : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x8]; // 0x55c
public:
int32_t projectile_speed; // 0x564
float pre_hop_duration; // 0x568
float cast_on_ally_gesture_time; // 0x56c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Snapfire_FiresnapCookie_PreHop : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
};
// Alignment: 13
// Size: 0x1218
class CDOTA_Modifier_Snapfire_FiresnapCookie_ShortHop : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
int32_t jump_height; // 0x11dc
int32_t jump_horizontal_distance; // 0x11e0
float pre_land_anim_time; // 0x11e4
float landing_gesture_duration; // 0x11e8
int32_t impact_radius; // 0x11ec
int32_t impact_damage; // 0x11f0
float impact_stun_duration; // 0x11f4
float m_flStartZ; // 0x11f8
float m_flCurTime; // 0x11fc
float m_flJumpDuration; // 0x1200
float m_flJumpHeight; // 0x1204
Vector m_vTargetHorizontalDirection; // 0x1208
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Snapfire_FiresnapCookie_AllyFlailAnim : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Snapfire_FiresnapCookie_LandingGesture : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Snapfire_LilShredder : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_Snapfire_LilShredder_Buff : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
int32_t m_nIsActive; // 0x11f8
bool m_bHasAttackTalent; // 0x11fc
bool m_bBonusAttack; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
int32_t attack_range_bonus; // 0x1200
int32_t buffed_attacks; // 0x1204
float base_attack_time; // 0x1208
int32_t attack_speed_bonus; // 0x120c
float armor_duration; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Snapfire_LilShredder_Attack : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Snapfire_LilShredder_Debuff : public CDOTA_Buff
{
public:
float armor_reduction_per_attack; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Snapfire_GobbleUp : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hGobbledUnit; // 0x558
float max_time_in_belly; // 0x55c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Snapfire_GobbleUp_Creep : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Snapfire_GobbleUp_BellyHasUnit : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hGobbledUnit; // 0x11d8
PlayerID_t m_nOriginalControllingUnit; // 0x11dc
bool m_bUnitWasLaunched; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
float max_time_in_belly; // 0x11e4
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Snapfire_SpitCreep : public CDOTABaseAbility
{
public:
int32_t m_nDamagePerProjectile; // 0x558
CHandle< CBaseEntity > m_hGobbledUnit; // 0x55c
int32_t m_nProjectileID; // 0x560
};
// Alignment: 23
// Size: 0x1248
class CDOTA_Modifier_Snapfire_SpitCreep_ArcingUnit : public CDOTA_Buff
{
public:
float m_flPredictedTotalTime; // 0x11d8
Vector m_vStartPosition; // 0x11dc
float m_flCurrentTimeHoriz; // 0x11e8
float m_flCurrentTimeVert; // 0x11ec
bool m_bHorizontalMotionInterrupted; // 0x11f0
bool m_bDamageApplied; // 0x11f1
bool m_bTargetTeleported; // 0x11f2
private:
[[maybe_unused]] uint8_t __pad11f3[0x1]; // 0x11f3
public:
Vector m_vHorizontalVelocity; // 0x11f4
Vector m_vLastKnownTargetPosition; // 0x1200
float m_flInitialVelocityZ; // 0x120c
float m_fClampedProjectileSpeed; // 0x1210
ParticleIndex_t m_nFXIndex; // 0x1214
float m_fAcceleration; // 0x1218
int32_t min_range; // 0x121c
float min_lob_travel_time; // 0x1220
float max_lob_travel_time; // 0x1224
int32_t impact_radius; // 0x1228
int32_t projectile_vision; // 0x122c
float stun_duration; // 0x1230
float min_height_above_lowest; // 0x1234
float min_height_above_highest; // 0x1238
float min_acceleration; // 0x123c
float max_acceleration; // 0x1240
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Snapfire_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 7
// Size: 0x598
class CDOTA_Ability_VoidSpirit_AetherRemnant : public CDOTABaseAbility
{
public:
int32_t start_radius; // 0x558
int32_t end_radius; // 0x55c
int32_t remnant_watch_distance; // 0x560
int32_t projectile_speed; // 0x564
private:
[[maybe_unused]] uint8_t __pad0568[0x8]; // 0x568
public:
Vector m_vDashPosition; // 0x570
Vector m_vFacePosition; // 0x57c
Vector m_vEndpoint; // 0x588
};
// Alignment: 13
// Size: 0x1258
class CDOTA_Modifier_VoidSpirit_AetherRemnant_Unit : public CDOTA_Buff
{
public:
Vector m_vFacingDir; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< CHandle< CBaseEntity > > m_hWatchPathThinkers; // 0x11e8
ParticleIndex_t m_nBeamFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< int32 > m_nViewerIDs; // 0x1208
int32_t remnant_watch_distance; // 0x1220
int32_t remnant_watch_radius; // 0x1224
float duration; // 0x1228
int32_t watch_path_vision_radius; // 0x122c
int32_t impact_damage; // 0x1230
float pull_duration; // 0x1234
float activation_delay; // 0x1238
bool m_bPiercesCreeps; // 0x123c
private:
[[maybe_unused]] uint8_t __pad123d[0x3]; // 0x123d
public:
CUtlVector< CHandle< CBaseEntity > > m_hAlreadyHit; // 0x1240
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VoidSpirit_AetherRemnant_WatchThinker : public CDOTA_Buff
{
public:
int32_t remnant_watch_radius; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_VoidSpirit_AetherRemnant_Pull : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
PlayerID_t m_nPlayerID; // 0x11dc
float m_fMovementSpeed; // 0x11e0
CHandle< CDOTA_BaseNPC > m_hPullTarget; // 0x11e4
float think_interval; // 0x11e8
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_VoidSpirit_AetherRemnantThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
Vector m_vFacingDir; // 0x11dc
CHandle< CBaseEntity > m_hRemnant; // 0x11e8
bool m_bTriggered; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float m_flCurThink; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VoidSpirit_AetherRemnantUnit_Truesight : public CDOTA_Buff
{
public:
int32_t m_nRadius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_VoidSpirit_AstralStep_ChargeCounter : public CDOTA_Modifier_LegacyChargeCounter
{
public:
// No members available
};
// Alignment: 8
// Size: 0x590
class CDOTA_Ability_VoidSpirit_AstralStep : public CDOTABaseAbility
{
public:
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: 0x11e8
class CDOTA_Modifier_VoidSpirit_AstralStep_Debuff : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXStackIndex; // 0x11d8
int32_t movement_slow_pct; // 0x11dc
int32_t pop_damage; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_VoidSpirit_AstralStep_Caster : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_VoidSpirit_AstralStep_Intrinsic : public CDOTA_Buff
{
public:
int32_t ability_chance_pct; // 0x11d8
int32_t attack_chance_pct; // 0x11dc
float pop_damage_delay; // 0x11e0
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_VoidSpirit_Dissimilate : public CDOTABaseAbility
{
public:
float phase_duration; // 0x558
};
// Alignment: 19
// Size: 0x1278
class CDOTA_Modifier_VoidSpirit_Dissimilate_Phase : public CDOTA_Buff
{
public:
Vector m_vFirstPortalPos; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< Vector > m_vecDestinations; // 0x11e8
CUtlVector< ParticleIndex_t > m_vecDestinationParticles; // 0x1200
CUtlVector< ParticleIndex_t > m_vecDestinationParticles_EnemyTeam; // 0x1218
int32_t m_nCurrentDestinationIndex; // 0x1230
int32_t m_nClosestIndexPosToClick; // 0x1234
int32_t m_nPortalHeightOffset; // 0x1238
private:
[[maybe_unused]] uint8_t __pad123c[0x4]; // 0x123c
public:
char* m_szAlliesPortalFX; // 0x1240
char* m_szEnemiesPortalFX; // 0x1248
int32_t m_nPortalRadius; // 0x1250
int32_t m_nPortalPadding; // 0x1254
int32_t m_nFinalImpactDamageRadius; // 0x1258
int32_t m_nFinalImpactFXRadius; // 0x125c
int32_t destination_fx_radius; // 0x1260
int32_t damage_radius; // 0x1264
int32_t portals_per_ring; // 0x1268
int32_t angle_per_ring_portal; // 0x126c
int32_t first_ring_distance_offset; // 0x1270
float debuff_duration; // 0x1274
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_VoidSpirit_Dissimilate_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_VoidSpirit_ResonantPulse_PhysicalBuff : public CDOTA_Buff
{
public:
int32_t base_absorb_amount; // 0x11d8
int32_t m_nAbsorbRemaining; // 0x11dc
};
// Alignment: 4
// Size: 0x568
class CDOTA_Ability_VoidSpirit_ResonantPulse : public CDOTABaseAbility
{
public:
bool m_bGrantedScepterCharges; // 0x558
private:
[[maybe_unused]] uint8_t __pad0559[0x3]; // 0x559
public:
float buff_duration; // 0x55c
int32_t base_absorb_amount; // 0x560
int32_t absorb_per_hero_hit; // 0x564
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_VoidSpirit_ResonantPulse_Ring : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x11e8
int32_t speed; // 0x1200
int32_t radius; // 0x1204
int32_t damage; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_1 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_2 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_3 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_4 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_5 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_6 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_7 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_8 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_VoidSpirit_9 : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x590
class CDOTA_Ability_Hoodwink_AcornShot : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x20]; // 0x558
public:
// MNetworkEnable
uint32_t m_nAcornTree; // 0x578
float projectile_speed; // 0x57c
float bounce_delay; // 0x580
int32_t bounce_range; // 0x584
int32_t bounce_count; // 0x588
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_AcornShot_DelayThinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nSourceProjectileHandle; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_AcornShot_TreeThinker : public CDOTA_Buff
{
public:
CHandle< CDOTA_TempTree > m_hTree; // 0x11d8
int32_t fow_viewer; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_AcornShot_BonusDamage : public CDOTA_Buff
{
public:
int32_t acorn_shot_damage; // 0x11d8
int32_t base_damage_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_AcornShot_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_Hoodwink_Bushwhack : public CDOTABaseAbility
{
public:
int32_t trap_radius; // 0x558
int32_t m_nProjectileHandle; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x560
};
// Alignment: 12
// Size: 0x1220
class CDOTA_Modifier_Hoodwink_Bushwhack_Trap : public CDOTA_Buff
{
public:
int32_t visual_height; // 0x11d8
float animation_rate; // 0x11dc
ParticleIndex_t m_iIndex; // 0x11e0
bool m_bPullComplete; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
uint32_t m_TreeId; // 0x11e8
float m_flDamagePerTick; // 0x11ec
int32_t m_nDamageTicks; // 0x11f0
GameTime_t m_flLastTick; // 0x11f4
CHandle< CDOTA_TempTree > m_hTree; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CDOTA_Tree* m_pTree; // 0x1200
Vector m_vPullPosition; // 0x1208
Vector m_vDir; // 0x1214
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Hoodwink_Scurry : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Hoodwink_Scurry_Passive : public CDOTA_Buff
{
public:
int32_t evasion; // 0x11d8
int32_t radius; // 0x11dc
int32_t bonus_active_evasion; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_Scurry_Active : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
float m_flTreeDuration; // 0x11dc
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_Hoodwink_Sharpshooter_Windup : public CDOTA_Buff
{
public:
bool m_bReachedMax; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
float m_flLastOverheadTime; // 0x11dc
float m_flFacingTarget; // 0x11e0
Vector m_vAimTarget; // 0x11e4
ParticleIndex_t m_nCrosshairFX; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_vecVisionThinkers; // 0x11f8
int32_t arrow_vision; // 0x1210
float max_charge_time; // 0x1214
float turn_rate; // 0x1218
float base_power; // 0x121c
};
// Alignment: 3
// Size: 0x578
class CDOTA_Ability_Hoodwink_Sharpshooter : public CDOTABaseAbility
{
public:
float max_charge_time; // 0x558
Vector m_vStartPos; // 0x55c
ParticleIndex_t m_nFXIndex; // 0x568
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_Sharpshooter_VisionThinker : public CDOTA_Buff
{
public:
int32_t arrow_width; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Hoodwink_Sharpshooter_Release : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1200
class CDOTA_Modifier_Hoodwink_Sharpshooter_Recoil : public CDOTA_Buff
{
public:
float recoil_duration; // 0x11d8
int32_t recoil_height; // 0x11dc
int32_t recoil_distance; // 0x11e0
float m_flStartZ; // 0x11e4
float m_flCurTime; // 0x11e8
float m_flJumpDuration; // 0x11ec
float m_flJumpHeight; // 0x11f0
Vector m_vTargetHorizontalDirection; // 0x11f4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Hoodwink_Sharpshooter_Recoil_EndAnim : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_Sharpshooter_Debuff : public CDOTA_Buff
{
public:
int32_t slow_move_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotBounces : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotDamage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShotCharges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Camouflague : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_SharpshooterPierceHeroes : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_SharpshooterPureDamage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Bushwhack_Duration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Bushwhack_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_Sharpshooter_Speed : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Hoodwink_Camouflage : public CDOTA_Buff
{
public:
float fade_time; // 0x11d8
GameTime_t m_flFadeTime; // 0x11dc
bool m_bInvisLastThink; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_AcornShot_ArmorCorruption : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_BushwhackCooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Hoodwink_ScurryDuration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_AcornShot_ArmorCorruption : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Hoodwink_Caltrops : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Hoodwink_Caltrops : public CDOTA_Buff
{
public:
int32_t effect_radius; // 0x11d8
int32_t caltrops_damage; // 0x11dc
int32_t activation_radius; // 0x11e0
float debuff_duration; // 0x11e4
float activation_delay; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_Caltrops_Debuff : public CDOTA_Buff
{
public:
int32_t movespeed_pct; // 0x11d8
int32_t tick_damage; // 0x11dc
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Hoodwink_Decoy : public CDOTABaseAbility
{
public:
CUtlVector< CHandle< CBaseEntity > > hIllusion; // 0x558
float decoy_stun_duration; // 0x570
int32_t decoy_detonate_radius; // 0x574
int32_t projectile_speed; // 0x578
ParticleIndex_t m_nFXIndex; // 0x57c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Hoodwink_Decoy_Illusion : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 2
// Size: 0x1208
class CDOTA_Modifier_Hoodwink_Decoy_Invisibility : public CDOTA_Modifier_Invisible
{
public:
int32_t movement_speed; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11f0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Hoodwink_HeavyQuiver : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Hoodwink_HeavyQuiver : public CDOTA_Buff
{
public:
int32_t bonus_projectile_speed_pct; // 0x11d8
int32_t bonus_attack_range; // 0x11dc
int32_t deadly_blow_multiplier; // 0x11e0
float maim_duration; // 0x11e4
int32_t m_nAttackRecord; // 0x11e8
};
// Alignment: 6
// Size: 0x590
class CDOTA_Ability_Hoodwink_HuntersBoomerang : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
int32_t speed; // 0x55c
int32_t damage; // 0x560
float mark_duration; // 0x564
CHandle< CBaseEntity > m_hTarget; // 0x568
private:
[[maybe_unused]] uint8_t __pad056c[0x4]; // 0x56c
public:
CUtlVector< CHandle< CBaseEntity > > m_vecHitEntities; // 0x570
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Hoodwink_Hunters_Mark : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
int32_t spell_amp; // 0x11dc
int32_t status_resistance; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Hoodwink_HuntersQuiver : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Hoodwink_HuntersQuiver : public CDOTA_Buff
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t max_stacks; // 0x11dc
float debuff_duration; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Hoodwink_HuntersQuiver_Mark : public CDOTA_Buff
{
public:
int32_t stack_crit_chance_pct; // 0x11d8
int32_t critical_damage_pct; // 0x11dc
int32_t stack_slow_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Hoodwink_Boomerang_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 23
// Size: 0x1270
class CDOTA_Modifier_Hoodwink_ArcingBoomerang : public CDOTA_Buff
{
public:
Vector m_vLeftControl; // 0x11d8
Vector m_vRightControl; // 0x11e4
Vector m_vTargetLoc; // 0x11f0
Vector m_vOriginalTargetLoc; // 0x11fc
Vector m_vSourceLoc; // 0x1208
bool m_bGroundTargeted; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
float m_flDuration; // 0x1218
GameTime_t m_flDieTime; // 0x121c
bool m_bReturning; // 0x1220
bool m_bCatchingBoomerang; // 0x1221
bool m_bDisjointed; // 0x1222
private:
[[maybe_unused]] uint8_t __pad1223[0x1]; // 0x1223
public:
int32_t m_nFramesToWait; // 0x1224
CHandle< CBaseEntity > m_hBoomerang; // 0x1228
CHandle< CBaseEntity > m_hTarget; // 0x122c
ParticleIndex_t m_nBoomerangFXIndex; // 0x1230
ParticleIndex_t m_nOldBoomerangFXindex; // 0x1234
CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x1238
int32_t radius; // 0x1250
int32_t spread; // 0x1254
int32_t damage; // 0x1258
float mark_duration; // 0x125c
float min_throw_duration; // 0x1260
float max_throw_duration; // 0x1264
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Dawnbreaker_Solar_Guardian : public CDOTABaseAbility
{
public:
CHandle< CBaseEntity > m_hThinker; // 0x558
bool m_bJumping; // 0x55c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Thinker : public CDOTA_Buff
{
public:
float pulse_interval; // 0x11d8
int32_t iEffectRadius; // 0x11dc
int32_t base_damage; // 0x11e0
int32_t base_heal; // 0x11e4
ParticleIndex_t m_nThinkerFXIndex; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Evasion : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
};
// Alignment: 9
// Size: 0x1220
class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_AirTime : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
Vector m_vDirection; // 0x11e0
float m_flEndTime; // 0x11ec
CHandle< CBaseEntity > m_hThinker; // 0x11f0
Vector m_vCurrentTargetPosition; // 0x11f4
Vector m_vDesiredTargetPosition; // 0x1200
Vector m_vStartPosition; // 0x120c
int32_t airtime_scepter_movement_speed; // 0x1218
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_Disable : public CDOTA_Buff
{
public:
ParticleIndex_t m_nCasterFXIndex; // 0x11d8
ParticleIndex_t m_nStatusFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dawnbreaker_Solar_Guardian_After_Land : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dawnbreaker_Luminosity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Dawnbreaker_Luminosity : public CDOTA_Buff
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t attack_count; // 0x11dc
bool m_bShouldIncrement; // 0x11e0
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Dawnbreaker_Luminosity_Attack_Buff : public CDOTA_Buff
{
public:
bool m_bIsBuffedAttack; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t heal_pct; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t heal_radius; // 0x11e4
int32_t heal_from_creeps; // 0x11e8
int32_t allied_healing_pct; // 0x11ec
CUtlVector< CHandle< CBaseEntity > > hTargets; // 0x11f0
float m_flTotalToHeal; // 0x1208
};
// Alignment: 25
// Size: 0x600
class CDOTA_Ability_Dawnbreaker_Celestial_Hammer : public CDOTABaseAbility
{
public:
int32_t m_nProjectileIndex; // 0x558
int32_t m_nReturnProjectileID; // 0x55c
Vector m_vEndLocation; // 0x560
float m_fZCoord; // 0x56c
Vector m_vLastTrailThinkerLocation; // 0x570
bool m_bFlareDone; // 0x57c
bool m_bStartedCatchAnimation; // 0x57d
bool m_bIsReturning; // 0x57e
private:
[[maybe_unused]] uint8_t __pad057f[0x1]; // 0x57f
public:
CUtlVector< CHandle< CBaseEntity > > m_hReturnHits; // 0x580
CUtlVector< CHandle< CBaseEntity > > m_hAoEHits; // 0x598
ParticleIndex_t m_nFXIndex; // 0x5b0
ParticleIndex_t m_nFXIndexC; // 0x5b4
ParticleIndex_t m_nFXHammerReturnIndex; // 0x5b8
ParticleIndex_t m_nFXHammerProjectileIndex; // 0x5bc
ParticleIndex_t m_nFXHeroSolarGuardianTrailIndex; // 0x5c0
CHandle< CBaseEntity > m_hThinker; // 0x5c4
int32_t projectile_speed; // 0x5c8
int32_t projectile_radius; // 0x5cc
int32_t hammer_damage; // 0x5d0
int32_t hammer_aoe_radius; // 0x5d4
int32_t flare_radius; // 0x5d8
bool bHasStartedBurning; // 0x5dc
private:
[[maybe_unused]] uint8_t __pad05dd[0x3]; // 0x5dd
public:
float flare_debuff_duration; // 0x5e0
int32_t return_anim_distance_threshold; // 0x5e4
int32_t range; // 0x5e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Thinker : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Converge_Thinker : public CDOTA_Buff
{
public:
int32_t flare_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
int32_t projectile_speed; // 0x11dc
int32_t travel_speed_pct; // 0x11e0
int32_t m_nMaxRange; // 0x11e4
Vector m_vStartPoint; // 0x11e8
Vector m_vLastTrailThinkerLocation; // 0x11f4
Vector m_vEndPointShard; // 0x1200
ParticleIndex_t m_nStatusFXIndex; // 0x120c
int32_t flare_radius; // 0x1210
bool bHasStartedBurning; // 0x1214
private:
[[maybe_unused]] uint8_t __pad1215[0x3]; // 0x1215
public:
float flare_debuff_duration; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dawnbreaker_Celestial_Hammer_Caster : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dawnbreaker_Fire_Wreath : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Magic_Immunity_Tooltip : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 20
// Size: 0x1230
class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Caster : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t shard_movement_penalty; // 0x11dc
int32_t swipe_radius; // 0x11e0
int32_t swipe_damage; // 0x11e4
int32_t smash_radius; // 0x11e8
int32_t smash_damage; // 0x11ec
int32_t m_nCurrentSpeed; // 0x11f0
float flSwipeInterval; // 0x11f4
GameTime_t m_flNextHit; // 0x11f8
int32_t iCurrentAttack; // 0x11fc
int32_t total_attacks; // 0x1200
float smash_stun_duration; // 0x1204
float sweep_stun_duration; // 0x1208
bool m_bHasCompletedMove; // 0x120c
private:
[[maybe_unused]] uint8_t __pad120d[0x3]; // 0x120d
public:
float duration; // 0x1210
Vector m_vTargetHorizontalDirection; // 0x1214
int32_t smash_distance_from_hero; // 0x1220
float animation_rate; // 0x1224
float turn_rate; // 0x1228
float m_flFacingTarget; // 0x122c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Attack_Bonus : public CDOTA_Buff
{
public:
int32_t attack_damage; // 0x11d8
int32_t creep_damage_penalty; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Slow : public CDOTA_Buff
{
public:
int32_t swipe_slow; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Dawnbreaker_Fire_Wreath_Smash_Stun : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dawnbreaker_Converge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Dawnbreaker_Converge : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
int32_t burn_damage; // 0x11dc
float burn_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Dawnbreaker_Land : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Celestial_Hammer_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_Wreath_Magic_Immunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Solar_Guardian_Radius : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Converge_Slow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Celestial_Hammer_Cast_Range : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_Wreath_Ministun : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Luminosity_Attack_Count : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Fire_wreath_Charges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Solar_Guardian_Cooldown : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_Luminosity_Crit : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_FireWreath_Swipe : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_CelestialHammer_Slow : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Dawnbreaker_FireWreath_AoE : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Marci_Grapple : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1218
class CDOTA_Modifier_Marci_Grapple_VictimMotion : public CDOTA_Buff
{
public:
int32_t impact_damage; // 0x11d8
float debuff_duration; // 0x11dc
int32_t landing_radius; // 0x11e0
float air_duration; // 0x11e4
int32_t air_height; // 0x11e8
int32_t travel_distance; // 0x11ec
Vector m_vDestination; // 0x11f0
float m_flStartZ; // 0x11fc
float m_flCurTime; // 0x1200
float m_flJumpDuration; // 0x1204
float m_flJumpHeight; // 0x1208
Vector m_vTargetHorizontalDirection; // 0x120c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Marci_Dispose_Debuff : public CDOTA_Buff
{
public:
int32_t movement_slow_pct; // 0x11d8
};
// Alignment: 17
// Size: 0x5c0
class CDOTA_Ability_Marci_Companion_Run : public CDOTABaseAbility
{
public:
int32_t m_nTrackingProjectileID; // 0x558
ParticleIndex_t m_nFXIndex; // 0x55c
int32_t m_nMaxJumpDistance; // 0x560
int32_t landing_radius; // 0x564
int32_t move_speed; // 0x568
float ally_buff_duration; // 0x56c
int32_t min_jump_distance; // 0x570
int32_t max_jump_distance; // 0x574
int32_t impact_position_offset; // 0x578
int32_t vector_preview_radius; // 0x57c
Vector m_vEndpoint; // 0x580
ParticleIndex_t m_nToBounceFXIndex; // 0x58c
ParticleIndex_t m_nToTargetFXIndex; // 0x590
Vector m_vDashPosition; // 0x594
Vector m_vFacePosition; // 0x5a0
Vector m_vTravelDir; // 0x5ac
float m_fTravelDistance; // 0x5b8
};
// Alignment: 12
// Size: 0x1210
class CDOTA_Modifier_Marci_Lunge_TrackingMotion : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
int32_t m_nMaxJumpDistance; // 0x11dc
int32_t landing_radius; // 0x11e0
int32_t max_jump_distance; // 0x11e4
int32_t min_jump_distance; // 0x11e8
int32_t target_abort_distance; // 0x11ec
int32_t impact_position_offset; // 0x11f0
float m_flCastDistance; // 0x11f4
ParticleIndex_t m_nAoEFXIndex; // 0x11f8
Vector m_vDestination; // 0x11fc
CHandle< CBaseEntity > m_hBounceEntity; // 0x1208
CHandle< CBaseEntity > m_hBounceEntityClient; // 0x120c
};
// Alignment: 27
// Size: 0x1258
class CDOTA_Modifier_Marci_Lunge_Arc : public CDOTA_Buff
{
public:
float m_flPredictedTotalTime; // 0x11d8
Vector m_vStartPosition; // 0x11dc
float m_flCurrentTimeHoriz; // 0x11e8
float m_flCurrentTimeVert; // 0x11ec
bool m_bDamageApplied; // 0x11f0
bool m_bTargetTeleported; // 0x11f1
private:
[[maybe_unused]] uint8_t __pad11f2[0x2]; // 0x11f2
public:
Vector m_vHorizontalVelocity; // 0x11f4
Vector m_vLastKnownTargetPosition; // 0x1200
float m_flInitialVelocityZ; // 0x120c
float m_fClampedProjectileSpeed; // 0x1210
ParticleIndex_t m_nFXIndex; // 0x1214
float m_fAcceleration; // 0x1218
bool m_bTriggeredLandingAnim; // 0x121c
private:
[[maybe_unused]] uint8_t __pad121d[0x3]; // 0x121d
public:
int32_t m_nMaxJumpDistance; // 0x1220
int32_t min_jump_distance; // 0x1224
int32_t max_jump_distance; // 0x1228
float min_lob_travel_time; // 0x122c
float max_lob_travel_time; // 0x1230
int32_t landing_radius; // 0x1234
float debuff_duration; // 0x1238
float min_height_above_lowest; // 0x123c
float min_height_above_highest; // 0x1240
float min_acceleration; // 0x1244
float max_acceleration; // 0x1248
float impact_damage; // 0x124c
int32_t impact_position_offset; // 0x1250
float ally_buff_duration; // 0x1254
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Marci_Lunge_LandingAnim : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Marci_CompanionRun_AllyMovespeed : public CDOTA_Buff
{
public:
float ally_movespeed_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Marci_Lunge_Debuff : public CDOTA_Buff
{
public:
int32_t movement_slow_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Marci_Lunge_Buff : public CDOTA_Buff
{
public:
int32_t scepter_armor; // 0x11d8
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Marci_Guardian : public CDOTABaseAbility
{
public:
float buff_duration; // 0x558
int32_t nearest_ally_search_range; // 0x55c
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Marci_Guardian_Buff : public CDOTA_Buff
{
public:
float lifesteal_pct; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t bonus_attack_range; // 0x11e0
float m_fLifestealPct; // 0x11e4
float m_fDamageAbsorbed; // 0x11e8
};
// Alignment: 5
// Size: 0x570
class CDOTA_Ability_Marci_Unleash : public CDOTABaseAbility
{
public:
float duration; // 0x558
int32_t pulse_radius; // 0x55c
float pulse_debuff_duration; // 0x560
int32_t pulse_damage; // 0x564
float pulse_silence_duration; // 0x568
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Marci_Unleash_Pull : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
int32_t shard_push_length; // 0x11ec
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Marci_Unleash : public CDOTA_Buff
{
public:
float time_between_flurries; // 0x11d8
int32_t charges_per_flurry; // 0x11dc
int32_t flurry_charge_increment; // 0x11e0
int32_t bonus_movespeed; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 9
// Size: 0x11f8
class CDOTA_Modifier_Marci_Unleash_Flurry : public CDOTA_Buff
{
public:
int32_t flurry_bonus_attack_speed; // 0x11d8
float time_between_flurries; // 0x11dc
float debuff_duration; // 0x11e0
float max_time_window_per_hit; // 0x11e4
bool m_bBonusSpeed; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
ParticleIndex_t m_nFXStackIndex; // 0x11ec
bool m_bIsDoingFlurryAttack; // 0x11f0
bool m_bIsDoingFlurryPulseAttack; // 0x11f1
private:
[[maybe_unused]] uint8_t __pad11f2[0x2]; // 0x11f2
public:
GameTime_t m_fLastAttackTime; // 0x11f4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Marci_Unleash_FlurryCooldown : public CDOTA_Buff
{
public:
int32_t charges_per_flurry; // 0x11d8
float time_between_flurries; // 0x11dc
float recovery_fixed_attack_rate; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Marci_Unleash_FlurryPulse_Debuff : public CDOTA_Buff
{
public:
float pulse_move_slow_pct; // 0x11d8
float pulse_attack_slow_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_AllyAbsorb : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_Damage : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Lunge_Range : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Grapple_StunDuration : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Guardian_MagicImmunity : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Marci_Guardian_MagicImmunity : public CDOTA_Modifier_DebuffImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Unleash_LungeRefresh : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Unleash_Silence : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Marci_Unleash_Pulse_Silence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Marci_Guardian_Lifesteal : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PrimalBeast_Trample : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Primalbeast_Trample : public CDOTA_Buff
{
public:
int32_t effect_radius; // 0x11d8
Vector vLastPos; // 0x11dc
float flCurrentDistance; // 0x11e8
int32_t step_distance; // 0x11ec
int32_t bonus_magic_resistance; // 0x11f0
bool m_bIsUnslowable; // 0x11f4
};
// Alignment: 1
// Size: 0x560
class CDOTA_Ability_PrimalBeast_Pulverize : public CDOTABaseAbility
{
public:
CDOTA_BaseNPC* m_hTarget; // 0x558
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_PrimalBeast_Pulverize : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
float m_flOffset; // 0x11dc
QAngle m_vStartAngles; // 0x11e0
Vector m_vStartLocation; // 0x11ec
float animation_rate; // 0x11f8
bool m_bInterrupted; // 0x11fc
bool m_bHasBeenDestroyed; // 0x11fd
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_PrimalBeast_Pulverize_Self : public CDOTA_Buff
{
public:
CHandle< CDOTA_BaseNPC > m_hTarget; // 0x11d8
Vector m_vPulverizeCenter; // 0x11dc
Vector m_vCasterStartPos; // 0x11e8
int32_t splash_radius; // 0x11f4
float interval; // 0x11f8
float ministun; // 0x11fc
int32_t damage; // 0x1200
};
// Alignment: 8
// Size: 0x588
class CDOTA_Ability_PrimalBeast_Onslaught : public CDOTABaseAbility
{
public:
float max_charge_time; // 0x558
float knockback_distance; // 0x55c
int32_t knockback_damage; // 0x560
int32_t collision_radius; // 0x564
int32_t max_distance; // 0x568
Vector m_vStartPos; // 0x56c
ParticleIndex_t m_nFXIndex; // 0x578
int32_t m_nProjectileID; // 0x57c
};
// Alignment: 12
// Size: 0x1210
class CDOTA_Modifier_PrimalBeast_Onslaught_Windup : public CDOTA_Buff
{
public:
bool m_bReachedMax; // 0x11d8
bool m_bShouldCharge; // 0x11d9
private:
[[maybe_unused]] uint8_t __pad11da[0x2]; // 0x11da
public:
float m_flLastOverheadTime; // 0x11dc
float m_flFacingTarget; // 0x11e0
Vector m_vAimTarget; // 0x11e4
ParticleIndex_t m_nCrosshairFX; // 0x11f0
float m_flChargeDuration; // 0x11f4
int32_t max_distance; // 0x11f8
float max_charge_time; // 0x11fc
float turn_rate; // 0x1200
float base_power; // 0x1204
int32_t charge_speed; // 0x1208
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_PrimalBeast_Onslaught_Release : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_PrimalBeast_Onslaught_Movement : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
float charge_speed; // 0x11dc
float movement_turn_rate; // 0x11e0
int32_t knockback_radius; // 0x11e4
float knockback_distance; // 0x11e8
int32_t knockback_damage; // 0x11ec
int32_t m_nEnemyHeroesHit; // 0x11f0
float m_flFacingTarget; // 0x11f4
ParticleIndex_t m_nFXIndex; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1200
};
// Alignment: 10
// Size: 0x1220
class CDOTA_Modifier_PrimalBeast_Onslaught_Knockback : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bTargetTeleported; // 0x11fd
private:
[[maybe_unused]] uint8_t __pad11fe[0x2]; // 0x11fe
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_PrimalBeast_Uproar : public CDOTABaseAbility
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnUproarActiveChanged"
int32_t m_iUproarStatus; // 0x558
bool m_bUpdateIcons; // 0x55c
};
// Alignment: 12
// Size: 0x1240
class CDOTA_Modifier_PrimalBeast_Uproar : public CDOTA_Modifier_Stacking_Base
{
public:
int32_t stack_limit; // 0x11f8
int32_t damage_limit; // 0x11fc
float stack_duration; // 0x1200
float damage_min; // 0x1204
float damage_max; // 0x1208
int32_t bonus_damage_per_stack; // 0x120c
ParticleIndex_t m_nFxIndexA; // 0x1210
int32_t iCur_stack; // 0x1214
int32_t bonus_damage; // 0x1218
float slow_duration; // 0x121c
private:
[[maybe_unused]] uint8_t __pad1220[0x18]; // 0x1220
public:
float m_fTotalDamage; // 0x1238
GameTime_t m_flLastStackTime; // 0x123c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PrimalBeast_Uproar_Slow : public CDOTA_Buff
{
public:
int32_t move_slow_per_stack; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_PrimalBeast_Uproar_Roared_Self : public CDOTA_Buff
{
public:
int32_t roared_bonus_attack_speed; // 0x11d8
int32_t roared_bonus_armor; // 0x11dc
int32_t m_nBuffStackCount; // 0x11e0
};
// Alignment: 11
// Size: 0x1230
class CDOTA_Modifier_Primal_Beast_Uproar_Projectile_Thinker : public CDOTA_Buff
{
public:
int32_t projectiles_per_stack; // 0x11d8
int32_t projectile_speed; // 0x11dc
int32_t projectile_distance; // 0x11e0
int32_t projectile_width; // 0x11e4
int32_t splinter_angle; // 0x11e8
float split_delay; // 0x11ec
int32_t projectile_waves; // 0x11f0
int32_t m_nCurrentWaveCount; // 0x11f4
int32_t tectonic_shift_projectiles; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< CHandle< CBaseEntity > > m_vecEnemiesHit; // 0x1200
CUtlVector< int32 > m_vecProjectileHandles; // 0x1218
};
// Alignment: 7
// Size: 0x580
class CDOTA_Ability_PrimalBeast_Rock_Throw : public CDOTABaseAbility
{
public:
int32_t base_damage; // 0x558
int32_t impact_radius; // 0x55c
int32_t fragment_impact_radius; // 0x560
int32_t fragment_impact_distance; // 0x564
int32_t min_range; // 0x568
float stun_duration; // 0x56c
ParticleIndex_t m_nFXPreview; // 0x570
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Muerta_Gunslinger : public CDOTA_Buff
{
public:
float double_shot_chance; // 0x11d8
float target_search_bonus_range; // 0x11dc
CHandle< CBaseEntity > m_hSecondaryTarget; // 0x11e0
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Muerta_PierceTheVeil : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 9
// Size: 0x5b0
class CDOTA_Ability_Muerta_DeadShot : public CDOTABaseAbility
{
public:
int32_t radius; // 0x558
int32_t ricochet_radius_start; // 0x55c
int32_t ricochet_radius_end; // 0x560
int32_t speed; // 0x564
Vector m_vTargetPos; // 0x568
Vector m_vEndpoint; // 0x574
CHandle< CBaseEntity > m_hTreeTarget; // 0x580
Vector m_vRicochetDir; // 0x584
private:
[[maybe_unused]] uint8_t __pad0590[0x8]; // 0x590
public:
CUtlVector< CHandle< CBaseEntity > > m_vEnemyHeroVisibilityOnCast; // 0x598
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Muerta_DeadShot_Slow : public CDOTA_Buff
{
public:
int32_t impact_slow_percent; // 0x11d8
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Muerta_DeadShot_Fear : public CDOTA_Buff
{
public:
Vector m_vFearDir; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Muerta_PierceTheVeil : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_PierceTheVeilTransform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Muerta_PierceTheVeil_Buff : public CDOTA_Buff
{
public:
int32_t modelscale; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t spell_lifesteal; // 0x11e0
int32_t attack_projectile_speed_bonus; // 0x11e4
int32_t attack_range_bonus; // 0x11e8
int32_t m_iOriginalAttackCapabilities; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_PierceTheVeil_MagicImmunityDamageCancel : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_PierceTheVeil_SpellAmpBoost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_TheCalling_Invulnerable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Muerta_TheCalling : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1248
class CDOTA_Modifier_Muerta_Revenant_Thinker : public CDOTA_Buff
{
public:
bool m_bSpiritsExplode; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t damage; // 0x11dc
int32_t hit_radius; // 0x11e0
int32_t dead_zone_distance; // 0x11e4
float speed_initial; // 0x11e8
float speed_max; // 0x11ec
float acceleration; // 0x11f0
int32_t num_revenants; // 0x11f4
int32_t rotation_direction; // 0x11f8
int32_t radius; // 0x11fc
float rotation_initial; // 0x1200
int32_t show_warning; // 0x1204
ParticleIndex_t m_nWarningFX; // 0x1208
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< sRevenantDef > m_SpiritDefs; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1228[0x18]; // 0x1228
public:
int32_t m_nRevenantImpacts; // 0x1240
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Muerta_TheCallingAuraSlow : public CDOTA_Buff
{
public:
int32_t aura_movespeed_slow; // 0x11d8
int32_t aura_attackspeed_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_TheCalling_Silence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Muerta_Gunslinger : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 2
// Size: 0x560
class CDOTA_Ability_Muerta_PartingShot : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hAbilitySoulEntity; // 0x558
CHandle< CBaseEntity > m_hTarget; // 0x55c
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_Muerta_PartingShot_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Muerta_PartingShot_SoulClone : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Muerta_PartingShot_SoulDebuff : public CDOTA_Buff
{
public:
int32_t ethereal_damage_bonus; // 0x11d8
int32_t movement_slow; // 0x11dc
CHandle< CBaseEntity > m_hPhysicalBody; // 0x11e0
ParticleIndex_t m_nTetherFXIndex; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Muerta_PartingShot_ProjectileReturn : public CDOTA_Buff
{
public:
int32_t m_nProjectileHandle; // 0x11d8
CHandle< CBaseEntity > m_hPhysicalBody; // 0x11dc
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Special_Bonus_Unique_Muerta_TrickShotCharges : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Bracer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Bracer : public CDOTA_Item
{
public:
int32_t counter; // 0x600
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Bracer : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t clock_time; // 0x11e4
float bonus_health_regen; // 0x11e8
int32_t bonus_damage; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Gauntlets : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Gauntlets : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Circlet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Circlet : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Slippers : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Slippers : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_WraithBand : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_WraithBand : public CDOTA_Item
{
public:
int32_t counter; // 0x600
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_WraithBand : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
int32_t clock_time; // 0x11e8
float bonus_armor; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mantle : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Mantle : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_NullTalisman : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_NullTalisman : public CDOTA_Item
{
public:
int32_t counter; // 0x600
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_NullTalisman : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
float bonus_mana_regen; // 0x11e4
int32_t bonus_max_mana_percentage; // 0x11e8
int32_t clock_time; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_Tango_Single : public CDOTA_Item
{
public:
GameTime_t m_flCreationTime; // 0x600
float duration_to_use; // 0x604
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_TangoHeal : public CDOTA_Buff
{
public:
float health_regen; // 0x11d8
bool superheal; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
float m_fHealingDone; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlString m_sAbilityClassname; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Clarity : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ClarityPotion : public CDOTA_Buff
{
public:
float mana_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Flask : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_FlaskHealing : public CDOTA_Buff
{
public:
int32_t health_regen; // 0x11d8
int32_t break_on_hero_damage; // 0x11dc
float m_fHealingDone; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlString m_sAbilityClassname; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BootsOfSpeed : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BootsOfSpeed : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_BootsOfTravel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_BootsOfTravel_2 : public CDOTA_Item_Recipe_BootsOfTravel
{
public:
// No members available
};
// Alignment: 3
// Size: 0x608
class CDOTA_Item_BootsOfTravel : public CDOTA_Item
{
public:
float m_flTeleportTimeOverride; // 0x600
bool m_bPendingSellExcessScrolls; // 0x604
bool m_bQueueSellScrolls; // 0x605
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BootsOfTravel : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Item_BootsOfTravel_2 : public CDOTA_Modifier_Item_BootsOfTravel
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_BootsOfTravel_Incoming : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_BootsOfTravel_2 : public CDOTA_Item_BootsOfTravel
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_PowerTreads : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_PowerTreads : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed_ranged; // 0x11d8
int32_t bonus_movement_speed_melee; // 0x11dc
int32_t bonus_attack_speed; // 0x11e0
int32_t bonus_stat; // 0x11e4
int32_t bonus_damage; // 0x11e8
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_PowerTreads : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnPowerTreadsStatChanged"
int32_t m_iStat; // 0x600
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_PhaseBoots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PhaseBoots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_PhaseBoots : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_damage_melee; // 0x11dc
int32_t bonus_damage_range; // 0x11e0
int32_t damage_block_melee; // 0x11e4
int32_t damage_block_ranged; // 0x11e8
int32_t block_chance; // 0x11ec
int32_t bonus_attack_speed; // 0x11f0
int32_t bonus_armor; // 0x11f4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_PhaseBoots_Active : public CDOTA_Buff
{
public:
int32_t phase_movement_speed; // 0x11d8
int32_t phase_movement_speed_range; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_TranquilBoots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x620
class CDOTA_Item_TranquilBoots : public CDOTA_Item
{
public:
int32_t break_count; // 0x600
private:
[[maybe_unused]] uint8_t __pad0604[0x4]; // 0x604
public:
CUtlVector< GameTime_t > m_DamageList; // 0x608
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_TranquilBoots : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t broken_movement_speed; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t bonus_health_regen; // 0x11e4
int32_t break_threshold; // 0x11e8
int32_t break_time; // 0x11ec
int32_t break_count; // 0x11f0
float m_flResetTime; // 0x11f4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_TranquilBoots2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x620
class CDOTA_Item_TranquilBoots2 : public CDOTA_Item
{
public:
int32_t break_count; // 0x600
private:
[[maybe_unused]] uint8_t __pad0604[0x4]; // 0x604
public:
CUtlVector< GameTime_t > m_DamageList; // 0x608
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_TranquilBoots2 : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t broken_movement_speed; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t bonus_health_regen; // 0x11e4
int32_t break_threshold; // 0x11e8
int32_t break_time; // 0x11ec
int32_t break_count; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Hermes_Sandals : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Hermes_Sandals : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Hermes_Sandals : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_damage_melee; // 0x11dc
int32_t bonus_damage_range; // 0x11e0
int32_t bonus_armor; // 0x11e4
int32_t bonus_agility; // 0x11e8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Hermes_Sandals_Active : public CDOTA_Buff
{
public:
int32_t phase_movement_speed; // 0x11d8
int32_t phase_movement_speed_range; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
bool m_bWasRooted; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Samurai_Tabi : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Samurai_Tabi : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_all_stats; // 0x11e0
int32_t bonus_damage; // 0x11e4
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Samurai_Tabi : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnSamurai_TabiStatChanged"
int32_t m_iStat; // 0x600
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Item_Samurai_Tabi_Str : public CDOTA_Buff_Item
{
public:
int32_t stat_per_tick; // 0x11d8
int32_t bonus_all_stats; // 0x11dc
float base_interval; // 0x11e0
int32_t max_tick_count; // 0x11e4
float str_root_duration; // 0x11e8
float str_root_cooldown; // 0x11ec
int32_t str_root_chance; // 0x11f0
float str_bonus_damage; // 0x11f4
int32_t iCurrentTickCount; // 0x11f8
GameTime_t m_flLastRootTime; // 0x11fc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x1200
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_Samurai_Tabi_Agi : public CDOTA_Buff_Item
{
public:
int32_t stat_per_tick; // 0x11d8
float base_interval; // 0x11dc
int32_t max_tick_count; // 0x11e0
int32_t bonus_all_stats; // 0x11e4
int32_t agi_counter_chance; // 0x11e8
float agi_counter_cooldown; // 0x11ec
GameTime_t m_flLastCounterTime; // 0x11f0
int32_t iCurrentTickCount; // 0x11f4
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Item_Samurai_Tabi_Int : public CDOTA_Buff_Item
{
public:
int32_t stat_per_tick; // 0x11d8
float base_interval; // 0x11dc
int32_t max_tick_count; // 0x11e0
float int_damage_interval; // 0x11e4
float int_damage_range; // 0x11e8
float int_damage; // 0x11ec
int32_t iCurrentTickCount; // 0x11f0
int32_t int_max_targets; // 0x11f4
GameTime_t m_flNextHit; // 0x11f8
int32_t bonus_all_stats; // 0x11fc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GlovesOfHaste : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifer_Item_GlovesOfHaste : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BeltOfStrength : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BeltOfStrength : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RobeOfMagi : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_RobeOfMagi : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BootsOfElven : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BootsOfElven : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BladesOfAttack : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BladesOfAttack : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 3
// Size: 0x610
class CDOTA_Item_EmptyBottle : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnStoredRuneChanged"
int32_t m_iStoredRuneType; // 0x600
GameTime_t m_fStoredRuneTime; // 0x604
float rune_expire_time; // 0x608
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_EmptyBottle : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_BottleRegeneration : public CDOTA_Buff
{
public:
int32_t health_restore; // 0x11d8
int32_t mana_restore; // 0x11dc
int32_t health_restore_pct; // 0x11e0
int32_t mana_restore_pct; // 0x11e4
int32_t break_on_hero_damage; // 0x11e8
float m_fHealingDone; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DemonEdge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_DemonEdge : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Eaglehorn : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_EagleHorn : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Reaver : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Reaver : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SacredRelic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_SacredRelic : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Hyperstone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Hyperstone : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RingOfHealth : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfHealth : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_VoidStone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_VoidStone : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MysticStaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_MysticStaff : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_EnergyBooster : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_EnergyBooster : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PointBooster : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_PointBooster : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t bonus_health; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_VitalityBooster : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_VitalityBooster : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Broadsword : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Broadsword : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Quarterstaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Quarterstaff : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Claymore : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Claymore : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RingOfProtection : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfProtection : public CDOTA_Buff_Item
{
public:
float bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_StoutShield : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_StoutShield : public CDOTA_Buff_Item
{
public:
int32_t damage_block_melee; // 0x11d8
int32_t damage_block_ranged; // 0x11dc
int32_t block_chance; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Javelin : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_Javelin : public CDOTA_Buff_Item
{
public:
int32_t bonus_chance; // 0x11d8
int32_t bonus_chance_damage; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MithrilHammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_MithrilHammer : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_ChainMail : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_ChainMail : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HelmOfIronWill : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_HelmOfIronWill : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
float bonus_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PlateMail : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_PlateMail : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_QuellingBlade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_QuellingBlade : public CDOTA_Buff_Item
{
public:
int32_t damage_bonus; // 0x11d8
int32_t damage_bonus_ranged; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_IronwoodBranch : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_IronwoodBranch : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_OgreAxe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_OgreAxe : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BladeOfAlacrity : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BladeOfAlacrity : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_StaffOfWizardry : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_StaffOfWizardry : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UltimateOrb : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_UltimateOrb : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MaskOfDeath : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_MaskOfDeath : public CDOTA_Buff_Item
{
public:
int32_t lifesteal_percent; // 0x11d8
int32_t creep_lifesteal_reduction_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RingOfRegeneration : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfRegeneration : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BlinkDagger : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SuperBlinkDagger : public CDOTA_Item_BlinkDagger
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_BlinkDagger : public CDOTA_Buff_Item
{
public:
float blink_damage_cooldown; // 0x11d8
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Item_SuperBlinkDagger : public CDOTA_Modifier_Item_BlinkDagger
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SobiMask : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_SobiMask : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen; // 0x11d8
};
// Alignment: 4
// Size: 0x610
class CDOTA_Item_GemOfTrueSight : public CDOTA_Item
{
public:
int32_t m_iTempViewer; // 0x600
int32_t m_iTeam; // 0x604
int32_t m_nFXIndex; // 0x608
CHandle< CBaseEntity > m_hThinker; // 0x60c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_GemOfTrueSight : public CDOTA_Buff_Item
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Gem_Active_TrueSight : public CDOTA_Buff
{
public:
int32_t active_radius; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PlaneswalkersCloak : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_PlaneswalkersCloak : public CDOTA_Buff_Item
{
public:
int32_t bonus_magical_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MagicStick : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_MagicStick : public CDOTA_Buff_Item
{
public:
int32_t charge_radius; // 0x11d8
int32_t max_charges; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MagicWand : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MagicWand : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_MagicWand : public CDOTA_Buff_Item
{
public:
int32_t charge_radius; // 0x11d8
int32_t max_charges; // 0x11dc
int32_t bonus_all_stats; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_TalismanOfEvasion : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_TalismanOfEvasion : public CDOTA_Buff_Item
{
public:
int32_t bonus_evasion; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GhostScepter : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_GhostScepter : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_GhostScepter_Active : public CDOTA_Buff
{
public:
int32_t extra_spell_damage_percent; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_HandOfMidas : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HandOfMidas : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_HandOfMidas : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_OblivionStaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_OblivionStaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_OblivionStaff : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
float bonus_mana_regen; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Perseverance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Perseverance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Perseverance : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_PoorMansShield : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PoorMansShield : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_PoorMansShield : public CDOTA_Buff_Item
{
public:
int32_t damage_block_melee; // 0x11d8
int32_t damage_block_ranged; // 0x11dc
int32_t block_chance; // 0x11e0
int32_t bonus_agility; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DustofAppearance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_DustofAppearance_Thinker : public CDOTA_Buff
{
public:
float radius; // 0x11d8
float duration; // 0x11dc
float linger_duration; // 0x11e0
int32_t movespeed; // 0x11e4
float damage; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_DustofAppearance : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
bool m_bCastOnInvisibleHero; // 0x11dc
};
// Alignment: 0
// Size: 0x8f0
class CDOTA_NoWardTrigger : public CBaseTrigger
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Buff_Wards : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_ObserverWard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_ObserverWard : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SentryWard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_SentryWard : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_WardTrueSight : public CDOTA_Buff
{
public:
int32_t true_sight_range; // 0x11d8
};
// Alignment: 7
// Size: 0x628
class CDOTA_Item_TeleportScroll : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hTeleportTarget; // 0x600
ParticleIndex_t m_nFXOrigin; // 0x604
ParticleIndex_t m_nFXDestination; // 0x608
Vector m_vDestination; // 0x60c
int32_t m_iMinDistance; // 0x618
float m_flBaseTeleportTime; // 0x61c
float m_flExtraTeleportTime; // 0x620
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_DivineRapier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DivineRapier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_DivineRapier : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MonkeyKingBar : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MonkeyKingBar : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Item_MonkeyKingBar : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_chance; // 0x11dc
int32_t bonus_chance_damage; // 0x11e0
int32_t bonus_damage; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Radiance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Radiance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Radiance : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t evasion; // 0x11dc
int32_t upgrade_day_vision; // 0x11e0
int32_t aura_radius; // 0x11e4
bool m_bLastToggleState; // 0x11e8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Item_Radiance_Debuff : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t aura_damage; // 0x11e0
int32_t aura_damage_upgrade_bonus; // 0x11e4
int32_t aura_damage_illusions; // 0x11e8
int32_t blind_pct; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Butterfly : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Butterfly : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Butterfly_Extra : public CDOTA_Buff
{
public:
int32_t bonus_move_speed; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Butterfly : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_evasion; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_GreaterCritical : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GreaterCritical : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_GreaterCritical : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t crit_chance; // 0x11dc
int32_t crit_multiplier; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_CraniumBasher : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_CraniumBasher : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Item_CraniumBasher : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bash_chance_melee; // 0x11dc
int32_t bash_chance_ranged; // 0x11e0
float bash_duration; // 0x11e4
float bash_cooldown; // 0x11e8
int32_t bonus_chance_damage; // 0x11ec
int32_t bonus_damage; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_AbyssalBlade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_AbyssalBlade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1228
class CDOTA_Modifier_Item_AbyssalBlade : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bash_chance_melee; // 0x11dc
int32_t bash_chance_ranged; // 0x11e0
float bash_duration; // 0x11e4
float bash_cooldown; // 0x11e8
int32_t bonus_chance_damage; // 0x11ec
int32_t bonus_damage; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
int32_t bonus_health; // 0x1210
float bonus_health_regen; // 0x1214
int32_t block_damage_ranged; // 0x1218
int32_t block_damage_melee; // 0x121c
int32_t block_chance; // 0x1220
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Battlefury : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Battlefury : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_Item_Battlefury : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
float bonus_health_regen; // 0x11dc
float bonus_mana_regen; // 0x11e0
int32_t cleave_damage_percent; // 0x11e4
int32_t cleave_damage_percent_creep; // 0x11e8
int32_t cleave_starting_width; // 0x11ec
int32_t cleave_ending_width; // 0x11f0
int32_t cleave_distance; // 0x11f4
int32_t upgraded_cleave_bonus; // 0x11f8
int32_t upgraded_damage_bonus; // 0x11fc
int32_t quelling_bonus; // 0x1200
int32_t quelling_bonus_ranged; // 0x1204
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MantaStyle : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MantaStyle : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_MantaStyle : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t bonus_agility; // 0x11e0
int32_t bonus_intellect; // 0x11e4
int32_t bonus_movement_speed; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Manta_Phase : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Manta : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_LesserCritical : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_LesserCritical : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_LesserCritical : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t crit_chance; // 0x11dc
int32_t crit_multiplier; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Armlet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x610
class CDOTA_Item_Armlet : public CDOTA_Item
{
public:
float toggle_cooldown; // 0x600
GameTime_t m_flLastActivateTime; // 0x604
GameTime_t m_flLastDeactivateTime; // 0x608
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Armlet : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t bonus_health_regen; // 0x11e4
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Armlet_UnholyStrength : public CDOTA_Buff
{
public:
int32_t unholy_bonus_damage; // 0x11d8
int32_t unholy_bonus_attack_speed; // 0x11dc
int32_t unholy_bonus_strength; // 0x11e0
int32_t unholy_bonus_armor; // 0x11e4
int32_t unholy_health_drain_per_second; // 0x11e8
int32_t str_tick_count; // 0x11ec
float tick_interval; // 0x11f0
float m_flDamageRemainder; // 0x11f4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_InvisibilityEdge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_InvisibilityEdge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_InvisibilityEdge : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_damage; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_InvisibilityEdge_WindWalk : public CDOTA_Modifier_Invisible
{
public:
int32_t windwalk_bonus_damage; // 0x11e8
int32_t windwalk_movement_speed; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_SheepStick : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_SheepStick : public CDOTA_Item
{
public:
int32_t upgrade_radius; // 0x600
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_SheepStick : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
float bonus_mana_regen; // 0x11e4
int32_t bonus_mana; // 0x11e8
int32_t cast_range_bonus; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SheepStick_Debuff : public CDOTA_Modifier_Hexed
{
public:
float sheep_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_OrchidMalevolence : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_OrchidMalevolence : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_OrchidMalevolence : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
float bonus_mana_regen; // 0x11dc
float bonus_health_regen; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t bonus_attack_speed; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_OrchidMalevolence_Debuff : public CDOTA_Buff
{
public:
float silence_damage_percent; // 0x11d8
float m_flDamageTaken; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_RodOfAtos : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RodOfAtos : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_RodOfAtos : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_RodOfAtos_Debuff : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Cyclone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Cyclone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Cyclone : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_movement_speed; // 0x11e0
};
// Alignment: 1
// Size: 0x11f8
class CDOTA_Modifier_Eul_Cyclone : public CDOTA_Modifier_Cyclone
{
public:
CHandle< CBaseEntity > m_hBlocker; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Eul_Cyclone_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_ForceStaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_ForceStaff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_ForceStaff : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_intellect; // 0x11dc
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_ForceStaff : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float push_length; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dagon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dagon2 : public CDOTA_Item_Recipe_Dagon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dagon3 : public CDOTA_Item_Recipe_Dagon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dagon4 : public CDOTA_Item_Recipe_Dagon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dagon5 : public CDOTA_Item_Recipe_Dagon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Dagon : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon_Upgraded : public CDOTA_Item_Dagon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon_Upgraded2 : public CDOTA_Item_Dagon_Upgraded
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon_Upgraded3 : public CDOTA_Item_Dagon_Upgraded
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon_Upgraded4 : public CDOTA_Item_Dagon_Upgraded
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dagon_Upgraded5 : public CDOTA_Item_Dagon_Upgraded
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Dagon : public CDOTA_Buff_Item
{
public:
int32_t bonus_int; // 0x11d8
int32_t bonus_str; // 0x11dc
int32_t bonus_agi; // 0x11e0
float passive_spell_lifesteal; // 0x11e4
float dagon_spell_lifesteal; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_RefresherOrb : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RefresherOrb : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_RefresherOrb : public CDOTA_Buff_Item
{
public:
int32_t bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RefresherOrb_Shard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_UltimateScepter : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_UltimateScepter_2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UltimateScepter_2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UltimateScepter : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UltimateScepter_Roshan : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_UltimateScepter : public CDOTA_Buff_Item
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t bonus_all_stats; // 0x11dc
int32_t bonus_health; // 0x11e0
int32_t bonus_mana; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_UltimateScepter_Consumed : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_UltimateScepter_Consumed_Alchemist : public CDOTA_Modifier_Item_UltimateScepter_Consumed
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t bonus_all_stats; // 0x11dc
int32_t bonus_health; // 0x11e0
int32_t bonus_mana; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Assault_Cuirass : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Assault_Cuirass : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Assault_Cuirass_Positive_Aura : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Assault_Cuirass_Positive : public CDOTA_Buff
{
public:
int32_t aura_attack_speed; // 0x11d8
int32_t aura_positive_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Assault_Cuirass_Negative_Armor_Aura : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Assault_Cuirass_Negative_Armor : public CDOTA_Buff
{
public:
int32_t aura_negative_armor; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Assault_Cuirass : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Heart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Heart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Heart : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_health; // 0x11dc
float health_regen_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Black_King_Bar : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Black_King_Bar : public CDOTA_Item
{
public:
bool m_bActive; // 0x600
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Black_King_Bar_Immune : public CDOTA_Modifier_DebuffImmune
{
public:
int32_t model_scale; // 0x11d8
int32_t magic_resist; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Black_King_Bar : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_damage; // 0x11dc
float duration; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Aegis : public CDOTA_Buff_Item
{
public:
float reincarnate_time; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aegis_Regen : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_Aegis : public CDOTA_Item
{
public:
int32_t m_iKillerTeam; // 0x600
GameTime_t m_fEquipTime; // 0x604
};
// Alignment: 1
// Size: 0x618
class CDOTA_Item_TierToken : public CDOTA_Item
{
public:
// MNetworkEnable
AbilityID_t m_vecChoices[5]; // 0x600
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Shivas_Guard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Shivas_Guard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Shivas_Guard : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t bonus_armor; // 0x11dc
int32_t aura_radius; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Shivas_Guard_Aura : public CDOTA_Buff
{
public:
int32_t aura_attack_speed; // 0x11d8
int32_t hp_regen_degen_aura; // 0x11dc
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Item_Shivas_Guard_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
CountdownTimer m_ViewerTimer; // 0x11f8
int32_t blast_speed; // 0x1210
int32_t blast_radius; // 0x1214
int32_t blast_damage; // 0x1218
float blast_debuff_duration; // 0x121c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Shivas_Guard_Blast : public CDOTA_Buff
{
public:
int32_t blast_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Bloodstone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Bloodstone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Bloodstone_Active : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Bloodstone : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
float spell_lifesteal; // 0x11e0
float lifesteal_multiplier; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Bloodstone_Drained : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Sange : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Sange : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Sange : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t hp_regen_amp; // 0x11dc
int32_t status_resistance; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Yasha : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Yasha : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Yasha : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t movement_speed_percent_bonus; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_SangeAndYasha : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SangeAndYasha : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_SangeAndYasha : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t movement_speed_percent_bonus; // 0x11e0
int32_t bonus_strength; // 0x11e4
int32_t hp_regen_amp; // 0x11e8
int32_t status_resistance; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MaskOfMadness : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MaskOfMadness : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_MaskOfMadness : public CDOTA_Buff_Item
{
public:
int32_t lifesteal_percent; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t creep_lifesteal_reduction_pct; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_MaskOfMadness_Berserk : public CDOTA_Buff
{
public:
int32_t berserk_bonus_attack_speed; // 0x11d8
int32_t berserk_bonus_movement_speed; // 0x11dc
int32_t berserk_armor_reduction; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Sphere : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Sphere : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Sphere : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
float bonus_health_regen; // 0x11dc
float bonus_mana_regen; // 0x11e0
int32_t bonus_damage; // 0x11e4
float block_cooldown; // 0x11e8
float upgrade_absorb_duration; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Sphere_Target : public CDOTA_Buff_Item
{
public:
float upgrade_absorb_duration; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Sphere_Upgrade_Absorb : public CDOTA_Buff
{
public:
int32_t damage_absorb; // 0x11d8
bool m_bStartedTimer; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11dd[0x3]; // 0x11dd
public:
int32_t m_flDamageAbsorbed; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Vanguard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Vanguard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Vanguard : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float bonus_health_regen; // 0x11dc
int32_t block_damage_ranged; // 0x11e0
int32_t block_damage_melee; // 0x11e4
int32_t block_chance; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Crimson_Guard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Crimson_Guard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Crimson_Guard_Extra : public CDOTA_Buff
{
public:
int32_t block_chance_active; // 0x11d8
int32_t block_damage_active; // 0x11dc
int32_t strength_pct; // 0x11e0
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_Crimson_Guard : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float bonus_health_regen; // 0x11dc
float bonus_armor; // 0x11e0
int32_t block_damage_ranged; // 0x11e4
int32_t block_damage_melee; // 0x11e8
int32_t block_chance; // 0x11ec
int32_t bonus_aoe_radius; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Crimson_Guard_NoStack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Blade_Mail : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Blade_Mail : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Blade_Mail_Reflect : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Blade_Mail : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_armor; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t passive_reflection_constant; // 0x11e4
int32_t passive_reflection_pct; // 0x11e8
int32_t active_reflection_pct; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Soul_Booster : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Soul_Booster : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Soul_Booster : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t bonus_magical_armor; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Hood_Of_Defiance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Hood_Of_Defiance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Hood_Of_Defiance_Barrier : public CDOTA_Buff
{
public:
int32_t barrier_block; // 0x11d8
int32_t barrier_amount; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Hood_Of_Defiance : public CDOTA_Buff_Item
{
public:
int32_t bonus_spell_resist; // 0x11d8
float bonus_health_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mekansm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mekansm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Mekansm : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Mekansm_Aura : public CDOTA_Buff
{
public:
float aura_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Mekansm_Noheal : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Vladmir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Vladmir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Vladmir : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Vladmir_Aura : public CDOTA_Buff
{
public:
int32_t lifesteal_aura; // 0x11d8
int32_t damage_aura; // 0x11dc
float armor_aura; // 0x11e0
float mana_regen_aura; // 0x11e4
int32_t creep_lifesteal_reduction_pct; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Buckler : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Buckler : public CDOTA_Buff_Item
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t bonus_aoe_radius; // 0x11dc
float armor; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Buckler_Effect : public CDOTA_Buff
{
public:
float bonus_aoe_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Buckler : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ring_Of_Basilius : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ring_Of_Basilius : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Ring_Of_Basilius : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
float mana_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ring_Of_Basilius_Effect : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Pipe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Pipe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Pipe : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
float health_regen; // 0x11dc
int32_t magic_resistance; // 0x11e0
int32_t aura_radius; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Pipe_Aura : public CDOTA_Buff
{
public:
float aura_health_regen; // 0x11d8
int32_t magic_resistance_aura; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Pipe_Barrier : public CDOTA_Buff
{
public:
int32_t barrier_amount; // 0x11d8
int32_t barrier_block; // 0x11dc
int32_t barrier_block_creep; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Pipe_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Urn_Of_Shadows : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Urn_Of_Shadows : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Urn_Of_Shadows : public CDOTA_Buff_Item
{
public:
float mana_regen; // 0x11d8
int32_t bonus_all_stats; // 0x11dc
float bonus_armor; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Urn_Heal : public CDOTA_Buff
{
public:
int32_t soul_heal_amount; // 0x11d8
float m_fHealingDone; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Urn_Damage : public CDOTA_Buff
{
public:
int32_t soul_damage_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Headdress : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Headdress : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Headdress : public CDOTA_Buff_Item
{
public:
float health_regen; // 0x11d8
int32_t aura_radius; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Headdress_Aura : public CDOTA_Buff
{
public:
float aura_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Satanic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Satanic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Satanic : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t lifesteal_percent; // 0x11e0
int32_t unholy_lifesteal_percent; // 0x11e4
int32_t creep_lifesteal_reduction_pct; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Satanic_Unholy : public CDOTA_Buff
{
public:
int32_t unholy_lifesteal_percent; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_HelmOfTheDominator : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_HelmOfTheDominator_2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_HelmOfTheOverlord : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HelmOfTheDominator : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HelmOfTheDominator_2 : public CDOTA_Item_HelmOfTheDominator
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HelmOfTheOverlord : public CDOTA_Item_HelmOfTheDominator
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_HelmOfTheDominator : public CDOTA_Buff_Item
{
public:
int32_t bonus_stats; // 0x11d8
int32_t bonus_armor; // 0x11dc
float bonus_regen; // 0x11e0
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Item_HelmOfTheDominator_2 : public CDOTA_Modifier_Item_HelmOfTheDominator
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_HelmOfTheDominator_BonusHealth : public CDOTA_Buff
{
public:
int32_t health_min; // 0x11d8
int32_t new_max; // 0x11dc
int32_t health_bonus; // 0x11e0
int32_t model_scale; // 0x11e4
int32_t creep_bonus_damage; // 0x11e8
int32_t creep_bonus_hp_regen; // 0x11ec
int32_t creep_bonus_mp_regen; // 0x11f0
int32_t creep_bonus_armor; // 0x11f4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Desolator : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Desolator : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Item_Desolator : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_damage_per_kill; // 0x11dc
int32_t bonus_damage_per_assist; // 0x11e0
int32_t max_damage; // 0x11e4
float corruption_duration; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Desolator_Corruption : public CDOTA_Buff
{
public:
int32_t corruption_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Revenants_Brooch : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Revenants_Brooch : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1228
class CDOTA_Modifier_Item_Revenants_Brooch : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
int32_t projectile_speed; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
int32_t mana_cost; // 0x11e8
int32_t slow_duration; // 0x11ec
int32_t damage_penalty; // 0x11f0
int32_t passive_cooldown; // 0x11f4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
CUtlVector< int16 > m_InFlightWitchBladeAttackRecords; // 0x1210
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Revenants_Brooch_InternalCD : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Revenants_Brooch_Counter : public CDOTA_Buff
{
public:
float active_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Misery_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Eagle_Eye : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x610
class CDOTA_Item_EagleEye : public CDOTA_Item
{
public:
int32_t m_iTempViewer; // 0x600
int32_t m_iTeam; // 0x604
int32_t m_nFXIndex; // 0x608
CHandle< CBaseEntity > m_hThinker; // 0x60c
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_EagleEye : public CDOTA_Buff_Item
{
public:
int32_t radius; // 0x11d8
int32_t bonus_agi; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Tenderizer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tenderizer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Item_Tenderizer : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bash_chance_melee; // 0x11e0
int32_t bash_chance_ranged; // 0x11e4
float bash_duration; // 0x11e8
float bash_cooldown; // 0x11ec
int32_t bonus_chance_damage; // 0x11f0
int32_t bonus_damage; // 0x11f4
int32_t weaken_per_hit; // 0x11f8
float weaken_duration; // 0x11fc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x1200
};
// Alignment: 1
// Size: 0x1200
class CDOTA_Modifier_Tenderizer_Weaken : public CDOTA_Modifier_Stacking_Base
{
public:
int32_t weaken_per_hit; // 0x11f8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Boots_Of_Bearing : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Boots_Of_Bearing : public CDOTA_Item
{
public:
int32_t radius; // 0x600
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Boots_Of_Bearing : public CDOTA_Buff_Item
{
public:
int32_t radius; // 0x11d8
int32_t bonus_movement_speed; // 0x11dc
int32_t bonus_health_regen; // 0x11e0
int32_t bonus_str; // 0x11e4
int32_t bonus_int; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Boots_Of_Bearing_Aura : public CDOTA_Buff
{
public:
int32_t aura_movement_speed; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Boots_Of_Bearing_Active : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed_pct; // 0x11d8
int32_t bonus_movement_speed_pct; // 0x11dc
float bonus_ms_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_VoidwalkerScythe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_VoidwalkerScythe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Item_VoidwalkerScythe : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t attacks; // 0x11dc
int32_t bonus_damage; // 0x11e0
float buff_duration; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
int32_t m_nCounter; // 0x1200
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_Voidwalker_Phased : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float max_damage_duration; // 0x11dc
int32_t attack_range_bonus; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
bool bAttackRange; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
float m_flStartTime; // 0x1204
float m_flFadeTime; // 0x1208
float m_flDamageScale; // 0x120c
float duration; // 0x1210
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_WraithPact : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_WraithPact : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hWard; // 0x600
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_WraithPact : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t bonus_health; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_WraithPact_Thinker : public CDOTA_Buff
{
public:
int32_t pact_aura_radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
float aura_dps; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_WraithPact_DeathAura : public CDOTA_Buff
{
public:
int32_t armor_penalty_aura; // 0x11d8
int32_t damage_penalty_aura; // 0x11dc
float aura_dps; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Skadi : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Skadi : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Item_Skadi : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t bonus_health; // 0x11dc
int32_t bonus_mana; // 0x11e0
float cold_duration; // 0x11e4
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Skadi_Slow : public CDOTA_Buff
{
public:
int32_t cold_slow_melee; // 0x11d8
int32_t cold_attack_slow_melee; // 0x11dc
int32_t cold_slow_ranged; // 0x11e0
int32_t cold_attack_slow_ranged; // 0x11e4
int32_t heal_reduction; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mjollnir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mjollnir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1218
class CDOTA_Modifier_MjollnirChain : public CDOTA_Buff
{
public:
int32_t chain_radius; // 0x11d8
int32_t chain_strikes; // 0x11dc
int32_t chain_damage; // 0x11e0
float chain_delay; // 0x11e4
int32_t chain_damage_per_charge; // 0x11e8
int32_t m_iCurJumpCount; // 0x11ec
Vector m_vCurTargetLoc; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x1200
};
// Alignment: 11
// Size: 0x1230
class CDOTA_Modifier_Item_Mjollnir : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t chain_chance; // 0x11e0
int32_t chain_strikes; // 0x11e4
int32_t chain_damage; // 0x11e8
int32_t chain_radius; // 0x11ec
int32_t chain_damage_per_charge; // 0x11f0
int32_t max_charges; // 0x11f4
float chain_cooldown; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x1200
CountdownTimer m_ChainTimer; // 0x1218
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_Item_Mjollnir_Static : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t static_chance; // 0x11e0
int32_t static_strikes; // 0x11e4
int32_t static_damage; // 0x11e8
int32_t static_primary_radius; // 0x11ec
int32_t static_seconary_radius; // 0x11f0
int32_t static_radius; // 0x11f4
float static_cooldown; // 0x11f8
int32_t chain_damage_per_charge; // 0x11fc
CountdownTimer m_StaticTimer; // 0x1200
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Maelstrom : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Maelstrom : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_MaelstromChain : public CDOTA_Buff
{
public:
int32_t chain_radius; // 0x11d8
int32_t chain_strikes; // 0x11dc
int32_t chain_damage; // 0x11e0
float chain_delay; // 0x11e4
int32_t m_iCurJumpCount; // 0x11e8
Vector m_vCurTargetLoc; // 0x11ec
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11f8
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Item_Maelstrom : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t chain_chance; // 0x11dc
int32_t chain_strikes; // 0x11e0
int32_t chain_damage; // 0x11e4
int32_t chain_radius; // 0x11e8
float chain_cooldown; // 0x11ec
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f0
CountdownTimer m_ChainTimer; // 0x1208
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Diffusal_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Diffusal_Blade2 : public CDOTA_Item_Recipe_Diffusal_Blade
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Diffusal_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Diffusal_Blade : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_intellect; // 0x11dc
float damage_per_burn; // 0x11e0
int32_t feedback_mana_burn; // 0x11e4
int32_t feedback_mana_burn_illusion_melee; // 0x11e8
int32_t feedback_mana_burn_illusion_ranged; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Diffusal_Blade_Slow : public CDOTA_Buff
{
public:
int32_t purge_rate; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Diffusal_Blade_Level2 : public CDOTA_Item_Diffusal_Blade
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ethereal_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ethereal_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Ethereal_Blade : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t spell_amp; // 0x11e4
int32_t spell_lifesteal_amp; // 0x11e8
int32_t mana_regen_multiplier; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ethereal_Blade_Ethereal : public CDOTA_Buff
{
public:
int32_t ethereal_damage_bonus; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ethereal_Blade_Slow : public CDOTA_Buff
{
public:
int32_t blast_movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Soul_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Soul_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Soul_Ring : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
float bonus_armor; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Soul_Ring_Buff : public CDOTA_Buff
{
public:
int32_t m_iTempExtraMaxMana; // 0x11d8
int32_t m_iManaToRemove; // 0x11dc
float duration; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Necronomicon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Necronomicon_2 : public CDOTA_Item_Recipe_Necronomicon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Necronomicon_3 : public CDOTA_Item_Recipe_Necronomicon
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_Necronomicon : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hWarrior; // 0x600
CHandle< CBaseEntity > m_hArcher; // 0x604
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_Necronomicon_Level2 : public CDOTA_Item_Necronomicon
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_Necronomicon_Level3 : public CDOTA_Item_Necronomicon
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Necronomicon : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
float bonus_mana_regen; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Necronomicon_2 : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t aura_radius; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Necronomicon_3 : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t aura_radius; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Necronomicon_Mana_Aura : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Necronomicon_Mana_Aura_2 : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Necronomicon_Mana_Aura_3 : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Warrior_ManaBurn : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necronomicon_Warrior_ManaBurn : public CDOTA_Buff
{
public:
int32_t burn_amount; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Warrior_LastWill : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necronomicon_Warrior_LastWill : public CDOTA_Buff
{
public:
int32_t explosion; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Warrior_Sight : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necronomicon_Warrior_Sight : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Archer_ManaBurn : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Archer_Purge : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necronomicon_Archer_Purge : public CDOTA_Buff
{
public:
int32_t purge_rate; // 0x11d8
};
// Alignment: 0
// Size: 0x558
class CDOTA_Ability_Necronomicon_Archer_AoE : public CDOTABaseAbility
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Necronomicon_Archer_AoE : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Necronomicon_Archer_Aura : public CDOTA_Buff
{
public:
int32_t ms_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Courier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Flying_Courier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Cheese : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Royale_With_Cheese : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Royale_With_Cheese : public CDOTA_Buff
{
public:
float shield; // 0x11d8
float regen; // 0x11dc
float idle; // 0x11e0
int32_t m_nDamageAbsorbed; // 0x11e4
GameTime_t m_timeLastTick; // 0x11e8
GameTime_t m_timeLastDamage; // 0x11ec
ParticleIndex_t nFXIndex; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Arcane_Boots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Arcane_Boots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Arcane_Boots : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement; // 0x11d8
int32_t bonus_mana; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ArcaneBoots_ManaRegen : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Orb_of_Venom : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Orb_of_Venom : public CDOTA_Buff_Item
{
public:
int32_t poison_movement_speed_melee; // 0x11d8
int32_t poison_movement_speed_range; // 0x11dc
float poison_duration; // 0x11e0
float poison_damage_melee; // 0x11e4
float poison_damage_range; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Orb_of_Venom_Slow : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float slow; // 0x11dc
float damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ancient_Janggo : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Ancient_Janggo : public CDOTA_Item
{
public:
int32_t radius; // 0x600
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Ancient_Janggo : public CDOTA_Buff_Item
{
public:
int32_t radius; // 0x11d8
int32_t bonus_str; // 0x11dc
int32_t bonus_int; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ancient_Janggo_Aura : public CDOTA_Buff
{
public:
int32_t aura_movement_speed; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Ancient_Janggo_Active : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed_pct; // 0x11d8
int32_t bonus_movement_speed_pct; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Medallion_Of_Courage : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Medallion_Of_Courage : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Medallion_Of_Courage : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
float bonus_mana_regen_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Medallion_Of_Courage_Armor_Addition : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Medallion_Of_Courage_Armor_Reduction : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Smoke_Of_Deceit : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Smoke_Of_Deceit : public CDOTA_Modifier_Invisible
{
public:
int32_t bonus_movement_speed; // 0x11e8
int32_t visibility_radius; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Veil_Of_Discord : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Veil_Of_Discord : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Veil_Of_Discord_Thinker : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t debuff_radius; // 0x11dc
float resist_debuff_duration; // 0x11e0
int32_t m_nHeroesHit; // 0x11e4
bool m_bHitInvisibleHero; // 0x11e8
bool m_bFirstPulse; // 0x11e9
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Veil_Of_Discord : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
int32_t bonus_all_stats; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Veil_Of_Discord_Mana : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Veil_Of_Discord_Debuff : public CDOTA_Buff
{
public:
int32_t spell_amp; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_HeavensHalberd : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HeavensHalberd : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_HeavensHalberd : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t hp_regen_amp; // 0x11dc
int32_t bonus_evasion; // 0x11e0
int32_t status_resistance; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_HeavensHalberd_Debuff : public CDOTA_Buff
{
public:
bool m_bPierceDebuffImmunity; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_RingOfAquila : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfAquila_Aura : public CDOTA_Buff_Item
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t aura_radius; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfAquila_Aura_Bonus : public CDOTA_Buff
{
public:
int32_t aura_bonus_armor; // 0x11d8
float aura_mana_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RingOfAquila : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_RingOfAquila : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_agility; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t bonus_armor; // 0x11e8
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_ShadowAmulet : public CDOTA_Item
{
public:
GameTime_t m_flLastTimeCast; // 0x600
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_ShadowAmulet_Fade : public CDOTA_Buff
{
public:
float fade_time; // 0x11d8
GameTime_t m_flFadeTime; // 0x11dc
bool m_bFaded; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Moonshard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Moonshard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Moonshard : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_night_vision; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Moonshard_Consumed : public CDOTA_Buff
{
public:
int32_t consumed_bonus; // 0x11d8
int32_t consumed_bonus_night_vision; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Silver_Edge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Silver_Edge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1210
class CDOTA_Modifier_Item_Silver_Edge : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_attack_speed; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t crit_chance; // 0x11e8
int32_t crit_multiplier; // 0x11ec
float backstab_duration; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f8
};
// Alignment: 2
// Size: 0x11f0
class CDOTA_Modifier_Silver_Edge_WindWalk : public CDOTA_Modifier_Invisible
{
public:
int32_t windwalk_bonus_damage; // 0x11e8
int32_t windwalk_movement_speed; // 0x11ec
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Silver_Edge_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_GlimmerCape : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GlimmerCape : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_GlimmerCape_Building_Limit : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_GlimmerCape : public CDOTA_Buff_Item
{
public:
int32_t bonus_magical_armor; // 0x11d8
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_GlimmerCape_Fade : public CDOTA_Buff
{
public:
int32_t active_movement_speed; // 0x11d8
int32_t barrier_block; // 0x11dc
int32_t barrier_amount; // 0x11e0
float initial_fade_delay; // 0x11e4
float secondary_fade_delay; // 0x11e8
float m_flFadeTime; // 0x11ec
float m_flCurentFadeDelay; // 0x11f0
GameTime_t m_flLastActionTime; // 0x11f4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Solar_Crest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Solar_Crest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Solar_Crest : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen_pct; // 0x11d8
int32_t bonus_armor; // 0x11dc
int32_t bonus_all_stats; // 0x11e0
int32_t self_movement_speed; // 0x11e4
ParticleIndex_t nFXIndex; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Solar_Crest_Armor_Addition : public CDOTA_Buff
{
public:
int32_t target_armor; // 0x11d8
int32_t target_attack_speed; // 0x11dc
int32_t target_movement_speed; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Solar_Crest_Armor_Reduction : public CDOTA_Buff
{
public:
int32_t target_armor; // 0x11d8
int32_t target_attack_speed; // 0x11dc
int32_t target_movement_speed; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ward_Dispenser : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ward_Dispenser : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ward_Dispenser : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Ward_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x610
class CDOTA_Item_Ward_Maker : public CDOTA_Item
{
public:
float sentry_refresh; // 0x600
int32_t max_sentry_charges; // 0x604
GameTime_t m_flLastThinkTime; // 0x608
float m_flTimeAccumulator; // 0x60c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ward_Maker : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Guardian_Greaves : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Guardian_Greaves : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Guardian_Greaves : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t aura_radius; // 0x11e4
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Guardian_Greaves_Aura : public CDOTA_Buff
{
public:
float aura_health_regen; // 0x11d8
float aura_armor; // 0x11dc
float aura_health_regen_bonus; // 0x11e0
float aura_armor_bonus; // 0x11e4
int32_t aura_bonus_threshold; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Enchanted_Mango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Enchanted_Mango : public CDOTA_Buff_Item
{
public:
float hp_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Famango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GreatFamango : public CDOTA_Item_Famango
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_GreaterFamango : public CDOTA_Item_Famango
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_GreatFamango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_GreaterFamango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Lotus_Orb : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Lotus_Orb : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Lotus_Orb : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t bonus_mana; // 0x11e4
float block_cooldown; // 0x11e8
};
// Alignment: 1
// Size: 0x13b0
class CDOTA_Modifier_Item_Lotus_Orb_Active : public CDOTA_Buff
{
public:
CModifierParams m_LastParams; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lotus_Orb_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f8
class CDOTA_Modifier_Item_Lotus_Orb_ChannelCheck : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hAbility; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
Vector m_vLocation; // 0x11e0
GameTime_t m_fChannelEnd; // 0x11ec
bool m_bInterrupt; // 0x11f0
bool m_bExpired; // 0x11f1
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Octarine_Core : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Octarine_Core : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Octarine_Core : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
float bonus_cooldown; // 0x11e0
float bonus_health_regen; // 0x11e4
float bonus_mana_regen; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Faerie_Fire : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Faerie_Fire : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_DragonLance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DragonLance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_DragonLance : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t base_attack_range; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Aether_Lens : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Aether_Lens : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aether_Lens : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t cast_range_bonus; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Iron_Talon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Iron_Talon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Iron_Talon : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
float bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Bloodthorn : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Bloodthorn : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Item_Bloodthorn : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t bonus_attack_speed; // 0x11e4
int32_t spell_amp; // 0x11e8
int32_t mana_regen_multiplier; // 0x11ec
int32_t bonus_magic_resist; // 0x11f0
float duration; // 0x11f4
float bonus_health_regen; // 0x11f8
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Bloodthorn_Debuff : public CDOTA_Buff
{
public:
float target_crit_multiplier; // 0x11d8
float silence_damage_percent; // 0x11dc
float m_flDamageTaken; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_vRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_EchoSabre : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_EchoSabre : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_EchoSabre : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
float bonus_mana_regen; // 0x11e4
int32_t bonus_strength; // 0x11e8
float slow_duration; // 0x11ec
bool bonus_speed; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_EchoSabre_Debuff : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t attack_speed_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Blight_Stone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Item_Blight_Stone : public CDOTA_Buff_Item
{
public:
float corruption_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Blight_Stone_Corruption : public CDOTA_Buff
{
public:
int32_t corruption_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_WindLace : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_WindLace : public CDOTA_Buff_Item
{
public:
int32_t movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tome_Of_Knowledge : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tome_Of_Knowledge : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tome_Of_Knowledge_Consumed : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Hurricane_Pike : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Hurricane_Pike : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Hurricane_Pike : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_intellect; // 0x11dc
int32_t bonus_agility; // 0x11e0
int32_t bonus_strength; // 0x11e4
int32_t base_attack_range; // 0x11e8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Hurricane_Pike_Active : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float push_length; // 0x11ec
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Hurricane_Pike_Active_Alternate : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float enemy_length; // 0x11ec
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Hurricane_Pike_Range : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t max_attacks; // 0x11dc
int32_t m_iNumAttacks; // 0x11e0
bool bActive; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t bonus_attack_speed; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Infused_Raindrop : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Infused_Raindrop : public CDOTA_Buff_Item
{
public:
float mana_regen; // 0x11d8
float bonus_armor; // 0x11dc
int32_t bonus_magical_armor; // 0x11e0
int32_t magic_damage_block; // 0x11e4
int32_t min_damage; // 0x11e8
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_RiverPainter : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnRiverColorChanged"
int32_t m_iRiverPaintColor; // 0x600
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter2 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter3 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter4 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter5 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter6 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x608
class CDOTA_Item_RiverPainter7 : public CDOTA_Item_RiverPainter
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MeteorHammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_MeteorHammer : public CDOTA_Item
{
public:
ParticleIndex_t m_nFXIndex; // 0x600
ParticleIndex_t m_nFXIndexB; // 0x604
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_MeteorHammer : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
float bonus_health_regen; // 0x11dc
float bonus_mana_regen; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_MeteorHammer_Land : public CDOTA_Buff
{
public:
int32_t impact_radius; // 0x11d8
float land_time; // 0x11dc
float burn_duration; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_MeteorHammer_Burn : public CDOTA_Buff
{
public:
int32_t burn_dps_buildings; // 0x11d8
int32_t burn_dps_units; // 0x11dc
float burn_interval; // 0x11e0
int32_t burn_slow; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Nullifier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Nullifier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Nullifier : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
int32_t bonus_regen; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Nullifier_Mute : public CDOTA_Buff
{
public:
float slow_interval_duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Nullifier_Slow : public CDOTA_Buff
{
public:
int32_t slow_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Spirit_Vessel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Spirit_Vessel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Spirit_Vessel : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float bonus_mana_regen; // 0x11dc
float bonus_armor; // 0x11e0
int32_t bonus_all_stats; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Spirit_Vessel_Heal : public CDOTA_Buff
{
public:
int32_t soul_heal_amount; // 0x11d8
float m_fHealingDone; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Spirit_Vessel_Damage : public CDOTA_Buff
{
public:
int32_t hp_regen_reduction_enemy; // 0x11d8
int32_t soul_damage_amount; // 0x11dc
float enemy_hp_drain; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_AeonDisk : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_AeonDisk : public CDOTA_Item
{
public:
int32_t m_nUses; // 0x600
int32_t max_level; // 0x604
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_AeonDisk : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t health_threshold_pct; // 0x11e0
float buff_duration; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_AeonDisk_Buff : public CDOTA_Buff
{
public:
int32_t status_resistance; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Kaya : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Kaya : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Kaya : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t spell_amp; // 0x11dc
int32_t mana_regen_multiplier; // 0x11e0
int32_t spell_lifesteal_amp; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PocketTower : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PocketRoshan : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Crown : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Crown : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Holy_Locket : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Holy_Locket : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_Holy_Locket : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
int32_t bonus_health; // 0x11dc
int32_t bonus_mana; // 0x11e0
int32_t heal_increase; // 0x11e4
int32_t charge_radius; // 0x11e8
int32_t max_charges; // 0x11ec
int32_t bonus_all_stats; // 0x11f0
int32_t charge_gain_timer; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Holy_Locket_Aura : public CDOTA_Buff
{
public:
float aura_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Kaya_And_Sange : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Kaya_And_Sange : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_Kaya_And_Sange : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t hp_regen_amp; // 0x11dc
int32_t bonus_intellect; // 0x11e0
int32_t spell_amp; // 0x11e4
int32_t mana_regen_multiplier; // 0x11e8
int32_t status_resistance; // 0x11ec
int32_t spell_lifesteal_amp; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Yasha_And_Kaya : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Yasha_And_Kaya : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_Yasha_And_Kaya : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t movement_speed_percent_bonus; // 0x11e0
int32_t bonus_intellect; // 0x11e4
int32_t spell_amp; // 0x11e8
int32_t mana_regen_multiplier; // 0x11ec
int32_t spell_lifesteal_amp; // 0x11f0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Yasha_And_Kaya_Maim : public CDOTA_Buff
{
public:
int32_t maim_slow_movement; // 0x11d8
int32_t maim_slow_attack; // 0x11dc
int32_t maim_slow_movement_range; // 0x11e0
int32_t maim_slow_attack_range; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_RingOfTarrasque : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_RingOfTarrasque : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
int32_t bonus_health; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Diadem : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Diadem : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Blood_Grenade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Blood_Grenade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_Blood_Grenade_Flight_Thinker : public CDOTA_Buff
{
public:
int32_t speed; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage_over_time; // 0x11e0
int32_t impact_damage; // 0x11e4
float debuff_duration; // 0x11e8
int32_t movespeed_slow; // 0x11ec
float tick_rate; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Blood_Grenade : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Blood_Grenade_Debuff : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
float damage_over_time; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Phylactery : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Phylactery : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_Item_Phylactery : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
float bonus_mana_regen; // 0x11e0
int32_t bonus_spell_damage; // 0x11e4
float slow_duration; // 0x11e8
int32_t bonus_all_stats; // 0x11ec
CUtlVector< CDOTABaseAbility* > vecActivatedAbilities; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Phylactery_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Disperser : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Disperser : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Item_Disperser : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_intellect; // 0x11dc
int32_t bonus_attack_speed; // 0x11e0
int32_t bonus_damage; // 0x11e4
float bonus_mana_regen; // 0x11e8
float damage_per_burn; // 0x11ec
int32_t feedback_mana_burn; // 0x11f0
int32_t feedback_mana_burn_illusion_melee; // 0x11f4
int32_t feedback_mana_burn_illusion_ranged; // 0x11f8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Disperser_Evasion_Buff : public CDOTA_Buff
{
public:
int32_t purge_bonus_miss_rate; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Disperser_Attack_Debuff : public CDOTA_Buff
{
public:
int32_t attack_speed_slow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Disperser_Movespeed_Buff : public CDOTA_Buff
{
public:
int32_t movement_speed_buff_rate; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Cornucopia : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Cornucopia : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Cornucopia : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Pavise : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Pavise : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Pavise : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_health; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Pavise_Shield : public CDOTA_Buff
{
public:
int32_t absorb_amount; // 0x11d8
int32_t m_nAbsorbRemaining; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Keen_Optic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Keen_Optic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Keen_Optic : public CDOTA_Buff_Item
{
public:
float bonus_mana_regen; // 0x11d8
int32_t cast_range_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Grove_Bow : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Grove_Bow : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_Grove_Bow : public CDOTA_Buff_Item
{
public:
int32_t attack_range_bonus; // 0x11d8
int32_t attack_speed_bonus; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Grove_Bow_Debuff : public CDOTA_Buff
{
public:
int32_t magic_resistance_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Quickening_Charm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Quickening_Charm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Quickening_Charm : public CDOTA_Buff_Item
{
public:
int32_t bonus_cooldown; // 0x11d8
int32_t bonus_health_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Philosophers_Stone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Philosophers_Stone : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t bonus_gpm; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Force_Boots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Force_Boots : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Force_Boots : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t hp_regen; // 0x11dc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Force_Boots : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
int32_t push_length; // 0x11ec
float push_duration; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Desolator_2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Desolator_2 : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_Desolator_2 : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
float corruption_duration; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Desolator_2_Corruption : public CDOTA_Buff
{
public:
int32_t corruption_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Phoenix_Ash : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Phoenix_Ash : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Phoenix_Ash : public CDOTA_Buff_Item
{
public:
int32_t health_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Seer_Stone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Seer_Stone : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Seer_Stone_Truesight : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Seer_Stone : public CDOTA_Buff_Item
{
public:
int32_t cast_range_bonus; // 0x11d8
int32_t vision_bonus; // 0x11dc
int32_t mana_regen; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Greater_Mango : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Elixer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_ElixerHealing : public CDOTA_Buff
{
public:
int32_t health; // 0x11d8
int32_t mana; // 0x11dc
float duration; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Vampire_Fangs : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Vampire_Fangs : public CDOTA_Buff_Item
{
public:
int32_t attack_lifesteal; // 0x11d8
int32_t spell_lifesteal; // 0x11dc
int32_t night_vision; // 0x11e0
int32_t creep_lifesteal_reduction_pct; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Craggy_Coat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Craggy_Coat : public CDOTA_Buff_Item
{
public:
int32_t armor_bonus; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t bonus_health; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Greater_Faerie_Fire : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Greater_Faerie_Fire : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Timeless_Relic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Timeless_Relic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Timeless_Relic : public CDOTA_Buff_Item
{
public:
int32_t spell_amp; // 0x11d8
int32_t debuff_amp; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mirror_Shield : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x13c0
class CDOTA_Modifier_Item_Mirror_Shield : public CDOTA_Buff_Item
{
public:
CModifierParams m_LastParams; // 0x11d8
int32_t all_stats; // 0x13b0
int32_t reflect_chance; // 0x13b4
bool m_bProcSuccessful; // 0x13b8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mirror_Shield_Delay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ironwood_tree : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ironwood_tree : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ironwood_tree : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Royal_jelly : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Royal_Jelly : public CDOTA_Buff
{
public:
float health_regen; // 0x11d8
float mana_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Pupils_gift : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Pupils_gift : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Pupils_gift : public CDOTA_Buff_Item
{
public:
int32_t secondary_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tome_of_aghanim : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tome_of_Aghanim : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Repair_kit : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Repair_Kit : public CDOTA_Buff_Item
{
public:
int32_t hp_regen; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Repair_Kit : public CDOTA_Buff
{
public:
float health_regen; // 0x11d8
int32_t armor_bonus; // 0x11dc
int32_t multishot_count; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mind_Breaker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mind_Breaker2 : public CDOTA_Item_Recipe_Mind_Breaker
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mind_Breaker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Mind_Breaker : public CDOTA_Buff_Item
{
public:
int32_t magic_damage; // 0x11d8
int32_t attack_speed; // 0x11dc
float duration; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Third_eye : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Third_Eye : public CDOTA_Buff
{
public:
int32_t truesight_radius; // 0x11d8
int32_t bonus_vision; // 0x11dc
int32_t bonus_all_stats; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Spell_Prism : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Spell_Prism : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t bonus_cooldown; // 0x11dc
float mana_regen; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spell_Prism_Active : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Horizon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Fusion_rune : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Fusion_runeHealing : public CDOTA_Buff
{
public:
int32_t health_regen; // 0x11d8
float m_fHealingDone; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Princes_Knife : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Princes_Knife : public CDOTA_Buff_Item
{
public:
float duration; // 0x11d8
int32_t projectile_bonus; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Princes_Knife_Hex : public CDOTA_Modifier_Hexed
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Spider_Legs : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spider_Legs : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t turn_rate; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Spider_Legs_Active : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed_active; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Helm_Of_The_Undying : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Helm_Of_The_Undying : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mango_Tree : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1200
class CDOTA_Modifier_Item_Mango_Tree : public CDOTA_Buff_Item
{
public:
CHandle< CBaseEntity > m_hTree; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CountdownTimer m_Timer; // 0x11e0
float seconds; // 0x11f8
};
// Alignment: 7
// Size: 0x1220
class CDOTA_Modifier_Passive_Mango_Tree : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTree; // 0x11d8
int32_t m_nMangoSeconds; // 0x11dc
CountdownTimer m_MangoTimer; // 0x11e0
int32_t m_nRespawnSeconds; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CountdownTimer m_RespawnTimer; // 0x1200
int32_t m_nMangosAvailable; // 0x1218
int32_t m_nChannelCount; // 0x121c
};
// Alignment: 3
// Size: 0x570
class CDOTA_Ability_PluckFamango : public CDOTABaseAbility
{
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hTarget; // 0x558
private:
[[maybe_unused]] uint8_t __pad055c[0x4]; // 0x55c
public:
CDOTA_Buff* m_pMyBuff; // 0x560
float famango_rate; // 0x568
};
// Alignment: 2
// Size: 0x11e0
class Modifier_Pluck_Famango_Channel : public CDOTA_Buff
{
public:
float famango_rate; // 0x11d8
CHandle< CBaseEntity > m_hMangoTree; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Vambrace : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Vambrace : public CDOTA_Buff_Item
{
public:
int32_t bonus_primary_stat; // 0x11d8
int32_t bonus_secondary_stat; // 0x11dc
int32_t bonus_magic_resistance; // 0x11e0
int32_t bonus_spell_amp; // 0x11e4
int32_t bonus_attack_speed; // 0x11e8
int32_t m_iStat; // 0x11ec
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Vambrace : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnVambraceStatChanged"
int32_t m_iStat; // 0x600
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Witless_shako : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Witless_shako : public CDOTA_Buff_Item
{
public:
int32_t max_health; // 0x11d8
int32_t max_mana; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Imp_Claw : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Imp_Claw : public CDOTA_Buff_Item
{
public:
int32_t crit_multiplier; // 0x11d8
int32_t bonus_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Flicker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Flicker : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Flicker_Damaged : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Spy_Gadget : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Spy_Gadget_Aura : public CDOTA_Buff_Item
{
public:
int32_t scan_cooldown_reduction; // 0x11d8
int32_t aura_range; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Spy_Gadget : public CDOTA_Buff
{
public:
int32_t attack_range; // 0x11d8
int32_t cast_range; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ocean_Heart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ocean_Heart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Ocean_Heart : public CDOTA_Buff_Item
{
public:
float water_hp_regen; // 0x11d8
float water_mp_regen; // 0x11dc
int32_t all_stats; // 0x11e0
bool m_bInRiver; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Broom_Handle : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Broom_Handle : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Broom_Handle : public CDOTA_Buff_Item
{
public:
int32_t melee_attack_range; // 0x11d8
int32_t bonus_armor; // 0x11dc
int32_t bonus_damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Trusty_Shovel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x618
class CDOTA_Item_Trusty_Shovel : public CDOTA_Item
{
public:
Vector m_vChannelPos; // 0x600
bool m_bIsUnderwater; // 0x60c
private:
[[maybe_unused]] uint8_t __pad060d[0x3]; // 0x60d
public:
ParticleIndex_t m_nPhaseStartFXIndex; // 0x610
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Trusty_Shovel : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Nether_Shawl : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Nether_Shawl : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Nether_Shawl : public CDOTA_Buff_Item
{
public:
int32_t bonus_magic_resistance; // 0x11d8
int32_t bonus_spell_amp; // 0x11dc
int32_t bonus_armor; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dragon_Scale : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dragon_Scale : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Dragon_Scale : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
int32_t bonus_hp_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Dragon_Scale_Burn : public CDOTA_Buff
{
public:
int32_t damage_per_sec; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Essence_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Essence_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Essence_Ring : public CDOTA_Buff_Item
{
public:
int32_t bonus_int; // 0x11d8
float mp_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Essence_Ring_Active : public CDOTA_Buff
{
public:
int32_t health_gain; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Clumsy_Net : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Clumsy_Net : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Clumsy_Net_Ensnare : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Clumsy_Net : public CDOTA_Buff_Item
{
public:
int32_t all_stats; // 0x11d8
int32_t mana_regen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Enchanted_Quiver : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Enchanted_Quiver : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Item_Enchanted_Quiver : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_range; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t active_bonus_attack_range; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ninja_Gear : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ninja_Gear : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Ninja_Gear : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t passive_movement_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Illusionsts_Cape : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Illusionsts_Cape : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Illusionsts_Cape_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Illusionsts_Cape : public CDOTA_Buff_Item
{
public:
int32_t bonus_agi; // 0x11d8
int32_t bonus_str; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Illusionists_Cape_Aura : public CDOTA_Buff
{
public:
int32_t attack_damage_aura; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Havoc_Hammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Havoc_Hammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Havoc_Hammer : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_strength; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Havoc_Hammer_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Panic_Button : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Panic_Button : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Panic_Button : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float health_threshold; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Apex : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Apex : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Apex : public CDOTA_Buff_Item
{
public:
int32_t primary_stat; // 0x11d8
int32_t primary_stat_universal; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ballista : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ballista : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Ballista : public CDOTA_Buff_Item
{
public:
int32_t attack_range_bonus; // 0x11d8
float knockback_distance; // 0x11dc
float knockback_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Woodland_Striders : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Woodland_Striders : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Woodland_Striders : public CDOTA_Buff_Item
{
public:
int32_t bonus_movement_speed; // 0x11d8
int32_t bonus_hp_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Woodland_Striders_Active : public CDOTA_Buff
{
public:
float tree_duration; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Trident : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Trident : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Item_Trident : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t movement_speed_percent_bonus; // 0x11e0
int32_t bonus_strength; // 0x11e4
int32_t hp_regen_amp; // 0x11e8
int32_t status_resistance; // 0x11ec
int32_t bonus_intellect; // 0x11f0
int32_t spell_amp; // 0x11f4
int32_t mana_regen_multiplier; // 0x11f8
int32_t magic_damage_attack; // 0x11fc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Demonicon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x618
class CDOTA_Item_Demonicon : public CDOTA_Item
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hDemonSummons; // 0x600
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Demonicon : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_intellect; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Demonicon_Bonus : public CDOTA_Buff
{
public:
int32_t hp_bonus; // 0x11d8
int32_t damage_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Fallen_Sky : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Fallen_Sky : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Fallen_Sky : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t bonus_intellect; // 0x11dc
float bonus_health_regen; // 0x11e0
float bonus_mana_regen; // 0x11e4
float blink_damage_cooldown; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Fallen_Sky_Land : public CDOTA_Buff
{
public:
int32_t impact_radius; // 0x11d8
float land_time; // 0x11dc
float burn_duration; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Fallen_Sky_Burn : public CDOTA_Buff
{
public:
int32_t burn_dps_buildings; // 0x11d8
int32_t burn_dps_units; // 0x11dc
float burn_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Pirate_Hat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x618
class CDOTA_Item_Pirate_Hat : public CDOTA_Item
{
public:
Vector m_vChannelPos; // 0x600
bool m_bIsUnderwater; // 0x60c
private:
[[maybe_unused]] uint8_t __pad060d[0x3]; // 0x60d
public:
ParticleIndex_t m_nPhaseStartFXIndex; // 0x610
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Pirate_Hat : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_ms; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Dimensional_Doorway : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dimensional_Doorway : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ex_Machina : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ex_Machina : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Ex_Machina : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Faded_Broach : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Faded_Broach : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Faded_Broach : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t bonus_movement_speed; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Paladin_Sword : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Paladin_Sword : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Paladin_Sword : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_lifesteal; // 0x11dc
int32_t bonus_spell_lifesteal; // 0x11e0
int32_t bonus_amp; // 0x11e4
int32_t creep_lifesteal_reduction_pct; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Minotaur_Horn : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Minotaur_Horn : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Minotaur_Horn_Immune : public CDOTA_Modifier_MagicImmune
{
public:
int32_t model_scale; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Minotaur_Horn : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Orb_Of_Destruction : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Orb_Of_Destruction : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Item_Orb_Of_Destruction : public CDOTA_Buff_Item
{
public:
float duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Orb_Of_Destruction_Debuff : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
int32_t slow_melee; // 0x11dc
int32_t slow_range; // 0x11e0
bool bCasterRanged; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_The_Leveller : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_The_Leveller : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_The_Leveller : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_armor; // 0x11dc
int32_t demolish; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Arcane_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Arcane_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Arcane_Ring : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
int32_t bonus_intelligence; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Titan_Sliver : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Titan_Sliver : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Titan_Sliver : public CDOTA_Buff_Item
{
public:
int32_t base_attack_damage; // 0x11d8
int32_t magic_resistance; // 0x11dc
int32_t status_resistance; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Voodoo_Mask : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Voodoo_Mask : public CDOTA_Buff_Item
{
public:
float spell_lifesteal; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Blitz_Knuckles : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifer_Item_Blitz_Knuckles : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Witch_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Witch_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Item_Witch_Blade : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_armor; // 0x11e0
float slow_duration; // 0x11e4
int32_t projectile_speed; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x4]; // 0x11ec
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Witch_Blade_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
float int_damage_multiplier; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_MaskOfDispair : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MaskOfDispair : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_MaskOfDispair : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
float bonus_armor; // 0x11dc
int32_t spell_lifesteal; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_MaskOfDispair_Berserk : public CDOTA_Buff
{
public:
int32_t berserk_spell_amp; // 0x11d8
int32_t berserk_manacost_reduction; // 0x11dc
int32_t berserk_magic_resistance; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Chipped_Vest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Chipped_Vest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Chipped_Vest : public CDOTA_Buff_Item
{
public:
float hp_regen; // 0x11d8
int32_t damage_return_hero; // 0x11dc
int32_t damage_return_creep; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Cloak_Of_Flames : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Cloak_Of_Flames : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Cloak_Of_Flames : public CDOTA_Buff_Item
{
public:
int32_t armor; // 0x11d8
int32_t magic_resistance; // 0x11dc
int32_t radius; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Cloak_Of_Flames_Debuff : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t damage_illusions; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Elven_Tunic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Elven_Tunic : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Elven_Tunic : public CDOTA_Buff_Item
{
public:
int32_t attack_speed; // 0x11d8
int32_t evasion; // 0x11dc
int32_t movment; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Gloves_Of_Travel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Gloves_Of_Travel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Gloves_Of_Travel : public CDOTA_Buff_Item
{
public:
int32_t attack_speed; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Orb_Of_Corrosion : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Orb_Of_Corrosion : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_Orb_Of_Corrosion : public CDOTA_Buff_Item
{
public:
int32_t health_bonus; // 0x11d8
float duration; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Orb_Of_Corrosion_Debuff : public CDOTA_Buff
{
public:
int32_t armor; // 0x11d8
int32_t slow_melee; // 0x11dc
int32_t slow_range; // 0x11e0
bool bCasterRanged; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t damage; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Sorcerers_Staff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Sorcerers_Staff : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Sorcerers_Staff : public CDOTA_Buff_Item
{
public:
int32_t mana_regen_amp; // 0x11d8
int32_t spell_amp_creeps; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Trickster_Cloak : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Trickster_Cloak : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Trickster_Cloak : public CDOTA_Buff_Item
{
public:
int32_t evasion; // 0x11d8
int32_t magic_resistance; // 0x11dc
float debuff_limit; // 0x11e0
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_Item_Trickster_Cloak_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Venom_Gland : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Venom_Gland : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Item_Venom_Gland : public CDOTA_Buff_Item
{
public:
int32_t primary_attribute; // 0x11d8
int32_t debuff_amp; // 0x11dc
float duration; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Venom_Gland_Debuff : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t degen; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Wizard_Glass : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Wizard_Glass : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Wizard_Glass : public CDOTA_Buff_Item
{
public:
int32_t debuff_amp; // 0x11d8
int32_t cooldown_reduction; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Gladiator_Helm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Gladiator_Helm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Gladiator_Helm : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Gladiator_Helm_Buff : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t armor; // 0x11dc
int32_t movement_speed; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Possessed_Mask : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Possessed_Mask : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Possessed_Mask : public CDOTA_Buff_Item
{
public:
int32_t primary_attribute; // 0x11d8
int32_t lifesteal; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_AssassinsDagger : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Item_AssassinsDagger : public CDOTA_Buff_Item
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
int32_t debuff_duration; // 0x11f0
int32_t bonus_attack_speed; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Assassins_Dagger_Debuff : public CDOTA_Buff
{
public:
int32_t armor_debuff; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_AsceticCap : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_AsceticCap : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float hp_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_AsceticCapBuff : public CDOTA_Buff
{
public:
int32_t status_resistance; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SamplePicker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_SamplePicker : public CDOTA_Buff_Item
{
public:
int32_t base_gold; // 0x11d8
int32_t gold_per_level; // 0x11dc
int32_t strength_penalty; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_IcarusWings : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_IcarusWings : public CDOTA_Buff_Item
{
public:
float move_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_IcarusWingsBuff : public CDOTA_Buff_Item
{
public:
int32_t status_resistance; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_IcarusWingsDebuff : public CDOTA_Buff_Item
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Dynamite_Jacket : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Dynamite_Jacket : public CDOTA_Buff_Item
{
public:
int32_t bonus_armor; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage; // 0x11e0
float blind_duration; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Jacket_Blind : public CDOTA_Buff
{
public:
float blind_pct; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tree_Processor : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Tree_Processor : public CDOTA_Buff_Item
{
public:
int32_t bonus_int; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Tree_Processor_Speed : public CDOTA_Buff_Item
{
public:
int32_t health_per_tree; // 0x11d8
int32_t hp_bonus; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Heavy_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Heavy_Blade : public CDOTA_Buff_Item
{
public:
float damage; // 0x11d8
int32_t attack_speed; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Mechanical_Arm : public CDOTA_Buff_Item
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
float bat; // 0x11dc
float stun_duration; // 0x11e0
int32_t stun_chance; // 0x11e4
int32_t m_nAttack; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mechanical_Arm : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mechanical_Arm_Counter : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Fortitude_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Fortitude_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Fortitude_Ring : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float hp_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Fortitude_Ring_Active : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_PogoStick : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_PogoStick : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t bonus_intellect; // 0x11e0
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_Pogo_Stick_Active : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t leap_distance; // 0x1204
float leap_speed; // 0x1208
float leap_acceleration; // 0x120c
int32_t leap_radius; // 0x1210
float leap_bonus_duration; // 0x1214
bool m_bLaunched; // 0x1218
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Paintball : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Paintball : public CDOTA_Buff_Item
{
public:
int32_t movespeed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Paintball_Debuff : public CDOTA_Buff
{
public:
int32_t dps; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_UnstableWand : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_UnstableWand : public CDOTA_Buff_Item
{
public:
int32_t all_stats; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_UnstableWand_Critter : public CDOTA_Modifier_Hexed
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_LightRobes : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_LightRobes : public CDOTA_Buff_Item
{
public:
int32_t health_penalty; // 0x11d8
int32_t attack_speed; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Force_Field_Bonus_Aura : public CDOTA_Buff
{
public:
int32_t bonus_aoe_radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Force_Field_Bonus : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Force_Field : public CDOTA_Buff_Item
{
public:
bool m_bAppliesToCreeps; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
int32_t bonus_aoe_radius; // 0x11dc
int32_t self_armor; // 0x11e0
int32_t self_mres; // 0x11e4
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Force_Field_Effect : public CDOTA_Buff
{
public:
float bonus_aoe_armor; // 0x11d8
float bonus_aoe_ms; // 0x11dc
float bonus_aoe_mres; // 0x11e0
float self_mres; // 0x11e4
float self_armor; // 0x11e8
int32_t active_reflection_pct; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Force_Field : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Misericorde : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Misericorde : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t missing_hp; // 0x11dc
int32_t damage; // 0x11e0
int32_t aspd; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ancient_Perseverance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ancient_Perseverance : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Ancient_Perseverance : public CDOTA_Buff_Item
{
public:
int32_t damage; // 0x11d8
int32_t hp_regen; // 0x11dc
int32_t mana_regen_amp; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Oakheart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Oakheart : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Oakheart : public CDOTA_Buff_Item
{
public:
int32_t strength; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Oakheart_Healing : public CDOTA_Buff
{
public:
int32_t heal; // 0x11d8
float duration; // 0x11dc
float regen; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Stormcrafter : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Stormcrafter : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Item_Stormcrafter : public CDOTA_Buff_Item
{
public:
GameTime_t m_flNextHit; // 0x11d8
int32_t passive_movement_bonus; // 0x11dc
int32_t range; // 0x11e0
float interval; // 0x11e4
int32_t damage; // 0x11e8
float slow_duration; // 0x11ec
float bonus_mana_regen; // 0x11f0
int32_t max_targets; // 0x11f4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Stormcrafter_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Overflowing_Elixir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x608
class CDOTA_Item_Overflowing_Elixir : public CDOTA_Item
{
public:
int32_t m_iStoredRuneType; // 0x600
GameTime_t m_fStoredRuneTime; // 0x604
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Overflowing_Elixir_Regen : public CDOTA_Buff
{
public:
int32_t health; // 0x11d8
int32_t mana; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mysterious_Hat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mysterious_Hat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Mysterious_Hat : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t spell_amp; // 0x11dc
int32_t manacost_reduction; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Orb_of_Pestilence : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Orb_of_Pestilence : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Orb_of_Pestilence : public CDOTA_Buff_Item
{
public:
int32_t poison_movement_speed_melee; // 0x11d8
int32_t poison_movement_speed_range; // 0x11dc
float poison_duration; // 0x11e0
float poison_damage; // 0x11e4
int32_t armor; // 0x11e8
float hp_regen; // 0x11ec
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Orb_of_Pestilence_Slow : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t slow; // 0x11dc
float damage; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Fluffy_Hat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Fluffy_Hat : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Fluffy_Hat : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Falcon_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Falcon_Blade : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Falcon_Blade : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_damage_per_kill; // 0x11dc
int32_t bonus_damage_per_assist; // 0x11e0
int32_t bonus_health; // 0x11e4
int32_t max_damage; // 0x11e8
float bonus_mana_regen; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Mage_Slayer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Mage_Slayer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Mage_Slayer : public CDOTA_Buff_Item
{
public:
int32_t bonus_magical_armor; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
float duration; // 0x11e4
float bonus_mana_regen; // 0x11e8
int32_t bonus_intellect; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Mage_Slayer_Debuff : public CDOTA_Buff
{
public:
int32_t spell_amp_debuff; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Overwhelming_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Overwhelming_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SuperOverwhelming_Blink : public CDOTA_Item_Overwhelming_Blink
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Overwhelming_Blink : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
float blink_damage_cooldown; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Item_SuperOverwhelming_Blink : public CDOTA_Modifier_Item_Overwhelming_Blink
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Overwhelming_Blink_Debuff : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t attack_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Swift_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Swift_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SuperSwift_Blink : public CDOTA_Item_Swift_Blink
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Swift_Blink : public CDOTA_Buff_Item
{
public:
float blink_damage_cooldown; // 0x11d8
int32_t bonus_agility; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Item_SuperSwift_Blink : public CDOTA_Modifier_Item_Swift_Blink
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Swift_Blink_Buff : public CDOTA_Buff
{
public:
int32_t bonus_movement; // 0x11d8
int32_t bonus_agi_active; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Arcane_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Arcane_Blink : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SuperArcane_Blink : public CDOTA_Item_Arcane_Blink
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Arcane_Blink : public CDOTA_Buff_Item
{
public:
float blink_damage_cooldown; // 0x11d8
int32_t bonus_intellect; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Item_SuperArcane_Blink : public CDOTA_Modifier_Item_Arcane_Blink
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Arcane_Blink_Buff : public CDOTA_Buff
{
public:
int32_t cast_pct_improvement; // 0x11d8
int32_t manacost_reduction; // 0x11dc
int32_t debuff_amp; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Wind_Waker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Wind_Waker : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Wind_Waker : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_movement_speed; // 0x11e0
int32_t bonus_mana; // 0x11e4
int32_t cast_range_bonus; // 0x11e8
};
// Alignment: 6
// Size: 0x1200
class CDOTA_Modifier_Wind_Waker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hBlocker; // 0x11d8
GameTime_t m_flStartTime; // 0x11dc
Vector m_vStartPos; // 0x11e0
float m_flCurTime; // 0x11ec
float m_flHeightT; // 0x11f0
Vector m_vMoveToPos; // 0x11f4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Eul_Wind_Waker_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Aghanims_Shard : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Aghanims_Shard_Roshan : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghanims_Shard : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Eternal_Shroud : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Eternal_Shroud : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Eternal_Shroud_Barrier : public CDOTA_Buff
{
public:
int32_t barrier_block; // 0x11d8
int32_t barrier_amount; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Eternal_Shroud : public CDOTA_Buff_Item
{
public:
int32_t bonus_spell_resist; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t bonus_armor; // 0x11e0
float bonus_health_regen; // 0x11e4
int32_t mana_restore_pct; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Star_Mace : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Star_Mace : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Star_Mace : public CDOTA_Buff_Item
{
public:
int32_t movement_speed_pct; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t cleave_damage_percent; // 0x11e0
int32_t cleave_starting_width; // 0x11e4
int32_t cleave_ending_width; // 0x11e8
int32_t cleave_distance; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Penta_Edged_Sword : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Penta_Edged_Sword : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Penta_Edged_Sword : public CDOTA_Buff_Item
{
public:
int32_t damage; // 0x11d8
int32_t maim_chance; // 0x11dc
float maim_duration; // 0x11e0
int32_t melee_attack_range; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Penta_Edged_Sword_Maim : public CDOTA_Buff
{
public:
int32_t maim_slow_movement; // 0x11d8
int32_t maim_slow_attack; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Gungir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Gungir : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_GungirChain : public CDOTA_Buff
{
public:
int32_t chain_radius; // 0x11d8
int32_t chain_strikes; // 0x11dc
int32_t chain_damage; // 0x11e0
float chain_delay; // 0x11e4
int32_t m_iCurJumpCount; // 0x11e8
Vector m_vCurTargetLoc; // 0x11ec
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11f8
};
// Alignment: 11
// Size: 0x1230
class CDOTA_Modifier_Item_Gungir : public CDOTA_Buff_Item
{
public:
int32_t bonus_damage; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t bonus_agility; // 0x11e0
int32_t bonus_intellect; // 0x11e4
int32_t chain_chance; // 0x11e8
int32_t chain_strikes; // 0x11ec
int32_t chain_damage; // 0x11f0
int32_t chain_radius; // 0x11f4
float chain_cooldown; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11fc[0x4]; // 0x11fc
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x1200
CountdownTimer m_ChainTimer; // 0x1218
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Gungnir_Debuff : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Orb_Of_Revelations : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x620
class CDOTA_Item_Orb_Of_Revelations : public CDOTA_Item
{
public:
CountdownTimer m_ViewerTimer; // 0x600
int32_t m_iProjectile; // 0x618
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Orb_Of_Revelations : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
float bonus_mana_regen; // 0x11e0
int32_t cast_range_bonus; // 0x11e4
int32_t bonus_magical_armor; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Orb_Of_Revelations_Reveal : public CDOTA_Buff
{
public:
int32_t movespeed; // 0x11d8
bool m_bCastOnInvisibleHero; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Satchel : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Satchel : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t xp_gain; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Grandmasters_Glaive : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 19
// Size: 0x1238
class CDOTA_Modifier_Item_Grandmasters_Glaive : public CDOTA_Buff_Item
{
public:
int32_t sange_bonus_strength; // 0x11d8
int32_t sange_status_resistance; // 0x11dc
int32_t sange_hp_regen_amp; // 0x11e0
int32_t kaya_bonus_intellect; // 0x11e4
int32_t kaya_spell_amp; // 0x11e8
int32_t kaya_mana_regen_multiplier; // 0x11ec
int32_t kaya_magic_damage_attack; // 0x11f0
int32_t yasha_bonus_agility; // 0x11f4
int32_t yasha_bonus_attack_speed; // 0x11f8
int32_t yasha_movement_speed_percent_bonus; // 0x11fc
int32_t m_iCurrentStance; // 0x1200
int32_t bonus_strength; // 0x1204
int32_t bash_chance_melee; // 0x1208
int32_t bash_chance_ranged; // 0x120c
float bash_duration; // 0x1210
float bash_cooldown; // 0x1214
int32_t bonus_chance_damage; // 0x1218
int32_t bonus_damage; // 0x121c
CUtlVector< int16 > m_InFlightAttackRecords; // 0x1220
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Grandmasters_Glaive : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnGrandmastersStatChanged"
int32_t m_iStat; // 0x600
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Agi : public CDOTA_Buff
{
public:
int32_t agi_stance; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Str : public CDOTA_Buff
{
public:
int32_t str_stance; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Grandmasters_Glaive_Bonus_Int : public CDOTA_Buff
{
public:
int32_t int_stance; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Warhammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Warhammer : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Warhammer : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Warhammer_Armor : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Psychic_Headband : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Psychic_Headband : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Psychic_Headband : public CDOTA_Buff_Item
{
public:
int32_t intelligence_pct; // 0x11d8
int32_t cast_range; // 0x11dc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Psychic_Headband : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
int32_t push_length; // 0x11ec
float push_duration; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Ceremonial_Robe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Ceremonial_Robe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Ceremonial_Robe : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t aura_radius; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ceremonial_Robe_Aura : public CDOTA_Buff
{
public:
int32_t status_resistance; // 0x11d8
int32_t magic_resistance; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Book_Of_Shadows : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Book_Of_Shadows : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Book_Of_Shadows : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t night_vision; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Book_Of_Shadows_Buff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Giants_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Giants_Ring : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Giants_Ring : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t model_scale; // 0x11e0
int32_t damage_radius; // 0x11e4
int32_t pct_str_damage_per_second; // 0x11e8
float tick_rate; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Vengeances_Shadow : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Vengeances_Shadow : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Vengeances_Shadow : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t damage_return; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Vengeances_Shadow_Illusions : public CDOTA_Buff
{
public:
bool m_bLeftoverHybrid; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Bullwhip : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Bullwhip : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Bullwhip : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Bullwhip_Buff_Thinker : public CDOTA_Buff
{
public:
int32_t speed; // 0x11d8
CHandle< CBaseEntity > m_hTarget; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Bullwhip_Buff : public CDOTA_Buff
{
public:
int32_t speed; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Quicksilver_Amulet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Quicksilver_Amulet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_Quicksilver_Amulet : public CDOTA_Buff_Item
{
public:
int32_t base_attack; // 0x11d8
int32_t bonus_attack; // 0x11dc
int32_t base_movement; // 0x11e0
int32_t bonus_movement; // 0x11e4
int32_t projectile_increase; // 0x11e8
int32_t anim_increase; // 0x11ec
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Naginata : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Naginata : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_Naginata : public CDOTA_Buff_Item
{
public:
int32_t bonus_intellect; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
int32_t bonus_damage; // 0x11e0
int32_t bonus_health; // 0x11e4
float bonus_mana_regen; // 0x11e8
int32_t cooldown_reduction_percent; // 0x11ec
int32_t bonus_chance; // 0x11f0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SeedsOfSerenity : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_SeedsOfSerenity : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
float bonus_health_regen; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_SeedsOfSerenity_Active_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_SeedsOfSerenity_Active : public CDOTA_Buff
{
public:
int32_t aura_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_LanceOfPursuit : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Item_LanceOfPursuit : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t bonus_strength; // 0x11dc
int32_t backstab_damage; // 0x11e0
int32_t backstab_angle; // 0x11e4
float slow_duration; // 0x11e8
bool m_bBackstab; // 0x11ec
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Lance_of_Pursuit_Slow : public CDOTA_Buff
{
public:
int32_t slow_pct_melee; // 0x11d8
int32_t slow_pct_ranged; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Occult_Bracelet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Occult_Bracelet : public CDOTA_Buff_Item
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t stack_limit; // 0x11dc
float stack_duration; // 0x11e0
GameTime_t m_flStackDieTime; // 0x11e4
int32_t magic_resistance; // 0x11e8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Occult_Bracelet_Stack : public CDOTA_Buff
{
public:
float mana_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Tome_of_Omniscience : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Tome_of_Omniscience : public CDOTA_Buff_Item
{
public:
int32_t bonus_mana; // 0x11d8
int32_t bonus_xpm; // 0x11dc
int32_t bonus_armor; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_OgreSealTotem : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_OgreSealTotem : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 14
// Size: 0x1220
class CDOTA_Modifier_OgreSealTotem_Active : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_nCurrentBounce; // 0x1204
int32_t leap_distance; // 0x1208
float leap_speed; // 0x120c
float leap_acceleration; // 0x1210
int32_t leap_radius; // 0x1214
float leap_bonus_duration; // 0x1218
bool m_bLaunched; // 0x121c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_OgreSealTotem_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_WandOfTheBrine : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_WandOfTheBrine : public CDOTA_Buff_Item
{
public:
int32_t heal_increase; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_WandOfTheBrine_Active : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
float interval; // 0x11dc
int32_t damage_reduction; // 0x11e0
int32_t heal; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Slime_Vial : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Slime_Vial : public CDOTA_Buff_Item
{
public:
int32_t health_regen; // 0x11d8
};
// Alignment: 8
// Size: 0x1220
class CDOTA_Modifier_Item_Slime_Vial_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
CountdownTimer m_ViewerTimer; // 0x11f8
int32_t spill_speed; // 0x1210
int32_t spill_radius; // 0x1214
int32_t spill_damage; // 0x1218
float spill_debuff_duration; // 0x121c
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Slime_Vial_Spill_Debuff : public CDOTA_Buff
{
public:
int32_t spill_movement_speed; // 0x11d8
int32_t spill_attack_speed; // 0x11dc
int32_t spill_self_bonus_armor; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Harpoon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Harpoon : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_Item_Harpoon : public CDOTA_Buff_Item
{
public:
int32_t bonus_chance; // 0x11d8
int32_t bonus_chance_damage; // 0x11dc
int32_t bonus_strength; // 0x11e0
int32_t bonus_agility; // 0x11e4
int32_t bonus_intellect; // 0x11e8
float bonus_mana_regen; // 0x11ec
int32_t bonus_damage; // 0x11f0
int32_t bonus_speed; // 0x11f4
CUtlVector< int16 > m_InFlightProcAttackRecords; // 0x11f8
int32_t m_nBonusProcAttackRecord; // 0x1210
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Harpoon_EchoSabre_Component : public CDOTA_Buff_Item
{
public:
float slow_duration; // 0x11d8
int32_t bonus_attack_speed; // 0x11dc
bool bonus_speed; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
float passive_cooldown; // 0x11e4
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Item_Harpoon_Pull : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
float m_flDistance; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Harpoon_Slow : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Harpoon_InternalCD : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Guardian_Shell : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Guardian_Shell : public CDOTA_Buff_Item
{
public:
int32_t all_stats; // 0x11d8
int32_t bonus_armor; // 0x11dc
float counter_cooldown; // 0x11e0
GameTime_t m_flLastCounterTime; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_GuardianShell_Active : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Arcane_Scout : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hScout; // 0x600
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Arcane_Scout : public CDOTA_Buff_Item
{
public:
int32_t vision_bonus; // 0x11d8
int32_t magic_resist; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Arcane_Scout_Self_Vision : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Arcane_Scout_Invulnerability : public CDOTA_Modifier_Invulnerable
{
public:
int32_t scout_movespeed; // 0x11d8
int32_t sight_range; // 0x11dc
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_Barricade : public CDOTA_Item
{
public:
CHandle< CBaseEntity > m_hScout; // 0x600
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Barricade_Thinker : public CDOTA_Buff
{
public:
int32_t length; // 0x11d8
int32_t width; // 0x11dc
int32_t max_hits; // 0x11e0
int32_t m_iCurrentHits; // 0x11e4
int32_t m_hObstruction; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_Barricade_Blocker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Barricade : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_armor; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_EyeOfTheVizier : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_EyeOfTheVizier : public CDOTA_Buff_Item
{
public:
int32_t cast_range_bonus; // 0x11d8
int32_t mana_reduction_pct; // 0x11dc
float bonus_mana_regen; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_ManaclesOfPower : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_ManaclesOfPower : public CDOTA_Buff_Item
{
public:
int32_t bonus_strength; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_ManaclesOfPower_Effect : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hPartner; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
float leash_distance; // 0x11e0
float leash_limit_multiplier; // 0x11e4
CHandle< CBaseEntity > m_hAnchor; // 0x11e8
};
// Alignment: 3
// Size: 0x610
class CDOTA_Item_Bottomless_Chalice : public CDOTA_Item
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnChaliceStoredRuneChanged"
int32_t m_iStoredRuneType; // 0x600
GameTime_t m_fStoredRuneTime; // 0x604
float stored_rune_duration; // 0x608
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Bottomless_Chalice_Regen : public CDOTA_Buff
{
public:
int32_t health; // 0x11d8
int32_t mana; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_Bottomless_Chalice : public CDOTA_Buff_Item
{
public:
int32_t max_charges_per_kill; // 0x11d8
float recharge_time; // 0x11dc
bool m_bFull; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e1[0x3]; // 0x11e1
public:
int32_t bonus_intellect; // 0x11e4
int32_t movement_speed; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_WandOfSanctitude : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_WandOfSanctitude : public CDOTA_Buff_Item
{
public:
int32_t all_stats; // 0x11d8
int32_t cast_range_bonus; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_WandOfSanctitude_Active_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_SpecialistsArray : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1228
class CDOTA_Modifier_Item_SpecialistsArray : public CDOTA_Buff_Item
{
public:
int32_t all_stats; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t proc_bonus_damage; // 0x11e0
int32_t count; // 0x11e4
int32_t secondary_target_range_bonus; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DaggerOfRistul : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_DaggerOfRistul : public CDOTA_Buff_Item
{
public:
int32_t aspd; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_DaggerOfRistul_Buff : public CDOTA_Buff
{
public:
int32_t bonus_damage; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Lunar_Crest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Lunar_Crest : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Lunar_Crest : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t bonus_spell_resist; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Lunar_Crest_Barrier_Addition : public CDOTA_Buff
{
public:
int32_t barrier_block; // 0x11d8
int32_t barrier_amount; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Lunar_Crest_Barrier_Reduction : public CDOTA_Buff
{
public:
int32_t barrier_block; // 0x11d8
float m_flDamageTotal; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Magus_Minimus : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Magus_Minimus : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Magus_Minimus_Inhibit : public CDOTA_Buff
{
public:
int32_t purge_rate; // 0x11d8
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Item_Magus_Minimus : public CDOTA_Buff_Item
{
public:
int32_t bonus_agility; // 0x11d8
int32_t bonus_intellect; // 0x11dc
float damage_per_burn; // 0x11e0
int32_t feedback_mana_burn; // 0x11e4
int32_t feedback_mana_burn_illusion_melee; // 0x11e8
int32_t feedback_mana_burn_illusion_ranged; // 0x11ec
int32_t aura_radius; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Magus_Minimus_Aura_Slow : public CDOTA_Buff
{
public:
int32_t max_slow_pct; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Recipe_Witches_Switch : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Witches_Switch : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_Witches_Switch : public CDOTA_Buff_Item
{
public:
float bonus_health_regen; // 0x11d8
float bonus_mana_regen; // 0x11dc
int32_t bonus_armor; // 0x11e0
int32_t aura_radius; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Witches_Switch_Aura_Effect : public CDOTA_Buff
{
public:
float aura_mana_regen; // 0x11d8
float aura_health_regen; // 0x11dc
int32_t aura_armor; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Spark_Of_Courage : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_Spark_Of_Courage : public CDOTA_Buff_Item
{
public:
int32_t damage; // 0x11d8
int32_t armor; // 0x11dc
int32_t health_pct; // 0x11e0
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_VindicatorsAxe : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_VindicatorsAxe : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_damage; // 0x11dc
int32_t bonus_armor; // 0x11e0
ParticleIndex_t m_nFxIndex; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DandelionAmulet : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifer_Item_DandelionAmulet : public CDOTA_Buff_Item
{
public:
int32_t move_speed; // 0x11d8
int32_t mana; // 0x11dc
int32_t magic_block; // 0x11e0
int32_t min_damage; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_BlightedSpirit : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifer_Item_BlightedSpirit : public CDOTA_Buff_Item
{
public:
int32_t magic_resist; // 0x11d8
float duration; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_BlightedSpirit_Blight : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
int32_t heal_reduction; // 0x11dc
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_DuelistGloves : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_DuelistGloves : public CDOTA_Buff_Item
{
public:
int32_t bonus_attack_speed; // 0x11d8
int32_t bonus_damage; // 0x11dc
float radius; // 0x11e0
int32_t actual_attack_speed; // 0x11e4
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_HorizonsEquilibrium : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Item_HorizonsEquilibrium : public CDOTA_Buff_Item
{
public:
int32_t distance; // 0x11d8
int32_t damage_reduction; // 0x11dc
int32_t attack_lifesteal; // 0x11e0
int32_t spell_lifesteal; // 0x11e4
int32_t creep_lifesteal_reduction_pct; // 0x11e8
};
// Alignment: 1
// Size: 0x608
class CDOTA_Item_TurtleShell : public CDOTA_Item
{
public:
float duration; // 0x600
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifer_Item_TurtleShell : public CDOTA_Buff_Item
{
public:
int32_t armor; // 0x11d8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifer_Item_TurtleShell_Shell : public CDOTA_Buff_Item
{
public:
int32_t damage_reduction; // 0x11d8
Vector m_vecPosition; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_MartyrsPlate : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_MartyrsPlate : public CDOTA_Buff_Item
{
public:
float duration; // 0x11d8
int32_t magic_resist; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_MartyrsPlate_Aura : public CDOTA_Buff_Item
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_MartyrsPlate_Effect : public CDOTA_Buff_Item
{
public:
int32_t damage_redirection; // 0x11d8
};
// Alignment: 0
// Size: 0x600
class CDOTA_Item_Gossamer_Cape : public CDOTA_Item
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Item_Gossamer_Cape : public CDOTA_Buff_Item
{
public:
float movement_speed; // 0x11d8
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0658[0x8]; // 0x658
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
{
private:
[[maybe_unused]] uint8_t __pad0550[0x10]; // 0x550
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_XP : public CBaseAnimatingActivity
{
public:
CUtlSymbolLarge m_szPosition; // 0x758
int32_t m_nDotaTeam; // 0x760
// MNetworkEnable
float m_flLastSpawnTime; // 0x764
// MNetworkEnable
float m_flNextSpawnTime; // 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: 0x11f8
class CDOTA_Modifier_TutorialNPCBlocker_Thinker : public CDOTA_Buff
{
public:
Vector m_vecStart; // 0x11d8
Vector m_vecEnd; // 0x11e4
float m_flRadius; // 0x11f0
bool m_bHidden; // 0x11f4
};
// Alignment: 5
// Size: 0x1208
class CDOTA_Modifier_TutorialNPCBlocker : public CDOTA_Buff
{
public:
Vector m_vecStart; // 0x11d8
Vector m_vecEnd; // 0x11e4
Vector m_vecCenter; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x11fc
bool m_bHidden; // 0x1200
};
// 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: 0x11d8
class CDOTA_Modifier_AttributeBonus : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Gold : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_HP : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_MP : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Attack_Speed : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Base_Attack_Rate : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Attributes : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_All_Stats : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Movement_Speed : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Cast_Speed : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Movement_Speed_Percentage : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_HP_Regen : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_MP_Regen : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_MP_Regen_Amp : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Manaloss_Reduction : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Agility_And_Intelligence : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Intelligence : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Strength : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Agility : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Magic_Resistance : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Status_Resistance : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Day_Vision : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Night_Vision : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Vision : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Armor : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Attack_Damage : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Attack_Base_Damage : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Attack_Range : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Cast_Range : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Spell_Amplify : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Cooldown_Reduction : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Respawn_Reduction : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Gold_Income : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Evasion : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Morphling_4 : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Unique_Treant_3 : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_20_Bash : public CDOTA_Buff
{
public:
float value; // 0x11d8
float value2; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Crit : public CDOTA_Buff
{
public:
float crit_chance; // 0x11d8
float crit_multiplier; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Tree_Walking : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Lifesteal : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Cleave : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Corruption : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Corruption_Debuff : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Special_Bonus_Mana_Break : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
int32_t burn_illusions_ranged; // 0x11dc
int32_t burn_illusions_melee; // 0x11e0
float damage_per_burn; // 0x11e4
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Special_Bonus_Spell_Block : public CDOTA_Buff
{
public:
float block_cooldown; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CountdownTimer m_CooldownTimer; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_Spell_Immunity : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Haste : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Special_Bonus_TrueStrike : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Special_Bonus_Reincarnation : public CDOTA_Buff
{
public:
float value; // 0x11d8
float reincarnate_time; // 0x11dc
GameTime_t m_fLastReincarnationTime; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Spell_Lifesteal : public CDOTA_Buff
{
public:
float value; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Special_Bonus_Exp_Boost : public CDOTA_Buff
{
public:
int32_t value; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Stacking_Gold_Rate_Boost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Stacking_Exp_Rate_Boost : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_Summon_Common_Thinker : public CDOTA_Buff
{
public:
float grace_period; // 0x11d8
int32_t search_distance; // 0x11dc
float think_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Healing_Campfire_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Healing_Campfire_Heal : public CDOTA_Buff
{
public:
int32_t heal_amount; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_Summon_Snowman_Thinker : public CDOTA_Buff
{
public:
float grace_period; // 0x11d8
int32_t search_distance; // 0x11dc
float think_interval; // 0x11e0
};
// Alignment: 31
// Size: 0x1280
class CDOTA_Modifier_Seasonal_Penguin : public CDOTA_Buff
{
public:
float m_fLifetimeGained; // 0x11d8
Vector m_vTargetPos; // 0x11dc
int32_t m_nCurrentSpeed; // 0x11e8
GameTime_t m_fLastBumpTime; // 0x11ec
Vector m_vLastPos; // 0x11f0
CHandle< CBaseEntity > m_hLastHit; // 0x11fc
Vector m_vDir; // 0x1200
Vector m_vRunEndPos; // 0x120c
bool m_bIsInInitialRun; // 0x1218
private:
[[maybe_unused]] uint8_t __pad1219[0x3]; // 0x1219
public:
Vector m_vJumpEndPos; // 0x121c
bool m_bPlayedVroomSinceLastCrash; // 0x1228
private:
[[maybe_unused]] uint8_t __pad1229[0x3]; // 0x1229
public:
ParticleIndex_t m_nVroomFX; // 0x122c
GameTime_t m_fLastSpeedStepTime; // 0x1230
GameTime_t m_fLastSpeechTime; // 0x1234
ParticleIndex_t m_nFXStackIndex; // 0x1238
int32_t m_nBumpsSinceLastCrash; // 0x123c
CHandle< CBaseEntity > m_hLastBumpingHero; // 0x1240
int32_t initial_speed; // 0x1244
int32_t max_speed; // 0x1248
int32_t speed_step; // 0x124c
float speed_step_interval; // 0x1250
float bump_delay; // 0x1254
float bump_delay_absolute; // 0x1258
int32_t bump_collision_radius; // 0x125c
int32_t run_distance; // 0x1260
int32_t jump_distance; // 0x1264
int32_t speed_after_crash; // 0x1268
int32_t speed_gain_per_hero_bump; // 0x126c
float max_gainable_lifetime; // 0x1270
float lifetime_gain_per_hero_bump; // 0x1274
float min_speech_repeat_time; // 0x1278
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Seasonal_FestiveFirework : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_Firecrackers : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Ability_Seasonal_Summon_Dragon_Thinker : public CDOTA_Buff
{
public:
float grace_period; // 0x11d8
int32_t search_distance; // 0x11dc
float think_interval; // 0x11e0
};
// Alignment: 14
// Size: 0x1220
class CDOTA_Modifier_Seasonal_Summon_CNY_Balloon_Thinker : public CDOTA_Buff
{
public:
float speed; // 0x11d8
int32_t min_distance_before_bounce; // 0x11dc
float drag; // 0x11e0
float max_height; // 0x11e4
float max_vertical_move_time; // 0x11e8
float bounce_turn_angle; // 0x11ec
float bounce_turn_angle_tree; // 0x11f0
float bounce_delay; // 0x11f4
Vector m_vLastPos; // 0x11f8
Vector m_vDir; // 0x1204
float m_flSpeed; // 0x1210
float m_flDistRemaining; // 0x1214
float m_flTreeTimeRemaining; // 0x1218
CHandle< CBaseEntity > m_hLastHit; // 0x121c
};
// Alignment: 14
// Size: 0x1220
class CDOTA_Modifier_Seasonal_Summon_TI9_Balloon_Thinker : public CDOTA_Buff
{
public:
float speed; // 0x11d8
int32_t min_distance_before_bounce; // 0x11dc
float drag; // 0x11e0
float max_height; // 0x11e4
float max_vertical_move_time; // 0x11e8
float bounce_turn_angle; // 0x11ec
float bounce_turn_angle_tree; // 0x11f0
float bounce_delay; // 0x11f4
Vector m_vLastPos; // 0x11f8
Vector m_vDir; // 0x1204
float m_flSpeed; // 0x1210
float m_flDistRemaining; // 0x1214
float m_flTreeTimeRemaining; // 0x1218
CHandle< CBaseEntity > m_hLastHit; // 0x121c
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Seasonal_TI9_Drums_Thinker : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x10]; // 0x11d8
public:
int32_t m_nNextSoundIndex; // 0x11e8
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Seasonal_TI9_Shovel_Stasis_Trap : public CDOTA_Modifier_Seasonal_Summon_Common_Thinker
{
public:
CHandle< CBaseEntity > m_hHero; // 0x11e8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Seasonal_TI9_Shovel_BabyRoshan : public CDOTA_Buff
{
public:
bool m_bFirstThink; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
GameTime_t m_flStartTime; // 0x11dc
Vector m_vecStartingPos; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_TI9_Shovel_Ghost_Haunt : public CDOTA_Buff
{
public:
int32_t nDamageInstances; // 0x11d8
GameTime_t m_flLastAttackTime; // 0x11dc
GameTime_t m_flLastMoveTime; // 0x11e0
CHandle< CBaseEntity > m_hGhost; // 0x11e4
};
// Alignment: 4
// Size: 0x1200
class CDOTA_Modifier_Seasonal_TI9_Shovel_Pudgling : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
int32_t m_nActionCount; // 0x11dc
Vector m_vecStartingPos; // 0x11e0
Vector m_vecDestinationOffset; // 0x11ec
};
// Alignment: 17
// Size: 0x1260
class CDOTA_Modifier_Seasonal_TI9_Monkey_Thinker : public CDOTA_Buff
{
public:
float attack_range; // 0x11d8
float attack_time; // 0x11dc
float attack_projectile_time; // 0x11e0
int32_t projectile_speed; // 0x11e4
float turn_time; // 0x11e8
float turn_angle; // 0x11ec
float shoot_angle; // 0x11f0
float m_flTurnRate; // 0x11f4
float m_flTargetYaw; // 0x11f8
float m_flLastTurnTime; // 0x11fc
GameTick_t m_nLastTickCount; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
bool m_bHappyMonkeyCondition; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1209[0x3]; // 0x1209
public:
CHandle< CDOTA_BaseNPC > m_hAngryTarget; // 0x120c
CHandle< CDOTA_BaseNPC > m_hAttackTarget; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CountdownTimer m_AttackTimer; // 0x1218
CountdownTimer m_AttackProjectileTimer; // 0x1230
CountdownTimer m_HappyTimer; // 0x1248
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_TI9_MonkeyPoop : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 13
// Size: 0x1220
class CDOTA_Modifier_Lesser_NightCrawler_Pounce : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t pounce_distance; // 0x1204
float pounce_speed; // 0x1208
float pounce_acceleration; // 0x120c
int32_t pounce_radius; // 0x1210
int32_t pounce_damage; // 0x1214
float leash_duration; // 0x1218
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Zombie_Berserk : public CDOTA_Buff
{
public:
int32_t berserk_bonus_attack_speed; // 0x11d8
int32_t berserk_bonus_movement_speed; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Corpselord_Revive : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t ticks_to_revive; // 0x11dc
float tick_interval; // 0x11e0
CHandle< CDOTA_BaseNPC > m_pReviveTarget; // 0x11e4
int32_t m_nCurrentTicks; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Creature_IceSlam_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
ParticleIndex_t m_nPathEffectIndex; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_GreaterClarity : public CDOTA_Buff
{
public:
int32_t total_mana; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_UpgradedMortar : public CDOTA_Buff
{
public:
int32_t bonus_per_upgrade; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_UpgradedBarricade : public CDOTA_Buff
{
public:
int32_t armor_bonus_per_upgrade; // 0x11d8
int32_t hp_bonus_per_upgrade; // 0x11dc
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Creature_HybridFlyer : public CDOTA_Buff
{
public:
CountdownTimer m_ctTimer; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Creature_Full_Avoidance : public CDOTA_Buff
{
public:
float m_flOriginalAvoidance; // 0x11d8
};
// Alignment: 17
// Size: 0x1220
class CDOTA_Modifier_LootDrop_Thinker : public CDOTA_Buff
{
public:
bool m_bAutoPickup; // 0x11d8
bool m_bOnlyPlayerHeroPickup; // 0x11d9
bool m_bCreepHeroPickup; // 0x11da
bool m_bAutoUse; // 0x11db
bool m_bFlying; // 0x11dc
bool m_bUseSpawnAnim; // 0x11dd
bool m_bAutoTeleport; // 0x11de
private:
[[maybe_unused]] uint8_t __pad11df[0x1]; // 0x11df
public:
GameTime_t m_flKnockbackStartTime; // 0x11e0
GameTime_t m_flKnockbackEndTime; // 0x11e4
float m_flKnockbackHeight; // 0x11e8
float m_flInitialHeight; // 0x11ec
float m_flKnockbackDuration; // 0x11f0
float m_flEndHeight; // 0x11f4
Vector m_vStartPos; // 0x11f8
Vector m_vEndPos; // 0x1204
float m_fPickupRadius; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CUtlString m_strTransitionEffect; // 0x1218
};
// Alignment: 13
// Size: 0x1228
class CDOTA_Modifier_ItemWiggle_Thinker : public CDOTA_Buff
{
public:
Vector m_vOriginalPosition; // 0x11d8
float m_flOriginalScale; // 0x11e4
GameTime_t m_flLastChangeTime; // 0x11e8
Vector m_vLastChangePosition; // 0x11ec
float m_flLastChangeScale; // 0x11f8
Vector m_vTargetPosition; // 0x11fc
float m_flTargetScale; // 0x1208
bool m_bFirstThink; // 0x120c
private:
[[maybe_unused]] uint8_t __pad120d[0x3]; // 0x120d
public:
float m_flStartAmplitude; // 0x1210
float m_flEndAmplitude; // 0x1214
float m_flScaleAmplitude; // 0x1218
float m_flStartFrequency; // 0x121c
float m_flEndFrequency; // 0x1220
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Summon_Snowman_Thinker : public CDOTA_Buff
{
public:
float tick_rate; // 0x11d8
int32_t taunt_radius; // 0x11dc
float taunt_duration; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Snowman_Taunt : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hZombieTarget; // 0x11d8
bool m_bDidSetAttackTarget; // 0x11dc
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Frostivus2018_Decorate_Tree_Thinker : public CDOTA_Buff
{
public:
int32_t num_explosions; // 0x11d8
int32_t radius; // 0x11dc
float m_fExplosions; // 0x11e0
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_FestiveFirework : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_FestiveFirework_Blind : public CDOTA_Buff
{
public:
int32_t miss_rate; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Siege_Fireball_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float duration; // 0x11dc
float tick_interval; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Siege_Fireball_Burn : public CDOTA_Buff
{
public:
int32_t damage_per_tick; // 0x11d8
float tick_interval; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeLock : public CDOTA_Buff
{
public:
float duration; // 0x11d8
float duration_creep; // 0x11dc
int32_t chance_pct; // 0x11e0
int32_t bonus_damage; // 0x11e4
int32_t radius; // 0x11e8
};
// Alignment: 1
// Size: 0x11f0
class CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeWalk_Tracker : public CDOTA_Buff
{
public:
CUtlVector< CDOTA_Modifier_Frostivus2018_FacelessVoid_TimeWalk_Tracker::sDamageSources > m_vDamageSources; // 0x11d8
};
// Alignment: 6
// Size: 0x588
class CDOTA_Ability_Frostivus2018_FacelessVoid_TimeWalk : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t speed; // 0x568
int32_t range; // 0x56c
int32_t radius; // 0x570
int32_t damage; // 0x574
int32_t m_nProjectileID; // 0x578
Vector m_vProjectileLocation; // 0x57c
};
// Alignment: 15
// Size: 0x1238
class CDOTA_Modifier_Frostivus2018_Luna_Eclipse : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t radius; // 0x11dc
int32_t beams; // 0x11e0
int32_t hit_count; // 0x11e4
int32_t m_iBeamDamage; // 0x11e8
float m_flBeamStun; // 0x11ec
Vector vPosition; // 0x11f0
int32_t lucent_beam_radius; // 0x11fc
bool bAreaTarget; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_iTickCount; // 0x1204
ParticleIndex_t m_nMoonlightFXIndex; // 0x1208
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_HitTargets; // 0x1210
float beam_interval; // 0x1228
float beam_interval_scepter; // 0x122c
float m_flInterval; // 0x1230
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Clinkz_Strafe : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus_pct; // 0x11d8
int32_t attack_spill_width; // 0x11dc
int32_t attack_spill_range; // 0x11e0
float spill_damage_multiplier; // 0x11e4
};
// Alignment: 6
// Size: 0x1208
class CDOTA_Modifier_Frostivus2018_Clinkz_SearingArrows : public CDOTA_Buff
{
public:
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11d8
bool m_bBonusAttack; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
int32_t damage_bonus; // 0x11f4
int32_t attack_spill_width; // 0x11f8
int32_t attack_spill_range; // 0x11fc
float spill_damage_multiplier; // 0x1200
};
// Alignment: 7
// Size: 0x1218
class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk : public CDOTA_Modifier_Invisible
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11e8
bool m_bFreePathing; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t move_speed_bonus_pct; // 0x1204
int32_t radius; // 0x1208
int32_t attack_steal_amount; // 0x120c
float attack_steal_duration; // 0x1210
int32_t max_stacks; // 0x1214
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk_BonusDamage : public CDOTA_Buff
{
public:
int32_t bonus_base_dmg_per_stack; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Clinkz_WindWalk_AttackDebuff : public CDOTA_Buff
{
public:
int32_t attack_steal_amount; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Clinkz_Burning_Army_Thinker : public CDOTA_Buff
{
public:
int32_t m_iCount; // 0x11d8
Vector m_vFacePosition; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Clinkz_Burning_Army : public CDOTA_Buff
{
public:
float attack_rate; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 11
// Size: 0x1220
class CDOTA_Modifier_Frostivus2018_BroodBaby_Launch : public CDOTA_Buff
{
public:
Vector m_vLoc; // 0x11d8
float m_flPredictedTotalTime; // 0x11e4
Vector m_vStartPosition; // 0x11e8
float m_flCurrentTimeHoriz; // 0x11f4
float m_flCurrentTimeVert; // 0x11f8
bool m_bHorizontalMotionInterrupted; // 0x11fc
bool m_bDamageApplied; // 0x11fd
bool m_bTargetTeleported; // 0x11fe
private:
[[maybe_unused]] uint8_t __pad11ff[0x1]; // 0x11ff
public:
Vector m_vHorizontalVelocity; // 0x1200
Vector m_vLastKnownTargetPosition; // 0x120c
float m_flInitialVelocityZ; // 0x1218
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_Tusk_SnowballMeteor_Land : public CDOTA_Buff
{
public:
Vector m_vDir; // 0x11d8
int32_t travel_speed; // 0x11e4
int32_t travel_distance; // 0x11e8
int32_t vision_distance; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Tusk_SnowballMeteor_Burn : public CDOTA_Buff
{
public:
float m_flDamagePerSecond; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Tusk_WalrusKick_Slow : public CDOTA_Buff
{
public:
int32_t move_slow; // 0x11d8
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_Frostivus2018_Tusk_WalrusKick_AirTime : public CDOTA_Buff
{
public:
int32_t hp_threshold; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
float m_flOldPitch; // 0x11e4
QAngle m_qRotation; // 0x11e8
int32_t m_nRotations; // 0x11f4
Vector m_vDirection; // 0x11f8
float m_flEndTime; // 0x1204
int32_t push_length; // 0x1208
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Frostivus2018_DarkWillow_ShadowRealm_Buff : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
float damage; // 0x11dc
float max_damage_duration; // 0x11e0
float slow_radius; // 0x11e4
float burn_duration; // 0x11e8
float burn_damage; // 0x11ec
float slow_attack_speed_pct; // 0x11f0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_DarkWillow_ShadowRealm_Burn_Slow : public CDOTA_Buff
{
public:
float burn_damage; // 0x11d8
int32_t move_slow; // 0x11dc
float m_flDamageScale; // 0x11e0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Frostivus2018_DarkWillow_BrambleMaze_Creation_Thinker : public CDOTA_Buff
{
public:
float latch_creation_interval; // 0x11d8
float initial_creation_delay; // 0x11dc
int32_t placement_count; // 0x11e0
float placement_duration; // 0x11e4
int32_t m_iBramblesIndex; // 0x11e8
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_Frostivus2018_DarkWillow_BrambleMaze_Thinker : public CDOTA_Buff
{
public:
int32_t latch_count; // 0x11d8
int32_t latch_range; // 0x11dc
int32_t latch_vision; // 0x11e0
float latch_creation_delay; // 0x11e4
float latch_duration; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x8]; // 0x11ec
public:
bool m_bActive; // 0x11f4
private:
[[maybe_unused]] uint8_t __pad11f5[0x3]; // 0x11f5
public:
int32_t m_nLatchedEnemies; // 0x11f8
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_Frostivus2018_DarkWillow_Bedlam : public CDOTA_Buff
{
public:
float m_flRotation; // 0x11d8
CHandle< CBaseEntity > m_hWisp; // 0x11dc
GameTime_t m_flLastAttack; // 0x11e0
int32_t roaming_radius; // 0x11e4
int32_t attack_radius; // 0x11e8
float roaming_seconds_per_rotation; // 0x11ec
float attack_interval; // 0x11f0
int32_t attack_targets; // 0x11f4
};
// Alignment: 10
// Size: 0x1228
class CDOTA_Modifier_Frostivus2018_Puck_DreamCoil_Thinker : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_hLinkedEntities; // 0x11d8
int32_t coil_radius; // 0x11f0
int32_t coil_break_radius; // 0x11f4
float coil_stun_duration; // 0x11f8
float coil_stun_duration_scepter; // 0x11fc
float coil_slow; // 0x1200
int32_t coil_break_damage; // 0x1204
int32_t coil_break_damage_scepter; // 0x1208
bool m_bHasScepter; // 0x120c
private:
[[maybe_unused]] uint8_t __pad120d[0x3]; // 0x120d
public:
CUtlVector< ParticleIndex_t > m_FXIndex; // 0x1210
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Frostivus2018_Puck_Coiled : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Spectre_ActiveDispersion : public CDOTA_Buff
{
public:
int32_t damage_reflection_pct; // 0x11d8
};
// Alignment: 10
// Size: 0x1230
class CDOTA_Modifier_Frostivus2018_Spectre_ActiveDispersion_Thinker : public CDOTA_Buff
{
public:
float m_fDamage; // 0x11d8
float m_fLastRadius; // 0x11dc
float m_fCurRadius; // 0x11e0
GameTime_t m_fLastThink; // 0x11e4
bool m_bContracting; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x7]; // 0x11e9
public:
CountdownTimer m_ViewerTimer; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x1208
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1210
int32_t speed; // 0x1228
int32_t radius; // 0x122c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Centaur_Stampede_Slow : public CDOTA_Buff
{
public:
int32_t slow_movement_speed; // 0x11d8
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Frostivus2018_Centaur_Stampede : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage_reduction; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_hEntitiesAffected; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Centaur_Stampede_Bonus_Armor : public CDOTA_Buff
{
public:
int32_t bonus_base_armor_per_stack; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Centaur_Return_Aura : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Centaur_Return : public CDOTA_Buff
{
public:
int32_t return_damage; // 0x11d8
float strength_gain_duration; // 0x11dc
int32_t max_stacks; // 0x11e0
int32_t ally_factor; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Centaur_Return_Bonus_Strength : public CDOTA_Buff
{
public:
int32_t strength_gain; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Frostivus2018_Huskar_Inner_Fire_Disarm : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f8
class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Self : public CDOTA_Buff
{
public:
int32_t health_cost; // 0x11d8
int32_t spear_aoe; // 0x11dc
CUtlVector< int16 > m_InFlightAttackRecords; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Counter : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Huskar_Burning_Spear_Debuff : public CDOTA_Buff
{
public:
int32_t burn_damage; // 0x11d8
float tick_rate; // 0x11dc
};
// Alignment: 4
// Size: 0x580
class CDOTA_Ability_Frostivus2018_Huskar_Life_Break : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
CHandle< CBaseEntity > m_hTarget; // 0x574
bool m_bInterrupted; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
int32_t max_damage; // 0x57c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Omniknight_Degen_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Omniknight_Degen_Aura_Effect : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
int32_t bonus_health_regen; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Omniknight_Repel : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Frostivus2018_Magnataur_Skewer_Bonus_Strength : public CDOTA_Buff
{
public:
int32_t strength_gain; // 0x11d8
};
// Alignment: 10
// Size: 0x1208
class CDOTA_Modifier_Frostivus2018_Pangolier_ShieldCrash_Jump : public CDOTA_Buff
{
public:
float jump_duration; // 0x11d8
float jump_duration_gyroshell; // 0x11dc
int32_t jump_height; // 0x11e0
int32_t jump_height_gyroshell; // 0x11e4
float m_flStartZ; // 0x11e8
float m_flCurTime; // 0x11ec
float m_flJumpDuration; // 0x11f0
float m_flJumpHeight; // 0x11f4
int32_t jump_horizontal_distance; // 0x11f8
Vector m_vTargetHorizontalDirection; // 0x11fc
};
// Alignment: 11
// Size: 0x1208
class CDOTA_Modifier_Frostivus2018_TrollWarlord_BattleTrance : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t lifesteal; // 0x11e0
int32_t bonus_damage_pct; // 0x11e4
float cleave_damage_pct; // 0x11e8
int32_t cleave_starting_width; // 0x11ec
int32_t cleave_ending_width; // 0x11f0
int32_t cleave_distance; // 0x11f4
float splash_damage_pct; // 0x11f8
int32_t splash_radius; // 0x11fc
CHandle< CBaseEntity > m_hTarget; // 0x1200
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_TrollWarlord_Fervor : public CDOTA_Buff
{
public:
int32_t attack_speed; // 0x11d8
int32_t max_stacks; // 0x11dc
CHandle< CBaseEntity > m_hUnit; // 0x11e0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Frostivus2018_Earthshaker_Aftershock : public CDOTA_Buff
{
public:
int32_t aftershock_range; // 0x11d8
float stun_duration; // 0x11dc
int32_t ability_damage; // 0x11e0
};
// Alignment: 4
// Size: 0x1220
class CDOTA_Modifier_Frostivus2018_Weaver_GeminateAttack : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_iAttacksRemaining; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11e0[0x38]; // 0x11e0
public:
int32_t arrow_count; // 0x1218
int32_t bonus_range; // 0x121c
};
// Alignment: 8
// Size: 0x1228
class CDOTA_Modifier_AghsFort_Tower_BlastWave_Thinker : public CDOTA_Buff
{
public:
float damage_pct; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e4[0x4]; // 0x11e4
public:
CountdownTimer m_ViewerTimer; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1208
int32_t speed; // 0x1220
int32_t radius; // 0x1224
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_TempBuff_CorpseExplosion_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_TempBuff_CorpseExplosion_Debuff : public CDOTA_Buff
{
public:
int32_t corpse_explosion_radius; // 0x11d8
int32_t corpse_explosion_damage_pct; // 0x11dc
int32_t corpse_explosion_chance_pct; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_HPAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_HPAura_Bonus : public CDOTA_Buff
{
public:
float bonus_hp; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_CritAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_CritAura_Bonus : public CDOTA_Buff
{
public:
int32_t crit_chance; // 0x11d8
int32_t crit_multiplier; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_MagicResistAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_MagicResistAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_magical_armor; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_ArmorAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Reward_ArmorAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 15
// Size: 0x1240
class CDOTA_Modifier_AghsFort_Ascension_PlasmaField_Thinker : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
bool m_bWindingUp; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CountdownTimer m_ViewerTimer; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1208
int32_t speed; // 0x1220
int32_t radius; // 0x1224
int32_t damage_min; // 0x1228
int32_t damage_max; // 0x122c
int32_t slow_min; // 0x1230
int32_t slow_max; // 0x1234
float slow_duration; // 0x1238
float windup_time; // 0x123c
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Ascension_PlasmaField_Slow : public CDOTA_Buff
{
public:
int32_t slow_amount; // 0x11d8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Ascension_Bulwark : public CDOTA_Buff
{
public:
float physical_damage_reduction; // 0x11d8
float physical_damage_reduction_side; // 0x11dc
float forward_angle; // 0x11e0
float side_angle; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Ascension_AcidBlood_Thinker : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
int32_t radius; // 0x11dc
ParticleIndex_t m_nFXIndex; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Ascension_AcidBlood : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 14
// Size: 0x1230
class CDOTA_Modifier_AghsFort_Firefly : public CDOTA_Buff
{
public:
float pool_duration; // 0x11d8
int32_t radius; // 0x11dc
int32_t m_ifirefly_Active; // 0x11e0
int32_t tree_radius; // 0x11e4
int32_t damage_pct_per_second; // 0x11e8
int32_t movement_speed; // 0x11ec
float trail_placement_duration; // 0x11f0
float burn_linger_duration; // 0x11f4
bool m_bActive; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
ParticleIndex_t m_nFXIndex; // 0x11fc
ParticleIndex_t m_nFXIndexB; // 0x1200
GameTime_t m_flStartTime; // 0x1204
Vector m_vLastFirePoolLoc; // 0x1208
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CUtlVector< Vector > m_vFirePoolLocations; // 0x1218
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Firefly_Burn : public CDOTA_Buff
{
public:
int32_t damage_pct_per_second; // 0x11d8
int32_t movement_speed; // 0x11dc
float tick_interval; // 0x11e0
GameTime_t m_fNextDamageTick; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Ascension_Silence_Charge : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Ascension_Silence : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Ascension_Silence_Display : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ascension_MagneticField_Thinker_Evasion : public CDOTA_Buff
{
private:
[[maybe_unused]] uint8_t __pad11d8[0x8]; // 0x11d8
public:
int32_t radius; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Ascension_MagneticField_Evasion : public CDOTA_Buff
{
public:
int32_t evasion_chance; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Ascension_Invis_Warning : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ascension_Invis : public CDOTA_Modifier_PersistentInvisibility
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Ascension_Meteoric_Land : public CDOTA_Buff
{
public:
int32_t impact_radius; // 0x11d8
float land_time; // 0x11dc
float burn_duration; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Morty_Hop_Controller : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Morty_Hop : public CDOTA_Buff
{
public:
Vector m_vStartPosition; // 0x11d8
Vector m_vTargetPosition; // 0x11e4
float m_flCurrentTimeHoriz; // 0x11f0
float m_flCurrentTimeVert; // 0x11f4
float m_flZCoefficientA; // 0x11f8
float m_flZCoefficientB; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
float duration; // 0x1204
int32_t height; // 0x1208
int32_t damage; // 0x120c
int32_t damage_radius; // 0x1210
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_ExplosiveBarrel : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPreviewFX; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage; // 0x11e0
int32_t vision_radius; // 0x11e4
float vision_duration; // 0x11e8
int32_t model_scale; // 0x11ec
bool bExploding; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f1[0x3]; // 0x11f1
public:
float stun_duration; // 0x11f4
};
// Alignment: 10
// Size: 0x1218
class CDOTA_Modifier_AghsFort_PlayerTransform : public CDOTA_Buff
{
public:
itemid_t m_nCourierItemId; // 0x11d8
CUtlString m_ModelNameOfDisguise; // 0x11e0
private:
[[maybe_unused]] uint8_t __pad11e8[0x8]; // 0x11e8
public:
int32_t m_nMoveSpeed; // 0x11f0
int32_t m_nDisguisedSpeed; // 0x11f4
ParticleIndex_t m_nDisguiseEffectIndex; // 0x11f8
CHandle< CBaseEntity > m_hCourier; // 0x11fc
bool m_bIsFlyingCourier; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x7]; // 0x1201
public:
char* s_pszDonkeyDisguise; // 0x1208
float invul_duration; // 0x1210
bool m_bParticlesSpawned; // 0x1214
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Ravage_Potion : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
bool m_bDamageApplied; // 0x11e4
};
// Alignment: 10
// Size: 0x1208
class CDOTA_Modifier_AghsFort_DragonPotion : public CDOTA_Buff_Item
{
public:
int32_t m_iOriginalAttackCapabilities; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlSymbolLarge m_iszRangedAttackEffect; // 0x11e0
int32_t bonus_movement_speed; // 0x11e8
int32_t bonus_attack_damage; // 0x11ec
int32_t bonus_attack_range; // 0x11f0
int32_t attack_projectile_speed; // 0x11f4
int32_t magic_resistance; // 0x11f8
int32_t model_scale; // 0x11fc
int32_t skin_number; // 0x1200
bool flying_movement; // 0x1204
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Arcanist_Potion : public CDOTA_Buff
{
public:
int32_t m_nCooldownReductionPct; // 0x11d8
int32_t m_nManaCostReductionPct; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_EchoSlamPotion_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Potion_SpendCharge : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Thinker : public CDOTA_Buff_Item
{
public:
float m_fProcChance; // 0x11d8
int32_t m_nRadius; // 0x11dc
int32_t m_nMovespeedBonus; // 0x11e0
float m_fStunDuration; // 0x11e4
float m_fSlowDuration; // 0x11e8
float m_fDelay; // 0x11ec
int32_t m_nTorrentDamage; // 0x11f0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Torrent : public CDOTA_Buff_Item
{
public:
int32_t m_nTorrentDamage; // 0x11d8
float m_flStartZ; // 0x11dc
float m_flCurTime; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_TorrentEffectPotion_Torrent_Slow : public CDOTA_Buff
{
public:
int32_t m_nMovespeedBonus; // 0x11d8
};
// Alignment: 9
// Size: 0x1218
class CDOTA_Modifier_AghsFort_ShadowWaveEffectPotion : public CDOTA_Buff_Item
{
public:
int32_t m_iCurJumpCount; // 0x11d8
Vector m_vCurTargetLoc; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11e8
float m_fProcChance; // 0x1200
int32_t m_nCastRange; // 0x1204
int32_t m_nBounceRadius; // 0x1208
int32_t m_nDamageRadius; // 0x120c
int32_t m_nDamage; // 0x1210
int32_t m_nMaxTargets; // 0x1214
};
// Alignment: 16
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Minor_Stats_Upgrade : public CDOTA_Buff
{
public:
int32_t bonus_all_stats; // 0x11d8
int32_t bonus_primary_stat; // 0x11dc
int32_t bonus_movespeed; // 0x11e0
int32_t bonus_hp_regen; // 0x11e4
int32_t bonus_armor; // 0x11e8
int32_t bonus_attack_damage; // 0x11ec
int32_t bonus_cast_range; // 0x11f0
int32_t bonus_spell_amp; // 0x11f4
int32_t bonus_health; // 0x11f8
int32_t bonus_mana; // 0x11fc
int32_t bonus_attack_speed; // 0x1200
int32_t bonus_heal_amp; // 0x1204
int32_t bonus_mana_regen; // 0x1208
int32_t bonus_evasion; // 0x120c
int32_t bonus_magic_resist; // 0x1210
int32_t bonus_lifesteal; // 0x1214
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_AggroOverride : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_SwampSickness : public CDOTA_Buff
{
public:
int32_t slow_percent; // 0x11d8
bool m_bInRiver; // 0x11dc
};
// Alignment: 8
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_RestorativeFlower : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t heal; // 0x11dc
int32_t vision_radius; // 0x11e0
float vision_duration; // 0x11e4
int32_t model_scale; // 0x11e8
bool bExploding; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11ed[0x3]; // 0x11ed
public:
float stun_duration; // 0x11f0
ParticleIndex_t m_nFXAmbient; // 0x11f4
};
// Alignment: 7
// Size: 0x1200
class CDOTA_Modifier_AghsFort_StonehallGeneral_OverwhelmingOdds_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t max_steps; // 0x11dc
float damage_interval; // 0x11e0
int32_t m_nNumSteps; // 0x11e4
int32_t m_nRadiusStep; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x11ec
Vector m_vDir; // 0x11f0
};
// Alignment: 10
// Size: 0x1200
class CDOTA_Modifier_Boss_DarkWillow_Bedlam : public CDOTA_Buff
{
public:
float m_flRotation; // 0x11d8
CHandle< CBaseEntity > m_hWisp; // 0x11dc
GameTime_t m_flLastAttack; // 0x11e0
bool reversed; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
int32_t roaming_radius; // 0x11e8
int32_t attack_radius; // 0x11ec
float roaming_seconds_per_rotation; // 0x11f0
float attack_interval; // 0x11f4
bool m_bSetupWarning; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
ParticleIndex_t m_nPreviewFX; // 0x11fc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Enrage : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Spectre_ActiveDispersion : public CDOTA_Buff
{
public:
int32_t damage_reflection_pct; // 0x11d8
};
// Alignment: 10
// Size: 0x1230
class CDOTA_Modifier_AghsFort_Spectre_ActiveDispersion_Thinker : public CDOTA_Buff
{
public:
float m_fDamage; // 0x11d8
float m_fLastRadius; // 0x11dc
float m_fCurRadius; // 0x11e0
GameTime_t m_fLastThink; // 0x11e4
bool m_bContracting; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x7]; // 0x11e9
public:
CountdownTimer m_ViewerTimer; // 0x11f0
ParticleIndex_t m_nFXIndex; // 0x1208
private:
[[maybe_unused]] uint8_t __pad120c[0x4]; // 0x120c
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1210
int32_t speed; // 0x1228
int32_t radius; // 0x122c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_RockGolem_Avalanche_Stun : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 7
// Size: 0x1210
class CDOTA_Modifier_AghsFort_RockGolem_Avalanche : public CDOTA_Buff
{
public:
CUtlVector< CDOTA_BaseNPC* > m_pHeroesHit; // 0x11d8
int32_t radius; // 0x11f0
float total_duration; // 0x11f4
float stun_duration; // 0x11f8
int32_t tick_count; // 0x11fc
int32_t m_damage; // 0x1200
int32_t m_nTicks; // 0x1204
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Creature_Phoenix_FireSpiritCount : public CDOTA_Buff
{
public:
int32_t spirit_count; // 0x11d8
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_AghsFort_Creature_Phoenix_Sun : public CDOTA_Buff
{
public:
int32_t aura_radius; // 0x11d8
float stun_duration; // 0x11dc
int32_t max_hero_attacks; // 0x11e0
int32_t max_hero_attacks_scepter; // 0x11e4
int32_t max_hero_attacks_required; // 0x11e8
float caster_life_pct; // 0x11ec
CHandle< CBaseEntity > m_hSecondaryTarget; // 0x11f0
int32_t m_iAttackCount; // 0x11f4
int32_t creep_attacks_count; // 0x11f8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_PudgeMiniboss_HatefulStrike : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t maxhp_percent_damage; // 0x11dc
int32_t every_n_attacks; // 0x11e0
bool crit_active; // 0x11e4
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PudgeMiniboss_ArmorCorruption : public CDOTA_Buff
{
public:
float armor_reduction_per_stack; // 0x11d8
float stack_duration; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PudgeMiniboss_ArmorCorruptionDebuff : public CDOTA_Buff
{
public:
float armor_reduction_per_stack; // 0x11d8
float stack_duration; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_PudgeMiniboss_ArmorCorruptionStack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_Wave_Blast_Knockback : public CDOTA_Buff
{
public:
float disarm_duration; // 0x11d8
Vector m_vPushDir; // 0x11dc
GameTime_t m_flStartTime; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Wave_Blast_Disarm : public CDOTA_Modifier_Disarmed
{
public:
// No members available
};
// Alignment: 9
// Size: 0x1210
class CDOTA_Modifier_AghsFort_Waveblaster_Leap : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
float leap_speed; // 0x1204
float leap_acceleration; // 0x1208
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_AghsFort_Morphling_Waveform : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
int32_t m_nProjectileID; // 0x568
Vector m_vProjectileLocation; // 0x56c
CHandle< CBaseEntity > m_hHitHero; // 0x578
bool m_bGrantedGem; // 0x57c
private:
[[maybe_unused]] uint8_t __pad057d[0x3]; // 0x57d
public:
ParticleIndex_t m_nPreviewFX; // 0x580
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Morphling_Waveform : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Creature_Impale : public CDOTA_Buff
{
public:
float m_flStartZ; // 0x11d8
float m_flCurTime; // 0x11dc
float m_flDuration; // 0x11e0
bool m_bDamageApplied; // 0x11e4
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_Creature_SpikedCarapace : public CDOTA_Buff
{
public:
float stun_duration; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< CHandle< CBaseEntity > > m_vecAlreadyAppliedDebuff; // 0x11e0
};
// Alignment: 15
// Size: 0x5b8
class CDOTA_Ability_Aghsfort_Walrus_Pudge_Harpoon : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
float hook_speed; // 0x574
int32_t hook_width; // 0x578
int32_t hook_distance; // 0x57c
bool m_bRetracting; // 0x580
bool m_bDiedInHook; // 0x581
private:
[[maybe_unused]] uint8_t __pad0582[0x2]; // 0x582
public:
CHandle< CBaseEntity > m_hVictim; // 0x584
Vector m_vTargetPosition; // 0x588
Vector m_vCasterPosition; // 0x594
bool m_bChainDetached; // 0x5a0
private:
[[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1
public:
ParticleIndex_t m_iChainParticle; // 0x5a4
int32_t m_iHookParticle; // 0x5a8
int32_t m_nManaCost; // 0x5ac
CHandle< CBaseEntity > m_hSourceCaster; // 0x5b0
ParticleIndex_t m_nPreviewFX; // 0x5b4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Walrus_Pudge_Harpoon_PathingFix : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Walrus_Pudge_Harpoon : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Creature_Flamestrike : public CDOTA_Buff
{
public:
int32_t impact_radius; // 0x11d8
float ground_burn_duration; // 0x11dc
float damage; // 0x11e0
int32_t vision_distance; // 0x11e4
float vision_duration; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Creature_Flamestrike_Ground : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
int32_t burn_radius; // 0x11dc
int32_t burn_dps; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_DragonKnight_BreatheFire_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PineCone_ShieldBash_Slow : public CDOTA_Buff
{
public:
int32_t knockback_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PineCone_ShieldBash_Crit : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PineCone_AcornShot_DelayThinker : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
int32_t m_nSourceProjectileHandle; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PineCone_AcornShot_TreeThinker : public CDOTA_Buff
{
public:
CHandle< CDOTA_TempTree > m_hTree; // 0x11d8
int32_t fow_viewer; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PineCone_AcornShot_BonusDamage : public CDOTA_Buff
{
public:
int32_t acorn_shot_damage; // 0x11d8
int32_t base_damage_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_PineCone_AcornShot_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Lifestealer_Enraged_Pulse : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_UrnUpheaval : public CDOTA_Buff
{
public:
int32_t m_iSlow; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_UpheavalUrn_Reincarnation : public CDOTA_Buff
{
public:
float reincarnate_time; // 0x11d8
GameTime_t m_fLastReincarnationTime; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_SkeletonKing_VampiricAura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_Shadow_Demon_Shadow_Poison : public CDOTA_Buff
{
public:
float stack_damage; // 0x11d8
float bonus_stack_damage; // 0x11dc
int32_t max_multiply_stacks; // 0x11e0
int32_t release_at_max_stacks; // 0x11e4
ParticleIndex_t m_nFXStackIndex; // 0x11e8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_ShadowShaman_Shackles : public CDOTA_Buff
{
public:
float tick_interval; // 0x11d8
float total_damage; // 0x11dc
float channel_time; // 0x11e0
};
// Alignment: 5
// Size: 0x588
class CDOTA_Ability_Aghsfort_Elemental_Wisp_Tether : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
// MNetworkEnable
CHandle< CBaseEntity > m_hTarget; // 0x568
Vector m_vProjectileLocation; // 0x56c
bool m_bProjectileActive; // 0x578
private:
[[maybe_unused]] uint8_t __pad0579[0x3]; // 0x579
public:
int32_t latch_distance; // 0x57c
int32_t m_iProjectileIndex; // 0x580
};
// Alignment: 14
// Size: 0x1228
class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether : public CDOTA_Buff
{
public:
bool m_bInManaGained; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
CHandle< CBaseEntity > m_hTarget; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > hStunnedEntities; // 0x11e0
float slow_duration; // 0x11f8
int32_t movespeed; // 0x11fc
int32_t self_bonus; // 0x1200
bool m_bIsInRange; // 0x1204
private:
[[maybe_unused]] uint8_t __pad1205[0x3]; // 0x1205
public:
int32_t radius; // 0x1208
int32_t latch_distance; // 0x120c
float m_flHealthHealed; // 0x1210
float m_flManaHealed; // 0x1214
float tether_heal_amp; // 0x1218
GameTime_t m_flHealMessageTime; // 0x121c
GameTime_t m_flManaMessageTime; // 0x1220
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether_Haste : public CDOTA_Buff
{
public:
int32_t movement_speed; // 0x11d8
int32_t attack_speed; // 0x11dc
int32_t health_regen; // 0x11e0
int32_t status_resist; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Elemental_Wisp_Tether_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Aghsfort_Wildwing_Tornado_Blast_Debuff : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
Vector m_vStartPos; // 0x11dc
float m_flCurTime; // 0x11e8
float m_flHeightT; // 0x11ec
};
// Alignment: 3
// Size: 0x1220
class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise : public CDOTA_Buff
{
public:
CountdownTimer m_RevealTimer; // 0x11d8
CountdownTimer m_InvisAttackTimer; // 0x11f0
CountdownTimer m_CooldownTimer; // 0x1208
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Tree_Walking : public CDOTA_Buff
{
public:
int32_t movement_bonus; // 0x11d8
int32_t regen_amp; // 0x11dc
};
// Alignment: 0
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Invis : public CDOTA_Modifier_Invisible
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_NearTreeDisplay : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_TreantMiniboss_NaturesGuise_Root : public CDOTA_Buff
{
public:
float m_iEntangleDamage; // 0x11d8
};
// Alignment: 7
// Size: 0x1208
class CDOTA_Modifier_AghsFort_PoisonNova_Creature_Thinker : public CDOTA_Buff
{
public:
float m_fCurRadius; // 0x11d8
GameTime_t m_fLastThink; // 0x11dc
CUtlVector< CHandle< CBaseEntity > > m_entitiesHit; // 0x11e0
int32_t speed; // 0x11f8
int32_t radius; // 0x11fc
int32_t start_radius; // 0x1200
float duration; // 0x1204
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Creature_Venomancer_PoisonNova : public CDOTA_Buff
{
public:
int32_t damage; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_Creature_Venomancer_PoisonSting_Applier : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t damage; // 0x11dc
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_AghsFort_Venomancer_PoisonSting : public CDOTA_Buff
{
public:
int32_t m_iDamage; // 0x11d8
int32_t movement_speed; // 0x11dc
int32_t m_nTicksRemaining; // 0x11e0
float m_flAttackDamage; // 0x11e4
};
// Alignment: 7
// Size: 0x11f8
class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Firestorm_Thinker : public CDOTA_Buff
{
public:
int32_t wave_damage; // 0x11d8
int32_t wave_count; // 0x11dc
int32_t radius; // 0x11e0
int32_t summon_count; // 0x11e4
float wave_interval; // 0x11e8
float burn_duration; // 0x11ec
float first_wave_delay; // 0x11f0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Firestorm_Burn : public CDOTA_Buff
{
public:
float burn_damage; // 0x11d8
float burn_interval; // 0x11dc
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_Warp_Channel_Soundstop : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_Warp_Channel : public CDOTA_Buff
{
public:
ParticleIndex_t m_nfxTargetTp; // 0x11d8
ParticleIndex_t m_nfxTargetTp2; // 0x11dc
ParticleIndex_t m_nfxAmbientFx; // 0x11e0
ParticleIndex_t m_nfxPortal1; // 0x11e4
ParticleIndex_t m_nfxPortal2; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11ec[0x8]; // 0x11ec
public:
CHandle< CBaseEntity > m_hPortal; // 0x11f4
Vector m_vStartPosition; // 0x11f8
float m_flTotalTime; // 0x1204
float m_flElapsedTimePortion; // 0x1208
float animation_rate; // 0x120c
int32_t stop_distance; // 0x1210
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Aghsfort_Aziyog_Underlord_Portal_FX : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPortalAmbientFX; // 0x11d8
};
// Alignment: 16
// Size: 0x5c0
class CDOTA_Ability_Aghsfort_Bonus_Pudge_MeatHook : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
float hook_speed; // 0x574
int32_t hook_width; // 0x578
int32_t hook_distance; // 0x57c
bool m_bRetracting; // 0x580
bool m_bDiedInHook; // 0x581
private:
[[maybe_unused]] uint8_t __pad0582[0x2]; // 0x582
public:
CHandle< CBaseEntity > m_hVictim; // 0x584
Vector m_vTargetPosition; // 0x588
Vector m_vCasterPosition; // 0x594
bool m_bChainDetached; // 0x5a0
private:
[[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1
public:
ParticleIndex_t m_iChainParticle; // 0x5a4
int32_t m_iHookParticle; // 0x5a8
int32_t m_nManaCost; // 0x5ac
CHandle< CBaseEntity > m_hSourceCaster; // 0x5b0
int32_t m_nNextConsecutiveHitCount; // 0x5b4
// MNetworkEnable
int32_t m_nConsecutiveHits; // 0x5b8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Aghsfort_Bonus_Pudge_Meat_Hook : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Modifier_AghsFort_AmoebaBoss_Summoned_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Aghsfort_Modifier_Magnus_Push_Skewer_Movement : public CDOTA_Buff
{
public:
int32_t m_nProjectileID; // 0x11d8
};
// Alignment: 18
// Size: 0x1268
class CDOTA_Modifier_Aghsfort_Hoodwink_ArcingBoomerang : public CDOTA_Buff
{
public:
Vector m_vLeftControl; // 0x11d8
Vector m_vRightControl; // 0x11e4
Vector m_vTargetLoc; // 0x11f0
Vector m_vOriginalTargetLoc; // 0x11fc
Vector m_vSourceLoc; // 0x1208
float m_flDuration; // 0x1214
GameTime_t m_flDieTime; // 0x1218
bool m_bReturning; // 0x121c
private:
[[maybe_unused]] uint8_t __pad121d[0x3]; // 0x121d
public:
int32_t m_nFramesToWait; // 0x1220
CHandle< CBaseEntity > m_hBoomerang; // 0x1224
ParticleIndex_t m_nBoomerangFXIndex; // 0x1228
ParticleIndex_t m_nOldBoomerangFXindex; // 0x122c
CUtlVector< CHandle< CBaseEntity > > m_vecUniqueHitList; // 0x1230
int32_t radius; // 0x1248
int32_t spread; // 0x124c
int32_t damage; // 0x1250
float min_throw_duration; // 0x1254
float max_throw_duration; // 0x1258
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Aghsfort_Pugna_Grandmaster_NetherWard : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float mana_multiplier; // 0x11dc
float mana_drained_per_attack; // 0x11e0
};
// Alignment: 23
// Size: 0x1250
class CDOTA_Modifier_AghsFort_AssaultCaptain_SunRay : public CDOTA_Buff
{
public:
int32_t hp_cost_perc_per_second; // 0x11d8
int32_t beam_range; // 0x11dc
int32_t base_damage; // 0x11e0
int32_t base_heal; // 0x11e4
float tick_interval; // 0x11e8
float forward_move_speed; // 0x11ec
float turn_rate_initial; // 0x11f0
float turn_rate; // 0x11f4
int32_t radius; // 0x11f8
int32_t self_turn_rate_percent; // 0x11fc
float m_flCurrentTime; // 0x1200
GameTime_t m_flLastDamageTime; // 0x1204
float m_flAccumulatedSelfDamage; // 0x1208
bool m_bMovingForward; // 0x120c
bool m_bTurningFast; // 0x120d
private:
[[maybe_unused]] uint8_t __pad120e[0x2]; // 0x120e
public:
float m_flFacingTarget; // 0x1210
float hp_perc_damage; // 0x1214
float hp_perc_heal; // 0x1218
ParticleIndex_t m_nBeamFXIndex; // 0x121c
CHandle< CBaseEntity > m_hVisionThinkers[8]; // 0x1220
CHandle< CBaseEntity > m_hBeamEnd; // 0x1240
bool m_bCreatedVisionThinkers; // 0x1244
private:
[[maybe_unused]] uint8_t __pad1245[0x3]; // 0x1245
public:
CHandle< CBaseEntity > m_hBeamEndSound; // 0x1248
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_AghsFort_BossWinterWyvern_Cold_Embrace_Thinker : public CDOTA_Buff
{
public:
int32_t freeze_radius; // 0x11d8
int32_t freeze_damage; // 0x11dc
float freeze_debuff_duration; // 0x11e0
float freeze_delay; // 0x11e4
ParticleIndex_t m_nFXIndex; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AghsFort_BossWinterWyvern_Cold_Embrace_Debuff : public CDOTA_Buff
{
public:
int32_t linger_movement_slow; // 0x11d8
int32_t linger_damage; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Blessings_Debuff_Duration_Increase : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x11f8
class CDOTA_Modifier_AghsFort_TrapRoom_Hookshot : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
Vector m_vStartPosition; // 0x11dc
private:
[[maybe_unused]] uint8_t __pad11e8[0x8]; // 0x11e8
public:
int32_t speed; // 0x11f0
float duration; // 0x11f4
};
// Alignment: 15
// Size: 0x5b8
class CDOTA_Ability_AghsFort_TrapRoom_MeatHook : public CDOTABaseAbility
{
private:
[[maybe_unused]] uint8_t __pad0558[0x10]; // 0x558
public:
Vector m_vProjectileLocation; // 0x568
float hook_speed; // 0x574
int32_t hook_width; // 0x578
int32_t hook_distance; // 0x57c
bool m_bRetracting; // 0x580
bool m_bDiedInHook; // 0x581
private:
[[maybe_unused]] uint8_t __pad0582[0x2]; // 0x582
public:
CHandle< CBaseEntity > m_hVictim; // 0x584
Vector m_vTargetPosition; // 0x588
Vector m_vCasterPosition; // 0x594
bool m_bChainDetached; // 0x5a0
private:
[[maybe_unused]] uint8_t __pad05a1[0x3]; // 0x5a1
public:
ParticleIndex_t m_iChainParticle; // 0x5a4
int32_t m_iHookParticle; // 0x5a8
int32_t m_nManaCost; // 0x5ac
CHandle< CBaseEntity > m_hSourceCaster; // 0x5b0
int32_t m_nNextConsecutiveHitCount; // 0x5b4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_TrapRoom_MeatHook_PathingFix : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_TrapRoom_MeatHook : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Effigy_AghsFort : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_AghsFort_Watch_Tower_Capturing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 15
// Size: 0x1220
class CDOTA_Modifier_AghsFort_Watch_Tower : public CDOTA_Buff
{
public:
TowerState_t m_nState; // 0x11d8
float m_flYaw; // 0x11dc
int32_t m_nCaptureDuration; // 0x11e0
GameTime_t m_flEffectiveCaptureStartTime; // 0x11e4
int32_t m_nCapturingPlayerCount; // 0x11e8
float m_flCaptureProgress; // 0x11ec
int32_t m_iCapturingTeam; // 0x11f0
ParticleIndex_t m_nFxOutpostAmbient; // 0x11f4
GameTime_t m_flDestroyTime; // 0x11f8
GameTime_t m_flAutoChannelCompleteTime; // 0x11fc
bool m_bAscensionLevelPicker; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_nEliteChallengeLevel; // 0x1204
CUtlString m_strNextRoomName; // 0x1208
CUtlString m_strNextEncounterName; // 0x1210
bool m_bStartedBeamFacing; // 0x1218
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_HighFiveRequested : public CDOTA_Buff
{
public:
int32_t acknowledge_range; // 0x11d8
float think_interval; // 0x11dc
float acknowledged_cooldown; // 0x11e0
bool m_bAcknowledged; // 0x11e4
bool m_bFirstThink; // 0x11e5
private:
[[maybe_unused]] uint8_t __pad11e6[0x2]; // 0x11e6
public:
int32_t high_five_level; // 0x11e8
};
// Alignment: 2
// Size: 0x11f8
class CDOTA_Modifier_Jungle_Spirit : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > hCasterList; // 0x11d8
bool bAcceptingGems; // 0x11f0
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Spirit_Gem : public CDOTA_Buff
{
public:
float m_flOriginalModelScale; // 0x11d8
int32_t m_nHealthBarOffsetOverride; // 0x11dc
ParticleIndex_t m_nFXStackIndex; // 0x11e0
float m_fScaleGainPerGem; // 0x11e4
int32_t m_nLevel; // 0x11e8
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Jungle_Spirit_Reductions : public CDOTA_Buff
{
public:
CUtlVector< CHandle< CBaseEntity > > m_vecAlliesNearby; // 0x11d8
int32_t m_nAlliesNearby; // 0x11f0
int32_t stat_reduction_pct; // 0x11f4
int32_t armor_reduction; // 0x11f8
int32_t radius; // 0x11fc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Jungle_Spirit_Ally_Alert : public CDOTA_Buff
{
public:
GameTime_t m_flLastHowl; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_JungleSpirit_RiverRejuvenation : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_JungleSpirit_RiverRejuvenation_Effect : public CDOTA_Buff
{
public:
int32_t distance_from_shrine; // 0x11d8
};
// Alignment: 3
// Size: 0x11f0
class CDOTA_Modifier_JungleSpirit_RiverRejuvenation_Regen : public CDOTA_Buff
{
public:
int32_t health_restore; // 0x11d8
int32_t mana_restore; // 0x11dc
float regen_interval; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_JungleSpirit_BaseAttackRangeIncrease : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1230
class CDOTA_Modifier_Morokai_JungleHealBeam : public CDOTA_Buff
{
public:
int32_t beam_count; // 0x11d8
int32_t beam_range; // 0x11dc
int32_t beam_radius; // 0x11e0
int32_t beam_buffer; // 0x11e4
int32_t turn_rate; // 0x11e8
int32_t hp_per_second; // 0x11ec
GameTime_t m_flLastThinkTime; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x1c]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_vecTargetedEntities; // 0x1210
float flLastTreeDestroyed; // 0x1228
float flTreeDestructionCooldown; // 0x122c
};
// Alignment: 0
// Size: 0x1208
class CDOTA_Ability_JungleSpirit_Volcano_Eruption_Knockback : public CDOTA_Modifier_Knockback
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1268
class CDOTA_Modifier_JungleSpirit_Storm_Cyclone : public CDOTA_Buff
{
public:
CUtlVector< ParticleIndex_t > m_FXIndex; // 0x11d8
CUtlVector< CHandle< CBaseEntity > > m_hCyclones; // 0x11f0
int32_t projectile_distance; // 0x1208
int32_t projectile_radius; // 0x120c
int32_t projectile_amount; // 0x1210
float projectile_duration; // 0x1214
float delay; // 0x1218
GameTime_t m_flDieTime; // 0x121c
GameTime_t m_flStartTime; // 0x1220
private:
[[maybe_unused]] uint8_t __pad1224[0x4]; // 0x1224
public:
CUtlVector< Vector > m_vLeftControl; // 0x1228
CUtlVector< Vector > m_vSourceLoc; // 0x1240
Vector m_vTargetLoc; // 0x1258
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Jungle_Spirit_Storm_Cyclone_Debuff : public CDOTA_Buff
{
public:
GameTime_t m_flStartTime; // 0x11d8
Vector m_vStartPos; // 0x11dc
float m_flCurTime; // 0x11e8
float m_flHeightT; // 0x11ec
int32_t cyclone_damage; // 0x11f0
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Jungle_Spirit_Storm_Cyclone_Invulnerable : public CDOTA_Buff
{
public:
ParticleIndex_t nFXIndex; // 0x11d8
int32_t projectile_radius; // 0x11dc
int32_t projectile_destruction_radius; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Spirit_Storm_Multicast : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Spirit_Storm_Multicast_Cooldown : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Spirit_Jungle_Lumber_Lock : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Spirit_Jungle_Lumber_Lock_Immunity : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Spirit_Volcano_Fire_Strike : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Jungle_Spirit_Volcano_Fire_Strike_Caster : public CDOTA_Buff
{
public:
int32_t damage_modifier; // 0x11d8
};
// Alignment: 4
// Size: 0x11f0
class CDOTA_Modifier_Jungle_Spirit_Range_Attack : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t projectile_speed; // 0x11dc
float turn_rate; // 0x11e0
CHandle< CBaseEntity > m_hAttachTarget; // 0x11e4
};
// Alignment: 16
// Size: 0x1240
class CDOTA_Modifier_Seasonal_TI10_Portal : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPhaseStartFXIndex; // 0x11d8
Vector m_vSpawnPos; // 0x11dc
CUtlVector< Vector > m_vecEmissions; // 0x11e8
bool m_bChatSent; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t m_nPhase; // 0x1204
int32_t m_nNumEmitted; // 0x1208
int32_t m_nNumDrops; // 0x120c
GameTime_t m_flStartTime; // 0x1210
GameTime_t m_flLastEmitTime; // 0x1214
bool m_bIsOnRadiant; // 0x1218
bool m_bUseLargeEmit; // 0x1219
private:
[[maybe_unused]] uint8_t __pad121a[0x2]; // 0x121a
public:
int32_t m_nOutcome; // 0x121c
private:
[[maybe_unused]] uint8_t __pad1220[0x10]; // 0x1220
public:
int32_t PHASE_OPEN; // 0x1230
int32_t PHASE_EMIT; // 0x1234
int32_t PHASE_EMIT_DONE; // 0x1238
int32_t PHASE_CLOSE; // 0x123c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_TI10_DiscoBall : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Seasonal_TI10_DiscoBall_Channeling : public CDOTA_Buff
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t m_nGesture; // 0x11dc
};
// Alignment: 39
// Size: 0x12a0
class CDOTA_Modifier_Seasonal_TI10_SoccerBall : public CDOTA_Buff
{
public:
Vector m_vPost1; // 0x11d8
Vector m_vPost2; // 0x11e4
Vector m_vPostForward; // 0x11f0
ParticleIndex_t m_nPost1FXIndex; // 0x11fc
ParticleIndex_t m_nPost2FXIndex; // 0x1200
ParticleIndex_t m_nPost3FXIndex; // 0x1204
int32_t PHASE_START; // 0x1208
int32_t PHASE_GESTURE; // 0x120c
int32_t PHASE_FX; // 0x1210
int32_t PHASE_MOTION; // 0x1214
int32_t PHASE_IMPACT; // 0x1218
int32_t PHASE_FAIL; // 0x121c
int32_t PHASE_CROSSED_GOAL; // 0x1220
int32_t PHASE_GOAL; // 0x1224
float tick_interval; // 0x1228
float forward_move_speed; // 0x122c
float magnus_coefficient; // 0x1230
float magnus_falloff; // 0x1234
float drag_coefficient; // 0x1238
float min_delay; // 0x123c
float max_delay; // 0x1240
int32_t hit_radius; // 0x1244
ParticleIndex_t m_nFXIndex; // 0x1248
Vector m_vVelocity; // 0x124c
Vector m_vSpawnPos; // 0x1258
Vector m_vTargetPos; // 0x1264
int32_t m_nPhase; // 0x1270
int32_t m_nHits; // 0x1274
float m_flMagnusValue; // 0x1278
GameTime_t m_flStartTime; // 0x127c
float m_flDelay; // 0x1280
GameTime_t m_flStateChangeTime; // 0x1284
bool m_bFirstThink; // 0x1288
bool m_bGroundHit; // 0x1289
private:
[[maybe_unused]] uint8_t __pad128a[0x2]; // 0x128a
public:
PlayerID_t m_nTargetPlayerID; // 0x128c
float m_flCurTime; // 0x1290
float m_flStartZ; // 0x1294
float m_flAirTime; // 0x1298
float m_flHeight; // 0x129c
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_TI10_HotPotato : public CDOTA_Buff
{
public:
float debuff_duration; // 0x11d8
float time_to_explode; // 0x11dc
float throw_time; // 0x11e0
GameTime_t m_fLastThink; // 0x11e4
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_TI10_HotPotato_InboundPotato : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_TI10_HotPotato_Debuff : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Seasonal_TI10_HighFiveRequested : public CDOTA_Buff
{
public:
int32_t acknowledge_range; // 0x11d8
float think_interval; // 0x11dc
float acknowledged_cooldown; // 0x11e0
bool m_bAcknowledged; // 0x11e4
bool m_bFirstThink; // 0x11e5
private:
[[maybe_unused]] uint8_t __pad11e6[0x2]; // 0x11e6
public:
int32_t high_five_level; // 0x11e8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_TI11_RockPaperScissors_Playing : public CDOTA_Buff
{
public:
float input_duration; // 0x11d8
float think_interval; // 0x11dc
bool m_bChoseOption; // 0x11e0
};
// Alignment: 9
// Size: 0x1208
class CDOTA_Modifier_Seasonal_TI11_RockPaperScissors : public CDOTA_Buff
{
public:
float challenge_duration; // 0x11d8
float reveal_duration; // 0x11dc
float reveal_delay; // 0x11e0
float completed_cooldown; // 0x11e4
float think_interval; // 0x11e8
float acknowledge_range; // 0x11ec
private:
[[maybe_unused]] uint8_t __pad11f0[0x4]; // 0x11f0
public:
GameTime_t m_flRevealTime; // 0x11f4
bool m_bFirstThink; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad11f9[0x3]; // 0x11f9
public:
PlayerID_t m_nRevealOpponentPlayerID; // 0x11fc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Seasonal_TI11_BubbleGun : public CDOTA_Buff
{
public:
float think_interval; // 0x11d8
int32_t max_charges; // 0x11dc
int32_t m_nChargesUsed; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Seasonal_Summon_TI11_Balloon_Visuals : public CDOTA_Buff
{
public:
float model_scale_per_stack; // 0x11d8
bool m_bIsRadiant; // 0x11dc
};
// Alignment: 19
// Size: 0x1238
class CDOTA_Modifier_Seasonal_Summon_TI11_Balloon_Thinker : public CDOTA_Buff
{
public:
float speed; // 0x11d8
int32_t min_distance_before_bounce; // 0x11dc
float drag; // 0x11e0
float max_height; // 0x11e4
float max_vertical_move_time; // 0x11e8
float bounce_turn_angle; // 0x11ec
float bounce_turn_angle_tree; // 0x11f0
float bounce_delay; // 0x11f4
int32_t max_bounces; // 0x11f8
float max_model_scale; // 0x11fc
float power_growth_exponent; // 0x1200
Vector m_vLastPos; // 0x1204
Vector m_vDir; // 0x1210
float m_flSpeed; // 0x121c
float m_flDistRemaining; // 0x1220
float m_flTreeTimeRemaining; // 0x1224
int32_t m_nTimesBounced; // 0x1228
float m_flModelScale; // 0x122c
CHandle< CBaseEntity > m_hLastHit; // 0x1230
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Seasonal_TI11_DuelAccepted : public CDOTA_Buff
{
public:
PlayerID_t m_nDuelOpponent; // 0x11d8
};
// Alignment: 9
// Size: 0x1248
class CDOTA_Modifier_Seasonal_TI11_CongaLine : public CDOTA_Buff
{
public:
int32_t NUM_SOUNDS; // 0x11d8
float dance_interval; // 0x11dc
float gesture_duration; // 0x11e0
float catch_up_distance; // 0x11e4
float slow_duration; // 0x11e8
float slow_amount; // 0x11ec
int32_t m_nGesture; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CDOTA_BaseNPC > > m_vecDancers; // 0x11f8
private:
[[maybe_unused]] uint8_t __pad1210[0x30]; // 0x1210
public:
bool m_bIsGesturing; // 0x1240
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Seasonal_TI11_CongaLineDancer : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Seasonal_TI11_CongaLineSlow : public CDOTA_Buff
{
public:
float m_flMaxSpeed; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Diretide_Portal_Channeling : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Diretide_Portal_Buff : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hInvader; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Seasonal_Diretide2020_HighFiveRequested : public CDOTA_Buff
{
public:
int32_t acknowledge_range; // 0x11d8
float think_interval; // 0x11dc
float acknowledged_cooldown; // 0x11e0
bool m_bAcknowledged; // 0x11e4
bool m_bFirstThink; // 0x11e5
private:
[[maybe_unused]] uint8_t __pad11e6[0x2]; // 0x11e6
public:
int32_t high_five_level; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spring2021_BombHolder : public CDOTA_Buff_Item
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Spring2021_BombPlantable : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Spring2021_DefusalBomb : public CDOTA_Buff
{
public:
float BOMB_DURATION; // 0x11d8
float BOMB_FAST_TICK_START; // 0x11dc
float BOMB_DEFAULT_TICK; // 0x11e0
};
// Alignment: 11
// Size: 0x1230
class CDOTA_Modifier_Spring2021_TowerDeathRing_Thinker : public CDOTA_Buff
{
public:
float m_fLastRadius; // 0x11d8
float m_fCurRadius; // 0x11dc
GameTime_t m_fLastThink; // 0x11e0
bool m_bWindingUp; // 0x11e4
private:
[[maybe_unused]] uint8_t __pad11e5[0x3]; // 0x11e5
public:
CountdownTimer m_ViewerTimer; // 0x11e8
ParticleIndex_t m_nFXIndex; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1204[0x4]; // 0x1204
public:
CUtlVector< CHandle< CBaseEntity > > m_EntitiesHit; // 0x1208
int32_t speed; // 0x1220
int32_t radius; // 0x1224
int32_t damage; // 0x1228
float windup_time; // 0x122c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Winter2022_EnableFeedableRoshanInteract : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Plus_HighFiveRequested : public CDOTA_Buff
{
public:
int32_t acknowledge_range; // 0x11d8
float think_interval; // 0x11dc
float acknowledged_cooldown; // 0x11e0
bool m_bAcknowledged; // 0x11e4
bool m_bFirstThink; // 0x11e5
private:
[[maybe_unused]] uint8_t __pad11e6[0x2]; // 0x11e6
public:
int32_t high_five_level; // 0x11e8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Item_MuertasGun : public CDOTA_Buff_Item
{
public:
ParticleIndex_t m_nFXIndex; // 0x11d8
int32_t bonus_cast_pct; // 0x11dc
int32_t bonus_spell_amp; // 0x11e0
int32_t health_pct_penalty; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Muertas_Gun_Slow : public CDOTA_Buff
{
public:
int32_t impact_slow_percent; // 0x11d8
};
// Alignment: 1
// Size: 0x11e8
class CDOTA_Modifier_Muertas_Gun_Fear : public CDOTA_Buff
{
public:
Vector m_vFearDir; // 0x11d8
};
// Alignment: 0
// Size: 0x498
class CInfoOfrendaStatueSpawn : public CPointEntity
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11e0
class CDOTA_Modifier_Ofrenda_Pledge : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Item_AghsFort_Bloodstone_Active : public CDOTA_Buff
{
public:
int32_t mana_cost_percentage; // 0x11d8
float restore_duration; // 0x11dc
float m_flDrainAmount; // 0x11e0
};
// Alignment: 12
// Size: 0x1208
class CDOTA_Modifier_Item_AghsFort_Bloodstone : public CDOTA_Buff_Item
{
public:
int32_t bonus_health; // 0x11d8
int32_t bonus_mana; // 0x11dc
int32_t mana_regen_multiplier; // 0x11e0
float regen_per_charge; // 0x11e4
float amp_per_charge; // 0x11e8
int32_t death_charges; // 0x11ec
int32_t kill_charges; // 0x11f0
float hero_lifesteal; // 0x11f4
float creep_lifesteal; // 0x11f8
int32_t bonus_intellect; // 0x11fc
int32_t spell_amp; // 0x1200
int32_t spell_lifesteal_amp; // 0x1204
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Item_AghsFort_Bloodstone_GainableCharges : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
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: 11
// Size: 0x4c8
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
// MNetworkEnable
Vector m_vRoshanAltLocation; // 0x4b4
ParticleIndex_t m_nFXIndex; // 0x4c0
ParticleIndex_t m_nFXIndex2; // 0x4c4
};
// Alignment: 9
// Size: 0x4b8
class CDOTA_MinibossSpawner : public CPointEntity
{
public:
bool m_bIsMinibossAlive; // 0x498
bool m_bSpawnRequested; // 0x499
private:
[[maybe_unused]] uint8_t __pad049a[0x2]; // 0x49a
public:
CHandle< CBaseEntity > m_hMiniboss; // 0x49c
GameTime_t m_fMinibossKillTime; // 0x4a0
int32_t m_nSentMinibossReclaim; // 0x4a4
int32_t m_nSentMinibossRespawn; // 0x4a8
int32_t m_nTimesSpawned; // 0x4ac
float m_fMinibossRespawnDuration; // 0x4b0
bool m_bIsRadiantMiniboss; // 0x4b4
};
// Alignment: 18
// Size: 0x580
class CDOTA_ScriptedSpawner : public CPointEntity
{
private:
[[maybe_unused]] uint8_t __pad0498[0x10]; // 0x498
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 fields:
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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad08f0[0x10]; // 0x8f0
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: 13
// Size: 0x928
class CBaseAnimGraph : public CBaseModelEntity
{
private:
[[maybe_unused]] uint8_t __pad0748[0x8]; // 0x748
public:
// MNetworkEnable
bool m_bInitiallyPopulateInterpHistory; // 0x750
// MNetworkEnable
bool m_bShouldAnimateDuringGameplayPause; // 0x751
private:
[[maybe_unused]] uint8_t __pad0752[0x6]; // 0x752
public:
IChoreoServices* m_pChoreoServices; // 0x758
// MNetworkEnable
bool m_bAnimGraphUpdateEnabled; // 0x760
private:
[[maybe_unused]] uint8_t __pad0761[0x93]; // 0x761
public:
// MNetworkDisable
float m_flLastEventAnimTime; // 0x7f4
private:
[[maybe_unused]] uint8_t __pad07f8[0x4]; // 0x7f8
public:
// MNetworkDisable
AnimationUpdateListHandle_t m_hAnimationUpdate; // 0x7fc
float m_flMaxSlopeDistance; // 0x800
Vector m_vLastSlopeCheckPos; // 0x804
bool m_bAnimGraphDirty; // 0x810
private:
[[maybe_unused]] uint8_t __pad0811[0x3]; // 0x811
public:
// MNetworkEnable
Vector m_vecForce; // 0x814
// MNetworkEnable
int32_t m_nForceBone; // 0x820
private:
[[maybe_unused]] uint8_t __pad0824[0x14]; // 0x824
public:
// MNetworkEnable
PhysicsRagdollPose_t* m_pRagdollPose; // 0x838
// MNetworkEnable
// MNetworkChangeCallback "OnClientRagdollChanged"
bool m_bClientRagdoll; // 0x840
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad0798[0x10]; // 0x798
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: 27
// Size: 0x9e0
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
bool m_bAnimateOnServer; // 0x9c4
bool m_bRandomizeCycle; // 0x9c5
bool m_bStartDisabled; // 0x9c6
bool m_bScriptedMovement; // 0x9c7
bool m_bFiredStartEndOutput; // 0x9c8
bool m_bForceNpcExclude; // 0x9c9
bool m_bCreateNonSolid; // 0x9ca
bool m_bIsOverrideProp; // 0x9cb
int32_t m_iInitialGlowState; // 0x9cc
int32_t m_nGlowRange; // 0x9d0
int32_t m_nGlowRangeMin; // 0x9d4
Color m_glowColor; // 0x9d8
int32_t m_nGlowTeam; // 0x9dc
};
// Alignment: 0
// Size: 0x9e0
class CDynamicPropAlias_dynamic_prop : public CDynamicProp
{
public:
// No members available
};
// Alignment: 0
// Size: 0x9e0
class CDynamicPropAlias_prop_dynamic_override : public CDynamicProp
{
public:
// No members available
};
// Alignment: 0
// Size: 0x9e0
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: 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: 0x4c8
class CPathCornerCrash : public CPathCorner
{
public:
// No members available
};
// Alignment: 1
// Size: 0x760
class CConstraintAnchor : public CBaseAnimatingActivity
{
public:
float m_massScale; // 0x758
};
// Alignment: 1
// Size: 0x9e8
class COrnamentProp : public CDynamicProp
{
public:
CUtlSymbolLarge m_initialOwner; // 0x9e0
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad08f0[0x10]; // 0x8f0
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
{
private:
[[maybe_unused]] uint8_t __pad08f0[0x38]; // 0x8f0
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.000000"
// MNetworkMaxValue "1.000000"
// 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
{
private:
[[maybe_unused]] uint8_t __pad0758[0x8]; // 0x758
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: 0xad0
class CRagdollProp : public CBaseAnimGraph
{
private:
[[maybe_unused]] uint8_t __pad0928[0x8]; // 0x928
public:
ragdoll_t m_ragdoll; // 0x930
bool m_bStartDisabled; // 0x968
private:
[[maybe_unused]] uint8_t __pad0969[0x7]; // 0x969
public:
// MNetworkEnable
// MNetworkEncoder
CNetworkUtlVectorBase< Vector > m_ragPos; // 0x970
// MNetworkEnable
// MNetworkEncoder
// MNetworkBitCount "13"
CNetworkUtlVectorBase< QAngle > m_ragAngles; // 0x988
// MNetworkEnable
CHandle< CBaseEntity > m_hRagdollSource; // 0x9a0
uint32_t m_lastUpdateTickCount; // 0x9a4
bool m_allAsleep; // 0x9a8
bool m_bFirstCollisionAfterLaunch; // 0x9a9
private:
[[maybe_unused]] uint8_t __pad09aa[0x2]; // 0x9aa
public:
CHandle< CBaseEntity > m_hDamageEntity; // 0x9ac
CHandle< CBaseEntity > m_hKiller; // 0x9b0
CHandle< CBasePlayerPawn > m_hPhysicsAttacker; // 0x9b4
GameTime_t m_flLastPhysicsInfluenceTime; // 0x9b8
GameTime_t m_flFadeOutStartTime; // 0x9bc
float m_flFadeTime; // 0x9c0
// MNetworkDisable
Vector m_vecLastOrigin; // 0x9c4
GameTime_t m_flAwakeTime; // 0x9d0
GameTime_t m_flLastOriginChangeTime; // 0x9d4
int32_t m_nBloodColor; // 0x9d8
private:
[[maybe_unused]] uint8_t __pad09dc[0x4]; // 0x9dc
public:
CUtlSymbolLarge m_strOriginClassName; // 0x9e0
CUtlSymbolLarge m_strSourceClassName; // 0x9e8
bool m_bHasBeenPhysgunned; // 0x9f0
bool m_bShouldTeleportPhysics; // 0x9f1
private:
[[maybe_unused]] uint8_t __pad09f2[0x2]; // 0x9f2
public:
// MNetworkEnable
// MNetworkBitCount "8"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "1.000000"
// MNetworkEncodeFlags
float m_flBlendWeight; // 0x9f4
float m_flDefaultFadeScale; // 0x9f8
private:
[[maybe_unused]] uint8_t __pad09fc[0x4]; // 0x9fc
public:
CUtlVector< Vector > m_ragdollMins; // 0xa00
CUtlVector< Vector > m_ragdollMaxs; // 0xa18
bool m_bShouldDeleteActivationRecord; // 0xa30
private:
[[maybe_unused]] uint8_t __pad0a31[0x5f]; // 0xa31
public:
bool m_bValidatePoweredRagdollPose; // 0xa90
};
// 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
{
private:
[[maybe_unused]] uint8_t __pad08d0[0x8]; // 0x8d0
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
{
private:
[[maybe_unused]] uint8_t __pad07e8[0x10]; // 0x7e8
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: 0x11d8
class CDOTA_Modifier_Fountain_Glyph : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e0
class CDOTA_Modifier_Radar_Thinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
bool m_bEverFound; // 0x11dc
bool m_bBonus; // 0x11dd
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Courier_AutoDeliver : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Turbo_Courier_Haste : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Turbo_Courier_Invulnerable : public CDOTA_Modifier_Invulnerable
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Jungle_Varmint : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 11
// Size: 0x1218
class CDOTA_Modifier_JungleVarmint_Dive : public CDOTA_Buff
{
public:
float m_flTotalTime; // 0x11d8
float m_flInitialVelocity; // 0x11dc
Vector m_vStartPosition; // 0x11e0
Vector m_vTargetHorizontalDirection; // 0x11ec
float m_flCurrentTimeHoriz; // 0x11f8
float m_flCurrentTimeVert; // 0x11fc
bool m_bInterrupted; // 0x1200
private:
[[maybe_unused]] uint8_t __pad1201[0x3]; // 0x1201
public:
int32_t distance; // 0x1204
float speed; // 0x1208
float acceleration; // 0x120c
int32_t radius; // 0x1210
};
// Alignment: 5
// Size: 0x11e8
class CDOTA_Modifier_SkeletonKing_Reincarnation_Scepter_Active : public CDOTA_Buff
{
public:
int32_t scepter_move_speed_pct; // 0x11d8
int32_t scepter_attack_speed; // 0x11dc
CHandle< CBaseEntity > m_hTarget; // 0x11e0
bool m_bPassive; // 0x11e4
bool m_bKillAtEnd; // 0x11e5
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Item_Helm_Of_The_Undying_Active : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
bool m_bPassive; // 0x11dc
};
// Alignment: 8
// Size: 0x1208
class CDOTA_Modifier_Legion_Commander_Duel : public CDOTA_Buff
{
public:
int32_t reward_damage; // 0x11d8
int32_t scepter_damage_reduction_pct; // 0x11dc
bool m_bAttacked; // 0x11e0
bool m_bHadAVictor; // 0x11e1
private:
[[maybe_unused]] uint8_t __pad11e2[0x2]; // 0x11e2
public:
GameTime_t m_flTimeDuelStart; // 0x11e4
CHandle< CBaseEntity > m_hPartner; // 0x11e8
float m_flNextTime; // 0x11ec
CUtlVector< CHandle< CBaseEntity > > hAlreadyHitList; // 0x11f0
};
// 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: 0x11e0
class CDOTA_Modifier_JungleVarmint_Creator : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hVarmint; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Outpost_Summoning : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Watch_Tower_Capturing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 12
// Size: 0x1220
class CDOTA_Modifier_Watch_Tower : public CDOTA_Buff
{
public:
int32_t m_nTeamNumber; // 0x11d8
int32_t m_iCapturingTeam; // 0x11dc
float m_flCaptureProgress; // 0x11e0
float m_flBonusTime; // 0x11e4
bool m_bInitialSetupDone; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11e9[0x3]; // 0x11e9
public:
int32_t m_iOriginalTeam; // 0x11ec
CHandle< CBaseEntity > m_hPreviousHero; // 0x11f0
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< PlayerID_t > m_vecLastCreditedPlayerIDs; // 0x11f8
float m_flAccumulatedCaptureTime; // 0x1210
int32_t m_iBonusCount; // 0x1214
ParticleIndex_t m_nFxOutpostAmbient; // 0x1218
ParticleIndex_t m_nFxOutpostInitialAmbient; // 0x121c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Watch_Tower_Invulnerable : public CDOTA_Modifier_Invulnerable
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Watch_Tower_Invulnerable_Temporary : public CDOTA_Modifier_Invulnerable
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Watch_Tower_Marker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lamp_Ready : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Lamp_On : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Lamp_Off : public CDOTA_Buff
{
public:
int32_t m_iTempViewer; // 0x11d8
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_Twin_Gate_FX : public CDOTA_Buff
{
public:
ParticleIndex_t m_nPortalAmbientFX; // 0x11d8
float m_fPortalRadius; // 0x11dc
ParticleIndex_t m_nChannelFX; // 0x11e0
int32_t m_nChannelCount; // 0x11e4
ParticleIndex_t m_nCountdownFX; // 0x11e8
};
// Alignment: 12
// Size: 0x1210
class CDOTA_Modifier_Twin_Gate_Warp_Channel : public CDOTA_Buff
{
public:
ParticleIndex_t m_nfxTargetTp; // 0x11d8
ParticleIndex_t m_nfxTargetTp2; // 0x11dc
ParticleIndex_t m_nfxAmbientFx; // 0x11e0
ParticleIndex_t m_nfxPortal1; // 0x11e4
ParticleIndex_t m_nfxPortal2; // 0x11e8
CHandle< CBaseEntity > m_hPortal; // 0x11ec
CHandle< CBaseEntity > m_hOtherPortal; // 0x11f0
Vector m_vStartPosition; // 0x11f4
float m_flTotalTime; // 0x1200
float m_flElapsedTimePortion; // 0x1204
float animation_rate; // 0x1208
int32_t stop_distance; // 0x120c
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_Vampire_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Mutation_Vampire : public CDOTA_Buff
{
public:
int32_t m_iLifeStealPct; // 0x11d8
int32_t m_iHealthDrain; // 0x11dc
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Mutation_Spellcast : public CDOTA_Buff
{
public:
CUtlVector< CDOTABaseAbility* > m_vecAbilities; // 0x11d8
float m_fNextCastTime; // 0x11f0
float m_fCastInterval; // 0x11f4
float m_fWarningTime; // 0x11f8
int32_t m_iNextAbility; // 0x11fc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_DeathExplosion_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_DeathExplosion_TeamAura : public CDOTA_Modifier_Mutation_DeathExplosion_Aura
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_DeathExplosion : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Mutation_DeathExplosionDelayed : public CDOTA_Buff
{
public:
int32_t m_iDamageBase; // 0x11d8
int32_t m_iDamagePerLevel; // 0x11dc
int32_t m_iRadius; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_NoHealthBars_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_StationaryDamageReduction_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mutation_StationaryDamageReduction : public CDOTA_Buff
{
public:
int32_t m_iReductionPct; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_CreateTombstone_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_CreateTombstone_Team_Aura : public CDOTA_Modifier_Mutation_CreateTombstone_Aura
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_CreateTombstone : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_KillstreakPower_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Mutation_KillstreakPower : public CDOTA_Buff
{
public:
int32_t m_iDamageDonePct; // 0x11d8
int32_t m_iDamageTakenPct; // 0x11dc
int32_t m_iModelScale; // 0x11e0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_Treecutter_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mutation_Treecutter : public CDOTA_Buff
{
public:
int32_t m_iRadius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mutation_FreeRapiers_Team : public CDOTA_Buff
{
public:
int32_t m_nLastInterval; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_Cooldown_Reduction_Team_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Mutation_Cooldown_Reduction : public CDOTA_Buff
{
public:
int32_t m_iCooldownReduction; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_CritChance_Team_Aura : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Mutation_Crit_Chance : public CDOTA_Buff
{
public:
int32_t m_iChance; // 0x11d8
int32_t m_iDamageMultiplier; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_PocketRoshan_Team : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Mutation_DropItemOnDeath_Team : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1258
class CDOTA_Modifier_ContextualTips : public CDOTA_Buff
{
public:
bool m_bAllEnemiesBots; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
GameTime_t m_flGloblLastTipSendTime; // 0x11dc
GameTime_t m_flLastEnemyHeroDamageTime; // 0x11e0
GameTime_t m_flLastEnemyHeroVisibleTime; // 0x11e4
// Static fields:
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: 0x11d8
class CDOTA_Modifier_731_Teaser_Stun : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_731_Teaser_Thinker : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Neutral_Sleep_AI : public CDOTA_Buff
{
public:
ParticleIndex_t m_iFXIndex; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Neutral_Creep_Lost : public CDOTA_Buff
{
public:
bool m_bActive; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
GameTime_t m_flCreationTime; // 0x11dc
ParticleIndex_t m_iFXIndex; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KoboldTaskmaster_SpeedAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KoboldTaskmaster_SpeedAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_movement_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_CentaurKhan_EnduranceAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_CentaurKhan_EnduranceAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_attack_speed; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spawnlord_Master_Stomp : public CDOTA_Buff
{
public:
int32_t armor_reduction_pct; // 0x11d8
float m_flArmorReduction; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spawnlord_Master_Freeze : public CDOTA_Buff
{
public:
bool m_bFreezeAttack; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11d9[0x3]; // 0x11d9
public:
ParticleIndex_t m_nFXIndex; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spawnlord_Master_Freeze_Root : public CDOTA_Buff
{
public:
int32_t max_ticks; // 0x11d8
float damage; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_GnollAssassin_EnvenomedWeapon : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
float non_hero_duration; // 0x11dc
float hero_duration; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_GnollAssassin_EnvenomedWeapon_Poison : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
int32_t regen_reduction; // 0x11dc
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Ghost_FrostAttack : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t movespeed_slow; // 0x11dc
int32_t attackspeed_slow; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Ghost_FrostAttack_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_PolarFurbolgUrsaWarrior_ThunderClap : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_WarpineRaider_SeedShot : public CDOTA_Buff
{
public:
CHandle< CBaseEntity > m_hTarget; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_WarpineRaider_SeedShot_Slow : public CDOTA_Buff
{
public:
int32_t slow; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Neutral_SpellImmunity : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Neutral_SpellImmunity_Visible : public CDOTA_Modifier_MagicImmune
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_OgreMagi_FrostArmor : public CDOTA_Buff
{
public:
int32_t armor_bonus; // 0x11d8
float slow_duration; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_OgreMagi_FrostArmor_Slow : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DarkTrollWarlord_Ensnare : public CDOTA_Modifier_Rooted
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_GiantWolf_CriticalStrike : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
int32_t crit_chance; // 0x11dc
};
// Alignment: 5
// Size: 0x11f0
class CDOTA_Modifier_MudGolem_RockDestroy : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
float duration; // 0x11dc
int32_t shard_health; // 0x11e0
int32_t shard_damage; // 0x11e4
int32_t shard_duration; // 0x11e8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_MudGolem_Rock_Shard : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoNotCastEnsnare : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoNotCastRock : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_DoNotCastSmash : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_AlphaWolf_CriticalStrike : public CDOTA_Buff
{
public:
int32_t crit_mult; // 0x11d8
int32_t crit_chance; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AncientRockGolem_Weakening_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AncientRockGolem_Weakening : public CDOTA_Buff
{
public:
int32_t armor_reduction; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlackDrake_MagicAmplification_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlackDrake_MagicAmplification : public CDOTA_Buff
{
public:
int32_t spell_amp; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AlphaWolf_CommandAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_AlphaWolf_CommandAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_damage_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FrostbittenGolem_TimeWarpAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FrostbittenGolem_TimeWarpAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_cdr; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_IceShaman_IncendiaryBomb : public CDOTA_Buff
{
public:
int32_t burn_damage; // 0x11d8
int32_t building_damage_pct; // 0x11dc
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Tornado_Tempest : public CDOTA_Buff
{
public:
int32_t near_radius; // 0x11d8
int32_t near_damage; // 0x11dc
int32_t far_radius; // 0x11e0
int32_t far_damage; // 0x11e4
float tick_rate; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Tornado_Tempest_Debuff : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
int32_t attackspeed_slow; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Wildkin_Tornado : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tornado_ExpirationTime : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_EnragedWildkin_Hurricane : public CDOTA_Buff
{
public:
Vector m_vDirection; // 0x11d8
float m_flEndTime; // 0x11e4
float m_flCurTime; // 0x11e8
ParticleIndex_t m_FX; // 0x11ec
int32_t distance; // 0x11f0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BerserkerTroll_Break : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Kobold_Disarm : public CDOTA_Buff
{
public:
float duration; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EnragedWildkin_ToughnessAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_EnragedWildkin_ToughnessAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_GraniteGolem_HPAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_GraniteGolem_HPAura_Bonus : public CDOTA_Buff
{
public:
float bonus_hp; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SatyrTrickster_Purge : public CDOTA_Buff
{
public:
int32_t purge_rate; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SatyrSoulstealer_ManaBurn : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SatyrHellcaller_UnholyAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_SatyrHellcaller_UnholyAura_Bonus : public CDOTA_Buff
{
public:
float health_regen; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Spawnlord_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Spawnlord_Aura_Bonus : public CDOTA_Buff
{
public:
int32_t lifesteal; // 0x11d8
int32_t hp_regen; // 0x11dc
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_ForestTrollHighPriest_HealAutocast : public CDOTA_Buff
{
public:
int32_t health; // 0x11d8
CHandle< CBaseEntity > m_hHealTarget; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ForestTrollHighPriest_ManaAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_ForestTrollHighPriest_ManaAura_Bonus : public CDOTA_Buff
{
public:
float mana_regen; // 0x11d8
int32_t allow_multiple; // 0x11dc
int32_t m_nAttributes; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ForestTrollHighPriest_HealAmp : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_ForestTrollHighPriest_HealAmp_Bonus : public CDOTA_Buff
{
public:
float heal_amp; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Furbolg_Enrage_AttackSpeed_OnDeath : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifer_Furbolg_Enrage_AttackSpeed : public CDOTA_Buff
{
public:
int32_t bonus_aspd; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Furbolg_Enrage_Damage_OnDeath : public CDOTA_Buff
{
public:
float duration; // 0x11d8
int32_t radius; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FelBeast_Haunt_OnDeath : public CDOTA_Buff
{
public:
int32_t projectile_speed; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_FelBeast_Haunt : public CDOTA_Buff
{
public:
int32_t damage_per_second; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifer_Furbolg_Enrage_Damage : public CDOTA_Buff
{
public:
int32_t bonus_dmg_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KoboldTunneler_ProspectingAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_KoboldTunneler_ProspectingAura_Money : public CDOTA_Buff
{
public:
int32_t gpm_aura; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_HillTroll_RallyAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_HillTroll_Rally : public CDOTA_Buff
{
public:
int32_t damage_bonus; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_HillTroll_Rally_Stack : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_HarpyScout_TakeOff : public CDOTA_Buff
{
public:
int32_t move_speed_penalty; // 0x11d8
float cost_per_second; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_OgreSmash_Swing : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_GiantWolf_Intimidate : public CDOTA_Buff
{
public:
int32_t damage_reduction; // 0x11d8
};
// Alignment: 6
// Size: 0x1210
class CDOTA_Modifier_HarpyStorm_ChainLightning : public CDOTA_Buff
{
public:
int32_t jump_range; // 0x11d8
int32_t max_targets; // 0x11dc
float damage_percent_loss; // 0x11e0
float m_flCurDamage; // 0x11e4
Vector m_vJumpPosition; // 0x11e8
private:
[[maybe_unused]] uint8_t __pad11f4[0x4]; // 0x11f4
public:
CUtlVector< CHandle< CBaseEntity > > m_hHitEntities; // 0x11f8
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_BlackDragon_Fireball_Thinker : public CDOTA_Buff
{
public:
float burn_interval; // 0x11d8
int32_t radius; // 0x11dc
int32_t damage; // 0x11e0
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_BlackDragon_SplashAttack : public CDOTA_Buff
{
public:
int32_t range; // 0x11d8
float damage_percent; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlackDragon_DragonhideAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlackDragon_DragonhideAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MudGolem_CloakAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_MudGolem_CloakAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_magical_armor; // 0x11d8
int32_t bonus_magical_armor_creeps; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlueDragonspawnSorcerer_Evasion : public CDOTA_Buff
{
public:
int32_t evasion_chance_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlueDragonspawnOverseer_Evasion : public CDOTA_Buff
{
public:
int32_t evasion_chance_pct; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlueDragonspawnOverseer_DevotionAura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BlueDragonspawnOverseer_DevotionAura_Bonus : public CDOTA_Buff
{
public:
int32_t bonus_armor; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BigThunderLizard_Wardrums : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_BigThunderLizard_Wardrums_Aura : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
int32_t accuracy; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BigThunderLizard_Slam : public CDOTA_Buff
{
public:
int32_t movespeed_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_BigThunderLizard_Frenzy : public CDOTA_Buff
{
public:
int32_t attackspeed_bonus; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Casting : public CDOTA_Buff
{
public:
int32_t cast_animation; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Black_Nightmare : public CDOTA_Buff
{
public:
float animation_rate; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Greevil_Miniboss_Black_Nightmare_Invulnerable : public CDOTA_Modifier_Invulnerable
{
public:
// No members available
};
// Alignment: 5
// Size: 0x11f8
class CDOTA_Modifier_Greevil_Miniboss_Blue_ColdFeet : public CDOTA_Buff
{
public:
Vector m_vecStartPosition; // 0x11d8
int32_t m_nCurrentTick; // 0x11e4
float damage; // 0x11e8
int32_t break_distance; // 0x11ec
float stun_duration; // 0x11f0
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Greevil_Miniboss_Blue_ColdFeet_Freeze : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1200
class CDOTA_Modifier_Greevil_Miniboss_Blue_IceVortexThinker : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t movement_speed_pct; // 0x11dc
int32_t spell_resist_pct; // 0x11e0
ParticleIndex_t m_nFXIndex; // 0x11e4
CUtlVector< CHandle< CBaseEntity > > m_hChilledEntities; // 0x11e8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Blue_IceVortex : public CDOTA_Buff
{
public:
int32_t movement_speed_pct; // 0x11d8
int32_t spell_resist_pct; // 0x11dc
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Red_Earthshock : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Red_Overpower : public CDOTA_Buff
{
public:
int32_t attack_speed_bonus_pct; // 0x11d8
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_Greevil_Miniboss_Yellow_IonShell : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t damage_per_second; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Greevil_Miniboss_Yellow_Surge : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_White_Degen_Aura : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_White_Degen_Aura_Effect : public CDOTA_Buff
{
public:
int32_t speed_bonus; // 0x11d8
};
// Alignment: 2
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Green_LivingArmor : public CDOTA_Buff
{
public:
int32_t health_regen; // 0x11d8
int32_t damage_block; // 0x11dc
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Greevil_Miniboss_Green_Overgrowth : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Greevil_Miniboss_Orange_LightStrikeArray_Thinker : public CDOTA_Buff
{
public:
int32_t m_iDamage; // 0x11d8
float m_flStunDuration; // 0x11dc
int32_t light_strike_array_aoe; // 0x11e0
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Greevil_Miniboss_Purple_VenomousGale : public CDOTA_Buff
{
public:
int32_t movement_slow; // 0x11d8
int32_t tick_damage; // 0x11dc
float tick_interval; // 0x11e0
float duration; // 0x11e4
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Greevil_Miniboss_Sight : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
};
// Alignment: 9
// Size: 0x1200
class CDOTA_Modifier_Neutral_Upgrade : public CDOTA_Buff
{
public:
float increase_time; // 0x11d8
int32_t increase_damage; // 0x11dc
int32_t increase_health; // 0x11e0
float increase_armor; // 0x11e4
int32_t increase_aspd; // 0x11e8
int32_t increase_gold; // 0x11ec
int32_t increase_xp; // 0x11f0
int32_t current_level; // 0x11f4
int32_t max_level; // 0x11f8
};
// Alignment: 4
// Size: 0x11e8
class CDOTA_Modifier_Creep_Siege : public CDOTA_Buff
{
public:
int32_t bonus_building_damage; // 0x11d8
int32_t incoming_hero_damage_penalty; // 0x11dc
int32_t incoming_basic_damage_penalty; // 0x11e0
int32_t incoming_controlled_unit_penalty; // 0x11e4
};
// Alignment: 3
// Size: 0x11e8
class CDOTA_Modifier_Creep_Piercing : public CDOTA_Buff
{
public:
int32_t creep_damage_bonus; // 0x11d8
int32_t hero_damage_penalty; // 0x11dc
int32_t heavy_damage_penalty; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Creep_Irresolute : public CDOTA_Buff
{
public:
int32_t hero_damage_penalty; // 0x11d8
};
// Alignment: 6
// Size: 0x11f0
class CDOTA_Modifier_Creep_Bonus_XP : public CDOTA_Buff
{
public:
int32_t radius; // 0x11d8
int32_t hero_damage_penalty; // 0x11dc
int32_t bonus_gold; // 0x11e0
int32_t m_iGoldBounty; // 0x11e4
ParticleIndex_t iBannerEffect; // 0x11e8
ParticleIndex_t iRingEffect; // 0x11ec
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_Flagbearer_Creep_Aura_Effect : public CDOTA_Buff
{
public:
int32_t bonus_health_regen; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Filler_Tooltip : public CDOTA_Buff
{
public:
// No members available
};
// Alignment: 2
// Size: 0x11e8
class CDOTA_Modifier_MuertaReleaseEvent_RemoveGravestone : public CDOTA_Buff
{
public:
ParticleIndex_t m_nParticleIndex; // 0x11d8
private:
[[maybe_unused]] uint8_t __pad11dc[0x4]; // 0x11dc
public:
CUtlVector< ParticleIndex_t >* m_pActiveGravestones; // 0x11e0
};
// Alignment: 1
// Size: 0x11e0
class CDOTA_Modifier_MuertaReleaseEvent : public CDOTA_Buff
{
public:
CHandle< CIngameEvent_MuertaReleaseSpring2023 > m_hEvent; // 0x11d8
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_Tutorial_Sleep : public CDOTA_Modifier_Stunned
{
public:
// No members available
};
// Alignment: 0
// Size: 0x11d8
class CDOTA_Modifier_ARDM_NewHero : public CDOTA_Modifier_Tutorial_Sleep
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1210
class CDOTA_Modifier_Gold_Bag_Launch : public CDOTA_Modifier_Knockback
{
public:
int32_t gold_amount; // 0x1208
};
// Alignment: 0
// Size: 0x618
class CDOTA_Item_Tier1Token : public CDOTA_Item_TierToken
{
public:
// No members available
};
// Alignment: 0
// Size: 0x618
class CDOTA_Item_Tier2Token : public CDOTA_Item_TierToken
{
public:
// No members available
};
// Alignment: 0
// Size: 0x618
class CDOTA_Item_Tier3Token : public CDOTA_Item_TierToken
{
public:
// No members available
};
// Alignment: 0
// Size: 0x618
class CDOTA_Item_Tier4Token : public CDOTA_Item_TierToken
{
public:
// No members available
};
// Alignment: 0
// Size: 0x618
class CDOTA_Item_Tier5Token : public CDOTA_Item_TierToken
{
public:
// No members available
};
// Alignment: 0
// Size: 0x9e0
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: 0xa00
class CDOTA_GuildBannerDynamic : public CDynamicProp
{
public:
// MNetworkEnable
bool m_bRespawnClientEntity; // 0x9e0
// MNetworkEnable
bool m_bPlaySpawnAnimation; // 0x9e1
// MNetworkEnable
uint8_t m_unGuildTier; // 0x9e2
// MNetworkEnable
uint8_t m_unPrimaryColor; // 0x9e3
// MNetworkEnable
uint8_t m_unSecondaryColor; // 0x9e4
// MNetworkEnable
uint8_t m_unPattern; // 0x9e5
private:
[[maybe_unused]] uint8_t __pad09e6[0x2]; // 0x9e6
public:
// MNetworkEnable
uint64_t m_unLogo; // 0x9e8
// MNetworkEnable
GuildID_t m_unGuildID; // 0x9f0
// MNetworkEnable
uint32_t m_unGuildFlags; // 0x9f4
// MNetworkEnable
bool m_bUsePanelCache; // 0x9f8
};
// Alignment: 1
// Size: 0x9e8
class CDOTAPropCustomTexture : public CDynamicProp
{
public:
// MNetworkEnable
uint32_t m_unTeamID; // 0x9e0
};
// Alignment: 1
// Size: 0x9e8
class CDOTAPropConsumableBanner : public CDynamicProp
{
public:
// MNetworkEnable
bool m_bUseAvatar; // 0x9e0
};
// Alignment: 1
// Size: 0xa08
class CDOTAPropTI10PlayerGuildBanner : public CDOTA_GuildBannerDynamic
{
public:
// MNetworkEnable
int32_t m_nPlayerID; // 0xa00
};
// Alignment: 1
// Size: 0xa08
class CDOTAPropPlusPlayerGuildBanner : public CDOTA_GuildBannerDynamic
{
public:
// MNetworkEnable
int32_t m_nPlayerID; // 0xa00
};
// 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: 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: 0xad0
class CRagdollPropAlias_physics_prop_ragdoll : public CRagdollProp
{
public:
// No members available
};
// Alignment: 6
// Size: 0xb10
class CRagdollPropAttached : public CRagdollProp
{
public:
// MNetworkEnable
uint32_t m_boneIndexAttached; // 0xad0
// MNetworkEnable
uint32_t m_ragdollAttachedObjectIndex; // 0xad4
// MNetworkEnable
// MNetworkEncoder
Vector m_attachmentPointBoneSpace; // 0xad8
// MNetworkEnable
// MNetworkEncoder
Vector m_attachmentPointRagdollSpace; // 0xae4
bool m_bShouldDetach; // 0xaf0
private:
[[maybe_unused]] uint8_t __pad0af1[0xf]; // 0xaf1
public:
bool m_bShouldDeleteAttachedActivationRecord; // 0xb00
};
// 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 fields:
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
{
private:
[[maybe_unused]] uint8_t __pad0830[0x8]; // 0x830
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: 21
// Size: 0x9c0
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
// MNetworkEnable
// MNetworkUserGroup "LocalPlayerExclusive"
uint32_t m_iHideHUD; // 0x8fc
// MNetworkEnable
// MNetworkUserGroup "LocalPlayerExclusive"
sky3dparams_t m_skybox3d; // 0x900
GameTime_t m_fTimeLastHurt; // 0x990
// MNetworkEnable
// MNetworkUserGroup "LocalPlayerExclusive"
GameTime_t m_flDeathTime; // 0x994
GameTime_t m_fNextSuicideTime; // 0x998
bool m_fInitHUD; // 0x99c
private:
[[maybe_unused]] uint8_t __pad099d[0x3]; // 0x99d
public:
CAI_Expresser* m_pExpresser; // 0x9a0
// MNetworkEnable
CHandle< CBasePlayerController > m_hController; // 0x9a8
private:
[[maybe_unused]] uint8_t __pad09ac[0x4]; // 0x9ac
public:
float m_fHltvReplayDelay; // 0x9b0
float m_fHltvReplayEnd; // 0x9b4
CEntityIndex m_iHltvReplayEntity; // 0x9b8
};
// Alignment: 2
// Size: 0x930
class NextBotCombatCharacter : public CBaseCombatCharacter
{
private:
[[maybe_unused]] uint8_t __pad08a0[0x88]; // 0x8a0
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: 0x9c0
class CDOTAPlayerPawn : public CBasePlayerPawn
{
public:
// No members available
};
// Alignment: 251
// Size: 0x1730
class CDOTA_BaseNPC : public NextBotCombatCharacter
{
private:
[[maybe_unused]] uint8_t __pad0930[0x20]; // 0x930
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.000000"
// MNetworkMaxValue "65536.000000"
float m_flMana; // 0x980
float m_flBaseMaxMana; // 0x984
// MNetworkEnable
// MNetworkBitCount "20"
// MNetworkMinValue "0.000000"
// MNetworkMaxValue "65536.000000"
float m_flMaxMana; // 0x988
// MNetworkEnable
// MNetworkBitCount "14"
// MNetworkMinValue "-50.000000"
// MNetworkMaxValue "500.000000"
float m_flManaThinkRegen; // 0x98c
float m_flBaseMaxHealth; // 0x990
// MNetworkEnable
// MNetworkBitCount "18"
// MNetworkMinValue "-100.000000"
// MNetworkMaxValue "1000.000000"
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
GameTime_t m_flLastDealtDamageTime; // 0x9bc
// MNetworkEnable
int32_t m_iBotDebugData; // 0x9c0
// MNetworkEnable
bool m_bIsMoving; // 0x9c4
private:
[[maybe_unused]] uint8_t __pad09c5[0x19b]; // 0x9c5
public:
// MNetworkEnable
bool m_bCanUseWards; // 0xb60
// MNetworkEnable
bool m_bCanUseAllItems; // 0xb61
private:
[[maybe_unused]] uint8_t __pad0b62[0x2]; // 0xb62
public:
PlayerID_t m_iLastAbilityPlayer; // 0xb64
bool m_bIsPhantomBlocker; // 0xb68
bool m_bBlocksCreepSpawn; // 0xb69
bool m_bCanSellItems; // 0xb6a
private:
[[maybe_unused]] uint8_t __pad0b6b[0x1]; // 0xb6b
public:
// MNetworkEnable
CHandle< CDOTA_NeutralSpawner > m_hNeutralSpawner; // 0xb6c
bool m_bTrackDamageTaken; // 0xb70
private:
[[maybe_unused]] uint8_t __pad0b71[0x3]; // 0xb71
public:
GameTick_t m_nNextRegenThink; // 0xb74
GameTick_t m_nNextModifierThink; // 0xb78
GameTick_t m_nNextModelScaleThink; // 0xb7c
GameTick_t m_nNextUnitThink; // 0xb80
// MNetworkEnable
// MNetworkBitCount "18"
// MNetworkMinValue "-100.000000"
// MNetworkMaxValue "1000.000000"
float m_flManaRegen; // 0xb84
// MNetworkEnable
// MNetworkBitCount "18"
// MNetworkMinValue "-100.000000"
// MNetworkMaxValue "1000.000000"
float m_flHealthRegen; // 0xb88
private:
[[maybe_unused]] uint8_t __pad0b8c[0x4]; // 0xb8c
public:
// MNetworkEnable
// MNetworkPriority "32"
int64_t m_nTotalDamageTaken; // 0xb90
float m_flHealthRegenCounter; // 0xb98
float m_flManaRegenCounter; // 0xb9c
float m_flAccumulatedHeal; // 0xba0
int32_t m_iBaseAttackSpeed; // 0xba4
int32_t m_iBaseDamageMin; // 0xba8
int32_t m_iBaseDamageMax; // 0xbac
int32_t m_iAttackRange; // 0xbb0
int32_t m_iAttackRangeBuffer; // 0xbb4
// MNetworkEnable
int32_t m_iMoveSpeed; // 0xbb8
float m_flTurnRate; // 0xbbc
int32_t m_iHasAggressiveStance; // 0xbc0
bool m_bInAggressiveStance; // 0xbc4
bool m_bInInjuredAggressiveStance; // 0xbc5
private:
[[maybe_unused]] uint8_t __pad0bc6[0x2]; // 0xbc6
public:
float m_flFollowRange; // 0xbc8
int32_t m_iAcquisitionRange; // 0xbcc
float m_flAttackAnimationPoint; // 0xbd0
float m_flHullRadius; // 0xbd4
float m_flCollisionPadding; // 0xbd8
// MNetworkEnable
GameTime_t m_flTauntCooldown; // 0xbdc
// MNetworkEnable
GameTime_t m_flTauntCooldown2; // 0xbe0
// MNetworkEnable
float m_fRevealRadius; // 0xbe4
float m_flProjectileCollisionSize; // 0xbe8
ObstructionRelationshipClass_t m_ObstructionRelationshipClass; // 0xbec
CUtlSymbolLarge m_iszParticleFolder; // 0xbf0
CUtlSymbolLarge m_iszGameSoundsFile; // 0xbf8
CUtlSymbolLarge m_iszVoiceFile; // 0xc00
CUtlSymbolLarge m_iszSoundSet; // 0xc08
CUtlSymbolLarge m_iszSelectionGroup; // 0xc10
CUtlSymbolLarge m_iszAnimationModifier; // 0xc18
private:
[[maybe_unused]] uint8_t __pad0c20[0x8]; // 0xc20
public:
float m_flBaseAttackTime; // 0xc28
// MNetworkEnable
int32_t m_iDayTimeVisionRange; // 0xc2c
// MNetworkEnable
int32_t m_iNightTimeVisionRange; // 0xc30
float m_fBotAttackDesire; // 0xc34
int32_t m_iUnitRelationshipClass; // 0xc38
// MNetworkEnable
float m_flPhysicalArmorValue; // 0xc3c
// MNetworkEnable
float m_flMagicalResistanceValue; // 0xc40
int32_t m_iTeamName; // 0xc44
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iAttackCapabilities; // 0xc48
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iSpecialAbility; // 0xc4c
int32_t m_iMoveCapabilities; // 0xc50
int32_t m_iOriginalAttackCapabilities; // 0xc54
// MNetworkEnable
int32_t m_iXPBounty; // 0xc58
// MNetworkEnable
int32_t m_iXPBountyExtra; // 0xc5c
// MNetworkEnable
int32_t m_iGoldBountyMin; // 0xc60
// MNetworkEnable
int32_t m_iGoldBountyMax; // 0xc64
PlayerID_t m_nFarmClaimPlayerID; // 0xc68
// MNetworkEnable
PlayerID_t m_nPlayerOwnerID; // 0xc6c
CUtlSymbolLarge m_iszAbilityList[35]; // 0xc70
int32_t m_iAttackDamageType; // 0xd88
bool m_bIsIdle; // 0xd8c
bool m_bHold; // 0xd8d
bool m_bWasKilledPassively; // 0xd8e
private:
[[maybe_unused]] uint8_t __pad0d8f[0x1]; // 0xd8f
public:
CountdownTimer m_AngerTimer; // 0xd90
CountdownTimer m_AlertTimer; // 0xda8
CHandle< CBaseEntity > m_hAngerTarget; // 0xdc0
CHandle< CBaseEntity > m_hAlertTarget; // 0xdc4
CHandle< CBaseEntity > m_hForceAttackTarget; // 0xdc8
bool m_bAllowAllyForceAttack; // 0xdcc
private:
[[maybe_unused]] uint8_t __pad0dcd[0x3]; // 0xdcd
public:
Vector m_vTargetLastKnownPosition; // 0xdd0
private:
[[maybe_unused]] uint8_t __pad0ddc[0x1c]; // 0xddc
public:
// MNetworkEnable
GameTime_t m_flLastDamageTime; // 0xdf8
// MNetworkEnable
GameTime_t m_flLastAttackTime; // 0xdfc
GameTime_t m_flTimeSinceLastAbilityNag; // 0xe00
GameTime_t m_flLastTeleportTime; // 0xe04
// MNetworkEnable
uint64_t m_nUnitState64; // 0xe08
GameTime_t m_vLastVisibilityChange[15]; // 0xe10
private:
[[maybe_unused]] uint8_t __pad0e4c[0x1c]; // 0xe4c
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 __pad1208[0x8]; // 0x1208
public:
float m_flInvisibilityLevel; // 0x1210
private:
[[maybe_unused]] uint8_t __pad1214[0x4]; // 0x1214
public:
CUtlSymbolLarge m_iszMapUnitName; // 0x1218
// MNetworkEnable
// MNetworkDisable
CUtlSymbolLarge m_iszUnitName; // 0x1220
// MNetworkEnable
int32_t m_iUnitNameIndex; // 0x1228
// MNetworkEnable
int32_t m_iDamageMin; // 0x122c
// MNetworkEnable
int32_t m_iDamageMax; // 0x1230
// MNetworkEnable
int32_t m_iDamageBonus; // 0x1234
// MNetworkEnable
bool m_bIsWaitingToSpawn; // 0x1238
private:
[[maybe_unused]] uint8_t __pad1239[0x3]; // 0x1239
public:
int32_t m_iLeashType; // 0x123c
int32_t m_iAggroType; // 0x1240
bool m_bCreepIgnoreAggro; // 0x1244
bool m_bCreepFirstWave; // 0x1245
// MNetworkEnable
bool m_bIsIllusion; // 0x1246
// MNetworkEnable
uint8_t m_nUnitLabelIndex; // 0x1247
// MNetworkEnable
CUtlString m_szScaleset; // 0x1248
// MNetworkEnable
CUtlString m_szUnitLabel; // 0x1250
CUtlString m_strAnimationModifier; // 0x1258
private:
[[maybe_unused]] uint8_t __pad1260[0x8]; // 0x1260
public:
CLocomotionBase* m_locomotor; // 0x1268
IBody* m_body; // 0x1270
bool m_bNeverMoveToClearSpace; // 0x1278
private:
[[maybe_unused]] uint8_t __pad1279[0x3]; // 0x1279
public:
// MNetworkEnable
// MNetworkUserGroup "SpectatorsOnly"
CHandle< CBaseEntity > m_hGoalEntity; // 0x127c
bool m_bMustReachEachGoalEntity; // 0x1280
private:
[[maybe_unused]] uint8_t __pad1281[0x3]; // 0x1281
public:
Vector m_vInitialGoalPosition; // 0x1284
private:
[[maybe_unused]] uint8_t __pad1290[0x18]; // 0x1290
public:
CUnitOrders m_CurrentQueuedOrder; // 0x12a8
private:
[[maybe_unused]] uint8_t __pad12e8[0x18]; // 0x12e8
public:
// MNetworkEnable
CDOTA_UnitInventory m_Inventory; // 0x1300
CHandle< CBaseEntity > m_hItemToDrop; // 0x13d0
// MNetworkEnable
DOTA_SHOP_TYPE m_iCurShop; // 0x13d4
CHandle< CBaseEntity > m_hLastNearShop; // 0x13d8
private:
[[maybe_unused]] uint8_t __pad13dc[0x4]; // 0x13dc
public:
// MNetworkEnable
CUtlSymbolLarge m_szCurShopEntName; // 0x13e0
bool m_bHasInventory; // 0x13e8
private:
[[maybe_unused]] uint8_t __pad13e9[0x3]; // 0x13e9
public:
float m_flBaselineModelScale; // 0x13ec
float m_fModelScaleMultiplier; // 0x13f0
float m_fModelScaleMultiplierChangeStart; // 0x13f4
GameTime_t m_fModelScaleMultiplierChangeTime; // 0x13f8
float m_flPreviousModelScale; // 0x13fc
float m_fMaxModelScaleMultiplier; // 0x1400
bool m_bIsCamped; // 0x1404
bool m_bIsReturningHome; // 0x1405
bool m_bWantsToFlee; // 0x1406
bool m_bWakesNeutrals; // 0x1407
bool m_bNeutralIgnore; // 0x1408
bool m_bIdleAcquire; // 0x1409
bool m_bCanFollowUnseenUnits; // 0x140a
bool m_bExpired; // 0x140b
Vector m_vCurrentMovementOrderDestination; // 0x140c
Vector m_vPreviousMovementOrderDestination; // 0x1418
Vector m_vResumePreviousMovementRequestLocation; // 0x1424
bool m_bCurrentOrderIsMovement; // 0x1430
bool m_bPreviousOrderIsMovement; // 0x1431
bool m_bResumePreviousMovement; // 0x1432
bool m_bIsPatrolling; // 0x1433
GameTime_t m_flCreationTime; // 0x1434
bool m_bTargetMovedOutOfRange; // 0x1438
bool m_bChaseTargetMoves; // 0x1439
private:
[[maybe_unused]] uint8_t __pad143a[0x2]; // 0x143a
public:
float m_flChaseDistance; // 0x143c
CHandle< CBaseEntity > m_hChaseEntity; // 0x1440
private:
[[maybe_unused]] uint8_t __pad1444[0x4]; // 0x1444
public:
CUtlVector< CUtlSymbol > m_ActivityModifiers; // 0x1448
bool m_bActivityModifiersDirty; // 0x1460
private:
[[maybe_unused]] uint8_t __pad1461[0x7]; // 0x1461
public:
CUtlVector< CUtlSymbol > m_ActivityModifiersFromScript; // 0x1468
GameTime_t m_flBlinkDaggerTime; // 0x1480
float m_flAdditionalBattleMusicWeight; // 0x1484
// MNetworkEnable
bool m_bStolenScepter; // 0x1488
bool m_bHasScepterCached; // 0x1489
bool m_bHasShardCached; // 0x148a
private:
[[maybe_unused]] uint8_t __pad148b[0x5]; // 0x148b
public:
CLocalNPCObstructionsCache m_LocalNPCObstructionsCache; // 0x1490
private:
[[maybe_unused]] uint8_t __pad14b0[0x20]; // 0x14b0
public:
GameTime_t m_flCritBashFailUntil; // 0x14d0
float m_flAttackTimeLostToLastTick; // 0x14d4
float m_flAttackTimeAtLastTick; // 0x14d8
float m_flCompanionDistance; // 0x14dc
bool m_bIsPartyCompanion; // 0x14e0
bool m_bCanPartyCompanionAttack; // 0x14e1
private:
[[maybe_unused]] uint8_t __pad14e2[0x2]; // 0x14e2
public:
CHandle< CBaseEntity > m_CompanionEntity; // 0x14e4
bool m_bFacePlayer; // 0x14e8
private:
[[maybe_unused]] uint8_t __pad14e9[0x3]; // 0x14e9
public:
GameTime_t m_flLastIdleChangeTime; // 0x14ec
bool m_bUseNeutralCreepBehavior; // 0x14f0
private:
[[maybe_unused]] uint8_t __pad14f1[0x27]; // 0x14f1
public:
bool m_bHasBuiltWearableSpawnList; // 0x1518
private:
[[maybe_unused]] uint8_t __pad1519[0x3]; // 0x1519
public:
GameTick_t m_nFoWFadeStartTime[15]; // 0x151c
int32_t m_nFOWVisibilityRadius; // 0x1558
Vector m_vFOWOriginOverride; // 0x155c
CUtlString m_strLastKillerAbility; // 0x1568
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_anglediff; // 0x1570
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_NetworkActivity; // 0x1574
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_NetworkSequenceIndex; // 0x1578
// MNetworkEnable
bool m_bShouldDoFlyHeightVisual; // 0x157c
private:
[[maybe_unused]] uint8_t __pad157d[0x3]; // 0x157d
public:
// MNetworkEnable
float m_flStartSequenceCycle; // 0x1580
bool m_bMidLoading; // 0x1584
private:
[[maybe_unused]] uint8_t __pad1585[0x3]; // 0x1585
public:
CHandle< CDOTA_ScriptedSpawner > m_hTutorialSpawner; // 0x1588
private:
[[maybe_unused]] uint8_t __pad158c[0x4]; // 0x158c
public:
CountdownTimer m_AngerCooldownTimer; // 0x1590
int32_t m_iProjectileMoveSpeed; // 0x15a8
private:
[[maybe_unused]] uint8_t __pad15ac[0x4]; // 0x15ac
public:
CUtlSymbolLarge m_iszAutoAttackRangedParticle; // 0x15b0
int32_t m_nPoseParameterTurn; // 0x15b8
int32_t m_nPoseParameterRun; // 0x15bc
float m_flLean; // 0x15c0
float m_flRun; // 0x15c4
// MNetworkEnable
char m_CustomHealthLabel[256]; // 0x15c8
// MNetworkEnable
Color m_CustomHealthLabelColor; // 0x16c8
item_definition_index_t m_nWearableDefIndex; // 0x16cc
int8_t m_nArcanaLevel; // 0x16d0
int8_t m_nDefaultArcanaLevel; // 0x16d1
Color m_defaultColorGemColor; // 0x16d2
bool m_bDisableDamageDisplay; // 0x16d6
private:
[[maybe_unused]] uint8_t __pad16d7[0x1]; // 0x16d7
public:
Color m_gibTintColor; // 0x16d8
float m_flPathfindingSearchDepthScale; // 0x16dc
CUtlVector< int32 > m_ActivitiesStarted; // 0x16e0
CHandle< CBaseEntity > m_hIllusionOriginal; // 0x16f8
CHandle< CDOTA_BaseNPC > m_hDirectionalRangedFakeTarget; // 0x16fc
private:
[[maybe_unused]] uint8_t __pad1700[0x28]; // 0x1700
public:
bool m_bShouldComputeRemainingPathLength; // 0x1728
private:
[[maybe_unused]] uint8_t __pad1729[0x3]; // 0x1729
public:
float m_flRemainingPathLength; // 0x172c
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Additive : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1760
class CDOTA_BaseNPC_Creep : public CDOTA_BaseNPC_Additive
{
public:
CDOTA_CreepKillInfo m_KillInfo; // 0x1730
DOTA_LANE m_Lane; // 0x1750
bool m_bPushback; // 0x1754
private:
[[maybe_unused]] uint8_t __pad1755[0x3]; // 0x1755
public:
// MNetworkEnable
float m_flAim; // 0x1758
};
// Alignment: 2
// Size: 0x1780
class CDOTA_BaseNPC_Creep_Lane : public CDOTA_BaseNPC_Creep
{
public:
CountdownTimer m_ThinkTimer; // 0x1760
bool m_bInEnemyBase; // 0x1778
};
// Alignment: 0
// Size: 0x1780
class CDOTA_BaseNPC_Creep_Siege : public CDOTA_BaseNPC_Creep_Lane
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1778
class CDOTA_BaseNPC_Creep_Neutral : public CDOTA_BaseNPC_Creep
{
public:
CountdownTimer m_ThinkTimer; // 0x1760
};
// Alignment: 0
// Size: 0x1760
class CDOTA_BaseNPC_Creep_Talking : public CDOTA_BaseNPC_Creep
{
public:
// No members available
};
// Alignment: 36
// Size: 0x1838
class CDOTA_BaseNPC_Building : public CDOTA_BaseNPC
{
public:
// MNetworkEnable
int32_t m_iDamageLevel; // 0x1730
private:
[[maybe_unused]] uint8_t __pad1734[0x4]; // 0x1734
public:
// MNetworkEnable
CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nFXIndex; // 0x1738
// MNetworkEnable
CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nFXIndexDestruction; // 0x1740
// MNetworkEnable
QAngle m_angInitialAngles; // 0x1748
// MNetworkEnable
HSequence m_hHeroStatueSequence; // 0x1754
// MNetworkEnable
HSequence m_hConstantLayerSequence; // 0x1758
// MNetworkEnable
float m_fHeroStatueCycle; // 0x175c
// MNetworkEnable
int32_t m_iHeroStatueStatusEffectIndex; // 0x1760
// MNetworkEnable
bool m_bHeroStatue; // 0x1764
// MNetworkEnable
bool m_bBattleCup; // 0x1765
// MNetworkEnable
char m_HeroStatueInscription[32]; // 0x1766
private:
[[maybe_unused]] uint8_t __pad1786[0x2]; // 0x1786
public:
// MNetworkEnable
PlayerID_t m_iHeroStatueOwnerPlayerID; // 0x1788
// MNetworkEnable
Color m_ParticleTintColor; // 0x178c
CUtlSymbolLarge m_sDestroySnd; // 0x1790
CUtlSymbolLarge m_sDmgLvl1Snd; // 0x1798
CUtlSymbolLarge m_sDmgLvl2Snd; // 0x17a0
CUtlSymbolLarge m_iszLinkedUnit; // 0x17a8
CUtlSymbolLarge m_iszAmbientEffectName; // 0x17b0
CUtlSymbolLarge m_iszDestructionEffectName; // 0x17b8
CUtlSymbolLarge m_iszDamageModelLevel1; // 0x17c0
CUtlSymbolLarge m_iszDamageModelLevel2; // 0x17c8
CUtlSymbolLarge m_iszDamageEffectLevel1; // 0x17d0
CUtlSymbolLarge m_iszDamageEffectLevel2; // 0x17d8
float m_flDamageThresholdLevel1; // 0x17e0
float m_flDamageThresholdLevel2; // 0x17e4
bool m_bVulnerableOnCreepSpawn; // 0x17e8
bool m_bHasOverriddenDestructionEffect; // 0x17e9
private:
[[maybe_unused]] uint8_t __pad17ea[0x2]; // 0x17ea
public:
int32_t m_iUpgradeIdentifier; // 0x17ec
int32_t m_iInvulnCount; // 0x17f0
int32_t m_iPlayerOwner; // 0x17f4
DOTA_LANE m_Lane; // 0x17f8
float m_fAmountAlongLane[2]; // 0x17fc
Vector m_vOverrideInitialAngles; // 0x1804
Vector m_vOverrideInitialAnglesBG; // 0x1810
int32_t m_nOverrideInitialAngles; // 0x181c
CountdownTimer m_IdleRareAnimationTime; // 0x1820
// Static fields:
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: 0x1870
class CDOTA_BaseNPC_Tower : public CDOTA_BaseNPC_Building
{
public:
CEntityIOOutput m_OnTowerKilled; // 0x1838
// MNetworkEnable
CHandle< CBaseEntity > m_hTowerAttackTarget; // 0x1860
// MNetworkEnable
CHandle< CBaseEntity > m_hTowerHighFiveTarget; // 0x1864
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Filler : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_BaseBlocker : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1840
class CDOTA_NPC_Lantern : public CDOTA_BaseNPC_Building
{
public:
// MNetworkEnable
CUtlSymbolLarge m_szInteractAbilityName; // 0x1838
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_MangoTree : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1848
class CDOTA_BaseNPC_Watch_Tower : public CDOTA_BaseNPC_Building
{
public:
// MNetworkEnable
CUtlSymbolLarge m_szOutpostName; // 0x1838
// MNetworkEnable
CUtlSymbolLarge m_szInteractAbilityName; // 0x1840
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Healer : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1870
class CDOTA_BaseNPC_RespawningTower : public CDOTA_BaseNPC_Tower
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Fort : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Barracks : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1870
class CDOTA_BaseNPC_SDKTower : public CDOTA_BaseNPC_Tower
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1878
class CDOTA_BaseNPC_HoldoutTower : public CDOTA_BaseNPC_Tower
{
public:
DOTA_HOLDOUT_TOWER_TYPE m_iTowerType; // 0x1870
};
// Alignment: 0
// Size: 0x1878
class CDOTA_BaseNPC_HoldoutTower_LightFast : public CDOTA_BaseNPC_HoldoutTower
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1878
class CDOTA_BaseNPC_HoldoutTower_HeavySlow : public CDOTA_BaseNPC_HoldoutTower
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1878
class CDOTA_BaseNPC_HoldoutTower_ReduceSpeed : public CDOTA_BaseNPC_HoldoutTower
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Effigy_Statue : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Effigy_BattleCup : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_RotatableBuilding : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 80
// Size: 0x1d68
class CDOTA_BaseNPC_Hero : public CDOTA_BaseNPC_Additive
{
private:
[[maybe_unused]] uint8_t __pad1730[0x98]; // 0x1730
public:
// MNetworkEnable
float m_flStrength; // 0x17c8
// MNetworkEnable
float m_flAgility; // 0x17cc
// MNetworkEnable
float m_flIntellect; // 0x17d0
// MNetworkEnable
float m_flStrengthTotal; // 0x17d4
// MNetworkEnable
float m_flAgilityTotal; // 0x17d8
// MNetworkEnable
float m_flIntellectTotal; // 0x17dc
// MNetworkEnable
int32_t m_iRecentDamage; // 0x17e0
// MNetworkEnable
int32_t m_iPrimaryAttribute; // 0x17e4
// MNetworkEnable
GameTime_t m_flDeathTime; // 0x17e8
float m_flStrengthGain; // 0x17ec
float m_flAgilityGain; // 0x17f0
float m_flIntellectGain; // 0x17f4
float m_flLastSuggestionTime; // 0x17f8
int32_t m_nSuggestionHandle; // 0x17fc
bool m_bItemsAddedToLoadout; // 0x1800
private:
[[maybe_unused]] uint8_t __pad1801[0x3]; // 0x1801
public:
int32_t m_nSuggestPregameHandle; // 0x1804
bool m_bPregameItemsAddedToLoadout; // 0x1808
private:
[[maybe_unused]] uint8_t __pad1809[0x3]; // 0x1809
public:
CHandle< CBaseEntity > m_hNewARDMHero; // 0x180c
GameTime_t m_fBuybackCooldown; // 0x1810
GameTime_t m_fBuybackGoldLimit; // 0x1814
int32_t m_nLastHealedAmount; // 0x1818
float m_flLastHealedTime; // 0x181c
CHandle< CBaseEntity > m_hLastHealEntity; // 0x1820
Vector m_vRespawnPosition; // 0x1824
CUtlVector< CDOTA_BaseNPC_Hero::sHeroDamageInfo > m_HeroDamageInfoArray; // 0x1830
CUtlVector< CDOTA_BaseNPC_Hero::sHeroRecentModifierInfo > m_vecRecentModifiers; // 0x1848
GameTime_t m_fMostRecentDamageTime; // 0x1860
// MNetworkEnable
int32_t m_iAbilityPoints; // 0x1864
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_iCurrentXP; // 0x1868
// MNetworkEnable
GameTime_t m_flRespawnTime; // 0x186c
// MNetworkEnable
float m_flRespawnTimePenalty; // 0x1870
float m_flTimeUntilRespawn; // 0x1874
float m_flScriptRespawnTime; // 0x1878
float m_flPendingRespawnTime; // 0x187c
// MNetworkEnable
bool m_bScriptDisableRespawns; // 0x1880
private:
[[maybe_unused]] uint8_t __pad1881[0x3]; // 0x1881
public:
// MNetworkEnable
PlayerID_t m_iPlayerID; // 0x1884
PlayerID_t m_iIllusionOriginalPlayerID; // 0x1888
int32_t m_iHeroID; // 0x188c
// MNetworkEnable
CHandle< CDOTA_BaseNPC_Hero > m_hReplicatingOtherHeroModel; // 0x1890
private:
[[maybe_unused]] uint8_t __pad1894[0x3c]; // 0x1894
public:
CountdownTimer m_RespawnMusicTimer; // 0x18d0
CountdownTimer m_HeroKillTimer; // 0x18e8
CountdownTimer m_MultipleHeroKillTimer; // 0x1900
CountdownTimer m_MultipleLastHitTimer; // 0x1918
int32_t m_iMultipleKillCount; // 0x1930
bool m_bDisableWearables; // 0x1934
private:
[[maybe_unused]] uint8_t __pad1935[0x3]; // 0x1935
public:
CHandle< CDOTAWearableItem > m_hTogglableWearable[97]; // 0x1938
private:
[[maybe_unused]] uint8_t __pad1abc[0x4]; // 0x1abc
public:
CDOTA_BaseNPC_Hero::KillInfo_t m_KillInfo; // 0x1ac0
CountdownTimer m_DirectorAbilityActivity; // 0x1ae0
// MNetworkEnable
bool m_bReincarnating; // 0x1af8
// MNetworkEnable
bool m_bCustomKillEffect; // 0x1af9
private:
[[maybe_unused]] uint8_t __pad1afa[0x2]; // 0x1afa
public:
// MNetworkEnable
GameTime_t m_flSpawnedAt; // 0x1afc
CountdownTimer m_PurchaseItemTimer; // 0x1b00
CountdownTimer m_NeutralItemTimer; // 0x1b18
CountdownTimer m_RetrieveItemsFromStashTimer; // 0x1b30
CountdownTimer m_RequestGoToSecretShopTimer; // 0x1b48
int32_t m_iNextItemToPurchase; // 0x1b60
bool m_bDoesNextItemCompleteRecipe; // 0x1b64
private:
[[maybe_unused]] uint8_t __pad1b65[0x3]; // 0x1b65
public:
CUtlVector< sLoadoutItem > m_Loadout; // 0x1b68
CUtlVector< CUtlPair< AbilityID_t, bool > > m_BuildingOrBuilt; // 0x1b80
sLoadoutItem m_TPScroll; // 0x1b98
sLoadoutItem m_Dust; // 0x1bb0
sLoadoutItem m_Gem; // 0x1bc8
sLoadoutItem m_SentryWard; // 0x1be0
sLoadoutItem m_ObserverWard; // 0x1bf8
sLoadoutItem m_Courier; // 0x1c10
sLoadoutItem m_FlyingCourier; // 0x1c28
bool m_bAutoPurchaseItems; // 0x1c40
bool m_bBuybackDisabled; // 0x1c41
private:
[[maybe_unused]] uint8_t __pad1c42[0x6]; // 0x1c42
public:
CUtlVector< CHandle< CDOTA_BaseNPC_Pet > > m_hPets; // 0x1c48
bool m_bPreventPetSpawn; // 0x1c60
private:
[[maybe_unused]] uint8_t __pad1c61[0x7]; // 0x1c61
public:
CDOTAMusicProbabilityEntry m_MusicProbabilityGank; // 0x1c68
private:
[[maybe_unused]] uint8_t __pad1c90[0x28]; // 0x1c90
public:
CUtlString m_strCustomKillEffect; // 0x1cb8
CUtlString m_strCustomHexModel; // 0x1cc0
ParticleIndex_t m_nKillStreakFX; // 0x1cc8
private:
[[maybe_unused]] uint8_t __pad1ccc[0x4]; // 0x1ccc
public:
CUtlVector< CHandle< CBaseEntity > > m_AbilitiesPendingDelete; // 0x1cd0
CUtlVector< sAcquireHistory > m_vecItemPurchaseHistory; // 0x1ce8
CUtlVector< sAcquireHistory > m_vecAbilitySkillHistory; // 0x1d00
CUtlVector< sAcquireHistory > m_vecNeutralItemEquippedHistory; // 0x1d18
private:
[[maybe_unused]] uint8_t __pad1d30[0x18]; // 0x1d30
public:
CUtlVector< CHandle< CDOTA_BaseNPC_Hero > > m_vecExpiredIllusions; // 0x1d48
private:
[[maybe_unused]] uint8_t __pad1d60[0x4]; // 0x1d60
public:
float m_flLastTimeLookedAtByDirector; // 0x1d64
};
// Alignment: 10
// Size: 0x1760
class CDOTA_BaseNPC_Pet : public CDOTA_BaseNPC
{
public:
CHandle< CDOTA_BaseNPC_Hero > m_hHeroHandle; // 0x1730
float m_flPetThreatLevel; // 0x1734
bool m_bReadyToPerformCoopTeleport; // 0x1738
bool m_bSupportsCoopTeleport; // 0x1739
private:
[[maybe_unused]] uint8_t __pad173a[0x2]; // 0x173a
public:
PetCoopStates_t m_nCoopState; // 0x173c
CUtlString m_strPickupItemModel; // 0x1740
CHandle< CDOTA_Pet_CarriedItem > m_hCarriedItem; // 0x1748
int32_t m_nPetLevel; // 0x174c
PetLevelup_Rule_t m_nLevelupRule; // 0x1750
private:
[[maybe_unused]] uint8_t __pad1754[0x4]; // 0x1754
public:
int32_t m_nXPCompendiumEventID; // 0x1758
};
// Alignment: 1
// Size: 0x1840
class CDOTA_BaseNPC_Shop : public CDOTA_BaseNPC_Building
{
public:
// MNetworkEnable
DOTA_SHOP_TYPE m_ShopType; // 0x1838
};
// Alignment: 2
// Size: 0x1868
class CDOTA_BaseNPC_HallofFame : public CDOTA_BaseNPC_Building
{
private:
[[maybe_unused]] uint8_t __pad1838[0x10]; // 0x1838
public:
int32_t m_event_dota_player_team_changed; // 0x1848
private:
[[maybe_unused]] uint8_t __pad184c[0x4]; // 0x184c
public:
CountdownTimer m_glowThinkTimer; // 0x1850
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Promo : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 47
// Size: 0x18b0
class CDOTA_BaseNPC_Creature : public CDOTA_BaseNPC_Creep
{
public:
bool m_bInitialized; // 0x1760
bool m_bCanRespawn; // 0x1761
bool m_bUsesGestureBasedAttackAnimation; // 0x1762
bool m_bIsHybridFlyer; // 0x1763
bool m_bRequiresReachingEndPath; // 0x1764
bool m_bAggroOwnerOnDamage; // 0x1765
bool m_bReceivedAggroOnDamageOrder; // 0x1766
private:
[[maybe_unused]] uint8_t __pad1767[0x1]; // 0x1767
public:
CUtlVector< CreatureStateData_t > m_vCreatureStates; // 0x1768
char* m_pszDefaultState; // 0x1780
char* m_pszCurrentState; // 0x1788
int32_t m_nHPGain; // 0x1790
int32_t m_nManaGain; // 0x1794
float m_flHPRegenGain; // 0x1798
float m_flManaRegenGain; // 0x179c
int32_t m_nDamageGain; // 0x17a0
float m_flArmorGain; // 0x17a4
float m_flMagicResistGain; // 0x17a8
float m_flDisableResistGain; // 0x17ac
float m_flAttackTimeGain; // 0x17b0
int32_t m_nMoveSpeedGain; // 0x17b4
int32_t m_nBountyGain; // 0x17b8
int32_t m_nXPGain; // 0x17bc
int32_t m_nPermanentDesire; // 0x17c0
int32_t m_nCreatureDesire; // 0x17c4
int32_t m_nCurrentCastBehavior; // 0x17c8
bool m_bIsBuildingAggressive; // 0x17cc
bool m_bIsHeroAggressive; // 0x17cd
bool m_bDisableClumpingBehavior; // 0x17ce
private:
[[maybe_unused]] uint8_t __pad17cf[0x1]; // 0x17cf
public:
float m_flDisableResistance; // 0x17d0
float m_flUltimateDisableResistance; // 0x17d4
bool m_bHasOffensiveAbility; // 0x17d8
private:
[[maybe_unused]] uint8_t __pad17d9[0x7]; // 0x17d9
public:
CUtlVector< CreatureAbilityData_t > m_vOffensiveAbilities; // 0x17e0
bool m_bHasDefensiveAbility; // 0x17f8
private:
[[maybe_unused]] uint8_t __pad17f9[0x7]; // 0x17f9
public:
CUtlVector< CreatureAbilityData_t > m_vDefensiveAbilities; // 0x1800
bool m_bHasEscapeAbility; // 0x1818
private:
[[maybe_unused]] uint8_t __pad1819[0x7]; // 0x1819
public:
CUtlVector< CreatureAbilityData_t > m_vEscapeAbilities; // 0x1820
CDOTABaseAbility* m_pLastUsedAbility; // 0x1838
Vector m_vDesiredCastLocation; // 0x1840
private:
[[maybe_unused]] uint8_t __pad184c[0x4]; // 0x184c
public:
CDOTA_BaseNPC* m_pDesiredNPCTarget; // 0x1850
CDOTA_BaseNPC* m_pEscortTarget; // 0x1858
Vector m_vLastDamageSource; // 0x1860
bool m_bIsChampion; // 0x186c
private:
[[maybe_unused]] uint8_t __pad186d[0x3]; // 0x186d
public:
CUtlVector< ItemDropData_t* > m_vItemDropData; // 0x1870
CUtlVector< item_definition_index_t > m_vecAttachWearableItemDefs; // 0x1888
GameTime_t m_flRespawnTime; // 0x18a0
// MNetworkEnable
bool m_bIsCurrentlyChanneling; // 0x18a4
private:
[[maybe_unused]] uint8_t __pad18a5[0x3]; // 0x18a5
public:
// MNetworkEnable
float m_flChannelCycle; // 0x18a8
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_NeutralItemStash : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 2
// Size: 0x18c8
class CDOTA_BaseNPC_Trap_Ward : public CDOTA_BaseNPC_Creature
{
public:
CUtlSymbolLarge m_iszDefaultAnim; // 0x18b0
Vector m_vTrapTargetLocal; // 0x18b8
};
// Alignment: 2
// Size: 0x1840
class CDOTA_BaseNPC_CustomEffigy : public CDOTA_BaseNPC_Building
{
public:
uint32_t m_unStatusEffectIndex; // 0x1838
CHandle< CBaseEntity > m_hPedestal; // 0x183c
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_JungleVarmint : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1840
class CDOTA_Unit_Twin_Gate : public CDOTA_BaseNPC_Building
{
public:
CHandle< CBaseEntity > m_hOtherPortal; // 0x1838
};
// Alignment: 0
// Size: 0x1730
class CIngameEvent_MuertaReleaseSpring2023_DummyModifierHolder : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_DataDriven : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_AghsFort_EarthSpiritBoss_Stone : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1738
class CDOTA_NPC_Aghsfort_WitchDoctor_Ward : public CDOTA_BaseNPC_Additive
{
public:
// MNetworkEnable
int32_t m_nTargetType; // 0x1730
// MNetworkEnable
int32_t m_nTargetFlags; // 0x1734
};
// Alignment: 0
// Size: 0x1730
class CDOTA_AghsFort_Unit_Undying_Tombstone : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1780
class CDOTA_AghsFort_Unit_Undying_Zombie : public CDOTA_BaseNPC_Creep
{
public:
CountdownTimer m_ctRespawn; // 0x1760
CDOTA_BaseNPC* m_pTombstone; // 0x1778
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_AghsFort_Unit_Hero_Undying : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_AghsFort_Lich_Ice_Spire : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_AghsFort_Hero_Phoenix : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1d78
class CDOTA_AghsFort_Unit_ArcWarden_Boss : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nTalkFXIndex; // 0x1d68
ParticleIndex_t m_nFXDeath; // 0x1d6c
ParticleIndex_t m_nTempestFX; // 0x1d70
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Aghsfort_PrimalBeast_Boss : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_AghsFort_Hero_Clinkz : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_AghsFort_Clinkz_Skeleton_Archer : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x18b0
class CDOTA_BaseNPC_AghsFort_Clinkz_Skeleton_Colossus : public CDOTA_BaseNPC_Creature
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_AncientApparition : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_AntiMage : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Bane : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Pudge : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Juggernaut : public CDOTA_BaseNPC_Hero
{
public:
uint32_t m_unOmniKills; // 0x1d68
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Nevermore : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_SandKing : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Mirana : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Sven : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1d98
class CDOTA_Unit_Hero_SkeletonKing : public CDOTA_BaseNPC_Hero
{
public:
int32_t m_nSkeletonWarriors; // 0x1d68
// MNetworkEnable
// MNetworkChangeCallback "OnSKArcanaProgressChanged"
int32_t m_vecInitialHeroKillBitmask[5]; // 0x1d6c
// MNetworkEnable
// MNetworkChangeCallback "OnSKArcanaProgressChanged"
int32_t m_vecInGameHeroKillBitmask[5]; // 0x1d80
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_StormSpirit : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_DrowRanger : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Earthshaker : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_VengefulSpirit : public CDOTA_BaseNPC_Hero
{
public:
bool m_bArcanaEquipped; // 0x1d68
};
// Alignment: 2
// Size: 0x1d70
class CDOTA_Unit_Hero_CrystalMaiden : public CDOTA_BaseNPC_Hero
{
public:
int32_t m_iParticleMouthIndex; // 0x1d68
int32_t m_iParticleHandRIndex; // 0x1d6c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Axe : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Bloodseeker : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_PhantomLancer : public CDOTA_BaseNPC_Hero
{
public:
bool m_bInventoryEnabled; // 0x1d68
};
// Alignment: 2
// Size: 0x1d70
class CDOTA_Unit_Hero_Razor : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_nTargetAngle; // 0x1d68
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_nTargetRange; // 0x1d6c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Lina : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Morphling : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_ZeusCloud : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Zuus : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Kunkka : public CDOTA_BaseNPC_Hero
{
public:
int32_t m_nFXIndex; // 0x1d68
};
// Alignment: 4
// Size: 0x1d78
class CDOTA_Unit_Hero_Tiny : public CDOTA_BaseNPC_Hero
{
public:
CHandle< CBaseEntity > m_hTreeWearable; // 0x1d68
ParticleIndex_t m_nFXIndexScepterAmbient; // 0x1d6c
// MNetworkEnable
CHandle< CDOTA_BaseNPC > m_hIllusionOwner; // 0x1d70
// MNetworkEnable
bool m_bIllusionHasTree; // 0x1d74
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Puck : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1d70
class CDOTA_Unit_Hero_Windrunner : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
// MNetworkPriority "32"
int32_t m_nTargetAngle; // 0x1d68
ParticleIndex_t m_nFXDeath; // 0x1d6c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Lich : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_Lich_Ice_Spire : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Tidehunter : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1740
class CDOTA_BaseNPC_ShadowShaman_SerpentWard : public CDOTA_BaseNPC_Additive
{
public:
QAngle m_angle; // 0x1730
int32_t m_iPoseParameterAim; // 0x173c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_ShadowShaman : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Riki : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Enigma : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Tinker : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_WitchDoctor : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1738
class CDOTA_NPC_WitchDoctor_Ward : public CDOTA_BaseNPC_Additive
{
public:
// MNetworkEnable
int32_t m_nTargetType; // 0x1730
// MNetworkEnable
int32_t m_nTargetFlags; // 0x1734
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Sniper : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d70
class CDOTA_Unit_Hero_Necrolyte : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Slardar : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Ursa : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Lion : public CDOTA_BaseNPC_Hero
{
public:
uint32_t m_unFingerPrestigeKills; // 0x1d68
};
// Alignment: 1
// Size: 0x1738
class CDOTA_Unit_Announcer : public CDOTA_BaseNPC
{
public:
int32_t m_iAudienceTeam; // 0x1730
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_CustomGameAnnouncer : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 10
// Size: 0x1768
class CDOTA_Unit_Courier : public CDOTA_BaseNPC_Additive
{
public:
bool m_bUnitRespawned; // 0x1730
bool m_bPreUpdateFlyingCourier; // 0x1731
private:
[[maybe_unused]] uint8_t __pad1732[0x2]; // 0x1732
public:
// MNetworkEnable
PlayerID_t m_nSoleControllingPlayer; // 0x1734
// MNetworkEnable
bool m_bFlyingCourier; // 0x1738
private:
[[maybe_unused]] uint8_t __pad1739[0x3]; // 0x1739
public:
// MNetworkEnable
GameTime_t m_flRespawnTime; // 0x173c
// MNetworkEnable
CourierState_t m_nCourierState; // 0x1740
// MNetworkEnable
CHandle< CBaseEntity > m_hCourierStateEntity; // 0x1744
CUtlString m_strCourierModel; // 0x1748
CUtlString m_strFlyingCourierModel; // 0x1750
Vector m_vSpawnLocation; // 0x1758
};
// Alignment: 7
// Size: 0x1760
class CDOTA_Unit_Scout : public CDOTA_BaseNPC_Additive
{
public:
bool m_bUnitRespawned; // 0x1730
private:
[[maybe_unused]] uint8_t __pad1731[0x3]; // 0x1731
public:
// MNetworkEnable
PlayerID_t m_nSoleControllingPlayer; // 0x1734
// MNetworkEnable
GameTime_t m_flRespawnTime; // 0x1738
// MNetworkEnable
ScoutState_t m_nScoutState; // 0x173c
// MNetworkEnable
CHandle< CBaseEntity > m_hScoutStateEntity; // 0x1740
private:
[[maybe_unused]] uint8_t __pad1744[0x4]; // 0x1744
public:
CUtlString m_strScoutModel; // 0x1748
Vector m_vSpawnLocation; // 0x1750
};
// Alignment: 0
// Size: 0x1838
class CDOTA_Unit_Fountain : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1758
class CDOTA_Unit_Roshan : public CDOTA_BaseNPC_Additive
{
public:
int32_t m_iLastHealthPercent; // 0x1730
ParticleIndex_t m_nFXIndex; // 0x1734
CUtlVector< CHandle< CBaseEntity > > m_hAttackingHeroes; // 0x1738
// MNetworkEnable
bool m_bGoldenRoshan; // 0x1750
bool m_bIsNightTimeMode; // 0x1751
};
// Alignment: 3
// Size: 0x1750
class CDOTA_Unit_Miniboss : public CDOTA_BaseNPC_Additive
{
public:
// MNetworkEnable
int32_t m_nTimesSpawned; // 0x1730
int32_t m_nTempViewer; // 0x1734
CUtlVector< CHandle< CBaseEntity > > m_hAttackingHeroes; // 0x1738
};
// Alignment: 3
// Size: 0x1750
class CDOTA_Unit_Nian_Attachment : public CDOTA_BaseNPC_Additive
{
public:
bool m_bAttachmentBroken; // 0x1730
private:
[[maybe_unused]] uint8_t __pad1731[0x3]; // 0x1731
public:
ParticleIndex_t m_nfxIndex_tailgrow; // 0x1734
CUtlVector< NianDamageTaken_t > m_vecRecentDamage; // 0x1738
};
// Alignment: 3
// Size: 0x18d0
class CDOTA_Unit_Nian : public CDOTA_BaseNPC_Creature
{
public:
CUtlVector< NianDamageTaken_t > m_vecRecentDamage; // 0x18b0
CHandle< CBaseEntity > m_hTail; // 0x18c8
CHandle< CBaseEntity > m_hHorn; // 0x18cc
};
// Alignment: 0
// Size: 0x1760
class CDOTA_BaseNPC_Warlock_Golem : public CDOTA_BaseNPC_Creep
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Warlock : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CODTA_Unit_Warlock_Imp : public CDOTA_BaseNPC_Creep
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Beastmaster : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CDOTA_Unit_Hero_Beastmaster_Beasts : public CDOTA_BaseNPC_Creep_Talking
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CDOTA_Unit_Hero_Beastmaster_Hawk : public CDOTA_Unit_Hero_Beastmaster_Beasts
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CDOTA_Unit_Hero_Beastmaster_Boar : public CDOTA_Unit_Hero_Beastmaster_Beasts
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_QueenOfPain : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1740
class CDOTA_BaseNPC_Venomancer_PlagueWard : public CDOTA_BaseNPC_Additive
{
public:
QAngle m_angle; // 0x1730
int32_t m_iPoseParameterAim; // 0x173c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Venomancer : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d78
class CDOTA_Unit_Hero_FacelessVoid : public CDOTA_BaseNPC_Hero
{
public:
Vector m_vecStanceDestinationPoint; // 0x1d68
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_DeathProphet : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Pugna : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1d70
class CDOTA_Unit_Hero_PhantomAssassin : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
// MNetworkEnable
uint32_t m_nArcanaLevel; // 0x1d6c
};
// Alignment: 1
// Size: 0x1738
class CDOTA_BaseNPC_Phantom_Assassin_GroundDagger : public CDOTA_BaseNPC_Additive
{
public:
ParticleIndex_t m_nFXIndex; // 0x1730
// Static fields:
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: 0x1738
class CDOTA_PhantomAssassin_Gravestone : public CDOTA_BaseNPC_Additive
{
public:
PlayerID_t m_nVictimPlayerID; // 0x1730
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_TemplarAssassin : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_TemplarAssassin_PsionicTrap : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Viper : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1d80
class CDOTA_Unit_TargetDummy : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
float m_flDamageTaken; // 0x1d68
// MNetworkEnable
float m_flLastHit; // 0x1d6c
// MNetworkEnable
GameTime_t m_flStartDamageTime; // 0x1d70
// MNetworkEnable
GameTime_t m_flLastDamageTime; // 0x1d74
bool m_bIsMoving; // 0x1d78
};
// Alignment: 2
// Size: 0x1838
class CDOTA_Unit_LoopingSound : public CDOTA_BaseNPC_Additive
{
public:
// MNetworkEnable
char m_pszNetworkedSoundLoop[256]; // 0x1730
// MNetworkEnable
int32_t m_nLoopingSoundParity; // 0x1830
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Luna : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_DragonKnight : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Dazzle : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Leshrac : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Rattletrap : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_Rattletrap_Cog : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Furion : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Life_Stealer : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_DarkSeer : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nNormalPunchBuffIndex; // 0x1d68
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Clinkz_Skeleton_Army : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Clinkz : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Omniknight : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Enchantress : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Huskar : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_NightStalker : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Broodmother : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CDOTA_Unit_Broodmother_Spiderling : public CDOTA_BaseNPC_Creep_Talking
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1740
class CDOTA_Unit_Broodmother_Web : public CDOTA_BaseNPC_Additive
{
public:
ParticleIndex_t m_nFXIndex; // 0x1730
Vector m_vecOrigin; // 0x1734
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_BroodmotherStickyWeb : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_BountyHunter : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Weaver : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Jakiro : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Batrider : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Chen : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1d78
class CDOTA_Unit_Hero_Spectre : public CDOTA_BaseNPC_Hero
{
public:
bool m_bArcanaKillstreakCompleted; // 0x1d68
// MNetworkEnable
// MNetworkChangeCallback "OnSpectreArcanaProgressChanged"
uint8_t m_unCurrentArcanaKillStreak; // 0x1d69
// MNetworkEnable
// MNetworkChangeCallback "OnSpectreArcanaProgressChanged"
uint8_t m_unBestArcanaKillStreak; // 0x1d6a
private:
[[maybe_unused]] uint8_t __pad1d6b[0x1]; // 0x1d6b
public:
// MNetworkEnable
// MNetworkChangeCallback "OnSpectreArcanaProgressChanged"
PlayerID_t m_nVictimPlayerID; // 0x1d6c
// MNetworkEnable
// MNetworkChangeCallback "OnSpectreArcanaProgressChanged"
bool m_bArcanaKillstreakRecordBroken; // 0x1d70
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_DoomBringer : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_SpiritBreaker : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Gyrocopter : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Alchemist : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Invoker : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1760
class CDOTA_BaseNPC_Invoker_Forged_Spirit : public CDOTA_BaseNPC_Creep
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Silencer : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Obsidian_Destroyer : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Brewmaster : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1768
class CDOTA_Unit_Brewmaster_PrimalEarth : public CDOTA_BaseNPC_Creep
{
public:
ParticleIndex_t m_nFXEarthAmbient1; // 0x1760
ParticleIndex_t m_nFXEarthAmbient2; // 0x1764
};
// Alignment: 2
// Size: 0x1768
class CDOTA_Unit_Brewmaster_PrimalStorm : public CDOTA_BaseNPC_Creep
{
public:
ParticleIndex_t m_nFXStormAmbient1; // 0x1760
ParticleIndex_t m_nFXStormAmbient2; // 0x1764
};
// Alignment: 1
// Size: 0x1768
class CDOTA_Unit_Brewmaster_PrimalFire : public CDOTA_BaseNPC_Creep
{
public:
ParticleIndex_t m_nFXAmbient; // 0x1760
};
// Alignment: 1
// Size: 0x1768
class CDOTA_Unit_Brewmaster_PrimalVoid : public CDOTA_BaseNPC_Creep
{
public:
ParticleIndex_t m_nFXAmbient; // 0x1760
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Lycan : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Shadow_Demon : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1738
class CDOTA_Unit_SpiritBear : public CDOTA_BaseNPC_Additive
{
public:
// MNetworkEnable
bool m_bShouldRespawn; // 0x1730
// MNetworkEnable
bool m_bStolen; // 0x1731
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_LoneDruid : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_ChaosKnight : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Meepo : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
int32_t m_nWhichMeepo; // 0x1d68
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Treant : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1738
class CDOTA_NPC_Treant_EyesInTheForest : public CDOTA_BaseNPC_Additive
{
public:
bool m_bIsBlind; // 0x1730
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Ogre_Magi : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_Undying_Tombstone : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1780
class CDOTA_Unit_Undying_Zombie : public CDOTA_BaseNPC_Creep
{
public:
CountdownTimer m_ctRespawn; // 0x1760
CDOTA_BaseNPC* m_pTombstone; // 0x1778
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Undying : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 4
// Size: 0x1d90
class CDOTA_Unit_Hero_Rubick : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
// MNetworkChangeCallback "OnAbilityColorChanged"
Vector m_stolenAbilityColorHSV1; // 0x1d68
// MNetworkEnable
// MNetworkChangeCallback "OnAbilityColorChanged"
Vector m_stolenAbilityColorHSV2; // 0x1d74
// MNetworkEnable
// MNetworkChangeCallback "OnAbilityColorChanged"
Vector m_stolenAbilityFXColorHSV; // 0x1d80
// MNetworkDisable
bool m_bHasInitializedAbilityColors; // 0x1d8c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Disruptor : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Nyx_Assassin : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Naga_Siren : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_IngisFatuus : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_KeeperOfTheLight : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 8
// Size: 0x1d80
class CDOTA_Unit_Hero_Wisp : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nAmbientFXIndex; // 0x1d68
ParticleIndex_t m_nStunnedFXIndex; // 0x1d6c
ParticleIndex_t m_nTalkFXIndex; // 0x1d70
ParticleIndex_t m_nIllusionFXIndex; // 0x1d74
bool m_bParticleHexed; // 0x1d78
bool m_bParticleStunned; // 0x1d79
bool m_bDetermineAmbientEffect; // 0x1d7a
private:
[[maybe_unused]] uint8_t __pad1d7b[0x1]; // 0x1d7b
public:
float m_flPrevHealth; // 0x1d7c
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Wisp_Spirit : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Visage : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1780
class CDOTA_Unit_VisageFamiliar : public CDOTA_BaseNPC_Creep
{
public:
CountdownTimer ctTimer; // 0x1760
ParticleIndex_t m_nFXAmbient; // 0x1778
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Slark : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Medusa : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_TrollWarlord : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Centaur : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Magnataur : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Shredder : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Bristleback : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Tusk : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Tusk_Sigil : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Skywrath_Mage : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Abaddon : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_Elder_Titan_AncestralSpirit : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Elder_Titan : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Legion_Commander : public CDOTA_BaseNPC_Hero
{
public:
uint32_t m_unDuelsWon; // 0x1d68
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Techies : public CDOTA_BaseNPC_Hero
{
public:
bool m_bLastDeathFromSuicide; // 0x1d68
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_TechiesMines : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_NPC_Techies_Minefield_Sign : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_EmberSpirit : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_Earth_Spirit_Stone : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_EarthSpirit : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_AbyssalUnderlord : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1840
class CDOTA_Unit_Underlord_Portal : public CDOTA_BaseNPC_Building
{
public:
CHandle< CBaseEntity > m_hOtherPortal; // 0x1838
};
// Alignment: 3
// Size: 0x1d80
class CDOTA_Unit_Hero_Terrorblade : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
private:
[[maybe_unused]] uint8_t __pad1d6c[0x4]; // 0x1d6c
public:
CUtlString m_szResponseCriteria; // 0x1d70
// MNetworkEnable
uint32_t m_nArcanaColor; // 0x1d78
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Phoenix : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Oracle : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Winter_Wyvern : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 3
// Size: 0x1d78
class CDOTA_Unit_Hero_ArcWarden : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nTalkFXIndex; // 0x1d68
ParticleIndex_t m_nFXDeath; // 0x1d6c
ParticleIndex_t m_nTempestFX; // 0x1d70
};
// Alignment: 8
// Size: 0x1d90
class CDOTA_Unit_Hero_MonkeyKing : public CDOTA_BaseNPC_Hero
{
public:
bool mb_MonkeyHasArcana; // 0x1d68
private:
[[maybe_unused]] uint8_t __pad1d69[0x3]; // 0x1d69
public:
// MNetworkEnable
uint32_t m_nTreeDisguise; // 0x1d6c
// MNetworkEnable
uint32_t m_nPerchedTree; // 0x1d70
Vector m_vLastPos; // 0x1d74
bool m_bIsOnCloud; // 0x1d80
private:
[[maybe_unused]] uint8_t __pad1d81[0x3]; // 0x1d81
public:
float m_fTotalDistOnCloud; // 0x1d84
float m_fTotalDistoffCloud; // 0x1d88
float m_fBackOnCloudThresh; // 0x1d8c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Pangolier : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_DarkWillow : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_DarkWillow_Creature : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Grimstroke : public CDOTA_BaseNPC_Hero
{
public:
ParticleIndex_t m_nFXDeath; // 0x1d68
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_Grimstroke_InkCreature : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Mars : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Snapfire : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Void_Spirit : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Hoodwink : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 2
// Size: 0x1d70
class CDOTA_Unit_Hero_Dawnbreaker : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
int32_t m_nAttackState; // 0x1d68
GameTime_t m_flLastAttackAnimAdvanceTime; // 0x1d6c
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_Marci : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1d68
class CDOTA_Unit_Hero_PrimalBeast : public CDOTA_BaseNPC_Hero
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1d70
class CDOTA_Unit_Hero_Muerta : public CDOTA_BaseNPC_Hero
{
public:
// MNetworkEnable
// MNetworkPriority "32"
CHandle< CBaseEntity > m_hDoubleShotTarget; // 0x1d68
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Muerta_Revenant : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 3
// Size: 0x1740
class CDOTA_NPC_Observer_Ward : public CDOTA_BaseNPC_Additive
{
public:
int32_t m_iDuration; // 0x1730
bool m_bPlacedInSpawnBox; // 0x1734
private:
[[maybe_unused]] uint8_t __pad1735[0x3]; // 0x1735
public:
GameTime_t m_flSpawnTime; // 0x1738
};
// Alignment: 3
// Size: 0x1750
class CDOTA_NPC_Observer_Ward_TrueSight : public CDOTA_NPC_Observer_Ward
{
public:
int32_t m_iTrueSight; // 0x1740
CEntityHandle m_hCasterEntity; // 0x1744
CEntityHandle m_hAbilityEntity; // 0x1748
};
// Alignment: 2
// Size: 0x1738
class CDOTA_BaseNPC_Thinker : public CDOTA_BaseNPC
{
public:
bool m_bSendToAllPlayers; // 0x1730
bool m_bSendToClients; // 0x1731
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_Snowman : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_Penguin : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_Dragon : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_CNY_Balloon : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_TI9_Balloon : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_TI9_Drums : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_TI9_Monkey : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Frostivus2018_Snowman : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Frostivus2018_Clinkz_Skeleton_Army : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_SpectralTusk_Tombstone : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_AghsFort_SpectralTusk_Tombstone : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x18b0
class CDOTA_Unit_AghsFort_Creature_DragonKnight : public CDOTA_BaseNPC_Creature
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1738
class CDOTA_Unit_Aghsfort_Aziyog_Underlord_Portal : public CDOTA_BaseNPC_Additive
{
public:
CHandle< CBaseEntity > m_hOtherPortal; // 0x1730
};
// Alignment: 1
// Size: 0x18b8
class CDOTA_Unit_AghsFort_Creature_DungeonBat : public CDOTA_BaseNPC_Creature
{
public:
ParticleIndex_t m_nFXAmbient; // 0x18b0
};
// Alignment: 0
// Size: 0x18b0
class CDOTA_Unit_AghsFort_Creature_Batrider : public CDOTA_BaseNPC_Creature
{
public:
// No members available
};
// Alignment: 1
// Size: 0x1840
class CDOTA_BaseNPC_Effigy_AghsFort : public CDOTA_BaseNPC_Building
{
public:
uint32_t m_unStatusEffectIndex; // 0x1838
};
// Alignment: 17
// Size: 0x18a8
class CDOTA_BaseNPC_AghsFort_Watch_Tower : public CDOTA_BaseNPC_Building
{
private:
[[maybe_unused]] uint8_t __pad1838[0x10]; // 0x1838
public:
int32_t m_nOptionNumber; // 0x1848
float m_flMovePlayersRadius; // 0x184c
CDOTA_BaseNPC_AghsFort_Watch_Tower::ExitDirection_t m_nExitDirection; // 0x1850
Vector m_vExitLocation; // 0x1854
int32_t m_nPathSelectedID; // 0x1860
// MNetworkEnable
int32_t m_nEncounterType; // 0x1864
// MNetworkEnable
bool m_bIsEliteEncounter; // 0x1868
// MNetworkEnable
bool m_bIsAscensionLevelPicker; // 0x1869
private:
[[maybe_unused]] uint8_t __pad186a[0x6]; // 0x186a
public:
// MNetworkEnable
CUtlSymbolLarge m_strEncounterName; // 0x1870
// MNetworkEnable
CUtlSymbolLarge m_strAscensionAbilities; // 0x1878
// MNetworkEnable
CHandle< CBaseEntity > m_hEffigy; // 0x1880
int32_t m_nDepth; // 0x1884
CHandle< CDOTA_BaseNPC_Effigy_AghsFort > m_hPedestal; // 0x1888
CHandle< CBaseEntity > m_hParticleSystem; // 0x188c
private:
[[maybe_unused]] uint8_t __pad1890[0x8]; // 0x1890
public:
// MNetworkEnable
CHandle< CBaseAnimatingActivity > m_hRoomGate; // 0x1898
// MNetworkEnable
bool m_bIsBeingChanneled; // 0x189c
private:
[[maybe_unused]] uint8_t __pad189d[0x3]; // 0x189d
public:
// MNetworkEnable
float m_flGoalCaptureProgress; // 0x18a0
};
// Alignment: 0
// Size: 0x1730
class CDOTA_Unit_CustomGameAnnouncerAghanim : public CDOTA_BaseNPC
{
public:
// No members available
};
// Alignment: 7
// Size: 0x18c8
class CDOTA_Creature_Jungle_Spirit : public CDOTA_BaseNPC_Creature
{
public:
int32_t m_iCurrentXP; // 0x18b0
float m_fInitialScaleGain; // 0x18b4
float m_fScaleGainMultiplierPerLevel; // 0x18b8
float m_fLastModelScaleGained; // 0x18bc
bool m_bGainedSecondPlatemail; // 0x18c0
bool m_bGainedBonusHealth; // 0x18c1
private:
[[maybe_unused]] uint8_t __pad18c2[0x2]; // 0x18c2
public:
ParticleIndex_t m_nAmbientFXIndex; // 0x18c4
};
// Alignment: 3
// Size: 0x1768
class CDOTA_BaseNPC_Seasonal_TI10_DiscoBall : public CDOTA_BaseNPC_Additive
{
public:
int32_t NUM_SOUNDS; // 0x1730
ParticleIndex_t m_nFXIndex; // 0x1734
CUtlVector< PlayerID_t > m_vecDancers; // 0x1738
// Static fields:
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: 0x1730
class CDOTA_BaseNPC_Seasonal_TI10_SoccerBall : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_TI11_Balloon : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Seasonal_TI11_Balloon_Dire : public CDOTA_BaseNPC_Seasonal_TI11_Balloon
{
public:
// No members available
};
// Alignment: 5
// Size: 0x1850
class CDOTA_Unit_Diretide_Portal : public CDOTA_BaseNPC_Building
{
public:
CHandle< CBaseEntity > m_hPartnerPortal; // 0x1838
int32_t m_nRuneType; // 0x183c
int32_t m_nOriginalTeamNumber; // 0x1840
ParticleIndex_t m_nActiveFXIndex; // 0x1844
ParticleIndex_t m_nRuneFXIndex; // 0x1848
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Spring2021_DefusalBomb : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Spring2021_MeteorCrashSite : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1730
class CDOTA_BaseNPC_Spring2021_AbilityBuilding : public CDOTA_BaseNPC_Additive
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CDOTA_BaseNPC_Winter2022_CandyBucket : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x18b0
class CDOTA_BaseNPC_Winter2022_FeedableRoshan : public CDOTA_BaseNPC_Creature
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1838
class CInfoOfrendaStatue : public CDOTA_BaseNPC_Building
{
public:
// No members available
};
// Alignment: 0
// Size: 0x1738
class CDOTA_Unit_Announcer_Killing_Spree : public CDOTA_Unit_Announcer
{
public:
// No members available
};