Przeglądaj źródła

Added support for 2018-01-17aRagexeRE

Fixed char select on 2018 clients
Lemongrass3110 7 lat temu
rodzic
commit
c4a57c571c
3 zmienionych plików z 34 dodań i 1 usunięć
  1. 1 1
      src/char/char_clif.cpp
  2. 2 0
      src/map/clif_obfuscation.hpp
  3. 31 0
      src/map/clif_shuffle.hpp

+ 1 - 1
src/char/char_clif.cpp

@@ -305,7 +305,7 @@ int chclif_parse_pincode_setnew( int fd, struct char_session_data* sd ){
 //----------------------------------------
 void chclif_charlist_notify( int fd, struct char_session_data* sd ){
 // This is needed on RE clients from october 2015 onwards
-#if defined(PACKETVER_RE) && PACKETVER >= 20151001
+#if defined(PACKETVER_RE) && PACKETVER >= 20151001 && PACKETVER < 20180103
 	WFIFOHEAD(fd, 10);
 	WFIFOW(fd, 0) = 0x9a0;
 	// pages to req / send them all in 1 until mmo_chars_fromsql can split them up

+ 2 - 0
src/map/clif_obfuscation.hpp

@@ -406,6 +406,8 @@
 		packet_keys(0x257A2F6E,0x51140EEE,0x00FA4452);
 	#elif PACKETVER == 20180103 // 2018-01-03aRagexeRE or 2018-01-03bRagexeRE
 		packet_keys(0x348F4BD7,0x7A425A54,0x628F589A);
+	#elif PACKETVER == 20180117 // 2018-01-17aRagexeRE
+		packet_keys(0x21F477F4,0x37F437F4,0x37F437F4);
 	#elif PACKETVER > 20110817
 		#error Unsupported packet version.
 	#endif

+ 31 - 0
src/map/clif_shuffle.hpp

@@ -4532,6 +4532,37 @@
 	parseable_packet(0x095D,10,clif_parse_UseSkillToPos,2,4,6,8);
 	parseable_packet(0x095F,6,clif_parse_DropItem,2,4);
 	parseable_packet(0x0960,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+// 2018-01-17aRagexeRE
+#elif PACKETVER == 20180117
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0875,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
 #endif
 
 #endif /* _CLIF_SHUFFLE_HPP_ */