|OGP Header (Query)
||Value: "OGP" (4 bytes incl. 0 byte)
||Size in bytes of the ogp header including this field but without the prefix.
||0x00 - Ping
0x01 - Default query v1
0x02 - (Rcon)
0x03 - Master Server Uplink (answer only)
0xFF - Error (answer only)
Bit 0.0: bAnswer = 0
Bit 0.1: bChallengeNumber
Bit 0.2: bRequestID
Bit 0.3: bSplit
Bit 0.4: (bPassword)
The server ignores the query if bAnswer is set.
The password field is reserved for future. It is needed for ogp rcon protocol and to request sensitiv information about some player via default protocol (e.g. IP address)
||The challenge number to query the server. If the number is wrong or you don't specify one, you'll get one per answer packet. Send a challenge number of 0 to request a new one.
OGP uses the challenge number mechanism to prevent DDoS attacks using ip spooling. It is ip dependent and can change at any time.
The number is not mandatory for every ogp service and depends on the server implementation.
||User definied ID to associate an answer packet with a query and to detect duplicated UDP packets. If RequestID = 0 the server will choose a request id.
||Maximum number of bytes a UDP packet may contain. Valid range: 500 - 1500. Default 1400