summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2016-11-03 21:27:22 +0100
committerGitHub <noreply@github.com>2016-11-03 21:27:22 +0100
commit1a623ffce387f82cf8e8d038b9069594459c5440 (patch)
treebd3f335cb15b2e8e91b85e269c53a10d6d347837
parent423d148f614c2f8fa91d669c8d5361ee6e01ac27 (diff)
parent9fd868cd971e9bd2e811c0037b6545833da5f954 (diff)
downloadhercules-1a623ffce387f82cf8e8d038b9069594459c5440.tar.gz
hercules-1a623ffce387f82cf8e8d038b9069594459c5440.tar.bz2
hercules-1a623ffce387f82cf8e8d038b9069594459c5440.tar.xz
hercules-1a623ffce387f82cf8e8d038b9069594459c5440.zip
Merge pull request #1504 from 4144/packets
Add some new packets and fix packet versions
-rw-r--r--src/map/clif.c57
-rw-r--r--src/map/packets.h228
2 files changed, 210 insertions, 75 deletions
diff --git a/src/map/clif.c b/src/map/clif.c
index 424d94205..5d9802b57 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -1360,7 +1360,7 @@ void clif_spiritball_single(int fd, struct map_session_data *sd) {
*------------------------------------------*/
void clif_charm_single(int fd, struct map_session_data *sd)
{
-#if PACKETVER >= 20120410
+#if PACKETVER >= 20110809
nullpo_retv(sd);
WFIFOHEAD(fd, packet_len(0x08cf));
WFIFOW(fd,0) = 0x08cf;
@@ -6418,12 +6418,12 @@ void clif_openvending(struct map_session_data* sd, int id, struct s_vending* ven
}
WFIFOSET(fd,WFIFOW(fd,2));
-#if PACKETVER >= 20141022
+#if PACKETVER >= 20140625
/** should go elsewhere perhaps? it has to be bundled with this however. **/
- WFIFOHEAD(fd, 3);
+ WFIFOHEAD(fd, packet_len(0xa28));
WFIFOW(fd, 0) = 0xa28;
WFIFOB(fd, 2) = 0;/** 1 is failure. our current responses to failure are working so not yet implemented **/
- WFIFOSET(fd, 3);
+ WFIFOSET(fd, packet_len(0xa28));
#endif
}
@@ -14222,11 +14222,12 @@ void clif_ranklist(struct map_session_data *sd, enum fame_list_type type)
int fd;
int mypoint = 0;
int upperMask;
+ int len = packet_len(0x97d);
nullpo_retv(sd);
fd = sd->fd;
upperMask = sd->class_&MAPID_UPPERMASK;
- WFIFOHEAD(fd, 288);
+ WFIFOHEAD(fd, len);
WFIFOW(fd, 0) = 0x97d;
WFIFOW(fd, 2) = type;
clif_ranklist_sub(WFIFOP(fd,4), type);
@@ -14241,7 +14242,7 @@ void clif_ranklist(struct map_session_data *sd, enum fame_list_type type)
}
WFIFOL(fd, 284) = mypoint; //mypoint
- WFIFOSET(fd, 288);
+ WFIFOSET(fd, len);
#endif
}
@@ -14262,8 +14263,9 @@ void clif_parse_ranklist(int fd, struct map_session_data *sd) {
}
// 097e <RankingType>.W <point>.L <TotalPoint>.L (ZC_UPDATE_RANKING_POINT)
-void clif_update_rankingpoint(struct map_session_data *sd, enum fame_list_type type, int points) {
-#if PACKETVER < 20130710
+void clif_update_rankingpoint(struct map_session_data *sd, enum fame_list_type type, int points)
+{
+#if PACKETVER < 20120502
switch( type ) {
case RANKTYPE_BLACKSMITH: clif->fame_blacksmith(sd,points); break;
case RANKTYPE_ALCHEMIST: clif->fame_alchemist(sd,points); break;
@@ -14272,15 +14274,16 @@ void clif_update_rankingpoint(struct map_session_data *sd, enum fame_list_type t
#else
int fd;
+ int len = packet_len(0x97e);
nullpo_retv(sd);
fd = sd->fd;
- WFIFOHEAD(fd, 12);
+ WFIFOHEAD(fd, len);
WFIFOW(fd, 0) = 0x97e;
WFIFOW(fd, 2) = type;
WFIFOL(fd, 4) = points;
WFIFOL(fd, 8) = sd->status.fame;
- WFIFOSET(fd, 12);
+ WFIFOSET(fd, len);
#endif
}
@@ -17494,7 +17497,7 @@ void clif_parse_SkillSelectMenu(int fd, struct map_session_data *sd) {
*------------------------------------------*/
void clif_charm(struct map_session_data *sd)
{
-#if PACKETVER >= 20120410
+#if PACKETVER >= 20110809
unsigned char buf[10];
nullpo_retv(sd);
@@ -17620,7 +17623,7 @@ void clif_favorite_item(struct map_session_data* sd, unsigned short index) {
}
void clif_snap( struct block_list *bl, short x, short y ) {
-#if PACKETVER >= 20111005
+#if PACKETVER >= 20110809
unsigned char buf[10];
nullpo_retv(bl);
@@ -17675,7 +17678,9 @@ void clif_parse_CashShopClose(int fd, struct map_session_data *sd) {
}
void clif_parse_CashShopSchedule(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
-void clif_parse_CashShopSchedule(int fd, struct map_session_data *sd) {
+void clif_parse_CashShopSchedule(int fd, struct map_session_data *sd)
+{
+#if PACKETVER >= 20110614
int i, j = 0;
for( i = 0; i < CASHSHOP_TAB_MAX; i++ ) {
@@ -17695,6 +17700,7 @@ void clif_parse_CashShopSchedule(int fd, struct map_session_data *sd) {
WFIFOSET(fd, 8 + ( clif->cs.item_count[i] * 6 ));
}
+#endif
}
void clif_parse_CashShopBuy(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
@@ -17788,7 +17794,9 @@ void clif_parse_CashShopBuy(int fd, struct map_session_data *sd) {
void clif_parse_CashShopReqTab(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
/* [Ind/Hercules] */
-void clif_parse_CashShopReqTab(int fd, struct map_session_data *sd) {
+void clif_parse_CashShopReqTab(int fd, struct map_session_data *sd)
+{
+#if PACKETVER >= 20110222
short tab = RFIFOW(fd, 2);
int j;
@@ -17807,9 +17815,12 @@ void clif_parse_CashShopReqTab(int fd, struct map_session_data *sd) {
}
WFIFOSET(fd, 10 + ( clif->cs.item_count[tab] * 6 ));
+#endif
}
+
/* [Ind/Hercules] */
-void clif_maptypeproperty2(struct block_list *bl,enum send_target t) {
+void clif_maptypeproperty2(struct block_list *bl,enum send_target t)
+{
#if PACKETVER >= 20121010
struct packet_maptypeproperty2 p;
struct map_session_data *sd = NULL;
@@ -17862,6 +17873,7 @@ void clif_partytickack(struct map_session_data* sd, bool flag) {
void clif_ShowScript(struct block_list *bl, const char *message)
{
+#if PACKETVER >= 20110111
char buf[256];
int len;
nullpo_retv(bl);
@@ -17881,6 +17893,7 @@ void clif_ShowScript(struct block_list *bl, const char *message)
WBUFL(buf,4) = bl->id;
safestrncpy(WBUFP(buf,8),message,len);
clif->send(buf,WBUFW(buf,2),bl,AREA);
+#endif
}
void clif_status_change_end(struct block_list *bl, int tid, enum send_target target, int type) {
@@ -18037,14 +18050,17 @@ void clif_bgqueue_battlebegins(struct map_session_data *sd, unsigned char arena_
clif->send(&p,sizeof(p), &sd->bl, target);
}
-void clif_scriptclear(struct map_session_data *sd, int npcid) {
+void clif_scriptclear(struct map_session_data *sd, int npcid)
+{
+#if PACKETVER >= 20110928
struct packet_script_clear p;
nullpo_retv(sd);
p.PacketType = script_clearType;
p.NpcID = npcid;
- clif->send(&p,sizeof(p), &sd->bl, SELF);
+ clif->send(&p, sizeof(p), &sd->bl, SELF);
+#endif
}
/* Made Possible Thanks to Yommy! */
@@ -18953,13 +18969,14 @@ void clif_selectcart(struct map_session_data *sd)
/// Starts navigation to the given target on client side
void clif_navigate_to(struct map_session_data *sd, const char* mapname, uint16 x, uint16 y, uint8 flag, bool hideWindow, uint16 mob_id)
{
-#if PACKETVER >= 20111010
+// probably this packet with other fields present in older packet versions
+#if PACKETVER >= 20120307
int fd;
nullpo_retv(sd);
nullpo_retv(mapname);
fd = sd->fd;
- WFIFOHEAD(fd, 27);
+ WFIFOHEAD(fd, packet_len(0x8e2));
WFIFOW(fd, 0) = 0x8e2;
// How detailed will our navigation be?
@@ -18987,7 +19004,7 @@ void clif_navigate_to(struct map_session_data *sd, const char* mapname, uint16 x
WFIFOW(fd, 23) = y;
// Target monster ID
WFIFOW(fd, 25) = mob_id;
- WFIFOSET(fd, 27);
+ WFIFOSET(fd, packet_len(0x8e2));
#endif
}
diff --git a/src/map/packets.h b/src/map/packets.h
index 3dc23cb24..c622cb89d 100644
--- a/src/map/packets.h
+++ b/src/map/packets.h
@@ -1868,15 +1868,111 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0859,-1);
#endif
+// 2010-12-21aRagexe
+#if PACKETVER >= 20101221
+// shuffle packets not added
+// new packets
+ packet(0x08b1,-1); // ZC_MCSTORE_NOTMOVEITEM_LIST
+#endif
+
+// 2011-01-11aRagexe
+#if PACKETVER >= 20110111
+// shuffle packets not added
+// new packets
+ packet(0x08b3,-1); // ZC_SHOWSCRIPT
+#endif
+
+// 2011-01-25aRagexe
+#if PACKETVER >= 20110125
+// shuffle packets not added
+// new packets
+ packet(0x08b4,2); // ZC_START_COLLECTION
+ packet(0x08b5,6,clif->pDull,2); // CZ_TRYCOLLECTION
+ packet(0x08b6,3); // ZC_TRYCOLLECTION
+#endif
+
+// 2011-01-31aRagexe
+#if PACKETVER >= 20110131
+// shuffle packets not added
+// new packets
+ packet(0x02f3,-1,clif->pDull); // CZ_IRMAIL_SEND
+ packet(0x02f4,3); // ZC_IRMAIL_SEND_RES
+ packet(0x02f5,7); // ZC_IRMAIL_NOTIFY
+ packet(0x02f6,7,clif->pDull,2); // CZ_IRMAIL_LIST
+#endif
+
+// 2011-02-22aRagexe
+#if PACKETVER >= 20110222
+// shuffle packets not added
+// new packets
+ packet(0x08c0,-1); // ZC_ACK_SE_CASH_ITEM_LIST2
+ packet(0x08c1,2,clif->pDull); // CZ_MACRO_START
+ packet(0x08c2,2,clif->pDull); // CZ_MACRO_STOP
+#endif
+
+// 2011-04-19aRagexe
+#if PACKETVER >= 20110419
+// shuffle packets not added
+// new packets
+ packet(0x08c7,-1); // ZC_SKILL_ENTRY3
+#endif
+
+// 2011-06-14aRagexe
+#if PACKETVER >= 20110614
+// shuffle packets not added
+// new packets
+ packet(0x08c8,34); // ZC_NOTIFY_ACT3
+ packet(0x08c9,2,clif->pCashShopSchedule,0);
+ packet(0x08ca,-1); // ZC_ACK_SCHEDULER_CASHITEM
+#endif
+
+// 2011-06-27aRagexe
+#if PACKETVER >= 20110627
+// shuffle packets not added
+// new packets
+ packet(0x08cb,-1); // ZC_PERSONAL_INFOMATION
+#endif
+
//2011-07-18aRagexe (Thanks to Yommy!)
#if PACKETVER >= 20110718
+// shuffle packets not added
packet(0x0844,2,clif->pCashShopOpen,2);/* tell server cashshop window is being open */
packet(0x084a,2,clif->pCashShopClose,2);/* tell server cashshop window is being closed */
packet(0x0846,4,clif->pCashShopReqTab,2);
- packet(0x08c9,2,clif->pCashShopSchedule,0);
packet(0x0848,-1,clif->pCashShopBuy,2);
#endif
+// 2011-08-02aRagexe
+#if PACKETVER >= 20110802
+// shuffle packets not added
+// new packets
+ packet(0x09dc,2); // unknown
+#endif
+
+// 2011-08-09aRagexe
+#if PACKETVER >= 20110809
+// shuffle packets not added
+// new packets
+ packet(0x08cf,10); // ZC_SPIRITS_ATTRIBUTE
+ packet(0x08d0,9); // ZC_REQ_WEAR_EQUIP_ACK2
+ packet(0x08d1,7); // ZC_REQ_TAKEOFF_EQUIP_ACK2
+ packet(0x08d2,10); // ZC_FASTMOVE
+#endif
+
+// 2011-08-16aRagexe
+#if PACKETVER >= 20110816
+// shuffle packets not added
+// new packets
+ packet(0x08d3,10); // ZC_SE_CASHSHOP_UPDATE
+#endif
+
+// 2011-09-28aRagexe
+#if PACKETVER >= 20110928
+// shuffle packets not added
+// new packets
+ packet(0x08d6,6); // ZC_CLEAR_DIALOG
+#endif
+
//2011-10-05aRagexeRE
#if PACKETVER >= 20111005
packet(0x0364,5,clif->pWalkToXY,2);
@@ -1891,7 +1987,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x088a,6,clif->pGetCharNameRequest,2);
packet(0x0838,6,clif->pSolveCharName,2);
packet(0x0439,8,clif->pUseItem,2,4);
- packet(0x08d2,10);
packet(0x08d7,28,clif->pBGQueueRegister,2);
packet(0x090a,26,clif->pBGQueueCheckState,2);
packet(0x08da,26,clif->pBGQueueRevokeReq,2);
@@ -1954,6 +2049,8 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
packet(0x0439,8,clif->pUseItem,2,4);
+// changed packet sizes
+ packet(0x08e2,27); // ZC_NAVIGATION_ACTIVE
#endif
//2012-04-10aRagexeRE
@@ -2021,7 +2118,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x08FB,6,clif->pDull,2); //bookingcanceljoinparty
packet(0x0907,5,clif->pMoveItem,2,4);
packet(0x0908,5);
- packet(0x08CF,10);//Amulet spirits
packet(0x0977,14);//Monster HP Bar
#endif
@@ -2042,18 +2138,26 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x096A,6,clif->pGetCharNameRequest,2);
packet(0x0368,6,clif->pSolveCharName,2);
packet(0x08E5,41,clif->pPartyRecruitRegisterReq,2,4);
- packet(0x08d2,10);
packet(0x0916,26,clif->pGuildInvite2,2);
#endif
+// 2012-05-02aRagexeRE
+#if PACKETVER >= 20120502
+// shuffle packets not added
+ packet(0x097d,288); // ZC_ACK_RANKING
+ packet(0x097e,12); // ZC_UPDATE_RANKING_POINT
+#endif
+
#ifndef PACKETVER_RE
#if PACKETVER >= 20120604
+// shuffle packets not added
packet(0x0861,18,clif->pPartyRecruitRegisterReq,2,4,6);
#endif
#endif
//2012-06-18aRagexeRE
#if PACKETVER >= 20120618
+// shuffle packets not added
packet(0x0983,29);
#endif
@@ -2112,6 +2216,8 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
packet(0x096A,6,clif->pGetCharNameRequest,2);
packet(0x0368,6,clif->pSolveCharName,2);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
//2013-03-20Ragexe (Judas + Yommy)
@@ -2142,14 +2248,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x085D,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- //packet(0x095A,8); // unknown usage
packet(0x0868,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x086D,26,clif->pPartyInvite2,2);
- //packet(0x0890,4); // unknown usage
packet(0x086F,26,clif->pFriendsListAdd,2);
packet(0x093F,5,clif->pHomMenu,2,4);
packet(0x0947,36,clif->pStoragePassword,0);
+ packet(0x0890,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x095a,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
// New Packets
@@ -2187,14 +2293,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x092D,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- //packet(0x08AA,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0963,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0947,26,clif->pPartyInvite2,2);
- //packet(0x0862,4); // CZ_GANGSI_RANK
packet(0x0962,26,clif->pFriendsListAdd,2);
packet(0x0931,5,clif->pHomMenu,2,4);
packet(0x093E,36,clif->pStoragePassword,0);
+ packet(0x0862,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x08aa,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
#endif
@@ -2226,14 +2332,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x089B,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- //packet(0x0965,8); // CZ_JOIN_BATTLE_FIELD
packet(0x086A,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x08A9,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0950,26,clif->pPartyInvite2,2);
- //packet(0x08AC,4); // CZ_GANGSI_RANK
packet(0x0362,26,clif->pFriendsListAdd,2);
packet(0x0926,5,clif->pHomMenu,2,4);
packet(0x088E,36,clif->pStoragePassword,0);
+ packet(0x08ac,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x0965,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
#endif
@@ -2264,14 +2370,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0874,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x088E,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x08A8,26,clif->pPartyInvite2,2);
- // packet(0x0888,4); // CZ_GANGSI_RANK
packet(0x0877,26,clif->pFriendsListAdd,2);
packet(0x023B,5,clif->pHomMenu,2,4);
packet(0x0956,36,clif->pStoragePassword,0);
+ packet(0x0888,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x088e,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
//2013-06-05Ragexe (Shakto)
@@ -2301,19 +2407,20 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x0883,36,clif->pStoragePassword,0);
packet(0x097C,4,clif->pRanklist);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
//2013-06-12Ragexe (Shakto)
#if PACKETVER >= 20130612
+// most shuffle packets used from 20130605
packet(0x087E,5,clif->pChangeDir,2,4);
packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0940,26,clif->pFriendsListAdd,2);
@@ -2348,14 +2455,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x08A7,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x087A,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0942,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x095B,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0887,26,clif->pPartyInvite2,2);
- // packet(0x0878,4); // CZ_GANGSI_RANK
packet(0x0953,26,clif->pFriendsListAdd,2);
packet(0x02C4,5,clif->pHomMenu,2,4);
packet(0x0864,36,clif->pStoragePassword,0);
+ packet(0x0878,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x087a,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
//2013-06-26Ragexe (Shakto)
@@ -2385,14 +2492,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0894,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x0860,8); // CZ_JOIN_BATTLE_FIELD
packet(0x08A5,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x088C,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0895,26,clif->pPartyInvite2,2);
- // packet(0x088F,4); // CZ_GANGSI_RANK
packet(0x08AB,26,clif->pFriendsListAdd,2);
packet(0x0960,5,clif->pHomMenu,2,4);
packet(0x0930,36,clif->pStoragePassword,0);
+ packet(0x0860,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088f,4,clif->pDull); // CZ_GANGSI_RANK
#endif
//2013-07-03Ragexe (Shakto)
@@ -2410,18 +2517,19 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x0360,26,clif->pFriendsListAdd,2);
packet(0x094A,5,clif->pHomMenu,2,4);
packet(0x0873,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
/* Bank System [Yommy/Hercules] */
#if PACKETVER >= 20130724
+// shuffle packets not added
packet(0x09A6,12); // ZC_BANKING_CHECK
packet(0x09A7,10,clif->pBankDeposit,2,4,6);
packet(0x09A8,16); // ZC_ACK_BANKING_DEPOSIT
@@ -2462,14 +2570,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x0887,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
//2013-08-14aRagexe - Themon
@@ -2499,14 +2607,14 @@ packet(0x96e,-1,clif->ackmergeitems);
#else // not PACKETVER_RE
packet(0x0959,18,clif->pPartyBookingRegisterReq,2,4);
#endif // PACKETVER_RE
- // packet(0x0896,8); // CZ_JOIN_BATTLE_FIELD
packet(0x08A4,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0368,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0927,26,clif->pPartyInvite2,2);
- // packet(0x0815,4); // CZ_GANGSI_RANK
packet(0x0281,26,clif->pFriendsListAdd,2);
packet(0x0958,5,clif->pHomMenu,2,4);
packet(0x0885,36,clif->pStoragePassword,0);
+ packet(0x0815,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x0896,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
// 2013-12-18bRagexe - Yommy
@@ -2532,14 +2640,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x092F,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x087B,4); // CZ_GANGSI_RANK
packet(0x08AB,26,clif->pFriendsListAdd,2);
packet(0x0811,5,clif->pHomMenu,2,4);
packet(0x085C,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087b,4,clif->pDull); // CZ_GANGSI_RANK
/* New */
packet(0x09d4,2,clif->pNPCShopClosed);
packet(0x09ce,102,clif->pGM_Monster_Item,2);
@@ -2571,14 +2679,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x08A4,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x09df,7);
packet(0x09cb,17);
#endif
@@ -2606,20 +2714,21 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x094C,2,clif->pReqCloseBuyingStore,0);
packet(0x0365,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x091F,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x093E,8); // CZ_JOIN_BATTLE_FIELD
packet(0x022D,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x089C,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x08A9,26,clif->pPartyInvite2,2);
- // packet(0x087E,4); // CZ_GANGSI_RANK
packet(0x0943,26,clif->pFriendsListAdd,2);
packet(0x0949,5,clif->pHomMenu,2,4);
packet(0x091D,36,clif->pStoragePassword,0);
+ packet(0x087e,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x093e,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
// 2014 Packet Data
// 2014-01-15eRagexe - YomRawr
#if PACKETVER >= 20140115
+// probably for some shuffle packets used wrong id
packet(0x0369,7,clif->pActionRequest,2,6);
packet(0x083C,10,clif->pUseSkillToId,2,4,6);
packet(0x0437,5,clif->pWalkToXY,2);
@@ -2641,11 +2750,11 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0965,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x096A,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x088A,8); // CZ_JOIN_BATTLE_FIELD
+ // packet(0x088A,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0965,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0966,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x095D,26,clif->pPartyInvite2,2);
- // packet(0x095B,4); // CZ_GANGSI_RANK
+ // packet(0x095B,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x089B,26,clif->pFriendsListAdd,2);
packet(0x092D,5,clif->pHomMenu,2,4);
packet(0x0865,36,clif->pStoragePassword,0);
@@ -2674,14 +2783,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x0938,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x09DF,7);
#endif
@@ -2708,14 +2817,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0361,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0878,4); // CZ_GANGSI_RANK
packet(0x07E4,26,clif->pFriendsListAdd,2);
packet(0x0934,5,clif->pHomMenu,2,4);
packet(0x095e,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0878,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x09DF,7);
#endif
@@ -2742,14 +2851,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0867,2,clif->pReqCloseBuyingStore,0);
packet(0x0944,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x08AC,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x094C,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0883,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0890,26,clif->pPartyInvite2,2);
- // packet(0x088C,4); // CZ_GANGSI_RANK
packet(0x089A,26,clif->pFriendsListAdd,2);
packet(0x0896,5,clif->pHomMenu,2,4);
packet(0x0926,36,clif->pStoragePassword,0);
+ packet(0x088c,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x094c,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x09DF,7);
#endif
@@ -2776,21 +2885,28 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x095C,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x09DF,7);
#endif
#if PACKETVER >= 20140613
+// no shuffle packets
packet(0x0a0e,14);
#endif
+// 2014-06-25aRagexeRE
+#if PACKETVER >= 20140625
+// no shuffle packets
+ packet(0x0a28,3); // ZC_ACK_OPENSTORE2
+#endif
+
// 2014-10-16aRagexe - YomRawr
#if PACKETVER >= 20141016
packet(0x0369,7,clif->pActionRequest,2,6);
@@ -2814,14 +2930,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x086E,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- // packet(0x0922,4); // CZ_GANGSI_RANK
packet(0x094B,26,clif->pFriendsListAdd,2);
packet(0x0364,5,clif->pHomMenu,2,4);
packet(0x0936,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0922,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x09DF,7);
packet(0x0a00,269);
packet(0x09e5,18); // ZC_DELETEITEM_FROM_MCSTORE2
@@ -2865,18 +2981,19 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4);
- // packet(0x092B,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x093B,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0896,26,clif->pPartyInvite2,2);
- // packet(0x08AB,4); // CZ_GANGSI_RANK
packet(0x091A,26,clif->pFriendsListAdd,2);
packet(0x0899,5,clif->pHomMenu,2,4);
packet(0x0438,36,clif->pStoragePassword,0);
packet(0x0A01,3,clif->pHotkeyRowShift,2);
+ packet(0x08ab,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x092b,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
#if PACKETVER >= 20150226
+// shuffle packets not added
packet(0x0A09,45);
packet(0x0A0A,47);
packet(0x0A0B,47);
@@ -2909,11 +3026,11 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x022D,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0883,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x02C4,8); // CZ_JOIN_BATTLE_FIELD
+ packet(0x02C4,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0960,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x094A,26,clif->pPartyInvite2,2);
- packet(0x0927,4); // CZ_GANGSI_RANK
+ packet(0x0927,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x08A8,26,clif->pFriendsListAdd,2);
packet(0x0817,5,clif->pHomMenu,2,4);
packet(0x0923,36,clif->pStoragePassword,0);
@@ -2926,6 +3043,7 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
#if PACKETVER >= 20150805 // RagexeRE
+// shuffle packets not added
packet(0x097f,-1); // ZC_SELECTCART
packet(0x0980,7,clif->pSelectCart); // CZ_SELECTCART
#endif
@@ -2953,14 +3071,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
-// packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
-// packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x0860,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
// 2015-10-29aRagexe
@@ -2986,19 +3104,19 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x0436,4); // CZ_GANGSI_RANK
packet(0x023B,26,clif->pFriendsListAdd,2);
packet(0x0361,5,clif->pHomMenu,2,4);
packet(0x0860,36,clif->pStoragePassword,0);
+ packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x0a39,36);
#endif
// 2015-11-04aRagexe
-#if PACKETVER >= 20151104
+#if PACKETVER >= 20151104
packet(0x0369,7,clif->pActionRequest,2,6);
packet(0x083C,10,clif->pUseSkillToId,2,4,6);
packet(0x0363,5,clif->pWalkToXY,2);
@@ -3020,14 +3138,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0817,2,clif->pReqCloseBuyingStore,0);
packet(0x023B,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0811,18,clif->pPartyBookingRegisterReq,2,4,6);
- packet(0x0939,8); // CZ_JOIN_BATTLE_FIELD
packet(0x093A,-1,clif->pItemListWindowSelected,2,4,8,12);
packet(0x0360,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x08A5,26,clif->pPartyInvite2,2);
- packet(0x08A3,4); // CZ_GANGSI_RANK CZ_GANGSI_RANK
packet(0x07EC,26,clif->pFriendsListAdd,2);
packet(0x088D,5,clif->pHomMenu,2,4);
packet(0x0940,36,clif->pStoragePassword,2,4,20);
+ packet(0x08a3,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x0939,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0a39,36);
#endif
@@ -3054,14 +3172,14 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x083C,2,clif->pReqCloseBuyingStore,0);
packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x086A,8); // CZ_JOIN_BATTLE_FIELD
packet(0x0949,-1,clif->pItemListWindowSelected,2,4,8);
packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18);
packet(0x086E,26,clif->pPartyInvite2,2);
- packet(0x0364,4); // CZ_GANGSI_RANK
packet(0x091D,26,clif->pFriendsListAdd,2);
packet(0x0362,5,clif->pHomMenu,2,4);
packet(0x0885,36,clif->pStoragePassword,0);
+ packet(0x0364,4,clif->pDull); // CZ_GANGSI_RANK
+ packet(0x086a,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
/* PacketKeys: http://herc.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ */