payload 1 (variable) payload 2 (optional, variable) payload n-1 (optional, variable) payload n (optional, variable) In the preceding example, the following field types are represented. bSize 1 through bSize n: The least significant 8 bits of the size of the coalesced payload. The value is combined with the optional PACKET_COMMAND_COALESCE_BIG_1, PACKET_COMMAND_COALESCE_BIG_2, and PACKET_COMMAND_COALESCE_BIG_3 flags to determine the actual size of the payload. This MUST NOT be larger than what can fit in a standard DFRAME, including any size already used to store previous coalesce headers and payloads. bCommand 1 through bCommand n: The command field for the coalesced message. The PACKET_COMMAND_USER_1 flag MUST be set. All other flags are optional. Value Meaning 0x01 PACKET_COMMAND_END_COALESCE (Indicates that this is the final coalesced payload in the frame). 0x02 PACKET_COMMAND_RELIABLE (Specifies that the payload SHOULD be delivered reliably). 0x04 PACKET_COMMAND_SEQUENTIAL (Specifies that the payload SHOULD be indicated sequentially). 0x08 PACKET_COMMAND_COALESCE_BIG_1 (Represents bit 9 of the coalesced payload size). 0x10 PACKET_COMMAND_COALESCE_BIG_2 (Represents bit 10 of the coalesced payload size). 0x20 PACKET_COMMAND_COALESCE_BIG_3 (Represents bit 11 of the coalesced payload size, which is the most significant bit). 0x40 PACKET_COMMAND_USER_1 (Indicates that the payload is an internal session management message). payload 1 through payload n: Contains the consumer payload data. TRANS_USERDATA_HOST_MIGRATE The TRANS_USERDATA_HOST_MIGRATE packet indicates that host migration is enabled, and the host server is terminating. This packet begins with a . 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 3 0 1 dwPacketType dpnidOldHost dpnidNewHost
Index _ 15 15 A Abstract data model client ( 59, 70) 59 server ( 59, 70) 68 13 C 13 79 Chat messages 67 61 Chat session 65 65 Client abstract data model ( 59, 70) higher-layer triggered events ( 61, 71) initialization ( 60, 71) local events ( 70, 71) message processing ( 61, 71) 71 sequencing rules ( 61, 71) timer events ( 69, 71) timers ( 59, 71) 72 72 67 67 D Data model - abstract client ( 59, 70) 59 server ( 59, 70) DirectPlay session 63 61 61 52 54 55 54 55 56 50 52 15 DXDiag chat session example 72 72 17 E 18 18 19 19 Examples 72 72 72 F 14 G 7 H Higher-layer triggered events client ( 61, 71) server ( 61, 70) I 75 55 56 75 11 Initialization client ( 60, 71) server ( 60, 70) 7 L Local events client ( 70, 71) server ( 70, 70) M Message processing client ( 61, 71) server ( 61, 70) Messages 15 61 52 54 55 56 15 17 18 19 57 22
15 23 24 26 40 28 28 30 30 32 33 34 37 38 38 39 44 45 39 39 41 44 40 45 46 46 46 32 15 N 72 11 O Other local events 71 70 11 P 75 57 57 13 13 76 R 10 11 11 13 S 68 Security 75 75 68 67 Sequencing rules client ( 61, 71) server ( 61, 70) Server abstract data model ( 59, 70) higher-layer triggered events ( 61, 70) initialization ( 60, 70) local events ( 70, 70) message processing ( 61, 70) 70 sequencing rules ( 61, 70) timer events ( 69, 70) timers ( 59, 70) 22 22 14 15 T Timer events client ( 69, 71) server ( 69, 70) Timers client ( 59, 71) connect retry ( 59, 69) 70 60 EnumQuery retry ( 59, 69) KeepAlive retry ( 60, 69) Path Test retry ( 60, 69) retry ( 59, 69) server ( 59, 70) 79 23 23 24 24 26 26 40 40 28 28 28 28 30 30 30 30 32 32 33 33 34 34 37 37 38 38 38 38 39