From 943c01d67d89adf4c30da29b95cf5ac639fae0a7 Mon Sep 17 00:00:00 2001 From: mekolat Date: Wed, 20 Apr 2016 14:02:03 -0400 Subject: add client version to packet 0x2b02 --- src/char/char.cpp | 5 ++++- src/map/chrif.cpp | 3 ++- tools/protocol.py | 3 ++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/char/char.cpp b/src/char/char.cpp index 3767c54..47fbba2 100644 --- a/src/char/char.cpp +++ b/src/char/char.cpp @@ -1781,7 +1781,7 @@ void parse_frommap(Session *ms) case 0x2b02: { Packet_Fixed<0x2b02> fixed; - rv = recv_fpacket<0x2b02, 18>(ms, fixed); + rv = recv_fpacket<0x2b02, 22>(ms, fixed); if (rv != RecvResult::Complete) break; @@ -1794,6 +1794,7 @@ void parse_frommap(Session *ms) auth_fifo_iter->login_id2 = fixed.login_id2; auth_fifo_iter->delflag = 2; auth_fifo_iter->ip = fixed.ip; + auth_fifo_iter->client_version = fixed.client_protocol_version; auth_fifo_iter++; Packet_Fixed<0x2b03> fixed_03; @@ -2277,6 +2278,8 @@ void parse_char(Session *s) send_fpacket<0x2716, 6>(login_session, fixed_16); } + sd->client_version = afi.client_version; + // send characters to player mmo_char_send006b(s, sd); } diff --git a/src/map/chrif.cpp b/src/map/chrif.cpp index 708cbe1..42a13cf 100644 --- a/src/map/chrif.cpp +++ b/src/map/chrif.cpp @@ -334,7 +334,8 @@ int chrif_charselectreq(dumb_ptr sd) fixed_02.login_id1 = sd->login_id1; fixed_02.login_id2 = sd->login_id2; fixed_02.ip = s_ip; - send_fpacket<0x2b02, 18>(char_session, fixed_02); + fixed_02.client_protocol_version = sd->client_version; + send_fpacket<0x2b02, 22>(char_session, fixed_02); return 0; } diff --git a/tools/protocol.py b/tools/protocol.py index 0adc95a..5a9e05c 100755 --- a/tools/protocol.py +++ b/tools/protocol.py @@ -5321,8 +5321,9 @@ def build_context(): at(6, u32, 'login id1'), at(10, u32, 'login id2'), at(14, ip4, 'ip'), + at(18, client_version, 'client protocol version'), ], - fixed_size=18, + fixed_size=22, pre=[0x00b2], post=[0x2b03], desc=''' -- cgit v1.2.3-70-g09d2