Revision as of 07:23, 21 September 2010 by Dloman (talk | contribs) (NetMsg Generic Templates)
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
0 Failure Uses Generic One Byte msg
5 Success
100 RemHostNameSET
150 DisconnectREQ
200 NewHostOnNet
250 FullHostListREQ*
260 FullHostList*
300 NewSessionREQ*
305 NewSession*
400 GeometryREQ
405 GeometryMANIFEST
410 GeometryCHUNK