From a6f6b34df65d36fb7609b93c2305c8507dc79e8d Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 28 Jun 2018 00:00:13 +0300 Subject: Add support for new auth error packet in zero. Add support for known auth error packets in map server (before was used only old packet). --- src/map/packets_struct.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/map/packets_struct.h') diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h index bcdf1061a..f1cb408ba 100644 --- a/src/map/packets_struct.h +++ b/src/map/packets_struct.h @@ -373,6 +373,13 @@ enum packet_headers { #elif PACKETVER >= 20150128 openUiType = 0xA38, #endif +#if PACKETVER_ZERO_NUM >= 20180627 + authError = 0xb02, +#elif PACKETVER >= 20101123 + authError = 0x83e, +#else + authError = 0x6a, +#endif }; #if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute @@ -1774,6 +1781,16 @@ struct PACKET_CZ_PET_EVOLUTION { // struct pet_evolution_items items[]; } __attribute__((packed)); +struct packet_ZC_REFUSE_LOGIN { + int16 PacketType; +#if PACKETVER >= 20101123 + uint32 error_code; +#else + uint8 error_code; +#endif + char block_date[20]; +} __attribute__((packed)); + #if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute #pragma pack(pop) #endif // not NetBSD < 6 / Solaris -- cgit v1.2.3-70-g09d2 From 8ce6947f6754c797e0557e54af42223212028bb0 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 28 Jun 2018 01:22:05 +0300 Subject: Fix for clif_parse_RouletteInfo for new 2018 clients. --- src/map/clif.c | 3 +++ src/map/packets_struct.h | 6 ++++++ 2 files changed, 9 insertions(+) (limited to 'src/map/packets_struct.h') diff --git a/src/map/clif.c b/src/map/clif.c index dfd49914a..820a219f6 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -19284,6 +19284,9 @@ void clif_parse_RouletteInfo(int fd, struct map_session_data* sd) p.ItemInfo[count].Position = j; p.ItemInfo[count].ItemId = clif->rd.nameid[i][j]; p.ItemInfo[count].Count = clif->rd.qty[i][j]; +#if PACKETVER >= 20180523 // unknown real version + p.ItemInfo[count].unused = 0; +#endif count++; } } diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h index f1cb408ba..665ef78cc 100644 --- a/src/map/packets_struct.h +++ b/src/map/packets_struct.h @@ -1015,8 +1015,14 @@ struct packet_roulette_info_ack { struct { uint16 Row; uint16 Position; +#if PACKETVER >= 20180523 // unknown real version + uint32 ItemId; + uint16 Count; + uint16 unused; +#else uint16 ItemId; uint16 Count; +#endif } ItemInfo[42]; } __attribute__((packed)); -- cgit v1.2.3-70-g09d2