clif_packetdb.hpp 79 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466
  1. // Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
  2. // For more information, see LICENCE in the main folder
  3. #ifndef CLIF_PACKETDB_HPP
  4. #define CLIF_PACKETDB_HPP
  5. #define packet(cmd,length) packetdb_addpacket(cmd,length,NULL,0)
  6. #define parseable_packet(cmd,length,func,...) packetdb_addpacket(cmd,length,func,__VA_ARGS__,0)
  7. #define ack_packet(type,cmd,length,...) \
  8. packetdb_addpacket(cmd,length,NULL,__VA_ARGS__,0); \
  9. packet_db_ack[type] = cmd
  10. packet(0x0064,55);
  11. packet(0x0065,17);
  12. packet(0x0066,6);
  13. packet(0x0067,37);
  14. packet(0x0068,46);
  15. packet(0x0069,-1);
  16. packet(0x006a,23);
  17. packet(0x006b,-1);
  18. packet(0x006c,3);
  19. packet(0x006d,108);
  20. packet(0x006e,3);
  21. packet(0x006f,2);
  22. packet(0x0070,6);
  23. packet(0x0071,28);
  24. parseable_packet(0x0072,19,clif_parse_WantToConnection,2,6,10,14,18);
  25. packet(0x0073,11);
  26. packet(0x0074,3);
  27. packet(0x0075,-1);
  28. packet(0x0076,9);
  29. packet(0x0077,5);
  30. packet(0x0078,54);
  31. packet(0x0079,53);
  32. packet(0x007a,58);
  33. packet(0x007b,60);
  34. packet(0x007c,41);
  35. parseable_packet(0x007d,2,clif_parse_LoadEndAck,0);
  36. parseable_packet(0x007e,6,clif_parse_TickSend,2);
  37. packet(0x007f,6);
  38. packet(0x0080,7);
  39. packet(0x0081,3);
  40. packet(0x0082,2);
  41. packet(0x0083,2);
  42. packet(0x0084,2);
  43. parseable_packet(0x0085,5,clif_parse_WalkToXY,2);
  44. packet(0x0086,16);
  45. packet(0x0087,12);
  46. packet(0x0088,10);
  47. parseable_packet(0x0089,7,clif_parse_ActionRequest,2,6);
  48. packet(0x008a,29);
  49. packet(0x008b,2);
  50. parseable_packet(0x008c,-1,clif_parse_GlobalMessage,2,4);
  51. packet(0x008d,-1);
  52. packet(0x008e,-1);
  53. //packet(0x008f,-1);
  54. parseable_packet(0x0090,7,clif_parse_NpcClicked,2,6);
  55. packet(0x0091,22);
  56. packet(0x0092,28);
  57. packet(0x0093,2);
  58. parseable_packet(0x0094,6,clif_parse_GetCharNameRequest,2);
  59. packet( HEADER_ZC_ACK_REQNAME_TITLE, sizeof( PACKET_ZC_ACK_REQNAME_TITLE ) );
  60. parseable_packet(0x0096,-1,clif_parse_WisMessage,2,4,28);
  61. packet(0x0097,-1);
  62. packet(0x0098,3);
  63. parseable_packet(0x0099,-1,clif_parse_Broadcast,2,4);
  64. packet(0x009a,-1);
  65. parseable_packet(0x009b,5,clif_parse_ChangeDir,2,4);
  66. packet(0x009c,9);
  67. packet( HEADER_ZC_ITEM_ENTRY, sizeof( struct PACKET_ZC_ITEM_ENTRY ) );
  68. packet(0x009e,17);
  69. parseable_packet(0x009f,6,clif_parse_TakeItem,2);
  70. packet(0x00a0,23);
  71. packet(0x00a1,6);
  72. parseable_packet(0x00a2,6,clif_parse_DropItem,2,4);
  73. packet(0x00a3,-1);
  74. packet(0x00a4,-1);
  75. packet(0x00a5,-1);
  76. packet(0x00a6,-1);
  77. parseable_packet(0x00a7,8,clif_parse_UseItem,2,4);
  78. packet( useItemAckType, sizeof( struct PACKET_ZC_USE_ITEM_ACK ) );
  79. parseable_packet(0x00a9,6,clif_parse_EquipItem,2,4);
  80. ack_packet(ZC_WEAR_EQUIP_ACK,0x00aa,7,2,4,6);
  81. parseable_packet(0x00ab,4,clif_parse_UnequipItem,2);
  82. packet(0x00ac,7);
  83. //packet(0x00ad,-1);
  84. packet(0x00ae,-1);
  85. packet(0x00af,6);
  86. packet(0x00b0,8);
  87. packet(0x00b1,8);
  88. parseable_packet(0x00b2,3,clif_parse_Restart,2);
  89. packet(0x00b3,3);
  90. packet(0x00b4,-1);
  91. packet(0x00b5,6);
  92. packet(0x00b6,6);
  93. packet(0x00b7,-1);
  94. parseable_packet(0x00b8,7,clif_parse_NpcSelectMenu,2,6);
  95. parseable_packet(0x00b9,6,clif_parse_NpcNextClicked,2);
  96. packet(0x00ba,2);
  97. parseable_packet(0x00bb,5,clif_parse_StatusUp,2,4);
  98. packet(0x00bc,6);
  99. packet(0x00bd,44);
  100. packet(0x00be,5);
  101. parseable_packet(0x00bf,3,clif_parse_Emotion,2);
  102. packet(0x00c0,7);
  103. parseable_packet(0x00c1,2,clif_parse_HowManyConnections,0);
  104. packet(0x00c2,6);
  105. packet(0x00c3,8);
  106. packet(0x00c4,6);
  107. parseable_packet(0x00c5,7,clif_parse_NpcBuySellSelected,2,6);
  108. packet(0x00c6,-1);
  109. packet(0x00c7,-1);
  110. parseable_packet(0x00c8,-1,clif_parse_NpcBuyListSend,2,4);
  111. parseable_packet(0x00c9,-1,clif_parse_NpcSellListSend,2,4);
  112. packet(0x00ca,3);
  113. packet(0x00cb,3);
  114. parseable_packet(0x00cc,6,clif_parse_GMKick,2);
  115. packet(0x00cd,3);
  116. parseable_packet(0x00ce,2,clif_parse_GMKickAll,0);
  117. parseable_packet(0x00cf,27,clif_parse_PMIgnore,2,26);
  118. parseable_packet(0x00d0,3,clif_parse_PMIgnoreAll,2);
  119. packet(0x00d1,4);
  120. packet(0x00d2,4);
  121. parseable_packet(0x00d3,2,clif_parse_PMIgnoreList,0);
  122. packet(0x00d4,-1);
  123. parseable_packet(0x00d5,-1,clif_parse_CreateChatRoom,2,4,6,7,15);
  124. packet(0x00d6,3);
  125. packet(0x00d7,-1);
  126. packet(0x00d8,6);
  127. parseable_packet(0x00d9,14,clif_parse_ChatAddMember,2,6);
  128. packet(0x00da,3);
  129. packet(0x00db,-1);
  130. packet(0x00dc,28);
  131. packet(0x00dd,29);
  132. parseable_packet(0x00de,-1,clif_parse_ChatRoomStatusChange,2,4,6,7,15);
  133. packet(0x00df,-1);
  134. parseable_packet(0x00e0,30,clif_parse_ChangeChatOwner,2,6);
  135. packet(0x00e1,30);
  136. parseable_packet(0x00e2,26,clif_parse_KickFromChat,2);
  137. parseable_packet(0x00e3,2,clif_parse_ChatLeave,0);
  138. parseable_packet(0x00e4,6,clif_parse_TradeRequest,2);
  139. packet(0x00e5,26);
  140. parseable_packet(0x00e6,3,clif_parse_TradeAck,2);
  141. packet(0x00e7,3);
  142. parseable_packet(0x00e8,8,clif_parse_TradeAddItem,2,4);
  143. packet(0x00e9,19);
  144. packet(0x00ea,5);
  145. parseable_packet(0x00eb,2,clif_parse_TradeOk,0);
  146. packet(0x00ec,3);
  147. parseable_packet(0x00ed,2,clif_parse_TradeCancel,0);
  148. packet(0x00ee,2);
  149. parseable_packet(0x00ef,2,clif_parse_TradeCommit,0);
  150. packet(0x00f0,3);
  151. packet(0x00f1,2);
  152. packet(0x00f2,6);
  153. parseable_packet(0x00f3,8,clif_parse_MoveToKafra,2,4);
  154. packet( storageaddType, sizeof( struct PACKET_ZC_ADD_ITEM_TO_STORE ) );
  155. parseable_packet(0x00f5,8,clif_parse_MoveFromKafra,2,4);
  156. packet(0x00f6,8);
  157. parseable_packet(0x00f7,2,clif_parse_CloseKafra,0);
  158. packet(0x00f8,2);
  159. parseable_packet(0x00f9,26,clif_parse_CreateParty,2);
  160. packet(0x00fa,3);
  161. packet(0x00fb,-1);
  162. parseable_packet(0x00fc,6,clif_parse_PartyInvite,2);
  163. packet(0x00fd,27);
  164. packet(0x00fe,30);
  165. parseable_packet(0x00ff,10,clif_parse_ReplyPartyInvite,2,6);
  166. parseable_packet(0x0100,2,clif_parse_LeaveParty,0);
  167. packet(0x0101,6);
  168. parseable_packet(0x0102,6,clif_parse_PartyChangeOption,2);
  169. parseable_packet(0x0103,30,clif_parse_RemovePartyMember,2,6);
  170. packet(0x0104,79);
  171. packet(0x0105,31);
  172. packet(0x0106,10);
  173. packet(0x0107,10);
  174. parseable_packet(0x0108,-1,clif_parse_PartyMessage,2,4);
  175. packet(0x0109,-1);
  176. packet( HEADER_ZC_MVP_GETTING_ITEM, sizeof( struct PACKET_ZC_MVP_GETTING_ITEM ) );
  177. packet(0x010b,6);
  178. packet(0x010c,6);
  179. packet(0x010d,2);
  180. packet(0x010e,11);
  181. packet(0x010f,-1);
  182. packet( HEADER_ZC_ACK_TOUSESKILL, sizeof( PACKET_ZC_ACK_TOUSESKILL ) );
  183. packet(0x0111,39);
  184. parseable_packet(0x0112,4,clif_parse_SkillUp,2);
  185. parseable_packet(0x0113,10,clif_parse_UseSkillToId,2,4,6);
  186. packet(0x0114,31);
  187. packet(0x0115,35);
  188. parseable_packet(0x0116,10,clif_parse_UseSkillToPos,2,4,6,8);
  189. packet(0x0117,18);
  190. parseable_packet(0x0118,2,clif_parse_StopAttack,0);
  191. packet(0x0119,13);
  192. packet(0x011a,15);
  193. parseable_packet(0x011b,20,clif_parse_UseSkillMap,2,4);
  194. packet(0x011c,68);
  195. parseable_packet(0x011d,2,clif_parse_RequestMemo,0);
  196. packet(0x011e,3);
  197. packet(0x011f,16);
  198. packet(0x0120,6);
  199. packet(0x0121,14);
  200. packet(0x0122,-1);
  201. packet(0x0123,-1);
  202. packet( cartaddType, sizeof( struct PACKET_ZC_ADD_ITEM_TO_CART ) );
  203. packet(0x0125,8);
  204. parseable_packet(0x0126,8,clif_parse_PutItemToCart,2,4);
  205. parseable_packet(0x0127,8,clif_parse_GetItemFromCart,2,4);
  206. parseable_packet(0x0128,8,clif_parse_MoveFromKafraToCart,2,4);
  207. parseable_packet(0x0129,8,clif_parse_MoveToKafraFromCart,2,4);
  208. parseable_packet(0x012a,2,clif_parse_RemoveOption,0);
  209. packet(0x012b,2);
  210. packet(0x012c,3);
  211. packet(0x012d,4);
  212. parseable_packet(0x012e,2,clif_parse_CloseVending,0);
  213. parseable_packet(0x012f,-1,clif_parse_OpenVending,2,4,0,84);
  214. parseable_packet(0x0130,6,clif_parse_VendingListReq,2);
  215. packet(0x0131,86);
  216. packet(0x0132,6);
  217. packet(0x0133,-1);
  218. parseable_packet(0x0134,-1,clif_parse_PurchaseReq,2,4,8);
  219. packet(0x0135,7);
  220. packet(0x0136,-1);
  221. packet(0x0137,6);
  222. packet(0x0138,3);
  223. packet(0x0139,16);
  224. packet(0x013a,4);
  225. packet(0x013b,4);
  226. packet(0x013c,4);
  227. packet(0x013d,6);
  228. packet(0x013e,24);
  229. parseable_packet(0x013f,26,clif_parse_GM_Item_Monster,2);
  230. parseable_packet(0x0140,22,clif_parse_MapMove,2,18,20);
  231. packet(0x0141,14);
  232. packet(0x0142,6);
  233. parseable_packet(0x0143,10,clif_parse_NpcAmountInput,2,6);
  234. packet(0x0144,23);
  235. packet(0x0145,19);
  236. parseable_packet(0x0146,6,clif_parse_NpcCloseClicked,2);
  237. packet(0x0147,39);
  238. packet(0x0148,8);
  239. parseable_packet(0x0149,9,clif_parse_GMReqNoChat,2,6,7);
  240. packet(0x014a,6);
  241. packet(0x014b,27);
  242. packet(0x014c,-1);
  243. parseable_packet(0x014d,2,clif_parse_GuildCheckMaster,0);
  244. packet(0x014e,6);
  245. parseable_packet(0x014f,6,clif_parse_GuildRequestInfo,2);
  246. packet(0x0150,110);
  247. parseable_packet(0x0151,6,clif_parse_GuildRequestEmblem,2);
  248. packet(0x0152,-1);
  249. parseable_packet(0x0153,-1,clif_parse_GuildChangeEmblem,2,4);
  250. packet(0x0154,-1);
  251. parseable_packet(0x0155,-1,clif_parse_GuildChangeMemberPosition,2,4);
  252. packet(0x0156,-1);
  253. packet(0x0157,6);
  254. packet(0x0158,-1);
  255. parseable_packet(0x0159,54,clif_parse_GuildLeave,2,6,10,14);
  256. packet(0x015a,66);
  257. parseable_packet(0x015b,54,clif_parse_GuildExpulsion,2,6,10,14);
  258. packet(0x015c,90);
  259. parseable_packet(0x015d,42,clif_parse_GuildBreak,2);
  260. packet(0x015e,6);
  261. packet(0x015f,42);
  262. packet(0x0160,-1);
  263. parseable_packet(0x0161,-1,clif_parse_GuildChangePositionInfo,2,4);
  264. packet(0x0162,-1);
  265. packet(0x0163,-1);
  266. packet(0x0164,-1);
  267. parseable_packet(0x0165,30,clif_parse_CreateGuild,2,6);
  268. packet(0x0166,-1);
  269. packet(0x0167,3);
  270. parseable_packet(0x0168,14,clif_parse_GuildInvite,2,6,10);
  271. packet(0x0169,3);
  272. packet(0x016a,30);
  273. parseable_packet(0x016b,10,clif_parse_GuildReplyInvite,2,6);
  274. packet(0x016c,43);
  275. packet(0x016d,14);
  276. parseable_packet(0x016e,186,clif_parse_GuildChangeNotice,2,6,66);
  277. packet(0x016f,182);
  278. parseable_packet(0x0170,14,clif_parse_GuildRequestAlliance,2,6,10);
  279. packet(0x0171,30);
  280. parseable_packet(0x0172,10,clif_parse_GuildReplyAlliance,2,6);
  281. packet(0x0173,3);
  282. packet(0x0174,-1);
  283. packet(0x0175,6);
  284. packet(0x0176,106);
  285. packet(0x0177,-1);
  286. parseable_packet(0x0178,4,clif_parse_ItemIdentify,2);
  287. packet(0x0179,5);
  288. parseable_packet(0x017a,4,clif_parse_UseCard,2);
  289. packet(0x017b,-1);
  290. parseable_packet(0x017c,6,clif_parse_InsertCard,2,4);
  291. packet(0x017d,7);
  292. parseable_packet(0x017e,-1,clif_parse_GuildMessage,2,4);
  293. packet(0x017f,-1);
  294. parseable_packet(0x0180,6,clif_parse_GuildOpposition,2);
  295. packet(0x0181,3);
  296. packet(0x0182,106);
  297. parseable_packet(0x0183,10,clif_parse_GuildDelAlliance,2,6);
  298. packet(0x0184,10);
  299. packet(0x0185,34);
  300. //packet(0x0186,-1);
  301. packet(0x0187,6);
  302. packet(0x0188,8);
  303. packet(0x0189,4);
  304. parseable_packet(0x018a,4,clif_parse_QuitGame,2);
  305. packet(0x018b,4);
  306. packet(0x018c,29);
  307. packet(0x018d,-1);
  308. parseable_packet( HEADER_CZ_REQMAKINGITEM, sizeof( struct PACKET_CZ_REQMAKINGITEM ), clif_parse_ProduceMix, 0 );
  309. packet( HEADER_ZC_ACK_REQMAKINGITEM, sizeof( PACKET_ZC_ACK_REQMAKINGITEM ) );
  310. parseable_packet(0x0190,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  311. packet( HEADER_ZC_TALKBOX_CHATCONTENTS, sizeof( struct PACKET_ZC_TALKBOX_CHATCONTENTS ) );
  312. packet(0x0192,24);
  313. parseable_packet(0x0193,6,clif_parse_SolveCharName,2);
  314. packet(0x0194,30);
  315. packet( HEADER_ZC_ACK_REQNAMEALL, sizeof( struct PACKET_ZC_ACK_REQNAMEALL ) );
  316. packet(0x0196,9);
  317. parseable_packet(0x0197,4,clif_parse_ResetChar,2);
  318. parseable_packet(0x0198,8,clif_parse_GMChangeMapType,2,4,6);
  319. packet(0x0199,4);
  320. packet(0x019a,14);
  321. packet(0x019b,10);
  322. parseable_packet(0x019c,-1,clif_parse_LocalBroadcast,2,4);
  323. parseable_packet(0x019d,6,clif_parse_GMHide,2);
  324. packet(0x019e,2);
  325. parseable_packet(0x019f,6,clif_parse_CatchPet,2);
  326. packet(0x01a0,3);
  327. parseable_packet(0x01a1,3,clif_parse_PetMenu,2);
  328. packet(0x01a2,35);
  329. packet(0x01a3,5);
  330. packet(0x01a4,11);
  331. parseable_packet(0x01a5,26,clif_parse_ChangePetName,2);
  332. packet(0x01a6,-1);
  333. parseable_packet(0x01a7,4,clif_parse_SelectEgg,2);
  334. packet(0x01a8,4);
  335. parseable_packet(0x01a9,6,clif_parse_SendEmotion,2);
  336. packet(0x01aa,10);
  337. packet(0x01ab,12);
  338. packet(0x01ac,6);
  339. packet(0x01ad,-1);
  340. parseable_packet( HEADER_CZ_REQ_MAKINGARROW, sizeof( PACKET_CZ_REQ_MAKINGARROW ), clif_parse_SelectArrow, 0 );
  341. parseable_packet(0x01af,4,clif_parse_ChangeCart,2);
  342. packet(0x01b0,11);
  343. packet(0x01b1,7);
  344. parseable_packet(0x01b2,-1,clif_parse_OpenVending,2,4,84,85);
  345. packet(0x01b3,67);
  346. packet(0x01b4,12);
  347. packet(0x01b5,18);
  348. packet(0x01b6,114);
  349. packet(0x01b7,6);
  350. packet(0x01b8,3);
  351. packet(0x01b9,6);
  352. parseable_packet(0x01ba,26,clif_parse_GMShift,2);
  353. parseable_packet(0x01bb,26,clif_parse_GMShift,2);
  354. parseable_packet(0x01bc,26,clif_parse_GMRecall,2);
  355. parseable_packet(0x01bd,26,clif_parse_GMRecall,2);
  356. packet(0x01be,2);
  357. packet(0x01bf,3);
  358. packet(0x01c0,2);
  359. packet(0x01c1,14);
  360. packet(0x01c2,10);
  361. packet(0x01c3,-1);
  362. packet(0x01c6,4);
  363. packet(0x01c7,2);
  364. packet(0x01c9,97);
  365. //packet(0x01ca,-1);
  366. packet(0x01cb,9);
  367. packet(0x01cc,9);
  368. packet(0x01cd,30);
  369. parseable_packet(0x01ce,6,clif_parse_AutoSpell,2);
  370. packet(0x01cf,28);
  371. packet(0x01d0,8);
  372. packet(0x01d1,14);
  373. packet(0x01d2,10);
  374. packet(0x01d3,35);
  375. packet(0x01d4,6);
  376. parseable_packet(0x01d5,-1,clif_parse_NpcStringInput,2,4,8);
  377. packet(0x01d6,4);
  378. packet(0x01d7,11);
  379. packet(0x01d8,54);
  380. packet(0x01d9,53);
  381. packet(0x01da,60);
  382. packet(0x01db,2);
  383. packet(0x01dc,-1);
  384. packet(0x01dd,47);
  385. packet(0x01de,33);
  386. parseable_packet(0x01df,6,clif_parse_GMReqAccountName,2);
  387. packet(0x01e0,30);
  388. packet(0x01e1,8);
  389. packet(0x01e2,34);
  390. packet(0x01e3,14);
  391. packet(0x01e4,2);
  392. packet(0x01e5,6);
  393. packet(0x01e6,26);
  394. parseable_packet(0x01e7,2,clif_parse_NoviceDoriDori,0);
  395. parseable_packet(0x01e8,28,clif_parse_CreateParty2,2,26,27);
  396. packet(0x01e9,81);
  397. packet(0x01ea,6);
  398. packet(0x01eb,10);
  399. packet(0x01ec,26);
  400. parseable_packet(0x01ed,2,clif_parse_NoviceExplosionSpirits,0);
  401. packet(0x01ee,-1);
  402. packet(0x01ef,-1);
  403. packet(0x01f0,-1);
  404. packet(0x01f1,-1);
  405. packet(0x01f2,20);
  406. packet(0x01f3,10);
  407. packet(0x01f4,32);
  408. packet(0x01f5,9);
  409. packet(0x01f6,34);
  410. parseable_packet(0x01f7,14,clif_parse_Adopt_reply,2,6,10);
  411. packet(0x01f8,2);
  412. parseable_packet(0x01f9,6,clif_parse_Adopt_request,2);
  413. packet(0x01fa,48);
  414. packet(0x01fb,56);
  415. packet(0x01fc,-1);
  416. parseable_packet( HEADER_CZ_REQ_ITEMREPAIR, sizeof( struct PACKET_CZ_REQ_ITEMREPAIR ), clif_parse_RepairItem, 0 );
  417. packet(0x01fe,5);
  418. packet(0x01ff,10);
  419. packet(0x0200,26);
  420. packet(0x0201,-1);
  421. parseable_packet(0x0202,26,clif_parse_FriendsListAdd,2);
  422. parseable_packet(0x0203,10,clif_parse_FriendsListRemove,2,6);
  423. packet(0x0204,18);
  424. packet(0x0205,26);
  425. packet(0x0206,11);
  426. packet(0x0207,34);
  427. parseable_packet(0x0208,11,clif_parse_FriendsListReply,2,6,10);
  428. packet(0x0209,36);
  429. packet(0x020a,10);
  430. //packet(0x020b,-1);
  431. //packet(0x020c,-1);
  432. packet(0x020d,-1);
  433. packet(0x8b3,-1);
  434. ack_packet(ZC_CLEAR_DIALOG,0x8d6,6,2);
  435. // 2004-07-05aSakexe
  436. #if PACKETVER >= 20040705
  437. parseable_packet(0x0072,22,clif_parse_WantToConnection,5,9,13,17,21);
  438. parseable_packet(0x0085,8,clif_parse_WalkToXY,5);
  439. parseable_packet(0x00a7,13,clif_parse_UseItem,5,9);
  440. parseable_packet(0x0113,15,clif_parse_UseSkillToId,4,9,11);
  441. parseable_packet(0x0116,15,clif_parse_UseSkillToPos,4,9,11,13);
  442. parseable_packet(0x0190,95,clif_parse_UseSkillToPosMoreInfo,4,9,11,13,15);
  443. parseable_packet(0x0208,14,clif_parse_FriendsListReply,2,6,10);
  444. packet(0x020e,24);
  445. #endif
  446. // 2004-07-13aSakexe
  447. #if PACKETVER >= 20040713
  448. parseable_packet(0x0072,39,clif_parse_WantToConnection,12,22,30,34,38);
  449. parseable_packet(0x0085,9,clif_parse_WalkToXY,6);
  450. parseable_packet(0x009b,13,clif_parse_ChangeDir,5,12);
  451. parseable_packet(0x009f,10,clif_parse_TakeItem,6);
  452. parseable_packet(0x00a7,17,clif_parse_UseItem,6,13);
  453. parseable_packet(0x0113,19,clif_parse_UseSkillToId,7,9,15);
  454. parseable_packet(0x0116,19,clif_parse_UseSkillToPos,7,9,15,17);
  455. parseable_packet(0x0190,99,clif_parse_UseSkillToPosMoreInfo,7,9,15,17,19);
  456. #endif
  457. // 2004-07-26aSakexe
  458. #if PACKETVER >= 20040726
  459. parseable_packet(0x0072,14,clif_parse_DropItem,5,12);
  460. parseable_packet(0x007e,33,clif_parse_WantToConnection,12,18,24,28,32);
  461. parseable_packet(0x0085,20,clif_parse_UseSkillToId,7,12,16);
  462. parseable_packet(0x0089,15,clif_parse_GetCharNameRequest,11);
  463. parseable_packet(0x008c,23,clif_parse_UseSkillToPos,3,6,17,21);
  464. parseable_packet(0x0094,10,clif_parse_TakeItem,6);
  465. parseable_packet(0x009b,6,clif_parse_WalkToXY,3);
  466. parseable_packet(0x009f,13,clif_parse_ChangeDir,5,12);
  467. parseable_packet(0x00a2,103,clif_parse_UseSkillToPosMoreInfo,3,6,17,21,23);
  468. parseable_packet(0x00a7,12,clif_parse_SolveCharName,8);
  469. parseable_packet(0x00f3,-1,clif_parse_GlobalMessage,2,4);
  470. parseable_packet(0x00f5,17,clif_parse_UseItem,6,12);
  471. parseable_packet(0x00f7,10,clif_parse_TickSend,6);
  472. parseable_packet(0x0113,16,clif_parse_MoveToKafra,5,12);
  473. parseable_packet(0x0116,2,clif_parse_CloseKafra,0);
  474. parseable_packet(0x0190,26,clif_parse_MoveFromKafra,10,22);
  475. parseable_packet(0x0193,9,clif_parse_ActionRequest,3,8);
  476. #endif
  477. // 2004-08-09aSakexe
  478. #if PACKETVER >= 20040809
  479. parseable_packet(0x0072,17,clif_parse_DropItem,8,15);
  480. parseable_packet(0x007e,37,clif_parse_WantToConnection,9,21,28,32,36);
  481. parseable_packet(0x0085,26,clif_parse_UseSkillToId,11,18,22);
  482. parseable_packet(0x0089,12,clif_parse_GetCharNameRequest,8);
  483. parseable_packet(0x008c,40,clif_parse_UseSkillToPos,5,15,29,38);
  484. parseable_packet(0x0094,13,clif_parse_TakeItem,9);
  485. parseable_packet(0x009b,15,clif_parse_WalkToXY,12);
  486. parseable_packet(0x009f,12,clif_parse_ChangeDir,7,11);
  487. parseable_packet(0x00a2,120,clif_parse_UseSkillToPosMoreInfo,5,15,29,38,40);
  488. parseable_packet(0x00a7,11,clif_parse_SolveCharName,7);
  489. parseable_packet(0x00f5,24,clif_parse_UseItem,9,20);
  490. parseable_packet(0x00f7,13,clif_parse_TickSend,9);
  491. parseable_packet(0x0113,23,clif_parse_MoveToKafra,5,19);
  492. parseable_packet(0x0190,26,clif_parse_MoveFromKafra,11,22);
  493. parseable_packet(0x0193,18,clif_parse_ActionRequest,7,17);
  494. #endif
  495. // 2004-08-16aSakexe
  496. #if PACKETVER >= 20040816
  497. parseable_packet(0x0212,26,clif_parse_GMRc,2);
  498. parseable_packet(0x0213,26,clif_parse_Check,2);
  499. packet(0x0214,42);
  500. #endif
  501. // 2004-08-17aSakexe
  502. #if PACKETVER >= 20040817
  503. parseable_packet(0x020f,10,clif_parse_PVPInfo,2,6);
  504. packet(0x0210,22);
  505. #endif
  506. // 2004-09-06aSakexe
  507. #if PACKETVER >= 20040906
  508. parseable_packet(0x0072,20,clif_parse_UseItem,9,20);
  509. parseable_packet(0x007e,19,clif_parse_MoveToKafra,3,15);
  510. parseable_packet(0x0085,23,clif_parse_ActionRequest,9,22);
  511. parseable_packet(0x0089,9,clif_parse_WalkToXY,6);
  512. parseable_packet(0x008c,105,clif_parse_UseSkillToPosMoreInfo,10,14,18,23,25);
  513. parseable_packet(0x0094,17,clif_parse_DropItem,6,15);
  514. parseable_packet(0x009b,14,clif_parse_GetCharNameRequest,10);
  515. parseable_packet(0x009f,-1,clif_parse_GlobalMessage,2,4);
  516. parseable_packet(0x00a2,14,clif_parse_SolveCharName,10);
  517. parseable_packet(0x00a7,25,clif_parse_UseSkillToPos,10,14,18,23);
  518. parseable_packet(0x00f3,10,clif_parse_ChangeDir,4,9);
  519. parseable_packet(0x00f5,34,clif_parse_WantToConnection,7,15,25,29,33);
  520. parseable_packet(0x00f7,2,clif_parse_CloseKafra,0);
  521. parseable_packet(0x0113,11,clif_parse_TakeItem,7);
  522. parseable_packet(0x0116,11,clif_parse_TickSend,7);
  523. parseable_packet(0x0190,22,clif_parse_UseSkillToId,9,15,18);
  524. parseable_packet(0x0193,17,clif_parse_MoveFromKafra,3,13);
  525. #endif
  526. // 2004-09-20aSakexe
  527. #if PACKETVER >= 20040920
  528. parseable_packet(0x0072,18,clif_parse_UseItem,10,14);
  529. parseable_packet(0x007e,25,clif_parse_MoveToKafra,6,21);
  530. parseable_packet(0x0085,9,clif_parse_ActionRequest,3,8);
  531. parseable_packet(0x0089,14,clif_parse_WalkToXY,11);
  532. parseable_packet(0x008c,109,clif_parse_UseSkillToPosMoreInfo,16,20,23,27,29);
  533. parseable_packet(0x0094,19,clif_parse_DropItem,12,17);
  534. parseable_packet(0x009b,10,clif_parse_GetCharNameRequest,6);
  535. parseable_packet(0x00a2,10,clif_parse_SolveCharName,6);
  536. parseable_packet(0x00a7,29,clif_parse_UseSkillToPos,6,20,23,27);
  537. parseable_packet(0x00f3,18,clif_parse_ChangeDir,8,17);
  538. parseable_packet(0x00f5,32,clif_parse_WantToConnection,10,17,23,27,31);
  539. parseable_packet(0x0113,14,clif_parse_TakeItem,10);
  540. parseable_packet(0x0116,14,clif_parse_TickSend,10);
  541. parseable_packet(0x0190,14,clif_parse_UseSkillToId,4,7,10);
  542. parseable_packet(0x0193,12,clif_parse_MoveFromKafra,4,8);
  543. #endif
  544. // 2004-10-05aSakexe
  545. #if PACKETVER >= 20041005
  546. parseable_packet(0x0072,17,clif_parse_UseItem,6,13);
  547. parseable_packet(0x007e,16,clif_parse_MoveToKafra,5,12);
  548. parseable_packet(0x0089,6,clif_parse_WalkToXY,3);
  549. parseable_packet(0x008c,103,clif_parse_UseSkillToPosMoreInfo,2,6,17,21,23);
  550. parseable_packet(0x0094,14,clif_parse_DropItem,5,12);
  551. parseable_packet(0x009b,15,clif_parse_GetCharNameRequest,11);
  552. parseable_packet(0x00a2,12,clif_parse_SolveCharName,8);
  553. parseable_packet(0x00a7,23,clif_parse_UseSkillToPos,3,6,17,21);
  554. parseable_packet(0x00f3,13,clif_parse_ChangeDir,5,12);
  555. parseable_packet(0x00f5,33,clif_parse_WantToConnection,12,18,24,28,32);
  556. parseable_packet(0x0113,10,clif_parse_TakeItem,6);
  557. parseable_packet(0x0116,10,clif_parse_TickSend,6);
  558. parseable_packet(0x0190,20,clif_parse_UseSkillToId,7,12,16);
  559. parseable_packet(0x0193,26,clif_parse_MoveFromKafra,10,22);
  560. #endif
  561. // 2004-10-25aSakexe
  562. #if PACKETVER >= 20041025
  563. parseable_packet(0x0072,13,clif_parse_UseItem,5,9);
  564. parseable_packet(0x007e,13,clif_parse_MoveToKafra,6,9);
  565. parseable_packet(0x0085,15,clif_parse_ActionRequest,4,14);
  566. parseable_packet(0x008c,108,clif_parse_UseSkillToPosMoreInfo,6,9,23,26,28);
  567. parseable_packet(0x0094,12,clif_parse_DropItem,6,10);
  568. parseable_packet(0x009b,10,clif_parse_GetCharNameRequest,6);
  569. parseable_packet(0x00a2,16,clif_parse_SolveCharName,12);
  570. parseable_packet(0x00a7,28,clif_parse_UseSkillToPos,6,9,23,26);
  571. parseable_packet(0x00f3,15,clif_parse_ChangeDir,6,14);
  572. parseable_packet(0x00f5,29,clif_parse_WantToConnection,5,14,20,24,28);
  573. parseable_packet(0x0113,9,clif_parse_TakeItem,5);
  574. parseable_packet(0x0116,9,clif_parse_TickSend,5);
  575. parseable_packet(0x0190,26,clif_parse_UseSkillToId,4,10,22);
  576. parseable_packet(0x0193,22,clif_parse_MoveFromKafra,12,18);
  577. #endif
  578. // 2004-11-01aSakexe
  579. #if PACKETVER >= 20041101
  580. packet(0x0084,-1);
  581. packet(0x0215,6);
  582. #endif
  583. // 2004-11-08aSakexe
  584. #if PACKETVER >= 20041108
  585. packet(0x0084,2);
  586. packet(0x0216,6);
  587. parseable_packet(0x0217,2,clif_parse_Blacksmith,0);
  588. parseable_packet(0x0218,2,clif_parse_Alchemist,0);
  589. packet(0x0219,282);
  590. packet(0x021a,282);
  591. packet(0x021b,10);
  592. packet(0x021c,10);
  593. #endif
  594. // 2004-11-15aSakexe
  595. #if PACKETVER >= 20041115
  596. parseable_packet(0x021d,6,clif_parse_LessEffect,2);
  597. #endif
  598. // 2004-11-29aSakexe
  599. #if PACKETVER >= 20041129
  600. parseable_packet(0x0072,22,clif_parse_UseSkillToId,8,12,18);
  601. parseable_packet(0x007e,30,clif_parse_UseSkillToPos,4,9,22,28);
  602. parseable_packet(0x0085,-1,clif_parse_GlobalMessage,2,4);
  603. parseable_packet(0x0089,7,clif_parse_TickSend,3);
  604. parseable_packet(0x008c,13,clif_parse_GetCharNameRequest,9);
  605. parseable_packet(0x0094,14,clif_parse_MoveToKafra,4,10);
  606. parseable_packet(0x009b,2,clif_parse_CloseKafra,0);
  607. parseable_packet(0x009f,18,clif_parse_ActionRequest,6,17);
  608. parseable_packet(0x00a2,7,clif_parse_TakeItem,3);
  609. parseable_packet(0x00a7,7,clif_parse_WalkToXY,4);
  610. parseable_packet(0x00f3,8,clif_parse_ChangeDir,3,7);
  611. parseable_packet(0x00f5,29,clif_parse_WantToConnection,3,10,20,24,28);
  612. parseable_packet(0x00f7,14,clif_parse_SolveCharName,10);
  613. parseable_packet(0x0113,110,clif_parse_UseSkillToPosMoreInfo,4,9,22,28,30);
  614. parseable_packet(0x0116,12,clif_parse_DropItem,4,10);
  615. parseable_packet(0x0190,15,clif_parse_UseItem,3,11);
  616. parseable_packet(0x0193,21,clif_parse_MoveFromKafra,4,17);
  617. packet(0x0221,-1);
  618. parseable_packet(0x0222,6,clif_parse_WeaponRefine,2);
  619. packet( HEADER_ZC_ACK_WEAPONREFINE, sizeof( struct PACKET_ZC_ACK_WEAPONREFINE ) );
  620. #endif
  621. // 2004-12-13aSakexe
  622. #if PACKETVER >= 20041213
  623. //skipped: many packets being set to -1
  624. packet(0x0066,3);
  625. packet(0x0070,3);
  626. packet(0x01ca,3);
  627. packet(0x021e,6);
  628. packet(0x021f,66);
  629. packet(0x0220,10);
  630. #endif
  631. // 2005-01-10bSakexe
  632. #if PACKETVER >= 20050110
  633. parseable_packet(0x0072,26,clif_parse_UseSkillToId,8,16,22);
  634. parseable_packet(0x007e,114,clif_parse_UseSkillToPosMoreInfo,10,18,22,32,34);
  635. parseable_packet(0x0085,23,clif_parse_ChangeDir,12,22);
  636. parseable_packet(0x0089,9,clif_parse_TickSend,5);
  637. parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
  638. parseable_packet(0x0094,20,clif_parse_MoveToKafra,10,16);
  639. parseable_packet(0x009b,32,clif_parse_WantToConnection,3,12,23,27,31);
  640. parseable_packet(0x009f,17,clif_parse_UseItem,5,13);
  641. parseable_packet(0x00a2,11,clif_parse_SolveCharName,7);
  642. parseable_packet(0x00a7,13,clif_parse_WalkToXY,10);
  643. parseable_packet(0x00f3,-1,clif_parse_GlobalMessage,2,4);
  644. parseable_packet(0x00f5,9,clif_parse_TakeItem,5);
  645. parseable_packet(0x00f7,21,clif_parse_MoveFromKafra,11,17);
  646. parseable_packet(0x0113,34,clif_parse_UseSkillToPos,10,18,22,32);
  647. parseable_packet(0x0116,20,clif_parse_DropItem,15,18);
  648. parseable_packet(0x0190,20,clif_parse_ActionRequest,9,19);
  649. parseable_packet(0x0193,2,clif_parse_CloseKafra,0);
  650. #endif
  651. // 2005-03-28aSakexe
  652. #if PACKETVER >= 20050328
  653. packet(0x0224,10);
  654. parseable_packet(0x0225,2,clif_parse_Taekwon,0);
  655. packet(0x0226,282);
  656. #endif
  657. // 2005-04-04aSakexe
  658. #if PACKETVER >= 20050404
  659. packet(0x0227,18);
  660. packet(0x0228,18);
  661. #endif
  662. // 2005-04-11aSakexe
  663. #if PACKETVER >= 20050411
  664. packet(0x0229,15);
  665. packet(0x022a,58);
  666. packet(0x022b,57);
  667. packet(0x022c,64);
  668. #endif
  669. // 2005-04-25aSakexe
  670. #if PACKETVER >= 20050425
  671. parseable_packet(0x022d,5,clif_parse_HomMenu,2,4);
  672. parseable_packet(0x0232,9,clif_parse_HomMoveTo,2,6);
  673. parseable_packet(0x0233,11,clif_parse_HomAttack,2,6,10);
  674. parseable_packet(0x0234,6,clif_parse_HomMoveToMaster,2);
  675. #endif
  676. // 2005-05-09aSakexe
  677. #if PACKETVER >= 20050509
  678. parseable_packet(0x0072,25,clif_parse_UseSkillToId,6,10,21);
  679. parseable_packet(0x007e,102,clif_parse_UseSkillToPosMoreInfo,5,9,12,20,22);
  680. parseable_packet(0x0085,11,clif_parse_ChangeDir,7,10);
  681. parseable_packet(0x0089,8,clif_parse_TickSend,4);
  682. parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
  683. parseable_packet(0x0094,14,clif_parse_MoveToKafra,7,10);
  684. parseable_packet(0x009b,26,clif_parse_WantToConnection,4,9,17,21,25);
  685. parseable_packet(0x009f,14,clif_parse_UseItem,4,10);
  686. parseable_packet(0x00a2,15,clif_parse_SolveCharName,11);
  687. parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
  688. parseable_packet(0x00f5,8,clif_parse_TakeItem,4);
  689. parseable_packet(0x00f7,22,clif_parse_MoveFromKafra,14,18);
  690. parseable_packet(0x0113,22,clif_parse_UseSkillToPos,5,9,12,20);
  691. parseable_packet(0x0116,10,clif_parse_DropItem,5,8);
  692. parseable_packet(0x0190,19,clif_parse_ActionRequest,5,18);
  693. #endif
  694. // 2005-05-23aSakexe
  695. #if PACKETVER >= 20050523
  696. packet(0x022e,69);
  697. packet(0x0230,12);
  698. #endif
  699. // 2005-05-30aSakexe
  700. #if PACKETVER >= 20050530
  701. packet(0x022e,71);
  702. packet(0x0235,-1);
  703. packet(0x0236,10);
  704. parseable_packet(0x0237,2,clif_parse_RankingPk,0);
  705. packet(0x0238,282);
  706. #endif
  707. // 2005-05-31aSakexe
  708. #if PACKETVER >= 20050531
  709. packet(0x0216,2);
  710. packet(0x0239,11);
  711. #endif
  712. // 2005-06-08aSakexe
  713. #if PACKETVER >= 20050608
  714. packet(0x0216,6);
  715. parseable_packet(0x0217,2,clif_parse_Blacksmith,0);
  716. packet(0x022f,5);
  717. parseable_packet(0x0231,26,clif_parse_ChangeHomunculusName,2);
  718. packet(0x023a,4);
  719. parseable_packet(0x023b,36,clif_parse_StoragePassword,2,4,20);
  720. packet(0x023c,6);
  721. #endif
  722. // 2005-06-22aSakexe
  723. #if PACKETVER >= 20050622
  724. packet(0x022e,71);
  725. #endif
  726. // 2005-06-28aSakexe
  727. #if PACKETVER >= 20050628
  728. parseable_packet(0x0072,34,clif_parse_UseSkillToId,6,17,30);
  729. parseable_packet(0x007e,113,clif_parse_UseSkillToPosMoreInfo,12,15,18,31,33);
  730. parseable_packet(0x0085,17,clif_parse_ChangeDir,8,16);
  731. parseable_packet(0x0089,13,clif_parse_TickSend,9);
  732. parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
  733. parseable_packet(0x0094,31,clif_parse_MoveToKafra,16,27);
  734. parseable_packet(0x009b,32,clif_parse_WantToConnection,9,15,23,27,31);
  735. parseable_packet(0x009f,19,clif_parse_UseItem,9,15);
  736. parseable_packet(0x00a2,9,clif_parse_SolveCharName,5);
  737. parseable_packet(0x00a7,11,clif_parse_WalkToXY,8);
  738. parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
  739. parseable_packet(0x00f7,18,clif_parse_MoveFromKafra,11,14);
  740. parseable_packet(0x0113,33,clif_parse_UseSkillToPos,12,15,18,31);
  741. parseable_packet(0x0116,12,clif_parse_DropItem,3,10);
  742. parseable_packet(0x0190,24,clif_parse_ActionRequest,11,23);
  743. packet(0x0216,-1);
  744. packet(0x023d,-1);
  745. packet(0x023e,4);
  746. #endif
  747. // 2005-07-18aSakexe
  748. #if PACKETVER >= 20050718
  749. parseable_packet(0x0072,19,clif_parse_UseSkillToId,5,11,15);
  750. parseable_packet(0x007e,110,clif_parse_UseSkillToPosMoreInfo,9,15,23,28,30);
  751. parseable_packet(0x0085,11,clif_parse_ChangeDir,6,10);
  752. parseable_packet(0x0089,7,clif_parse_TickSend,3);
  753. parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
  754. parseable_packet(0x0094,21,clif_parse_MoveToKafra,12,17);
  755. parseable_packet(0x009b,31,clif_parse_WantToConnection,3,13,22,26,30);
  756. parseable_packet(0x009f,12,clif_parse_UseItem,3,8);
  757. parseable_packet(0x00a2,18,clif_parse_SolveCharName,14);
  758. parseable_packet(0x00a7,15,clif_parse_WalkToXY,12);
  759. parseable_packet(0x00f5,7,clif_parse_TakeItem,3);
  760. parseable_packet(0x00f7,13,clif_parse_MoveFromKafra,5,9);
  761. parseable_packet(0x0113,30,clif_parse_UseSkillToPos,9,15,23,28);
  762. parseable_packet(0x0116,12,clif_parse_DropItem,6,10);
  763. parseable_packet(0x0190,21,clif_parse_ActionRequest,5,20);
  764. packet(0x0216,6);
  765. parseable_packet(0x023f,2,clif_parse_Mail_refreshinbox,0);
  766. packet(0x0240,8);
  767. parseable_packet(0x0241,6,clif_parse_Mail_read,2);
  768. packet(0x0242,-1);
  769. parseable_packet(0x0243,6,clif_parse_Mail_delete,2);
  770. parseable_packet(0x0244,6,clif_parse_Mail_getattach,2);
  771. packet(0x0245,7);
  772. parseable_packet(0x0246,4,clif_parse_Mail_winopen,2);
  773. parseable_packet(0x0247,8,clif_parse_Mail_setattach,2,4);
  774. packet(0x0248,68);
  775. packet(0x0249,3);
  776. packet(0x024a,70);
  777. parseable_packet(0x024b,4,clif_parse_Auction_cancelreg,2);
  778. parseable_packet(0x024c,8,clif_parse_Auction_setitem,2,4);
  779. packet(0x024d,14);
  780. parseable_packet(0x024e,6,clif_parse_Auction_cancel,2);
  781. parseable_packet(0x024f,10,clif_parse_Auction_bid,2,6);
  782. packet(0x0250,3);
  783. packet(0x0251,2);
  784. packet(0x0252,-1);
  785. #endif
  786. // 2005-07-19bSakexe
  787. #if PACKETVER >= 20050719
  788. parseable_packet(0x0072,34,clif_parse_UseSkillToId,6,17,30);
  789. parseable_packet(0x007e,113,clif_parse_UseSkillToPosMoreInfo,12,15,18,31,33);
  790. parseable_packet(0x0085,17,clif_parse_ChangeDir,8,16);
  791. parseable_packet(0x0089,13,clif_parse_TickSend,9);
  792. parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
  793. parseable_packet(0x0094,31,clif_parse_MoveToKafra,16,27);
  794. parseable_packet(0x009b,32,clif_parse_WantToConnection,9,15,23,27,31);
  795. parseable_packet(0x009f,19,clif_parse_UseItem,9,15);
  796. parseable_packet(0x00a2,9,clif_parse_SolveCharName,5);
  797. parseable_packet(0x00a7,11,clif_parse_WalkToXY,8);
  798. parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
  799. parseable_packet(0x00f7,18,clif_parse_MoveFromKafra,11,14);
  800. parseable_packet(0x0113,33,clif_parse_UseSkillToPos,12,15,18,31);
  801. parseable_packet(0x0116,12,clif_parse_DropItem,3,10);
  802. parseable_packet(0x0190,24,clif_parse_ActionRequest,11,23);
  803. #endif
  804. // 2005-08-01aSakexe
  805. #if PACKETVER >= 20050801
  806. packet(0x0245,3);
  807. packet(0x0251,4);
  808. #endif
  809. // 2005-08-08aSakexe
  810. #if PACKETVER >= 20050808
  811. parseable_packet(0x024d,12,clif_parse_Auction_register,2,6,10);
  812. packet(0x024e,4);
  813. #endif
  814. // 2005-08-17aSakexe
  815. #if PACKETVER >= 20050817
  816. packet(0x0253,3);
  817. parseable_packet(0x0254,3,clif_parse_FeelSaveOk,2);
  818. #endif
  819. // 2005-08-29aSakexe
  820. #if PACKETVER >= 20050829
  821. packet(0x0240,-1);
  822. parseable_packet(0x0248,-1,clif_parse_Mail_send,2,4,28,68,69);
  823. packet(0x0255,5);
  824. packet(0x0256,-1);
  825. packet(0x0257,8);
  826. #endif
  827. // 2005-09-12bSakexe
  828. #if PACKETVER >= 20050912
  829. packet(0x0256,5);
  830. packet(0x0258,2);
  831. packet(0x0259,3);
  832. #endif
  833. // 2005-10-10aSakexe
  834. #if PACKETVER >= 20051010
  835. packet(0x020e,32);
  836. packet(0x025a,-1);
  837. parseable_packet( HEADER_CZ_REQ_MAKINGITEM, sizeof( struct PACKET_CZ_REQ_MAKINGITEM ), clif_parse_Cooking, 0 );
  838. #endif
  839. // 2005-10-13aSakexe
  840. #if PACKETVER >= 20051013
  841. packet(0x007a,6);
  842. packet(0x0251,32);
  843. parseable_packet(0x025c,4,clif_parse_Auction_buysell,2);
  844. #endif
  845. // 2005-10-17aSakexe
  846. #if PACKETVER >= 20051017
  847. packet(0x007a,58);
  848. parseable_packet(0x025d,6,clif_parse_Auction_close,2);
  849. packet(0x025e,4);
  850. #endif
  851. // 2005-10-24aSakexe
  852. #if PACKETVER >= 20051024
  853. packet(0x025f,6);
  854. packet(0x0260,6);
  855. #endif
  856. // 2005-11-07aSakexe
  857. #if PACKETVER >= 20051107
  858. parseable_packet(0x024e,6,clif_parse_Auction_cancel,2);
  859. parseable_packet(0x0251,34,clif_parse_Auction_search,2,4,8,32);
  860. #endif
  861. // 2006-01-09aSakexe
  862. #if PACKETVER >= 20060109
  863. packet(0x0261,11);
  864. packet(0x0262,11);
  865. packet(0x0263,11);
  866. packet(0x0264,20);
  867. packet(0x0265,20);
  868. packet(0x0266,30);
  869. packet(0x0267,4);
  870. packet(0x0268,4);
  871. packet(0x0269,4);
  872. packet(0x026a,4);
  873. packet(0x026b,4);
  874. packet(0x026c,4);
  875. packet(0x026d,4);
  876. packet(0x026f,2);
  877. packet(0x0270,2);
  878. packet(0x0271,38);
  879. packet(0x0272,44);
  880. #endif
  881. // 2006-01-26aSakexe
  882. #if PACKETVER >= 20060126
  883. packet(0x0271,40);
  884. #endif
  885. // 2006-03-06aSakexe
  886. #if PACKETVER >= 20060306
  887. packet(0x0273,6);
  888. packet(0x0274,8);
  889. #endif
  890. // 2006-03-13aSakexe
  891. #if PACKETVER >= 20060313
  892. parseable_packet(0x0273,30,clif_parse_Mail_return,2,6);
  893. #endif
  894. // 2006-03-27aSakexe
  895. #if PACKETVER >= 20060327
  896. parseable_packet(0x0072,26,clif_parse_UseSkillToId,11,18,22);
  897. parseable_packet(0x007e,120,clif_parse_UseSkillToPosMoreInfo,5,15,29,38,40);
  898. parseable_packet(0x0085,12,clif_parse_ChangeDir,7,11);
  899. //parseable_packet(0x0089,13,clif_parse_TickSend,9);
  900. parseable_packet(0x008c,12,clif_parse_GetCharNameRequest,8);
  901. parseable_packet(0x0094,23,clif_parse_MoveToKafra,5,19);
  902. parseable_packet(0x009b,37,clif_parse_WantToConnection,9,21,28,32,36);
  903. parseable_packet(0x009f,24,clif_parse_UseItem,9,20);
  904. parseable_packet(0x00a2,11,clif_parse_SolveCharName,7);
  905. parseable_packet(0x00a7,15,clif_parse_WalkToXY,12);
  906. parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
  907. parseable_packet(0x00f7,26,clif_parse_MoveFromKafra,11,22);
  908. parseable_packet(0x0113,40,clif_parse_UseSkillToPos,5,15,29,38);
  909. parseable_packet(0x0116,17,clif_parse_DropItem,8,15);
  910. parseable_packet(0x0190,18,clif_parse_ActionRequest,7,17);
  911. #endif
  912. // 2006-10-23aSakexe
  913. #if PACKETVER >= 20061023
  914. packet(0x006d,110);
  915. #endif
  916. //2006-04-24aSakexe to 2007-01-02aSakexe
  917. #if PACKETVER >= 20060424
  918. packet(0x023e,8);
  919. packet(0x0277,84);
  920. packet(0x0278,2);
  921. packet(0x0279,2);
  922. packet(0x027a,-1);
  923. packet(0x027b,14);
  924. packet(0x027c,60);
  925. packet(0x027d,62);
  926. packet(0x027e,-1);
  927. packet(0x027f,8);
  928. packet(0x0280,12);
  929. packet(0x0281,4);
  930. packet(0x0282,284);
  931. packet(0x0283,6);
  932. packet(0x0284,14);
  933. packet(0x0285,6);
  934. packet(0x0286,4);
  935. packet(0x0287,-1);
  936. packet(0x0288,6);
  937. packet(0x0289,8);
  938. packet(0x028a,18);
  939. packet(0x028b,-1);
  940. packet(0x028c,46);
  941. packet(0x028d,34);
  942. packet(0x028e,4);
  943. packet(0x028f,6);
  944. packet(0x0290,4);
  945. packet(0x0291,4);
  946. parseable_packet(0x0292,2,clif_parse_AutoRevive,0);
  947. packet(0x0293,70);
  948. packet(0x0294,10);
  949. packet(0x0295,-1);
  950. packet(0x0296,-1);
  951. packet(0x0297,-1);
  952. packet( HEADER_ZC_CASH_TIME_COUNTER, sizeof( struct PACKET_ZC_CASH_TIME_COUNTER ) );
  953. packet( HEADER_ZC_CASH_ITEM_DELETE, sizeof( struct PACKET_ZC_CASH_ITEM_DELETE ) );
  954. packet(0x029a,27);
  955. packet(0x029c,66);
  956. packet(0x029d,-1);
  957. packet(0x029e,11);
  958. parseable_packet(0x029f,3,clif_parse_mercenary_action,2);
  959. packet(0x02a0,-1);
  960. packet(0x02a1,-1);
  961. packet(0x02a2,8);
  962. #endif
  963. // 2007-01-08aSakexe
  964. #if PACKETVER >= 20070108
  965. parseable_packet(0x0072,30,clif_parse_UseSkillToId,10,14,26);
  966. parseable_packet(0x007e,120,clif_parse_UseSkillToPosMoreInfo,10,19,23,38,40);
  967. parseable_packet(0x0085,14,clif_parse_ChangeDir,10,13);
  968. parseable_packet(0x0089,11,clif_parse_TickSend,7);
  969. parseable_packet(0x008c,17,clif_parse_GetCharNameRequest,13);
  970. parseable_packet(0x0094,17,clif_parse_MoveToKafra,4,13);
  971. parseable_packet(0x009b,35,clif_parse_WantToConnection,7,21,26,30,34);
  972. parseable_packet(0x009f,21,clif_parse_UseItem,7,17);
  973. parseable_packet(0x00a2,10,clif_parse_SolveCharName,6);
  974. parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
  975. parseable_packet(0x00f5,11,clif_parse_TakeItem,7);
  976. parseable_packet(0x00f7,15,clif_parse_MoveFromKafra,3,11);
  977. parseable_packet(0x0113,40,clif_parse_UseSkillToPos,10,19,23,38);
  978. parseable_packet(0x0116,19,clif_parse_DropItem,11,17);
  979. parseable_packet(0x0190,10,clif_parse_ActionRequest,4,9);
  980. #endif
  981. // 2007-01-22aSakexe
  982. #if PACKETVER >= 20070122
  983. packet(0x02a3,18);
  984. packet(0x02a4,2);
  985. #endif
  986. // 2007-01-29aSakexe
  987. #if PACKETVER >= 20070129
  988. packet(0x029b,72);
  989. packet(0x02a3,-1);
  990. packet(0x02a4,-1);
  991. packet(0x02a5,8);
  992. #endif
  993. // 2007-02-05aSakexe
  994. #if PACKETVER >= 20070205
  995. packet(0x02aa,4);
  996. packet(0x02ab,36);
  997. packet(0x02ac,6);
  998. #endif
  999. // 2007-02-12aSakexe
  1000. #if PACKETVER >= 20070212
  1001. parseable_packet(0x0072,25,clif_parse_UseSkillToId,6,10,21);
  1002. parseable_packet(0x007e,102,clif_parse_UseSkillToPosMoreInfo,5,9,12,20,22);
  1003. parseable_packet(0x0085,11,clif_parse_ChangeDir,7,10);
  1004. parseable_packet(0x0089,8,clif_parse_TickSend,4);
  1005. parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
  1006. parseable_packet(0x0094,14,clif_parse_MoveToKafra,7,10);
  1007. parseable_packet(0x009b,26,clif_parse_WantToConnection,4,9,17,21,25);
  1008. parseable_packet(0x009f,14,clif_parse_UseItem,4,10);
  1009. parseable_packet(0x00a2,15,clif_parse_SolveCharName,11);
  1010. //parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
  1011. parseable_packet(0x00f5,8,clif_parse_TakeItem,4);
  1012. parseable_packet(0x00f7,22,clif_parse_MoveFromKafra,14,18);
  1013. parseable_packet(0x0113,22,clif_parse_UseSkillToPos,5,9,12,20);
  1014. parseable_packet(0x0116,10,clif_parse_DropItem,5,8);
  1015. parseable_packet(0x0190,19,clif_parse_ActionRequest,5,18);
  1016. #endif
  1017. // 2007-02-27aSakexe to 2007-10-02aSakexe
  1018. #if PACKETVER >= 20070227
  1019. parseable_packet(0x0288,10,clif_parse_npccashshop_buy,2,4,6);
  1020. packet(0x0289,12);
  1021. packet(0x02a6,22);
  1022. packet(0x02a7,22);
  1023. packet(0x02a8,162);
  1024. packet(0x02a9,58);
  1025. packet(0x02ad,8);
  1026. packet(0x02b0,85);
  1027. packet(0x02b1,-1);
  1028. packet(0x02b2,-1);
  1029. packet(0x02b3,107);
  1030. packet(0x02b4,6);
  1031. packet(0x02b5,-1);
  1032. parseable_packet(0x02b6,7,clif_parse_questStateAck,2,6);
  1033. packet(0x02b7,7);
  1034. packet( HEADER_ZC_ITEM_PICKUP_PARTY, sizeof( struct PACKET_ZC_ITEM_PICKUP_PARTY ) );
  1035. packet(0x02b9,191);
  1036. parseable_packet(0x02ba,11,clif_parse_Hotkey,2,4,5,9);
  1037. packet(0x02bb,8);
  1038. packet(0x02bc,6);
  1039. packet(0x02bf,10);
  1040. packet(0x02c0,2);
  1041. packet(0x02c1,-1);
  1042. packet(0x02c2,-1);
  1043. parseable_packet(0x02c4,26,clif_parse_PartyInvite2,2);
  1044. packet(0x02c5,30);
  1045. packet(0x02c6,30);
  1046. parseable_packet(0x02c7,7,clif_parse_ReplyPartyInvite2,2,6);
  1047. parseable_packet(0x02c8,3,clif_parse_PartyTick,2);
  1048. packet(0x02c9,3);
  1049. packet(0x02ca,3);
  1050. packet(0x02cb,20);
  1051. packet(0x02cc,4);
  1052. packet(0x02cd,26);
  1053. packet(0x02ce,10);
  1054. parseable_packet(0x02cf,6,clif_parse_MemorialDungeonCommand,2);
  1055. packet(0x02d0,-1);
  1056. packet(0x02d1,-1);
  1057. packet(0x02d2,-1);
  1058. ack_packet(ZC_NOTIFY_BIND_ON_EQUIP,0x02d3,4,2);
  1059. packet(0x02d4,29);
  1060. packet(0x02d5,2);
  1061. parseable_packet(0x02d6,6,clif_parse_ViewPlayerEquip,2);
  1062. packet(0x02d7,-1);
  1063. parseable_packet(0x02d8,10,clif_parse_configuration,2,6);
  1064. packet(0x02d9,10);
  1065. packet(0x02da,3);
  1066. parseable_packet(0x02db,-1,clif_parse_BattleChat,2,4);
  1067. packet(0x02dc,-1);
  1068. packet(0x02dd,32);
  1069. packet(0x02de,6);
  1070. packet(0x02df,36);
  1071. packet(0x02e0,34);
  1072. #endif
  1073. // 2007-10-23aSakexe
  1074. #if PACKETVER >= 20071023
  1075. packet(0x02cb,65);
  1076. packet(0x02cd,71);
  1077. #endif
  1078. // 2007-11-06aSakexe
  1079. #if PACKETVER >= 20071106
  1080. packet(0x0078,55);
  1081. packet(0x007c,42);
  1082. packet(0x022c,65);
  1083. packet(0x029b,80);
  1084. #endif
  1085. // 2007-11-13aSakexe
  1086. #if PACKETVER >= 20071113
  1087. packet(0x02e1,33);
  1088. #endif
  1089. // 2007-11-20aSakexe
  1090. #if PACKETVER >= 20071120
  1091. //packet(0x01df,10 <- ???);
  1092. packet(0x02e2,14);
  1093. packet(0x02e3,25);
  1094. packet(0x02e4,8);
  1095. packet(0x02e5,8);
  1096. packet(0x02e6,6);
  1097. #endif
  1098. // 2007-11-27aSakexe
  1099. #if PACKETVER >= 20071127
  1100. packet(0x02e7,-1);
  1101. #endif
  1102. // 2008-01-02aSakexe
  1103. #if PACKETVER >= 20080102
  1104. parseable_packet(0x01df,6,clif_parse_GMReqAccountName,2);
  1105. packet(0x02e8,-1);
  1106. packet(0x02e9,-1);
  1107. packet(0x02ea,-1);
  1108. packet(0x02eb,13);
  1109. packet(0x02ec,67);
  1110. packet(0x02ed,59);
  1111. packet(0x02ee,60);
  1112. packet(0x02ef,8);
  1113. #endif
  1114. // 2008-03-18aSakexe
  1115. #if PACKETVER >= 20080318
  1116. packet(0x02bf,-1);
  1117. packet(0x02c0,-1);
  1118. packet(0x02f0,10);
  1119. parseable_packet(0x02f1,2,clif_parse_progressbar,0);
  1120. packet(0x02f2,2);
  1121. #endif
  1122. // 2008-03-25bSakexe
  1123. #if PACKETVER >= 20080325
  1124. packet(0x02f3,-1);
  1125. packet(0x02f4,-1);
  1126. packet(0x02f5,-1);
  1127. packet(0x02f6,-1);
  1128. packet(0x02f7,-1);
  1129. packet(0x02f8,-1);
  1130. packet(0x02f9,-1);
  1131. packet(0x02fa,-1);
  1132. packet(0x02fb,-1);
  1133. packet(0x02fc,-1);
  1134. packet(0x02fd,-1);
  1135. packet(0x02fe,-1);
  1136. packet(0x02ff,-1);
  1137. packet(0x0300,-1);
  1138. #endif
  1139. // 2008-04-01aSakexe
  1140. #if PACKETVER >= 20080401
  1141. packet(0x0301,-1);
  1142. packet(0x0302,-1);
  1143. packet(0x0303,-1);
  1144. packet(0x0304,-1);
  1145. packet(0x0305,-1);
  1146. packet(0x0306,-1);
  1147. packet(0x0307,-1);
  1148. packet(0x0308,-1);
  1149. packet(0x0309,-1);
  1150. packet(0x030a,-1);
  1151. packet(0x030b,-1);
  1152. packet(0x030c,-1);
  1153. packet(0x030d,-1);
  1154. packet(0x030e,-1);
  1155. packet(0x030f,-1);
  1156. packet(0x0310,-1);
  1157. packet(0x0311,-1);
  1158. packet(0x0312,-1);
  1159. packet(0x0313,-1);
  1160. packet(0x0314,-1);
  1161. packet(0x0315,-1);
  1162. packet(0x0316,-1);
  1163. packet(0x0317,-1);
  1164. packet(0x0318,-1);
  1165. packet(0x0319,-1);
  1166. packet(0x031a,-1);
  1167. packet(0x031b,-1);
  1168. packet(0x031c,-1);
  1169. packet(0x031d,-1);
  1170. packet(0x031e,-1);
  1171. packet(0x031f,-1);
  1172. packet(0x0320,-1);
  1173. packet(0x0321,-1);
  1174. packet(0x0322,-1);
  1175. packet(0x0323,-1);
  1176. packet(0x0324,-1);
  1177. packet(0x0325,-1);
  1178. packet(0x0326,-1);
  1179. packet(0x0327,-1);
  1180. packet(0x0328,-1);
  1181. packet(0x0329,-1);
  1182. packet(0x032a,-1);
  1183. packet(0x032b,-1);
  1184. packet(0x032c,-1);
  1185. packet(0x032d,-1);
  1186. packet(0x032e,-1);
  1187. packet(0x032f,-1);
  1188. packet(0x0330,-1);
  1189. packet(0x0331,-1);
  1190. packet(0x0332,-1);
  1191. packet(0x0333,-1);
  1192. packet(0x0334,-1);
  1193. packet(0x0335,-1);
  1194. packet(0x0336,-1);
  1195. packet(0x0337,-1);
  1196. packet(0x0338,-1);
  1197. packet(0x0339,-1);
  1198. packet(0x033a,-1);
  1199. packet(0x033b,-1);
  1200. packet(0x033c,-1);
  1201. packet(0x033d,-1);
  1202. packet(0x033e,-1);
  1203. packet(0x033f,-1);
  1204. packet(0x0340,-1);
  1205. packet(0x0341,-1);
  1206. packet(0x0342,-1);
  1207. packet(0x0343,-1);
  1208. packet(0x0344,-1);
  1209. packet(0x0345,-1);
  1210. packet(0x0346,-1);
  1211. packet(0x0347,-1);
  1212. packet(0x0348,-1);
  1213. packet(0x0349,-1);
  1214. packet(0x034a,-1);
  1215. packet(0x034b,-1);
  1216. packet(0x034c,-1);
  1217. packet(0x034d,-1);
  1218. packet(0x034e,-1);
  1219. packet(0x034f,-1);
  1220. packet(0x0350,-1);
  1221. packet(0x0351,-1);
  1222. packet(0x0352,-1);
  1223. packet(0x0353,-1);
  1224. packet(0x0354,-1);
  1225. packet(0x0355,-1);
  1226. packet(0x0356,-1);
  1227. packet(0x0357,-1);
  1228. packet(0x0358,-1);
  1229. packet(0x0359,-1);
  1230. packet(0x035a,-1);
  1231. #endif
  1232. // 2008-05-27aSakexe
  1233. #if PACKETVER >= 20080527
  1234. packet(0x035b,-1);
  1235. packet(0x035c,2);
  1236. packet(0x035d,-1);
  1237. packet(0x035e,2);
  1238. packet(0x035f,-1);
  1239. packet(0x0389,-1);
  1240. #endif
  1241. // 2008-08-20aSakexe
  1242. #if PACKETVER >= 20080820
  1243. packet(0x040c,-1);
  1244. packet(0x040d,-1);
  1245. packet(0x040e,-1);
  1246. packet(0x040f,-1);
  1247. packet(0x0410,-1);
  1248. packet(0x0411,-1);
  1249. packet(0x0412,-1);
  1250. packet(0x0413,-1);
  1251. packet(0x0414,-1);
  1252. packet(0x0415,-1);
  1253. packet(0x0416,-1);
  1254. packet(0x0417,-1);
  1255. packet(0x0418,-1);
  1256. packet(0x0419,-1);
  1257. packet(0x041a,-1);
  1258. packet(0x041b,-1);
  1259. packet(0x041c,-1);
  1260. packet(0x041d,-1);
  1261. packet(0x041e,-1);
  1262. packet(0x041f,-1);
  1263. packet(0x0420,-1);
  1264. packet(0x0421,-1);
  1265. packet(0x0422,-1);
  1266. packet(0x0423,-1);
  1267. packet(0x0424,-1);
  1268. packet(0x0425,-1);
  1269. packet(0x0426,-1);
  1270. packet(0x0427,-1);
  1271. packet(0x0428,-1);
  1272. packet(0x0429,-1);
  1273. packet(0x042a,-1);
  1274. packet(0x042b,-1);
  1275. packet(0x042c,-1);
  1276. packet(0x042d,-1);
  1277. packet(0x042e,-1);
  1278. packet(0x042f,-1);
  1279. packet(0x0430,-1);
  1280. packet(0x0431,-1);
  1281. packet(0x0432,-1);
  1282. packet(0x0433,-1);
  1283. packet(0x0434,-1);
  1284. packet(0x0435,-1);
  1285. #endif
  1286. // 2008-09-10aSakexe
  1287. #if PACKETVER >= 20080910
  1288. parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
  1289. parseable_packet(0x0437,7,clif_parse_ActionRequest,2,6);
  1290. parseable_packet(0x0438,10,clif_parse_UseSkillToId,2,4,6);
  1291. parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
  1292. #endif
  1293. // 2008-11-13aSakexe
  1294. #if PACKETVER >= 20081113
  1295. packet(0x043d,8);
  1296. packet(0x043e,-1);
  1297. packet(0x043f,8);
  1298. #endif
  1299. // 2008-11-26aSakexe
  1300. #if PACKETVER >= 20081126
  1301. packet(0x01a2,37);
  1302. packet(0x0440,10);
  1303. packet(0x0441,4);
  1304. #endif
  1305. // 2008-12-10aSakexe
  1306. #if PACKETVER >= 20081210
  1307. packet(0x0442,-1);
  1308. parseable_packet(0x0443,8,clif_parse_SkillSelectMenu,2,6);
  1309. #endif
  1310. // 2009-01-14aSakexe
  1311. #if PACKETVER >= 20090114
  1312. packet(0x043f,25);
  1313. packet(0x0444,-1);
  1314. packet(0x0445,10);
  1315. #endif
  1316. // 2009-02-18aSakexe
  1317. #if PACKETVER >= 20090218
  1318. packet(0x0446,14);
  1319. #endif
  1320. // 2009-02-25aSakexe
  1321. #if PACKETVER >= 20090225
  1322. packet(0x0448,-1);
  1323. #endif
  1324. // 2009-03-30aSakexe
  1325. #if PACKETVER >= 20090330
  1326. packet(0x0449,4);
  1327. #endif
  1328. // 2009-04-08aSakexe
  1329. #if PACKETVER >= 20090408
  1330. packet(0x02a6,-1);
  1331. packet(0x02a7,-1);
  1332. parseable_packet(0x044a,6,clif_parse_client_version,2);
  1333. #endif
  1334. // Renewal Clients
  1335. // 2008-08-27aRagexeRE
  1336. #if PACKETVER >= 20080827
  1337. parseable_packet(0x0072,22,clif_parse_UseSkillToId,9,15,18);
  1338. packet(0x007c,44);
  1339. parseable_packet(0x007e,105,clif_parse_UseSkillToPosMoreInfo,10,14,18,23,25);
  1340. parseable_packet(0x0085,10,clif_parse_ChangeDir,4,9);
  1341. parseable_packet(0x0089,11,clif_parse_TickSend,7);
  1342. parseable_packet(0x008c,14,clif_parse_GetCharNameRequest,10);
  1343. parseable_packet(0x0094,19,clif_parse_MoveToKafra,3,15);
  1344. parseable_packet(0x009b,34,clif_parse_WantToConnection,7,15,25,29,33);
  1345. parseable_packet(0x009f,20,clif_parse_UseItem,7,20);
  1346. parseable_packet(0x00a2,14,clif_parse_SolveCharName,10);
  1347. parseable_packet(0x00a7,9,clif_parse_WalkToXY,6);
  1348. parseable_packet(0x00f5,11,clif_parse_TakeItem,7);
  1349. parseable_packet(0x00f7,17,clif_parse_MoveFromKafra,3,13);
  1350. parseable_packet(0x0113,25,clif_parse_UseSkillToPos,10,14,18,23);
  1351. parseable_packet(0x0116,17,clif_parse_DropItem,6,15);
  1352. parseable_packet(0x0190,23,clif_parse_ActionRequest,9,22);
  1353. packet(0x02e2,20);
  1354. packet(0x02e3,22);
  1355. packet(0x02e4,11);
  1356. packet(0x02e5,9);
  1357. #endif
  1358. // 2008-09-10aRagexeRE
  1359. #if PACKETVER >= 20080910
  1360. parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
  1361. parseable_packet(0x0437,7,clif_parse_ActionRequest,2,6);
  1362. parseable_packet(0x0438,10,clif_parse_UseSkillToId,2,4,6);
  1363. parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
  1364. #endif
  1365. // 2008-11-12aRagexeRE
  1366. #if PACKETVER >= 20081112
  1367. packet(0x043d,8);
  1368. //packet(0x043e,-1);
  1369. packet(0x043f,8);
  1370. #endif
  1371. // 2008-12-17aRagexeRE
  1372. #if PACKETVER >= 20081217
  1373. packet(0x01a2,37);
  1374. //packet(0x0440,10);
  1375. //packet(0x0441,4);
  1376. //packet(0x0442,8);
  1377. //packet(0x0443,8);
  1378. #endif
  1379. // 2008-12-17bRagexeRE
  1380. #if PACKETVER >= 20081217
  1381. packet(0x006d,114);
  1382. #endif
  1383. // 2009-01-21aRagexeRE
  1384. #if PACKETVER >= 20090121
  1385. packet(0x043f,25);
  1386. //packet(0x0444,-1);
  1387. //packet(0x0445,10);
  1388. #endif
  1389. // 2009-02-18aRagexeRE
  1390. #if PACKETVER >= 20090218
  1391. //packet(0x0446,14);
  1392. #endif
  1393. // 2009-02-26cRagexeRE
  1394. #if PACKETVER >= 20090226
  1395. //packet(0x0448,-1);
  1396. #endif
  1397. // 2009-04-01aRagexeRE
  1398. #if PACKETVER >= 20090401
  1399. //packet(0x0449,4);
  1400. #endif
  1401. // 2009-05-14aRagexeRE
  1402. #if PACKETVER >= 20090514
  1403. //packet(0x044b,2);
  1404. #endif
  1405. // 2009-05-20aRagexeRE
  1406. #if PACKETVER >= 20090520
  1407. //packet(0x07d0,6);
  1408. //packet(0x07d1,2);
  1409. //packet(0x07d2,-1);
  1410. //packet(0x07d3,4);
  1411. //packet(0x07d4,4);
  1412. //packet(0x07d5,4);
  1413. //packet(0x07d6,4);
  1414. parseable_packet( 0x0447, 2, clif_parse_blocking_playcancel, 0 );
  1415. #endif
  1416. // 2009-06-03aRagexeRE
  1417. #if PACKETVER >= 20090603
  1418. parseable_packet(0x07d7,8,clif_parse_PartyChangeOption,2,6,7);
  1419. packet(0x07d8,8);
  1420. packet(0x07d9,254);
  1421. parseable_packet(0x07da,6,clif_parse_PartyChangeLeader,2);
  1422. #endif
  1423. // 2009-06-10aRagexeRE
  1424. #if PACKETVER >= 20090610
  1425. //packet(0x07db,8);
  1426. #endif
  1427. // 2009-06-17aRagexeRE
  1428. #if PACKETVER >= 20090617
  1429. packet(0x07d9,268);
  1430. //packet(0x07dc,6);
  1431. //packet(0x07dd,54);
  1432. //packet(0x07de,30);
  1433. //packet(0x07df,54);
  1434. #endif
  1435. // 2009-07-01aRagexeRE
  1436. #if PACKETVER >= 20090701
  1437. //packet(0x0275,37);
  1438. //packet(0x0276,-1);
  1439. #endif
  1440. // 2009-07-08aRagexeRE
  1441. #if PACKETVER >= 20090708
  1442. //packet(0x07e0,58);
  1443. #endif
  1444. // 2009-07-15aRagexeRE
  1445. #if PACKETVER >= 20090715
  1446. packet(0x07e1,15);
  1447. #endif
  1448. // 2009-08-05aRagexeRE
  1449. #if PACKETVER >= 20090805
  1450. packet(0x07e2,8);
  1451. #endif
  1452. // 2009-08-18aRagexeRE
  1453. #if PACKETVER >= 20090818
  1454. packet(0x07e3,6);
  1455. parseable_packet(0x07e4,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1456. packet(0x07e6,8);
  1457. #endif
  1458. // 2009-08-25aRagexeRE
  1459. #if PACKETVER >= 20090825
  1460. //packet(0x07e6,28);
  1461. packet(0x07e7,5);
  1462. #endif
  1463. // 2009-09-22aRagexeRE
  1464. #if PACKETVER >= 20090922
  1465. packet(0x07e5,8);
  1466. packet(0x07e6,8);
  1467. packet(0x07e7,32);
  1468. packet(0x07e8,-1);
  1469. packet(0x07e9,5);
  1470. #endif
  1471. // 2009-09-29aRagexeRE
  1472. #if PACKETVER >= 20090929
  1473. //packet(0x07ea,2);
  1474. //packet(0x07eb,-1);
  1475. //packet(0x07ec,6);
  1476. //packet(0x07ed,8);
  1477. //packet(0x07ee,6);
  1478. //packet(0x07ef,8);
  1479. //packet(0x07f0,4);
  1480. //packet(0x07f2,4);
  1481. //packet(0x07f3,3);
  1482. #endif
  1483. // 2009-10-06aRagexeRE
  1484. #if PACKETVER >= 20091006
  1485. //packet(0x07ec,8);
  1486. //packet(0x07ed,10);
  1487. //packet(0x07f0,8);
  1488. //packet(0x07f1,15);
  1489. //packet(0x07f2,6);
  1490. //packet(0x07f3,4);
  1491. //packet(0x07f4,3);
  1492. #endif
  1493. // 2009-10-27aRagexeRE
  1494. #if PACKETVER >= 20091027
  1495. parseable_packet(0x07f5,6,clif_parse_GMFullStrip,2);
  1496. packet(0x07f6,14);
  1497. #endif
  1498. // 2009-11-03aRagexeRE
  1499. #if PACKETVER >= 20091103
  1500. packet(0x07f7,-1);
  1501. packet(0x07f8,-1);
  1502. packet(0x07f9,-1);
  1503. #endif
  1504. // 2009-11-17aRagexeRE
  1505. #if PACKETVER >= 20091117
  1506. packet(0x07fa,8);
  1507. #endif
  1508. // 2009-11-24aRagexeRE
  1509. #if PACKETVER >= 20091124
  1510. packet(0x07fb,25);
  1511. #endif
  1512. // 2009-12-01aRagexeRE
  1513. #if PACKETVER >= 20091201
  1514. packet(0x07fc,10);
  1515. ack_packet(ZC_BROADCASTING_SPECIAL_ITEM_OBTAIN,0x07fd,-1,0);
  1516. packet(0x07fe,26);
  1517. //packet(0x07ff,-1);
  1518. #endif
  1519. // 2009-12-15aRagexeRE
  1520. #if PACKETVER >= 20091215
  1521. packet(0x0800,-1);
  1522. //packet(0x0801,-1);
  1523. #endif
  1524. // 2009-12-22aRagexeRE
  1525. #if PACKETVER >= 2009122
  1526. parseable_packet(0x0802,18,clif_parse_PartyBookingRegisterReq,2,4,6); // Booking System
  1527. packet(0x0803,4);
  1528. packet(0x0804,8); // Booking System
  1529. packet(0x0805,-1);
  1530. parseable_packet(0x0806,4,clif_parse_PartyBookingDeleteReq,2); // Booking System
  1531. //packet(0x0807,2);
  1532. packet(0x0808,4); // Booking System
  1533. //packet(0x0809,14);
  1534. //packet(0x080A,50);
  1535. //packet(0x080B,18);
  1536. //packet(0x080C,6);
  1537. #endif
  1538. // 2009-12-29aRagexeRE
  1539. #if PACKETVER >= 20091229
  1540. parseable_packet(0x0804,14,clif_parse_PartyBookingSearchReq,2,4,6,8,12); // Booking System
  1541. parseable_packet(0x0806,2,clif_parse_PartyBookingDeleteReq,0); // Booking System
  1542. packet(0x0807,4);
  1543. parseable_packet(0x0808,14,clif_parse_PartyBookingUpdateReq,2); // Booking System
  1544. packet(0x0809,50);
  1545. packet(0x080A,18);
  1546. packet(0x080B,6); // Booking System
  1547. #endif
  1548. // 2010-01-05aRagexeRE
  1549. #if PACKETVER >= 20100105
  1550. parseable_packet(0x0801,-1,clif_parse_PurchaseReq2,2,4,8,12);
  1551. #endif
  1552. // 2010-01-26aRagexeRE
  1553. #if PACKETVER >= 20100126
  1554. //packet(0x080C,2);
  1555. //packet(0x080D,3);
  1556. packet(0x080E,14);
  1557. #endif
  1558. // 2010-02-09aRagexeRE
  1559. #if PACKETVER >= 20100209
  1560. //packet(0x07F0,6);
  1561. #endif
  1562. // 2010-02-23aRagexeRE
  1563. #if PACKETVER >= 20100223
  1564. packet(0x080F,20);
  1565. #endif
  1566. // 2010-03-03aRagexeRE
  1567. #if PACKETVER >= 20100303
  1568. packet(0x0810,3);
  1569. parseable_packet(0x0811,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
  1570. //packet(0x0812,86);
  1571. //packet(0x0813,6);
  1572. //packet(0x0814,6);
  1573. //packet(0x0815,-1);
  1574. //packet(0x0817,-1);
  1575. //packet(0x0818,6);
  1576. //packet(0x0819,4);
  1577. #endif
  1578. // 2010-03-09aRagexeRE
  1579. #if PACKETVER >= 20100309
  1580. packet(0x0813,-1);
  1581. //packet(0x0814,2);
  1582. //packet(0x0815,6);
  1583. packet(0x0816,6);
  1584. packet(0x0818,-1);
  1585. //packet(0x0819,10);
  1586. //packet(0x081A,4);
  1587. //packet(0x081B,4);
  1588. //packet(0x081C,6);
  1589. packet(0x081d,22);
  1590. packet(0x081e,8);
  1591. #endif
  1592. // 2010-03-23aRagexeRE
  1593. #if PACKETVER >= 20100323
  1594. //packet(0x081F,-1);
  1595. #endif
  1596. // 2010-04-06aRagexeRE
  1597. #if PACKETVER >= 20100406
  1598. //packet(0x081A,6);
  1599. #endif
  1600. // 2010-04-13aRagexeRE
  1601. #if PACKETVER >= 20100413
  1602. //packet(0x081A,10);
  1603. packet(0x0820,11);
  1604. //packet(0x0821,2);
  1605. //packet(0x0822,9);
  1606. //packet(0x0823,-1);
  1607. #endif
  1608. // 2010-04-14dRagexeRE
  1609. #if PACKETVER >= 20100414
  1610. //packet(0x081B,8);
  1611. #endif
  1612. // 2010-04-20aRagexeRE
  1613. #if PACKETVER >= 20100420
  1614. packet(0x0812,8);
  1615. packet(0x0814,86);
  1616. parseable_packet(0x0815,2,clif_parse_ReqCloseBuyingStore,0);
  1617. parseable_packet(0x0817,6,clif_parse_ReqClickBuyingStore,2);
  1618. parseable_packet(0x0819,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
  1619. packet(0x081a,4);
  1620. packet(0x081b,10);
  1621. packet(0x081c,10);
  1622. packet( HEADER_ZC_FAILED_TRADE_BUYING_STORE_TO_SELLER, sizeof( struct PACKET_ZC_FAILED_TRADE_BUYING_STORE_TO_SELLER ) );
  1623. #endif
  1624. // 2010-06-01aRagexeRE
  1625. #if PACKETVER >= 20100601
  1626. //packet(0x0825,-1);
  1627. //packet(0x0826,4);
  1628. parseable_packet(0x0835,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
  1629. packet(0x0836,-1);
  1630. packet(0x0837,3);
  1631. //packet(0x0838,3);
  1632. #endif
  1633. // 2010-06-08aRagexeRE
  1634. #if PACKETVER >= 20100608
  1635. parseable_packet(0x0838,2,clif_parse_SearchStoreInfoNextPage,0);
  1636. packet(0x083A,4); // Search Stalls Feature
  1637. parseable_packet(0x083B,2,clif_parse_CloseSearchStoreInfo,0);
  1638. parseable_packet( HEADER_CZ_SSILIST_ITEM_CLICK, sizeof( struct PACKET_CZ_SSILIST_ITEM_CLICK ), clif_parse_SearchStoreInfoListItemClick, 0 );
  1639. packet(0x083D,6);
  1640. #endif
  1641. // 2010-06-15aRagexeRE
  1642. #if PACKETVER >= 20100615
  1643. //packet(0x083E,26);
  1644. #endif
  1645. // 2010-06-22aRagexeRE
  1646. #if PACKETVER >= 20100622
  1647. //packet(0x083F,22);
  1648. #endif
  1649. // 2010-06-29aRagexeRE
  1650. #if PACKETVER >= 20100629
  1651. ack_packet(ZC_WEAR_EQUIP_ACK,0x00AA,9,2,4,6,8);
  1652. //packet(0x07F1,18);
  1653. //packet(0x07F2,8);
  1654. //packet(0x07F3,6);
  1655. #endif
  1656. // 2010-07-01aRagexeRE
  1657. #if PACKETVER >= 20100701
  1658. packet(0x083A,5); // Search Stalls Feature
  1659. #endif
  1660. // 2010-07-13aRagexeRE
  1661. #if PACKETVER >= 20100713
  1662. //packet(0x0827,6);
  1663. //packet(0x0828,14);
  1664. //packet(0x0829,6);
  1665. //packet(0x082A,10);
  1666. //packet(0x082B,6);
  1667. //packet(0x082C,14);
  1668. //packet(0x0840,-1);
  1669. //packet(0x0841,19);
  1670. #endif
  1671. // 2010-07-14aRagexeRE
  1672. #if PACKETVER >= 20100714
  1673. //packet(0x0841,4);
  1674. #endif
  1675. // 2010-08-03aRagexeRE
  1676. #if PACKETVER >= 20100803
  1677. packet(0x0839,66);
  1678. parseable_packet(0x0842,6,clif_parse_GMRecall2,2);
  1679. parseable_packet(0x0843,6,clif_parse_GMRemove2,2);
  1680. #endif
  1681. // 2010-11-24aRagexeRE
  1682. #if PACKETVER >= 20101124
  1683. parseable_packet(0x0288,-1,clif_parse_npccashshop_buy,2,4,8,10);
  1684. parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
  1685. parseable_packet(0x035f,5,clif_parse_WalkToXY,2);
  1686. parseable_packet(0x0360,6,clif_parse_TickSend,2);
  1687. parseable_packet(0x0361,5,clif_parse_ChangeDir,2,4);
  1688. parseable_packet(0x0362,6,clif_parse_TakeItem,2);
  1689. parseable_packet(0x0363,6,clif_parse_DropItem,2,4);
  1690. parseable_packet(0x0364,8,clif_parse_MoveToKafra,2,4);
  1691. parseable_packet(0x0365,8,clif_parse_MoveFromKafra,2,4);
  1692. parseable_packet(0x0366,10,clif_parse_UseSkillToPos,2,4,6,8);
  1693. parseable_packet(0x0367,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1694. parseable_packet(0x0368,6,clif_parse_GetCharNameRequest,2);
  1695. parseable_packet(0x0369,6,clif_parse_SolveCharName,2);
  1696. packet(0x0856,-1);
  1697. packet(0x0857,-1);
  1698. packet(0x0858,-1);
  1699. packet(0x0859,-1);
  1700. ack_packet(ZC_WEAR_EQUIP_ACK,0x08d0,9,2,4,6,8);
  1701. #endif
  1702. // 2011-10-05aRagexeRE
  1703. #if PACKETVER >= 20111005
  1704. parseable_packet(0x0364,5,clif_parse_WalkToXY,2);
  1705. parseable_packet(0x0817,6,clif_parse_TickSend,2);
  1706. parseable_packet(0x0366,5,clif_parse_ChangeDir,2,4);
  1707. parseable_packet(0x0815,6,clif_parse_TakeItem,2);
  1708. parseable_packet(0x0885,6,clif_parse_DropItem,2,4);
  1709. parseable_packet(0x0893,8,clif_parse_MoveToKafra,2,4);
  1710. parseable_packet(0x0897,8,clif_parse_MoveFromKafra,2,4);
  1711. parseable_packet(0x0369,10,clif_parse_UseSkillToPos,2,4,6,8);
  1712. parseable_packet(0x08ad,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1713. parseable_packet(0x088a,6,clif_parse_GetCharNameRequest,2);
  1714. parseable_packet(0x0838,6,clif_parse_SolveCharName,2);
  1715. parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
  1716. packet(0x08d2,10);
  1717. packet(0x08d1,7);
  1718. parseable_packet(0x0846,4,clif_parse_CashShopReqTab,2); //2011-07-18
  1719. #endif
  1720. // 2011-11-02aRagexe
  1721. #if PACKETVER >= 20111102
  1722. parseable_packet(0x0436,26,clif_parse_FriendsListAdd,2);
  1723. parseable_packet(0x0898,5,clif_parse_HomMenu,2,4);
  1724. parseable_packet(0x0281,36,clif_parse_StoragePassword,2,4,20);
  1725. parseable_packet(0x088d,26,clif_parse_PartyInvite2,2);
  1726. parseable_packet(0x083c,19,clif_parse_WantToConnection,2,6,10,14,18);
  1727. parseable_packet(0x08aa,7,clif_parse_ActionRequest,2,6);
  1728. parseable_packet(0x02c4,10,clif_parse_UseSkillToId,2,4,6);
  1729. parseable_packet(0x0811,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1730. packet(0x0890,8);
  1731. parseable_packet(0x08a5,18,clif_parse_PartyBookingRegisterReq,2,4,6);
  1732. parseable_packet(0x0835,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
  1733. parseable_packet(0x089b,2,clif_parse_ReqCloseBuyingStore,0);
  1734. parseable_packet(0x08a1,6,clif_parse_ReqClickBuyingStore,2);
  1735. parseable_packet(0x089e,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
  1736. parseable_packet(0x08ab,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
  1737. parseable_packet(0x088b,2,clif_parse_SearchStoreInfoNextPage,0);
  1738. parseable_packet(0x08a2,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
  1739. packet(0x08cf,10); //Amulet spirits
  1740. #endif
  1741. // 2012-03-07fRagexeRE
  1742. #if PACKETVER >= 20120307
  1743. parseable_packet(0x086A,19,clif_parse_WantToConnection,2,6,10,14,18);
  1744. parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
  1745. parseable_packet(0x0887,6,clif_parse_TickSend,2);
  1746. parseable_packet(0x0890,5,clif_parse_ChangeDir,2,4);
  1747. parseable_packet(0x0865,6,clif_parse_TakeItem,2);
  1748. parseable_packet(0x02C4,6,clif_parse_DropItem,2,4);
  1749. parseable_packet(0x093B,8,clif_parse_MoveToKafra,2,4);
  1750. parseable_packet(0x0963,8,clif_parse_MoveFromKafra,2,4);
  1751. parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
  1752. parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1753. parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
  1754. parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
  1755. parseable_packet(0x0369,26,clif_parse_FriendsListAdd,2);
  1756. parseable_packet(0x0863,5,clif_parse_HomMenu,2,4);
  1757. parseable_packet(0x0861,36,clif_parse_StoragePassword,2,4,20);
  1758. parseable_packet(0x0929,26,clif_parse_PartyInvite2,2);
  1759. parseable_packet(0x0885,7,clif_parse_ActionRequest,2,6);
  1760. parseable_packet(0x0889,10,clif_parse_UseSkillToId,2,4,6);
  1761. parseable_packet(0x0870,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1762. //parseable_packet(0x0926,41,clif_parse_PartyBookingRegisterReq,2,4,6);
  1763. parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
  1764. parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
  1765. parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
  1766. parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
  1767. parseable_packet(0x0884,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
  1768. parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
  1769. parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
  1770. parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
  1771. parseable_packet(0x0365,41,clif_parse_PartyBookingRegisterReq,2,4,6);
  1772. // New Packet
  1773. packet(0x090F,-1); // ZC_NOTIFY_NEWENTRY7
  1774. packet(0x0914,-1); // ZC_NOTIFY_MOVEENTRY8
  1775. packet(0x0915,-1); // ZC_NOTIFY_STANDENTRY9
  1776. #endif
  1777. // 2012-04-10aRagexeRE
  1778. #if PACKETVER >= 20120410
  1779. parseable_packet(0x089c,26,clif_parse_FriendsListAdd,2);
  1780. parseable_packet(0x0885,5,clif_parse_HomMenu,2,4);
  1781. parseable_packet(0x0961,36,clif_parse_StoragePassword,2,4,20);
  1782. parseable_packet(0x0288,-1,clif_parse_npccashshop_buy,2,4,8,10);
  1783. parseable_packet(0x091c,26,clif_parse_PartyInvite2,2);
  1784. parseable_packet(0x094b,19,clif_parse_WantToConnection,2,6,10,14,18);
  1785. parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
  1786. parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
  1787. parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
  1788. parseable_packet(0x0945,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1789. parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
  1790. parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
  1791. parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
  1792. parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
  1793. parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
  1794. parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
  1795. parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
  1796. parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
  1797. parseable_packet(0x0886,6,clif_parse_TickSend,2);
  1798. parseable_packet(0x0871,5,clif_parse_ChangeDir,2,4);
  1799. parseable_packet(0x0938,6,clif_parse_TakeItem,2);
  1800. parseable_packet(0x0891,6,clif_parse_DropItem,2,4);
  1801. parseable_packet(0x086c,8,clif_parse_MoveToKafra,2,4);
  1802. parseable_packet(0x08a6,8,clif_parse_MoveFromKafra,2,4);
  1803. parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
  1804. parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1805. parseable_packet(0x0889,6,clif_parse_GetCharNameRequest,2);
  1806. parseable_packet(0x0884,6,clif_parse_SolveCharName,2);
  1807. packet(0x08e6,4);
  1808. parseable_packet(0x08e7,10,clif_parse_PartyBookingSearchReq,2,4,6,8,12);
  1809. packet(0x08e8,-1);
  1810. parseable_packet(0x08e9,2,clif_parse_PartyBookingDeleteReq,0);
  1811. packet(0x08ea,4);
  1812. parseable_packet(0x08eb,39,clif_parse_PartyBookingUpdateReq,2);
  1813. packet(0x08ec,73);
  1814. packet(0x08ed,43);
  1815. packet(0x08ee,6);
  1816. parseable_packet(0x08ef,6,NULL,2);
  1817. packet(0x08f0,6);
  1818. parseable_packet(0x08f1,6,NULL,2);
  1819. packet(0x08f2,36);
  1820. packet(0x08f3,-1);
  1821. packet(0x08f4,6);
  1822. parseable_packet(0x08f5,-1,NULL,2,4);
  1823. packet(0x08f6,22);
  1824. packet(0x08f7,3);
  1825. packet(0x08f8,7);
  1826. packet(0x08f9,6);
  1827. packet(0x08fa,6);
  1828. parseable_packet(0x08fb,6,NULL,2);
  1829. parseable_packet(0x0907,5,clif_parse_MoveItem,2,4);
  1830. packet(0x0908,5);
  1831. parseable_packet(0x08D7,28,clif_parse_bg_queue_apply_request,2,4);
  1832. packet(0x08D8,27);
  1833. packet(0x08D9,30);
  1834. parseable_packet(0x08DA,26,clif_parse_bg_queue_cancel_request,2);
  1835. packet(0x08DB,27);
  1836. packet(0x08DC,26);
  1837. parseable_packet(0x08DD,27,clif_parse_dull,2,3);
  1838. packet(0x08DE,27);
  1839. packet(0x08DF,50);
  1840. parseable_packet(0x08E0,51,clif_parse_bg_queue_lobby_reply,2,3,27);
  1841. packet(0x08E1,51);
  1842. parseable_packet(0x090A,26,clif_parse_bg_queue_request_queue_number,2);
  1843. packet(0x090E,2);
  1844. packet(0x0977,14); //Monster HP Bar
  1845. parseable_packet(0x0916,26,clif_parse_GuildInvite2,2);
  1846. parseable_packet(0x091d,41,clif_parse_PartyBookingRegisterReq,2,4,6);
  1847. ack_packet(ZC_PERSONAL_INFOMATION,0x08cb,10,2,4,6,8,10,11,13,15); //Still need further information
  1848. // Merge Item
  1849. ack_packet(ZC_MERGE_ITEM_OPEN,0x096D,-1,2,4); // ZC_MERGE_ITEM_OPEN
  1850. parseable_packet(0x096E,-1,clif_parse_merge_item_req,2,4); // CZ_REQ_MERGE_ITEM
  1851. ack_packet(ZC_ACK_MERGE_ITEM,0x096F,7,2,4,6); // ZC_ACK_MERGE_ITEM
  1852. parseable_packet(0x0974,2,clif_parse_merge_item_cancel,0); // CZ_CANCEL_MERGE_ITEM
  1853. parseable_packet(0x0844,2,clif_parse_cashshop_open_request,0);
  1854. packet(0x0849,16); //clif_cashshop_result
  1855. parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
  1856. parseable_packet(0x084a,2,clif_parse_cashshop_close,0);
  1857. parseable_packet(0x08c9,2,clif_parse_cashshop_list_request,0);
  1858. #endif
  1859. // 2012-04-18aRagexeRE [Special Thanks to Judas!]
  1860. #if PACKETVER >= 20120418
  1861. parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
  1862. parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
  1863. parseable_packet(0x08A8,36,clif_parse_StoragePassword,2,4,20);
  1864. parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
  1865. parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
  1866. parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1867. parseable_packet(0x035F,6,clif_parse_TickSend,2);
  1868. parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
  1869. parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
  1870. parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
  1871. parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
  1872. parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
  1873. parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
  1874. parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
  1875. parseable_packet(0x08E5,41,clif_parse_PartyBookingRegisterReq,2,4,6); //Added to prevent disconnections
  1876. packet(0x08d2,10);
  1877. #endif
  1878. // 2012-06-18
  1879. #if PACKETVER >= 20120618
  1880. packet(0x0983,29); // ZC_MSG_STATE_CHANGE3
  1881. parseable_packet(0x0861,41,clif_parse_PartyBookingRegisterReq,2,4,6); //actually 12-05-03
  1882. #endif
  1883. // 2012-07-02aRagexeRE (unstable)
  1884. #if PACKETVER >= 20120702
  1885. parseable_packet(0x0363,19,clif_parse_WantToConnection,2,6,10,14,18);
  1886. parseable_packet(0x0364,6,clif_parse_TickSend,2);
  1887. parseable_packet(0x085a,7,clif_parse_ActionRequest,2,6);
  1888. parseable_packet(0x0861,8,clif_parse_MoveFromKafra,2,4);
  1889. parseable_packet(0x0862,10,clif_parse_UseSkillToId,2,4,6);
  1890. parseable_packet(0x0863,10,clif_parse_UseSkillToPos,2,4,6,8);
  1891. parseable_packet(0x0886,6,clif_parse_SolveCharName,2);
  1892. parseable_packet(0x0889,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1893. parseable_packet(0x089e,6,clif_parse_DropItem,2,4);
  1894. parseable_packet(0x089f,6,clif_parse_TakeItem,2);
  1895. parseable_packet(0x08a0,8,clif_parse_MoveToKafra,2,4);
  1896. parseable_packet(0x094a,6,clif_parse_GetCharNameRequest,2);
  1897. parseable_packet(0x0953,5,clif_parse_WalkToXY,2);
  1898. parseable_packet(0x0960,5,clif_parse_ChangeDir,2,4);
  1899. parseable_packet(0x0879,41,clif_parse_PartyBookingRegisterReq,2,4,6);
  1900. #endif
  1901. #if PACKETVER >= 20121212
  1902. packet(0x08C7,20);
  1903. #endif
  1904. // 2013-03-20Ragexe (Judas)
  1905. #if PACKETVER >= 20130320
  1906. parseable_packet(0x014f,6,clif_parse_GuildRequestInfo,2);
  1907. //parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1908. parseable_packet(0x035f,6,clif_parse_ReqClickBuyingStore,2);
  1909. parseable_packet(0x0363,6,clif_parse_TickSend,2);
  1910. parseable_packet(0x0365,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
  1911. parseable_packet(0x0438,6,clif_parse_DropItem,2,4);
  1912. parseable_packet(0x0447,2,clif_parse_blocking_playcancel,0); // CZ_BLOCKING_PLAY_CANCEL
  1913. parseable_packet(0x044A,6,clif_parse_client_version,2);
  1914. parseable_packet(0x0844,2,clif_parse_cashshop_open_request,0);
  1915. packet(0x0849,16); //clif_cashshop_result
  1916. parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
  1917. parseable_packet(0x084a,2,clif_parse_cashshop_close,0);
  1918. packet(0x084b,19); //fallitem4
  1919. parseable_packet(0x085a,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
  1920. parseable_packet(0x085d,18,clif_parse_PartyBookingRegisterReq,2,4,6);
  1921. parseable_packet(0x0868,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
  1922. parseable_packet(0x086d,26,clif_parse_PartyInvite2,2);
  1923. parseable_packet(0x086f,26,clif_parse_FriendsListAdd,2);
  1924. parseable_packet(0x0874,8,clif_parse_MoveFromKafra,2,4);
  1925. parseable_packet(0x0881,5,clif_parse_WalkToXY,2);
  1926. parseable_packet(0x0886,2,clif_parse_ReqCloseBuyingStore,0);
  1927. parseable_packet(0x0888,19,clif_parse_WantToConnection,2,6,10,14,18);
  1928. parseable_packet(0x088e,7,clif_parse_ActionRequest,2,6);
  1929. parseable_packet(0x0897,5,clif_parse_ChangeDir,2,4);
  1930. parseable_packet(0x0898,6,clif_parse_GetCharNameRequest,2);
  1931. parseable_packet(0x089b,10,clif_parse_UseSkillToId,2,4,6);
  1932. parseable_packet(0x08ac,8,clif_parse_MoveToKafra,2,4);
  1933. parseable_packet(0x08c9,2,clif_parse_cashshop_list_request,0);
  1934. packet(0x08cf,10); //Amulet spirits
  1935. packet(0x08d2,10);
  1936. parseable_packet(0x0907,5,clif_parse_MoveItem,2,4);
  1937. packet(0x0908,5);
  1938. parseable_packet(0x0922,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
  1939. //parseable_packet(0x092e,2,clif_parse_SearchStoreInfoNextPage,0);
  1940. parseable_packet(0x0933,6,clif_parse_TakeItem,2);
  1941. parseable_packet(0x0938,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
  1942. parseable_packet(0x093f,5,clif_parse_HomMenu,2,4);
  1943. parseable_packet(0x0947,36,clif_parse_StoragePassword,2,4,20);
  1944. parseable_packet(0x094c,6,clif_parse_SolveCharName,2);
  1945. parseable_packet(0x094e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
  1946. parseable_packet(0x0959,10,clif_parse_UseSkillToPos,2,4,6,8);
  1947. //parseable_packet(0x095a,8,clif_parse_Mail_setattach,2,4);
  1948. packet(0x0977,14); //Monster HP Bar
  1949. parseable_packet(0x0978,6,clif_parse_reqworldinfo,2);
  1950. packet(0x0979,50); //ackworldinfo
  1951. ack_packet(ZC_PERSONAL_INFOMATION,0x097b,16,2,4,8,12,16,17,21,25); //Still need further information
  1952. //ack_packet(ZC_PERSONAL_INFOMATION_CHN,0x0981,12,2,4,6,8,12,13,15,17,10); // Disabled until further information is found.
  1953. packet(0x0990,31); //additem
  1954. packet(0x0991,-1); //inv itemlist normal
  1955. packet(0x0992,-1); //inv itemlist equip
  1956. packet(0x0993,-1); //cart itemlist normal
  1957. packet(0x0994,-1); //cart itemlist equip
  1958. packet(0x0995,-1); //store itemlist normal
  1959. packet(0x0996,-1); //store itemlist equip
  1960. packet(0x0997,-1); //ZC_EQUIPWIN_MICROSCOPE_V5
  1961. parseable_packet(0x0998,8,clif_parse_EquipItem,2,4); // CZ_REQ_WEAR_EQUIP_V5
  1962. ack_packet(ZC_WEAR_EQUIP_ACK,0x0999,11,2,4,8,10); // cz_wear_equipv5
  1963. packet(0x099a,9); // take_off_equipv5
  1964. packet(0x099b,8); //maptypeproperty2
  1965. // New Packets
  1966. packet(0x08C8,34); // ZC_NOTIFY_ACT3
  1967. packet(0x08ff,24); // ZC_EFST_SET_ENTER
  1968. packet(0x0984,28); // ZC_EFST_SET_ENTER2
  1969. packet(0x099f,22); // ZC_SKILL_ENTRY4
  1970. #endif
  1971. // 2013-06-05Ragexe
  1972. #if PACKETVER >= 20130605
  1973. parseable_packet(0x097C,4,clif_parse_ranklist,2);
  1974. #endif
  1975. // 2013-07-10Ragexe
  1976. #if PACKETVER >= 20130710
  1977. parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
  1978. packet(0x097D,288); //ZC_ACK_RANKING
  1979. packet(0x097E,12); //ZC_UPDATE_RANKING_POINT
  1980. #endif
  1981. // 2013-07-17Ragexe
  1982. #if PACKETVER >= 20130717
  1983. ack_packet(ZC_BANKING_CHECK,0x09A6,12,2,10);
  1984. parseable_packet(0x09A7,10,clif_parse_BankDeposit,2,6);
  1985. ack_packet(ZC_ACK_BANKING_DEPOSIT,0x09A8,16,2,4,12);
  1986. parseable_packet(0x09A9,10,clif_parse_BankWithdraw,2,6);
  1987. ack_packet(ZC_ACK_BANKING_WITHDRAW,0x09AA,16,2,4,12);
  1988. parseable_packet(0x09AB,6,clif_parse_BankCheck,2);
  1989. parseable_packet(0x09B6,6,clif_parse_BankOpen,2);
  1990. ack_packet(ZC_ACK_OPEN_BANKING,0x09B7,4,2);
  1991. parseable_packet(0x09B8,6,clif_parse_BankClose,2);
  1992. ack_packet(ZC_ACK_CLOSE_BANKING,0x09B9,4,2);
  1993. #endif
  1994. // 2013-07-31cRagexe
  1995. #if PACKETVER >= 20130731
  1996. packet(0x09ca,23); // ZC_SKILL_ENTRY5
  1997. packet(0x09cb,17); // ZC_USE_SKILL2
  1998. #endif
  1999. // 2013-08-07Ragexe
  2000. #if PACKETVER >= 20130807
  2001. ack_packet(ZC_C_MARKERINFO,0x09C1,10,2,6,8);
  2002. // Merge Item
  2003. ack_packet(ZC_MERGE_ITEM_OPEN,0x096D,-1,2,4); // ZC_MERGE_ITEM_OPEN
  2004. parseable_packet(0x096E,-1,clif_parse_merge_item_req,2,4); // CZ_REQ_MERGE_ITEM
  2005. ack_packet(ZC_ACK_MERGE_ITEM,0x096F,7,2,4,6,7); // ZC_ACK_MERGE_ITEM
  2006. parseable_packet(0x0974,2,clif_parse_merge_item_cancel,0); // CZ_CANCEL_MERGE_ITEM
  2007. packet(0x9CD,8); // ZC_MSG_COLOR
  2008. #endif
  2009. // 2013-08-21bRagexe
  2010. #if PACKETVER >= 20130821
  2011. packet(0x09D1,14);
  2012. #endif
  2013. // 2013-12-23Ragexe
  2014. #if PACKETVER >= 20131223
  2015. //New Packets
  2016. parseable_packet(0x09CE,102,clif_parse_GM_Item_Monster,2);
  2017. parseable_packet(0x09D4,2,clif_parse_NPCShopClosed,0);
  2018. //NPC Market
  2019. packet(0x09D5,-1);
  2020. parseable_packet( HEADER_CZ_NPC_MARKET_PURCHASE, -1, clif_parse_NPCMarketPurchase, 0 );
  2021. packet(0x09D7,-1);
  2022. parseable_packet(0x09D8,2,clif_parse_NPCMarketClosed,0);
  2023. // Clan System
  2024. packet(0x0988,6);
  2025. packet(0x0989,2);
  2026. packet(0x098A,-1);
  2027. parseable_packet(0x098D,-1,clif_parse_clan_chat,2,4);
  2028. packet(0x098E,-1);
  2029. // Sale
  2030. parseable_packet( HEADER_CZ_REQ_CASH_BARGAIN_SALE_ITEM_INFO, -1, clif_parse_sale_search, 0 );
  2031. packet( HEADER_ZC_ACK_CASH_BARGAIN_SALE_ITEM_INFO, sizeof( PACKET_ZC_ACK_CASH_BARGAIN_SALE_ITEM_INFO ) );
  2032. parseable_packet( HEADER_CZ_REQ_APPLY_BARGAIN_SALE_ITEM, sizeof( PACKET_CZ_REQ_APPLY_BARGAIN_SALE_ITEM ), clif_parse_sale_add, 0 );
  2033. packet(0x09AF,4);
  2034. parseable_packet( HEADER_CZ_REQ_REMOVE_BARGAIN_SALE_ITEM, sizeof( PACKET_CZ_REQ_REMOVE_BARGAIN_SALE_ITEM ), clif_parse_sale_remove, 0 );
  2035. packet(0x09B1,4);
  2036. packet( HEADER_ZC_NOTIFY_BARGAIN_SALE_SELLING, sizeof( PACKET_ZC_NOTIFY_BARGAIN_SALE_SELLING ) );
  2037. packet( HEADER_ZC_NOTIFY_BARGAIN_SALE_CLOSE, sizeof( PACKET_ZC_NOTIFY_BARGAIN_SALE_CLOSE ) );
  2038. parseable_packet(0x09B4,6,clif_parse_sale_open,2);
  2039. parseable_packet(0x09BC,6,clif_parse_sale_close,2);
  2040. parseable_packet(0x09C3,8,clif_parse_sale_refresh,2,6);
  2041. packet( HEADER_ZC_ACK_COUNT_BARGAIN_SALE_ITEM, sizeof( PACKET_ZC_ACK_COUNT_BARGAIN_SALE_ITEM ) );
  2042. // New Packet
  2043. packet(0x097A,-1); // ZC_ALL_QUEST_LIST2
  2044. packet(0x09DB,-1); // ZC_NOTIFY_MOVEENTRY10
  2045. packet(0x09DC,-1); // ZC_NOTIFY_NEWENTRY10
  2046. packet(0x09DD,-1); // ZC_NOTIFY_STANDENTRY10
  2047. packet(0x09DF,7); // ZC_ACK_WHISPER02
  2048. #endif
  2049. // 2014-02-05bRagexeRE
  2050. #if PACKETVER >= 20140205
  2051. packet(0x09DA,-1);
  2052. #endif
  2053. // 2014-10-08Ragexe
  2054. #if PACKETVER >= 20141008
  2055. parseable_packet(0x9FB, -1, clif_parse_pet_evolution, 2, 4); // CZ_PET_EVOLUTION
  2056. packet(0x09FC, 6); // ZC_PET_EVOLUTION_RESULT
  2057. #endif
  2058. // 2014-10-16Ragexe
  2059. #if PACKETVER >= 20141016
  2060. packet(0x09DF,7);
  2061. // New packet
  2062. packet(0x0A00,269); // ZC_SHORTCUT_KEY_LIST_V3
  2063. parseable_packet(0x0A01,3,clif_parse_HotkeyRowShift,2); // CZ_SHORTCUTKEYBAR_ROTATE
  2064. packet(0x0A02,4); // ZC_DRESSROOM_OPEN
  2065. packet(0x0A0E,14); // ZC_BATTLEFIELD_NOTIFY_HP2
  2066. packet(0x09F7,75); // ZC_PROPERTY_HOMUN_2
  2067. packet(0x09E5,18); // ZC_DELETEITEM_FROM_MCSTORE2
  2068. packet(0x09E6,22); // ZC_UPDATE_ITEM_FROM_BUYING_STORE2
  2069. // Roulette System [Yommy]
  2070. parseable_packet(0x0A19,2,clif_parse_roulette_open,0); // CZ_REQ_OPEN_ROULETTE
  2071. packet(0x0A1A,23); // ZC_ACK_OPEN_ROULETTE
  2072. parseable_packet(0x0A1B,2,clif_parse_roulette_info,0); // CZ_REQ_ROULETTE_INFO
  2073. packet(0x0A1C,-1); // ZC_ACK_ROULETTE_INFO
  2074. parseable_packet(0x0A1D,2,clif_parse_roulette_close,0); // CZ_REQ_CLOSE_ROULETTE
  2075. packet(0x0A1E,3); // ZC_ACK_CLOSE_ROULETTE
  2076. parseable_packet(0x0A1F,2,clif_parse_roulette_generate,0); // CZ_REQ_GENERATE_ROULETTE
  2077. packet( roulettgenerateackType, sizeof( struct packet_roulette_generate_ack ) ); // ZC_ACK_GENERATE_ROULETTE
  2078. parseable_packet(0x0A21,3,clif_parse_roulette_item,2); // CZ_RECV_ROULETTE_ITEM
  2079. packet(0x0A22,5); // ZC_RECV_ROULETTE_ITEM
  2080. #endif
  2081. // 2014-10-22bRagexe
  2082. #if PACKETVER >= 20141022
  2083. packet(0x006d,149);
  2084. packet(0x08e3,149);
  2085. // New Packet
  2086. packet(0x0A18,14); // ZC_ACCEPT_ENTER3
  2087. packet(0x0A27,8);
  2088. packet(0x0A28,3); // ZC_ACK_OPENSTORE2
  2089. packet(0x09FD,-1); // ZC_NOTIFY_MOVEENTRY11
  2090. packet(0x09FE,-1); // ZC_NOTIFY_NEWENTRY11
  2091. packet(0x09FF,-1); // ZC_NOTIFY_STANDENTRY11
  2092. #endif
  2093. // 2015-02-25aRagexeRE
  2094. #if PACKETVER >= 20150225
  2095. packet(0x0A09,45); // ZC_ADD_EXCHANGE_ITEM3
  2096. packet(0x0A0C,56); // ZC_ITEM_PICKUP_ACK_V6
  2097. packet(0x0A0D,-1); // ZC_INVENTORY_ITEMLIST_EQUIP_V6
  2098. packet(0x0A0F,-1); // ZC_CART_ITEMLIST_EQUIP_V6
  2099. packet(0x0A10,-1); // ZC_STORE_ITEMLIST_EQUIP_V6
  2100. packet(0x0A2D,-1); // ZC_EQUIPWIN_MICROSCOPE_V6
  2101. #endif
  2102. // 2015-05-13aRagexe
  2103. #if PACKETVER >= 20150513
  2104. // New Packets
  2105. packet(0xA3B,-1); // ZC_HAT_EFFECT
  2106. // RODEX Mail system
  2107. packet(0x09E7,3); // ZC_NOTIFY_UNREADMAIL
  2108. parseable_packet(0x09E8,11,clif_parse_Mail_refreshinbox,2,3); // CZ_OPEN_MAILBOX
  2109. parseable_packet(0x09E9,2,clif_parse_dull,0); // CZ_CLOSE_MAILBOX
  2110. parseable_packet(0x09EA,11,clif_parse_Mail_read,2,3); // CZ_REQ_READ_MAIL
  2111. packet(0x09EB,-1); // ZC_ACK_READ_MAIL
  2112. parseable_packet(0x09EC,-1,clif_parse_Mail_send,2,4,28,52,60,62,64); // CZ_REQ_WRITE_MAIL
  2113. packet(0x09ED,3); // ZC_ACK_WRITE_MAIL
  2114. parseable_packet(0x09EE,11,clif_parse_Mail_refreshinbox,2,3); // CZ_REQ_NEXT_MAIL_LIST
  2115. parseable_packet(0x09EF,11,clif_parse_Mail_refreshinbox,2,3); // CZ_REQ_REFRESH_MAIL_LIST
  2116. packet(0x09F0,-1); // ZC_ACK_MAIL_LIST
  2117. parseable_packet(0x09F1,11,clif_parse_Mail_getattach,0); // CZ_REQ_ZENY_FROM_MAIL
  2118. packet(0x09F2,12); // ZC_ACK_ZENY_FROM_MAIL
  2119. parseable_packet(0x09F3,11,clif_parse_Mail_getattach,0); // CZ_REQ_ITEM_FROM_MAIL
  2120. packet(0x09F4,12); // ZC_ACK_ITEM_FROM_MAIL
  2121. parseable_packet(0x09F5,11,clif_parse_Mail_delete,0); // CZ_REQ_DELETE_MAIL
  2122. packet(0x09F6,11); // ZC_ACK_DELETE_MAIL
  2123. parseable_packet(0x0A03,2,clif_parse_Mail_cancelwrite,0); // CZ_REQ_CANCEL_WRITE_MAIL
  2124. parseable_packet(0x0A04,6,clif_parse_Mail_setattach,2,4); // CZ_REQ_ADD_ITEM_TO_MAIL
  2125. packet(0x0A05,53); // ZC_ACK_ADD_ITEM_TO_MAIL
  2126. parseable_packet(0x0A06,6,clif_parse_Mail_winopen,2,4); // CZ_REQ_REMOVE_ITEM_MAIL
  2127. packet(0x0A07,9); // ZC_ACK_REMOVE_ITEM_MAIL
  2128. parseable_packet(0x0A08,26,clif_parse_Mail_beginwrite,0); // CZ_REQ_OPEN_WRITE_MAIL
  2129. packet(0x0A12,27); // ZC_ACK_OPEN_WRITE_MAIL
  2130. parseable_packet(0x0A13,26,clif_parse_Mail_Receiver_Check,2); // CZ_CHECK_RECEIVE_CHARACTER_NAME
  2131. packet(0x0A14,10); // ZC_CHECK_RECEIVE_CHARACTER_NAME
  2132. packet(0x0A32,2); // ZC_OPEN_RODEX_THROUGH_NPC_ONLY
  2133. // OneClick Itemidentify
  2134. parseable_packet(0x0A35,4,clif_parse_Oneclick_Itemidentify,2); // CZ_REQ_ONECLICK_ITEMIDENTIFY
  2135. // Achievement System
  2136. packet(0x0A23,-1); // ZC_ALL_ACH_LIST
  2137. packet(0x0A24,66); // ZC_ACH_UPDATE
  2138. parseable_packet(0x0A25,6,clif_parse_AchievementCheckReward,0); // CZ_REQ_ACH_REWARD
  2139. packet(0x0A26,7); // ZC_REQ_ACH_REWARD_ACK
  2140. // Title System
  2141. parseable_packet(0x0A2E,6,clif_parse_change_title,0); // CZ_REQ_CHANGE_TITLE
  2142. packet(0x0A2F,7); // ZC_ACK_CHANGE_TITLE
  2143. // Quest UI
  2144. packet(0x08FE,-1); // ZC_HUNTING_QUEST_INFO
  2145. packet(0x09F8,-1); // ZC_ALL_QUEST_LIST3
  2146. packet(0x09F9,143); // ZC_ADD_QUEST_EX
  2147. packet(0x09FA,-1); // ZC_UPDATE_MISSION_HUNT_EX
  2148. #endif
  2149. // 2015-05-20aRagexe
  2150. #if PACKETVER >= 20150520
  2151. parseable_packet( HEADER_CZ_REQ_APPLY_BARGAIN_SALE_ITEM2, sizeof( PACKET_CZ_REQ_APPLY_BARGAIN_SALE_ITEM ), clif_parse_sale_add, 0 );
  2152. #endif
  2153. // 2015-09-16Ragexe
  2154. #if PACKETVER >= 20150916
  2155. // New Packet
  2156. packet(0x097F,-1); // ZC_SELECTCART
  2157. parseable_packet(0x0980,7,clif_parse_SelectCart,2,6); // CZ_SELECTCART
  2158. #endif
  2159. // 2016-03-02bRagexe
  2160. #if PACKETVER >= 20160302
  2161. packet(0x0A51,34);
  2162. #endif
  2163. // 2016-03-30aRagexe
  2164. #if PACKETVER >= 20160330
  2165. parseable_packet(0x0A6E,-1,clif_parse_Mail_send,2,4,28,52,60,62,64,68); // CZ_REQ_WRITE_MAIL2
  2166. #endif
  2167. // 2016-05-25aRagexeRE
  2168. #if PACKETVER >= 20160525
  2169. parseable_packet(0x0A77,15,clif_parse_camerainfo,0);
  2170. packet(0x0A78, 15);
  2171. #endif
  2172. // 2016-06-01aRagexe
  2173. #if PACKETVER >= 20160601
  2174. packet(0x0A7D,-1);
  2175. #endif
  2176. // 2016-06-22aRagexeRE
  2177. #if PACKETVER >= 20160622
  2178. packet(0x0A84,94);
  2179. #endif
  2180. // 2016-09-21bRagexeRE
  2181. #if PACKETVER >= 20160921
  2182. packet(0x0A37,59);
  2183. #endif
  2184. // 2016-10-26bRagexeRE
  2185. #if PACKETVER >= 20161026
  2186. packet(0x0AA5,-1);
  2187. #endif
  2188. // 2017-02-08bRagexeRE
  2189. #if PACKETVER >= 20170208
  2190. parseable_packet(0x0A97,8,clif_parse_equipswitch_add,2,4);
  2191. packet(0x0A98,12);
  2192. parseable_packet(0x0A99,8,clif_parse_equipswitch_remove,2,4,6);
  2193. packet(0x0A9A,10);
  2194. packet(0x0A9B,-1);
  2195. parseable_packet(0x0A9C,2,clif_parse_equipswitch_request,0);
  2196. packet(0x0A9D,4);
  2197. #endif
  2198. // 2017-03-15cRagexeRE
  2199. #if PACKETVER >= 20170315
  2200. packet(0xac7,156);
  2201. #endif
  2202. // 2017-04-19bRagexeRE
  2203. #if PACKETVER >= 20170419
  2204. parseable_packet(0x0AC0,26,clif_parse_Mail_refreshinbox,2,10);
  2205. parseable_packet(0x0AC1,26,clif_parse_Mail_refreshinbox,2,10);
  2206. #endif
  2207. // 2017-05-02dRagexeRE
  2208. #if PACKETVER >= 20170502
  2209. packet(0x0A43,85);
  2210. packet(0x0A44,-1);
  2211. packet(0x0AB2,7);
  2212. packet(0x0ABD,10);
  2213. packet(0x0A98,10);
  2214. parseable_packet(0x0A99,4,clif_parse_equipswitch_remove,2,4);
  2215. parseable_packet(0x0ACE,4,clif_parse_equipswitch_request_single,0);
  2216. #endif
  2217. // 2017-08-30bRagexeRE
  2218. #if PACKETVER >= 20170830
  2219. packet(0x0ACB,12);
  2220. packet(0x0ACC,18);
  2221. #endif
  2222. // 2017-10-25eRagexeRE
  2223. #if PACKETVER >= 20171025
  2224. packet(0x0ADE,6);
  2225. #endif
  2226. // 2018-01-03aRagexeRE or 2018-01-03bRagexeRE
  2227. #if PACKETVER >= 20180103
  2228. parseable_packet(0x0ae8,2,clif_parse_changedress,0);
  2229. #endif
  2230. // 2018-02-07bRagexeRE
  2231. #if PACKETVER >= 20180207
  2232. parseable_packet(0x0AF4,11,clif_parse_UseSkillToPos,2,4,6,8,10);
  2233. #endif
  2234. // 2018-02-21aRagexeRE or 2018-02-21bRagexeRE
  2235. #if PACKETVER >= 20180221
  2236. packet(0x0206,35); // ZC_FRIENDS_STATE
  2237. packet(0x0af7,32);
  2238. #endif
  2239. // 2018-03-07bRagexeRE
  2240. #if PACKETVER >= 20180307
  2241. parseable_packet(0x0A68,3,clif_parse_open_ui,2);
  2242. packet(0x0AE2,7);
  2243. parseable_packet(0x0AEF,2,clif_parse_attendance_request,0);
  2244. packet(0x0AF0,10);
  2245. #endif
  2246. // 2018-03-21aRagexeRE
  2247. #if PACKETVER >= 20180321
  2248. parseable_packet( 0x0A49, sizeof( struct PACKET_CZ_PRIVATE_AIRSHIP_REQUEST ), clif_parse_private_airship_request, 0 );
  2249. packet(0x0A4A,6);
  2250. packet(0x0A4B,22);
  2251. packet(0x0A4C,28);
  2252. #endif
  2253. // 2018-04-18bRagexeRE
  2254. #if PACKETVER >= 20180418
  2255. packet(0x0ADD, 22);
  2256. #endif
  2257. #if PACKETVER_MAIN_NUM >= 20181002 || PACKETVER_RE_NUM >= 20181002 || PACKETVER_ZERO_NUM >= 20181010
  2258. parseable_packet( 0x0B10, sizeof( struct PACKET_CZ_START_USE_SKILL ), clif_parse_StartUseSkillToId, 0 );
  2259. parseable_packet( 0x0B11, sizeof( struct PACKET_CZ_STOP_USE_SKILL ), clif_parse_StopUseSkillToId, 0 );
  2260. #endif
  2261. #if PACKETVER_MAIN_NUM >= 20181031 || PACKETVER_RE_NUM >= 20181031 || PACKETVER_ZERO_NUM >= 20181114
  2262. parseable_packet( 0x0B14, sizeof( struct PACKET_CZ_INVENTORY_EXPAND ), clif_parse_dull, 0 );
  2263. parseable_packet( 0x0B16, sizeof( struct PACKET_CZ_INVENTORY_EXPAND_CONFIRMED ), clif_parse_dull, 0 );
  2264. parseable_packet( 0x0B19, sizeof( struct PACKET_CZ_INVENTORY_EXPAND_REJECTED ), clif_parse_dull, 0 );
  2265. #endif
  2266. #if PACKETVER_MAIN_NUM >= 20190227 || PACKETVER_RE_NUM >= 20190220 || PACKETVER_ZERO_NUM >= 20190220
  2267. parseable_packet( 0x0B1C, sizeof( struct PACKET_CZ_PING ), clif_parse_dull, 0 );
  2268. #endif
  2269. #if PACKETVER >= 20190724
  2270. parseable_packet(HEADER_CZ_GUILD_EMBLEM_CHANGE2, sizeof( PACKET_CZ_GUILD_EMBLEM_CHANGE2 ), clif_parse_GuildChangeEmblem2, 0 );
  2271. packet(HEADER_ZC_CHANGE_GUILD, sizeof(PACKET_ZC_CHANGE_GUILD));
  2272. #endif
  2273. #if PACKETVER_MAIN_NUM >= 20190522 || PACKETVER_RE_NUM >= 20190508 || PACKETVER_ZERO_NUM >= 20190605
  2274. parseable_packet( 0x0B21, sizeof( struct PACKET_CZ_SHORTCUT_KEY_CHANGE2 ), clif_parse_Hotkey, 0 );
  2275. parseable_packet( 0x0B22, sizeof( struct PACKET_CZ_SHORTCUTKEYBAR_ROTATE2 ), clif_parse_HotkeyRowShift, 0 );
  2276. #endif
  2277. #if PACKETVER_MAIN_NUM >= 20190703 || PACKETVER_RE_NUM >= 20190703 || PACKETVER_ZERO_NUM >= 20190709
  2278. parseable_packet( HEADER_CZ_REQ_MOUNTOFF, sizeof( PACKET_CZ_REQ_MOUNTOFF ), clif_parse_RemoveOption, 0 );
  2279. #endif
  2280. #if PACKETVER >= 20190724
  2281. parseable_packet( 0x0b4c, 2, clif_parse_dull, 0 );
  2282. #endif
  2283. #if PACKETVER >= 20191224
  2284. parseable_packet( HEADER_CZ_SE_CASHSHOP_OPEN2, sizeof( struct PACKET_CZ_SE_CASHSHOP_OPEN2 ), clif_parse_cashshop_open_request, 0 );
  2285. #endif
  2286. #endif /* CLIF_PACKETDB_HPP */