SMSG_TALENTS_INFO
Client Version 3.3.5
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/spell/smsg_talents_info.wowm:17.
smsg SMSG_TALENTS_INFO = 0x04C0 {
TalentInfoType talent_type;
u32 points_left;
if (talent_type == PET) {
u8 amount_of_talents;
InspectTalent[amount_of_talents] talents;
}
else if (talent_type == PLAYER) {
u8 amount_of_specs;
u8 active_spec;
TalentInfoSpec[amount_of_specs] specs;
}
}
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 / - | TalentInfoType | talent_type | |
| - | 4 / Little | u32 | points_left |
If talent_type is equal to PET:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 1 / - | u8 | amount_of_talents | |
| - | ? / - | InspectTalent[amount_of_talents] | talents |
Else If talent_type is equal to PLAYER:
| Offset | Size / Endianness | Type | Name | Comment |
|---|---|---|---|---|
| - | 1 / - | u8 | amount_of_specs | |
| - | 1 / - | u8 | active_spec | |
| - | ? / - | TalentInfoSpec[amount_of_specs] | specs |