I have a nostalgia for classic WoW, so i decided to write a bot for this version
Some functions:
Code:
FrameScript__GetText = 0x703BF0,
CGGameUI__Target = 0x489A40,
FrameScript_SignalEvent = 0x703E50,
FrameScript_SignalEvent2 = 0x703F50,
ItemWDBCacheGetRow = 0x55BA30,
CallAutoLoot = 0x4C1FA0,
CGGameUI__DisplayError = 0x496720,
CGWorldFrame__GetActiveCamera = 0x4818F0
Offsets
Code:
CastingSpellId = 0xCECA88,
LastHardwareAction = 0xCF0BC8,
ContinentID = 0x86F694,
ClientServiceConnection = 0xB41DA0,
EquippedBagGUID = 0xBDD060,
ChatBase = 0xB50580,
NextMessage = 0x800,
UIFrame
Code:
internal enum UIFrame
{
CurrentFramePtr = 0xCF0BD8,
CurrentFrameOffset = 0x7C,
FirstFrame = 0xCC4,
NextFrame = 0xCBC,
UnkDivWidth = 0x832A44,
UnkDivHeight = UnkDivWidth + 0x4,
FrameBottom = 0x64,
FrameLeft = FrameBottom + 0x4,
FrameTop = FrameBottom + 0x8,
FrameRight = FrameBottom + 0xC,
ParentPtr = 0x9C,
EffectiveScale = 0x7C,
Name = 0x98,
LabelText = 0xF0,
EditBoxText = 0x338,
Visible = 0xD4,
Enabled = 0x328,
EnabledMask = 0x20,
ButtonChecked = 0x4DC,
}
Descriptors:
Code:
internal enum UnitFields
{
UNIT_FIELD_CHARM = ObjectFields.OBJECT_END + 0x0,
UNIT_FIELD_SUMMON = ObjectFields.OBJECT_END + 0x8,
UNIT_FIELD_CHARMEDBY = ObjectFields.OBJECT_END + 0x10,
UNIT_FIELD_SUMMONEDBY = ObjectFields.OBJECT_END + 0x18,
UNIT_FIELD_CREATEDBY = ObjectFields.OBJECT_END + 0x20,
UNIT_FIELD_TARGET = ObjectFields.OBJECT_END + 0x28,
UNIT_FIELD_PERSUADED = ObjectFields.OBJECT_END + 0x30,
UNIT_FIELD_CHANNEL_OBJECT = ObjectFields.OBJECT_END + 0x38,
UNIT_FIELD_HEALTH = ObjectFields.OBJECT_END + 0x40,
UNIT_FIELD_POWER1 = ObjectFields.OBJECT_END + 0x44,
UNIT_FIELD_POWER2 = ObjectFields.OBJECT_END + 0x48,
UNIT_FIELD_POWER3 = ObjectFields.OBJECT_END + 0x4C,
UNIT_FIELD_POWER4 = ObjectFields.OBJECT_END + 0x50,
UNIT_FIELD_POWER5 = ObjectFields.OBJECT_END + 0x54,
UNIT_FIELD_MAXHEALTH = ObjectFields.OBJECT_END + 0x58,
UNIT_FIELD_MAXPOWER1 = ObjectFields.OBJECT_END + 0x5C,
UNIT_FIELD_MAXPOWER2 = ObjectFields.OBJECT_END + 0x60,
UNIT_FIELD_MAXPOWER3 = ObjectFields.OBJECT_END + 0x64,
UNIT_FIELD_MAXPOWER4 = ObjectFields.OBJECT_END + 0x68,
UNIT_FIELD_MAXPOWER5 = ObjectFields.OBJECT_END + 0x6C,
UNIT_FIELD_LEVEL = ObjectFields.OBJECT_END + 0x70,
UNIT_FIELD_FACTIONTEMPLATE = ObjectFields.OBJECT_END + 0x74,
UNIT_FIELD_BYTES_0 = ObjectFields.OBJECT_END + 0x78,
UNIT_VIRTUAL_ITEM_SLOT_DISPLAY = ObjectFields.OBJECT_END + 0x7C,
UNIT_VIRTUAL_ITEM_INFO = ObjectFields.OBJECT_END + 0x88,
UNIT_FIELD_FLAGS = ObjectFields.OBJECT_END + 0xA0,
UNIT_FIELD_AURA = ObjectFields.OBJECT_END + 0xA4,
UNIT_FIELD_AURAFLAGS = ObjectFields.OBJECT_END + 0x164,
UNIT_FIELD_AURALEVELS = ObjectFields.OBJECT_END + 0x17C,
UNIT_FIELD_AURAAPPLICATIONS = ObjectFields.OBJECT_END + 0x1AC,
UNIT_FIELD_AURASTATE = ObjectFields.OBJECT_END + 0x1DC,
UNIT_FIELD_BASEATTACKTIME = ObjectFields.OBJECT_END + 0x1E0,
UNIT_FIELD_RANGEDATTACKTIME = ObjectFields.OBJECT_END + 0x1E8,
UNIT_FIELD_BOUNDINGRADIUS = ObjectFields.OBJECT_END + 0x1EC,
UNIT_FIELD_COMBATREACH = ObjectFields.OBJECT_END + 0x1F0,
UNIT_FIELD_DISPLAYID = ObjectFields.OBJECT_END + 0x1F4,
UNIT_FIELD_NATIVEDISPLAYID = ObjectFields.OBJECT_END + 0x1F8,
UNIT_FIELD_MOUNTDISPLAYID = ObjectFields.OBJECT_END + 0x1FC,
UNIT_FIELD_MINDAMAGE = ObjectFields.OBJECT_END + 0x200,
UNIT_FIELD_MAXDAMAGE = ObjectFields.OBJECT_END + 0x204,
UNIT_FIELD_MINOFFHANDDAMAGE = ObjectFields.OBJECT_END + 0x208,
UNIT_FIELD_MAXOFFHANDDAMAGE = ObjectFields.OBJECT_END + 0x20C,
UNIT_FIELD_BYTES_1 = ObjectFields.OBJECT_END + 0x210,
UNIT_FIELD_PETNUMBER = ObjectFields.OBJECT_END + 0x214,
UNIT_FIELD_PET_NAME_TIMESTAMP = ObjectFields.OBJECT_END + 0x218,
UNIT_FIELD_PETEXPERIENCE = ObjectFields.OBJECT_END + 0x21C,
UNIT_FIELD_PETNEXTLEVELEXP = ObjectFields.OBJECT_END + 0x220,
UNIT_DYNAMIC_FLAGS = ObjectFields.OBJECT_END + 0x224,
UNIT_CHANNEL_SPELL = ObjectFields.OBJECT_END + 0x228,
UNIT_MOD_CAST_SPEED = ObjectFields.OBJECT_END + 0x22C,
UNIT_CREATED_BY_SPELL = ObjectFields.OBJECT_END + 0x230,
UNIT_NPC_FLAGS = ObjectFields.OBJECT_END + 0x234,
UNIT_NPC_EMOTESTATE = ObjectFields.OBJECT_END + 0x238,
UNIT_TRAINING_POINTS = ObjectFields.OBJECT_END + 0x23C,
UNIT_FIELD_STAT0 = ObjectFields.OBJECT_END + 0x240,
UNIT_FIELD_STAT1 = ObjectFields.OBJECT_END + 0x244,
UNIT_FIELD_STAT2 = ObjectFields.OBJECT_END + 0x248,
UNIT_FIELD_STAT3 = ObjectFields.OBJECT_END + 0x24C,
UNIT_FIELD_STAT4 = ObjectFields.OBJECT_END + 0x250,
UNIT_FIELD_RESISTANCES = ObjectFields.OBJECT_END + 0x254,
UNIT_FIELD_BASE_MANA = ObjectFields.OBJECT_END + 0x270,
UNIT_FIELD_BASE_HEALTH = ObjectFields.OBJECT_END + 0x274,
UNIT_FIELD_BYTES_2 = ObjectFields.OBJECT_END + 0x278,
UNIT_FIELD_ATTACK_POWER = ObjectFields.OBJECT_END + 0x27C,
UNIT_FIELD_ATTACK_POWER_MODS = ObjectFields.OBJECT_END + 0x280,
UNIT_FIELD_ATTACK_POWER_MULTIPLIER = ObjectFields.OBJECT_END + 0x284,
UNIT_FIELD_RANGED_ATTACK_POWER = ObjectFields.OBJECT_END + 0x288,
UNIT_FIELD_RANGED_ATTACK_POWER_MODS = ObjectFields.OBJECT_END + 0x28C,
UNIT_FIELD_RANGED_ATTACK_POWER_MULTIPLIER = ObjectFields.OBJECT_END + 0x290,
UNIT_FIELD_MINRANGEDDAMAGE = ObjectFields.OBJECT_END + 0x294,
UNIT_FIELD_MAXRANGEDDAMAGE = ObjectFields.OBJECT_END + 0x298,
UNIT_FIELD_POWER_COST_MODIFIER = ObjectFields.OBJECT_END + 0x29C,
UNIT_FIELD_POWER_COST_MULTIPLIER = ObjectFields.OBJECT_END + 0x2B8,
UNIT_FIELD_PADDING = ObjectFields.OBJECT_END + 0x2D4,
UNIT_END = ObjectFields.OBJECT_END + 0x2D8
}
internal enum ItemFields
{
ITEM_FIELD_OWNER = ObjectFields.OBJECT_END + 0x0,
ITEM_FIELD_CONTAINED = ObjectFields.OBJECT_END + 0x8,
ITEM_FIELD_CREATOR = ObjectFields.OBJECT_END + 0x10,
ITEM_FIELD_GIFTCREATOR = ObjectFields.OBJECT_END + 0x18,
ITEM_FIELD_STACK_COUNT = ObjectFields.OBJECT_END + 0x20,
ITEM_FIELD_DURATION = ObjectFields.OBJECT_END + 0x24,
ITEM_FIELD_SPELL_CHARGES = ObjectFields.OBJECT_END + 0x28,
ITEM_FIELD_FLAGS = ObjectFields.OBJECT_END + 0x3C,
ITEM_FIELD_ENCHANTMENT = ObjectFields.OBJECT_END + 0x40,
ITEM_FIELD_PROPERTY_SEED = ObjectFields.OBJECT_END + 0x94,
ITEM_FIELD_RANDOM_PROPERTIES_ID = ObjectFields.OBJECT_END + 0x98,
ITEM_FIELD_ITEM_TEXT_ID = ObjectFields.OBJECT_END + 0x9C,
ITEM_FIELD_DURABILITY = ObjectFields.OBJECT_END + 0xA0,
ITEM_FIELD_MAXDURABILITY = ObjectFields.OBJECT_END + 0xA4,
ITEM_END = ObjectFields.OBJECT_END + 0xA8
}
internal enum PlayerFields
{
PLAYER_DUEL_ARBITER = UnitFields.UNIT_END + 0x0,
PLAYER_FLAGS = UnitFields.UNIT_END + 0x8,
PLAYER_GUILDID = UnitFields.UNIT_END + 0xC,
PLAYER_GUILDRANK = UnitFields.UNIT_END + 0x10,
PLAYER_BYTES = UnitFields.UNIT_END + 0x14,
PLAYER_BYTES_2 = UnitFields.UNIT_END + 0x18,
PLAYER_BYTES_3 = UnitFields.UNIT_END + 0x1C,
PLAYER_DUEL_TEAM = UnitFields.UNIT_END + 0x20,
PLAYER_GUILD_TIMESTAMP = UnitFields.UNIT_END + 0x24,
PLAYER_QUEST_LOG_1_1 = UnitFields.UNIT_END + 0x28,
PLAYER_QUEST_LOG_1_2 = UnitFields.UNIT_END + 0x2C,
PLAYER_QUEST_LOG_2_1 = UnitFields.UNIT_END + 0x34,
PLAYER_QUEST_LOG_2_2 = UnitFields.UNIT_END + 0x38,
PLAYER_QUEST_LOG_3_1 = UnitFields.UNIT_END + 0x40,
PLAYER_QUEST_LOG_3_2 = UnitFields.UNIT_END + 0x44,
PLAYER_QUEST_LOG_4_1 = UnitFields.UNIT_END + 0x4C,
PLAYER_QUEST_LOG_4_2 = UnitFields.UNIT_END + 0x50,
PLAYER_QUEST_LOG_5_1 = UnitFields.UNIT_END + 0x58,
PLAYER_QUEST_LOG_5_2 = UnitFields.UNIT_END + 0x5C,
PLAYER_QUEST_LOG_6_1 = UnitFields.UNIT_END + 0x64,
PLAYER_QUEST_LOG_6_2 = UnitFields.UNIT_END + 0x68,
PLAYER_QUEST_LOG_7_1 = UnitFields.UNIT_END + 0x70,
PLAYER_QUEST_LOG_7_2 = UnitFields.UNIT_END + 0x74,
PLAYER_QUEST_LOG_8_1 = UnitFields.UNIT_END + 0x7C,
PLAYER_QUEST_LOG_8_2 = UnitFields.UNIT_END + 0x80,
PLAYER_QUEST_LOG_9_1 = UnitFields.UNIT_END + 0x88,
PLAYER_QUEST_LOG_9_2 = UnitFields.UNIT_END + 0x8C,
PLAYER_QUEST_LOG_10_1 = UnitFields.UNIT_END + 0x94,
PLAYER_QUEST_LOG_10_2 = UnitFields.UNIT_END + 0x98,
PLAYER_QUEST_LOG_11_1 = UnitFields.UNIT_END + 0xA0,
PLAYER_QUEST_LOG_11_2 = UnitFields.UNIT_END + 0xA4,
PLAYER_QUEST_LOG_12_1 = UnitFields.UNIT_END + 0xAC,
PLAYER_QUEST_LOG_12_2 = UnitFields.UNIT_END + 0xB0,
PLAYER_QUEST_LOG_13_1 = UnitFields.UNIT_END + 0xB8,
PLAYER_QUEST_LOG_13_2 = UnitFields.UNIT_END + 0xBC,
PLAYER_QUEST_LOG_14_1 = UnitFields.UNIT_END + 0xC4,
PLAYER_QUEST_LOG_14_2 = UnitFields.UNIT_END + 0xC8,
PLAYER_QUEST_LOG_15_1 = UnitFields.UNIT_END + 0xD0,
PLAYER_QUEST_LOG_15_2 = UnitFields.UNIT_END + 0xD4,
PLAYER_QUEST_LOG_16_1 = UnitFields.UNIT_END + 0xDC,
PLAYER_QUEST_LOG_16_2 = UnitFields.UNIT_END + 0xE0,
PLAYER_QUEST_LOG_17_1 = UnitFields.UNIT_END + 0xE8,
PLAYER_QUEST_LOG_17_2 = UnitFields.UNIT_END + 0xEC,
PLAYER_QUEST_LOG_18_1 = UnitFields.UNIT_END + 0xF4,
PLAYER_QUEST_LOG_18_2 = UnitFields.UNIT_END + 0xF8,
PLAYER_QUEST_LOG_19_1 = UnitFields.UNIT_END + 0x100,
PLAYER_QUEST_LOG_19_2 = UnitFields.UNIT_END + 0x104,
PLAYER_QUEST_LOG_20_1 = UnitFields.UNIT_END + 0x10C,
PLAYER_QUEST_LOG_20_2 = UnitFields.UNIT_END + 0x110,
PLAYER_VISIBLE_ITEM_1_CREATOR = UnitFields.UNIT_END + 0x118,
PLAYER_VISIBLE_ITEM_1_0 = UnitFields.UNIT_END + 0x120,
PLAYER_VISIBLE_ITEM_1_PROPERTIES = UnitFields.UNIT_END + 0x140,
PLAYER_VISIBLE_ITEM_1_PAD = UnitFields.UNIT_END + 0x144,
PLAYER_VISIBLE_ITEM_2_CREATOR = UnitFields.UNIT_END + 0x148,
PLAYER_VISIBLE_ITEM_2_0 = UnitFields.UNIT_END + 0x150,
PLAYER_VISIBLE_ITEM_2_PROPERTIES = UnitFields.UNIT_END + 0x170,
PLAYER_VISIBLE_ITEM_2_PAD = UnitFields.UNIT_END + 0x174,
PLAYER_VISIBLE_ITEM_3_CREATOR = UnitFields.UNIT_END + 0x178,
PLAYER_VISIBLE_ITEM_3_0 = UnitFields.UNIT_END + 0x180,
PLAYER_VISIBLE_ITEM_3_PROPERTIES = UnitFields.UNIT_END + 0x1A0,
PLAYER_VISIBLE_ITEM_3_PAD = UnitFields.UNIT_END + 0x1A4,
PLAYER_VISIBLE_ITEM_4_CREATOR = UnitFields.UNIT_END + 0x1A8,
PLAYER_VISIBLE_ITEM_4_0 = UnitFields.UNIT_END + 0x1B0,
PLAYER_VISIBLE_ITEM_4_PROPERTIES = UnitFields.UNIT_END + 0x1D0,
PLAYER_VISIBLE_ITEM_4_PAD = UnitFields.UNIT_END + 0x1D4,
PLAYER_VISIBLE_ITEM_5_CREATOR = UnitFields.UNIT_END + 0x1D8,
PLAYER_VISIBLE_ITEM_5_0 = UnitFields.UNIT_END + 0x1E0,
PLAYER_VISIBLE_ITEM_5_PROPERTIES = UnitFields.UNIT_END + 0x200,
PLAYER_VISIBLE_ITEM_5_PAD = UnitFields.UNIT_END + 0x204,
PLAYER_VISIBLE_ITEM_6_CREATOR = UnitFields.UNIT_END + 0x208,
PLAYER_VISIBLE_ITEM_6_0 = UnitFields.UNIT_END + 0x210,
PLAYER_VISIBLE_ITEM_6_PROPERTIES = UnitFields.UNIT_END + 0x230,
PLAYER_VISIBLE_ITEM_6_PAD = UnitFields.UNIT_END + 0x234,
PLAYER_VISIBLE_ITEM_7_CREATOR = UnitFields.UNIT_END + 0x238,
PLAYER_VISIBLE_ITEM_7_0 = UnitFields.UNIT_END + 0x240,
PLAYER_VISIBLE_ITEM_7_PROPERTIES = UnitFields.UNIT_END + 0x260,
PLAYER_VISIBLE_ITEM_7_PAD = UnitFields.UNIT_END + 0x264,
PLAYER_VISIBLE_ITEM_8_CREATOR = UnitFields.UNIT_END + 0x268,
PLAYER_VISIBLE_ITEM_8_0 = UnitFields.UNIT_END + 0x270,
PLAYER_VISIBLE_ITEM_8_PROPERTIES = UnitFields.UNIT_END + 0x290,
PLAYER_VISIBLE_ITEM_8_PAD = UnitFields.UNIT_END + 0x294,
PLAYER_VISIBLE_ITEM_9_CREATOR = UnitFields.UNIT_END + 0x298,
PLAYER_VISIBLE_ITEM_9_0 = UnitFields.UNIT_END + 0x2A0,
PLAYER_VISIBLE_ITEM_9_PROPERTIES = UnitFields.UNIT_END + 0x2C0,
PLAYER_VISIBLE_ITEM_9_PAD = UnitFields.UNIT_END + 0x2C4,
PLAYER_VISIBLE_ITEM_10_CREATOR = UnitFields.UNIT_END + 0x2C8,
PLAYER_VISIBLE_ITEM_10_0 = UnitFields.UNIT_END + 0x2D0,
PLAYER_VISIBLE_ITEM_10_PROPERTIES = UnitFields.UNIT_END + 0x2F0,
PLAYER_VISIBLE_ITEM_10_PAD = UnitFields.UNIT_END + 0x2F4,
PLAYER_VISIBLE_ITEM_11_CREATOR = UnitFields.UNIT_END + 0x2F8,
PLAYER_VISIBLE_ITEM_11_0 = UnitFields.UNIT_END + 0x300,
PLAYER_VISIBLE_ITEM_11_PROPERTIES = UnitFields.UNIT_END + 0x320,
PLAYER_VISIBLE_ITEM_11_PAD = UnitFields.UNIT_END + 0x324,
PLAYER_VISIBLE_ITEM_12_CREATOR = UnitFields.UNIT_END + 0x328,
PLAYER_VISIBLE_ITEM_12_0 = UnitFields.UNIT_END + 0x330,
PLAYER_VISIBLE_ITEM_12_PROPERTIES = UnitFields.UNIT_END + 0x350,
PLAYER_VISIBLE_ITEM_12_PAD = UnitFields.UNIT_END + 0x354,
PLAYER_VISIBLE_ITEM_13_CREATOR = UnitFields.UNIT_END + 0x358,
PLAYER_VISIBLE_ITEM_13_0 = UnitFields.UNIT_END + 0x360,
PLAYER_VISIBLE_ITEM_13_PROPERTIES = UnitFields.UNIT_END + 0x380,
PLAYER_VISIBLE_ITEM_13_PAD = UnitFields.UNIT_END + 0x384,
PLAYER_VISIBLE_ITEM_14_CREATOR = UnitFields.UNIT_END + 0x388,
PLAYER_VISIBLE_ITEM_14_0 = UnitFields.UNIT_END + 0x390,
PLAYER_VISIBLE_ITEM_14_PROPERTIES = UnitFields.UNIT_END + 0x3B0,
PLAYER_VISIBLE_ITEM_14_PAD = UnitFields.UNIT_END + 0x3B4,
PLAYER_VISIBLE_ITEM_15_CREATOR = UnitFields.UNIT_END + 0x3B8,
PLAYER_VISIBLE_ITEM_15_0 = UnitFields.UNIT_END + 0x3C0,
PLAYER_VISIBLE_ITEM_15_PROPERTIES = UnitFields.UNIT_END + 0x3E0,
PLAYER_VISIBLE_ITEM_15_PAD = UnitFields.UNIT_END + 0x3E4,
PLAYER_VISIBLE_ITEM_16_CREATOR = UnitFields.UNIT_END + 0x3E8,
PLAYER_VISIBLE_ITEM_16_0 = UnitFields.UNIT_END + 0x3F0,
PLAYER_VISIBLE_ITEM_16_PROPERTIES = UnitFields.UNIT_END + 0x410,
PLAYER_VISIBLE_ITEM_16_PAD = UnitFields.UNIT_END + 0x414,
PLAYER_VISIBLE_ITEM_17_CREATOR = UnitFields.UNIT_END + 0x418,
PLAYER_VISIBLE_ITEM_17_0 = UnitFields.UNIT_END + 0x420,
PLAYER_VISIBLE_ITEM_17_PROPERTIES = UnitFields.UNIT_END + 0x440,
PLAYER_VISIBLE_ITEM_17_PAD = UnitFields.UNIT_END + 0x444,
PLAYER_VISIBLE_ITEM_18_CREATOR = UnitFields.UNIT_END + 0x448,
PLAYER_VISIBLE_ITEM_18_0 = UnitFields.UNIT_END + 0x450,
PLAYER_VISIBLE_ITEM_18_PROPERTIES = UnitFields.UNIT_END + 0x470,
PLAYER_VISIBLE_ITEM_18_PAD = UnitFields.UNIT_END + 0x474,
PLAYER_VISIBLE_ITEM_19_CREATOR = UnitFields.UNIT_END + 0x478,
PLAYER_VISIBLE_ITEM_19_0 = UnitFields.UNIT_END + 0x480,
PLAYER_VISIBLE_ITEM_19_PROPERTIES = UnitFields.UNIT_END + 0x4A0,
PLAYER_VISIBLE_ITEM_19_PAD = UnitFields.UNIT_END + 0x4A4,
PLAYER_FIELD_INV_SLOT_HEAD = UnitFields.UNIT_END + 0x4A8,
PLAYER_FIELD_PACK_SLOT_1 = UnitFields.UNIT_END + 0x560,
PLAYER_FIELD_BANK_SLOT_1 = UnitFields.UNIT_END + 0x5E0,
PLAYER_FIELD_BANKBAG_SLOT_1 = UnitFields.UNIT_END + 0x6A0,
PLAYER_FIELD_VENDORBUYBACK_SLOT_1 = UnitFields.UNIT_END + 0x6D0,
PLAYER_FIELD_KEYRING_SLOT_1 = UnitFields.UNIT_END + 0x730,
PLAYER_FARSIGHT = UnitFields.UNIT_END + 0x830,
PLAYER__FIELD_COMBO_TARGET = UnitFields.UNIT_END + 0x838,
PLAYER_XP = UnitFields.UNIT_END + 0x840,
PLAYER_NEXT_LEVEL_XP = UnitFields.UNIT_END + 0x844,
PLAYER_SKILL_INFO_1_1 = UnitFields.UNIT_END + 0x848,
PLAYER_CHARACTER_POINTS1 = UnitFields.UNIT_END + 0xE48,
PLAYER_CHARACTER_POINTS2 = UnitFields.UNIT_END + 0xE4C,
PLAYER_TRACK_CREATURES = UnitFields.UNIT_END + 0xE50,
PLAYER_TRACK_RESOURCES = UnitFields.UNIT_END + 0xE54,
PLAYER_BLOCK_PERCENTAGE = UnitFields.UNIT_END + 0xE58,
PLAYER_DODGE_PERCENTAGE = UnitFields.UNIT_END + 0xE5C,
PLAYER_PARRY_PERCENTAGE = UnitFields.UNIT_END + 0xE60,
PLAYER_CRIT_PERCENTAGE = UnitFields.UNIT_END + 0xE64,
PLAYER_RANGED_CRIT_PERCENTAGE = UnitFields.UNIT_END + 0xE68,
PLAYER_EXPLORED_ZONES_1 = UnitFields.UNIT_END + 0xE6C,
PLAYER_REST_STATE_EXPERIENCE = UnitFields.UNIT_END + 0xF6C,
PLAYER_FIELD_COINAGE = UnitFields.UNIT_END + 0xF70,
PLAYER_FIELD_POSSTAT0 = UnitFields.UNIT_END + 0xF74,
PLAYER_FIELD_POSSTAT1 = UnitFields.UNIT_END + 0xF78,
PLAYER_FIELD_POSSTAT2 = UnitFields.UNIT_END + 0xF7C,
PLAYER_FIELD_POSSTAT3 = UnitFields.UNIT_END + 0xF80,
PLAYER_FIELD_POSSTAT4 = UnitFields.UNIT_END + 0xF84,
PLAYER_FIELD_NEGSTAT0 = UnitFields.UNIT_END + 0xF88,
PLAYER_FIELD_NEGSTAT1 = UnitFields.UNIT_END + 0xF8C,
PLAYER_FIELD_NEGSTAT2 = UnitFields.UNIT_END + 0xF90,
PLAYER_FIELD_NEGSTAT3 = UnitFields.UNIT_END + 0xF94,
PLAYER_FIELD_NEGSTAT4 = UnitFields.UNIT_END + 0xF98,
PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE = UnitFields.UNIT_END + 0xF9C,
PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE = UnitFields.UNIT_END + 0xFB8,
PLAYER_FIELD_MOD_DAMAGE_DONE_POS = UnitFields.UNIT_END + 0xFD4,
PLAYER_FIELD_MOD_DAMAGE_DONE_NEG = UnitFields.UNIT_END + 0xFF0,
PLAYER_FIELD_MOD_DAMAGE_DONE_PCT = UnitFields.UNIT_END + 0x100C,
PLAYER_FIELD_BYTES = UnitFields.UNIT_END + 0x1028,
PLAYER_AMMO_ID = UnitFields.UNIT_END + 0x102C,
PLAYER_SELF_RES_SPELL = UnitFields.UNIT_END + 0x1030,
PLAYER_FIELD_PVP_MEDALS = UnitFields.UNIT_END + 0x1034,
PLAYER_FIELD_BUYBACK_PRICE_1 = UnitFields.UNIT_END + 0x1038,
PLAYER_FIELD_BUYBACK_TIMESTAMP_1 = UnitFields.UNIT_END + 0x1068,
PLAYER_FIELD_SESSION_KILLS = UnitFields.UNIT_END + 0x1098,
PLAYER_FIELD_YESTERDAY_KILLS = UnitFields.UNIT_END + 0x109C,
PLAYER_FIELD_LAST_WEEK_KILLS = UnitFields.UNIT_END + 0x10A0,
PLAYER_FIELD_THIS_WEEK_KILLS = UnitFields.UNIT_END + 0x10A4,
PLAYER_FIELD_THIS_WEEK_CONTRIBUTION = UnitFields.UNIT_END + 0x10A8,
PLAYER_FIELD_LIFETIME_HONORBALE_KILLS = UnitFields.UNIT_END + 0x10AC,
PLAYER_FIELD_LIFETIME_DISHONORBALE_KILLS = UnitFields.UNIT_END + 0x10B0,
PLAYER_FIELD_YESTERDAY_CONTRIBUTION = UnitFields.UNIT_END + 0x10B4,
PLAYER_FIELD_LAST_WEEK_CONTRIBUTION = UnitFields.UNIT_END + 0x10B8,
PLAYER_FIELD_LAST_WEEK_RANK = UnitFields.UNIT_END + 0x10BC,
PLAYER_FIELD_BYTES2 = UnitFields.UNIT_END + 0x10C0,
PLAYER_FIELD_WATCHED_FACTION_INDEX = UnitFields.UNIT_END + 0x10C4,
PLAYER_FIELD_COMBAT_RATING_1 = UnitFields.UNIT_END + 0x10C8,
PLAYER_END = UnitFields.UNIT_END + 0x1118
}
internal enum ContainerFields
{
CONTAINER_FIELD_NUM_SLOTS = ItemFields.ITEM_END + 0x0,
CONTAINER_ALIGN_PAD = ItemFields.ITEM_END + 0x4,
CONTAINER_FIELD_SLOT_1 = ItemFields.ITEM_END + 0x8,
CONTAINER_END = ItemFields.ITEM_END + 0x128
}
internal enum GameObjectFields
{
GAMEOBJECT_DISPLAYID = ObjectFields.OBJECT_END + 0x8,
GAMEOBJECT_FLAGS = ObjectFields.OBJECT_END + 0xC,
GAMEOBJECT_ROTATION = ObjectFields.OBJECT_END + 0x10,
GAMEOBJECT_STATE = ObjectFields.OBJECT_END + 0x20,
GAMEOBJECT_POS_X = ObjectFields.OBJECT_END + 0x24,
GAMEOBJECT_POS_Y = ObjectFields.OBJECT_END + 0x28,
GAMEOBJECT_POS_Z = ObjectFields.OBJECT_END + 0x2C,
GAMEOBJECT_FACING = ObjectFields.OBJECT_END + 0x30,
GAMEOBJECT_DYN_FLAGS = ObjectFields.OBJECT_END + 0x34,
GAMEOBJECT_FACTION = ObjectFields.OBJECT_END + 0x38,
GAMEOBJECT_TYPE_ID = ObjectFields.OBJECT_END + 0x3C,
GAMEOBJECT_LEVEL = ObjectFields.OBJECT_END + 0x40,
GAMEOBJECT_ARTKIT = ObjectFields.OBJECT_END + 0x44,
GAMEOBJECT_ANIMPROGRESS = ObjectFields.OBJECT_END + 0x48,
GAMEOBJECT_PADDING = ObjectFields.OBJECT_END + 0x4C,
GAMEOBJECT_END = ObjectFields.OBJECT_END + 0x50
}
internal enum DynamicObjectFields
{
DYNAMICOBJECT_CASTER = ObjectFields.OBJECT_END + 0x0,
DYNAMICOBJECT_BYTES = ObjectFields.OBJECT_END + 0x8,
DYNAMICOBJECT_SPELLID = ObjectFields.OBJECT_END + 0xC,
DYNAMICOBJECT_RADIUS = ObjectFields.OBJECT_END + 0x10,
DYNAMICOBJECT_POS_X = ObjectFields.OBJECT_END + 0x14,
DYNAMICOBJECT_POS_Y = ObjectFields.OBJECT_END + 0x18,
DYNAMICOBJECT_POS_Z = ObjectFields.OBJECT_END + 0x1C,
DYNAMICOBJECT_FACING = ObjectFields.OBJECT_END + 0x20,
DYNAMICOBJECT_PAD = ObjectFields.OBJECT_END + 0x24,
DYNAMICOBJECT_END = ObjectFields.OBJECT_END + 0x28
}
internal enum CorpseFields
{
CORPSE_FIELD_OWNER = ObjectFields.OBJECT_END + 0x0,
CORPSE_FIELD_FACING = ObjectFields.OBJECT_END + 0x8,
CORPSE_FIELD_POS_X = ObjectFields.OBJECT_END + 0xC,
CORPSE_FIELD_POS_Y = ObjectFields.OBJECT_END + 0x10,
CORPSE_FIELD_POS_Z = ObjectFields.OBJECT_END + 0x14,
CORPSE_FIELD_DISPLAY_ID = ObjectFields.OBJECT_END + 0x18,
CORPSE_FIELD_ITEM = ObjectFields.OBJECT_END + 0x1C,
CORPSE_FIELD_BYTES_1 = ObjectFields.OBJECT_END + 0x68,
CORPSE_FIELD_BYTES_2 = ObjectFields.OBJECT_END + 0x6C,
CORPSE_FIELD_GUILD = ObjectFields.OBJECT_END + 0x70,
CORPSE_FIELD_FLAGS = ObjectFields.OBJECT_END + 0x74,
CORPSE_FIELD_DYNAMIC_FLAGS = ObjectFields.OBJECT_END + 0x78,
CORPSE_FIELD_PAD = ObjectFields.OBJECT_END + 0x7C,
CORPSE_END = ObjectFields.OBJECT_END + 0x80
}
Error enum (hook 0x496720 + 0x9, then read at ebp+0x8 ):
Code:
public enum Errors
{
ERR_INV_FULL,
ERR_BANK_FULL,
ERR_CANT_EQUIP_LEVEL_I,
ERR_CANT_EQUIP_SKILL,
ERR_CANT_EQUIP_EVER,
ERR_CANT_EQUIP_RANK,
ERR_CANT_EQUIP_REPUTATION,
ERR_PROFICIENCY_NEEDED,
ERR_WRONG_SLOT,
ERR_BAG_FULL,
ERR_INTERNAL_BAG_ERROR,
ERR_DESTROY_NONEMPTY_BAG,
ERR_BAG_IN_BAG,
ERR_TOO_MANY_SPECIAL_BAGS,
ERR_TRADE_EQUIPPED_BAG,
ERR_AMMO_ONLY,
ERR_NO_SLOT_AVAILABLE,
ERR_WRONG_BAG_TYPE,
ERR_ITEM_MAX_COUNT,
ERR_NOT_EQUIPPABLE,
ERR_CANT_STACK,
ERR_CANT_SWAP,
ERR_SLOT_EMPTY,
ERR_ITEM_NOT_FOUND,
ERR_TOO_FEW_TO_SPLIT,
ERR_SPLIT_FAILED,
ERR_NOT_A_BAG,
ERR_NOT_OWNER,
ERR_ONLY_ONE_QUIVER,
ERR_NO_BANK_SLOT,
ERR_NO_BANK_HERE,
ERR_ITEM_LOCKED,
ERR_2HANDED_EQUIPPED,
ERR_VENDOR_NOT_INTERESTED,
ERR_VENDOR_HATES_YOU,
ERR_VENDOR_SOLD_OUT,
ERR_VENDOR_TOO_FAR,
ERR_NOT_ENOUGH_MONEY,
ERR_RECEIVE_ITEM_S,
ERR_DROP_BOUND_ITEM,
ERR_TRADE_BOUND_ITEM,
ERR_TRADE_QUEST_ITEM,
ERR_TRADE_GROUND_ITEM,
ERR_TRADE_BAG,
ERR_SPELL_FAILED_S,
ERR_ITEM_COOLDOWN,
ERR_POTION_COOLDOWN,
ERR_FOOD_COOLDOWN,
ERR_SPELL_COOLDOWN,
ERR_ABILITY_COOLDOWN,
ERR_SPELL_ALREADY_KNOWN_S,
ERR_PET_SPELL_ALREADY_KNOWN_S,
ERR_PROFICIENCY_GAINED_S,
ERR_SKILL_GAINED_S,
ERR_SKILL_UP_SI,
ERR_LEARN_SPELL_S,
ERR_LEARN_ABILITY_S,
ERR_LEARN_RECIPE_S,
ERR_INVITE_PLAYER_S,
ERR_INVITE_SELF,
ERR_INVITED_TO_GROUP_S,
ERR_ALREADY_IN_GROUP_S,
ERR_PLAYER_BUSY_S,
ERR_NEW_LEADER_S,
ERR_NEW_LEADER_YOU,
ERR_LEFT_GROUP_S,
ERR_LEFT_GROUP_YOU,
ERR_GROUP_DISBANDED,
ERR_DECLINE_GROUP_S,
ERR_JOINED_GROUP_S,
ERR_UNINVITE_YOU,
ERR_BAD_PLAYER_NAME_S,
ERR_NOT_IN_GROUP,
ERR_TARGET_NOT_IN_GROUP_S,
ERR_GROUP_FULL,
ERR_NOT_LEADER,
ERR_PLAYER_DIED_S,
ERR_GUILD_CREATE_S,
ERR_GUILD_INVITE_S,
ERR_INVITED_TO_GUILD_SS,
ERR_ALREADY_IN_GUILD_S,
ERR_ALREADY_INVITED_TO_GUILD_S,
ERR_INVITED_TO_GUILD,
ERR_ALREADY_IN_GUILD,
ERR_GUILD_ACCEPT,
ERR_GUILD_DECLINE_S,
ERR_GUILD_PERMISSIONS,
ERR_GUILD_JOIN_S,
ERR_GUILD_FOUNDER_S,
ERR_GUILD_PROMOTE_SSS,
ERR_GUILD_DEMOTE_SSS,
ERR_GUILD_QUIT_S,
ERR_GUILD_LEAVE_S,
ERR_GUILD_REMOVE_SS,
ERR_GUILD_REMOVE_SELF,
ERR_GUILD_DISBAND_S,
ERR_GUILD_DISBAND_SELF,
ERR_GUILD_LEADER_S,
ERR_GUILD_LEADER_SELF,
ERR_GUILD_PLAYER_NOT_FOUND_S,
ERR_GUILD_PLAYER_NOT_IN_GUILD_S,
ERR_GUILD_PLAYER_NOT_IN_GUILD,
ERR_GUILD_CANT_PROMOTE_S,
ERR_GUILD_CANT_DEMOTE_S,
ERR_GUILD_NOT_IN_A_GUILD,
ERR_GUILD_INTERNAL,
ERR_GUILD_LEADER_IS_S,
ERR_GUILD_LEADER_CHANGED_SS,
ERR_GUILD_DISBANDED,
ERR_GUILD_NOT_ALLIED,
ERR_GUILD_LEADER_LEAVE,
ERR_GUILD_RANKS_LOCKED,
ERR_GUILD_RANK_IN_USE,
ERR_GUILD_RANK_TOO_HIGH_S,
ERR_GUILD_RANK_TOO_LOW_S,
ERR_GUILD_NAME_INVALID,
ERR_GUILD_NAME_EXISTS_S,
ERR_GUILD_ENTER_NAME,
ERR_GUILD_NAME_TOO_SHORT,
ERR_GUILD_NAME_MIXED_LANGUAGES,
ERR_GUILD_NAME_PROFANE,
ERR_GUILD_NAME_RESERVED,
ERR_GUILD_NAME_INVALID_SPACE,
ERR_GUILD_NAME_NAME_CONSECUTIVE_SPACES,
ERR_NO_GUILD_CHARTER,
ERR_OUT_OF_RANGE,
ERR_PLAYER_DEAD,
ERR_CLIENT_LOCKED_OUT,
ERR_KILLED_BY_S,
ERR_LOOT_LOCKED,
ERR_LOOT_TOO_FAR,
ERR_LOOT_DIDNT_KILL,
ERR_LOOT_BAD_FACING,
ERR_LOOT_NOTSTANDING,
ERR_LOOT_STUNNED,
ERR_LOOT_NO_UI,
ERR_LOOT_WHILE_INVULNERABLE,
ERR_QUEST_ACCEPTED_S,
ERR_QUEST_COMPLETE_S,
ERR_QUEST_FAILED_S,
ERR_QUEST_FAILED_BAG_FULL_S,
ERR_QUEST_FAILED_MAX_COUNT_S,
ERR_QUEST_FAILED_LOW_LEVEL,
ERR_QUEST_FAILED_MISSING_ITEMS,
ERR_QUEST_FAILED_WRONG_RACE,
ERR_QUEST_FAILED_NOT_ENOUGH_MONEY,
ERR_QUEST_ONLY_ONE_TIMED,
ERR_QUEST_NEED_PREREQS,
ERR_QUEST_ALREADY_ON,
ERR_QUEST_REWARD_EXP_I,
ERR_QUEST_REWARD_ITEM_S,
ERR_QUEST_REWARD_MONEY_S,
ERR_QUEST_MUST_CHOOSE,
ERR_QUEST_LOG_FULL,
ERR_COMBAT_DAMAGE_SSI,
ERR_INSPECT_S,
ERR_CANT_USE_ITEM,
ERR_MUST_EQUIP_ITEM,
ERR_PASSIVE_ABILITY,
ERR_2HSKILLNOTFOUND,
ERR_NO_ATTACK_TARGET,
ERR_INVALID_ATTACK_TARGET,
ERR_ATTACK_STUNNED,
ERR_ATTACK_PACIFIED,
ERR_ATTACK_MOUNTED,
ERR_ATTACK_FLEEING,
ERR_ATTACK_CONFUSED,
ERR_ATTACK_CHARMED,
ERR_ATTACK_DEAD,
ERR_ATTACK_PREVENTED_BY_MECHANIC_S,
ERR_TAXISAMENODE,
ERR_TAXINOSUCHPATH,
ERR_TAXIUNSPECIFIEDSERVERERROR,
ERR_TAXINOTENOUGHMONEY,
ERR_TAXITOOFARAWAY,
ERR_TAXINOVENDORNEARBY,
ERR_TAXINOTVISITED,
ERR_TAXIPLAYERBUSY,
ERR_TAXIPLAYERALREADYMOUNTED,
ERR_TAXIPLAYERSHAPESHIFTED,
ERR_TAXIPLAYERMOVING,
ERR_TAXINOPATHS,
ERR_TAXINOTSTANDING,
ERR_NO_REPLY_TARGET,
ERR_GENERIC_NO_TARGET,
ERR_INITIATE_TRADE_S,
ERR_TRADE_REQUEST_S,
ERR_TRADE_BLOCKED_S,
ERR_TRADE_TARGET_DEAD,
ERR_TRADE_TOO_FAR,
ERR_TRADE_CANCELLED,
ERR_TRADE_COMPLETE,
ERR_TRADE_BAG_FULL,
ERR_TRADE_TARGET_BAG_FULL,
ERR_TRADE_MAX_COUNT_EXCEEDED,
ERR_TRADE_TARGET_MAX_COUNT_EXCEEDED,
ERR_ALREADY_TRADING,
ERR_MOUNT_INVALIDMOUNTEE,
ERR_MOUNT_TOOFARAWAY,
ERR_MOUNT_ALREADYMOUNTED,
ERR_MOUNT_NOTMOUNTABLE,
ERR_MOUNT_NOTYOURPET,
ERR_MOUNT_OTHER,
ERR_MOUNT_LOOTING,
ERR_MOUNT_RACECANTMOUNT,
ERR_MOUNT_SHAPESHIFTED,
ERR_DISMOUNT_NOPET,
ERR_DISMOUNT_NOTMOUNTED,
ERR_DISMOUNT_NOTYOURPET,
ERR_SPELL_FAILED_TOTEMS,
ERR_SPELL_FAILED_REAGENTS,
ERR_SPELL_FAILED_REAGENTS_GENERIC,
ERR_SPELL_FAILED_EQUIPPED_ITEM,
ERR_SPELL_FAILED_EQUIPPED_ITEM_CLASS_S,
ERR_SPELL_FAILED_SHAPESHIFT_FORM_S,
ERR_BADATTACKFACING,
ERR_BADATTACKPOS,
ERR_CHEST_IN_USE,
ERR_USE_CANT_OPEN,
ERR_USE_LOCKED,
ERR_DOOR_LOCKED,
ERR_BUTTON_LOCKED,
ERR_USE_LOCKED_WITH_ITEM_S,
ERR_USE_LOCKED_WITH_SPELL_S,
ERR_USE_LOCKED_WITH_SPELL_KNOWN_SI,
ERR_USE_TOO_FAR,
ERR_USE_BAD_ANGLE,
ERR_USE_OBJECT_MOVING,
ERR_USE_SPELL_FOCUS,
ERR_USE_DESTROYED,
ERR_SET_LOOT_FREEFORALL,
ERR_SET_LOOT_ROUNDROBIN,
ERR_SET_LOOT_MASTER,
ERR_SET_LOOT_GROUP,
ERR_SET_LOOT_NBG,
ERR_SET_LOOT_THRESHOLD_S,
ERR_NEW_LOOT_MASTER_S,
ERR_SPECIFY_MASTER_LOOTER,
ERR_TAME_FAILED,
ERR_CHAT_WHILE_DEAD,
ERR_CHAT_WRONG_FACTION,
ERR_CHAT_PLAYER_NOT_FOUND_S,
ERR_NEWTAXIPATH,
ERR_NO_PET,
ERR_NOTYOURPET,
ERR_PET_NOT_RENAMEABLE,
ERR_NULL_PETNAME,
ERR_INVALID_PETNAME,
ERR_QUEST_OBJECTIVE_COMPLETE_S,
ERR_QUEST_UNKNOWN_COMPLETE,
ERR_QUEST_ADD_KILL_SII,
ERR_QUEST_ADD_FOUND_SII,
ERR_QUEST_ADD_ITEM_SII,
ERR_CANNOTCREATEDIRECTORY,
ERR_CANNOTCREATEFILE,
ERR_PLAYER_WRONG_FACTION,
ERR_BANKSLOT_FAILED_TOO_MANY,
ERR_BANKSLOT_INSUFFICIENT_FUNDS,
ERR_BANKSLOT_NOTBANKER,
ERR_FRIEND_DB_ERROR,
ERR_FRIEND_LIST_FULL,
ERR_FRIEND_ADDED_S,
ERR_FRIEND_ONLINE_SS,
ERR_FRIEND_OFFLINE_S,
ERR_FRIEND_NOT_FOUND,
ERR_FRIEND_WRONG_FACTION,
ERR_FRIEND_REMOVED_S,
ERR_FRIEND_ERROR,
ERR_FRIEND_ALREADY_S,
ERR_FRIEND_SELF,
ERR_IGNORE_FULL,
ERR_IGNORE_SELF,
ERR_IGNORE_NOT_FOUND,
ERR_IGNORE_ALREADY_S,
ERR_IGNORE_ADDED_S,
ERR_IGNORE_REMOVED_S,
ERR_IGNORE_AMBIGUOUS,
ERR_ONLY_ONE_BOLT,
ERR_ONLY_ONE_AMMO,
ERR_SPELL_FAILED_EQUIPPED_SPECIFIC_ITEM,
ERR_WRONG_BAG_TYPE_SUBCLASS,
ERR_CANT_WRAP_STACKABLE,
ERR_CANT_WRAP_EQUIPPED,
ERR_CANT_WRAP_WRAPPED,
ERR_CANT_WRAP_BOUND,
ERR_CANT_WRAP_UNIQUE,
ERR_CANT_WRAP_BAGS,
ERR_OUT_OF_MANA,
ERR_OUT_OF_RAGE,
ERR_OUT_OF_FOCUS,
ERR_OUT_OF_ENERGY,
ERR_OUT_OF_HEALTH,
ERR_LOOT_GONE,
ERR_MOUNT_FORCEDDISMOUNT,
ERR_AUTOFOLLOW_TOO_FAR,
ERR_UNIT_NOT_FOUND,
ERR_INVALID_FOLLOW_TARGET,
ERR_INVALID_INSPECT_TARGET,
ERR_GUILDEMBLEM_SUCCESS,
ERR_GUILDEMBLEM_INVALID_TABARD_COLORS,
ERR_GUILDEMBLEM_NOGUILD,
ERR_GUILDEMBLEM_NOTGUILDMASTER,
ERR_GUILDEMBLEM_NOTENOUGHMONEY,
ERR_GUILDEMBLEM_INVALIDVENDOR,
ERR_EMBLEMERROR_NOTABARDGEOSET,
ERR_SPELL_OUT_OF_RANGE,
ERR_COMMAND_NEEDS_TARGET,
ERR_NOAMMO_S,
ERR_TOOBUSYTOFOLLOW,
ERR_DUEL_REQUESTED,
ERR_DUEL_CANCELLED,
ERR_DEATHBINDALREADYBOUND,
ERR_DEATHBIND_SUCCESS_S,
ERR_NOEMOTEWHILERUNNING,
ERR_ZONE_EXPLORED,
ERR_ZONE_EXPLORED_XP,
ERR_INVALID_ITEM_TARGET,
ERR_IGNORING_YOU_S,
ERR_FISH_NOT_HOOKED,
ERR_FISH_ESCAPED,
ERR_SPELL_FAILED_NOTUNSHEATHED,
ERR_PETITION_OFFERED_S,
ERR_PETITION_SIGNED,
ERR_PETITION_SIGNED_S,
ERR_PETITION_DECLINED_S,
ERR_PETITION_ALREADY_SIGNED,
ERR_PETITION_IN_GUILD,
ERR_PETITION_CREATOR,
ERR_PETITION_NOT_ENOUGH_SIGNATURES,
ERR_PETITION_NOT_SAME_SERVER,
ERR_SPELL_UNLEARNED_S,
ERR_PET_SPELL_ROOTED,
ERR_PET_SPELL_AFFECTING_COMBAT,
ERR_PET_SPELL_OUT_OF_RANGE,
ERR_PET_SPELL_NOT_BEHIND,
ERR_PET_SPELL_TARGETS_DEAD,
ERR_PET_SPELL_DEAD,
ERR_PET_SPELL_NOPATH,
ERR_ITEM_CANT_BE_DESTROYED,
ERR_TICKET_ALREADY_EXISTS,
ERR_TICKET_CREATE_ERROR,
ERR_TICKET_UPDATE_ERROR,
ERR_TICKET_DB_ERROR,
ERR_TICKET_NO_TEXT,
ERR_OBJECT_IS_BUSY,
ERR_EXHAUSTION_WELLRESTED,
ERR_EXHAUSTION_RESTED,
ERR_EXHAUSTION_NORMAL,
ERR_EXHAUSTION_TIRED,
ERR_EXHAUSTION_EXHAUSTED,
ERR_NO_ITEMS_WHILE_SHAPESHIFTED,
ERR_CANT_INTERACT_SHAPESHIFTED,
ERR_MAIL_QUEST_ITEM,
ERR_MAIL_BOUND_ITEM,
ERR_MAIL_CONJURED_ITEM,
ERR_MAIL_BAG,
ERR_MAIL_TO_SELF,
ERR_MAIL_TARGET_NOT_FOUND,
ERR_MAIL_DATABASE_ERROR,
ERR_MAIL_SENT,
ERR_NOT_HAPPY_ENOUGH,
ERR_USE_CANT_IMMUNE,
ERR_CANT_BE_DISENCHANTED,
ERR_CANT_USE_DISARMED,
ERR_AUCTION_QUEST_ITEM,
ERR_AUCTION_BOUND_ITEM,
ERR_AUCTION_CONJURED_ITEM,
ERR_AUCTION_WRAPPED_ITEM,
ERR_AUCTION_LOOT_ITEM,
ERR_AUCTION_BAG,
ERR_AUCTION_DATABASE_ERROR,
ERR_AUCTION_BID_OWN,
ERR_AUCTION_BID_INCREMENT,
ERR_AUCTION_HIGHER_BID,
ERR_AUCTION_MIN_BID,
ERR_AUCTION_REPAIR_ITEM,
ERR_AUCTION_STARTED,
ERR_AUCTION_REMOVED,
ERR_AUCTION_OUTBID_S,
ERR_AUCTION_WON_S,
ERR_AUCTION_SOLD_S,
ERR_AUCTION_EXPIRED_S,
ERR_AUCTION_REMOVED_S,
ERR_AUCTION_BID_PLACED,
ERR_LOGOUT_FAILED,
ERR_QUEST_PUSH_SUCCESS_S,
ERR_QUEST_PUSH_INVALID_S,
ERR_QUEST_PUSH_ACCEPTED_S,
ERR_QUEST_PUSH_DECLINED_S,
ERR_QUEST_PUSH_TOO_FAR_S,
ERR_QUEST_PUSH_BUSY_S,
ERR_QUEST_PUSH_LOG_FULL_S,
ERR_QUEST_PUSH_ONQUEST_S,
ERR_QUEST_PUSH_ALREADY_DONE_S,
ERR_RAID_GROUP_ONLY,
ERR_RAID_GROUP_FULL,
ERR_PVP_KILL_HONORABLE,
ERR_PVP_KILL_DISHONORABLE,
ERR_SPELL_FAILED_ALREADY_AT_FULL_HEALTH,
ERR_SPELL_FAILED_ALREADY_AT_FULL_POWER_S,
ERR_AUTOLOOT_MONEY_S,
ERR_GENERIC_STUNNED,
ERR_TARGET_STUNNED,
ERR_MUST_REPAIR_DURABILITY,
ERR_RAID_YOU_JOINED,
ERR_RAID_YOU_LEFT,
ERR_RAID_MEMBER_ADDED_S,
ERR_RAID_MEMBER_REMOVED_S,
ERR_CLICK_ON_ITEM_TO_FEED,
ERR_TOO_MANY_CHAT_CHANNELS,
ERR_LOOT_ROLL_PENDING,
ERR_LOOT_PLAYER_NOT_FOUND,
ERR_NOT_IN_RAID,
ERR_LOGGING_OUT,
ERR_TARGET_LOGGING_OUT,
ERR_NOT_WHILE_MOUNTED,
ERR_NOT_WHILE_SHAPESHIFTED,
ERR_NOT_IN_COMBAT,
ERR_NOT_WHILE_DISARMED,
ERR_PET_BROKEN,
ERR_TALENT_WIPE_ERROR,
ERR_FEIGN_DEATH_RESISTED,
ERR_MEETING_STONE_IN_QUEUE_S,
ERR_MEETING_STONE_LEFT_QUEUE_S,
ERR_MEETING_STONE_OTHER_MEMBER_LEFT,
ERR_MEETING_STONE_PARTY_KICKED_FROM_QUEUE,
ERR_MEETING_STONE_MEMBER_STILL_IN_QUEUE,
ERR_MEETING_STONE_SUCCESS,
ERR_MEETING_STONE_IN_PROGRESS,
ERR_MEETING_STONE_MEMBER_ADDED_S,
ERR_MEETING_STONE_GROUP_FULL,
ERR_MEETING_STONE_NOT_LEADER,
ERR_MEETING_STONE_INVALID_LEVEL,
ERR_MEETING_STONE_MUST_BE_LEADER,
ERR_MEETING_STONE_NO_RAID_GROUP,
ERR_GUILDEMBLEM_SAME,
ERR_EQUIP_TRADE_ITEM,
ERR_PVP_TOGGLE_ON,
ERR_PVP_TOGGLE_OFF,
ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS,
ERR_GROUP_JOIN_BATTLEGROUND_S,
ERR_GROUP_JOIN_BATTLEGROUND_FAIL,
ERR_GROUP_JOIN_BATTLEGROUND_TOO_MANY,
ERR_INVALID_PROMOTION_CODE,
ERR_BG_PLAYER_JOINED_SS,
ERR_BG_PLAYER_LEFT_S,
ERR_RESTRICTED_ACCOUNT,
ERR_PLAY_TIME_EXCEEDED,
ERR_APPROACHING_PARTIAL_PLAY_TIME,
ERR_APPROACHING_NO_PLAY_TIME,
ERR_UNHEALTHY_TIME,
ERR_CHAT_RESTRICTED,
ERR_MAIL_REACHED_CAP,
ERR_INVALID_RAID_TARGET,
ERR_RAID_LEADER_READY_CHECK_START_S,
ERR_READY_CHECK_IN_PROGRESS,
ERR_DUNGEON_DIFFICULTY_FAILED,
ERR_DUNGEON_DIFFICULTY_CHANGED_S,
ERR_TRADE_WRONG_REALM,
ERR_CHAT_PLAYER_AMBIGUOUS_S,
ERR_LOOT_CANT_LOOT_THAT_NOW,
ERR_LOOT_MASTER_INV_FULL,
ERR_LOOT_MASTER_UNIQUE_ITEM,
ERR_LOOT_MASTER_OTHER,
ERR_FILTERING_YOU_S,
}
Events enum (hook 0x703E50 + 0x6 and read at ebp+0x8, hook 0x703F50 + 0xA and read at ecx):
Code:
EVENT_UNIT_PET = 0x0,
EVENT_UNIT_PET_2 = 0x2,
EVENT_UNIT_HEALTH = 0x10,
EVENT_UNIT_MANA = 0x11,
EVENT_UNIT_RAGE = 0x12,
EVENT_UNIT_FOCUS = 0x13,
EVENT_UNIT_ENERGY = 0x14,
EVENT_UNIT_HAPPINESS = 0x15,
EVENT_UNIT_MAXHEALTH = 0x16,
EVENT_UNIT_MAXMANA = 0x17,
EVENT_UNIT_MAXRAGE = 0x18,
EVENT_UNIT_MAXFOCUS = 0x19,
EVENT_UNIT_MAXENERGY = 0x1A,
EVENT_UNIT_MAXHAPPINESS = 0x1B,
EVENT_UNIT_LEVEL = 0x1C,
EVENT_UNIT_FACTION = 0x1D,
EVENT_UNIT_DISPLAYPOWER = 0x1E,
EVENT_UNIT_FLAGS = 0x28,
EVENT_UNIT_AURA = 0x29,
EVENT_UNIT_AURA_2 = 0x6B,
EVENT_UNIT_ATTACK_SPEED = 0x78,
EVENT_UNIT_ATTACK_SPEED_2 = 0x79,
EVENT_UNIT_RANGEDDAMAGE = 0x7A,
EVENT_UNIT_DAMAGE = 0x80,
EVENT_UNIT_DAMAGE_2 = 0x81,
EVENT_UNIT_DAMAGE_3 = 0x82,
EVENT_UNIT_DAMAGE_4 = 0x83,
EVENT_UNIT_LOYALTY = 0x84,
EVENT_UNIT_PET_EXPERIENCE = 0x87,
EVENT_UNIT_PET_EXPERIENCE_2 = 0x88,
EVENT_UNIT_DYNAMIC_FLAGS = 0x89,
EVENT_UNIT_PET_TRAINING_POINTS = 0x8F,
EVENT_UNIT_STATS = 0x90,
EVENT_UNIT_STATS_2 = 0x91,
EVENT_UNIT_STATS_3 = 0x92,
EVENT_UNIT_STATS_4 = 0x93,
EVENT_UNIT_STATS_5 = 0x94,
EVENT_UNIT_RESISTANCES = 0x95,
EVENT_UNIT_RESISTANCES_2 = 0x96,
EVENT_UNIT_RESISTANCES_3 = 0x97,
EVENT_UNIT_RESISTANCES_4 = 0x98,
EVENT_UNIT_RESISTANCES_5 = 0x99,
EVENT_UNIT_RESISTANCES_6 = 0x9A,
EVENT_UNIT_RESISTANCES_7 = 0x9B,
EVENT_UNIT_ATTACK_POWER = 0x9F,
EVENT_UNIT_ATTACK_POWER_2 = 0xA0,
EVENT_UNIT_ATTACK_POWER_3 = 0xA1,
EVENT_UNIT_RANGED_ATTACK_POWER = 0xA2,
EVENT_UNIT_RANGED_ATTACK_POWER_2 = 0xA3,
EVENT_UNIT_RANGED_ATTACK_POWER_3 = 0xA4,
EVENT_UNIT_RANGEDDAMAGE_2 = 0xA5,
EVENT_UNIT_RANGEDDAMAGE_3 = 0xA6,
EVENT_UNIT_MANA_2 = 0xA7,
EVENT_UNIT_MANA_3 = 0xAE,
EVENT_UNIT_COMBAT = 0xB6,
EVENT_UNIT_NAME_UPDATE = 0xB7,
EVENT_UNIT_PORTRAIT_UPDATE = 0xB8,
EVENT_UNIT_MODEL_CHANGED = 0xB9,
EVENT_UNIT_INVENTORY_CHANGED = 0xBA,
EVENT_UNIT_CLASSIFICATION_CHANGED = 0xBB,
EVENT_ITEM_LOCK_CHANGED = 0xBC,
EVENT_PLAYER_XP_UPDATE = 0xBD,
EVENT_PLAYER_REGEN_DISABLED = 0xBE,
EVENT_PLAYER_REGEN_ENABLED = 0xBF,
EVENT_PLAYER_AURAS_CHANGED = 0xC0,
EVENT_PLAYER_ENTER_COMBAT = 0xC1,
EVENT_PLAYER_LEAVE_COMBAT = 0xC2,
EVENT_PLAYER_TARGET_CHANGED = 0xC3,
EVENT_PLAYER_CONTROL_LOST = 0xC4,
EVENT_PLAYER_CONTROL_GAINED = 0xC5,
EVENT_PLAYER_FARSIGHT_FOCUS_CHANGED = 0xC6,
EVENT_PLAYER_LEVEL_UP = 0xC7,
EVENT_PLAYER_MONEY = 0xC8,
EVENT_PLAYER_DAMAGE_DONE_MODS = 0xC9,
EVENT_PLAYER_COMBO_POINTS = 0xCA,
EVENT_ZONE_CHANGED = 0xCB,
EVENT_ZONE_CHANGED_INDOORS = 0xCC,
EVENT_ZONE_CHANGED_NEW_AREA = 0xCD,
EVENT_MINIMAP_ZONE_CHANGED = 0xCE,
EVENT_MINIMAP_UPDATE_ZOOM = 0xCF,
EVENT_SCREENSHOT_SUCCEEDED = 0xD0,
EVENT_SCREENSHOT_FAILED = 0xD1,
EVENT_ACTIONBAR_SHOWGRID = 0xD2,
EVENT_ACTIONBAR_HIDEGRID = 0xD3,
EVENT_ACTIONBAR_PAGE_CHANGED = 0xD4,
EVENT_ACTIONBAR_SLOT_CHANGED = 0xD5,
EVENT_ACTIONBAR_UPDATE_STATE = 0xD6,
EVENT_ACTIONBAR_UPDATE_USABLE = 0xD7,
EVENT_ACTIONBAR_UPDATE_COOLDOWN = 0xD8,
EVENT_UPDATE_BONUS_ACTIONBAR = 0xD9,
EVENT_PARTY_MEMBERS_CHANGED = 0xDA,
EVENT_PARTY_LEADER_CHANGED = 0xDB,
EVENT_PARTY_MEMBER_ENABLE = 0xDC,
EVENT_PARTY_MEMBER_DISABLE = 0xDD,
EVENT_PARTY_LOOT_METHOD_CHANGED = 0xDE,
EVENT_SYSMSG = 0xDF,
EVENT_UI_ERROR_MESSAGE = 0xE0,
EVENT_UI_INFO_MESSAGE = 0xE1,
EVENT_UPDATE_CHAT_COLOR = 0xE2,
EVENT_CHAT_MSG_ADDON = 0xE3,
EVENT_CHAT_MSG_SAY = 0xE4,
EVENT_CHAT_MSG_PARTY = 0xE5,
EVENT_CHAT_MSG_RAID = 0xE6,
EVENT_CHAT_MSG_GUILD = 0xE7,
EVENT_CHAT_MSG_OFFICER = 0xE8,
EVENT_CHAT_MSG_YELL = 0xE9,
EVENT_CHAT_MSG_WHISPER = 0xEA,
EVENT_CHAT_MSG_WHISPER_INFORM = 0xEB,
EVENT_CHAT_MSG_EMOTE = 0xEC,
EVENT_CHAT_MSG_TEXT_EMOTE = 0xED,
EVENT_CHAT_MSG_SYSTEM = 0xEE,
EVENT_CHAT_MSG_MONSTER_SAY = 0xEF,
EVENT_CHAT_MSG_MONSTER_YELL = 0xF0,
EVENT_CHAT_MSG_MONSTER_WHISPER = 0xF1,
EVENT_CHAT_MSG_MONSTER_EMOTE = 0xF2,
EVENT_CHAT_MSG_CHANNEL = 0xF3,
EVENT_CHAT_MSG_CHANNEL_JOIN = 0xF4,
EVENT_CHAT_MSG_CHANNEL_LEAVE = 0xF5,
EVENT_CHAT_MSG_CHANNEL_LIST = 0xF6,
EVENT_CHAT_MSG_CHANNEL_NOTICE = 0xF7,
EVENT_CHAT_MSG_CHANNEL_NOTICE_USER = 0xF8,
EVENT_CHAT_MSG_AFK = 0xF9,
EVENT_CHAT_MSG_DND = 0xFA,
EVENT_CHAT_MSG_COMBAT_LOG = 0xFB,
EVENT_CHAT_MSG_IGNORED = 0xFC,
EVENT_CHAT_MSG_SKILL = 0xFD,
EVENT_CHAT_MSG_LOOT = 0xFE,
EVENT_CHAT_MSG_MONEY = 0xFF,
EVENT_CHAT_MSG_RAID_LEADER = 0x100,
EVENT_CHAT_MSG_RAID_WARNING = 0x101,
EVENT_LANGUAGE_LIST_CHANGED = 0x102,
EVENT_TIME_PLAYED_MSG = 0x103,
EVENT_SPELLS_CHANGED = 0x104,
EVENT_CURRENT_SPELL_CAST_CHANGED = 0x105,
EVENT_SPELL_UPDATE_COOLDOWN = 0x106,
EVENT_SPELL_UPDATE_USABLE = 0x107,
EVENT_CHARACTER_POINTS_CHANGED = 0x108,
EVENT_SKILL_LINES_CHANGED = 0x109,
EVENT_ITEM_PUSH = 0x10A,
EVENT_LOOT_OPENED = 0x10B,
EVENT_LOOT_SLOT_CLEARED = 0x10C,
EVENT_LOOT_CLOSED = 0x10D,
EVENT_PLAYER_LOGIN = 0x10E,
EVENT_PLAYER_LOGOUT = 0x10F,
EVENT_PLAYER_ENTERING_WORLD = 0x110,
EVENT_PLAYER_LEAVING_WORLD = 0x111,
EVENT_PLAYER_ALIVE = 0x112,
EVENT_PLAYER_DEAD = 0x113,
EVENT_PLAYER_CAMPING = 0x114,
EVENT_PLAYER_QUITING = 0x115,
EVENT_LOGOUT_CANCEL = 0x116,
EVENT_RESURRECT_REQUEST = 0x117,
EVENT_PARTY_INVITE_REQUEST = 0x118,
EVENT_PARTY_INVITE_CANCEL = 0x119,
EVENT_GUILD_INVITE_REQUEST = 0x11A,
EVENT_GUILD_INVITE_CANCEL = 0x11B,
EVENT_GUILD_MOTD = 0x11C,
EVENT_TRADE_REQUEST = 0x11D,
EVENT_TRADE_REQUEST_CANCEL = 0x11E,
EVENT_LOOT_BIND_CONFIRM = 0x11F,
EVENT_EQUIP_BIND_CONFIRM = 0x120,
EVENT_AUTOEQUIP_BIND_CONFIRM = 0x121,
EVENT_USE_BIND_CONFIRM = 0x122,
EVENT_DELETE_ITEM_CONFIRM = 0x123,
EVENT_CURSOR_UPDATE = 0x124,
EVENT_ITEM_TEXT_BEGIN = 0x125,
EVENT_ITEM_TEXT_TRANSLATION = 0x126,
EVENT_ITEM_TEXT_READY = 0x127,
EVENT_ITEM_TEXT_CLOSED = 0x128,
EVENT_GOSSIP_SHOW = 0x129,
EVENT_GOSSIP_ENTER_CODE = 0x12A,
EVENT_GOSSIP_CLOSED = 0x12B,
EVENT_QUEST_GREETING = 0x12C,
EVENT_QUEST_DETAIL = 0x12D,
EVENT_QUEST_PROGRESS = 0x12E,
EVENT_QUEST_COMPLETE = 0x12F,
EVENT_QUEST_FINISHED = 0x130,
EVENT_QUEST_ITEM_UPDATE = 0x131,
EVENT_TAXIMAP_OPENED = 0x132,
EVENT_TAXIMAP_CLOSED = 0x133,
EVENT_QUEST_LOG_UPDATE = 0x134,
EVENT_TRAINER_SHOW = 0x135,
EVENT_TRAINER_UPDATE = 0x136,
EVENT_TRAINER_CLOSED = 0x137,
EVENT_CVAR_UPDATE = 0x138,
EVENT_TRADE_SKILL_SHOW = 0x139,
EVENT_TRADE_SKILL_UPDATE = 0x13A,
EVENT_TRADE_SKILL_CLOSE = 0x13B,
EVENT_MERCHANT_SHOW = 0x13C,
EVENT_MERCHANT_UPDATE = 0x13D,
EVENT_MERCHANT_CLOSED = 0x13E,
EVENT_TRADE_SHOW = 0x13F,
EVENT_TRADE_CLOSED = 0x140,
EVENT_TRADE_UPDATE = 0x141,
EVENT_TRADE_ACCEPT_UPDATE = 0x142,
EVENT_TRADE_TARGET_ITEM_CHANGED = 0x143,
EVENT_TRADE_PLAYER_ITEM_CHANGED = 0x144,
EVENT_TRADE_MONEY_CHANGED = 0x145,
EVENT_PLAYER_TRADE_MONEY = 0x146,
EVENT_BAG_OPEN = 0x147,
EVENT_BAG_UPDATE = 0x148,
EVENT_BAG_CLOSED = 0x149,
EVENT_BAG_UPDATE_COOLDOWN = 0x14A,
EVENT_LOCALPLAYER_PET_RENAMED = 0x14B,
EVENT_UNIT_ATTACK_3 = 0x14C,
EVENT_UNIT_DEFENSE = 0x14D,
EVENT_PET_ATTACK_START = 0x14E,
EVENT_PET_ATTACK_STOP = 0x14F,
EVENT_UPDATE_MOUSEOVER_UNIT = 0x150,
EVENT_SPELLCAST_START = 0x151,
EVENT_SPELLCAST_STOP = 0x152,
EVENT_SPELLCAST_FAILED = 0x153,
EVENT_SPELLCAST_INTERRUPTED = 0x154,
EVENT_SPELLCAST_DELAYED = 0x155,
EVENT_SPELLCAST_CHANNEL_START = 0x156,
EVENT_SPELLCAST_CHANNEL_UPDATE = 0x157,
EVENT_SPELLCAST_CHANNEL_STOP = 0x158,
EVENT_PLAYER_GUILD_UPDATE = 0x159,
EVENT_QUEST_ACCEPT_CONFIRM = 0x15A,
EVENT_PLAYERBANKSLOTS_CHANGED = 0x15B,
EVENT_BANKFRAME_OPENED = 0x15C,
EVENT_BANKFRAME_CLOSED = 0x15D,
EVENT_PLAYERBANKBAGSLOTS_CHANGED = 0x15E,
EVENT_FRIENDLIST_UPDATE = 0x15F,
EVENT_IGNORELIST_UPDATE = 0x160,
EVENT_PET_BAR_UPDATE = 0x161,
EVENT_PET_BAR_UPDATE_COOLDOWN = 0x162,
EVENT_PET_BAR_SHOWGRID = 0x163,
EVENT_PET_BAR_HIDEGRID = 0x164,
EVENT_MINIMAP_PING = 0x165,
EVENT_CHAT_MSG_COMBAT_MISC_INFO = 0x166,
EVENT_CRAFT_SHOW = 0x167,
EVENT_CRAFT_UPDATE = 0x168,
EVENT_CRAFT_CLOSE = 0x169,
EVENT_MIRROR_TIMER_START = 0x16A,
EVENT_MIRROR_TIMER_PAUSE = 0x16B,
EVENT_MIRROR_TIMER_STOP = 0x16C,
EVENT_WORLD_MAP_UPDATE = 0x16D,
EVENT_WORLD_MAP_NAME_UPDATE = 0x16E,
EVENT_AUTOFOLLOW_BEGIN = 0x16F,
EVENT_AUTOFOLLOW_END = 0x170,
EVENT_CINEMATIC_START = 0x172,
EVENT_CINEMATIC_STOP = 0x173,
EVENT_UPDATE_FACTION = 0x174,
EVENT_CLOSE_WORLD_MAP = 0x175,
EVENT_OPEN_TABARD_FRAME = 0x176,
EVENT_CLOSE_TABARD_FRAME = 0x177,
EVENT_TABARD_CANSAVE_CHANGED = 0x178,
EVENT_SHOW_COMPARE_TOOLTIP = 0x179,
EVENT_GUILD_REGISTRAR_SHOW = 0x17A,
EVENT_GUILD_REGISTRAR_CLOSED = 0x17B,
EVENT_DUEL_REQUESTED = 0x17C,
EVENT_DUEL_OUTOFBOUNDS = 0x17D,
EVENT_DUEL_INBOUNDS = 0x17E,
EVENT_DUEL_FINISHED = 0x17F,
EVENT_TUTORIAL_TRIGGER = 0x180,
EVENT_PET_DISMISS_START = 0x181,
EVENT_UPDATE_BINDINGS = 0x182,
EVENT_UPDATE_SHAPESHIFT_FORMS = 0x183,
EVENT_WHO_LIST_UPDATE = 0x184,
EVENT_UPDATE_LFG = 0x185,
EVENT_PETITION_SHOW = 0x186,
EVENT_PETITION_CLOSED = 0x187,
EVENT_EXECUTE_CHAT_LINE = 0x188,
EVENT_UPDATE_MACROS = 0x189,
EVENT_UPDATE_TICKET = 0x18A,
EVENT_UPDATE_CHAT_WINDOWS = 0x18B,
EVENT_CONFIRM_XP_LOSS = 0x18C,
EVENT_CORPSE_IN_RANGE = 0x18D,
EVENT_CORPSE_IN_INSTANCE = 0x18E,
EVENT_CORPSE_OUT_OF_RANGE = 0x18F,
EVENT_UPDATE_GM_STATUS = 0x190,
EVENT_PLAYER_UNGHOST = 0x191,
EVENT_BIND_ENCHANT = 0x192,
EVENT_REPLACE_ENCHANT = 0x193,
EVENT_TRADE_REPLACE_ENCHANT = 0x194,
EVENT_PLAYER_UPDATE_RESTING = 0x195,
EVENT_UPDATE_EXHAUSTION = 0x196,
EVENT_PLAYER_FLAGS_CHANGED = 0x197,
EVENT_GUILD_ROSTER_UPDATE = 0x198,
EVENT_GM_PLAYER_INFO = 0x199,
EVENT_MAIL_SHOW = 0x19A,
EVENT_MAIL_CLOSED = 0x19B,
EVENT_SEND_MAIL_MONEY_CHANGED = 0x19C,
EVENT_SEND_MAIL_COD_CHANGED = 0x19D,
EVENT_MAIL_SEND_INFO_UPDATE = 0x19E,
EVENT_MAIL_SEND_SUCCESS = 0x19F,
EVENT_MAIL_INBOX_UPDATE = 0x1A0,
EVENT_BATTLEFIELDS_SHOW = 0x1A1,
EVENT_BATTLEFIELDS_CLOSED = 0x1A2,
EVENT_UPDATE_BATTLEFIELD_STATUS = 0x1A3,
EVENT_UPDATE_BATTLEFIELD_SCORE = 0x1A4,
EVENT_AUCTION_HOUSE_SHOW = 0x1A5,
EVENT_AUCTION_HOUSE_CLOSED = 0x1A6,
EVENT_NEW_AUCTION_UPDATE = 0x1A7,
EVENT_AUCTION_ITEM_LIST_UPDATE = 0x1A8,
EVENT_AUCTION_OWNED_LIST_UPDATE = 0x1A9,
EVENT_AUCTION_BIDDER_LIST_UPDATE = 0x1AA,
EVENT_PET_UI_UPDATE = 0x1AB,
EVENT_PET_UI_CLOSE = 0x1AC,
EVENT_ADDON_LOADED = 0x1AD,
EVENT_VARIABLES_LOADED = 0x1AE,
EVENT_MACRO_ACTION_FORBIDDEN = 0x1AF,
EVENT_ADDON_ACTION_FORBIDDEN = 0x1B0,
EVENT_MEMORY_EXHAUSTED = 0x1B1,
EVENT_MEMORY_RECOVERED = 0x1B2,
EVENT_START_AUTOREPEAT_SPELL = 0x1B3,
EVENT_STOP_AUTOREPEAT_SPELL = 0x1B4,
EVENT_PET_STABLE_SHOW = 0x1B5,
EVENT_PET_STABLE_UPDATE = 0x1B6,
EVENT_PET_STABLE_UPDATE_PAPERDOLL = 0x1B7,
EVENT_PET_STABLE_CLOSED = 0x1B8,
EVENT_CHAT_MSG_COMBAT_SELF_HITS = 0x1B9,
EVENT_CHAT_MSG_COMBAT_SELF_MISSES = 0x1BA,
EVENT_CHAT_MSG_COMBAT_PET_HITS = 0x1BB,
EVENT_CHAT_MSG_COMBAT_PET_MISSES = 0x1BC,
EVENT_CHAT_MSG_COMBAT_PARTY_HITS = 0x1BD,
EVENT_CHAT_MSG_COMBAT_PARTY_MISSES = 0x1BE,
EVENT_CHAT_MSG_COMBAT_FRIENDLYPLAYER_HITS = 0x1BF,
EVENT_CHAT_MSG_COMBAT_FRIENDLYPLAYER_MISSES = 0x1C0,
EVENT_CHAT_MSG_COMBAT_HOSTILEPLAYER_HITS = 0x1C1,
EVENT_CHAT_MSG_COMBAT_HOSTILEPLAYER_MISSES = 0x1C2,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_SELF_HITS = 0x1C3,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_SELF_MISSES = 0x1C4,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_PARTY_HITS = 0x1C5,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_PARTY_MISSES = 0x1C6,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_CREATURE_HITS = 0x1C7,
EVENT_CHAT_MSG_COMBAT_CREATURE_VS_CREATURE_MISSES = 0x1C8,
EVENT_CHAT_MSG_COMBAT_FRIENDLY_DEATH = 0x1C9,
EVENT_CHAT_MSG_COMBAT_HOSTILE_DEATH = 0x1CA,
EVENT_CHAT_MSG_COMBAT_XP_GAIN = 0x1CB,
EVENT_CHAT_MSG_COMBAT_HONOR_GAIN = 0x1CC,
EVENT_CHAT_MSG_SPELL_SELF_DAMAGE = 0x1CD,
EVENT_CHAT_MSG_SPELL_SELF_BUFF = 0x1CE,
EVENT_CHAT_MSG_SPELL_PET_DAMAGE = 0x1CF,
EVENT_CHAT_MSG_SPELL_PET_BUFF = 0x1D0,
EVENT_CHAT_MSG_SPELL_PARTY_DAMAGE = 0x1D1,
EVENT_CHAT_MSG_SPELL_PARTY_BUFF = 0x1D2,
EVENT_CHAT_MSG_SPELL_FRIENDLYPLAYER_DAMAGE = 0x1D3,
EVENT_CHAT_MSG_SPELL_FRIENDLYPLAYER_BUFF = 0x1D4,
EVENT_CHAT_MSG_SPELL_HOSTILEPLAYER_DAMAGE = 0x1D5,
EVENT_CHAT_MSG_SPELL_HOSTILEPLAYER_BUFF = 0x1D6,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_SELF_DAMAGE = 0x1D7,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_SELF_BUFF = 0x1D8,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_PARTY_DAMAGE = 0x1D9,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_PARTY_BUFF = 0x1DA,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_CREATURE_DAMAGE = 0x1DB,
EVENT_CHAT_MSG_SPELL_CREATURE_VS_CREATURE_BUFF = 0x1DC,
EVENT_CHAT_MSG_SPELL_TRADESKILLS = 0x1DD,
EVENT_CHAT_MSG_SPELL_DAMAGESHIELDS_ON_SELF = 0x1DE,
EVENT_CHAT_MSG_SPELL_DAMAGESHIELDS_ON_OTHERS = 0x1DF,
EVENT_CHAT_MSG_SPELL_AURA_GONE_SELF = 0x1E0,
EVENT_CHAT_MSG_SPELL_AURA_GONE_PARTY = 0x1E1,
EVENT_CHAT_MSG_SPELL_AURA_GONE_OTHER = 0x1E2,
EVENT_CHAT_MSG_SPELL_ITEM_ENCHANTMENTS = 0x1E3,
EVENT_CHAT_MSG_SPELL_BREAK_AURA = 0x1E4,
EVENT_CHAT_MSG_SPELL_PERIODIC_SELF_DAMAGE = 0x1E5,
EVENT_CHAT_MSG_SPELL_PERIODIC_SELF_BUFFS = 0x1E6,
EVENT_CHAT_MSG_SPELL_PERIODIC_PARTY_DAMAGE = 0x1E7,
EVENT_CHAT_MSG_SPELL_PERIODIC_PARTY_BUFFS = 0x1E8,
EVENT_CHAT_MSG_SPELL_PERIODIC_FRIENDLYPLAYER_DAMAGE = 0x1E9,
EVENT_CHAT_MSG_SPELL_PERIODIC_FRIENDLYPLAYER_BUFFS = 0x1EA,
EVENT_CHAT_MSG_SPELL_PERIODIC_HOSTILEPLAYER_DAMAGE = 0x1EB,
EVENT_CHAT_MSG_SPELL_PERIODIC_HOSTILEPLAYER_BUFFS = 0x1EC,
EVENT_CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE = 0x1ED,
EVENT_CHAT_MSG_SPELL_PERIODIC_CREATURE_BUFFS = 0x1EE,
EVENT_CHAT_MSG_SPELL_FAILED_LOCALPLAYER = 0x1EF,
EVENT_CHAT_MSG_BG_SYSTEM_NEUTRAL = 0x1F0,
EVENT_CHAT_MSG_BG_SYSTEM_ALLIANCE = 0x1F1,
EVENT_CHAT_MSG_BG_SYSTEM_HORDE = 0x1F2,
EVENT_RAID_ROSTER_UPDATE = 0x1F3,
EVENT_UPDATE_PENDING_MAIL = 0x1F4,
EVENT_UPDATE_INVENTORY_ALERTS = 0x1F5,
EVENT_UPDATE_TRADESKILL_RECAST = 0x1F6,
EVENT_OPEN_MASTER_LOOT_LIST = 0x1F7,
EVENT_UPDATE_MASTER_LOOT_LIST = 0x1F8,
EVENT_START_LOOT_ROLL = 0x1F9,
EVENT_CANCEL_LOOT_ROLL = 0x1FA,
EVENT_CONFIRM_LOOT_ROLL = 0x1FB,
EVENT_INSTANCE_BOOT_START = 0x1FC,
EVENT_INSTANCE_BOOT_STOP = 0x1FD,
EVENT_LEARNED_SPELL_IN_TAB = 0x1FE,
EVENT_DISPLAY_SIZE_CHANGED = 0x1FF,
EVENT_CONFIRM_TALENT_WIPE = 0x200,
EVENT_CONFIRM_BINDER = 0x201,
EVENT_MAIL_FAILED = 0x202,
EVENT_CLOSE_INBOX_ITEM = 0x203,
EVENT_CONFIRM_SUMMON = 0x204,
EVENT_BILLING_NAG_DIALOG = 0x205,
EVENT_IGR_BILLING_NAG_DIALOG = 0x206,
EVENT_MEETINGSTONE_CHANGED = 0x207,
EVENT_PLAYER_SKINNED = 0x208,
EVENT_TABARD_SAVE_PENDING = 0x209,
EVENT_UNIT_QUEST_LOG_CHANGED = 0x20A,
EVENT_PLAYER_PVP_KILLS_CHANGED = 0x20B,
EVENT_PLAYER_PVP_RANK_CHANGED = 0x20C,
EVENT_INSPECT_HONOR_UPDATE = 0x20D,
EVENT_UPDATE_WORLD_STATES = 0x20E,
EVENT_AREA_SPIRIT_HEALER_IN_RANGE = 0x20F,
EVENT_AREA_SPIRIT_HEALER_OUT_OF_RANGE = 0x210,
EVENT_CONFIRM_PET_UNLEARN = 0x211,
EVENT_PLAYTIME_CHANGED = 0x212,
EVENT_UPDATE_LFG_TYPES = 0x213,
EVENT_UPDATE_LFG_LIST = 0x214,
EVENT_CHAT_MSG_COMBAT_FACTION_CHANGE = 0x215,
EVENT_START_MINIGAME = 0x216,
EVENT_MINIGAME_UPDATE = 0x217,
EVENT_READY_CHECK = 0x218,
EVENT_RAID_TARGET_UPDATE = 0x219,
EVENT_GMSURVEY_DISPLAY = 0x21A,
EVENT_UPDATE_INSTANCE_INFO = 0x21B,
EVENT_CHAT_MSG_RAID_BOSS_EMOTE = 0x21D,
EVENT_COMBAT_TEXT_UPDATE = 0x21E,
EVENT_LOTTERY_SHOW = 0x21F,
EVENT_CHAT_MSG_FILTERED = 0x220,
EVENT_QUEST_WATCH_UPDATE = 0x221,
EVENT_CHAT_MSG_BATTLEGROUND = 0x222,
EVENT_CHAT_MSG_BATTLEGROUND_LEADER = 0x223,
EVENT_LOTTERY_ITEM_UPDATE = 0x224,
FRAMEXML_EVENT_COUNT = 0x272
Chat types:
Code:
public enum ChatType : byte
{
SAY,
PARTY,
RAID,
GUILD,
OFFICER,
YELL,
WHISPER,
WHISPER_INFORM,
REPLY,
EMOTE,
TEXT_EMOTE,
SYSTEM,
MONSTER_WHISPER,
MONSTER_SAY,
MONSTER_YELL,
MONSTER_EMOTE,
CHANNEL,
CHANNEL_JOIN,
CHANNEL_LEAVE,
CHANNEL_LIST,
CHANNEL_NOTICE,
CHANNEL_NOTICE_USER,
AFK,
DND,
IGNORED,
SKILL,
LOOT,
COMBAT_ERROR,
COMBAT_MISC_INFO,
CHANNEL1,
CHANNEL2,
CHANNEL3,
CHANNEL4,
CHANNEL5,
CHANNEL6,
CHANNEL7,
CHANNEL8,
CHANNEL9,
CHANNEL10,
COMBAT_SELF_HITS,
COMBAT_SELF_MISSES,
COMBAT_PET_HITS,
COMBAT_PET_MISSES,
COMBAT_PARTY_HITS,
COMBAT_PARTY_MISSES,
COMBAT_FRIENDLYPLAYER_HITS,
COMBAT_FRIENDLYPLAYER_MISSES,
COMBAT_HOSTILEPLAYER_HITS,
COMBAT_HOSTILEPLAYER_MISSES,
COMBAT_CREATURE_VS_SELF_HITS,
COMBAT_CREATURE_VS_SELF_MISSES,
COMBAT_CREATURE_VS_PARTY_HITS,
COMBAT_CREATURE_VS_PARTY_MISSES,
COMBAT_CREATURE_VS_CREATURE_HITS,
COMBAT_CREATURE_VS_CREATURE_MISSES,
COMBAT_FRIENDLY_DEATH,
COMBAT_HOSTILE_DEATH,
COMBAT_XP_GAIN,
COMBAT_HONOR_GAIN,
SPELL_SELF_DAMAGE,
SPELL_SELF_BUFF,
SPELL_PET_DAMAGE,
SPELL_PET_BUFF,
SPELL_PARTY_DAMAGE,
SPELL_PARTY_BUFF,
SPELL_FRIENDLYPLAYER_DAMAGE,
SPELL_FRIENDLYPLAYER_BUFF,
SPELL_HOSTILEPLAYER_DAMAGE,
SPELL_HOSTILEPLAYER_BUFF,
SPELL_CREATURE_VS_SELF_DAMAGE,
SPELL_CREATURE_VS_SELF_BUFF,
SPELL_CREATURE_VS_PARTY_DAMAGE,
SPELL_CREATURE_VS_PARTY_BUFF,
SPELL_CREATURE_VS_CREATURE_DAMAGE,
SPELL_CREATURE_VS_CREATURE_BUFF,
SPELL_TRADESKILLS,
SPELL_DAMAGESHIELDS_ON_SELF,
SPELL_DAMAGESHIELDS_ON_OTHERS,
SPELL_AURA_GONE_SELF,
SPELL_AURA_GONE_PARTY,
SPELL_AURA_GONE_OTHER,
SPELL_ITEM_ENCHANTMENTS,
SPELL_BREAK_AURA,
SPELL_PERIODIC_SELF_DAMAGE,
SPELL_PERIODIC_SELF_BUFFS,
SPELL_PERIODIC_PARTY_DAMAGE,
SPELL_PERIODIC_PARTY_BUFFS,
SPELL_PERIODIC_FRIENDLYPLAYER_DAMAGE,
SPELL_PERIODIC_FRIENDLYPLAYER_BUFFS,
SPELL_PERIODIC_HOSTILEPLAYER_DAMAGE,
SPELL_PERIODIC_HOSTILEPLAYER_BUFFS,
SPELL_PERIODIC_CREATURE_DAMAGE,
SPELL_PERIODIC_CREATURE_BUFFS,
SPELL_FAILED_LOCALPLAYER,
BG_SYSTEM_NEUTRAL,
BG_SYSTEM_ALLIANCE,
BG_SYSTEM_HORDE,
COMBAT_FACTION_CHANGE,
MONEY,
RAID_LEADER,
RAID_WARNING,
RAID_BOSS_EMOTE,
FILTERED,
BATTLEGROUND,
BATTLEGROUND_LEADER
}
Get pointer to DBC row:
Code:
public static uint ClientDB__GetRow(uint dbcPointer, uint row)
{
uint maxIndex = Memory.Read<uint>(dbcPointer + 0xC);
uint minIndex = Memory.Read<uint>(dbcPointer + 0x10);
uint result;
if (row > maxIndex || row < minIndex)
{
result = 0;
}
else
{
result = Memory.Read<uint>((Memory.Read<uint>(DbcPointer + 0x8) + (4* row)));
}
return result;
}
If someone has already found traceline function (aka CGWorldFrame_Intersect/World_Intersect), please share
I will update this post with more info later.