When I send 0x50 I get nothing back but the following:
ff 00 04 00
And that message comes after a long period of time; it looks more like a keepalive message than anything else. Does anyone know why I not getting the 0x25 ping value that I'm supposed to be getting?
Anyways, here's what I send:
01 ff 50 00 00 00 00 36 38 58 49 50 58 45 53 cd ..P....68XIPXES.
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 55 53 41 00 55 6e 69 74 65 .......USA.Unite
64 20 53 74 61 74 65 73 00 d States.
Length: 57
And here's some code if it is easier on your eyes:
public class SidAuthInfoCS extends BNCSBuffer
{
public SidAuthInfoCS(String productID)
{ // 0x01 is added at front by BNCSBuffer to signify game protocol
super((byte) 0x50); // message ID
addDWord(0x00); // protocol id
addString("68XI"); // platform id
addString(productID); // product id
addDWord(0xCD); // version byte
addDWord(0x00); // product language - ok to set to 0
addDWord(0x00); // local ip - ok to set to 0
addDWord(0x00); // time zone bias
addDWord(0x00); // locale id
addDWord(0x00); // language id
addNTString("USA"); // country abbrev.
addNTString("United States"); // country
}
}
Thanks in advance.
You're sending a length of zero for your first message. I'm rather surprised the server didn't ban you outright for that.