Пакет AuthLogin в Эпилог
Есть проблема с пакетом AuthLogin, который отправляю GameServ
В интерлюд все было Ок, гейм Грации не отвечает на этот пакет. Что записываю в AuthLogin: размер (2 байта) опкод пакета 0x2B (вместо 0x00) Затем строка userLogin, переведенная в 2х-байтовый формат. Которая завершается 0x00 0x00. Следующие 16 байт - это PlayKey2, PlayKey1, LoginKey1, LoginKey2. Дальше такое вот завершение 08 00 00 00 3C 01 00 00 00 00 00 00 00 00 00 00 При длине loginName в 5 байт, получаю длину пакета AuthLogin в 47 байт. 3+(loginLen*2+2)+16+4+12 = 47 (3 + 12 + 20 + 12) = 47 Что интересно, геймсерв не передает логину пакет 0x05 PlayerAuthRequest. И соответственно, не получает от него 0x03 PlayerAuthResponse. ..и поэтому клиент не проходит дальше логина, получая там статус AUTHED_LOGIN. По поводу sid1, sid2 java сервер видит их как четыре 8-байтовых числа: Session: PlayOk: 67192080 1468838267 LoginOk:494510696 603722778 playOkID: 4014510 : 578cb17b LoginID: 1d79a268 : 23fc141a в то же время клиент видит их как две строки по 8 unsigned char: LognKey: sid1 (ls): 68 a2 79 1d 1a 14 fc 23 PlayKey: sid2 (gs): 10 45 01 04 7b b1 8c 57 Версия протокола 152. |
Re: Пакет AuthLogin в Эпилог
Ищите source сборки эпилога, смотрите как там устроен этот пакет.
|
Re: Пакет AuthLogin в Эпилог
Разобрался. Причина была в предыдущем пакете серверу, ProtocolVersion (его контрольная сумма была вычислена неверно).
|
Текущее время: 04:45. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot