SMSG_MONSTER_MOVE_TRANSPORT
Client Version 1.12, Client Version 2
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/movement/smsg/smsg_monster_move_transport.wowm:1.
smsg SMSG_MONSTER_MOVE_TRANSPORT = 0x02AE {
    PackedGuid guid;
    PackedGuid transport;
    Vector3d spline_point;
    u32 spline_id;
    MonsterMoveType move_type;
    if (move_type == FACING_TARGET) {
        Guid target;
    }
    else if (move_type == FACING_ANGLE) {
        f32 angle;
    }
    else if (move_type == FACING_SPOT) {
        Vector3d position;
    }
    SplineFlag spline_flags;
    u32 duration;
    MonsterMoveSplines splines;
}
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 | - / - | PackedGuid | guid | |
| - | - / - | PackedGuid | transport | |
| - | 12 / - | Vector3d | spline_point | |
| - | 4 / Little | u32 | spline_id | |
| - | 1 / - | MonsterMoveType | move_type | 
If move_type is equal to FACING_TARGET:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 8 / Little | Guid | target | 
Else If move_type is equal to FACING_ANGLE:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 4 / Little | f32 | angle | 
Else If move_type is equal to FACING_SPOT:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 12 / - | Vector3d | position | |
| - | 4 / - | SplineFlag | spline_flags | |
| - | 4 / Little | u32 | duration | |
| - | - / - | MonsterMoveSpline | splines | 
Client Version 3.3.5
Wowm Representation
Autogenerated from wowm file at wow_message_parser/wowm/world/movement/smsg/smsg_monster_move_transport.wowm:21.
smsg SMSG_MONSTER_MOVE_TRANSPORT = 0x02AE {
    PackedGuid guid;
    PackedGuid transport;
    u8 unknown;
    Vector3d spline_point;
    u32 spline_id;
    MonsterMoveType move_type;
    if (move_type == FACING_TARGET) {
        Guid target;
    }
    else if (move_type == FACING_ANGLE) {
        f32 angle;
    }
    else if (move_type == FACING_SPOT) {
        Vector3d position;
    }
    SplineFlag spline_flags;
    if (spline_flags & ENTER_CYCLE) {
        u32 animation_id;
        u32 animation_start_time;
    }
    u32 duration;
    if (spline_flags & PARABOLIC) {
        f32 vertical_acceleration;
        u32 effect_start_time;
    }
    MonsterMoveSplines splines;
}
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 0x80set, 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 | 
|---|---|---|---|---|
| - | - / - | PackedGuid | guid | |
| - | - / - | PackedGuid | transport | |
| - | 1 / - | u8 | unknown | cmangos-wotlk sets to 0 | 
| - | 12 / - | Vector3d | spline_point | |
| - | 4 / Little | u32 | spline_id | |
| - | 1 / - | MonsterMoveType | move_type | 
If move_type is equal to FACING_TARGET:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 8 / Little | Guid | target | 
Else If move_type is equal to FACING_ANGLE:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 4 / Little | f32 | angle | 
Else If move_type is equal to FACING_SPOT:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 12 / - | Vector3d | position | |
| - | 4 / - | SplineFlag | spline_flags | 
If spline_flags contains ENTER_CYCLE:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 4 / Little | u32 | animation_id | |
| - | 4 / Little | u32 | animation_start_time | |
| - | 4 / Little | u32 | duration | 
If spline_flags contains PARABOLIC:
| Offset | Size / Endianness | Type | Name | Comment | 
|---|---|---|---|---|
| - | 4 / Little | f32 | vertical_acceleration | |
| - | 4 / Little | u32 | effect_start_time | |
| - | - / - | MonsterMoveSpline | splines |