Ever packet begins with the following 32-byte structure:
All values in the header are unsigned, with the exception of the strings. The meaning of each field is as follows:
Field
Meaning
Magic
Constant 0xA13E
Version
Connecting client version. 0xABBC = version A.BB.C. For example, 0x4020 = 4.02.0
Command ID
Used both as identification of the requested action, and of packet structure.
Length
Total length of packet, in bytes (including headers)
Result
General purpose result buffer
Game ID
ID of the requesting game. Null terminated string; max 5 characters + 1 null.
Store ID
ALL.Net store ID (also known as place ID)
Keychip ID
ID of the requesting keychip. Null terminated string; max 11 characters + 1 null.
Both servers and clients should validate that the specified length matches the expected length derived from the command ID before continuing to process the remainder of the packet.
3.2 Access Codes
Access codes are transmitted as a hex literal, rather than as an ASCII string. That is, the access code 0103 5640 2680 5409 8707 would be represented as the 10 byte sequence 01 03 56 40 26 80 54 09 87 07.