diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-05-19 22:16:48 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-06-03 19:11:56 +0300 |
commit | dd4b5f82e863de43a94c0ad023d4887f3308fede (patch) | |
tree | a72677b1d54d54bbb36db8881de8bd22b85da0c0 /src/login | |
parent | 3b8e620ecfc25f6c7e7c00178db60a1657fd0d6b (diff) | |
download | hercules-dd4b5f82e863de43a94c0ad023d4887f3308fede.tar.gz hercules-dd4b5f82e863de43a94c0ad023d4887f3308fede.tar.bz2 hercules-dd4b5f82e863de43a94c0ad023d4887f3308fede.tar.xz hercules-dd4b5f82e863de43a94c0ad023d4887f3308fede.zip |
Add packet 0x0ac4 for 2017-03-15+ based on 3CeAM commit:
commit 70e0efb7035707542a091c8f2edb533f89b2552f
Author: rytech16 <rytech16@cad27aaa-dce3-4a30-a00a-e4fd67c11881>
Date: Tue Apr 18 21:42:40 2017 +0000
=General
*Added temporarly support for the 2017-03-29dRagexeRE
-This is for experimental testing and will not stay in the future.
*Added support for the AC_ACCEPT_LOGIN4 packet.
-March 2017 and newer clients require this since they no longer
-support the legacy AC_ACCEPT_LOGIN packet.
git-svn-id: svn://svn.code.sf.net/p/v1-3ceam/code/trunk@816 cad27aaa-dce3-4a30-a00a-e4fd67c11881
Diffstat (limited to 'src/login')
-rw-r--r-- | src/login/lclif.c | 4 | ||||
-rw-r--r-- | src/login/lclif.p.h | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/login/lclif.c b/src/login/lclif.c index 3ed257e85..f32538610 100644 --- a/src/login/lclif.c +++ b/src/login/lclif.c @@ -262,7 +262,11 @@ bool lclif_send_server_list(struct login_session_data *sd) WFIFOHEAD(sd->fd, length); packet = WP2PTR(sd->fd); +#if PACKETVER < 20170315 packet->packet_id = PACKET_ID_AC_ACCEPT_LOGIN; +#else + packet->packet_id = PACKET_ID_AC_ACCEPT_LOGIN2; +#endif packet->packet_len = length; packet->auth_code = sd->login_id1; packet->aid = sd->account_id; diff --git a/src/login/lclif.p.h b/src/login/lclif.p.h index ae9d1bc14..d28f1c587 100644 --- a/src/login/lclif.p.h +++ b/src/login/lclif.p.h @@ -56,7 +56,9 @@ enum login_packet_id { //PACKET_ID_CA_SSO_LOGIN_REQa = 0x825a, /* unused */ // AC (Login to Client) + PACKET_ID_AC_ACCEPT_LOGIN = 0x0069, + PACKET_ID_AC_ACCEPT_LOGIN2 = 0x0ac4, PACKET_ID_AC_REFUSE_LOGIN = 0x006a, PACKET_ID_SC_NOTIFY_BAN = 0x0081, PACKET_ID_AC_ACK_HASH = 0x01dc, @@ -256,6 +258,9 @@ struct packet_AC_ACCEPT_LOGIN { uint32 last_login_ip; ///< Last login IP char last_login_time[26]; ///< Last login timestamp uint8 sex; ///< Account sex +#if PACKETVER >= 20170315 + char unknown1[17]; +#endif struct { uint32 ip; ///< Server IP address int16 port; ///< Server port @@ -263,6 +268,9 @@ struct packet_AC_ACCEPT_LOGIN { uint16 usercount; ///< Online users uint16 state; ///< Server state uint16 property; ///< Server property +#if PACKETVER >= 20170315 + char unknown2[128]; +#endif } server_list[]; ///< List of charservers } __attribute__((packed)); |