SMSG_PARTY_MEMBER_STATS_FULL

Client Version 1.12

Wowm Representation

Autogenerated from wowm file at wow_message_parser/wowm/world/social/smsg_party_member_stats_full.wowm:1.

smsg SMSG_PARTY_MEMBER_STATS_FULL = 0x02F2 {
    PackedGuid player;
    GroupUpdateFlags mask;
    if (mask & STATUS) {
        GroupMemberOnlineStatus status;
    }
    if (mask & CUR_HP) {
        u16 current_health;
    }
    if (mask & MAX_HP) {
        u16 max_health;
    }
    if (mask & POWER_TYPE) {
        Power power;
    }
    if (mask & CUR_POWER) {
        u16 current_power;
    }
    if (mask & MAX_POWER) {
        u16 max_power;
    }
    if (mask & LEVEL) {
        Level16 level;
    }
    if (mask & ZONE) {
        Area area;
    }
    if (mask & POSITION) {
        u16 position_x;
        u16 position_y;
    }
    if (mask & AURAS) {
        AuraMask auras;
    }
    if (mask & PET_GUID) {
        Guid pet;
    }
    if (mask & PET_NAME) {
        CString pet_name;
    }
    if (mask & PET_MODEL_ID) {
        u16 pet_display_id;
    }
    if (mask & PET_CUR_HP) {
        u16 pet_current_health;
    }
    if (mask & PET_MAX_HP) {
        u16 pet_max_health;
    }
    if (mask & PET_POWER_TYPE) {
        Power pet_power_type;
    }
    if (mask & PET_CUR_POWER) {
        u16 pet_current_power;
    }
    if (mask & PET_MAX_POWER) {
        u16 pet_max_power;
    }
    if (mask & PET_AURAS) {
        AuraMask pet_auras;
    }
}

SMSG have a header of 4 bytes.

SMSG Header

OffsetSize / EndiannessTypeNameDescription
0x002 / Biguint16sizeSize of the rest of the message including the opcode field but not including the size field.
0x022 / Littleuint16opcodeOpcode that determines which fields the message contains.

Body

OffsetSize / EndiannessTypeNameComment
0x04- / -PackedGuidplayer
-4 / -GroupUpdateFlagsmask

If mask contains STATUS:

OffsetSize / EndiannessTypeNameComment
-1 / -GroupMemberOnlineStatusstatus

If mask contains CUR_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16current_health

If mask contains MAX_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16max_health

If mask contains POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpower

If mask contains CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16current_power

If mask contains MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16max_power

If mask contains LEVEL:

OffsetSize / EndiannessTypeNameComment
-2 / LittleLevel16level

If mask contains ZONE:

OffsetSize / EndiannessTypeNameComment
-4 / -Areaarea

If mask contains POSITION:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16position_xcmangos: float cast to u16
-2 / Littleu16position_ycmangos: float cast to u16

If mask contains AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskaurascmangos: In all checked pre-2.x data of packets included only positive auras

If mask contains PET_GUID:

OffsetSize / EndiannessTypeNameComment
-8 / LittleGuidpet

If mask contains PET_NAME:

OffsetSize / EndiannessTypeNameComment
-- / -CStringpet_name

If mask contains PET_MODEL_ID:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_display_id

If mask contains PET_CUR_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_current_health

If mask contains PET_MAX_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_max_health

If mask contains PET_POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpet_power_type

If mask contains PET_CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_current_power

If mask contains PET_MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_max_power

If mask contains PET_AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskpet_auras

Client Version 2.4.3

Wowm Representation

Autogenerated from wowm file at wow_message_parser/wowm/world/social/smsg_party_member_stats_full.wowm:69.

smsg SMSG_PARTY_MEMBER_STATS_FULL = 0x02F2 {
    PackedGuid guid;
    GroupUpdateFlags mask;
    if (mask & STATUS) {
        GroupMemberOnlineStatus status;
    }
    if (mask & CUR_HP) {
        u16 current_health;
    }
    if (mask & MAX_HP) {
        u16 max_health;
    }
    if (mask & POWER_TYPE) {
        Power power;
    }
    if (mask & CUR_POWER) {
        u16 current_power;
    }
    if (mask & MAX_POWER) {
        u16 max_power;
    }
    if (mask & LEVEL) {
        Level16 level;
    }
    if (mask & ZONE) {
        Area area;
    }
    if (mask & POSITION) {
        u16 position_x;
        u16 position_y;
    }
    if (mask & AURAS) {
        AuraMask auras;
    }
    if (mask & PET_GUID) {
        Guid pet;
    }
    if (mask & PET_NAME) {
        CString pet_name;
    }
    if (mask & PET_MODEL_ID) {
        u16 pet_display_id;
    }
    if (mask & PET_CUR_HP) {
        u16 pet_current_health;
    }
    if (mask & PET_MAX_HP) {
        u16 pet_max_health;
    }
    if (mask & PET_POWER_TYPE) {
        Power pet_power_type;
    }
    if (mask & PET_CUR_POWER) {
        u16 pet_current_power;
    }
    if (mask & PET_MAX_POWER) {
        u16 pet_max_power;
    }
    if (mask & PET_AURAS) {
        AuraMask pet_auras;
    }
}

Header

SMSG have a header of 4 bytes.

SMSG Header

OffsetSize / EndiannessTypeNameDescription
0x002 / Biguint16sizeSize of the rest of the message including the opcode field but not including the size field.
0x022 / Littleuint16opcodeOpcode that determines which fields the message contains.

Body

OffsetSize / EndiannessTypeNameComment
0x04- / -PackedGuidguid
-4 / -GroupUpdateFlagsmask

If mask contains STATUS:

OffsetSize / EndiannessTypeNameComment
-1 / -GroupMemberOnlineStatusstatus

If mask contains CUR_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16current_health

If mask contains MAX_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16max_health

If mask contains POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpower

If mask contains CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16current_power

If mask contains MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16max_power

If mask contains LEVEL:

OffsetSize / EndiannessTypeNameComment
-2 / LittleLevel16level

If mask contains ZONE:

OffsetSize / EndiannessTypeNameComment
-4 / -Areaarea

If mask contains POSITION:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16position_xcmangos: float cast to u16
-2 / Littleu16position_ycmangos: float cast to u16

If mask contains AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskaurascmangos: In all checked pre-2.x data of packets included only positive auras

If mask contains PET_GUID:

OffsetSize / EndiannessTypeNameComment
-8 / LittleGuidpet

If mask contains PET_NAME:

OffsetSize / EndiannessTypeNameComment
-- / -CStringpet_name

If mask contains PET_MODEL_ID:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_display_id

If mask contains PET_CUR_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_current_health

If mask contains PET_MAX_HP:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_max_health

If mask contains PET_POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpet_power_type

If mask contains PET_CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_current_power

If mask contains PET_MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_max_power

If mask contains PET_AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskpet_auras

Client Version 3.3.5

Wowm Representation

Autogenerated from wowm file at wow_message_parser/wowm/world/social/smsg_party_member_stats_full.wowm:137.

smsg SMSG_PARTY_MEMBER_STATS_FULL = 0x02F2 {
    PackedGuid guid;
    GroupUpdateFlags mask;
    if (mask & STATUS) {
        GroupMemberOnlineStatus status;
    }
    if (mask & CUR_HP) {
        u32 current_health;
    }
    if (mask & MAX_HP) {
        u32 max_health;
    }
    if (mask & POWER_TYPE) {
        Power power;
    }
    if (mask & CUR_POWER) {
        u16 current_power;
    }
    if (mask & MAX_POWER) {
        u16 max_power;
    }
    if (mask & LEVEL) {
        Level16 level;
    }
    if (mask & ZONE) {
        Area area;
    }
    if (mask & POSITION) {
        u16 position_x;
        u16 position_y;
    }
    if (mask & AURAS) {
        AuraMask auras;
    }
    if (mask & PET_GUID) {
        Guid pet;
    }
    if (mask & PET_NAME) {
        CString pet_name;
    }
    if (mask & PET_MODEL_ID) {
        u16 pet_display_id;
    }
    if (mask & PET_CUR_HP) {
        u32 pet_current_health;
    }
    if (mask & PET_MAX_HP) {
        u32 pet_max_health;
    }
    if (mask & PET_POWER_TYPE) {
        Power pet_power_type;
    }
    if (mask & PET_CUR_POWER) {
        u16 pet_current_power;
    }
    if (mask & PET_MAX_POWER) {
        u16 pet_max_power;
    }
    if (mask & PET_AURAS) {
        AuraMask pet_auras;
    }
    if (mask & VEHICLE_SEAT) {
        u32 transport;
    }
}

Header

SMSG have a header of 4 bytes.

SMSG Header

OffsetSize / EndiannessTypeNameDescription
0x002 OR 3 / Biguint16 OR uint16+uint8sizeSize 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 / Littleuint16opcodeOpcode that determines which fields the message contains.

Body

OffsetSize / EndiannessTypeNameComment
-- / -PackedGuidguid
-4 / -GroupUpdateFlagsmask

If mask contains STATUS:

OffsetSize / EndiannessTypeNameComment
-1 / -GroupMemberOnlineStatusstatus

If mask contains CUR_HP:

OffsetSize / EndiannessTypeNameComment
-4 / Littleu32current_health

If mask contains MAX_HP:

OffsetSize / EndiannessTypeNameComment
-4 / Littleu32max_health

If mask contains POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpower

If mask contains CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16current_power

If mask contains MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16max_power

If mask contains LEVEL:

OffsetSize / EndiannessTypeNameComment
-2 / LittleLevel16level

If mask contains ZONE:

OffsetSize / EndiannessTypeNameComment
-4 / -Areaarea

If mask contains POSITION:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16position_xcmangos: float cast to u16
-2 / Littleu16position_ycmangos: float cast to u16

If mask contains AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskaurascmangos: In all checked pre-2.x data of packets included only positive auras

If mask contains PET_GUID:

OffsetSize / EndiannessTypeNameComment
-8 / LittleGuidpet

If mask contains PET_NAME:

OffsetSize / EndiannessTypeNameComment
-- / -CStringpet_name

If mask contains PET_MODEL_ID:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_display_id

If mask contains PET_CUR_HP:

OffsetSize / EndiannessTypeNameComment
-4 / Littleu32pet_current_health

If mask contains PET_MAX_HP:

OffsetSize / EndiannessTypeNameComment
-4 / Littleu32pet_max_health

If mask contains PET_POWER_TYPE:

OffsetSize / EndiannessTypeNameComment
-1 / -Powerpet_power_type

If mask contains PET_CUR_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_current_power

If mask contains PET_MAX_POWER:

OffsetSize / EndiannessTypeNameComment
-2 / Littleu16pet_max_power

If mask contains PET_AURAS:

OffsetSize / EndiannessTypeNameComment
-- / -AuraMaskpet_auras

If mask contains VEHICLE_SEAT:

OffsetSize / EndiannessTypeNameComment
-4 / Littleu32transport