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:
Connecting client version. 0xABBC = version A.BB.C. For example, 0x4020 = 4.02.0
Used both as identification of the requested action, and of packet structure.
Total length of packet, in bytes (including headers)
General purpose result buffer
ID of the requesting game. Null terminated string; max 5 characters + 1 null.
ALL.Net store ID (also known as place 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.