SMSG_PET_CAST_FAILED
Client Version 1.12
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/pet/smsg_pet_cast_failed.wowm:1.
smsg SMSG_PET_CAST_FAILED = 0x0138 {
Spell id;
u8 unknown1;
SpellCastResult result;
}
Header
SMSG have a header of 4 bytes.
SMSG Header
| Offset | Size / Endianness | Type | Name | Description |
|---|---|---|---|---|
| 0x00 | 2 / Big | uint16 | size | Size of the rest of the message including the opcode field but not including the size field. |
| 0x02 | 2 / Little | uint16 | opcode | Opcode that determines which fields the message contains. |
Body
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x04 | 4 / Little | Spell | id | |
| 0x08 | 1 / - | u8 | unknown1 | vmangos sets to 2 and cmangos sets to 0. |
| 0x09 | 1 / - | SpellCastResult | result |
Client Version 2.4.3
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/pet/smsg_pet_cast_failed.wowm:10.
smsg SMSG_PET_CAST_FAILED = 0x0138 {
Spell id;
SpellCastResult result;
Bool multiple_casts;
if (result == REQUIRES_SPELL_FOCUS) {
u32 spell_focus;
}
else if (result == REQUIRES_AREA) {
Area area;
}
else if (result == TOTEMS) {
u32[2] totems;
}
else if (result == TOTEM_CATEGORY) {
u32[2] totem_categories;
}
else if (result == EQUIPPED_ITEM_CLASS) {
u32 item_class;
u32 item_sub_class;
u32 item_inventory_type;
}
}
Header
SMSG have a header of 4 bytes.
SMSG Header
| Offset | Size / Endianness | Type | Name | Description |
|---|---|---|---|---|
| 0x00 | 2 / Big | uint16 | size | Size of the rest of the message including the opcode field but not including the size field. |
| 0x02 | 2 / Little | uint16 | opcode | Opcode that determines which fields the message contains. |
Body
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x04 | 4 / Little | Spell | id | |
| 0x08 | 1 / - | SpellCastResult | result | |
| 0x09 | 1 / - | Bool | multiple_casts |
If result is equal to REQUIRES_SPELL_FOCUS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x0A | 4 / Little | u32 | spell_focus |
Else If result is equal to REQUIRES_AREA:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x0E | 4 / - | Area | area |
Else If result is equal to TOTEMS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x12 | 8 / - | u32[2] | totems |
Else If result is equal to TOTEM_CATEGORY:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x1A | 8 / - | u32[2] | totem_categories |
Else If result is equal to EQUIPPED_ITEM_CLASS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| 0x22 | 4 / Little | u32 | item_class | |
| 0x26 | 4 / Little | u32 | item_sub_class | |
| 0x2A | 4 / Little | u32 | item_inventory_type |
Client Version 3.3.5
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/pet/smsg_pet_cast_failed.wowm:35.
smsg SMSG_PET_CAST_FAILED = 0x0138 {
u8 cast_count;
Spell id;
SpellCastResult result;
Bool multiple_casts;
if (result == REQUIRES_SPELL_FOCUS) {
u32 spell_focus;
}
else if (result == REQUIRES_AREA) {
Area area;
}
else if (result == TOTEMS) {
u32[2] totems;
}
else if (result == TOTEM_CATEGORY) {
u32[2] totem_categories;
}
else if (result == EQUIPPED_ITEM_CLASS
|| result == EQUIPPED_ITEM_CLASS_OFFHAND
|| result == EQUIPPED_ITEM_CLASS_MAINHAND) {
u32 item_class;
u32 item_sub_class;
}
else if (result == TOO_MANY_OF_ITEM) {
u32 item_limit_category;
}
else if (result == CUSTOM_ERROR) {
u32 custom_error;
}
else if (result == REAGENTS) {
u32 missing_item;
}
else if (result == PREVENTED_BY_MECHANIC) {
u32 mechanic;
}
else if (result == NEED_EXOTIC_AMMO) {
u32 equipped_item_sub_class;
}
else if (result == NEED_MORE_ITEMS) {
Item item;
u32 count;
}
else if (result == MIN_SKILL) {
(u32)Skill skill;
u32 skill_required;
}
else if (result == FISHING_TOO_LOW) {
u32 fishing_skill_required;
}
}
Header
SMSG have a header of 4 bytes.
SMSG Header
| Offset | Size / Endianness | Type | Name | Description |
|---|---|---|---|---|
| 0x00 | 2 OR 3 / Big | uint16 OR uint16+uint8 | size | Size of the rest of the message including the opcode field but not including the size field. Wrath server messages can be 3 bytes. If the first (most significant) size byte has 0x80 set, the header will be 3 bytes, otherwise it is 2. |
| - | 2 / Little | uint16 | opcode | Opcode that determines which fields the message contains. |
Body
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 1 / - | u8 | cast_count | |
| - | 4 / Little | Spell | id | |
| - | 1 / - | SpellCastResult | result | |
| - | 1 / - | Bool | multiple_casts |
If result is equal to REQUIRES_SPELL_FOCUS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | spell_focus |
Else If result is equal to REQUIRES_AREA:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / - | Area | area |
Else If result is equal to TOTEMS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 8 / - | u32[2] | totems |
Else If result is equal to TOTEM_CATEGORY:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 8 / - | u32[2] | totem_categories |
Else If result is equal to EQUIPPED_ITEM_CLASS or
is equal to EQUIPPED_ITEM_CLASS_OFFHAND or
is equal to EQUIPPED_ITEM_CLASS_MAINHAND:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | item_class | |
| - | 4 / Little | u32 | item_sub_class |
Else If result is equal to TOO_MANY_OF_ITEM:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | item_limit_category |
Else If result is equal to CUSTOM_ERROR:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | custom_error |
Else If result is equal to REAGENTS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | missing_item |
Else If result is equal to PREVENTED_BY_MECHANIC:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | mechanic |
Else If result is equal to NEED_EXOTIC_AMMO:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | equipped_item_sub_class |
Else If result is equal to NEED_MORE_ITEMS:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | Item | item | |
| - | 4 / Little | u32 | count |
Else If result is equal to MIN_SKILL:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / - | Skill | skill | |
| - | 4 / Little | u32 | skill_required |
Else If result is equal to FISHING_TOO_LOW:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 4 / Little | u32 | fishing_skill_required |