Revision as of 08:40, 21 September 2010 by Dloman (talk | contribs)
Design icon.png This page contains the design document for an enhancement or feature. The design should be considered a work in progress and may not represent the final design. As this is a collaborative design, contributions and participation from other developers and users is encouraged. Use the discussion page for providing comments and suggestions.

Common Header Byte Format

All NetMsgs will contain a uniform header:

Element Length Notes
Magic1 int16 (2 Bytes) Always 0x41FE
Magic2 int16 (2 Bytes) Always 0x5309
MessageLength int32 (4 bytes)
MsgType int16 (2 bytes)
MessageUUID String (Variable bytes)
HasRegardingUUID Boolean (1 byte)
RegardingMessageUUID String (Variable bytes)

NetMsg Generic Templates

The GSNet Protocol provides several Template classes to be used or extended from.

NetMsg MsgTypes

Some NetMsgs will need to have custom bodies. Here is a list of NetMsgs, their related MsgTypes, and links to details on that specific NetMsg:

MsgTypeID Name Description
0x0050 Failure Uses Generic One Byte Msg.
0x0051 Success Uses Generic One Byte Msg.
0x0100 RemHostNameSET Uses Generic One String Msg.
0x0150 DisconnectREQ "MsgType Only" NetMsg and has no body.
0x0200 NewHostOnNet Uses Generic One String Msg.
0x0250 FullHostListREQ* Not Implemented Yet
0x0255 FullHostList* Not Implemented Yet
0x0300 NewSessionREQ*
0x0305 NewSession*
0x0310 LogoutSession
0x0400 GeometryREQ Uses Generic One String Msg in addition to custom fields.
0x0405 GeometryMANIFEST
0x0410 GeometryCHUNK Uses Generic Multi Byte Msg.