Explorar el Código

Overhauled and dropped packet db (#2263)

Adds support for a lot of missing clients and features almost all clients from 2016 and 2017
clientinfo.xml's version value will be ignored from now on
By setting PACKETVER the server will configure everything else on it's own from now on
Dropped is_clientver script command
And a lot more
Lemongrass3110 hace 7 años
padre
commit
f0ab8d2a52

+ 0 - 2
.travis.yml

@@ -34,7 +34,6 @@ script:
   - ./configure $CONFIGURE_FLAGS
   - make clean
   - make server
-  - 'echo packet_db_ver: $PACKETDBVER >> db/import/packet_db.txt'
   - ./map-server --run-once
 
 env:
@@ -44,7 +43,6 @@ env:
     - DB_NAME="ragnarok"
     - DB_USER="ragnarok"
     - DB_PASS="ragnarok"
-    - PACKETDBVER=45
   matrix:
     - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
     - CONFIGURE_FLAGS="--enable-prere=yes --enable-vip=no --enable-buildbot=yes"

+ 0 - 52
conf/battle/client.conf

@@ -9,58 +9,6 @@
 //         assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary)
 //--------------------------------------------------------------
 
-// Set here which client version do you accept. Add all values of clients:
-// Clients older than accepted versions, and versions not set to 'accepted'
-// here will be rejected when logging in
-// 0x00000001: Clients older than 2004-09-06aSakray (packet versions 5-9)
-// 0x00000002: 2004-09-06	aSakexe		(version 10)
-// 0x00000004: 2004-09-20	aSakexe		(version 11)
-// 0x00000008: 2004-10-05	aSakexe		(version 12)
-// 0x00000010: 2004-10-25	aSakexe		(version 13)
-// 0x00000020: 2004-11-29	aSakexe		(version 14)
-// 0x00000040: 2005-01-10	bSakexe		(version 15)
-// 0x00000080: 2005-05-09	aSakexe		(version 16)
-// 0x00000100: 2005-06-28	aSakexe		(version 17)
-// 0x00000200: 2005-07-18	aSakexe		(version 18)
-// 0x00000400: 2005-07-19	bSakexe		(version 19)
-// 0x00000800: 2006-03-27	aSakexe		(version 20)
-// 0x00001000: 2007-01-08	aSakexe		(version 21)
-// 0x00002000: 2007-02-12	aSakexe		(version 22)
-// 0x00004000: 2008-09-10	aSakexe		(version 23)
-// 0x00008000: 2008-08-27	aRagexeRE	(version 24)
-// 0x00010000: 2008-09-10	aRagexeRE	(version 25)
-// 0x00020000: 2010-11-24	aRagexeRE	(version 26)
-// 0x00040000: 2011-10-05	aRagexeRE	(version 27)
-// 0x00080000: 2011-11-02	aRagexe		(version 28)
-// 0x00100000: 2012-03-07	fRagexeRE	(version 29)
-// 0x00200000: 2012-04-10	aRagexeRE	(version 30)
-// 0x00400000: 2012-04-18	aRagexeRE	(version 31)
-// 0x00800000: 2012-06-18	unknow 		(version 32)
-// 0x01000000: 2012-07-02	aRagexeRE	(version 33)
-// 0x02000000: 2013-03-20	Ragexe		(version 34)
-// 0x04000000: 2013-05-15	aRagexe		(version 35)
-// 0x08000000: 2013-05-22	Ragexe		(version 36)
-// 0x10000000: 2013-05-29	Ragexe		(version 37)
-// 0x20000000: 2013-06-05	Ragexe		(version 38)
-// 0x40000000: 2013-06-12	Ragexe		(version 39)
-// default value: 0x7FFFFFFF			(all clients/versions [5;39])
-packet_ver_flag: 0x7FFFFFFF
-
-// 0x00000001: 2013-06-18	Ragexe		(version 40)
-// 0x00000002: 2013-06-26	Ragexe		(version 41)
-// 0x00000004: 2013-07-03	Ragexe		(version 42)
-// 0x00000008: 2013-07-10	Ragexe		(version 43)
-// 0x00000010: 2013-07-17	Ragexe		(version 44)
-// 0x00000020: 2013-08-07	Ragexe		(version 45)
-// 0x00000040: 2013-12-23	Ragexe		(version 46)
-// 0x00000080: ????
-// 0x00000100: ????
-// 0x00000200: ????
-// 0x00000400: 2014-10-16	Ragexe		(version 50)
-// 0x00000800: 2014-10-22	Ragexe		(version 51)
-// default value: 0x7FFFFFFF			(all clients/versions [41;72])
-packet_ver_flag2: 0x7FFFFFFF
-
 // Minimum delay between whisper/global/party/guild messages (in ms)
 // Messages that break this threshold are silently omitted. 
 min_chat_delay: 0

+ 0 - 1
conf/help.txt

@@ -310,7 +310,6 @@ reloaditemdb: "Reload item database."
 reloadmobdb: "Reload monster database."
 reloadmotd: "Reload Message of the Day."
 reloadmsgconf: "Reload message configuration."
-reloadpacketdb: "Reload packet database."
 reloadpcdb: "Reload player settings."
 reloadquestdb: "Reload quest database."
 reloadscript: "Reload all scripts."

+ 0 - 6
conf/login_athena.conf

@@ -106,12 +106,6 @@ vip_char_increase: -1
 // 0 or more: new accounts automatically expire after the given value, in seconds
 start_limited_time: -1
 
-// Check the clientversion field set in clientinfo.xml?
-check_client_version: no
-
-// What version is allowed to connect? (if the option above is enabled)
-client_version_to_connect: 20
-
 // Store passwords as MD5 hashes instead of plain text?
 // NOTE: Will not work with clients that use <passwordencrypt>
 use_MD5_passwords: no

+ 1 - 2
conf/msg_conf/map_msg.conf

@@ -1615,8 +1615,7 @@
 1475: ---- My Channels ----
 1476: You have not joined any channels.
 
-// @reloadpacketdb
-1477: Packet database has been reloaded.
+//1477 free
 
 // @partysharelvl
 1478: Party share level range has been changed successfully.

+ 1 - 2
conf/msg_conf/map_msg_chn.conf

@@ -1469,8 +1469,7 @@
 1475: ---- 我的頻道 ----
 1476: 你沒有加入任何的頻道
 
-// @reloadpacketdb
-1477: 完成重載封包數據庫.
+//1477 free
 
 // @partysharelvl
 1478: 隊伍經驗均分的等級間距已成功變更。

+ 1 - 2
conf/msg_conf/map_msg_frn.conf

@@ -1480,8 +1480,7 @@
 1475: ---- Canaux rejoins ----
 1476: Vous n'avez rejoins aucun canal.
 
-// @reloadpacketdb
-1477: Base de donnée des 'Packets' rechargée.
+//1477 free
 
 // @partysharelvl
 1478: Différence de niveau pour le partage en équipe changé.

+ 1 - 2
conf/msg_conf/map_msg_idn.conf

@@ -1571,8 +1571,7 @@
 1475: ---- Channel yang diikuti ----
 1476: Kamu tidak bergabung ke channel manapun saat ini.
 
-// @reloadpacketdb
-1477: Database paket telah dimuat ulang.
+//1477 free
 
 // @partysharelvl
 1478: Jarak level dalam party share telah diubah dengan sukses.

+ 1 - 2
conf/msg_conf/map_msg_rus.conf

@@ -1480,8 +1480,7 @@
 1475: ---- Мои каналы ----
 1476: Вы не присоединились ни к одному каналу.
 
-// @reloadpacketdb
-1477: База данных пакетов была перезагружена.
+//1477 free
 
 // @partysharelvl
 1478: Диапазон уровней разделения опыта между участниками группы успешно изменен.

+ 1 - 2
conf/msg_conf/map_msg_tha.conf

@@ -1473,8 +1473,7 @@
 1475: ---- Channels ·�ט©�¹���ט ----
 1476: ¤�³ה�טה´י���טד¹ channels ד´א��.
 
-// @reloadpacketdb
-1477: °�¹¢י���� Packet ה´י¶��ג��´ד��טא���÷�י��.
+//1477 free
 
 // @partysharelvl
 1478: ��´�÷ Level �����÷���ב×�ל ה´י¶��»��÷א»��ט�¹א���÷�י��ב�י�.

+ 0 - 35
db/import-tmpl/packet_db.txt

@@ -1,35 +0,0 @@
-// Client<->Map Packet Database
-//
-// Structure of Database:
-// PacketType,PacketLength[,Name,FieldIndex1:FieldIndex2:FieldIndex3:...]
-//
-// 01. PacketType       ID of the packet.
-// 02. PacketLength     Length of the packet. If 0, packet is disabled in current packet version. If -1, packet has variable size.
-// 03. Name             Name of the packet parser function (optional, for incoming packets only).
-// 04. FieldIndex       Specifies the offset of a packet field in bytes from the begin of the packet (only specified when Name is given).
-//                      Can be 0, when the layout is not known.
-// ...
-//
-// NOTE: Up to MAX_PACKET_POS (typically 20) field indexes may be used.
-//
-// The packet database allows you to add support for new clients,
-// because packets change every release.
-//
-// Note: Every packet version needs a wanttoconnection specification, since
-// that is the packet used to identify a client's version.
-// If multiple versions have the same connection packet, the higher version
-// will be used (unless the lower one is specified as the default)
-//
-// Incoming packets have their parser function and layout specified, which enables
-// them for the current and all higher versions, unless explicitely disabled.
-//
-// Outgoing packets must be specified in order to enable them for the current
-// and all higher versions, unless explicitely disabled. Packets that are not
-// enabled for a packet version are silently discarded when sent as multicast.
-//
-// Every packet version inherits packet definitions from the previous (lower)
-// packet version.
-//
-// Main packet version of the DB to use (default = max available version)
-// Client detection is faster when all clients use this version.
-// Version 23 is the latest Sakexe (above versions are for Renewal clients)

+ 0 - 2675
db/packet_db.txt

@@ -1,2675 +0,0 @@
-// Client<->Map Packet Database
-//
-// Structure of Database:
-// PacketType,PacketLength[,Name,FieldIndex1:FieldIndex2:FieldIndex3:...]
-//
-// 01. PacketType       ID of the packet.
-// 02. PacketLength     Length of the packet. If 0, packet is disabled in current packet version. If -1, packet has variable size.
-// 03. Name             Name of the packet parser function (optional, for incoming packets only).
-// 04. FieldIndex       Specifies the offset of a packet field in bytes from the begin of the packet (only specified when Name is given).
-//                      Can be 0, when the layout is not known.
-// ...
-//
-// NOTE: Up to MAX_PACKET_POS (typically 20) field indexes may be used.
-//
-// The packet database allows you to add support for new clients,
-// because packets change every release.
-//
-// Note: Every packet version needs a wanttoconnection specification, since
-// that is the packet used to identify a client's version.
-// If multiple versions have the same connection packet, the higher version
-// will be used (unless the lower one is specified as the default)
-//
-// Incoming packets have their parser function and layout specified, which enables
-// them for the current and all higher versions, unless explicitely disabled.
-//
-// Outgoing packets must be specified in order to enable them for the current
-// and all higher versions, unless explicitely disabled. Packets that are not
-// enabled for a packet version are silently discarded when sent as multicast.
-//
-// Every packet version inherits packet definitions from the previous (lower)
-// packet version.
-//
-// Main packet version of the DB to use (default = max available version)
-// Client detection is faster when all clients use this version.
-// Version 23 is the latest Sakexe (above versions are for Renewal clients)
-//
-// packet_keys values are default value for each packet version, if no value
-// or value is 'default' in packet_keys_use, server will uses default keys
-// according to used packet_db_ver. packet_keys_use is user-defined keys.
-// Maximum key value is 0x7FFFFFFF.
-// NOTE: Keys won't be reloaded, initialized on first load only.
-//
-//packet_db_ver: 46
-packet_db_ver: default
-packet_keys_use: default
-
-packet_ver: 5
-0x0064,55
-0x0065,17
-0x0066,6
-0x0067,37
-0x0068,46
-0x0069,-1
-0x006a,23
-0x006b,-1
-0x006c,3
-0x006d,108
-0x006e,3
-0x006f,2
-0x0070,6
-0x0071,28
-0x0072,19,wanttoconnection,2:6:10:14:18
-0x0073,11
-0x0074,3
-0x0075,-1
-0x0076,9
-0x0077,5
-0x0078,54
-0x0079,53
-0x007a,58
-0x007b,60
-0x007c,41
-0x007d,2,loadendack,0
-0x007e,6,ticksend,2
-0x007f,6
-0x0080,7
-0x0081,3
-0x0082,2
-0x0083,2
-0x0084,2
-0x0085,5,walktoxy,2
-0x0086,16
-0x0087,12
-0x0088,10
-0x0089,7,actionrequest,2:6
-0x008a,29
-0x008b,2
-0x008c,-1,globalmessage,2:4
-0x008d,-1
-0x008e,-1
-//0x008f,-1
-0x0090,7,npcclicked,2:6
-0x0091,22
-0x0092,28
-0x0093,2
-0x0094,6,getcharnamerequest,2
-0x0095,30
-0x0096,-1,wis,2:4:28
-0x0097,-1
-0x0098,3
-0x0099,-1,broadcast,2:4
-0x009a,-1
-0x009b,5,changedir,2:4
-0x009c,9
-0x009d,17
-0x009e,17
-0x009f,6,takeitem,2
-0x00a0,23
-0x00a1,6
-0x00a2,6,dropitem,2:4
-0x00a3,-1
-0x00a4,-1
-0x00a5,-1
-0x00a6,-1
-0x00a7,8,useitem,2:4
-0x00a8,7
-0x00a9,6,equipitem,2:4
-0x00aa,7,ZC_WEAR_EQUIP_ACK,2:4:6
-0x00ab,4,unequipitem,2
-0x00ac,7
-//0x00ad,-1
-0x00ae,-1
-0x00af,6
-0x00b0,8
-0x00b1,8
-0x00b2,3,restart,2
-0x00b3,3
-0x00b4,-1
-0x00b5,6
-0x00b6,6
-0x00b7,-1
-0x00b8,7,npcselectmenu,2:6
-0x00b9,6,npcnextclicked,2
-0x00ba,2
-0x00bb,5,statusup,2:4
-0x00bc,6
-0x00bd,44
-0x00be,5
-0x00bf,3,emotion,2
-0x00c0,7
-0x00c1,2,howmanyconnections,0
-0x00c2,6
-0x00c3,8
-0x00c4,6
-0x00c5,7,npcbuysellselected,2:6
-0x00c6,-1
-0x00c7,-1
-0x00c8,-1,npcbuylistsend,2:4
-0x00c9,-1,npcselllistsend,2:4
-0x00ca,3
-0x00cb,3
-0x00cc,6,gmkick,2
-0x00cd,3
-0x00ce,2,killall,0
-0x00cf,27,wisexin,2:26
-0x00d0,3,wisall,2
-0x00d1,4
-0x00d2,4
-0x00d3,2,wisexlist,0
-0x00d4,-1
-0x00d5,-1,createchatroom,2:4:6:7:15
-0x00d6,3
-0x00d7,-1
-0x00d8,6
-0x00d9,14,chataddmember,2:6
-0x00da,3
-0x00db,-1
-0x00dc,28
-0x00dd,29
-0x00de,-1,chatroomstatuschange,2:4:6:7:15
-0x00df,-1
-0x00e0,30,changechatowner,2:6
-0x00e1,30
-0x00e2,26,kickfromchat,2
-0x00e3,2,chatleave,0
-0x00e4,6,traderequest,2
-0x00e5,26
-0x00e6,3,tradeack,2
-0x00e7,3
-0x00e8,8,tradeadditem,2:4
-0x00e9,19
-0x00ea,5
-0x00eb,2,tradeok,0
-0x00ec,3
-0x00ed,2,tradecancel,0
-0x00ee,2
-0x00ef,2,tradecommit,0
-0x00f0,3
-0x00f1,2
-0x00f2,6
-0x00f3,8,movetokafra,2:4
-0x00f4,21
-0x00f5,8,movefromkafra,2:4
-0x00f6,8
-0x00f7,2,closekafra,0
-0x00f8,2
-0x00f9,26,createparty,2
-0x00fa,3
-0x00fb,-1
-0x00fc,6,partyinvite,2
-0x00fd,27
-0x00fe,30
-0x00ff,10,replypartyinvite,2:6
-0x0100,2,leaveparty,0
-0x0101,6
-0x0102,6,partychangeoption,2
-0x0103,30,removepartymember,2:6
-0x0104,79
-0x0105,31
-0x0106,10
-0x0107,10
-0x0108,-1,partymessage,2:4
-0x0109,-1
-0x010a,4
-0x010b,6
-0x010c,6
-0x010d,2
-0x010e,11
-0x010f,-1
-0x0110,10
-0x0111,39
-0x0112,4,skillup,2
-0x0113,10,useskilltoid,2:4:6
-0x0114,31
-0x0115,35
-0x0116,10,useskilltopos,2:4:6:8
-0x0117,18
-0x0118,2,stopattack,0
-0x0119,13
-0x011a,15
-0x011b,20,useskillmap,2:4
-0x011c,68
-0x011d,2,requestmemo,0
-0x011e,3
-0x011f,16
-0x0120,6
-0x0121,14
-0x0122,-1
-0x0123,-1
-0x0124,21
-0x0125,8
-0x0126,8,putitemtocart,2:4
-0x0127,8,getitemfromcart,2:4
-0x0128,8,movefromkafratocart,2:4
-0x0129,8,movetokafrafromcart,2:4
-0x012a,2,removeoption,0
-0x012b,2
-0x012c,3
-0x012d,4
-0x012e,2,closevending,0
-0x012f,-1,openvending,2:4:0:84
-0x0130,6,vendinglistreq,2
-0x0131,86
-0x0132,6
-0x0133,-1
-0x0134,-1,purchasereq,2:4:8
-0x0135,7
-0x0136,-1
-0x0137,6
-0x0138,3
-0x0139,16
-0x013a,4
-0x013b,4
-0x013c,4
-0x013d,6
-0x013e,24
-0x013f,26,itemmonster,2
-0x0140,22,mapmove,2:18:20
-0x0141,14
-0x0142,6
-0x0143,10,npcamountinput,2:6
-0x0144,23
-0x0145,19
-0x0146,6,npccloseclicked,2
-0x0147,39
-0x0148,8
-0x0149,9,gmreqnochat,2:6:7
-0x014a,6
-0x014b,27
-0x014c,-1
-0x014d,2,guildcheckmaster,0
-0x014e,6
-0x014f,6,guildrequestinfo,2
-0x0150,110
-0x0151,6,guildrequestemblem,2
-0x0152,-1
-0x0153,-1,guildchangeemblem,2:4
-0x0154,-1
-0x0155,-1,guildchangememberposition,2:4
-0x0156,-1
-0x0157,6
-0x0158,-1
-0x0159,54,guildleave,2:6:10:14
-0x015a,66
-0x015b,54,guildexpulsion,2:6:10:14
-0x015c,90
-0x015d,42,guildbreak,2
-0x015e,6
-0x015f,42
-0x0160,-1
-0x0161,-1,guildchangepositioninfo,2:4
-0x0162,-1
-0x0163,-1
-0x0164,-1
-0x0165,30,createguild,2:6
-0x0166,-1
-0x0167,3
-0x0168,14,guildinvite,2:6:10
-0x0169,3
-0x016a,30
-0x016b,10,guildreplyinvite,2:6
-0x016c,43
-0x016d,14
-0x016e,186,guildchangenotice,2:6:66
-0x016f,182
-0x0170,14,guildrequestalliance,2:6:10
-0x0171,30
-0x0172,10,guildreplyalliance,2:6
-0x0173,3
-0x0174,-1
-0x0175,6
-0x0176,106
-0x0177,-1
-0x0178,4,itemidentify,2
-0x0179,5
-0x017a,4,usecard,2
-0x017b,-1
-0x017c,6,insertcard,2:4
-0x017d,7
-0x017e,-1,guildmessage,2:4
-0x017f,-1
-0x0180,6,guildopposition,2
-0x0181,3
-0x0182,106
-0x0183,10,guilddelalliance,2:6
-0x0184,10
-0x0185,34
-//0x0186,-1
-0x0187,6
-0x0188,8
-0x0189,4
-0x018a,4,quitgame,2
-0x018b,4
-0x018c,29
-0x018d,-1
-0x018e,10,producemix,2:4:6:8
-0x018f,6
-0x0190,90,useskilltoposinfo,2:4:6:8:10
-0x0191,86
-0x0192,24
-0x0193,6,solvecharname,2
-0x0194,30
-0x0195,102
-0x0196,9
-0x0197,4,resetchar,2
-0x0198,8,changemaptype,2:4:6
-0x0199,4
-0x019a,14
-0x019b,10
-0x019c,-1,localbroadcast,2:4
-0x019d,6,gmhide,2
-0x019e,2
-0x019f,6,catchpet,2
-0x01a0,3
-0x01a1,3,petmenu,2
-0x01a2,35
-0x01a3,5
-0x01a4,11
-0x01a5,26,changepetname,2
-0x01a6,-1
-0x01a7,4,selectegg,2
-0x01a8,4
-0x01a9,6,sendemotion,2
-0x01aa,10
-0x01ab,12
-0x01ac,6
-0x01ad,-1
-0x01ae,4,selectarrow,2
-0x01af,4,changecart,2
-0x01b0,11
-0x01b1,7
-0x01b2,-1,openvending,2:4:84:85
-0x01b3,67
-0x01b4,12
-0x01b5,18
-0x01b6,114
-0x01b7,6
-0x01b8,3
-0x01b9,6
-0x01ba,26,remove,2
-0x01bb,26,shift,2
-0x01bc,26,recall,2
-0x01bd,26,summon,2
-0x01be,2
-0x01bf,3
-0x01c0,2
-0x01c1,14
-0x01c2,10
-0x01c3,-1
-0x01c4,22
-0x01c5,22
-0x01c6,4
-0x01c7,2
-0x01c8,13
-0x01c9,97
-//0x01ca,-1
-0x01cb,9
-0x01cc,9
-0x01cd,30
-0x01ce,6,autospell,2
-0x01cf,28
-0x01d0,8
-0x01d1,14
-0x01d2,10
-0x01d3,35
-0x01d4,6
-0x01d5,-1,npcstringinput,2:4:8
-0x01d6,4
-0x01d7,11
-0x01d8,54
-0x01d9,53
-0x01da,60
-0x01db,2
-0x01dc,-1
-0x01dd,47
-0x01de,33
-0x01df,6,gmreqaccname,2
-0x01e0,30
-0x01e1,8
-0x01e2,34
-0x01e3,14
-0x01e4,2
-0x01e5,6
-0x01e6,26
-0x01e7,2,sndoridori,0
-0x01e8,28,createparty2,2:26:27
-0x01e9,81
-0x01ea,6
-0x01eb,10
-0x01ec,26
-0x01ed,2,snexplosionspirits,0
-0x01ee,-1
-0x01ef,-1
-0x01f0,-1
-0x01f1,-1
-0x01f2,20
-0x01f3,10
-0x01f4,32
-0x01f5,9
-0x01f6,34
-0x01f7,14,adoptreply,2:6:10
-0x01f8,2
-0x01f9,6,adoptrequest,2
-0x01fa,48
-0x01fb,56
-0x01fc,-1
-0x01fd,4,repairitem,2
-0x01fe,5
-0x01ff,10
-0x0200,26
-0x0201,-1
-0x0202,26,friendslistadd,2
-0x0203,10,friendslistremove,2:6
-0x0204,18
-0x0205,26
-0x0206,11
-0x0207,34
-0x0208,11,friendslistreply,2:6:10
-0x0209,36
-0x020a,10
-//0x020b,-1
-//0x020c,-1
-0x020d,-1
-0x8b3,-1
-0x8d6,6,ZC_CLEAR_DIALOG,2
-
-//2004-07-05aSakexe
-packet_ver: 6
-0x0072,22,wanttoconnection,5:9:13:17:21
-0x0085,8,walktoxy,5
-0x00a7,13,useitem,5:9
-0x0113,15,useskilltoid,4:9:11
-0x0116,15,useskilltopos,4:9:11:13
-0x0190,95,useskilltoposinfo,4:9:11:13:15
-0x0208,14,friendslistreply,2:6:10
-0x020e,24
-
-//2004-07-13aSakexe
-packet_ver: 7
-0x0072,39,wanttoconnection,12:22:30:34:38
-0x0085,9,walktoxy,6
-0x009b,13,changedir,5:12
-0x009f,10,takeitem,6
-0x00a7,17,useitem,6:13
-0x0113,19,useskilltoid,7:9:15
-0x0116,19,useskilltopos,7:9:15:17
-0x0190,99,useskilltoposinfo,7:9:15:17:19
-
-//2004-07-26aSakexe
-packet_ver: 8
-0x0072,14,dropitem,5:12
-0x007e,33,wanttoconnection,12:18:24:28:32
-0x0085,20,useskilltoid,7:12:16
-0x0089,15,getcharnamerequest,11
-0x008c,23,useskilltopos,3:6:17:21
-0x0094,10,takeitem,6
-0x009b,6,walktoxy,3
-0x009f,13,changedir,5:12
-0x00a2,103,useskilltoposinfo,3:6:17:21:23
-0x00a7,12,solvecharname,8
-0x00f3,-1,globalmessage,2:4
-0x00f5,17,useitem,6:12
-0x00f7,10,ticksend,6
-0x0113,16,movetokafra,5:12
-0x0116,2,closekafra,0
-0x0190,26,movefromkafra,10:22
-0x0193,9,actionrequest,3:8
-
-//2004-08-09aSakexe
-packet_ver: 9
-0x0072,17,dropitem,8:15
-0x007e,37,wanttoconnection,9:21:28:32:36
-0x0085,26,useskilltoid,11:18:22
-0x0089,12,getcharnamerequest,8
-0x008c,40,useskilltopos,5:15:29:38
-0x0094,13,takeitem,9
-0x009b,15,walktoxy,12
-0x009f,12,changedir,7:11
-0x00a2,120,useskilltoposinfo,5:15:29:38:40
-0x00a7,11,solvecharname,7
-0x00f5,24,useitem,9:20
-0x00f7,13,ticksend,9
-0x0113,23,movetokafra,5:19
-0x0190,26,movefromkafra,11:22
-0x0193,18,actionrequest,7:17
-
-//2004-08-16aSakexe
-0x0212,26,rc,2
-0x0213,26,check,2
-0x0214,42
-
-//2004-08-17aSakexe
-0x020f,10,pvpinfo,2:6
-0x0210,22
-
-//2004-09-06aSakexe
-packet_ver: 10
-0x0072,20,useitem,9:20
-0x007e,19,movetokafra,3:15
-0x0085,23,actionrequest,9:22
-0x0089,9,walktoxy,6
-0x008c,105,useskilltoposinfo,10:14:18:23:25
-0x0094,17,dropitem,6:15
-0x009b,14,getcharnamerequest,10
-0x009f,-1,globalmessage,2:4
-0x00a2,14,solvecharname,10
-0x00a7,25,useskilltopos,10:14:18:23
-0x00f3,10,changedir,4:9
-0x00f5,34,wanttoconnection,7:15:25:29:33
-0x00f7,2,closekafra,0
-0x0113,11,takeitem,7
-0x0116,11,ticksend,7
-0x0190,22,useskilltoid,9:15:18
-0x0193,17,movefromkafra,3:13
-
-//2004-09-20aSakexe
-packet_ver: 11
-0x0072,18,useitem,10:14
-0x007e,25,movetokafra,6:21
-0x0085,9,actionrequest,3:8
-0x0089,14,walktoxy,11
-0x008c,109,useskilltoposinfo,16:20:23:27:29
-0x0094,19,dropitem,12:17
-0x009b,10,getcharnamerequest,6
-0x00a2,10,solvecharname,6
-0x00a7,29,useskilltopos,6:20:23:27
-0x00f3,18,changedir,8:17
-0x00f5,32,wanttoconnection,10:17:23:27:31
-0x0113,14,takeitem,10
-0x0116,14,ticksend,10
-0x0190,14,useskilltoid,4:7:10
-0x0193,12,movefromkafra,4:8
-
-//2004-10-05aSakexe
-packet_ver: 12
-0x0072,17,useitem,6:13
-0x007e,16,movetokafra,5:12
-0x0089,6,walktoxy,3
-0x008c,103,useskilltoposinfo,2:6:17:21:23
-0x0094,14,dropitem,5:12
-0x009b,15,getcharnamerequest,11
-0x00a2,12,solvecharname,8
-0x00a7,23,useskilltopos,3:6:17:21
-0x00f3,13,changedir,5:12
-0x00f5,33,wanttoconnection,12:18:24:28:32
-0x0113,10,takeitem,6
-0x0116,10,ticksend,6
-0x0190,20,useskilltoid,7:12:16
-0x0193,26,movefromkafra,10:22
-
-//2004-10-25aSakexe
-packet_ver: 13
-0x0072,13,useitem,5:9
-0x007e,13,movetokafra,6:9
-0x0085,15,actionrequest,4:14
-0x008c,108,useskilltoposinfo,6:9:23:26:28
-0x0094,12,dropitem,6:10
-0x009b,10,getcharnamerequest,6
-0x00a2,16,solvecharname,12
-0x00a7,28,useskilltopos,6:9:23:26
-0x00f3,15,changedir,6:14
-0x00f5,29,wanttoconnection,5:14:20:24:28
-0x0113,9,takeitem,5
-0x0116,9,ticksend,5
-0x0190,26,useskilltoid,4:10:22
-0x0193,22,movefromkafra,12:18
-
-//2004-11-01aSakexe
-0x0084,-1
-0x0215,6
-
-//2004-11-08aSakexe
-0x0084,2
-0x0216,6
-0x0217,2,blacksmith,0
-0x0218,2,alchemist,0
-0x0219,282
-0x021a,282
-0x021b,10
-0x021c,10
-
-//2004-11-15aSakexe
-0x021d,6,lesseffect,2
-
-//2004-11-29aSakexe
-packet_ver: 14
-0x0072,22,useskilltoid,8:12:18
-0x007e,30,useskilltopos,4:9:22:28
-0x0085,-1,globalmessage,2:4
-0x0089,7,ticksend,3
-0x008c,13,getcharnamerequest,9
-0x0094,14,movetokafra,4:10
-0x009b,2,closekafra,0
-0x009f,18,actionrequest,6:17
-0x00a2,7,takeitem,3
-0x00a7,7,walktoxy,4
-0x00f3,8,changedir,3:7
-0x00f5,29,wanttoconnection,3:10:20:24:28
-0x00f7,14,solvecharname,10
-0x0113,110,useskilltoposinfo,4:9:22:28:30
-0x0116,12,dropitem,4:10
-0x0190,15,useitem,3:11
-0x0193,21,movefromkafra,4:17
-0x0221,-1
-0x0222,6,weaponrefine,2
-0x0223,8
-
-//2004-12-13aSakexe
-//skipped: many packets being set to -1
-0x0066,3
-0x0070,3
-0x01ca,3
-0x021e,6
-0x021f,66
-0x0220,10
-
-//2005-01-10bSakexe
-packet_ver: 15
-0x0072,26,useskilltoid,8:16:22
-0x007e,114,useskilltoposinfo,10:18:22:32:34
-0x0085,23,changedir,12:22
-0x0089,9,ticksend,5
-0x008c,8,getcharnamerequest,4
-0x0094,20,movetokafra,10:16
-0x009b,32,wanttoconnection,3:12:23:27:31
-0x009f,17,useitem,5:13
-0x00a2,11,solvecharname,7
-0x00a7,13,walktoxy,10
-0x00f3,-1,globalmessage,2:4
-0x00f5,9,takeitem,5
-0x00f7,21,movefromkafra,11:17
-0x0113,34,useskilltopos,10:18:22:32
-0x0116,20,dropitem,15:18
-0x0190,20,actionrequest,9:19
-0x0193,2,closekafra,0
-
-//2005-03-28aSakexe
-0x0224,10
-0x0225,2,taekwon,0
-0x0226,282
-
-//2005-04-04aSakexe
-0x0227,18
-0x0228,18
-
-//2005-04-11aSakexe
-0x0229,15
-0x022a,58
-0x022b,57
-0x022c,64
-
-//2005-04-25aSakexe
-0x022d,5,hommenu,2:4
-0x0232,9,hommoveto,2:6
-0x0233,11,homattack,2:6:10
-0x0234,6,hommovetomaster,2
-
-//2005-05-09aSakexe
-packet_ver: 16
-0x0072,25,useskilltoid,6:10:21
-0x007e,102,useskilltoposinfo,5:9:12:20:22
-0x0085,11,changedir,7:10
-0x0089,8,ticksend,4
-0x008c,11,getcharnamerequest,7
-0x0094,14,movetokafra,7:10
-0x009b,26,wanttoconnection,4:9:17:21:25
-0x009f,14,useitem,4:10
-0x00a2,15,solvecharname,11
-0x00a7,8,walktoxy,5
-0x00f5,8,takeitem,4
-0x00f7,22,movefromkafra,14:18
-0x0113,22,useskilltopos,5:9:12:20
-0x0116,10,dropitem,5:8
-0x0190,19,actionrequest,5:18
-
-//2005-05-23aSakexe
-0x022e,69
-0x0230,12
-
-//2005-05-30aSakexe
-0x022e,71
-0x0235,-1
-0x0236,10
-0x0237,2,rankingpk,0
-0x0238,282
-
-//2005-05-31aSakexe
-0x0216,2
-0x0239,11
-
-//2005-06-08aSakexe
-0x0216,6
-0x0217,2,blacksmith,0
-0x022f,5
-0x0231,26,changehomunculusname,2
-0x023a,4
-0x023b,36,storagepassword,2:4:20
-0x023c,6
-
-//2005-06-22aSakexe
-0x022e,71
-
-//2005-06-28aSakexe
-packet_ver: 17
-0x0072,34,useskilltoid,6:17:30
-0x007e,113,useskilltoposinfo,12:15:18:31:33
-0x0085,17,changedir,8:16
-0x0089,13,ticksend,9
-0x008c,8,getcharnamerequest,4
-0x0094,31,movetokafra,16:27
-0x009b,32,wanttoconnection,9:15:23:27:31
-0x009f,19,useitem,9:15
-0x00a2,9,solvecharname,5
-0x00a7,11,walktoxy,8
-0x00f5,13,takeitem,9
-0x00f7,18,movefromkafra,11:14
-0x0113,33,useskilltopos,12:15:18:31
-0x0116,12,dropitem,3:10
-0x0190,24,actionrequest,11:23
-0x0216,-1
-0x023d,-1
-0x023e,4
-
-//2005-07-18aSakexe
-packet_ver: 18
-0x0072,19,useskilltoid,5:11:15
-0x007e,110,useskilltoposinfo,9:15:23:28:30
-0x0085,11,changedir,6:10
-0x0089,7,ticksend,3
-0x008c,11,getcharnamerequest,7
-0x0094,21,movetokafra,12:17
-0x009b,31,wanttoconnection,3:13:22:26:30
-0x009f,12,useitem,3:8
-0x00a2,18,solvecharname,14
-0x00a7,15,walktoxy,12
-0x00f5,7,takeitem,3
-0x00f7,13,movefromkafra,5:9
-0x0113,30,useskilltopos,9:15:23:28
-0x0116,12,dropitem,6:10
-0x0190,21,actionrequest,5:20
-0x0216,6
-0x023f,2,mailrefresh,0
-0x0240,8
-0x0241,6,mailread,2
-0x0242,-1
-0x0243,6,maildelete,2
-0x0244,6,mailgetattach,2
-0x0245,7
-0x0246,4,mailwinopen,2
-0x0247,8,mailsetattach,2:4
-0x0248,68
-0x0249,3
-0x024a,70
-0x024b,4,auctioncancelreg,2
-0x024c,8,auctionsetitem,2:4
-0x024d,14
-0x024e,6,auctioncancel,2
-0x024f,10,auctionbid,2:6
-0x0250,3
-0x0251,2
-0x0252,-1
-
-//2005-07-19bSakexe
-packet_ver: 19
-0x0072,34,useskilltoid,6:17:30
-0x007e,113,useskilltoposinfo,12:15:18:31:33
-0x0085,17,changedir,8:16
-0x0089,13,ticksend,9
-0x008c,8,getcharnamerequest,4
-0x0094,31,movetokafra,16:27
-0x009b,32,wanttoconnection,9:15:23:27:31
-0x009f,19,useitem,9:15
-0x00a2,9,solvecharname,5
-0x00a7,11,walktoxy,8
-0x00f5,13,takeitem,9
-0x00f7,18,movefromkafra,11:14
-0x0113,33,useskilltopos,12:15:18:31
-0x0116,12,dropitem,3:10
-0x0190,24,actionrequest,11:23
-
-//2005-08-01aSakexe
-0x0245,3
-0x0251,4
-
-//2005-08-08aSakexe
-0x024d,12,auctionregister,2:6:10
-0x024e,4
-
-//2005-08-17aSakexe
-0x0253,3
-0x0254,3,feelsaveok,2
-
-//2005-08-29aSakexe
-0x0240,-1
-0x0248,-1,mailsend,2:4:28:68:69
-0x0255,5
-0x0256,-1
-0x0257,8
-
-//2005-09-12bSakexe
-0x0256,5
-0x0258,2
-0x0259,3
-
-//2005-10-10aSakexe
-0x020e,32
-0x025a,-1
-0x025b,6,cooking,2:4
-
-//2005-10-13aSakexe
-0x007a,6
-0x0251,32
-0x025c,4,auctionbuysell,2
-
-//2005-10-17aSakexe
-0x007a,58
-0x025d,6,auctionclose,2
-0x025e,4
-
-//2005-10-24aSakexe
-0x025f,6
-0x0260,6
-
-//2005-11-07aSakexe
-0x024e,6,auctioncancel,2
-0x0251,34,auctionsearch,2:4:8:32
-
-//2006-01-09aSakexe
-0x0261,11
-0x0262,11
-0x0263,11
-0x0264,20
-0x0265,20
-0x0266,30
-0x0267,4
-0x0268,4
-0x0269,4
-0x026a,4
-0x026b,4
-0x026c,4
-0x026d,4
-0x026f,2
-0x0270,2
-0x0271,38
-0x0272,44
-
-//2006-01-26aSakexe
-0x0271,40
-
-//2006-03-06aSakexe
-0x0273,6
-0x0274,8
-
-//2006-03-13aSakexe
-0x0273,30,mailreturn,2:6
-
-//2006-03-27aSakexe
-packet_ver: 20
-0x0072,26,useskilltoid,11:18:22
-0x007e,120,useskilltoposinfo,5:15:29:38:40
-0x0085,12,changedir,7:11
-//0x0089,13,ticksend,9
-0x008c,12,getcharnamerequest,8
-0x0094,23,movetokafra,5:19
-0x009b,37,wanttoconnection,9:21:28:32:36
-0x009f,24,useitem,9:20
-0x00a2,11,solvecharname,7
-0x00a7,15,walktoxy,12
-0x00f5,13,takeitem,9
-0x00f7,26,movefromkafra,11:22
-0x0113,40,useskilltopos,5:15:29:38
-0x0116,17,dropitem,8:15
-0x0190,18,actionrequest,7:17
-
-//2006-10-23aSakexe
-0x006d,110
-
-//2006-04-24aSakexe to 2007-01-02aSakexe
-0x023e,8
-0x0277,84
-0x0278,2
-0x0279,2
-0x027a,-1
-0x027b,14
-0x027c,60
-0x027d,62
-0x027e,-1
-0x027f,8
-0x0280,12
-0x0281,4
-0x0282,284
-0x0283,6
-0x0284,14
-0x0285,6
-0x0286,4
-0x0287,-1
-0x0288,6
-0x0289,8
-0x028a,18
-0x028b,-1
-0x028c,46
-0x028d,34
-0x028e,4
-0x028f,6
-0x0290,4
-0x0291,4
-0x0292,2,autorevive,0
-0x0293,70
-0x0294,10
-0x0295,-1
-0x0296,-1
-0x0297,-1
-0x0298,8
-0x0299,6
-0x029a,27
-0x029c,66
-0x029d,-1
-0x029e,11
-0x029f,3,mermenu,2
-0x02a0,-1
-0x02a1,-1
-0x02a2,8
-
-//2007-01-08aSakexe
-packet_ver: 21
-0x0072,30,useskilltoid,10:14:26
-0x007e,120,useskilltoposinfo,10:19:23:38:40
-0x0085,14,changedir,10:13
-0x0089,11,ticksend,7
-0x008c,17,getcharnamerequest,13
-0x0094,17,movetokafra,4:13
-0x009b,35,wanttoconnection,7:21:26:30:34
-0x009f,21,useitem,7:17
-0x00a2,10,solvecharname,6
-0x00a7,8,walktoxy,5
-0x00f5,11,takeitem,7
-0x00f7,15,movefromkafra,3:11
-0x0113,40,useskilltopos,10:19:23:38
-0x0116,19,dropitem,11:17
-0x0190,10,actionrequest,4:9
-
-//2007-01-22aSakexe
-0x02a3,18
-0x02a4,2
-
-//2007-01-29aSakexe
-0x029b,72
-0x02a3,-1
-0x02a4,-1
-0x02a5,8
-
-// 2007-02-05aSakexe
-0x02aa,4
-0x02ab,36
-0x02ac,6
-
-//2007-02-12aSakexe
-packet_ver: 22
-0x0072,25,useskilltoid,6:10:21
-0x007e,102,useskilltoposinfo,5:9:12:20:22
-0x0085,11,changedir,7:10
-0x0089,8,ticksend,4
-0x008c,11,getcharnamerequest,7
-0x0094,14,movetokafra,7:10
-0x009b,26,wanttoconnection,4:9:17:21:25
-0x009f,14,useitem,4:10
-0x00a2,15,solvecharname,11
-//0x00a7,8,walktoxy,5
-0x00f5,8,takeitem,4
-0x00f7,22,movefromkafra,14:18
-0x0113,22,useskilltopos,5:9:12:20
-0x0116,10,dropitem,5:8
-0x0190,19,actionrequest,5:18
-
-//2007-05-07aSakexe
-0x01fd,15,repairitem,2:4:6:7:9:11:13
-
-//2007-02-27aSakexe to 2007-10-02aSakexe
-0x0288,10,cashshopbuy,2:4:6
-0x0289,12
-0x02a6,22
-0x02a7,22
-0x02a8,162
-0x02a9,58
-0x02ad,8
-0x02b0,85
-0x02b1,-1
-0x02b2,-1
-0x02b3,107
-0x02b4,6
-0x02b5,-1
-0x02b6,7,queststate,2:6
-0x02b7,7
-0x02b8,22
-0x02b9,191
-0x02ba,11,hotkey,2:4:5:9
-0x02bb,8
-0x02bc,6
-0x02bf,10
-0x02c0,2
-0x02c1,-1
-0x02c2,-1
-0x02c4,26,partyinvite2,2
-0x02c5,30
-0x02c6,30
-0x02c7,7,replypartyinvite2,2:6
-0x02c8,3,partytick,2
-0x02c9,3
-0x02ca,3
-0x02cb,20
-0x02cc,4
-0x02cd,26
-0x02ce,10
-0x02cf,6
-0x02d0,-1
-0x02d1,-1
-0x02d2,-1
-0x02d3,4,ZC_NOTIFY_BIND_ON_EQUIP,2
-0x02d4,29
-0x02d5,2
-0x02d6,6,viewplayerequip,2
-0x02d7,-1
-0x02d8,10,equiptickbox,2:6
-0x02d9,10
-0x02da,3
-0x02db,-1,battlechat,2:4
-0x02dc,-1
-0x02dd,32
-0x02de,6
-0x02df,36
-0x02e0,34
-
-//2007-10-23aSakexe
-0x02cb,65
-0x02cd,71
-
-//2007-11-06aSakexe
-0x0078,55
-0x007c,42
-0x022c,65
-0x029b,80
-
-//2007-11-13aSakexe
-0x02e1,33
-
-//2007-11-20aSakexe
-//0x01df,10 <- ???
-0x02e2,14
-0x02e3,25
-0x02e4,8
-0x02e5,8
-0x02e6,6
-
-//2007-11-27aSakexe
-0x02e7,-1
-
-//2008-01-02aSakexe
-0x01df,6,gmreqaccname,2
-0x02e8,-1
-0x02e9,-1
-0x02ea,-1
-0x02eb,13
-0x02ec,67
-0x02ed,59
-0x02ee,60
-0x02ef,8
-
-//2008-03-18aSakexe
-0x02bf,-1
-0x02c0,-1
-0x02f0,10
-0x02f1,2,progressbar,0
-0x02f2,2
-
-//2008-03-25bSakexe
-0x02f3,-1
-0x02f4,-1
-0x02f5,-1
-0x02f6,-1
-0x02f7,-1
-0x02f8,-1
-0x02f9,-1
-0x02fa,-1
-0x02fb,-1
-0x02fc,-1
-0x02fd,-1
-0x02fe,-1
-0x02ff,-1
-0x0300,-1
-
-//2008-04-01aSakexe
-0x0301,-1
-0x0302,-1
-0x0303,-1
-0x0304,-1
-0x0305,-1
-0x0306,-1
-0x0307,-1
-0x0308,-1
-0x0309,-1
-0x030a,-1
-0x030b,-1
-0x030c,-1
-0x030d,-1
-0x030e,-1
-0x030f,-1
-0x0310,-1
-0x0311,-1
-0x0312,-1
-0x0313,-1
-0x0314,-1
-0x0315,-1
-0x0316,-1
-0x0317,-1
-0x0318,-1
-0x0319,-1
-0x031a,-1
-0x031b,-1
-0x031c,-1
-0x031d,-1
-0x031e,-1
-0x031f,-1
-0x0320,-1
-0x0321,-1
-0x0322,-1
-0x0323,-1
-0x0324,-1
-0x0325,-1
-0x0326,-1
-0x0327,-1
-0x0328,-1
-0x0329,-1
-0x032a,-1
-0x032b,-1
-0x032c,-1
-0x032d,-1
-0x032e,-1
-0x032f,-1
-0x0330,-1
-0x0331,-1
-0x0332,-1
-0x0333,-1
-0x0334,-1
-0x0335,-1
-0x0336,-1
-0x0337,-1
-0x0338,-1
-0x0339,-1
-0x033a,-1
-0x033b,-1
-0x033c,-1
-0x033d,-1
-0x033e,-1
-0x033f,-1
-0x0340,-1
-0x0341,-1
-0x0342,-1
-0x0343,-1
-0x0344,-1
-0x0345,-1
-0x0346,-1
-0x0347,-1
-0x0348,-1
-0x0349,-1
-0x034a,-1
-0x034b,-1
-0x034c,-1
-0x034d,-1
-0x034e,-1
-0x034f,-1
-0x0350,-1
-0x0351,-1
-0x0352,-1
-0x0353,-1
-0x0354,-1
-0x0355,-1
-0x0356,-1
-0x0357,-1
-0x0358,-1
-0x0359,-1
-0x035a,-1
-
-//2008-05-27aSakexe
-0x035b,-1
-0x035c,2
-0x035d,-1
-0x035e,2
-0x035f,-1
-0x0389,-1
-
-//2008-08-20aSakexe
-0x040c,-1
-0x040d,-1
-0x040e,-1
-0x040f,-1
-0x0410,-1
-0x0411,-1
-0x0412,-1
-0x0413,-1
-0x0414,-1
-0x0415,-1
-0x0416,-1
-0x0417,-1
-0x0418,-1
-0x0419,-1
-0x041a,-1
-0x041b,-1
-0x041c,-1
-0x041d,-1
-0x041e,-1
-0x041f,-1
-0x0420,-1
-0x0421,-1
-0x0422,-1
-0x0423,-1
-0x0424,-1
-0x0425,-1
-0x0426,-1
-0x0427,-1
-0x0428,-1
-0x0429,-1
-0x042a,-1
-0x042b,-1
-0x042c,-1
-0x042d,-1
-0x042e,-1
-0x042f,-1
-0x0430,-1
-0x0431,-1
-0x0432,-1
-0x0433,-1
-0x0434,-1
-0x0435,-1
-
-//2008-09-10aSakexe
-packet_ver: 23
-0x0436,19,wanttoconnection,2:6:10:14:18
-0x0437,7,actionrequest,2:6
-0x0438,10,useskilltoid,2:4:6
-0x0439,8,useitem,2:4
-
-//2008-11-13aSakexe
-0x043d,8
-0x043e,-1
-0x043f,8
-
-//2008-11-26aSakexe
-0x01a2,37
-0x0440,10
-0x0441,4
-
-//2008-12-10aSakexe
-0x0442,-1
-0x0443,8,skillselectmenu,2:6
-
-//2009-01-14aSakexe
-0x043f,25
-0x0444,-1
-0x0445,10
-
-//2009-02-18aSakexe
-0x0446,14
-
-//2009-02-25aSakexe
-0x0448,-1
-
-//2009-03-30aSakexe
-0x0449,4
-
-//2009-04-08aSakexe
-0x02a6,-1
-0x02a7,-1
-0x044a,6,clientversion,2
-
-//Renewal Clients
-//2008-08-27aRagexeRE
-packet_ver: 24
-0x0072,22,useskilltoid,9:15:18
-0x007c,44
-0x007e,105,useskilltoposinfo,10:14:18:23:25
-0x0085,10,changedir,4:9
-0x0089,11,ticksend,7
-0x008c,14,getcharnamerequest,10
-0x0094,19,movetokafra,3:15
-0x009b,34,wanttoconnection,7:15:25:29:33
-0x009f,20,useitem,7:20
-0x00a2,14,solvecharname,10
-0x00a7,9,walktoxy,6
-0x00f5,11,takeitem,7
-0x00f7,17,movefromkafra,3:13
-0x0113,25,useskilltopos,10:14:18:23
-0x0116,17,dropitem,6:15
-0x0190,23,actionrequest,9:22
-0x02e2,20
-0x02e3,22
-0x02e4,11
-0x02e5,9
-
-//2008-09-10aRagexeRE
-packet_ver: 25
-0x0436,19,wanttoconnection,2:6:10:14:18
-0x0437,7,actionrequest,2:6
-0x0438,10,useskilltoid,2:4:6
-0x0439,8,useitem,2:4
-
-//2008-11-12aRagexeRE
-0x043d,8
-//0x043e,-1
-0x043f,8
-
-//2008-12-17aRagexeRE
-0x01a2,37
-//0x0440,10
-//0x0441,4
-//0x0442,8
-//0x0443,8
-
-//2008-12-17bRagexeRE
-0x006d,114
-
-//2009-01-21aRagexeRE
-0x043f,25
-//0x0444,-1
-//0x0445,10
-
-//2009-02-18aRagexeRE
-//0x0446,14
-
-//2009-02-26cRagexeRE
-//0x0448,-1
-
-//2009-04-01aRagexeRE
-//0x0449,4
-
-//2009-05-14aRagexeRE
-//0x044b,2
-
-//2009-05-20aRagexeRE
-//0x07d0,6
-//0x07d1,2
-//0x07d2,-1
-//0x07d3,4
-//0x07d4,4
-//0x07d5,4
-//0x07d6,4
-//0x0447,2
-
-//2009-06-03aRagexeRE
-0x07d7,8,partychangeoption,2:6:7
-0x07d8,8
-0x07d9,254
-0x07da,6,partychangeleader,2
-
-//2009-06-10aRagexeRE
-//0x07db,8
-
-//2009-06-17aRagexeRE
-0x07d9,268
-//0x07dc,6
-//0x07dd,54
-//0x07de,30
-//0x07df,54
-
-//2009-07-01aRagexeRE
-//0x0275,37
-//0x0276,-1
-
-//2009-07-08aRagexeRE
-//0x07e0,58
-
-//2009-07-15aRagexeRE
-0x07e1,15
-
-//2009-08-05aRagexeRE
-0x07e2,8
-
-//2009-08-18aRagexeRE
-0x07e3,6
-0x07e4,-1,itemlistwindowselected,2:4:8:12
-0x07e6,8
-
-//2009-08-25aRagexeRE
-//0x07e6,28
-0x07e7,5
-
-//2009-09-22aRagexeRE
-0x07e5,8
-0x07e6,8
-0x07e7,32
-0x07e8,-1
-0x07e9,5
-
-//2009-09-29aRagexeRE
-//0x07ea,2
-//0x07eb,-1
-//0x07ec,6
-//0x07ed,8
-//0x07ee,6
-//0x07ef,8
-//0x07f0,4
-//0x07f2,4
-//0x07f3,3
-
-//2009-10-06aRagexeRE
-//0x07ec,8
-//0x07ed,10
-//0x07f0,8
-//0x07f1,15
-//0x07f2,6
-//0x07f3,4
-//0x07f4,3
-
-//2009-10-27aRagexeRE
-0x07f5,6,gmfullstrip,2
-0x07f6,14
-
-//2009-11-03aRagexeRE
-0x07f7,-1
-0x07f8,-1
-0x07f9,-1
-
-//2009-11-17aRagexeRE
-0x07fa,8
-
-//2009-11-24aRagexeRE
-0x07fb,25
-
-//2009-12-01aRagexeRE
-0x07fc,10
-0x07fd,-1,ZC_BROADCASTING_SPECIAL_ITEM_OBTAIN,0
-0x07fe,26
-//0x07ff,-1
-
-//2009-12-15aRagexeRE
-0x0800,-1
-//0x0801,-1
-
-//2009-12-22aRagexeRE
-0x0802,18,bookingregreq,2:4:6		// Booking System
-0x0803,4
-0x0804,8		// Booking System
-0x0805,-1
-0x0806,4,bookingdelreq,2		// Booking System
-//0x0807,2
-0x0808,4		// Booking System
-//0x0809,14
-//0x080A,50
-//0x080B,18
-//0x080C,6
-
-//2009-12-29aRagexeRE
-0x0804,14,bookingsearchreq,2:4:6:8:12		// Booking System
-0x0806,2,bookingdelreq,0		// Booking System
-0x0807,4
-0x0808,14,bookingupdatereq,2		// Booking System
-0x0809,50
-0x080A,18
-0x080B,6		// Booking System
-
-//2010-01-05aRagexeRE
-0x0801,-1,purchasereq2,2:4:8:12
-
-//2010-01-26aRagexeRE
-//0x080C,2
-//0x080D,3
-0x080E,14
-
-//2010-02-09aRagexeRE
-//0x07F0,6
-
-//2010-02-23aRagexeRE
-0x080F,20
-
-//2010-03-03aRagexeRE
-0x0810,3
-0x0811,-1,reqopenbuyingstore,2:4:8:9:89
-//0x0812,86
-//0x0813,6
-//0x0814,6
-//0x0815,-1
-//0x0817,-1
-//0x0818,6
-//0x0819,4
-
-//2010-03-09aRagexeRE
-0x0813,-1
-//0x0814,2
-//0x0815,6
-0x0816,6
-0x0818,-1
-//0x0819,10
-//0x081A,4
-//0x081B,4
-//0x081C,6
-0x081d,22
-0x081e,8
-
-//2010-03-23aRagexeRE
-//0x081F,-1
-
-//2010-04-06aRagexeRE
-//0x081A,6
-
-//2010-04-13aRagexeRE
-//0x081A,10
-0x0820,11
-//0x0821,2
-//0x0822,9
-//0x0823,-1
-
-//2010-04-14dRagexeRE
-//0x081B,8
-
-//2010-04-20aRagexeRE
-0x0812,8
-0x0814,86
-0x0815,2,reqclosebuyingstore,0
-0x0817,6,reqclickbuyingstore,2
-0x0819,-1,reqtradebuyingstore,2:4:8:12
-0x081a,4
-0x081b,10
-0x081c,10
-0x0824,6
-
-//2010-06-01aRagexeRE
-//0x0825,-1
-//0x0826,4
-0x0835,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0836,-1
-0x0837,3
-//0x0838,3
-
-//2010-06-08aRagexeRE
-0x0838,2,searchstoreinfonextpage,0
-0x083A,4 	// Search Stalls Feature
-0x083B,2,closesearchstoreinfo,0
-0x083C,12,searchstoreinfolistitemclick,2:6:10
-0x083D,6
-
-//2010-06-15aRagexeRE
-//0x083E,26
-
-//2010-06-22aRagexeRE
-//0x083F,22
-
-//2010-06-29aRagexeRE
-0x00AA,9,ZC_WEAR_EQUIP_ACK,2:4:6:8
-//0x07F1,18
-//0x07F2,8
-//0x07F3,6
-
-//2010-07-01aRagexeRE
-0x083A,5 	// Search Stalls Feature
-
-//2010-07-13aRagexeRE
-//0x0827,6
-//0x0828,14
-//0x0829,6
-//0x082A,10
-//0x082B,6
-//0x082C,14
-//0x0840,-1
-//0x0841,19
-
-//2010-07-14aRagexeRE
-//0x0841,4
-
-//2010-08-03aRagexeRE
-0x0839,66
-0x0842,6,recall2,2
-0x0843,6,remove2,2
-
-//2010-11-24aRagexeRE
-packet_ver: 26
-0x0288,-1,cashshopbuy,2:4:8:10
-0x0436,19,wanttoconnection,2:6:10:14:18
-0x035f,5,walktoxy,2
-0x0360,6,ticksend,2
-0x0361,5,changedir,2:4
-0x0362,6,takeitem,2
-0x0363,6,dropitem,2:4
-0x0364,8,movetokafra,2:4
-0x0365,8,movefromkafra,2:4
-0x0366,10,useskilltopos,2:4:6:8
-0x0367,90,useskilltoposinfo,2:4:6:8:10
-0x0368,6,getcharnamerequest,2
-0x0369,6,solvecharname,2
-0x0856,-1
-0x0857,-1
-0x0858,-1
-0x0859,-1
-0x08d0,9,ZC_WEAR_EQUIP_ACK,2:4:6:8
-
-//2011-10-05aRagexeRE
-packet_ver: 27
-packet_keys: 0x291E6762,0x77CD391A,0x60AC2F16 // [Shakto]
-0x0364,5,walktoxy,2
-0x0817,6,ticksend,2
-0x0366,5,changedir,2:4
-0x0815,6,takeitem,2
-0x0885,6,dropitem,2:4
-0x0893,8,movetokafra,2:4
-0x0897,8,movefromkafra,2:4
-0x0369,10,useskilltopos,2:4:6:8
-0x08ad,90,useskilltoposinfo,2:4:6:8:10
-0x088a,6,getcharnamerequest,2
-0x0838,6,solvecharname,2
-0x0439,8,useitem,2:4
-0x08d2,10
-0x08d1,7
-0x0846,4,cashshopreqtab,2 //2011-07-18
-
-// 2011-11-02aRagexe
-packet_ver: 28
-packet_keys: 0x5324329D,0x5D545D52,0x06137269 // [Shakto]
-0x0436,26,friendslistadd,2
-0x0898,5,hommenu,2:4
-0x0281,36,storagepassword,2:4:20
-0x088d,26,partyinvite2,2
-0x083c,19,wanttoconnection,2:6:10:14:18
-0x08aa,7,actionrequest,2:6
-0x02c4,10,useskilltoid,2:4:6
-0x0811,-1,itemlistwindowselected,2:4:8:12
-0x0890,8
-0x08a5,18,bookingregreq,2:4:6
-0x0835,-1,reqopenbuyingstore,2:4:8:9:89
-0x089b,2,reqclosebuyingstore,0
-0x08a1,6,reqclickbuyingstore,2
-0x089e,-1,reqtradebuyingstore,2:4:8:12
-0x08ab,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x088b,2,searchstoreinfonextpage,0
-0x08a2,12,searchstoreinfolistitemclick,2:6:10
-0x08cf,10 //Amulet spirits
-
-//2012-03-07fRagexeRE
-packet_ver:29
-packet_keys: 0x382A6DEF,0x5CBE7202,0x61F46637 // [Shakto]
-0x086A,19,wanttoconnection,2:6:10:14:18
-0x0437,5,walktoxy,2
-0x0887,6,ticksend,2
-0x0890,5,changedir,2:4
-0x0865,6,takeitem,2
-0x02C4,6,dropitem,2:4
-0x093B,8,movetokafra,2:4
-0x0963,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0369,26,friendslistadd,2
-0x0863,5,hommenu,2:4
-0x0861,36,storagepassword,2:4:20
-0x0929,26,partyinvite2,2
-0x0885,7,actionrequest,2:6
-0x0889,10,useskilltoid,2:4:6
-0x0870,-1,itemlistwindowselected,2:4:8:12
-//0x0926,41,bookingregreq,2:4:6
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0817,2,reqclosebuyingstore,0
-0x0360,6,reqclickbuyingstore,2
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0884,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0835,2,searchstoreinfonextpage,0
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0439,8,useitem,2:4
-0x0365,41,bookingregreq,2:4:6
-
-// New Packet
-0x090F,-1		// ZC_NOTIFY_NEWENTRY7
-0x0914,-1		// ZC_NOTIFY_MOVEENTRY8
-0x0915,-1		// ZC_NOTIFY_STANDENTRY9
-
-//2012-04-10aRagexeRE
-packet_ver: 30
-packet_keys: 0x01581359,0x452D6FFA,0x6AFB6E2E // [Shakto]
-0x01fd,15,repairitem,2:4:6:7:9:11:13
-0x089c,26,friendslistadd,2
-0x0885,5,hommenu,2:4
-0x0961,36,storagepassword,2:4:20
-0x0288,-1,cashshopbuy,2:4:8:10
-0x091c,26,partyinvite2,2
-0x094b,19,wanttoconnection,2:6:10:14:18
-0x0369,7,actionrequest,2:6
-0x083c,10,useskilltoid,2:4:6
-0x0439,8,useitem,2:4
-0x0945,-1,itemlistwindowselected,2:4:8:12
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0817,2,reqclosebuyingstore,0
-0x0360,6,reqclickbuyingstore,2
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0835,2,searchstoreinfonextpage,0
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0437,5,walktoxy,2
-0x0886,6,ticksend,2
-0x0871,5,changedir,2:4
-0x0938,6,takeitem,2
-0x0891,6,dropitem,2:4
-0x086c,8,movetokafra,2:4
-0x08a6,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x0889,6,getcharnamerequest,2
-0x0884,6,solvecharname,2
-0x08e6,4
-0x08e7,10,bookingsearchreq,2:4:6:8:12
-0x08e8,-1
-0x08e9,2,bookingdelreq,0
-0x08ea,4
-0x08eb,39,bookingupdatereq,2
-0x08ec,73
-0x08ed,43
-0x08ee,6
-0x08ef,6,bookingignorereq,2
-0x08f0,6
-0x08f1,6,bookingjoinpartyreq,2
-0x08f2,36
-0x08f3,-1
-0x08f4,6
-0x08f5,-1,bookingsummonmember,2:4
-0x08f6,22
-0x08f7,3
-0x08f8,7
-0x08f9,6
-0x08fa,6
-0x08fb,6,bookingcanceljoinparty,2
-0x0907,5,moveitem,2:4
-0x0908,5
-0x08d7,28,battlegroundreg,2:4
-0x0977,14 //Monster HP Bar
-0x0916,26,guildinvite2,2
-0x091d,41,bookingregreq,2:4:6
-0x08cb,10,ZC_PERSONAL_INFOMATION,2:4:6:8:10:11:13:15 //Still need further information
-// Merge Item
-0x096D,-1,ZC_MERGE_ITEM_OPEN,2:4 // ZC_MERGE_ITEM_OPEN
-0x096E,-1,mergeitem_req,2:4 // CZ_REQ_MERGE_ITEM
-0x096F,7,ZC_ACK_MERGE_ITEM,2:4:6 // ZC_ACK_MERGE_ITEM
-0x0974,2,mergeitem_cancel,0 // CZ_CANCEL_MERGE_ITEM
-0x0844,2,cashshopopen,0
-0x0849,16 //clif_cashshop_result
-0x0848,-1,cashshopbuy,2:6:4:10
-0x084a,2,cashshopclose,0
-0x08c9,2,cashshopitemlist,0
-
-//2012-04-18aRagexeRE [Special Thanks to Judas!]
-packet_ver: 31
-packet_keys: 0x01540E48,0x13041224,0x31247924 // [Shakto]
-0x023B,26,friendslistadd,2
-0x0361,5,hommenu,2:4
-0x08A8,36,storagepassword,2:4:20
-0x0802,26,partyinvite2,2
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x035F,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x08E5,41,bookingregreq,2:4:6    //Added to prevent disconnections
-0x08d2,10
-
-//2012-06-18
-packet_ver: 32
-packet_keys: 0x261F261F,0x261F261F,0x261F261F // [Shakto]
-0x0983,29 // ZC_MSG_STATE_CHANGE3
-0x0861,41,bookingregreq,2:4:6 //actually 12-05-03
-
-//2012-07-02aRagexeRE (unstable)
-packet_ver: 33
-packet_keys: 0x25733B31,0x53486CFD,0x398649BD // [Shakto]
-0x0363,19,wanttoconnection,2:6:10:14:18
-0x0364,6,ticksend,2
-0x085a,7,actionrequest,2:6
-0x0861,8,movefromkafra,2:4
-0x0862,10,useskilltoid,2:4:6
-0x0863,10,useskilltopos,2:4:6:8
-0x0886,6,solvecharname,2
-0x0889,90,useskilltoposinfo,2:4:6:8:10
-0x089e,6,dropitem,2:4
-0x089f,6,takeitem,2
-0x08a0,8,movetokafra,2:4
-0x094a,6,getcharnamerequest,2
-0x0953,5,walktoxy,2
-0x0960,5,changedir,2:4
-0x0879,41,bookingregreq,2:4:6
-
-//2013-03-20Ragexe (Judas)
-packet_ver: 34
-packet_keys: 0x3F094C49,0x55F86C1E,0x58AA359A // [Shakto]
-0x014f,6,guildrequestinfo,2
-0x01fd,15,repairitem,2:4:6:7:9:11:13
-//0x0281,-1,itemlistwindowselected,2:4:8:12
-0x035f,6,reqclickbuyingstore,2
-0x0363,6,ticksend,2
-0x0365,12,searchstoreinfolistitemclick,2:6:10
-0x0438,6,dropitem,2:4
-0x0447,2,booking_playcancel,0 // CZ_BLOCKING_PLAY_CANCEL
-0x044A,6,clientversion,2
-0x0844,2,cashshopopen,0
-0x0849,16 //clif_cashshop_result
-0x0848,-1,cashshopbuy,2:6:4:10
-0x084a,2,cashshopclose,0
-0x084b,19 //fallitem4
-0x085a,90,useskilltoposinfo,2:4:6:8:10
-0x085d,18,bookingregreq,2:4:6
-0x0868,-1,itemlistwindowselected,2:4:8:12
-0x086d,26,partyinvite2,2
-0x086f,26,friendslistadd,2
-0x0874,8,movefromkafra,2:4
-0x0881,5,walktoxy,2
-0x0886,2,reqclosebuyingstore,0
-0x0888,19,wanttoconnection,2:6:10:14:18
-0x088e,7,actionrequest,2:6
-0x0897,5,changedir,2:4
-0x0898,6,getcharnamerequest,2
-0x089b,10,useskilltoid,2:4:6
-0x08ac,8,movetokafra,2:4
-0x08c9,2,cashshopitemlist,0
-0x08cf,10 //Amulet spirits
-0x08d2,10
-0x0907,5,moveitem,2:4
-0x0908,5
-0x0922,-1,reqtradebuyingstore,2:4:8:12
-//0x092e,2,searchstoreinfonextpage,0
-0x0933,6,takeitem,2
-0x0938,-1,reqopenbuyingstore,2:4:8:9:89
-0x093f,5,hommenu,2:4
-0x0947,36,storagepassword,2:4:20
-0x094c,6,solvecharname,2
-0x094e,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0959,10,useskilltopos,2:4:6:8
-//0x095a,8,mailsetattach,2:4
-0x0977,14 //Monster HP Bar
-0x0978,6,reqworldinfo,2
-0x0979,50 //ackworldinfo
-0x097b,16,ZC_PERSONAL_INFOMATION,2:4:8:12:16:17:21:25 //Still need further information
-//0x0981,12,ZC_PERSONAL_INFOMATION_CHN,2:4:6:8:12:13:15:17:10 // Disabled until further information is found.
-0x0990,31 //additem
-0x0991,-1 //inv itemlist normal
-0x0992,-1 //inv itemlist equip
-0x0993,-1 //cart itemlist normal
-0x0994,-1 //cart itemlist equip
-0x0995,-1 //store itemlist normal
-0x0996,-1 //store itemlist equip
-0x0997,-1 //ZC_EQUIPWIN_MICROSCOPE_V5
-0x0998,8,equipitem,2:4 // CZ_REQ_WEAR_EQUIP_V5
-0x0999,11,ZC_WEAR_EQUIP_ACK,2:4:8:10 // cz_wear_equipv5
-0x099a,9 // take_off_equipv5
-0x099b,8 //maptypeproperty2
-
-// New Packets
-0x08C8,34	// ZC_NOTIFY_ACT3
-0x08ff,24 	// ZC_EFST_SET_ENTER
-0x0984,28 	// ZC_EFST_SET_ENTER2
-0x099f,22 	// ZC_SKILL_ENTRY4
-
-//2013-05-15aRagexe (Yommy)
-packet_ver: 35
-packet_keys: 0x75794A38,0x58A96BC1,0x296E6FB8 // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0362,5,changedir,2:4
-0x08A1,6,takeitem,2
-0x0944,6,dropitem,2:4
-0x0887,8,movetokafra,2:4
-0x08AC,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x092D,18,bookingregreq,2:4:6
-//0x08AA,8 CZ_JOIN_BATTLE_FIELD
-0x0963,-1,itemlistwindowselected,2:4:8:12
-0x0943,19,wanttoconnection,2:6:10:14:18
-0x0947,26,partyinvite2,2
-//0x0862,4 CZ_GANGSI_RANK
-0x0962,26,friendslistadd,2
-0x0931,5,hommenu,2:4
-0x093e,36,storagepassword,2:4:20
-
-//2013-05-22Ragexe (Yommy)
-packet_ver: 36
-packet_keys: 0x6948050B,0x06511D9D,0x725D4DF1 // [Shakto]
-0x08A2,7,actionrequest,2:6
-0x095C,10,useskilltoid,2:4:6
-0x0360,5,walktoxy,2
-0x07EC,6,ticksend,2
-0x0925,5,changedir,2:4
-0x095E,6,takeitem,2
-0x089C,6,dropitem,2:4
-0x08a3,8,movetokafra,2:4
-0x087E,8,movefromkafra,2:4
-0x0811,10,useskilltopos,2:4:6:8
-0x0964,90,useskilltoposinfo,2:4:6:8:10
-0x08a6,6,getcharnamerequest,2
-0x0369,6,solvecharname,2
-0x093e,12,searchstoreinfolistitemclick,2:6:10
-0x08aa,2,searchstoreinfonextpage,0
-0x095b,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0952,-1,reqtradebuyingstore,2:4:8:12
-0x0368,6,reqclickbuyingstore,2
-0x086E,2,reqclosebuyingstore,0
-0x0874,-1,reqopenbuyingstore,2:4:8:9:89
-0x089B,18,bookingregreq,2:4:6
-//0x0965,8 CZ_JOIN_BATTLE_FIELD
-0x086A,-1,itemlistwindowselected,2:4:8:12
-0x08A9,19,wanttoconnection,2:6:10:14:18
-0x0950,26,partyinvite2,2
-//0x08AC,4 CZ_GANGSI_RANK
-0x0362,26,friendslistadd,2
-0x0926,5,hommenu,2:4
-0x088e,36,storagepassword,2:4:20
-
-//2013-05-29Ragexe (Shakto)
-packet_ver: 37
-packet_keys: 0x023A6C87,0x14BF1F1E,0x5CC70CC9 // [Shakto]
-0x0890,7,actionrequest,2:6
-0x0438,10,useskilltoid,2:4:6
-0x0876,5,walktoxy,2
-0x0897,6,ticksend,2
-0x0951,5,changedir,2:4
-0x0895,6,takeitem,2
-0x08A7,6,dropitem,2:4
-0x0938,8,movetokafra,2:4
-0x0957,8,movefromkafra,2:4
-0x0917,10,useskilltopos,2:4:6:8
-0x085E,90,useskilltoposinfo,2:4:6:8:10
-0x0863,6,getcharnamerequest,2
-0x0937,6,solvecharname,2
-0x085A,12,searchstoreinfolistitemclick,2:6:10
-0x0941,2,searchstoreinfonextpage,0
-0x0918,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0936,-1,reqtradebuyingstore,2:4:8:12
-0x0892,6,reqclickbuyingstore,2
-0x0964,2,reqclosebuyingstore,0
-0x0869,-1,reqopenbuyingstore,2:4:8:9:89
-0x0874,18,bookingregreq,2,4:6
-//0x088E,8 // CZ_JOIN_BATTLE_FIELD
-0x0958,-1,itemlistwindowselected,2:4:8:12
-0x0919,19,wanttoconnection,2:6:10:14:18
-0x08A8,26,partyinvite2,2
-//0x0888,4 // CZ_GANGSI_RANK
-0x0877,26,friendslistadd,2
-0x023B,5,hommenu,2:4
-0x0956,36,storagepassword,2:4:20
-
-//2013-06-05Ragexe (Shakto)
-packet_ver: 38
-packet_keys: 0x646E08D9,0x5F153AB5,0x61B509B5 // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x0436,4 // CZ_GANGSI_RANK
-0x023B,26,friendslistadd,2
-0x0361,5,hommenu,2,4
-0x0883,36,storagepassword,2:4:20
-0x097C,4,ranklist,2
-
-//2013-06-12Ragexe (Shakto)
-packet_ver: 39
-packet_keys: 0x6D166F66,0x3C000FCF,0x295B0FCB // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x087E,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x0919,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x0436,4 // CZ_GANGSI_RANK
-0x0940,26,friendslistadd,2
-0x093A,5,hommenu,2:4
-0x0964,36,storagepassword,2:4:20
-
-//2013-06-18Ragexe (Shakto)
-packet_ver: 40
-packet_keys: 0x434115DE,0x34A10FE9,0x6791428E // [Shakto]
-0x0889,7,actionrequest,2:6
-0x0951,10,useskilltoid,2:4:6
-0x088E,5,walktoxy,2
-0x0930,6,ticksend,2
-0x08A6,5,changedir,2:4
-0x0962,6,takeitem,2
-0x0917,6,dropitem,2:4
-0x0885,8,movetokafra,2:4
-0x0936,8,movefromkafra,2:4
-0x096A,10,useskilltopos,2:4:6:8
-0x094F,90,useskilltoposinfo,2:4:6:8:10
-0x0944,6,getcharnamerequest,2
-0x0945,6,solvecharname,2
-0x0890,12,searchstoreinfolistitemclick,2:6:10
-0x0363,2,searchstoreinfonextpage,0
-0x0281,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0891,-1,reqtradebuyingstore,2:4:8:12
-0x0862,6,reqclickbuyingstore,2
-0x085A,2,reqclosebuyingstore,0
-0x0932,-1,reqopenbuyingstore,2:4:8:9:89
-0x08A7,18,bookingregreq,2:4:6
-//0x087A,8 // CZ_JOIN_BATTLE_FIELD
-0x0942,-1,itemlistwindowselected,2:4:8:12
-0x095B,19,wanttoconnection,2:6:10:14:18
-0x0887,26,partyinvite2,2
-//0x0878,4 // CZ_GANGSI_RANK
-0x0953,26,friendslistadd,2
-0x02C4,5,hommenu,2:4
-0x0864,36,storagepassword,2:4:20
-
-//2013-06-26Ragexe
-packet_ver: 41
-packet_keys: 0x38F453EF,0x6A040FD8,0X65BD6668 // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x094D,5,changedir,2:4
-0x088B,6,takeitem,2
-0x0952,6,dropitem,2:4
-0x0921,8,movetokafra,2:4
-0x0817,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0365,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0894,18,bookingregreq,2:4:6
-//0x0860,8 // CZ_JOIN_BATTLE_FIELD
-0x08A5,-1,itemlistwindowselected,2:4:8:12
-0x088C,19,wanttoconnection,2:6:10:14:18
-0x0895,26,partyinvite2,2
-//0x088F,4 // CZ_GANGSI_RANK
-0x08AB,26,friendslistadd,2
-0x0960,5,hommenu,2:4
-0x0930,36,storagepassword,2:4:20
-
-//2013-07-03Ragexe
-packet_ver: 42
-packet_keys: 0x4FF90E23,0x0F1432F2,0x4CFA1EDA // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0930,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0202,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x0436,4 // CZ_GANGSI_RANK
-0x0360,26,friendslistadd,2
-0x094A,5,hommenu,2:4
-0x0873,36,storagepassword,2:4:20
-
-//2013-07-10Ragexe
-packet_ver: 43
-packet_keys: 0x458F758F,0x4CCF3F8F,0x4A9C4237
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x0436,4 // CZ_GANGSI_RANK
-0x023B,26,friendslistadd,2
-0x0361,5,hommenu,2:4
-0x0880,36,storagepassword,2:4:20
-0x0848,-1,cashshopbuy,2:6:4:10
-0x097D,288 //ZC_ACK_RANKING
-
-//2013-07-17Ragexe
-packet_ver: 44
-packet_keys: 0x2BED4F91,0x5F9E00CF,0x5EE5520C
-0x0918,7,actionrequest,2:6
-0x091E,10,useskilltoid,2:4:6
-0x083C,5,walktoxy,2
-0x02C4,6,ticksend,2
-0x088C,5,changedir,2:4
-0x08A9,6,takeitem,2
-0x0917,6,dropitem,2:4
-0x089B,8,movetokafra,2:4
-0x0956,8,movefromkafra,2:4
-0x0882,10,useskilltopos,2:4:6:8
-0x0952,90,useskilltoposinfo,2:4:6:8:10
-0x0958,6,getcharnamerequest,2
-0x0967,6,solvecharname,2
-0x0960,12,searchstoreinfolistitemclick,2:6:10
-0x0819,2,searchstoreinfonextpage,0
-0x086B,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x093B,-1,reqtradebuyingstore,2:4:8:12
-0x0898,6,reqclickbuyingstore,2
-0x096A,2,reqclosebuyingstore,0
-0x08AA,-1,reqopenbuyingstore,2:4:8:9:89
-0x0862,18,bookingregreq,2:4:6
-//0x08A6,8 // CZ_JOIN_BATTLE_FIELD
-0x0897,-1,itemlistwindowselected,2:4:8:12
-0x091D,19,wanttoconnection,2:6:10:14:18
-0x092F,26,partyinvite2,2
-//0x086C,4 // CZ_GANGSI_RANK
-0x0863,26,friendslistadd,2
-0x088A,5,hommenu,2:4
-0x095B,36,storagepassword,2:4:20
-0x09A6,12,ZC_BANKING_CHECK,2:10
-0x09A7,10,bankdeposit,2:6
-0x09A8,16,ZC_ACK_BANKING_DEPOSIT,2:4:12
-0x09A9,10,bankwithdrawal,2:6
-0x09AA,16,ZC_ACK_BANKING_WITHDRAW,2:4:12
-0x09AB,6,bankcheck,2
-0x09B6,6,bankopen,2
-0x09B7,4,ZC_ACK_OPEN_BANKING,2
-0x09B8,6,bankclose,2
-0x09B9,4,ZC_ACK_CLOSE_BANKING,2
-
-//2013-07-31cRagexe
-0x09ca,23 // ZC_SKILL_ENTRY5
-0x09cb,17	// ZC_USE_SKILL2
-
-//2013-08-07Ragexe
-packet_ver: 45
-packet_keys: 0x7E241DE0,0x5E805580,0x3D807D80 // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x436,4 // CZ_GANGSI_RANK
-0x023B,26,friendslistadd,2
-0x0361,5,hommenu,2:4
-0x0887,36,storagepassword,2:4:20
-0x09C1,10,ZC_C_MARKERINFO,2:6:8
-// Merge Item
-0x096D,-1,ZC_MERGE_ITEM_OPEN,2:4 // ZC_MERGE_ITEM_OPEN
-0x096E,-1,mergeitem_req,2:4 // CZ_REQ_MERGE_ITEM
-0x096F,7,ZC_ACK_MERGE_ITEM,2:4:6:7 // ZC_ACK_MERGE_ITEM
-0x0974,2,mergeitem_cancel,0 // CZ_CANCEL_MERGE_ITEM
-
-//2013-12-23Ragexe
-packet_ver: 46
-packet_keys: 0x631C511C,0x111C111C,0x111C111C // [Shakto]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4:6
-//0x363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022D,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x436,4 // CZ_GANGSI_RANK
-0x023B,26,friendslistadd,2
-0x0361,5,hommenu,2:4
-0x08A4,36,storagepassword,2:4:20
-//New Packets
-//0x097E,12 //ZC_UPDATE_RANKING_POINT
-0x09CE,102,itemmonster,2
-0x09D4,2,npcshopclosed,0
-//NPC Market
-0x09D5,-1
-0x09D6,-1,npcmarketpurchase,2:4:6
-0x09D7,-1
-0x09D8,2,npcmarketclosed,0
-// Clan System
-0x0988,6
-0x0989,2
-0x098A,-1
-0x098D,-1,clanchat,2:4
-0x098E,-1
-// Sale
-0x09AC,-1,salesearch,2:4:8
-0x09AD,8
-0x09AE,17,saleadd,2:6:8:12:16
-0x09AF,4
-0x09B0,8,saleremove,2:6
-0x09B1,4
-0x09B2,8
-0x09B3,4
-0x09B4,6,saleopen,2
-0x09BC,6,saleclose,2
-0x09C3,8,salerefresh,2:6
-0x09C4,8
-
-// New Packet
-0x097A,-1		// ZC_ALL_QUEST_LIST2
-0x09DB,-1		// ZC_NOTIFY_MOVEENTRY10
-0x09DC,-1		// ZC_NOTIFY_NEWENTRY10
-0x09DD,-1	// ZC_NOTIFY_STANDENTRY10
-0x09DF,7		// ZC_ACK_WHISPER02
-
-//2014-10-16Ragexe
-packet_ver: 50
-packet_keys: 0x2DFF467C,0x444B37EE,0x2C1B634F // [YomRawr]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0967,5,changedir,2:4
-0x07E4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07EC,8,movetokafra,2:4
-0x022D,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,bookingregreq,2:4
-// 0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8
-0x086E,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite,2
-// 0x0922,4 // CZ_GANGSI_RANK
-0x094B,26,friendslistadd,2
-0x0364,5,hommenu,2:4
-0x0936,36,storagepassword,0
-0x09DF,7
-
-// New packet
-0x0A00,269		// ZC_SHORTCUT_KEY_LIST_V3
-0x0A01,3,hotkeyrowshift,2	// CZ_SHORTCUTKEYBAR_ROTATE
-0x0A02,4			// ZC_DRESSROOM_OPEN
-0x0A0E,14		// ZC_BATTLEFIELD_NOTIFY_HP2
-0x09F7,75		// ZC_PROPERTY_HOMUN_2
-0x09E5,18		// ZC_DELETEITEM_FROM_MCSTORE2
-0x09E6,22		// ZC_UPDATE_ITEM_FROM_BUYING_STORE2
-
-// Roulette System [Yommy]
-0x0A19,2,rouletteopen,0	// CZ_REQ_OPEN_ROULETTE
-0x0A1A,23 		// ZC_ACK_OPEN_ROULETTE
-0x0A1B,2,rouletteinfo,0 	// CZ_REQ_ROULETTE_INFO
-0x0A1C,-1 		// ZC_ACK_ROULETTE_INFO
-0x0A1D,2,rouletteclose,0 	// CZ_REQ_CLOSE_ROULETTE
-0x0A1E,3 			// ZC_ACK_CLOSE_ROULETTE
-0x0A1F,2,roulettegenerate,0 	// CZ_REQ_GENERATE_ROULETTE
-0x0A20,21 		// ZC_ACK_GENERATE_ROULETTE
-0x0A21,3,rouletterecvitem,2 	// CZ_RECV_ROULETTE_ITEM
-0x0A22,5 			// ZC_RECV_ROULETTE_ITEM
-
-//2014-10-22bRagexe
-packet_ver: 51
-packet_keys: 0x290551EA,0x2B952C75,0x2D67669B // [YomRawr]
-0x006d,149
-0x023b,10,useskilltopos,2:4:6:8
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x035f,6,ticksend,2
-0x0360,6,reqclickbuyingstore,2
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x0368,6,solvecharname,2
-0x0369,7,actionrequest,2:6
-0x0437,5,walktoxy,2
-0x0438,36,storagepassword,2:4:20
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0817,2,reqclosebuyingstore,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0835,12,searchstoreinfolistitemclick,2:6:10
-0x083c,10,useskilltoid,2:4:6
-0x0878,8,movetokafra,2:4
-0x087d,6,dropitem,2:4
-0x0896,26,partyinvite2,2
-0x0899,5,hommenu,2:4
-0x08aa,8,movefromkafra,2:4
-//0x08ab,4	// CZ_GANGSI_RANK
-0x08ad,5,changedir,2:4
-0x08e3,149
-0x091a,26,friendslistadd,2
-//0x092b,8	// CZ_JOIN_BATTLE_FIELD
-0x093b,19,wanttoconnection,2:6:10:14:18
-0x0940,2,searchstoreinfonextpage,0
-0x094e,6,takeitem,2
-0x0955,18,bookingregreq,2:4:6
-0x096a,6,getcharnamerequest,2
-
-// New Packet
-0x0A18,14		// ZC_ACCEPT_ENTER3
-0x0A28,3		// ZC_ACK_OPENSTORE2
-0x09FD,-1		// ZC_NOTIFY_MOVEENTRY11
-0x09FE,-1		// ZC_NOTIFY_NEWENTRY11
-0x09FF,-1		// ZC_NOTIFY_STANDENTRY11
-//0x09F8,-1		// ZC_ALL_QUEST_LIST3
-
-//2015-05-13aRagexe
-packet_ver: 52
-packet_keys: 0x62C86D09,0x75944F17,0x112C133D // [YomRawr]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035F,6,ticksend,2
-0x0924,5,changedir,2:4
-0x0958,6,takeitem,2
-0x0885,6,dropitem,2:4
-0x0879,8,movetokafra,2:4
-0x0864,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x096A,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x022D,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0883,18,bookingregreq,2:4:6
-// 0x02C4,8 CZ_JOIN_BATTLE_FIELD
-0x0960,-1,itemlistwindowselected,2:4:8:12
-0x0363,19,wanttoconnection,2:6:10:14:18
-0x094A,26,partyinvite2,2
-// 0x0927,4 CZ_GANGSI_RANK
-0x08A8,26,friendslistadd,2
-0x0817,5,hommenu,2:4
-0x0923,36,storagepassword,2:4:20
-
-// New Packets
-0xA3B,-1		// ZC_HAT_EFFECT
-
-// RODEX Mail system
-0x09E7,3		// ZC_NOTIFY_UNREADMAIL
-0x09E8,11,mailrefresh,2:3	// CZ_OPEN_MAILBOX
-0x09E9,2,dull,0 	// CZ_CLOSE_MAILBOX
-0x09EA,11,mailread,2:3	// CZ_REQ_READ_MAIL
-0x09EB,-1		// ZC_ACK_READ_MAIL
-0x09EC,-1,mailsend,2:4:28:52:60:62:64	// CZ_REQ_WRITE_MAIL
-0x09ED,3		// ZC_ACK_WRITE_MAIL
-0x09EE,11,mailrefresh,2:3	// CZ_REQ_NEXT_MAIL_LIST
-0x09EF,11,mailrefresh,2:3 	// CZ_REQ_REFRESH_MAIL_LIST
-0x09F0,-1		// ZC_ACK_MAIL_LIST
-0x09F1,11,mailgetattach,0	// CZ_REQ_ZENY_FROM_MAIL
-0x09F2,12	// ZC_ACK_ZENY_FROM_MAIL
-0x09F3,11,mailgetattach,0	// CZ_REQ_ITEM_FROM_MAIL
-0x09F4,12	// ZC_ACK_ITEM_FROM_MAIL
-0x09F5,11,maildelete,0	// CZ_REQ_DELETE_MAIL
-0x09F6,11		// ZC_ACK_DELETE_MAIL
-0x0A03,2,mailcancel,0	// CZ_REQ_CANCEL_WRITE_MAIL
-0x0A04,6,mailsetattach,2:4	// CZ_REQ_ADD_ITEM_TO_MAIL
-0x0A05,53	// ZC_ACK_ADD_ITEM_TO_MAIL
-0x0A06,6,mailwinopen,2:4	// CZ_REQ_REMOVE_ITEM_MAIL
-0x0A07,9		// ZC_ACK_REMOVE_ITEM_MAIL
-0x0A08,26,mailbegin,0	// CZ_REQ_OPEN_WRITE_MAIL
-0x0A12,27	// ZC_ACK_OPEN_WRITE_MAIL
-0x0A13,26,mailreceiver,2	// CZ_CHECK_RECEIVE_CHARACTER_NAME
-0x0A14,10		// ZC_CHECK_RECEIVE_CHARACTER_NAME
-0x0A32,2		// ZC_OPEN_RODEX_THROUGH_NPC_ONLY
-
-// New EquipPackets Support
-0x0A09,45	// ZC_ADD_EXCHANGE_ITEM3
-0x0A0A,47	// ZC_ADD_ITEM_TO_STORE3
-0x0A0B,47	// ZC_ADD_ITEM_TO_CART3
-0x0A0C,56	// ZC_ITEM_PICKUP_ACK_V6
-0x0A0D,-1	// ZC_INVENTORY_ITEMLIST_EQUIP_V6
-0x0A0F,-1		// ZC_CART_ITEMLIST_EQUIP_V6
-0x0A10,-1		// ZC_STORE_ITEMLIST_EQUIP_V6
-0x0A2D,-1	// ZC_EQUIPWIN_MICROSCOPE_V6
-
-// OneClick Itemidentify
-0x0A35,4,oneclick_itemidentify,2	// CZ_REQ_ONECLICK_ITEMIDENTIFY
-
-// Achievement System
-0x0A23,-1		// ZC_ALL_ACH_LIST
-0x0A24,66	// ZC_ACH_UPDATE
-0x0A25,6,dull,0	// CZ_REQ_ACH_REWARD
-0x0A26,7		// ZC_REQ_ACH_REWARD_ACK
-
-// Title System
-0x0A2E,6,dull,0	// CZ_REQ_CHANGE_TITLE
-0x0A2F,7		// ZC_ACK_CHANGE_TITLE
-0x0A30,106	// ZC_ACK_REQNAMEALL2
-
-// Pet Evolution System
-0x09FB,-1,dull,0	// CZ_PET_EVOLUTION
-0x09FC,6		// ZC_PET_EVOLUTION_RESULT
-
-//2015-05-20aRagexe
-0x0A3D,18,saleadd,2:6:8:12:16
-
-//2015-09-16Ragexe
-packet_ver: 53
-packet_keys: 0x17F83A19,0x116944F4,0x1CC541E9 // [Napster]
-0x0869,7,actionrequest,2:6
-0x093E,10,useskilltoid,2:4:6
-0x0877,5,walktoxy,2
-0x08AC,6,ticksend,2
-0x0936,5,changedir,2:4
-0x089C,6,takeitem,2
-0x092F,6,dropitem,2:4
-0x0934,8,movetokafra,2:4
-0x085E,8,movefromkafra,2:4
-0x022D,10,useskilltopos,2:4:6:8
-0x0873,90,useskilltoposinfo,2:4:6:8:10
-0x095A,6,getcharnamerequest,2
-0x0942,6,solvecharname,2
-0x087F,12,searchstoreinfolistitemclick,2:6:10
-0x0817,2,searchstoreinfonextpage,0
-0x0920,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0881,-1,reqtradebuyingstore,2:4:8:12
-0x0835,6,reqclickbuyingstore,2
-0x092E,2,reqclosebuyingstore,0
-0x0948,-1,reqopenbuyingstore,2:4:8:9:89
-0x089B,18,bookingregreq,2:4:6
-// 0x094F,8 CZ_JOIN_BATTLE_FIELD
-0x0961,-1,itemlistwindowselected,2:4:8:12
-0x0969,19,wanttoconnection,2:6:10:14:18
-0x0924,26,partyinvite2,2
-// 0x0938,4 CZ_GANGSI_RANK
-0x089E,26,friendslistadd,2
-0x0960,5,hommenu,2:4
-0x0941,36,storagepassword,2:4:20
-
-// New Packet
-0x097F,-1		// ZC_SELECTCART
-0x0980,7,selectcart,2:6	// CZ_SELECTCART
-
-//2015-10-01bRagexeRE
-packet_ver: 54
-packet_keys: 0x45B945B9,0x45B945B9,0x45B945B9	// [Dastgir]
-0x0369,7,actionrequest,2:6
-0x083c,10,useskilltoid,2:4:6
-0x0437,5,walktoxy,2
-0x035f,6,ticksend,2
-0x0202,5,changedir,2:4
-0x07e4,6,takeitem,2
-0x0362,6,dropitem,2:4
-0x07ec,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposmoreinfo,2:4:6:8:10
-0x096a,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0811,-1,reqtradebuyingstore,2:4:8:12
-0x0360,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x0815,-1,reqopenbuyingstore,2:4:8:9:89
-0x0365,18,partybookingregisterreq,2:4:6
-//0x0363,8 // CZ_JOIN_BATTLE_FIELD
-0x0281,-1,itemlistwindowselected,2:4:8:12
-0x022d,19,wanttoconnection,2:6:10:14:18
-0x0802,26,partyinvite2,2
-//0x0436,4 // CZ_GANGSI_RANK
-0x023b,26,friendslistadd,2
-0x0361,5,hommenu,2:4
-0x0860,36,storagepassword,2:4:20
-
-//2015-11-04aRagexe
-packet_ver: 55
-packet_keys: 0x4C17382A,0x7ED174C9,0x29961E4F // [Winnie]
-0x0369,7,actionrequest,2:6
-0x083C,10,useskilltoid,2:4:6
-0x0363,5,walktoxy,2
-0x0886,6,ticksend,2
-0x0928,5,changedir,2:4
-0x0964,6,takeitem,2
-0x0437,6,dropitem,2:4
-0x088B,8,movetokafra,2:4
-0x0364,8,movefromkafra,2:4
-0x0438,10,useskilltopos,2:4:6:8
-0x0366,90,useskilltoposinfo,2:4:6:8:10
-0x0887,6,getcharnamerequest,2
-0x0368,6,solvecharname,2
-0x0838,12,searchstoreinfolistitemclick,2:6:10
-0x0835,2,searchstoreinfonextpage,0
-0x0819,-1,searchstoreinfo,2:4:5:9:13:14:15
-0x0815,-1,reqtradebuyingstore,2:4:8:12
-0x0436,6,reqclickbuyingstore,2
-0x0817,2,reqclosebuyingstore,0
-0x023B,-1,reqopenbuyingstore,2:4:8:9:89
-0x0811,18,bookingregreq,2:4:6
-//0x0939,8 CZ_JOIN_BATTLE_FIELD
-0x093A,-1,itemlistwindowselected,2:4:8:12
-0x0360,19,wanttoconnection,2:6:10:14:18
-0x08A5,26,partyinvite2,2
-//0x08A3,4 CZ_GANGSI_RANK
-0x07EC,26,friendslistadd,2
-0x088D,5,hommenu,2:4
-0x0940,36,storagepassword,2:4:20
-
-// 2016-03-02bRagexe
-0x0A51,34
-
-// 2016-03-30aRagexe
-0x0A6E,-1,mailsend,2:4:28:52:60:62:64:68	// CZ_REQ_WRITE_MAIL2
-
-// 2016-06-01aRagexe
-0x0A7D,-1
-
-// 2017-05-02dRagexeRE
-0x0A43,85
-0x0A44,-1
-0x0ABD,10
-
-//Add new packets here
-//packet_ver: 56

+ 0 - 3
doc/atcommands.txt

@@ -1320,7 +1320,6 @@ This will also send a packet to clients causing them to close.
 @reloadmobdb
 @reloadmotd
 @reloadmsgconf
-@reloadpacketdb
 @reloadpcdb
 @reloadquestdb
 @reloadscript
@@ -1333,7 +1332,6 @@ Databases:
 -- instancedb: Instance Database
 -- itemdb: Item Database
 -- mobdb: Monster Database
--- packetdb: Packet Database
 -- questdb: Quest Database
 -- script: NPC Scripts
 -- skilldb: Skill Database
@@ -1354,7 +1352,6 @@ Affected files:
 -- mobdb: mob_db.txt, mob_item_ratio.txt, mob_chat_db.txt, mob_avail.txt, mob_race2_db.txt, mob_branch.txt, mob_poring.txt, mob_boss.txt, mob_pouch.txt, mob_classchange.txt, pet_db.txt, homunculus_db.txt, homun_skill_tree.txt, exp_homun.txt, mercenary_db.txt, mercenary_skill_db.txt, elemental_db.txt, elemental_skill_db.txt
 -- motd: motd.txt
 -- msgconf: atcommand_athena.conf
--- packetdb: packet_db.txt
 -- pcdb: statpoint.txt, job_exp.txt, skill_tree.txt, attr_fix.txt, job_db1.txt, job_db2.txt, job_basehpsp_db.txt, job_maxhpsp_db.txt, job_param_db.txt, level_penalty.txt
 -- questdb: quest_db.txt
 -- script: /npc/*.txt, /npc/*.conf

+ 6 - 8
doc/packet_interserv.txt

@@ -47,9 +47,9 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 
 0x2713:
 	Type: AH
-	Structure: <cmd>.W <aid>.L <login_id1>.L <login_id2>.L <sex>.B <auth>.B <request_id>.L <version>.L <clienttype>.B
-	index: 0,2,6,10,14,15,16,20,24
-	len: 25
+	Structure: <cmd>.W <aid>.L <login_id1>.L <login_id2>.L <sex>.B <auth>.B <request_id>.L <clienttype>.B
+	index: 0,2,6,10,14,15,16,20
+	len: 21
 	parameter:
 		- cmd : packet identification (0x2713)
 		- aid : account identification
@@ -58,7 +58,6 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- sex: the sex of the account
 		- ok : 1=auth failed, 1=ok
 		- request_id: unknown @FIXME
-		- version: client version, (clientinfo version)
 		- clienttype: unknown @FIXME
 	desc:
 		- Acknowledge the authentication request from char-serv
@@ -2769,16 +2768,15 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 
 0x2b02
 	Type: ZA
-	Structure: <cmd>.W <id>.L <login_id1>.L <login_id2>.L <s_ip>.L <packet_ver>.B
-	index: 0,2,6,10,14,18
-	len: 19
+	Structure: <cmd>.W <id>.L <login_id1>.L <login_id2>.L <s_ip>.L
+	index: 0,2,6,10,14
+	len: 18
 	parameter:
 		- cmd : packet identification (0x2b02)
 		- id
 		- login_id1
 		- login_id2
 		- s_ip
-		- packet_ver
 	desc:
 		- chrif_charselectreq
 

+ 0 - 12
doc/script_commands.txt

@@ -3723,18 +3723,6 @@ The renewal feature to check is determined by type.
  4 - RENEWAL_LVDMG (renewal level modifier on damage)
  5 - RENEWAL_ASPD (renewal ASPD)
 
----------------------------------------
-
-*is_clientver(<type>,<value>{,<char id>})
-
-Checks a character's client version against a specified value. If no char id is
-given, the command will run for the invoking character. The function will return
-1 if the player's version is greater than or equal to the value, and 0 otherwise.
-
-Available types are:
- 0 - version number (packet_db_ver)
- 1 - client date (YYYYMMDD)
-
 ---------------------------------------
 \\
 3,1.- Item-related commands

+ 2 - 1
npc/re/guides/navigation.txt

@@ -13,11 +13,12 @@
 //===== Additional Comments: ================================= 
 //= 1.0 First version.
 //= 1.1 Added 'is_clientver' command. [Euphy]
+//= 1.2 Dropped 'is_clientver' command. [Lemongrass]
 //============================================================ 
 
 function	script	F_Navi	{
 
-	if (!is_clientver(1,20111010))
+	if ( PACKETVER < 20111010 )
 		set .@disabled,1;
 
 	// This function takes 0 ~ 3 parameters.

+ 1 - 0
rAthena.sln

@@ -21,6 +21,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Config", "Config", "{60D331
 		src\config\const.h = src\config\const.h
 		src\config\core.h = src\config\core.h
 		src\config\classes\general.h = src\config\classes\general.h
+		src\config\packets.h = src\config\packets.h
 		src\config\renewal.h = src\config\renewal.h
 		src\config\secure.h = src\config\secure.h
 	EndProjectSection

+ 0 - 1
src/char/char.h

@@ -222,7 +222,6 @@ struct char_session_data {
 	uint8 char_slots; // total number of characters that can be created
 	uint8 chars_vip;
 	uint8 chars_billing;
-	uint32 version;
 	uint8 clienttype;
 	char new_name[NAME_LENGTH];
 	char birthdate[10+1];  // YYYY-MM-DD

+ 25 - 24
src/char/char_clif.c

@@ -303,8 +303,7 @@ int chclif_parse_pincode_setnew( int fd, struct char_session_data* sd ){
 //----------------------------------------
 void chclif_charlist_notify( int fd, struct char_session_data* sd ){
 // This is needed on RE clients from october 2015 onwards
-// If you want to use one replace false by true here
-#if false && PACKETVER >= 20151001
+#if defined(PACKETVER_RE) && PACKETVER >= 20151001
 	WFIFOHEAD(fd, 10);
 	WFIFOW(fd, 0) = 0x9a0;
 	// pages to req / send them all in 1 until mmo_chars_fromsql can split them up
@@ -324,21 +323,25 @@ void chclif_charlist_notify( int fd, struct char_session_data* sd ){
 // Function to send characters to a player
 //----------------------------------------
 int chclif_mmo_send006b(int fd, struct char_session_data* sd){
-	int j, offset = 0;
-	bool newvers = (sd->version >= date2version(20100413) );
-	if(newvers) //20100413
-		offset += 3;
+	int j, offset;
+
+#if PACKETVER >= 20100413
+	offset = 3;
+#else
+	offset = 0;
+#endif
+
 	if (charserv_config.save_log)
 		ShowInfo("Loading Char Data ("CL_BOLD"%d"CL_RESET")\n",sd->account_id);
 
 	j = 24 + offset; // offset
 	WFIFOHEAD(fd,j + MAX_CHARS*MAX_CHAR_BUF);
 	WFIFOW(fd,0) = 0x6b;
-	if(newvers){ //20100413
+#if PACKETVER >= 20100413
 		WFIFOB(fd,4) = MAX_CHARS; // Max slots.
 		WFIFOB(fd,5) = MIN_CHARS; // Available slots. (PremiumStartSlot)
 		WFIFOB(fd,6) = MIN_CHARS+sd->chars_vip; // Premium slots. (Any existent chars past sd->char_slots but within MAX_CHARS will show a 'Premium Service' in red)
-	}
+#endif
 	memset(WFIFOP(fd,4 + offset), 0, 20); // unknown bytes
 	j+=char_mmo_chars_fromsql(sd, WFIFOP(fd,j));
 	WFIFOW(fd,2) = j; // packet len
@@ -377,16 +380,18 @@ void chclif_mmo_send099d(int fd, struct char_session_data *sd) {
  * Function to choose wich kind of charlist to send to client depending on his version
  */
 void chclif_mmo_char_send(int fd, struct char_session_data* sd){
-	ShowInfo("sd->version = %d\n",sd->version);
-	if(sd->version >= date2version(20130000) ){
-		chclif_mmo_send082d(fd,sd);
-		chclif_mmo_send006b(fd,sd);
-		chclif_charlist_notify(fd,sd);
-	} else
-		chclif_mmo_send006b(fd,sd);
+#if PACKETVER >= 20130000
+	chclif_mmo_send082d(fd, sd);
+	chclif_mmo_send006b(fd, sd);
+	chclif_charlist_notify(fd, sd);
+#else
+	chclif_mmo_send006b(fd,sd);
 	//@FIXME dump from kro doesn't show 6b transmission
-	if(sd->version >= date2version(20060819) )
- 		chclif_block_character(fd,sd);
+#endif
+
+#if PACKETVER >= 20060819
+ 	chclif_block_character(fd,sd);
+#endif
 }
 
 /*
@@ -435,14 +440,11 @@ void chclif_char_delete2_ack(int fd, uint32 char_id, uint32 result, time_t delet
 /// Any (0x718): An unknown error has occurred.
 /// HC: <082a>.W <char id>.L <Msg:0-5>.L
 void chclif_char_delete2_accept_ack(int fd, uint32 char_id, uint32 result) {
+#if PACKETVER >= 20130000
 	if(result == 1 ){
-		struct char_session_data* sd;
-		sd = (struct char_session_data*)session[fd]->session_data;
-
-		if( sd->version >= date2version(20130000) ){
-			chclif_mmo_char_send(fd, sd);
-		}
+		chclif_mmo_char_send(fd, session[fd]->session_data);
 	}
+#endif
 
 	WFIFOHEAD(fd,10);
 	WFIFOW(fd,0) = 0x82a;
@@ -751,7 +753,6 @@ int chclif_parse_reqtoconnect(int fd, struct char_session_data* sd,uint32 ipl){
 			node->login_id2  == login_id2 /*&&
 			node->ip         == ipl*/ )
 		{// authentication found (coming from map server)
-			sd->version = node->version;
 			idb_remove(auth_db, account_id);
 			char_auth_ok(fd, sd);
 		}

+ 4 - 10
src/char/char_logif.c

@@ -295,7 +295,7 @@ int chlogif_parse_ackconnect(int fd, struct char_session_data* sd){
 }
 
 int chlogif_parse_ackaccreq(int fd, struct char_session_data* sd){
-	if (RFIFOREST(fd) < 25)
+	if (RFIFOREST(fd) < 21)
 		return 0;
 	{
 		uint32 account_id = RFIFOL(fd,2);
@@ -304,19 +304,14 @@ int chlogif_parse_ackaccreq(int fd, struct char_session_data* sd){
 		uint8 sex = RFIFOB(fd,14);
 		uint8 result = RFIFOB(fd,15);
 		int request_id = RFIFOL(fd,16);
-		uint32 version = RFIFOL(fd,20);
-		uint8 clienttype = RFIFOB(fd,24);
-		RFIFOSKIP(fd,25);
+		uint8 clienttype = RFIFOB(fd,20);
+		RFIFOSKIP(fd,21);
 
 		if( session_isActive(request_id) && (sd=(struct char_session_data*)session[request_id]->session_data) &&
 			!sd->auth && sd->account_id == account_id && sd->login_id1 == login_id1 && sd->login_id2 == login_id2 && sd->sex == sex )
 		{
 			int client_fd = request_id;
-			sd->version = version;
 			sd->clienttype = clienttype;
-			if(sd->version != date2version(PACKETVER))
-				ShowWarning("aid=%d has an incorect version=%d in clientinfo. Server compiled for %d\n",
-					sd->account_id,sd->version,date2version(PACKETVER));
 
 			switch( result )
 			{
@@ -372,8 +367,7 @@ int chlogif_parse_reqaccdata(int fd, struct char_session_data* sd){
 			// send characters to player
 			chclif_mmo_char_send(u_fd, sd);
 #if PACKETVER_SUPPORTS_PINCODE
-			if(sd->version >= date2version(20110309))
-				chlogif_pincode_start(u_fd,sd);
+			chlogif_pincode_start(u_fd,sd);
 #endif
 		}
 	}

+ 2 - 4
src/char/char_mapif.c

@@ -453,15 +453,14 @@ void chmapif_charselres(int fd, uint32 aid, uint8 res){
  * @return : 0 not enough data received, 1 success
  */
 int chmapif_parse_authok(int fd){
-	if( RFIFOREST(fd) < 19 )
+	if( RFIFOREST(fd) < 18 )
 		return 0;
 	else{
 		uint32 account_id = RFIFOL(fd,2);
 		uint32 login_id1 = RFIFOL(fd,6);
 		uint32 login_id2 = RFIFOL(fd,10);
 		uint32 ip = RFIFOL(fd,14);
-		int version = RFIFOB(fd,18);
-		RFIFOSKIP(fd,19);
+		RFIFOSKIP(fd,18);
 
 		if( runflag != CHARSERVER_ST_RUNNING ){
 			chmapif_charselres(fd,account_id,0);
@@ -478,7 +477,6 @@ int chmapif_parse_authok(int fd){
 			node->login_id2 = login_id2;
 			//node->sex = 0;
 			node->ip = ntohl(ip);
-			node->version = version; //upd version for mapserv
 			//node->expiration_time = 0; // unlimited/unknown time by default (not display in map-server)
 			//node->gmlevel = 0;
 			idb_put(auth_db, account_id, node);

+ 1 - 22
src/common/mmo.h

@@ -9,31 +9,10 @@
 #include "db.h"
 #include <time.h>
 
-// server->client protocol version
-//        0 - pre-?
-//        1 - ?                    - 0x196
-//        2 - ?                    - 0x78, 0x79
-//        3 - ?                    - 0x1c8, 0x1c9, 0x1de
-//        4 - ?                    - 0x1d7, 0x1d8, 0x1d9, 0x1da
-//        5 - 2003-12-18aSakexe+   - 0x1ee, 0x1ef, 0x1f0, ?0x1c4, 0x1c5?
-//        6 - 2004-03-02aSakexe+   - 0x1f4, 0x1f5
-//        7 - 2005-04-11aSakexe+   - 0x229, 0x22a, 0x22b, 0x22c
-// see conf/battle/client.conf for other version
-
 #ifndef PACKETVER
-	#define PACKETVER 20151104
-	//#define PACKETVER 20120410
+	#error Please define PACKETVER in src/config/packets.h
 #endif
 
-// Check if the specified packetversion supports the pincode system
-#define PACKETVER_SUPPORTS_PINCODE PACKETVER>=20110309
-
-/// Check if the client needs delete_date as remaining time and not the actual delete_date (actually it was tested for clients since 2013)
-#define PACKETVER_CHAR_DELETEDATE (PACKETVER > 20130000 && PACKETVER <= 20141022) || PACKETVER >= 20150513
-
-// Check if the specified packetvresion supports the cashshop sale system
-#define PACKETVER_SUPPORTS_SALES PACKETVER>=20131223
-
 ///Remove/Comment this line to disable sc_data saving. [Skotlex]
 #define ENABLE_SC_SAVING
 /** Remove/Comment this line to disable server-side hot-key saving support [Skotlex]

+ 0 - 53
src/common/utils.c

@@ -358,59 +358,6 @@ float GetFloat(const unsigned char* buf)
 	return *((float*)(void*)&val);
 }
 
-uint32 date2version(int date) {
-	if(date < 20040906) return 5;
-	else if(date < 20040920) return 10;
-	else if(date < 20041005) return 11;
-	else if(date < 20041025) return 12;
-	else if(date < 20041129) return 13;
-	else if(date < 20050110) return 14;
-	else if(date < 20050509) return 15;
-	else if(date < 20050628) return 16;
-	else if(date < 20050718) return 17;
-	else if(date < 20050719) return 18;
-	else if(date < 20060327) return 19;
-	else if(date < 20070108) return 20;
-	else if(date < 20070212) return 21;
-	//wtf @FIXME
-	//else if(date < 20080910) return 22;
-	else if(date < 20080827) return 23;
-	else if(date < 20080910) return 24;
-	//unable to solve from date
-	else if(date < 20101124) return 25;
-	else if(date < 20111005) return 26;
-	else if(date < 20111102) return 27;
-	else if(date < 20120307) return 28;
-	else if(date < 20120410) return 29;
-	else if(date < 20120418) return 30;
-	else if(date < 20120618) return 31;
-	else if(date < 20120702) return 32;
-	else if(date < 20130320) return 33;
-	else if(date < 20130515) return 34;
-	else if(date < 20130522) return 35;
-	else if(date < 20130529) return 36;
-	else if(date < 20130605) return 37;
-	else if(date < 20130612) return 38;
-	else if(date < 20130618) return 39;
-	else if(date < 20130626) return 40;
-	else if(date < 20130703) return 41;
-	else if(date < 20130710) return 42;
-	else if(date < 20130717) return 43;
-	else if(date < 20130807) return 44;
-	else if(date < 20131223) return 45;
-	else if(date < 20140212) return 46;
-	//else if(date < 20140613) return 47;
-	//else if(date < 20141016) return 48;
-	else if(date < 20141022) return 50;
-	else if(date < 20150513) return 51;
-	else if(date < 20150916) return 52;
-	else if(date < 20151001) return 53;
-	else if(date < 20151104) return 54;
-	else if(date >= 20151104) return 55;
-
-	else return 30; //default
-}
-
 /// calculates the value of A / B, in percent (rounded down)
 unsigned int get_percentage(const unsigned int A, const unsigned int B)
 {

+ 0 - 2
src/common/utils.h

@@ -50,8 +50,6 @@ extern uint32 GetULong(const unsigned char* buf);
 extern int32 GetLong(const unsigned char* buf);
 extern float GetFloat(const unsigned char* buf);
 
-uint32 date2version(int date);
-
 int levenshtein(const char *s1, const char *s2);
 
 #ifdef __cplusplus

+ 5 - 6
src/config/core.h

@@ -8,6 +8,8 @@
  * For detailed guidance on these check http://rathena.org/wiki/SRC/config/
  **/
 
+#include "../custom/defines_pre.h"
+
 /// Max number of items on @autolootid list
 #define AUTOLOOTITEM_SIZE 10
 
@@ -76,12 +78,6 @@
 	#define MAX_CHAR_BILLING 0 // This must be less than MAX_CHARS
 #endif
 
-/// Comment to disable the official packet obfuscation support.
-/// When enabled, make sure there is value for 'packet_keys' of used packet version or
-/// defined 'packet_keys_use' in db/[import/]packet_db.txt.
-/// This requires PACKETVER 2011-08-17 or newer.
-#define PACKET_OBFUSCATION
-
 /// Comment to disable warnings for deprecated script commands
 #define SCRIPT_COMMAND_DEPRECATION
 
@@ -91,6 +87,7 @@
 /**
  * No settings past this point
  **/
+#include "./packets.h"
 #include "./renewal.h"
 #include "./secure.h"
 #include "./classes/general.h"
@@ -100,4 +97,6 @@
  **/
 #include "./const.h"
 
+#include "../custom/defines_post.h"
+
 #endif // _CONFIG_CORE_H_

+ 63 - 0
src/config/packets.h

@@ -0,0 +1,63 @@
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _CONFIG_PACKETS_H_
+#define _CONFIG_PACKETS_H_
+
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/config/
+ **/
+
+#ifndef PACKETVER
+	#define PACKETVER 20151104
+#endif
+
+#ifndef PACKETVER_RE
+	/// From this point on only kRO RE clients are supported
+	#if PACKETVER > 20151104
+		#define PACKETVER_RE
+	#endif
+#endif
+
+#if PACKETVER >= 20110817
+	/// Comment to disable the official packet obfuscation support.
+	/// This requires PACKETVER 2011-08-17 or newer.
+	#ifndef PACKET_OBFUSCATION
+		#define PACKET_OBFUSCATION
+
+		// Define these inside src/custom/defines_pre.h or src/custom/defines_post.h
+		//#define PACKET_OBFUSCATION_KEY1 <key1>
+		//#define PACKET_OBFUSCATION_KEY2 <key2>
+		//#define PACKET_OBFUSCATION_KEY3 <key3>
+
+		/// Comment this to disable warnings for missing client side encryption
+		#define PACKET_OBFUSCATION_WARN
+	#endif
+#else
+	#if defined(PACKET_OBFUSCATION)
+		#error You enabled packet obfuscation for a version which is too old. Minimum supported client is 2011-08-17.
+	#endif
+#endif
+
+#ifndef DUMP_UNKNOWN_PACKET
+	//#define DUMP_UNKNOWN_PACKET
+#endif
+
+#ifndef DUMP_INVALID_PACKET
+	//#define DUMP_INVALID_PACKET
+#endif
+
+/**
+ * No settings past this point
+ **/
+
+/// Check if the specified packetversion supports the pincode system
+#define PACKETVER_SUPPORTS_PINCODE PACKETVER >= 20110309
+
+/// Check if the client needs delete_date as remaining time and not the actual delete_date (actually it was tested for clients since 2013)
+#define PACKETVER_CHAR_DELETEDATE (PACKETVER > 20130000 && PACKETVER <= 20141022) || PACKETVER >= 20150513
+
+/// Check if the specified packetvresion supports the cashshop sale system
+#define PACKETVER_SUPPORTS_SALES PACKETVER >= 20131223
+
+#endif // _CONFIG_PACKETS_H_

+ 13 - 0
src/custom/defines_post.h

@@ -0,0 +1,13 @@
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _CONFIG_CUSTOM_DEFINES_POST_H_
+#define _CONFIG_CUSTOM_DEFINES_POST_H_
+
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/config/
+ **/
+
+
+
+#endif // _CONFIG_CUSTOM_DEFINES_POST_H_

+ 13 - 0
src/custom/defines_pre.h

@@ -0,0 +1,13 @@
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _CONFIG_CUSTOM_DEFINES_PRE_H_
+#define _CONFIG_CUSTOM_DEFINES_PRE_H_
+
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/config/
+ **/
+
+
+
+#endif // _CONFIG_CUSTOM_DEFINES_PRE_H_

+ 0 - 14
src/login/login.cpp

@@ -303,13 +303,6 @@ int login_mmo_auth(struct login_session_data* sd, bool isServer) {
 
 	}
 
-	//Client Version check
-	if( login_config.check_client_version && sd->version != login_config.client_version_to_connect ){
-		ShowNotice("Invalid version (account: '%s', auth_vers: '%d', received version: '%d', ip: %s)\n",
-			sd->userid, login_config.client_version_to_connect, sd->version, ip);
-		return 5;
-	}
-
 	len = strnlen(sd->userid, NAME_LENGTH);
 
 	// Account creation with _M/_F
@@ -591,10 +584,6 @@ bool login_config_read(const char* cfgName, bool normal) {
 			login_config.new_acc_length_limit = (bool)config_switch(w2);
 		else if(!strcmpi(w1, "start_limited_time"))
 			login_config.start_limited_time = atoi(w2);
-		else if(!strcmpi(w1, "check_client_version"))
-			login_config.check_client_version = (bool)config_switch(w2);
-		else if(!strcmpi(w1, "client_version_to_connect"))
-			login_config.client_version_to_connect = strtoul(w2, NULL, 10);
 		else if(!strcmpi(w1, "use_MD5_passwords"))
 			login_config.use_md5_passwds = (bool)config_switch(w2);
 		else if(!strcmpi(w1, "group_id_to_connect"))
@@ -701,9 +690,6 @@ void login_set_defaults() {
 	login_config.use_md5_passwds = false;
 	login_config.group_id_to_connect = -1;
 	login_config.min_group_id_to_connect = -1;
-	login_config.check_client_version = false;
-	login_config.client_version_to_connect = date2version(PACKETVER); //20120410 => 30
-	ShowInfo("loginconfig: client_version_to_connect = %d\n",login_config.client_version_to_connect);
 
 	login_config.ipban = true;
 	login_config.dynamic_pass_failure_ban = true;

+ 0 - 4
src/login/login.h

@@ -46,7 +46,6 @@ struct login_session_data {
 	char lastlogin[24];		///date when last logged, Y-M-D HH:MM:SS
 	uint8 group_id;			///groupid of account
 	uint8 clienttype;		/// ???
-	uint32 version;			///version contained in clientinfo
 
 	uint8 client_hash[16];		///hash of client
 	int has_client_hash;		///client ha sent an hash
@@ -86,8 +85,6 @@ struct Login_Config {
 	bool use_md5_passwds;                           /// work with password hashes instead of plaintext passwords?
 	int group_id_to_connect;                        /// required group id to connect
 	int min_group_id_to_connect;                    /// minimum group id to connect
-	bool check_client_version;                      /// check the clientversion set in the clientinfo ?
-	uint32 client_version_to_connect;               /// the client version needed to connect (if checking is enabled)
 
 	bool ipban;                                     /// perform IP blocking (via contents of `ipbanlist`) ?
 	bool dynamic_pass_failure_ban;                  /// automatic IP blocking due to failed login attempts ?
@@ -143,7 +140,6 @@ struct auth_node {
 	uint32 login_id2;
 	uint32 ip;
 	char sex;
-	uint32 version;
 	uint8 clienttype;
 };
 extern DBMap* auth_db; // uint32 account_id -> struct auth_node*

+ 6 - 8
src/login/loginchrif.c

@@ -96,7 +96,7 @@ int logchrif_parse_reqauth(int fd, int id,char* ip){
 			//ShowStatus("Char-server '%s': authentication of the account %d accepted (ip: %s).\n", server[id].name, account_id, ip);
 
 			// send ack
-			WFIFOHEAD(fd,25);
+			WFIFOHEAD(fd,21);
 			WFIFOW(fd,0) = 0x2713;
 			WFIFOL(fd,2) = account_id;
 			WFIFOL(fd,6) = login_id1;
@@ -104,15 +104,14 @@ int logchrif_parse_reqauth(int fd, int id,char* ip){
 			WFIFOB(fd,14) = sex;
 			WFIFOB(fd,15) = 0;// ok
 			WFIFOL(fd,16) = request_id;
-			WFIFOL(fd,20) = node->version;
-			WFIFOB(fd,24) = node->clienttype;
-			WFIFOSET(fd,25);
+			WFIFOB(fd,20) = node->clienttype;
+			WFIFOSET(fd,21);
 
 			// each auth entry can only be used once
 			idb_remove(auth_db, account_id);
 		}else{// authentication not found
 			ShowStatus("Char-server '%s': authentication of the account %d REFUSED (ip: %s).\n", ch_server[id].name, account_id, ip);
-			WFIFOHEAD(fd,25);
+			WFIFOHEAD(fd,21);
 			WFIFOW(fd,0) = 0x2713;
 			WFIFOL(fd,2) = account_id;
 			WFIFOL(fd,6) = login_id1;
@@ -120,9 +119,8 @@ int logchrif_parse_reqauth(int fd, int id,char* ip){
 			WFIFOB(fd,14) = sex;
 			WFIFOB(fd,15) = 1;// auth failed
 			WFIFOL(fd,16) = request_id;
-			WFIFOL(fd,20) = 0;
-			WFIFOB(fd,24) = 0;
-			WFIFOSET(fd,25);
+			WFIFOB(fd,20) = 0;
+			WFIFOSET(fd,21);
 		}
 	}
 	return 1;

+ 28 - 39
src/login/loginclif.c

@@ -159,7 +159,6 @@ static void logclif_auth_ok(struct login_session_data* sd) {
 	node->login_id2 = sd->login_id2;
 	node->sex = sd->sex;
 	node->ip = ip;
-	node->version = sd->version;
 	node->clienttype = sd->clienttype;
 	idb_put(auth_db, sd->account_id, node);
 	{
@@ -181,7 +180,7 @@ static void logclif_auth_ok(struct login_session_data* sd) {
     3 = Rejected from Server
     4 = You have been blocked by the GM Team
     5 = Your Game's EXE file is not the latest version
-    6 = Your are Prohibited to log in until %s
+    6 = You are prohibited to log in until %s
     7 = Server is jammed due to over populated
     8 = No more accounts may be connected from this company
     9 = MSI_REFUSE_BAN_BY_DBA
@@ -216,37 +215,33 @@ static void logclif_auth_failed(struct login_session_data* sd, int result) {
 	if( (result == 0 || result == 1) && login_config.dynamic_pass_failure_ban )
 		ipban_log(ip); // log failed password attempt
 
-//#if PACKETVER >= 20120000 /* not sure when this started */
-	if( sd->version >= date2version(20120000) ){ /* not sure when this started */
-		WFIFOHEAD(fd,26);
-		WFIFOW(fd,0) = 0x83e;
-		WFIFOL(fd,2) = result;
-		if( result != 6 )
-			memset(WFIFOP(fd,6), '\0', 20);
-		else { // 6 = Your are Prohibited to log in until %s
-			struct mmo_account acc;
-			AccountDB* accounts = login_get_accounts_db();
-			time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
-			timestamp2string(WFIFOCP(fd,6), 20, unban_time, login_config.date_format);
-		}
-		WFIFOSET(fd,26);
+#if PACKETVER >= 20120000 /* not sure when this started */
+	WFIFOHEAD(fd,26);
+	WFIFOW(fd,0) = 0x83e;
+	WFIFOL(fd,2) = result;
+	if( result != 6 )
+		memset(WFIFOP(fd,6), '\0', 20);
+	else { // 6 = You are prohibited to log in until %s
+		struct mmo_account acc;
+		AccountDB* accounts = login_get_accounts_db();
+		time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
+		timestamp2string(WFIFOCP(fd,6), 20, unban_time, login_config.date_format);
 	}
-//#else	
-	else {
-		WFIFOHEAD(fd,23);
-		WFIFOW(fd,0) = 0x6a;
-		WFIFOB(fd,2) = (uint8)result;
-		if( result != 6 )
-			memset(WFIFOP(fd,3), '\0', 20);
-		else { // 6 = Your are Prohibited to log in until %s
-			struct mmo_account acc;
-			AccountDB* accounts = login_get_accounts_db();
-			time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
-			timestamp2string(WFIFOCP(fd,3), 20, unban_time, login_config.date_format);
-		}
-		WFIFOSET(fd,23);
+	WFIFOSET(fd,26);
+#else
+	WFIFOHEAD(fd,23);
+	WFIFOW(fd,0) = 0x6a;
+	WFIFOB(fd,2) = (uint8)result;
+	if( result != 6 )
+		memset(WFIFOP(fd,3), '\0', 20);
+	else { // 6 = You are prohibited to log in until %s
+		struct mmo_account acc;
+		AccountDB* accounts = login_get_accounts_db();
+		time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
+		timestamp2string(WFIFOCP(fd,3), 20, unban_time, login_config.date_format);
 	}
-//#endif	
+	WFIFOSET(fd,23);
+#endif	
 }
 
 /**
@@ -306,7 +301,6 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 		return 0;
 	else {
 		int result;
-		uint32 version;
 		char username[NAME_LENGTH];
 		char password[PASSWD_LENGTH];
 		unsigned char passhash[16];
@@ -320,8 +314,6 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 			size_t uAccLen = strlen(accname);
 			size_t uTokenLen = RFIFOREST(fd) - 0x5C;
 
-			version = RFIFOL(fd,4);
-
 			if(uAccLen > NAME_LENGTH - 1 || uAccLen == 0 || uTokenLen > NAME_LENGTH - 1  || uTokenLen == 0)
 			{
 				logclif_auth_failed(sd, 3);
@@ -334,7 +326,6 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 		}
 		else
 		{
-			version = RFIFOL(fd,2);
 			safestrncpy(username, RFIFOCP(fd,6), NAME_LENGTH);
 			if( israwpass )
 			{
@@ -350,11 +341,10 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 		RFIFOSKIP(fd,RFIFOREST(fd)); // assume no other packet was sent
 
 		sd->clienttype = clienttype;
-		sd->version = version;
 		safestrncpy(sd->userid, username, NAME_LENGTH);
 		if( israwpass )
 		{
-			ShowStatus("Request for connection of %s (ip: %s) version=%d\n", sd->userid, ip,sd->version);
+			ShowStatus("Request for connection of %s (ip: %s)\n", sd->userid, ip);
 			safestrncpy(sd->passwd, password, NAME_LENGTH);
 			if( login_config.use_md5_passwds )
 				MD5_String(sd->passwd, sd->passwd);
@@ -362,7 +352,7 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 		}
 		else
 		{
-			ShowStatus("Request for connection (passwdenc mode) of %s (ip: %s) version=%d\n", sd->userid, ip,sd->version);
+			ShowStatus("Request for connection (passwdenc mode) of %s (ip: %s)\n", sd->userid, ip);
 			bin2hex(sd->passwd, passhash, 16); // raw binary data here!
 			sd->passwdenc = PASSWORDENC;
 		}
@@ -430,7 +420,6 @@ static int logclif_parse_reqcharconnec(int fd, struct login_session_data *sd, ch
 		if( login_config.use_md5_passwds )
 			MD5_String(sd->passwd, sd->passwd);
 		sd->passwdenc = 0;
-		sd->version = login_config.client_version_to_connect; // hack to skip version check
 		server_ip = ntohl(RFIFOL(fd,54));
 		server_port = ntohs(RFIFOW(fd,58));
 		safestrncpy(server_name, RFIFOCP(fd,60), 20);

+ 3 - 7
src/map/atcommand.c

@@ -185,12 +185,12 @@ ACMD_FUNC(send)
 		long num;
 		if(len)
 		{// show packet length
-			sprintf(atcmd_output, msg_txt(sd,904), type, packet_db[sd->packet_ver][type].len); // Packet 0x%x length: %d
+			sprintf(atcmd_output, msg_txt(sd,904), type, packet_db[type].len); // Packet 0x%x length: %d
 			clif_displaymessage(fd, atcmd_output);
 			return 0;
 		}
 
-		len=packet_db[sd->packet_ver][type].len;
+		len=packet_db[type].len;
 		off=2;
 		if(len == 0)
 		{// unknown packet - ERROR
@@ -341,7 +341,7 @@ ACMD_FUNC(send)
 			SKIP_VALUE(message);
 		}
 
-		if(packet_db[sd->packet_ver][type].len == -1)
+		if(packet_db[type].len == -1)
 		{// send dynamic packet
 			WFIFOW(fd,2)=TOW(off);
 			WFIFOSET(fd,off);
@@ -3927,9 +3927,6 @@ ACMD_FUNC(reload) {
 	} else if (strstr(command, "questdb") || strncmp(message, "questdb", 3) == 0) {
 		do_reload_quest();
 		clif_displaymessage(fd, msg_txt(sd,1377)); // Quest database has been reloaded.
-	} else if (strstr(command, "packetdb") || strncmp(message, "packetdb", 4) == 0) {
-		packetdb_readdb(true);
-		clif_displaymessage(fd, msg_txt(sd,1477)); // Packet database has been reloaded.
 	} else if (strstr(command, "instancedb") || strncmp(message, "instancedb", 4) == 0) {
 		instance_reload();
 		clif_displaymessage(fd, msg_txt(sd,516)); // Instance database has been reloaded.
@@ -10085,7 +10082,6 @@ void atcommand_basecommands(void) {
 		ACMD_DEF2("reloadmotd", reload),
 		ACMD_DEF2("reloadquestdb", reload),
 		ACMD_DEF2("reloadmsgconf", reload),
-		ACMD_DEF2("reloadpacketdb", reload),
 		ACMD_DEF2("reloadinstancedb", reload),
 		ACMD_DEF(partysharelvl),
 		ACMD_DEF(mapinfo),

+ 0 - 2
src/map/battle.c

@@ -8194,8 +8194,6 @@ static const struct _battle_data {
 	{ "night_at_start",                     &battle_config.night_at_start,                  0,      0,      1,              },
 	{ "show_mob_info",                      &battle_config.show_mob_info,                   0,      0,      1|2|4,          },
 	{ "ban_hack_trade",                     &battle_config.ban_hack_trade,                  0,      0,      INT_MAX,        },
-	{ "packet_ver_flag",                    &battle_config.packet_ver_flag,                 0x7FFFFFFF,0,   INT_MAX,        },
-	{ "packet_ver_flag2",                   &battle_config.packet_ver_flag2,                0x7FFFFFFF,0,   INT_MAX,        },
 	{ "min_hair_style",                     &battle_config.min_hair_style,                  0,      0,      INT_MAX,        },
 	{ "max_hair_style",                     &battle_config.max_hair_style,                  23,     0,      INT_MAX,        },
 	{ "min_hair_color",                     &battle_config.min_hair_color,                  0,      0,      INT_MAX,        },

+ 0 - 2
src/map/battle.h

@@ -373,8 +373,6 @@ extern struct Battle_Config
 	int day_duration; // added by [Yor]
 	int night_duration; // added by [Yor]
 	int ban_hack_trade; // added by [Yor]
-	int packet_ver_flag; // added by [Yor]
-	int packet_ver_flag2; // expend of packet_ver_flag
 
 	int min_hair_style; // added by [MouseJstr]
 	int max_hair_style; // added by [MouseJstr]

+ 3 - 4
src/map/chrif.c

@@ -36,7 +36,7 @@ static bool char_init_done = false; //server already initialized? Used for Inter
 
 static const int packet_len_table[0x3d] = { // U - used, F - free
 	60, 3,-1,-1,10,-1, 6,-1,	// 2af8-2aff: U->2af8, U->2af9, U->2afa, U->2afb, U->2afc, U->2afd, U->2afe, U->2aff
-	 6,-1,19, 7,-1,39,30, 10,	// 2b00-2b07: U->2b00, U->2b01, U->2b02, U->2b03, U->2b04, U->2b05, U->2b06, U->2b07
+	 6,-1,18, 7,-1,39,30, 10,	// 2b00-2b07: U->2b00, U->2b01, U->2b02, U->2b03, U->2b04, U->2b05, U->2b06, U->2b07
 	 6,30, 10, -1,86, 7,44,34,	// 2b08-2b0f: U->2b08, U->2b09, U->2b0a, U->2b0b, U->2b0c, U->2b0d, U->2b0e, U->2b0f
 	11,10,10, 0,11, -1,266,10,	// 2b10-2b17: U->2b10, U->2b11, U->2b12, F->2b13, U->2b14, U->2b15, U->2b16, U->2b17
 	 2,10, 2,-1,-1,-1, 2, 7,	// 2b18-2b1f: U->2b18, U->2b19, U->2b1a, U->2b1b, U->2b1c, U->2b1d, U->2b1e, U->2b1f
@@ -809,14 +809,13 @@ int chrif_charselectreq(struct map_session_data* sd, uint32 s_ip) {
 
 	chrif_check(-1);
 
-	WFIFOHEAD(char_fd,19);
+	WFIFOHEAD(char_fd,18);
 	WFIFOW(char_fd, 0) = 0x2b02;
 	WFIFOL(char_fd, 2) = sd->bl.id;
 	WFIFOL(char_fd, 6) = sd->login_id1;
 	WFIFOL(char_fd,10) = sd->login_id2;
 	WFIFOL(char_fd,14) = htonl(s_ip);
-	WFIFOB(char_fd,18) = sd->packet_ver;
-	WFIFOSET(char_fd,19);
+	WFIFOSET(char_fd,18);
 
 	return 0;
 }

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 157 - 227
src/map/clif.c


+ 4 - 7
src/map/clif.h

@@ -44,12 +44,12 @@ enum mail_attachment_type;
 enum { // packet DB
 	MIN_PACKET_DB  = 0x064,
 	MAX_PACKET_DB  = 0xAFF,
-	MAX_PACKET_VER = 55,
 	MAX_PACKET_POS = 20,
 };
 
 enum e_packet_ack {
 	ZC_ACK_OPEN_BANKING = 0,
+	ZC_ACK_CLOSE_BANKING,
 	ZC_ACK_BANKING_DEPOSIT,
 	ZC_ACK_BANKING_WITHDRAW,
 	ZC_BANKING_CHECK,
@@ -171,11 +171,9 @@ enum e_party_invite_reply {
 	PARTY_REPLY_INVALID_MAPPROPERTY_ME, ///< return=9 : !TODO "Cannot join a party in this map" -> MsgStringTable[1871] (since 20110205)
 };
 
-// packet_db[SERVER] is reserved for server use
-#define SERVER 0
-#define packet_len(cmd) packet_db[SERVER][cmd].len
-extern struct s_packet_db packet_db[MAX_PACKET_VER+1][MAX_PACKET_DB+1];
-extern int packet_db_ack[MAX_PACKET_VER + 1][MAX_ACK_FUNC + 1];
+#define packet_len(cmd) packet_db[cmd].len
+extern struct s_packet_db packet_db[MAX_PACKET_DB+1];
+extern int packet_db_ack[MAX_ACK_FUNC + 1];
 
 // local define
 typedef enum send_target {
@@ -534,7 +532,6 @@ void clif_setport(uint16 port);
 uint32 clif_getip(void);
 uint32 clif_refresh_ip(void);
 uint16 clif_getport(void);
-void packetdb_readdb(bool reload);
 
 void clif_authok(struct map_session_data *sd);
 void clif_authrefuse(int fd, uint8 error_code);

+ 347 - 0
src/map/clif_obfuscation.h

@@ -0,0 +1,347 @@
+// Copyright (c) Athena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+
+#ifndef _CLIF_OBFUSCATION_H_
+#define _CLIF_OBFUSCATION_H_
+
+	#define packet_keys(a,b,c) static unsigned int clif_cryptKey[] = { a, b, c };
+
+	#if defined(PACKET_OBFUSCATION_KEY1) || defined(PACKET_OBFUSCATION_KEY2) || defined(PACKET_OBFUSCATION_KEY3)
+		#ifndef PACKET_OBFUSCATION_KEY1
+			#error You enabled custom packet obfuscation keys, but did not specify key number 1.
+		#endif
+		#ifndef PACKET_OBFUSCATION_KEY2
+			#error You enabled custom packet obfuscation keys, but did not specify key number 2.
+		#endif
+		#ifndef PACKET_OBFUSCATION_KEY3
+			#error You enabled custom packet obfuscation keys, but did not specify key number 3.
+		#endif
+
+		packet_keys(PACKET_OBFUSCATION_KEY1,PACKET_OBFUSCATION_KEY2,PACKET_OBFUSCATION_KEY3);
+	#elif PACKETVER == 20110817
+		packet_keys(0x053D5CED,0x3DED6DED,0x6DED6DED);
+	#elif PACKETVER == 20110824
+		packet_keys(0x35C91401,0x262A5556,0x28FA03AA);
+	#elif PACKETVER == 20110831
+		packet_keys(0x3AD67ED0,0x44703C69,0x6F876809);
+	#elif PACKETVER == 20110906
+		packet_keys(0x3AD67ED0,0x44703C69,0x6F876809); // unchanged from 2011-08-31
+	#elif PACKETVER == 20111005 // 2011-10-05aRagexeRE
+		packet_keys(0x291E6762,0x77CD391A,0x60AC2F16);
+	#elif PACKETVER == 20111012
+		packet_keys(0x7F3C2D29,0x59B01DE6,0x1DBB44CA);
+	#elif PACKETVER == 20111021
+		packet_keys(0x357D55DC,0x5A8D759F,0x245C30F5);
+	#elif PACKETVER == 20111025
+		packet_keys(0x50AE1A63,0x3CE579B5,0x29C10406);
+	#elif PACKETVER == 20111102 // 2011-11-02aRagexe
+		packet_keys(0x5324329D,0x5D545D52,0x06137269);
+	#elif PACKETVER == 20111109
+		packet_keys(0x0B642BDA,0x6ECB1D1C,0x61C7454B);
+	#elif PACKETVER == 20111122
+		packet_keys(0x3B550F07,0x1F666C7C,0x60304EF5);
+	#elif PACKETVER == 20111207
+		packet_keys(0x2A610886,0x3E09165E,0x57C11888);
+	#elif PACKETVER == 20111214
+		packet_keys(0x5151306B,0x7AE32886,0x53060628);
+	#elif PACKETVER == 20111220
+		packet_keys(0x05D53871,0x7D0027B4,0x29975333);
+	#elif PACKETVER == 20111228
+		packet_keys(0x0FF87E93,0x6CFF7860,0x3A3D1DEC);
+	#elif PACKETVER == 20120104
+		packet_keys(0x262034A1,0x674542A5,0x73A50BA5);
+	#elif PACKETVER == 20120111
+		packet_keys(0x2B412AFC,0x4FF94487,0x6705339D);
+	#elif PACKETVER == 20120120
+		packet_keys(0x504345D0,0x3D427B1B,0x794C2DCC);
+	#elif PACKETVER == 20120202
+		packet_keys(0x2CFC0A71,0x2BA91D8D,0x087E39E0);
+	#elif PACKETVER == 20120207
+		packet_keys(0x1D373F5D,0x5ACD604D,0x1C4D7C4D);
+	#elif PACKETVER == 20120214
+		packet_keys(0x7A255EFA,0x30977276,0x2D4A0448);
+	#elif PACKETVER == 20120229
+		packet_keys(0x520B4C64,0x2800407D,0x47651458);
+	#elif PACKETVER == 20120307 // 2012-03-07fRagexeRE
+		packet_keys(0x382A6DEF,0x5CBE7202,0x61F46637);
+	#elif PACKETVER == 20120314
+		packet_keys(0x689C1729,0x11812639,0x60F82967);
+	#elif PACKETVER == 20120321
+		packet_keys(0x21F9683F,0x710C5CA5,0x1FD910E9);
+	#elif PACKETVER == 20120328
+		packet_keys(0x75B8553B,0x37F20B12,0x385C2B40);
+	#elif PACKETVER == 20120404
+		packet_keys(0x0036310C,0x2DCD0BED,0x1EE62A78);
+	#elif PACKETVER == 20120410 // 2012-04-10aRagexeRE
+		packet_keys(0x01581359,0x452D6FFA,0x6AFB6E2E);
+	#elif PACKETVER == 20120418 // 2012-04-18aRagexeRE
+		packet_keys(0x01540E48,0x13041224,0x31247924);
+	#elif PACKETVER == 20120424
+		packet_keys(0x411D1DBB,0x4CBA4848,0x1A432FC4);
+	#elif PACKETVER == 20120509
+		packet_keys(0x16CF3301,0x1F472B9B,0x0B4A3CD2);
+	#elif PACKETVER == 20120515
+		packet_keys(0x4A715EF9,0x79103E4F,0x405C1238);
+	#elif PACKETVER == 20120525
+		packet_keys(0x70EB4CCB,0x0487713C,0x398D4B08);
+	#elif PACKETVER == 20120605
+		packet_keys(0x68CA3080,0x31B74BDD,0x505208F1);
+	#elif PACKETVER == 20120612
+		packet_keys(0x32E45D64,0x35643564,0x35643564);
+	#elif PACKETVER == 20120618 // 2012-06-18
+		packet_keys(0x261F261F,0x261F261F,0x261F261F);
+	#elif PACKETVER == 20120702 // 2012-07-02aRagexeRE
+		packet_keys(0x25733B31,0x53486CFD,0x398649BD);
+	#elif PACKETVER == 20120716
+		packet_keys(0x76052205,0x22052205,0x22052205);
+	#elif PACKETVER == 20130320 // 2013-03-20Ragexe
+		packet_keys(0x3F094C49,0x55F86C1E,0x58AA359A);
+	#elif PACKETVER == 20130515 // 2013-05-15aRagexe
+		packet_keys(0x75794A38,0x58A96BC1,0x296E6FB8);
+	#elif PACKETVER == 20130522 // 2013-05-22Ragexe
+		packet_keys(0x6948050B,0x06511D9D,0x725D4DF1);
+	#elif PACKETVER == 20130529 // 2013-05-29Ragexe
+		packet_keys(0x023A6C87,0x14BF1F1E,0x5CC70CC9);
+	#elif PACKETVER == 20130605 // 2013-06-05Ragexe
+		packet_keys(0x646E08D9,0x5F153AB5,0x61B509B5);
+	#elif PACKETVER == 20130612 // 2013-06-12Ragexe
+		packet_keys(0x6D166F66,0x3C000FCF,0x295B0FCB);
+	#elif PACKETVER == 20130618 // 2013-06-18Ragexe
+		packet_keys(0x434115DE,0x34A10FE9,0x6791428E);
+	#elif PACKETVER == 20130626 // 2013-06-26Ragexe
+		packet_keys(0x38F453EF,0x6A040FD8,0X65BD6668);
+	#elif PACKETVER == 20130703 // 2013-07-03Ragexe
+		packet_keys(0x4FF90E23,0x0F1432F2,0x4CFA1EDA);
+	#elif PACKETVER == 20130710 // 2013-07-10Ragexe
+		packet_keys(0x458F758F,0x4CCF3F8F,0x4A9C4237);
+	#elif PACKETVER == 20130717 // 2013-07-17Ragexe
+		packet_keys(0x2BED4F91,0x5F9E00CF,0x5EE5520C);
+	#elif PACKETVER == 20130807 // 2013-08-07Ragexe
+		packet_keys(0x7E241DE0,0x5E805580,0x3D807D80);
+	#elif PACKETVER == 20130814
+		packet_keys(0x23A23148,0x0C41420E,0x53785AD7);
+	#elif PACKETVER == 20131218
+		packet_keys(0x6A596301,0x76866D0E,0x32294A45);
+	#elif PACKETVER == 20131223 // 2013-12-23Ragexe
+		packet_keys(0x631C511C,0x111C111C,0x111C111C);
+	#elif PACKETVER == 20131230
+		packet_keys(0x611B7097,0x01F957A1,0x768A0FCB);
+	#elif PACKETVER == 20140115
+		packet_keys(0x63224335,0x0F3A1F27,0x6D217B24);
+	#elif PACKETVER == 20140205
+		packet_keys(0x63DC7BDC,0x7BDC7BDC,0x7BDC7BDC);
+	#elif PACKETVER == 20140305
+		packet_keys(0x116763F2,0x41117DAC,0x7FD13C45);
+	#elif PACKETVER == 20140402
+		packet_keys(0x15D3271C,0x004D725B,0x111A3A37);
+	#elif PACKETVER == 20140416
+		packet_keys(0x04810281,0x42814281,0x42814281);
+	#elif PACKETVER == 20141016 // 2014-10-16Ragexe
+		packet_keys(0x2DFF467C,0x444B37EE,0x2C1B634F);
+	#elif PACKETVER == 20141022 // 2014-10-22bRagexe
+		packet_keys(0x290551EA,0x2B952C75,0x2D67669B);
+	#elif PACKETVER == 20150107 // 2015-01-07aRagexeRE
+		packet_keys(0x6C494A14, 0x4DDB6427, 0x3E6D7B65);
+	#elif PACKETVER == 20150114 // 2015-01-14aRagexe
+		packet_keys(0x21C96102, 0x13142934, 0x1ABF4EA3);
+	#elif PACKETVER == 20150128 // 2015-01-28aRagexe
+		packet_keys(0x77CA2D55,0x28B608F0,0x75B47957);
+	#elif PACKETVER == 20150204 // 2015-02-04aRagexe
+		packet_keys(0x134529DB,0x5B4F6CEF,0x29EF11EF);
+	#elif PACKETVER == 20150225 || PACKETVER == 20150226 // 2015-02-25aRagexeRE or 2015-02-26aRagexeRE
+		packet_keys(0x57FD4B7B,0x19CC16FB,0x0D255D72);
+	#elif PACKETVER == 20150311 // 2015-03-11aRagexeRE
+		packet_keys(0x48C45D97,0x06CE09B0,0x5836642F);
+	#elif PACKETVER == 20150325 // 2015-03-25aRagexe
+		packet_keys(0x68F62B8C, 0x337C3468, 0x38FC0AC7);
+	#elif PACKETVER == 20150401 // 2015-04-01aRagexe
+		packet_keys(0x207F3A08,0x57E6160C,0x02A60382);
+	#elif PACKETVER == 20150422 // 2015-04-22aRagexeRE
+		packet_keys(0x10D22CE2,0x69E279E2,0x79E279E2);
+	#elif PACKETVER == 20150429 // 2015-04-29aRagexe
+		packet_keys(0x2BF61A71,0x565D5DDF,0x0FB90019);
+	#elif PACKETVER == 20150507 // 2015-05-07bRagexe
+		packet_keys(0x55B54373,0x58967821,0x67F41832);
+	#elif PACKETVER == 20150513 // 2015-05-13aRagexe
+		packet_keys(0x62C86D09,0x75944F17,0x112C133D);
+	#elif PACKETVER == 20150527 // 2015-05-27aRagexe
+		packet_keys(0x35AE7BAE,0x3BAE3BAE,0x3BAE3BAE);
+	#elif PACKETVER == 20150617 || PACKETVER == 20150618 // 2015-06-17aRagexeRE or 2015-06-18aRagexeRE
+		packet_keys(0x250F7E09,0x25416076,0x029A780E);
+	#elif PACKETVER == 20150819 // 2015-08-19aRagexeRE
+		packet_keys(0x1A2400E0,0x736E5686,0x10F315D5);
+	#elif PACKETVER == 20150826 // 2015-08-26aRagexeRE
+		packet_keys(0x77883C56,0x1829359F,0x0DE635B6);
+	#elif PACKETVER == 20150916 // 2015-09-16Ragexe
+		packet_keys(0x17F83A19,0x116944F4,0x1CC541E9);
+	#elif PACKETVER == 20151001 // 2015-10-01bRagexeRE
+		packet_keys(0x45B945B9,0x45B945B9,0x45B945B9);
+	#elif PACKETVER == 20151007 // 2015-10-07aRagexeRE
+		packet_keys(0x3C6447A8,0x032170D7,0x6490476C);
+	#elif PACKETVER == 20151014 // 2015-10-14bRagexeRE
+		packet_keys(0x402728A8,0x5D0E309F,0x240018FD);
+	#elif PACKETVER == 20151028 // 2015-10-28cRagexeRE
+		packet_keys(0x45B945B9,0x45B945B9,0x45B945B9);
+	#elif PACKETVER == 20151029 // 2015-10-29aRagexe
+		packet_keys(0x45B945B9,0x45B945B9,0x45B945B9);
+	#elif PACKETVER == 20151104 // 2015-11-04aRagexe
+		packet_keys(0x4C17382A,0x7ED174C9,0x29961E4F);
+	#elif PACKETVER == 20151118 // 2015-11-18aRagexeRE
+		packet_keys(0x734C3241,0x6E846F34,0x731C06D6);
+	#elif PACKETVER == 20151202 // 2015-12-02bRagexeRE
+		packet_keys(0x4EDE52DE,0x52DE52DE,0x52DE52DE);
+	#elif PACKETVER == 20151216 // 2015-12-16aRagexe
+		packet_keys(0x25DD643D,0x61AC39DE,0x77A8206D);
+	#elif PACKETVER == 20151223 // 2015-12-23bRagexeRE
+		packet_keys(0x347D68D0,0x2C705320,0x7B4A199D);
+	#elif PACKETVER == 20160106 // 2016-01-06aRagexeRE
+		packet_keys(0x40520265,0x33FE26FC,0x7136294F);
+	#elif PACKETVER == 20160113 // 2016-01-13cRagexeRE
+		packet_keys(0x18005C4B,0x19A94A72,0x73F678EC);
+	#elif PACKETVER == 20160120 // 2016-01-20aRagexeRE
+		packet_keys(0x51495149,0x51495149,0x51495149);
+	#elif PACKETVER == 20160127 // 2016-01-27bRagexeRE
+		packet_keys(0x6B1E7146,0x612C47E6,0x274E56EE);
+	#elif PACKETVER == 20160203 // 2016-02-03aRagexeRE
+		packet_keys(0x3E1411AF,0x6C744497,0x7CFA1BDE);
+	#elif PACKETVER == 20160211 // 2016-02-11aRagexeRE
+		packet_keys(0x613813EA,0x05251DAB,0x1FD35E33);
+	#elif PACKETVER == 20160217 // 2016-02-17cRagexeRE
+		packet_keys(0x25895A8E,0x09421C19,0x763A2D7A);
+	#elif PACKETVER == 20160224 // 2016-02-24bRagexeRE
+		packet_keys(0x7088019A,0x13471F02,0x42356A7D);
+	#elif PACKETVER == 20160302 // 2016-03-02bRagexeRE
+		packet_keys(0x7B4441B9,0x5BBC63AF,0x45DA0E71);
+	#elif PACKETVER == 20160309 // 2016-03-09aRagexeRE
+		packet_keys(0x21587520,0x353A7706,0x1B722B25);
+	#elif PACKETVER == 20160316 // 2016-03-16aRagexeRE
+		packet_keys(0x62363E36,0x3E363E36,0x3E363E36);
+	#elif PACKETVER == 20160323 // 2016-03-23aRagexeRE
+		packet_keys(0x73E35A83,0x62142FA8,0x12BA36BD);
+	#elif PACKETVER == 20160330 // 2016-03-30aRagexeRE
+		packet_keys(0x02050940,0x545336FF,0x7E7D4902);
+	#elif PACKETVER == 20160406 // 2016-04-06aRagexeRE
+		packet_keys(0x568611EA,0x32457D8D,0x2B020477);
+	#elif PACKETVER == 20160414 // 2016-04-14bRagexeRE
+		packet_keys(0x31BD479A,0x40C61398,0x397C1A80);
+	#elif PACKETVER == 20160420 // 2016-04-20aRagexeRE
+		packet_keys(0x67D2163A,0x3068215B,0x4835474D);
+	#elif PACKETVER == 20160427 // 2016-04-27aRagexeRE
+		packet_keys(0x12DC378E,0x4E3E7EBE,0x0ABE2ABE);
+	#elif PACKETVER == 20160504 // 2016-05-04aRagexeRE
+		packet_keys(0x09E0544C,0x0231251D,0x2F4E195F);
+	#elif PACKETVER == 20160511 // 2016-05-11aRagexeRE
+		packet_keys(0x3C666FE2,0x27E84E3E,0x53E11BA5);
+	#elif PACKETVER == 20160518 // 2016-05-18aRagexeRE
+		packet_keys(0x57DB7CA1,0x1FEA1629,0x26DD244D);
+	#elif PACKETVER == 20160525 // 2016-05-25aRagexeRE
+		packet_keys(0x485C45B6,0x47DC6192,0x76B34A36);
+	#elif PACKETVER == 20160601 // 2016-06-01aRagexeRE
+		packet_keys(0x3DAD32C4,0x59F001BE,0x73F65E56);
+	#elif PACKETVER == 20160608 // 2016-06-08aRagexeRE
+		packet_keys(0x11D74609,0x77C43E8A,0x44290F53);
+	#elif PACKETVER == 20160615 // 2016-06-15aRagexeRE
+		packet_keys(0x062C5C26,0x6CF47E82,0x4DD53480);
+	#elif PACKETVER == 20160622 // 2016-06-22aRagexeRE
+		packet_keys(0x426548AB,0x5C0F5DD4,0x03022710);
+	#elif PACKETVER == 20160630 // 2016-06-30aRagexeRE
+		packet_keys(0x0DF31CCC,0x54281606,0x5C4C6855);
+	#elif PACKETVER == 20160706 // 2016-07-06cRagexeRE
+		packet_keys(0x33A766D0,0x743F04F8,0x0FA0276C);
+	#elif PACKETVER == 20160713 // 2016-07-13bRagexeRE
+		packet_keys(0x714F2495,0x7DDC6F32,0x3FD8533D);
+	#elif PACKETVER == 20160720 // 2016-07-20aRagexeRE
+		packet_keys(0x4F8A19C0,0x2D8E085C,0x37BB67D6);
+	#elif PACKETVER == 20160727 // 2016-07-27bRagexeRE
+		packet_keys(0x3C6952AB,0x26E4077F,0x37E25DF7);
+	#elif PACKETVER == 20160803 // 2016-08-03bRagexeRE
+		packet_keys(0x67F438C2,0x512A4EB7,0x2D353182);
+	#elif PACKETVER == 20160810 // 2016-08-10aRagexeRE
+		packet_keys(0x2F252886,0x242234A2,0x48BC5032);
+	#elif PACKETVER == 20160831 // 2016-08-31bRagexeRE
+		packet_keys(0x564E13B0,0x7F680549,0x382D273B);
+	#elif PACKETVER == 20160907 // 2016-09-07aRagexeRE
+		packet_keys(0x32E5237D,0x57BD4DBD,0x5DBD5DBD);
+	#elif PACKETVER == 20160913 // 2016-09-13aRagexeRE
+		packet_keys(0x7C79748F,0x1AA03B1D,0x6EAC4747);
+	#elif PACKETVER == 20160921 // 2016-09-21bRagexeRE
+		packet_keys(0x11CD15CD,0x15CD15CD,0x15CD15CD);
+	#elif PACKETVER == 20160928 // 2016-09-28dRagexeRE
+		packet_keys(0x2F8C67F5,0x22D42C38,0x57513774);
+	#elif PACKETVER == 20161005 // 2016-10-05aRagexeRE
+		packet_keys(0x5BAE21F8,0x021E2FFC,0x3BEB7C31);
+	#elif PACKETVER == 20161012 // 2016-10-12aRagexeRE
+		packet_keys(0x5E2311F2,0x14FD012C,0x76EB64F6);
+	#elif PACKETVER == 20161019 // 2016-10-19aRagexeRE
+		packet_keys(0x34882F11,0x7C870E70,0x7E61350D);
+	#elif PACKETVER == 20161026 // 2016-10-26bRagexeRE
+		packet_keys(0x2CB86AE6,0x7D12660E,0x1B004DEB);
+	#elif PACKETVER == 20161103 // 2016-11-03aRagexeRE
+		packet_keys(0x76725C17,0x72FE4EC1,0x07A91BFD);
+	#elif PACKETVER == 20161109 // 2016-11-09bRagexeRE
+		packet_keys(0x0A5277C0,0x2DB17506,0x0E8F26DA);
+	#elif PACKETVER == 20161116 // 2016-11-16cRagexeRE
+		packet_keys(0x780C5C3F,0x15E92272,0x2BA770C5);
+	#elif PACKETVER == 20161123 // 2016-11-23aRagexeRE
+		packet_keys(0x66FF559F,0x00D3535B,0x236246F7);
+	#elif PACKETVER == 20161130 // 2016-11-30bRagexeRE
+		packet_keys(0x2ED80296,0x0D837373,0x20266F9A);
+	#elif PACKETVER == 20161207 // 2016-12-07eRagexeRE
+		packet_keys(0x52D267AA,0x4FE42156,0x1292153E);
+	#elif PACKETVER == 20161214 // 2016-12-14bRagexeRE
+		packet_keys(0x4DDE217B,0x07863AE0,0x5B591656);
+	#elif PACKETVER == 20161221 // 2016-12-21aRagexeRE
+		packet_keys(0x69CB4F56,0x793C165E,0x673A2354);
+	#elif PACKETVER == 20161228 // 2016-12-28aRagexeRE
+		packet_keys(0x09366971,0x005672F1,0x6F3712AE);
+	#elif PACKETVER == 20170104 // 2017-01-04bRagexeRE
+		packet_keys(0x44416BC3,0x6C8D1817,0x072D75D5);
+	#elif PACKETVER == 20170111 // 2017-01-11aRagexeRE
+		packet_keys(0x19B637F9,0x0E9C378A,0x41673186);
+	#elif PACKETVER == 20170118 // 2017-01-18aRagexeRE
+		packet_keys(0x456B36EB,0x15EB34B0,0x18C42E43);
+	#elif PACKETVER == 20170125 // 2017-01-25aRagexeRE
+		packet_keys(0x066E04FE,0x3004224A,0x04FF0458);
+	#elif PACKETVER == 20170201 // 2017-02-01aRagexeRE
+		packet_keys(0x2011228E,0x00453005,0x628E7F0A);
+	#elif PACKETVER == 20170208 // 2017-02-08aRagexeRE
+		packet_keys(0x6A764E5F,0x0609570D,0x28AE07FA);
+	#elif PACKETVER == 20170215 // 2017-02-15aRagexeRE
+		packet_keys(0x50C01315,0x51012A42,0x679E16C3);
+	#elif PACKETVER == 20170222 // 2017-02-22aRagexeRE
+		packet_keys(0x5A242F2F,0x6C556187,0x73C022CB);
+	#elif PACKETVER == 20170228 // 2017-02-28aRagexeRE
+		packet_keys(0x771D4F2B,0x20EF1F4C,0x0D5135C8);
+	#elif PACKETVER == 20170308 // 2017-03-08bRagexeRE
+		packet_keys(0x653470A9,0x6B316A71,0x5C712C71);
+	#elif PACKETVER == 20170315 // 2017-03-15cRagexeRE
+		packet_keys(0x399A0856,0x56642A94,0x7F77157D);
+	#elif PACKETVER == 20170322 // 2017-03-22aRagexeRE
+		packet_keys(0x2050167B,0x01731233,0x40337033);
+	#elif PACKETVER == 20170329 // 2017-03-29dRagexeRE
+		packet_keys(0x18B31A80,0x1B0B1D56,0x16857D6A);
+	#elif PACKETVER == 20170405 // 2017-04-05bRagexeRE
+		packet_keys(0x1FDE7DAC,0x2F9F5B63,0x3F2062AF);
+	#elif PACKETVER == 20170412 // 2017-04-12aRagexeRE
+		packet_keys(0x39223393,0x5C847779,0x10217985);
+	#elif PACKETVER == 20170419 // 2017-04-19bRagexeRE
+		packet_keys(0x1F8F4B3F,0x2E481F03,0x39ED4178);
+	#elif PACKETVER == 20170426 // 2017-04-26dRagexeRE
+		packet_keys(0x167642A7,0x1DEC3D26,0x6D046D4C);
+	#elif PACKETVER == 20170502 // 2017-05-02dRagexeRE
+		packet_keys(0x05224194,0x466D4204,0x31F02EE0);
+	#elif PACKETVER == 20170517 // 2017-05-17aRagexeRE
+		packet_keys(0x2CC4749A,0x1FA954DC,0x72276857);
+	#elif PACKETVER == 20170524 // 2017-05-24aRagexeRE
+		packet_keys(0x0B4E03A6,0x2B93427C,0x583D4477);
+	#elif PACKETVER == 20170531 // 2017-05-31aRagexeRE
+		packet_keys(0x03FA5A97,0x20B802D5,0x339F1977);
+	#elif PACKETVER == 20170607 // 2017-06-07cRagexeRE
+		packet_keys(0x50564ACD,0x79CA4E15,0x405F4894);
+	#elif PACKETVER > 20110817
+		#error Unsupported packet version.
+	#endif
+
+	#undef packet_keys
+
+#endif /* _CLIF_OBFUSCATION_H_ */

+ 2308 - 0
src/map/clif_packetdb.h

@@ -0,0 +1,2308 @@
+// Copyright (c) Athena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+
+#ifndef _CLIF_PACKETDB_H_
+#define _CLIF_PACKETDB_H_
+
+	#define packet(cmd,length) packetdb_addpacket(cmd,length,NULL,0)
+	#define parseable_packet(cmd,length,func,...) packetdb_addpacket(cmd,length,func,__VA_ARGS__,0)
+	#define ack_packet(type,cmd,length,...) \
+		packetdb_addpacket(cmd,length,NULL,__VA_ARGS__,0); \
+		packet_db_ack[type] = cmd
+
+	packet(0x0064,55);
+	packet(0x0065,17);
+	packet(0x0066,6);
+	packet(0x0067,37);
+	packet(0x0068,46);
+	packet(0x0069,-1);
+	packet(0x006a,23);
+	packet(0x006b,-1);
+	packet(0x006c,3);
+	packet(0x006d,108);
+	packet(0x006e,3);
+	packet(0x006f,2);
+	packet(0x0070,6);
+	packet(0x0071,28);
+	parseable_packet(0x0072,19,clif_parse_WantToConnection,2,6,10,14,18);
+	packet(0x0073,11);
+	packet(0x0074,3);
+	packet(0x0075,-1);
+	packet(0x0076,9);
+	packet(0x0077,5);
+	packet(0x0078,54);
+	packet(0x0079,53);
+	packet(0x007a,58);
+	packet(0x007b,60);
+	packet(0x007c,41);
+	parseable_packet(0x007d,2,clif_parse_LoadEndAck,0);
+	parseable_packet(0x007e,6,clif_parse_TickSend,2);
+	packet(0x007f,6);
+	packet(0x0080,7);
+	packet(0x0081,3);
+	packet(0x0082,2);
+	packet(0x0083,2);
+	packet(0x0084,2);
+	parseable_packet(0x0085,5,clif_parse_WalkToXY,2);
+	packet(0x0086,16);
+	packet(0x0087,12);
+	packet(0x0088,10);
+	parseable_packet(0x0089,7,clif_parse_ActionRequest,2,6);
+	packet(0x008a,29);
+	packet(0x008b,2);
+	parseable_packet(0x008c,-1,clif_parse_GlobalMessage,2,4);
+	packet(0x008d,-1);
+	packet(0x008e,-1);
+	//packet(0x008f,-1);
+	parseable_packet(0x0090,7,clif_parse_NpcClicked,2,6);
+	packet(0x0091,22);
+	packet(0x0092,28);
+	packet(0x0093,2);
+	parseable_packet(0x0094,6,clif_parse_GetCharNameRequest,2);
+	packet(0x0095,30);
+	parseable_packet(0x0096,-1,clif_parse_WisMessage,2,4,28);
+	packet(0x0097,-1);
+	packet(0x0098,3);
+	parseable_packet(0x0099,-1,clif_parse_Broadcast,2,4);
+	packet(0x009a,-1);
+	parseable_packet(0x009b,5,clif_parse_ChangeDir,2,4);
+	packet(0x009c,9);
+	packet(0x009d,17);
+	packet(0x009e,17);
+	parseable_packet(0x009f,6,clif_parse_TakeItem,2);
+	packet(0x00a0,23);
+	packet(0x00a1,6);
+	parseable_packet(0x00a2,6,clif_parse_DropItem,2,4);
+	packet(0x00a3,-1);
+	packet(0x00a4,-1);
+	packet(0x00a5,-1);
+	packet(0x00a6,-1);
+	parseable_packet(0x00a7,8,clif_parse_UseItem,2,4);
+	packet(0x00a8,7);
+	parseable_packet(0x00a9,6,clif_parse_EquipItem,2,4);
+	ack_packet(ZC_WEAR_EQUIP_ACK,0x00aa,7,2,4,6);
+	parseable_packet(0x00ab,4,clif_parse_UnequipItem,2);
+	packet(0x00ac,7);
+	//packet(0x00ad,-1);
+	packet(0x00ae,-1);
+	packet(0x00af,6);
+	packet(0x00b0,8);
+	packet(0x00b1,8);
+	parseable_packet(0x00b2,3,clif_parse_Restart,2);
+	packet(0x00b3,3);
+	packet(0x00b4,-1);
+	packet(0x00b5,6);
+	packet(0x00b6,6);
+	packet(0x00b7,-1);
+	parseable_packet(0x00b8,7,clif_parse_NpcSelectMenu,2,6);
+	parseable_packet(0x00b9,6,clif_parse_NpcNextClicked,2);
+	packet(0x00ba,2);
+	parseable_packet(0x00bb,5,clif_parse_StatusUp,2,4);
+	packet(0x00bc,6);
+	packet(0x00bd,44);
+	packet(0x00be,5);
+	parseable_packet(0x00bf,3,clif_parse_Emotion,2);
+	packet(0x00c0,7);
+	parseable_packet(0x00c1,2,clif_parse_HowManyConnections,0);
+	packet(0x00c2,6);
+	packet(0x00c3,8);
+	packet(0x00c4,6);
+	parseable_packet(0x00c5,7,clif_parse_NpcBuySellSelected,2,6);
+	packet(0x00c6,-1);
+	packet(0x00c7,-1);
+	parseable_packet(0x00c8,-1,clif_parse_NpcBuyListSend,2,4);
+	parseable_packet(0x00c9,-1,clif_parse_NpcSellListSend,2,4);
+	packet(0x00ca,3);
+	packet(0x00cb,3);
+	parseable_packet(0x00cc,6,clif_parse_GMKick,2);
+	packet(0x00cd,3);
+	parseable_packet(0x00ce,2,clif_parse_GMKickAll,0);
+	parseable_packet(0x00cf,27,clif_parse_PMIgnore,2,26);
+	parseable_packet(0x00d0,3,clif_parse_PMIgnoreAll,2);
+	packet(0x00d1,4);
+	packet(0x00d2,4);
+	parseable_packet(0x00d3,2,clif_parse_PMIgnoreList,0);
+	packet(0x00d4,-1);
+	parseable_packet(0x00d5,-1,clif_parse_CreateChatRoom,2,4,6,7,15);
+	packet(0x00d6,3);
+	packet(0x00d7,-1);
+	packet(0x00d8,6);
+	parseable_packet(0x00d9,14,clif_parse_ChatAddMember,2,6);
+	packet(0x00da,3);
+	packet(0x00db,-1);
+	packet(0x00dc,28);
+	packet(0x00dd,29);
+	parseable_packet(0x00de,-1,clif_parse_ChatRoomStatusChange,2,4,6,7,15);
+	packet(0x00df,-1);
+	parseable_packet(0x00e0,30,clif_parse_ChangeChatOwner,2,6);
+	packet(0x00e1,30);
+	parseable_packet(0x00e2,26,clif_parse_KickFromChat,2);
+	parseable_packet(0x00e3,2,clif_parse_ChatLeave,0);
+	parseable_packet(0x00e4,6,clif_parse_TradeRequest,2);
+	packet(0x00e5,26);
+	parseable_packet(0x00e6,3,clif_parse_TradeAck,2);
+	packet(0x00e7,3);
+	parseable_packet(0x00e8,8,clif_parse_TradeAddItem,2,4);
+	packet(0x00e9,19);
+	packet(0x00ea,5);
+	parseable_packet(0x00eb,2,clif_parse_TradeOk,0);
+	packet(0x00ec,3);
+	parseable_packet(0x00ed,2,clif_parse_TradeCancel,0);
+	packet(0x00ee,2);
+	parseable_packet(0x00ef,2,clif_parse_TradeCommit,0);
+	packet(0x00f0,3);
+	packet(0x00f1,2);
+	packet(0x00f2,6);
+	parseable_packet(0x00f3,8,clif_parse_MoveToKafra,2,4);
+	packet(0x00f4,21);
+	parseable_packet(0x00f5,8,clif_parse_MoveFromKafra,2,4);
+	packet(0x00f6,8);
+	parseable_packet(0x00f7,2,clif_parse_CloseKafra,0);
+	packet(0x00f8,2);
+	parseable_packet(0x00f9,26,clif_parse_CreateParty,2);
+	packet(0x00fa,3);
+	packet(0x00fb,-1);
+	parseable_packet(0x00fc,6,clif_parse_PartyInvite,2);
+	packet(0x00fd,27);
+	packet(0x00fe,30);
+	parseable_packet(0x00ff,10,clif_parse_ReplyPartyInvite,2,6);
+	parseable_packet(0x0100,2,clif_parse_LeaveParty,0);
+	packet(0x0101,6);
+	parseable_packet(0x0102,6,clif_parse_PartyChangeOption,2);
+	parseable_packet(0x0103,30,clif_parse_RemovePartyMember,2,6);
+	packet(0x0104,79);
+	packet(0x0105,31);
+	packet(0x0106,10);
+	packet(0x0107,10);
+	parseable_packet(0x0108,-1,clif_parse_PartyMessage,2,4);
+	packet(0x0109,-1);
+	packet(0x010a,4);
+	packet(0x010b,6);
+	packet(0x010c,6);
+	packet(0x010d,2);
+	packet(0x010e,11);
+	packet(0x010f,-1);
+	packet(0x0110,10);
+	packet(0x0111,39);
+	parseable_packet(0x0112,4,clif_parse_SkillUp,2);
+	parseable_packet(0x0113,10,clif_parse_UseSkillToId,2,4,6);
+	packet(0x0114,31);
+	packet(0x0115,35);
+	parseable_packet(0x0116,10,clif_parse_UseSkillToPos,2,4,6,8);
+	packet(0x0117,18);
+	parseable_packet(0x0118,2,clif_parse_StopAttack,0);
+	packet(0x0119,13);
+	packet(0x011a,15);
+	parseable_packet(0x011b,20,clif_parse_UseSkillMap,2,4);
+	packet(0x011c,68);
+	parseable_packet(0x011d,2,clif_parse_RequestMemo,0);
+	packet(0x011e,3);
+	packet(0x011f,16);
+	packet(0x0120,6);
+	packet(0x0121,14);
+	packet(0x0122,-1);
+	packet(0x0123,-1);
+	packet(0x0124,21);
+	packet(0x0125,8);
+	parseable_packet(0x0126,8,clif_parse_PutItemToCart,2,4);
+	parseable_packet(0x0127,8,clif_parse_GetItemFromCart,2,4);
+	parseable_packet(0x0128,8,clif_parse_MoveFromKafraToCart,2,4);
+	parseable_packet(0x0129,8,clif_parse_MoveToKafraFromCart,2,4);
+	parseable_packet(0x012a,2,clif_parse_RemoveOption,0);
+	packet(0x012b,2);
+	packet(0x012c,3);
+	packet(0x012d,4);
+	parseable_packet(0x012e,2,clif_parse_CloseVending,0);
+	parseable_packet(0x012f,-1,clif_parse_OpenVending,2,4,0,84);
+	parseable_packet(0x0130,6,clif_parse_VendingListReq,2);
+	packet(0x0131,86);
+	packet(0x0132,6);
+	packet(0x0133,-1);
+	parseable_packet(0x0134,-1,clif_parse_PurchaseReq,2,4,8);
+	packet(0x0135,7);
+	packet(0x0136,-1);
+	packet(0x0137,6);
+	packet(0x0138,3);
+	packet(0x0139,16);
+	packet(0x013a,4);
+	packet(0x013b,4);
+	packet(0x013c,4);
+	packet(0x013d,6);
+	packet(0x013e,24);
+	parseable_packet(0x013f,26,clif_parse_GM_Item_Monster,2);
+	parseable_packet(0x0140,22,clif_parse_MapMove,2,18,20);
+	packet(0x0141,14);
+	packet(0x0142,6);
+	parseable_packet(0x0143,10,clif_parse_NpcAmountInput,2,6);
+	packet(0x0144,23);
+	packet(0x0145,19);
+	parseable_packet(0x0146,6,clif_parse_NpcCloseClicked,2);
+	packet(0x0147,39);
+	packet(0x0148,8);
+	parseable_packet(0x0149,9,clif_parse_GMReqNoChat,2,6,7);
+	packet(0x014a,6);
+	packet(0x014b,27);
+	packet(0x014c,-1);
+	parseable_packet(0x014d,2,clif_parse_GuildCheckMaster,0);
+	packet(0x014e,6);
+	parseable_packet(0x014f,6,clif_parse_GuildRequestInfo,2);
+	packet(0x0150,110);
+	parseable_packet(0x0151,6,clif_parse_GuildRequestEmblem,2);
+	packet(0x0152,-1);
+	parseable_packet(0x0153,-1,clif_parse_GuildChangeEmblem,2,4);
+	packet(0x0154,-1);
+	parseable_packet(0x0155,-1,clif_parse_GuildChangeMemberPosition,2,4);
+	packet(0x0156,-1);
+	packet(0x0157,6);
+	packet(0x0158,-1);
+	parseable_packet(0x0159,54,clif_parse_GuildLeave,2,6,10,14);
+	packet(0x015a,66);
+	parseable_packet(0x015b,54,clif_parse_GuildExpulsion,2,6,10,14);
+	packet(0x015c,90);
+	parseable_packet(0x015d,42,clif_parse_GuildBreak,2);
+	packet(0x015e,6);
+	packet(0x015f,42);
+	packet(0x0160,-1);
+	parseable_packet(0x0161,-1,clif_parse_GuildChangePositionInfo,2,4);
+	packet(0x0162,-1);
+	packet(0x0163,-1);
+	packet(0x0164,-1);
+	parseable_packet(0x0165,30,clif_parse_CreateGuild,2,6);
+	packet(0x0166,-1);
+	packet(0x0167,3);
+	parseable_packet(0x0168,14,clif_parse_GuildInvite,2,6,10);
+	packet(0x0169,3);
+	packet(0x016a,30);
+	parseable_packet(0x016b,10,clif_parse_GuildReplyInvite,2,6);
+	packet(0x016c,43);
+	packet(0x016d,14);
+	parseable_packet(0x016e,186,clif_parse_GuildChangeNotice,2,6,66);
+	packet(0x016f,182);
+	parseable_packet(0x0170,14,clif_parse_GuildRequestAlliance,2,6,10);
+	packet(0x0171,30);
+	parseable_packet(0x0172,10,clif_parse_GuildReplyAlliance,2,6);
+	packet(0x0173,3);
+	packet(0x0174,-1);
+	packet(0x0175,6);
+	packet(0x0176,106);
+	packet(0x0177,-1);
+	parseable_packet(0x0178,4,clif_parse_ItemIdentify,2);
+	packet(0x0179,5);
+	parseable_packet(0x017a,4,clif_parse_UseCard,2);
+	packet(0x017b,-1);
+	parseable_packet(0x017c,6,clif_parse_InsertCard,2,4);
+	packet(0x017d,7);
+	parseable_packet(0x017e,-1,clif_parse_GuildMessage,2,4);
+	packet(0x017f,-1);
+	parseable_packet(0x0180,6,clif_parse_GuildOpposition,2);
+	packet(0x0181,3);
+	packet(0x0182,106);
+	parseable_packet(0x0183,10,clif_parse_GuildDelAlliance,2,6);
+	packet(0x0184,10);
+	packet(0x0185,34);
+	//packet(0x0186,-1);
+	packet(0x0187,6);
+	packet(0x0188,8);
+	packet(0x0189,4);
+	parseable_packet(0x018a,4,clif_parse_QuitGame,2);
+	packet(0x018b,4);
+	packet(0x018c,29);
+	packet(0x018d,-1);
+	parseable_packet(0x018e,10,clif_parse_ProduceMix,2,4,6,8);
+	packet(0x018f,6);
+	parseable_packet(0x0190,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	packet(0x0191,86);
+	packet(0x0192,24);
+	parseable_packet(0x0193,6,clif_parse_SolveCharName,2);
+	packet(0x0194,30);
+	packet(0x0195,102);
+	packet(0x0196,9);
+	parseable_packet(0x0197,4,clif_parse_ResetChar,2);
+	parseable_packet(0x0198,8,clif_parse_GMChangeMapType,2,4,6);
+	packet(0x0199,4);
+	packet(0x019a,14);
+	packet(0x019b,10);
+	parseable_packet(0x019c,-1,clif_parse_LocalBroadcast,2,4);
+	parseable_packet(0x019d,6,clif_parse_GMHide,2);
+	packet(0x019e,2);
+	parseable_packet(0x019f,6,clif_parse_CatchPet,2);
+	packet(0x01a0,3);
+	parseable_packet(0x01a1,3,clif_parse_PetMenu,2);
+	packet(0x01a2,35);
+	packet(0x01a3,5);
+	packet(0x01a4,11);
+	parseable_packet(0x01a5,26,clif_parse_ChangePetName,2);
+	packet(0x01a6,-1);
+	parseable_packet(0x01a7,4,clif_parse_SelectEgg,2);
+	packet(0x01a8,4);
+	parseable_packet(0x01a9,6,clif_parse_SendEmotion,2);
+	packet(0x01aa,10);
+	packet(0x01ab,12);
+	packet(0x01ac,6);
+	packet(0x01ad,-1);
+	parseable_packet(0x01ae,4,clif_parse_SelectArrow,2);
+	parseable_packet(0x01af,4,clif_parse_ChangeCart,2);
+	packet(0x01b0,11);
+	packet(0x01b1,7);
+	parseable_packet(0x01b2,-1,clif_parse_OpenVending,2,4,84,85);
+	packet(0x01b3,67);
+	packet(0x01b4,12);
+	packet(0x01b5,18);
+	packet(0x01b6,114);
+	packet(0x01b7,6);
+	packet(0x01b8,3);
+	packet(0x01b9,6);
+	parseable_packet(0x01ba,26,clif_parse_GMShift,2);
+	parseable_packet(0x01bb,26,clif_parse_GMShift,2);
+	parseable_packet(0x01bc,26,clif_parse_GMRecall,2);
+	parseable_packet(0x01bd,26,clif_parse_GMRecall,2);
+	packet(0x01be,2);
+	packet(0x01bf,3);
+	packet(0x01c0,2);
+	packet(0x01c1,14);
+	packet(0x01c2,10);
+	packet(0x01c3,-1);
+	packet(0x01c4,22);
+	packet(0x01c5,22);
+	packet(0x01c6,4);
+	packet(0x01c7,2);
+	packet(0x01c8,13);
+	packet(0x01c9,97);
+	//packet(0x01ca,-1);
+	packet(0x01cb,9);
+	packet(0x01cc,9);
+	packet(0x01cd,30);
+	parseable_packet(0x01ce,6,clif_parse_AutoSpell,2);
+	packet(0x01cf,28);
+	packet(0x01d0,8);
+	packet(0x01d1,14);
+	packet(0x01d2,10);
+	packet(0x01d3,35);
+	packet(0x01d4,6);
+	parseable_packet(0x01d5,-1,clif_parse_NpcStringInput,2,4,8);
+	packet(0x01d6,4);
+	packet(0x01d7,11);
+	packet(0x01d8,54);
+	packet(0x01d9,53);
+	packet(0x01da,60);
+	packet(0x01db,2);
+	packet(0x01dc,-1);
+	packet(0x01dd,47);
+	packet(0x01de,33);
+	parseable_packet(0x01df,6,clif_parse_GMReqAccountName,2);
+	packet(0x01e0,30);
+	packet(0x01e1,8);
+	packet(0x01e2,34);
+	packet(0x01e3,14);
+	packet(0x01e4,2);
+	packet(0x01e5,6);
+	packet(0x01e6,26);
+	parseable_packet(0x01e7,2,clif_parse_NoviceDoriDori,0);
+	parseable_packet(0x01e8,28,clif_parse_CreateParty2,2,26,27);
+	packet(0x01e9,81);
+	packet(0x01ea,6);
+	packet(0x01eb,10);
+	packet(0x01ec,26);
+	parseable_packet(0x01ed,2,clif_parse_NoviceExplosionSpirits,0);
+	packet(0x01ee,-1);
+	packet(0x01ef,-1);
+	packet(0x01f0,-1);
+	packet(0x01f1,-1);
+	packet(0x01f2,20);
+	packet(0x01f3,10);
+	packet(0x01f4,32);
+	packet(0x01f5,9);
+	packet(0x01f6,34);
+	parseable_packet(0x01f7,14,clif_parse_Adopt_reply,2,6,10);
+	packet(0x01f8,2);
+	parseable_packet(0x01f9,6,clif_parse_Adopt_request,2);
+	packet(0x01fa,48);
+	packet(0x01fb,56);
+	packet(0x01fc,-1);
+	parseable_packet(0x01fd,4,clif_parse_RepairItem,2);
+	packet(0x01fe,5);
+	packet(0x01ff,10);
+	packet(0x0200,26);
+	packet(0x0201,-1);
+	parseable_packet(0x0202,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0203,10,clif_parse_FriendsListRemove,2,6);
+	packet(0x0204,18);
+	packet(0x0205,26);
+	packet(0x0206,11);
+	packet(0x0207,34);
+	parseable_packet(0x0208,11,clif_parse_FriendsListReply,2,6,10);
+	packet(0x0209,36);
+	packet(0x020a,10);
+	//packet(0x020b,-1);
+	//packet(0x020c,-1);
+	packet(0x020d,-1);
+	packet(0x8b3,-1);
+	ack_packet(ZC_CLEAR_DIALOG,0x8d6,6,2);
+
+// 2004-07-05aSakexe
+#if PACKETVER >= 20040705
+	parseable_packet(0x0072,22,clif_parse_WantToConnection,5,9,13,17,21);
+	parseable_packet(0x0085,8,clif_parse_WalkToXY,5);
+	parseable_packet(0x00a7,13,clif_parse_UseItem,5,9);
+	parseable_packet(0x0113,15,clif_parse_UseSkillToId,4,9,11);
+	parseable_packet(0x0116,15,clif_parse_UseSkillToPos,4,9,11,13);
+	parseable_packet(0x0190,95,clif_parse_UseSkillToPosMoreInfo,4,9,11,13,15);
+	parseable_packet(0x0208,14,clif_parse_FriendsListReply,2,6,10);
+	packet(0x020e,24);
+#endif
+
+// 2004-07-13aSakexe
+#if PACKETVER >= 20040713
+	parseable_packet(0x0072,39,clif_parse_WantToConnection,12,22,30,34,38);
+	parseable_packet(0x0085,9,clif_parse_WalkToXY,6);
+	parseable_packet(0x009b,13,clif_parse_ChangeDir,5,12);
+	parseable_packet(0x009f,10,clif_parse_TakeItem,6);
+	parseable_packet(0x00a7,17,clif_parse_UseItem,6,13);
+	parseable_packet(0x0113,19,clif_parse_UseSkillToId,7,9,15);
+	parseable_packet(0x0116,19,clif_parse_UseSkillToPos,7,9,15,17);
+	parseable_packet(0x0190,99,clif_parse_UseSkillToPosMoreInfo,7,9,15,17,19);
+#endif
+
+// 2004-07-26aSakexe
+#if PACKETVER >= 20040726
+	parseable_packet(0x0072,14,clif_parse_DropItem,5,12);
+	parseable_packet(0x007e,33,clif_parse_WantToConnection,12,18,24,28,32);
+	parseable_packet(0x0085,20,clif_parse_UseSkillToId,7,12,16);
+	parseable_packet(0x0089,15,clif_parse_GetCharNameRequest,11);
+	parseable_packet(0x008c,23,clif_parse_UseSkillToPos,3,6,17,21);
+	parseable_packet(0x0094,10,clif_parse_TakeItem,6);
+	parseable_packet(0x009b,6,clif_parse_WalkToXY,3);
+	parseable_packet(0x009f,13,clif_parse_ChangeDir,5,12);
+	parseable_packet(0x00a2,103,clif_parse_UseSkillToPosMoreInfo,3,6,17,21,23);
+	parseable_packet(0x00a7,12,clif_parse_SolveCharName,8);
+	parseable_packet(0x00f3,-1,clif_parse_GlobalMessage,2,4);
+	parseable_packet(0x00f5,17,clif_parse_UseItem,6,12);
+	parseable_packet(0x00f7,10,clif_parse_TickSend,6);
+	parseable_packet(0x0113,16,clif_parse_MoveToKafra,5,12);
+	parseable_packet(0x0116,2,clif_parse_CloseKafra,0);
+	parseable_packet(0x0190,26,clif_parse_MoveFromKafra,10,22);
+	parseable_packet(0x0193,9,clif_parse_ActionRequest,3,8);
+#endif
+
+// 2004-08-09aSakexe
+#if PACKETVER >= 20040809
+	parseable_packet(0x0072,17,clif_parse_DropItem,8,15);
+	parseable_packet(0x007e,37,clif_parse_WantToConnection,9,21,28,32,36);
+	parseable_packet(0x0085,26,clif_parse_UseSkillToId,11,18,22);
+	parseable_packet(0x0089,12,clif_parse_GetCharNameRequest,8);
+	parseable_packet(0x008c,40,clif_parse_UseSkillToPos,5,15,29,38);
+	parseable_packet(0x0094,13,clif_parse_TakeItem,9);
+	parseable_packet(0x009b,15,clif_parse_WalkToXY,12);
+	parseable_packet(0x009f,12,clif_parse_ChangeDir,7,11);
+	parseable_packet(0x00a2,120,clif_parse_UseSkillToPosMoreInfo,5,15,29,38,40);
+	parseable_packet(0x00a7,11,clif_parse_SolveCharName,7);
+	parseable_packet(0x00f5,24,clif_parse_UseItem,9,20);
+	parseable_packet(0x00f7,13,clif_parse_TickSend,9);
+	parseable_packet(0x0113,23,clif_parse_MoveToKafra,5,19);
+	parseable_packet(0x0190,26,clif_parse_MoveFromKafra,11,22);
+	parseable_packet(0x0193,18,clif_parse_ActionRequest,7,17);
+#endif
+
+// 2004-08-16aSakexe
+#if PACKETVER >= 20040816
+	parseable_packet(0x0212,26,clif_parse_GMRc,2);
+	parseable_packet(0x0213,26,clif_parse_Check,2);
+	packet(0x0214,42);
+#endif
+
+// 2004-08-17aSakexe
+#if PACKETVER >= 20040817
+	parseable_packet(0x020f,10,clif_parse_PVPInfo,2,6);
+	packet(0x0210,22);
+#endif
+
+// 2004-09-06aSakexe
+#if PACKETVER >= 20040906
+	parseable_packet(0x0072,20,clif_parse_UseItem,9,20);
+	parseable_packet(0x007e,19,clif_parse_MoveToKafra,3,15);
+	parseable_packet(0x0085,23,clif_parse_ActionRequest,9,22);
+	parseable_packet(0x0089,9,clif_parse_WalkToXY,6);
+	parseable_packet(0x008c,105,clif_parse_UseSkillToPosMoreInfo,10,14,18,23,25);
+	parseable_packet(0x0094,17,clif_parse_DropItem,6,15);
+	parseable_packet(0x009b,14,clif_parse_GetCharNameRequest,10);
+	parseable_packet(0x009f,-1,clif_parse_GlobalMessage,2,4);
+	parseable_packet(0x00a2,14,clif_parse_SolveCharName,10);
+	parseable_packet(0x00a7,25,clif_parse_UseSkillToPos,10,14,18,23);
+	parseable_packet(0x00f3,10,clif_parse_ChangeDir,4,9);
+	parseable_packet(0x00f5,34,clif_parse_WantToConnection,7,15,25,29,33);
+	parseable_packet(0x00f7,2,clif_parse_CloseKafra,0);
+	parseable_packet(0x0113,11,clif_parse_TakeItem,7);
+	parseable_packet(0x0116,11,clif_parse_TickSend,7);
+	parseable_packet(0x0190,22,clif_parse_UseSkillToId,9,15,18);
+	parseable_packet(0x0193,17,clif_parse_MoveFromKafra,3,13);
+#endif
+
+// 2004-09-20aSakexe
+#if PACKETVER >= 20040920
+	parseable_packet(0x0072,18,clif_parse_UseItem,10,14);
+	parseable_packet(0x007e,25,clif_parse_MoveToKafra,6,21);
+	parseable_packet(0x0085,9,clif_parse_ActionRequest,3,8);
+	parseable_packet(0x0089,14,clif_parse_WalkToXY,11);
+	parseable_packet(0x008c,109,clif_parse_UseSkillToPosMoreInfo,16,20,23,27,29);
+	parseable_packet(0x0094,19,clif_parse_DropItem,12,17);
+	parseable_packet(0x009b,10,clif_parse_GetCharNameRequest,6);
+	parseable_packet(0x00a2,10,clif_parse_SolveCharName,6);
+	parseable_packet(0x00a7,29,clif_parse_UseSkillToPos,6,20,23,27);
+	parseable_packet(0x00f3,18,clif_parse_ChangeDir,8,17);
+	parseable_packet(0x00f5,32,clif_parse_WantToConnection,10,17,23,27,31);
+	parseable_packet(0x0113,14,clif_parse_TakeItem,10);
+	parseable_packet(0x0116,14,clif_parse_TickSend,10);
+	parseable_packet(0x0190,14,clif_parse_UseSkillToId,4,7,10);
+	parseable_packet(0x0193,12,clif_parse_MoveFromKafra,4,8);
+#endif
+
+// 2004-10-05aSakexe
+#if PACKETVER >= 20041005
+	parseable_packet(0x0072,17,clif_parse_UseItem,6,13);
+	parseable_packet(0x007e,16,clif_parse_MoveToKafra,5,12);
+	parseable_packet(0x0089,6,clif_parse_WalkToXY,3);
+	parseable_packet(0x008c,103,clif_parse_UseSkillToPosMoreInfo,2,6,17,21,23);
+	parseable_packet(0x0094,14,clif_parse_DropItem,5,12);
+	parseable_packet(0x009b,15,clif_parse_GetCharNameRequest,11);
+	parseable_packet(0x00a2,12,clif_parse_SolveCharName,8);
+	parseable_packet(0x00a7,23,clif_parse_UseSkillToPos,3,6,17,21);
+	parseable_packet(0x00f3,13,clif_parse_ChangeDir,5,12);
+	parseable_packet(0x00f5,33,clif_parse_WantToConnection,12,18,24,28,32);
+	parseable_packet(0x0113,10,clif_parse_TakeItem,6);
+	parseable_packet(0x0116,10,clif_parse_TickSend,6);
+	parseable_packet(0x0190,20,clif_parse_UseSkillToId,7,12,16);
+	parseable_packet(0x0193,26,clif_parse_MoveFromKafra,10,22);
+#endif
+
+// 2004-10-25aSakexe
+#if PACKETVER >= 20041025
+	parseable_packet(0x0072,13,clif_parse_UseItem,5,9);
+	parseable_packet(0x007e,13,clif_parse_MoveToKafra,6,9);
+	parseable_packet(0x0085,15,clif_parse_ActionRequest,4,14);
+	parseable_packet(0x008c,108,clif_parse_UseSkillToPosMoreInfo,6,9,23,26,28);
+	parseable_packet(0x0094,12,clif_parse_DropItem,6,10);
+	parseable_packet(0x009b,10,clif_parse_GetCharNameRequest,6);
+	parseable_packet(0x00a2,16,clif_parse_SolveCharName,12);
+	parseable_packet(0x00a7,28,clif_parse_UseSkillToPos,6,9,23,26);
+	parseable_packet(0x00f3,15,clif_parse_ChangeDir,6,14);
+	parseable_packet(0x00f5,29,clif_parse_WantToConnection,5,14,20,24,28);
+	parseable_packet(0x0113,9,clif_parse_TakeItem,5);
+	parseable_packet(0x0116,9,clif_parse_TickSend,5);
+	parseable_packet(0x0190,26,clif_parse_UseSkillToId,4,10,22);
+	parseable_packet(0x0193,22,clif_parse_MoveFromKafra,12,18);
+#endif
+
+// 2004-11-01aSakexe
+#if PACKETVER >= 20041101
+	packet(0x0084,-1);
+	packet(0x0215,6);
+#endif
+
+// 2004-11-08aSakexe
+#if PACKETVER >= 20041108
+	packet(0x0084,2);
+	packet(0x0216,6);
+	parseable_packet(0x0217,2,clif_parse_Blacksmith,0);
+	parseable_packet(0x0218,2,clif_parse_Alchemist,0);
+	packet(0x0219,282);
+	packet(0x021a,282);
+	packet(0x021b,10);
+	packet(0x021c,10);
+#endif
+
+// 2004-11-15aSakexe
+#if PACKETVER >= 20041115
+	parseable_packet(0x021d,6,clif_parse_LessEffect,2);
+#endif
+
+// 2004-11-29aSakexe
+#if PACKETVER >= 20041129
+	parseable_packet(0x0072,22,clif_parse_UseSkillToId,8,12,18);
+	parseable_packet(0x007e,30,clif_parse_UseSkillToPos,4,9,22,28);
+	parseable_packet(0x0085,-1,clif_parse_GlobalMessage,2,4);
+	parseable_packet(0x0089,7,clif_parse_TickSend,3);
+	parseable_packet(0x008c,13,clif_parse_GetCharNameRequest,9);
+	parseable_packet(0x0094,14,clif_parse_MoveToKafra,4,10);
+	parseable_packet(0x009b,2,clif_parse_CloseKafra,0);
+	parseable_packet(0x009f,18,clif_parse_ActionRequest,6,17);
+	parseable_packet(0x00a2,7,clif_parse_TakeItem,3);
+	parseable_packet(0x00a7,7,clif_parse_WalkToXY,4);
+	parseable_packet(0x00f3,8,clif_parse_ChangeDir,3,7);
+	parseable_packet(0x00f5,29,clif_parse_WantToConnection,3,10,20,24,28);
+	parseable_packet(0x00f7,14,clif_parse_SolveCharName,10);
+	parseable_packet(0x0113,110,clif_parse_UseSkillToPosMoreInfo,4,9,22,28,30);
+	parseable_packet(0x0116,12,clif_parse_DropItem,4,10);
+	parseable_packet(0x0190,15,clif_parse_UseItem,3,11);
+	parseable_packet(0x0193,21,clif_parse_MoveFromKafra,4,17);
+	packet(0x0221,-1);
+	parseable_packet(0x0222,6,clif_parse_WeaponRefine,2);
+	packet(0x0223,8);
+#endif
+
+// 2004-12-13aSakexe
+#if PACKETVER >= 20041213
+	//skipped: many packets being set to -1
+	packet(0x0066,3);
+	packet(0x0070,3);
+	packet(0x01ca,3);
+	packet(0x021e,6);
+	packet(0x021f,66);
+	packet(0x0220,10);
+#endif
+
+// 2005-01-10bSakexe
+#if PACKETVER >= 20050110
+	parseable_packet(0x0072,26,clif_parse_UseSkillToId,8,16,22);
+	parseable_packet(0x007e,114,clif_parse_UseSkillToPosMoreInfo,10,18,22,32,34);
+	parseable_packet(0x0085,23,clif_parse_ChangeDir,12,22);
+	parseable_packet(0x0089,9,clif_parse_TickSend,5);
+	parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
+	parseable_packet(0x0094,20,clif_parse_MoveToKafra,10,16);
+	parseable_packet(0x009b,32,clif_parse_WantToConnection,3,12,23,27,31);
+	parseable_packet(0x009f,17,clif_parse_UseItem,5,13);
+	parseable_packet(0x00a2,11,clif_parse_SolveCharName,7);
+	parseable_packet(0x00a7,13,clif_parse_WalkToXY,10);
+	parseable_packet(0x00f3,-1,clif_parse_GlobalMessage,2,4);
+	parseable_packet(0x00f5,9,clif_parse_TakeItem,5);
+	parseable_packet(0x00f7,21,clif_parse_MoveFromKafra,11,17);
+	parseable_packet(0x0113,34,clif_parse_UseSkillToPos,10,18,22,32);
+	parseable_packet(0x0116,20,clif_parse_DropItem,15,18);
+	parseable_packet(0x0190,20,clif_parse_ActionRequest,9,19);
+	parseable_packet(0x0193,2,clif_parse_CloseKafra,0);
+#endif
+
+// 2005-03-28aSakexe
+#if PACKETVER >= 20050328
+	packet(0x0224,10);
+	parseable_packet(0x0225,2,clif_parse_Taekwon,0);
+	packet(0x0226,282);
+#endif
+
+// 2005-04-04aSakexe
+#if PACKETVER >= 20050404
+	packet(0x0227,18);
+	packet(0x0228,18);
+#endif
+
+// 2005-04-11aSakexe
+#if PACKETVER >= 20050411
+	packet(0x0229,15);
+	packet(0x022a,58);
+	packet(0x022b,57);
+	packet(0x022c,64);
+#endif
+
+// 2005-04-25aSakexe
+#if PACKETVER >= 20050425
+	parseable_packet(0x022d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0232,9,clif_parse_HomMoveTo,2,6);
+	parseable_packet(0x0233,11,clif_parse_HomAttack,2,6,10);
+	parseable_packet(0x0234,6,clif_parse_HomMoveToMaster,2);
+#endif
+
+// 2005-05-09aSakexe
+#if PACKETVER >= 20050509
+	parseable_packet(0x0072,25,clif_parse_UseSkillToId,6,10,21);
+	parseable_packet(0x007e,102,clif_parse_UseSkillToPosMoreInfo,5,9,12,20,22);
+	parseable_packet(0x0085,11,clif_parse_ChangeDir,7,10);
+	parseable_packet(0x0089,8,clif_parse_TickSend,4);
+	parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
+	parseable_packet(0x0094,14,clif_parse_MoveToKafra,7,10);
+	parseable_packet(0x009b,26,clif_parse_WantToConnection,4,9,17,21,25);
+	parseable_packet(0x009f,14,clif_parse_UseItem,4,10);
+	parseable_packet(0x00a2,15,clif_parse_SolveCharName,11);
+	parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
+	parseable_packet(0x00f5,8,clif_parse_TakeItem,4);
+	parseable_packet(0x00f7,22,clif_parse_MoveFromKafra,14,18);
+	parseable_packet(0x0113,22,clif_parse_UseSkillToPos,5,9,12,20);
+	parseable_packet(0x0116,10,clif_parse_DropItem,5,8);
+	parseable_packet(0x0190,19,clif_parse_ActionRequest,5,18);
+#endif
+
+// 2005-05-23aSakexe
+#if PACKETVER >= 20050523
+	packet(0x022e,69);
+	packet(0x0230,12);
+#endif
+
+// 2005-05-30aSakexe
+#if PACKETVER >= 20050530
+	packet(0x022e,71);
+	packet(0x0235,-1);
+	packet(0x0236,10);
+	parseable_packet(0x0237,2,clif_parse_RankingPk,0);
+	packet(0x0238,282);
+#endif
+
+// 2005-05-31aSakexe
+#if PACKETVER >= 20050531
+	packet(0x0216,2);
+	packet(0x0239,11);
+#endif
+
+// 2005-06-08aSakexe
+#if PACKETVER >= 20050608
+	packet(0x0216,6);
+	parseable_packet(0x0217,2,clif_parse_Blacksmith,0);
+	packet(0x022f,5);
+	parseable_packet(0x0231,26,clif_parse_ChangeHomunculusName,2);
+	packet(0x023a,4);
+	parseable_packet(0x023b,36,clif_parse_StoragePassword,2,4,20);
+	packet(0x023c,6);
+#endif
+
+// 2005-06-22aSakexe
+#if PACKETVER >= 20050622
+	packet(0x022e,71);
+#endif
+
+// 2005-06-28aSakexe
+#if PACKETVER >= 20050628
+	parseable_packet(0x0072,34,clif_parse_UseSkillToId,6,17,30);
+	parseable_packet(0x007e,113,clif_parse_UseSkillToPosMoreInfo,12,15,18,31,33);
+	parseable_packet(0x0085,17,clif_parse_ChangeDir,8,16);
+	parseable_packet(0x0089,13,clif_parse_TickSend,9);
+	parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
+	parseable_packet(0x0094,31,clif_parse_MoveToKafra,16,27);
+	parseable_packet(0x009b,32,clif_parse_WantToConnection,9,15,23,27,31);
+	parseable_packet(0x009f,19,clif_parse_UseItem,9,15);
+	parseable_packet(0x00a2,9,clif_parse_SolveCharName,5);
+	parseable_packet(0x00a7,11,clif_parse_WalkToXY,8);
+	parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
+	parseable_packet(0x00f7,18,clif_parse_MoveFromKafra,11,14);
+	parseable_packet(0x0113,33,clif_parse_UseSkillToPos,12,15,18,31);
+	parseable_packet(0x0116,12,clif_parse_DropItem,3,10);
+	parseable_packet(0x0190,24,clif_parse_ActionRequest,11,23);
+	packet(0x0216,-1);
+	packet(0x023d,-1);
+	packet(0x023e,4);
+#endif
+
+// 2005-07-18aSakexe
+#if PACKETVER >= 20050718
+	parseable_packet(0x0072,19,clif_parse_UseSkillToId,5,11,15);
+	parseable_packet(0x007e,110,clif_parse_UseSkillToPosMoreInfo,9,15,23,28,30);
+	parseable_packet(0x0085,11,clif_parse_ChangeDir,6,10);
+	parseable_packet(0x0089,7,clif_parse_TickSend,3);
+	parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
+	parseable_packet(0x0094,21,clif_parse_MoveToKafra,12,17);
+	parseable_packet(0x009b,31,clif_parse_WantToConnection,3,13,22,26,30);
+	parseable_packet(0x009f,12,clif_parse_UseItem,3,8);
+	parseable_packet(0x00a2,18,clif_parse_SolveCharName,14);
+	parseable_packet(0x00a7,15,clif_parse_WalkToXY,12);
+	parseable_packet(0x00f5,7,clif_parse_TakeItem,3);
+	parseable_packet(0x00f7,13,clif_parse_MoveFromKafra,5,9);
+	parseable_packet(0x0113,30,clif_parse_UseSkillToPos,9,15,23,28);
+	parseable_packet(0x0116,12,clif_parse_DropItem,6,10);
+	parseable_packet(0x0190,21,clif_parse_ActionRequest,5,20);
+	packet(0x0216,6);
+	parseable_packet(0x023f,2,clif_parse_Mail_refreshinbox,0);
+	packet(0x0240,8);
+	parseable_packet(0x0241,6,clif_parse_Mail_read,2);
+	packet(0x0242,-1);
+	parseable_packet(0x0243,6,clif_parse_Mail_delete,2);
+	parseable_packet(0x0244,6,clif_parse_Mail_getattach,2);
+	packet(0x0245,7);
+	parseable_packet(0x0246,4,clif_parse_Mail_winopen,2);
+	parseable_packet(0x0247,8,clif_parse_Mail_setattach,2,4);
+	packet(0x0248,68);
+	packet(0x0249,3);
+	packet(0x024a,70);
+	parseable_packet(0x024b,4,clif_parse_Auction_cancelreg,2);
+	parseable_packet(0x024c,8,clif_parse_Auction_setitem,2,4);
+	packet(0x024d,14);
+	parseable_packet(0x024e,6,clif_parse_Auction_cancel,2);
+	parseable_packet(0x024f,10,clif_parse_Auction_bid,2,6);
+	packet(0x0250,3);
+	packet(0x0251,2);
+	packet(0x0252,-1);
+#endif
+
+// 2005-07-19bSakexe
+#if PACKETVER >= 20050719
+	parseable_packet(0x0072,34,clif_parse_UseSkillToId,6,17,30);
+	parseable_packet(0x007e,113,clif_parse_UseSkillToPosMoreInfo,12,15,18,31,33);
+	parseable_packet(0x0085,17,clif_parse_ChangeDir,8,16);
+	parseable_packet(0x0089,13,clif_parse_TickSend,9);
+	parseable_packet(0x008c,8,clif_parse_GetCharNameRequest,4);
+	parseable_packet(0x0094,31,clif_parse_MoveToKafra,16,27);
+	parseable_packet(0x009b,32,clif_parse_WantToConnection,9,15,23,27,31);
+	parseable_packet(0x009f,19,clif_parse_UseItem,9,15);
+	parseable_packet(0x00a2,9,clif_parse_SolveCharName,5);
+	parseable_packet(0x00a7,11,clif_parse_WalkToXY,8);
+	parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
+	parseable_packet(0x00f7,18,clif_parse_MoveFromKafra,11,14);
+	parseable_packet(0x0113,33,clif_parse_UseSkillToPos,12,15,18,31);
+	parseable_packet(0x0116,12,clif_parse_DropItem,3,10);
+	parseable_packet(0x0190,24,clif_parse_ActionRequest,11,23);
+#endif
+
+// 2005-08-01aSakexe
+#if PACKETVER >= 20050801
+	packet(0x0245,3);
+	packet(0x0251,4);
+#endif
+
+// 2005-08-08aSakexe
+#if PACKETVER >= 20050808
+	parseable_packet(0x024d,12,clif_parse_Auction_register,2,6,10);
+	packet(0x024e,4);
+#endif
+
+// 2005-08-17aSakexe
+#if PACKETVER >= 20050817
+	packet(0x0253,3);
+	parseable_packet(0x0254,3,clif_parse_FeelSaveOk,2);
+#endif
+
+// 2005-08-29aSakexe
+#if PACKETVER >= 20050829
+	packet(0x0240,-1);
+	parseable_packet(0x0248,-1,clif_parse_Mail_send,2,4,28,68,69);
+	packet(0x0255,5);
+	packet(0x0256,-1);
+	packet(0x0257,8);
+#endif
+
+// 2005-09-12bSakexe
+#if PACKETVER >= 20050912
+	packet(0x0256,5);
+	packet(0x0258,2);
+	packet(0x0259,3);
+#endif
+
+// 2005-10-10aSakexe
+#if PACKETVER >= 20051010
+	packet(0x020e,32);
+	packet(0x025a,-1);
+	parseable_packet(0x025b,6,clif_parse_Cooking,2,4);
+#endif
+
+// 2005-10-13aSakexe
+#if PACKETVER >= 20051013
+	packet(0x007a,6);
+	packet(0x0251,32);
+	parseable_packet(0x025c,4,clif_parse_Auction_buysell,2);
+#endif
+
+// 2005-10-17aSakexe
+#if PACKETVER >= 20051017
+	packet(0x007a,58);
+	parseable_packet(0x025d,6,clif_parse_Auction_close,2);
+	packet(0x025e,4);
+#endif
+
+// 2005-10-24aSakexe
+#if PACKETVER >= 20051024
+	packet(0x025f,6);
+	packet(0x0260,6);
+#endif
+
+// 2005-11-07aSakexe
+#if PACKETVER >= 20051107
+	parseable_packet(0x024e,6,clif_parse_Auction_cancel,2);
+	parseable_packet(0x0251,34,clif_parse_Auction_search,2,4,8,32);
+#endif
+
+// 2006-01-09aSakexe
+#if PACKETVER >= 20060109
+	packet(0x0261,11);
+	packet(0x0262,11);
+	packet(0x0263,11);
+	packet(0x0264,20);
+	packet(0x0265,20);
+	packet(0x0266,30);
+	packet(0x0267,4);
+	packet(0x0268,4);
+	packet(0x0269,4);
+	packet(0x026a,4);
+	packet(0x026b,4);
+	packet(0x026c,4);
+	packet(0x026d,4);
+	packet(0x026f,2);
+	packet(0x0270,2);
+	packet(0x0271,38);
+	packet(0x0272,44);
+#endif
+
+// 2006-01-26aSakexe
+#if PACKETVER >= 20060126
+	packet(0x0271,40);
+#endif
+
+// 2006-03-06aSakexe
+#if PACKETVER >= 20060306
+	packet(0x0273,6);
+	packet(0x0274,8);
+#endif
+
+// 2006-03-13aSakexe
+#if PACKETVER >= 20060313
+	parseable_packet(0x0273,30,clif_parse_Mail_return,2,6);
+#endif
+
+// 2006-03-27aSakexe
+#if PACKETVER >= 20060327
+	parseable_packet(0x0072,26,clif_parse_UseSkillToId,11,18,22);
+	parseable_packet(0x007e,120,clif_parse_UseSkillToPosMoreInfo,5,15,29,38,40);
+	parseable_packet(0x0085,12,clif_parse_ChangeDir,7,11);
+	//parseable_packet(0x0089,13,clif_parse_TickSend,9);
+	parseable_packet(0x008c,12,clif_parse_GetCharNameRequest,8);
+	parseable_packet(0x0094,23,clif_parse_MoveToKafra,5,19);
+	parseable_packet(0x009b,37,clif_parse_WantToConnection,9,21,28,32,36);
+	parseable_packet(0x009f,24,clif_parse_UseItem,9,20);
+	parseable_packet(0x00a2,11,clif_parse_SolveCharName,7);
+	parseable_packet(0x00a7,15,clif_parse_WalkToXY,12);
+	parseable_packet(0x00f5,13,clif_parse_TakeItem,9);
+	parseable_packet(0x00f7,26,clif_parse_MoveFromKafra,11,22);
+	parseable_packet(0x0113,40,clif_parse_UseSkillToPos,5,15,29,38);
+	parseable_packet(0x0116,17,clif_parse_DropItem,8,15);
+	parseable_packet(0x0190,18,clif_parse_ActionRequest,7,17);
+#endif
+
+// 2006-10-23aSakexe
+#if PACKETVER >= 20061023
+	packet(0x006d,110);
+#endif
+
+//2006-04-24aSakexe to 2007-01-02aSakexe
+#if PACKETVER >= 20060424
+	packet(0x023e,8);
+	packet(0x0277,84);
+	packet(0x0278,2);
+	packet(0x0279,2);
+	packet(0x027a,-1);
+	packet(0x027b,14);
+	packet(0x027c,60);
+	packet(0x027d,62);
+	packet(0x027e,-1);
+	packet(0x027f,8);
+	packet(0x0280,12);
+	packet(0x0281,4);
+	packet(0x0282,284);
+	packet(0x0283,6);
+	packet(0x0284,14);
+	packet(0x0285,6);
+	packet(0x0286,4);
+	packet(0x0287,-1);
+	packet(0x0288,6);
+	packet(0x0289,8);
+	packet(0x028a,18);
+	packet(0x028b,-1);
+	packet(0x028c,46);
+	packet(0x028d,34);
+	packet(0x028e,4);
+	packet(0x028f,6);
+	packet(0x0290,4);
+	packet(0x0291,4);
+	parseable_packet(0x0292,2,clif_parse_AutoRevive,0);
+	packet(0x0293,70);
+	packet(0x0294,10);
+	packet(0x0295,-1);
+	packet(0x0296,-1);
+	packet(0x0297,-1);
+	packet(0x0298,8);
+	packet(0x0299,6);
+	packet(0x029a,27);
+	packet(0x029c,66);
+	packet(0x029d,-1);
+	packet(0x029e,11);
+	parseable_packet(0x029f,3,clif_parse_mercenary_action,2);
+	packet(0x02a0,-1);
+	packet(0x02a1,-1);
+	packet(0x02a2,8);
+#endif
+
+// 2007-01-08aSakexe
+#if PACKETVER >= 20070108
+	parseable_packet(0x0072,30,clif_parse_UseSkillToId,10,14,26);
+	parseable_packet(0x007e,120,clif_parse_UseSkillToPosMoreInfo,10,19,23,38,40);
+	parseable_packet(0x0085,14,clif_parse_ChangeDir,10,13);
+	parseable_packet(0x0089,11,clif_parse_TickSend,7);
+	parseable_packet(0x008c,17,clif_parse_GetCharNameRequest,13);
+	parseable_packet(0x0094,17,clif_parse_MoveToKafra,4,13);
+	parseable_packet(0x009b,35,clif_parse_WantToConnection,7,21,26,30,34);
+	parseable_packet(0x009f,21,clif_parse_UseItem,7,17);
+	parseable_packet(0x00a2,10,clif_parse_SolveCharName,6);
+	parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
+	parseable_packet(0x00f5,11,clif_parse_TakeItem,7);
+	parseable_packet(0x00f7,15,clif_parse_MoveFromKafra,3,11);
+	parseable_packet(0x0113,40,clif_parse_UseSkillToPos,10,19,23,38);
+	parseable_packet(0x0116,19,clif_parse_DropItem,11,17);
+	parseable_packet(0x0190,10,clif_parse_ActionRequest,4,9);
+#endif
+
+// 2007-01-22aSakexe
+#if PACKETVER >= 20070122
+	packet(0x02a3,18);
+	packet(0x02a4,2);
+#endif
+
+// 2007-01-29aSakexe
+#if PACKETVER >= 20070129
+	packet(0x029b,72);
+	packet(0x02a3,-1);
+	packet(0x02a4,-1);
+	packet(0x02a5,8);
+#endif
+
+// 2007-02-05aSakexe
+#if PACKETVER >= 20070205
+	packet(0x02aa,4);
+	packet(0x02ab,36);
+	packet(0x02ac,6);
+#endif
+
+// 2007-02-12aSakexe
+#if PACKETVER >= 20070212
+	parseable_packet(0x0072,25,clif_parse_UseSkillToId,6,10,21);
+	parseable_packet(0x007e,102,clif_parse_UseSkillToPosMoreInfo,5,9,12,20,22);
+	parseable_packet(0x0085,11,clif_parse_ChangeDir,7,10);
+	parseable_packet(0x0089,8,clif_parse_TickSend,4);
+	parseable_packet(0x008c,11,clif_parse_GetCharNameRequest,7);
+	parseable_packet(0x0094,14,clif_parse_MoveToKafra,7,10);
+	parseable_packet(0x009b,26,clif_parse_WantToConnection,4,9,17,21,25);
+	parseable_packet(0x009f,14,clif_parse_UseItem,4,10);
+	parseable_packet(0x00a2,15,clif_parse_SolveCharName,11);
+	//parseable_packet(0x00a7,8,clif_parse_WalkToXY,5);
+	parseable_packet(0x00f5,8,clif_parse_TakeItem,4);
+	parseable_packet(0x00f7,22,clif_parse_MoveFromKafra,14,18);
+	parseable_packet(0x0113,22,clif_parse_UseSkillToPos,5,9,12,20);
+	parseable_packet(0x0116,10,clif_parse_DropItem,5,8);
+	parseable_packet(0x0190,19,clif_parse_ActionRequest,5,18);
+#endif
+
+// 2007-05-07aSakexe
+#if PACKETVER >= 20070507
+	parseable_packet(0x01fd,15,clif_parse_RepairItem,2,4,6,7,9,11,13);
+#endif
+
+// 2007-02-27aSakexe to 2007-10-02aSakexe
+#if PACKETVER >= 20070227
+	parseable_packet(0x0288,10,clif_parse_cashshop_buy,2,4,6);
+	packet(0x0289,12);
+	packet(0x02a6,22);
+	packet(0x02a7,22);
+	packet(0x02a8,162);
+	packet(0x02a9,58);
+	packet(0x02ad,8);
+	packet(0x02b0,85);
+	packet(0x02b1,-1);
+	packet(0x02b2,-1);
+	packet(0x02b3,107);
+	packet(0x02b4,6);
+	packet(0x02b5,-1);
+	parseable_packet(0x02b6,7,clif_parse_questStateAck,2,6);
+	packet(0x02b7,7);
+	packet(0x02b8,22);
+	packet(0x02b9,191);
+	parseable_packet(0x02ba,11,clif_parse_Hotkey,2,4,5,9);
+	packet(0x02bb,8);
+	packet(0x02bc,6);
+	packet(0x02bf,10);
+	packet(0x02c0,2);
+	packet(0x02c1,-1);
+	packet(0x02c2,-1);
+	parseable_packet(0x02c4,26,clif_parse_PartyInvite2,2);
+	packet(0x02c5,30);
+	packet(0x02c6,30);
+	parseable_packet(0x02c7,7,clif_parse_ReplyPartyInvite2,2,6);
+	parseable_packet(0x02c8,3,clif_parse_PartyTick,2);
+	packet(0x02c9,3);
+	packet(0x02ca,3);
+	packet(0x02cb,20);
+	packet(0x02cc,4);
+	packet(0x02cd,26);
+	packet(0x02ce,10);
+	packet(0x02cf,6);
+	packet(0x02d0,-1);
+	packet(0x02d1,-1);
+	packet(0x02d2,-1);
+	ack_packet(ZC_NOTIFY_BIND_ON_EQUIP,0x02d3,4,2);
+	packet(0x02d4,29);
+	packet(0x02d5,2);
+	parseable_packet(0x02d6,6,clif_parse_ViewPlayerEquip,2);
+	packet(0x02d7,-1);
+	parseable_packet(0x02d8,10,clif_parse_EquipTick,2,6);
+	packet(0x02d9,10);
+	packet(0x02da,3);
+	parseable_packet(0x02db,-1,clif_parse_BattleChat,2,4);
+	packet(0x02dc,-1);
+	packet(0x02dd,32);
+	packet(0x02de,6);
+	packet(0x02df,36);
+	packet(0x02e0,34);
+#endif
+
+// 2007-10-23aSakexe
+#if PACKETVER >= 20071023
+	packet(0x02cb,65);
+	packet(0x02cd,71);
+#endif
+
+// 2007-11-06aSakexe
+#if PACKETVER >= 20071106
+	packet(0x0078,55);
+	packet(0x007c,42);
+	packet(0x022c,65);
+	packet(0x029b,80);
+#endif
+
+// 2007-11-13aSakexe
+#if PACKETVER >= 20071113
+	packet(0x02e1,33);
+#endif
+
+// 2007-11-20aSakexe
+#if PACKETVER >= 20071120
+	//packet(0x01df,10 <- ???);
+	packet(0x02e2,14);
+	packet(0x02e3,25);
+	packet(0x02e4,8);
+	packet(0x02e5,8);
+	packet(0x02e6,6);
+#endif
+
+// 2007-11-27aSakexe
+#if PACKETVER >= 20071127
+	packet(0x02e7,-1);
+#endif
+
+// 2008-01-02aSakexe
+#if PACKETVER >= 20080102
+	parseable_packet(0x01df,6,clif_parse_GMReqAccountName,2);
+	packet(0x02e8,-1);
+	packet(0x02e9,-1);
+	packet(0x02ea,-1);
+	packet(0x02eb,13);
+	packet(0x02ec,67);
+	packet(0x02ed,59);
+	packet(0x02ee,60);
+	packet(0x02ef,8);
+#endif
+
+// 2008-03-18aSakexe
+#if PACKETVER >= 20080318
+	packet(0x02bf,-1);
+	packet(0x02c0,-1);
+	packet(0x02f0,10);
+	parseable_packet(0x02f1,2,clif_parse_progressbar,0);
+	packet(0x02f2,2);
+#endif
+
+// 2008-03-25bSakexe
+#if PACKETVER >= 20080325
+	packet(0x02f3,-1);
+	packet(0x02f4,-1);
+	packet(0x02f5,-1);
+	packet(0x02f6,-1);
+	packet(0x02f7,-1);
+	packet(0x02f8,-1);
+	packet(0x02f9,-1);
+	packet(0x02fa,-1);
+	packet(0x02fb,-1);
+	packet(0x02fc,-1);
+	packet(0x02fd,-1);
+	packet(0x02fe,-1);
+	packet(0x02ff,-1);
+	packet(0x0300,-1);
+#endif
+
+// 2008-04-01aSakexe
+#if PACKETVER >= 20080401
+	packet(0x0301,-1);
+	packet(0x0302,-1);
+	packet(0x0303,-1);
+	packet(0x0304,-1);
+	packet(0x0305,-1);
+	packet(0x0306,-1);
+	packet(0x0307,-1);
+	packet(0x0308,-1);
+	packet(0x0309,-1);
+	packet(0x030a,-1);
+	packet(0x030b,-1);
+	packet(0x030c,-1);
+	packet(0x030d,-1);
+	packet(0x030e,-1);
+	packet(0x030f,-1);
+	packet(0x0310,-1);
+	packet(0x0311,-1);
+	packet(0x0312,-1);
+	packet(0x0313,-1);
+	packet(0x0314,-1);
+	packet(0x0315,-1);
+	packet(0x0316,-1);
+	packet(0x0317,-1);
+	packet(0x0318,-1);
+	packet(0x0319,-1);
+	packet(0x031a,-1);
+	packet(0x031b,-1);
+	packet(0x031c,-1);
+	packet(0x031d,-1);
+	packet(0x031e,-1);
+	packet(0x031f,-1);
+	packet(0x0320,-1);
+	packet(0x0321,-1);
+	packet(0x0322,-1);
+	packet(0x0323,-1);
+	packet(0x0324,-1);
+	packet(0x0325,-1);
+	packet(0x0326,-1);
+	packet(0x0327,-1);
+	packet(0x0328,-1);
+	packet(0x0329,-1);
+	packet(0x032a,-1);
+	packet(0x032b,-1);
+	packet(0x032c,-1);
+	packet(0x032d,-1);
+	packet(0x032e,-1);
+	packet(0x032f,-1);
+	packet(0x0330,-1);
+	packet(0x0331,-1);
+	packet(0x0332,-1);
+	packet(0x0333,-1);
+	packet(0x0334,-1);
+	packet(0x0335,-1);
+	packet(0x0336,-1);
+	packet(0x0337,-1);
+	packet(0x0338,-1);
+	packet(0x0339,-1);
+	packet(0x033a,-1);
+	packet(0x033b,-1);
+	packet(0x033c,-1);
+	packet(0x033d,-1);
+	packet(0x033e,-1);
+	packet(0x033f,-1);
+	packet(0x0340,-1);
+	packet(0x0341,-1);
+	packet(0x0342,-1);
+	packet(0x0343,-1);
+	packet(0x0344,-1);
+	packet(0x0345,-1);
+	packet(0x0346,-1);
+	packet(0x0347,-1);
+	packet(0x0348,-1);
+	packet(0x0349,-1);
+	packet(0x034a,-1);
+	packet(0x034b,-1);
+	packet(0x034c,-1);
+	packet(0x034d,-1);
+	packet(0x034e,-1);
+	packet(0x034f,-1);
+	packet(0x0350,-1);
+	packet(0x0351,-1);
+	packet(0x0352,-1);
+	packet(0x0353,-1);
+	packet(0x0354,-1);
+	packet(0x0355,-1);
+	packet(0x0356,-1);
+	packet(0x0357,-1);
+	packet(0x0358,-1);
+	packet(0x0359,-1);
+	packet(0x035a,-1);
+#endif
+
+// 2008-05-27aSakexe
+#if PACKETVER >= 20080527
+	packet(0x035b,-1);
+	packet(0x035c,2);
+	packet(0x035d,-1);
+	packet(0x035e,2);
+	packet(0x035f,-1);
+	packet(0x0389,-1);
+#endif
+
+// 2008-08-20aSakexe
+#if PACKETVER >= 20080820
+	packet(0x040c,-1);
+	packet(0x040d,-1);
+	packet(0x040e,-1);
+	packet(0x040f,-1);
+	packet(0x0410,-1);
+	packet(0x0411,-1);
+	packet(0x0412,-1);
+	packet(0x0413,-1);
+	packet(0x0414,-1);
+	packet(0x0415,-1);
+	packet(0x0416,-1);
+	packet(0x0417,-1);
+	packet(0x0418,-1);
+	packet(0x0419,-1);
+	packet(0x041a,-1);
+	packet(0x041b,-1);
+	packet(0x041c,-1);
+	packet(0x041d,-1);
+	packet(0x041e,-1);
+	packet(0x041f,-1);
+	packet(0x0420,-1);
+	packet(0x0421,-1);
+	packet(0x0422,-1);
+	packet(0x0423,-1);
+	packet(0x0424,-1);
+	packet(0x0425,-1);
+	packet(0x0426,-1);
+	packet(0x0427,-1);
+	packet(0x0428,-1);
+	packet(0x0429,-1);
+	packet(0x042a,-1);
+	packet(0x042b,-1);
+	packet(0x042c,-1);
+	packet(0x042d,-1);
+	packet(0x042e,-1);
+	packet(0x042f,-1);
+	packet(0x0430,-1);
+	packet(0x0431,-1);
+	packet(0x0432,-1);
+	packet(0x0433,-1);
+	packet(0x0434,-1);
+	packet(0x0435,-1);
+#endif
+
+// 2008-09-10aSakexe
+#if PACKETVER >= 20080910
+	parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0437,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
+#endif
+
+// 2008-11-13aSakexe
+#if PACKETVER >= 20081113
+	packet(0x043d,8);
+	packet(0x043e,-1);
+	packet(0x043f,8);
+#endif
+
+// 2008-11-26aSakexe
+#if PACKETVER >= 20081126
+	packet(0x01a2,37);
+	packet(0x0440,10);
+	packet(0x0441,4);
+#endif
+
+// 2008-12-10aSakexe
+#if PACKETVER >= 20081210
+	packet(0x0442,-1);
+	parseable_packet(0x0443,8,clif_parse_SkillSelectMenu,2,6);
+#endif
+
+// 2009-01-14aSakexe
+#if PACKETVER >= 20090114
+	packet(0x043f,25);
+	packet(0x0444,-1);
+	packet(0x0445,10);
+#endif
+
+// 2009-02-18aSakexe
+#if PACKETVER >= 20090218
+	packet(0x0446,14);
+#endif
+
+// 2009-02-25aSakexe
+#if PACKETVER >= 20090225
+	packet(0x0448,-1);
+#endif
+
+// 2009-03-30aSakexe
+#if PACKETVER >= 20090330
+	packet(0x0449,4);
+#endif
+
+// 2009-04-08aSakexe
+#if PACKETVER >= 20090408
+	packet(0x02a6,-1);
+	packet(0x02a7,-1);
+	parseable_packet(0x044a,6,clif_parse_client_version,2);
+#endif
+
+// Renewal Clients
+// 2008-08-27aRagexeRE
+#if PACKETVER >= 20080827
+	parseable_packet(0x0072,22,clif_parse_UseSkillToId,9,15,18);
+	packet(0x007c,44);
+	parseable_packet(0x007e,105,clif_parse_UseSkillToPosMoreInfo,10,14,18,23,25);
+	parseable_packet(0x0085,10,clif_parse_ChangeDir,4,9);
+	parseable_packet(0x0089,11,clif_parse_TickSend,7);
+	parseable_packet(0x008c,14,clif_parse_GetCharNameRequest,10);
+	parseable_packet(0x0094,19,clif_parse_MoveToKafra,3,15);
+	parseable_packet(0x009b,34,clif_parse_WantToConnection,7,15,25,29,33);
+	parseable_packet(0x009f,20,clif_parse_UseItem,7,20);
+	parseable_packet(0x00a2,14,clif_parse_SolveCharName,10);
+	parseable_packet(0x00a7,9,clif_parse_WalkToXY,6);
+	parseable_packet(0x00f5,11,clif_parse_TakeItem,7);
+	parseable_packet(0x00f7,17,clif_parse_MoveFromKafra,3,13);
+	parseable_packet(0x0113,25,clif_parse_UseSkillToPos,10,14,18,23);
+	parseable_packet(0x0116,17,clif_parse_DropItem,6,15);
+	parseable_packet(0x0190,23,clif_parse_ActionRequest,9,22);
+	packet(0x02e2,20);
+	packet(0x02e3,22);
+	packet(0x02e4,11);
+	packet(0x02e5,9);
+#endif
+
+// 2008-09-10aRagexeRE
+#if PACKETVER >= 20080910
+	parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0437,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
+#endif
+
+// 2008-11-12aRagexeRE
+#if PACKETVER >= 20081112
+	packet(0x043d,8);
+	//packet(0x043e,-1);
+	packet(0x043f,8);
+#endif
+
+// 2008-12-17aRagexeRE
+#if PACKETVER >= 20081217
+	packet(0x01a2,37);
+	//packet(0x0440,10);
+	//packet(0x0441,4);
+	//packet(0x0442,8);
+	//packet(0x0443,8);
+#endif
+
+// 2008-12-17bRagexeRE
+#if PACKETVER >= 20081217
+	packet(0x006d,114);
+#endif
+
+// 2009-01-21aRagexeRE
+#if PACKETVER >= 20090121
+	packet(0x043f,25);
+	//packet(0x0444,-1);
+	//packet(0x0445,10);
+#endif
+
+// 2009-02-18aRagexeRE
+#if PACKETVER >= 20090218
+	//packet(0x0446,14);
+#endif
+
+// 2009-02-26cRagexeRE
+#if PACKETVER >= 20090226
+	//packet(0x0448,-1);
+#endif
+
+// 2009-04-01aRagexeRE
+#if PACKETVER >= 20090401
+	//packet(0x0449,4);
+#endif
+
+// 2009-05-14aRagexeRE
+#if PACKETVER >= 20090514
+	//packet(0x044b,2);
+#endif
+
+// 2009-05-20aRagexeRE
+#if PACKETVER >= 20090520
+	//packet(0x07d0,6);
+	//packet(0x07d1,2);
+	//packet(0x07d2,-1);
+	//packet(0x07d3,4);
+	//packet(0x07d4,4);
+	//packet(0x07d5,4);
+	//packet(0x07d6,4);
+	//packet(0x0447,2);
+#endif
+
+// 2009-06-03aRagexeRE
+#if PACKETVER >= 20090603
+	parseable_packet(0x07d7,8,clif_parse_PartyChangeOption,2,6,7);
+	packet(0x07d8,8);
+	packet(0x07d9,254);
+	parseable_packet(0x07da,6,clif_parse_PartyChangeLeader,2);
+#endif
+
+// 2009-06-10aRagexeRE
+#if PACKETVER >= 20090610
+	//packet(0x07db,8);
+#endif
+
+// 2009-06-17aRagexeRE
+#if PACKETVER >= 20090617
+	packet(0x07d9,268);
+	//packet(0x07dc,6);
+	//packet(0x07dd,54);
+	//packet(0x07de,30);
+	//packet(0x07df,54);
+#endif
+
+// 2009-07-01aRagexeRE
+#if PACKETVER >= 20090701
+	//packet(0x0275,37);
+	//packet(0x0276,-1);
+#endif
+
+// 2009-07-08aRagexeRE
+#if PACKETVER >= 20090708
+	//packet(0x07e0,58);
+#endif
+
+// 2009-07-15aRagexeRE
+#if PACKETVER >= 20090715
+	packet(0x07e1,15);
+#endif
+
+// 2009-08-05aRagexeRE
+#if PACKETVER >= 20090805
+	packet(0x07e2,8);
+#endif
+
+// 2009-08-18aRagexeRE
+#if PACKETVER >= 20090818
+	packet(0x07e3,6);
+	parseable_packet(0x07e4,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	packet(0x07e6,8);
+#endif
+
+// 2009-08-25aRagexeRE
+#if PACKETVER >= 20090825
+	//packet(0x07e6,28);
+	packet(0x07e7,5);
+#endif
+
+// 2009-09-22aRagexeRE
+#if PACKETVER >= 20090922
+	packet(0x07e5,8);
+	packet(0x07e6,8);
+	packet(0x07e7,32);
+	packet(0x07e8,-1);
+	packet(0x07e9,5);
+#endif
+
+// 2009-09-29aRagexeRE
+#if PACKETVER >= 20090929
+	//packet(0x07ea,2);
+	//packet(0x07eb,-1);
+	//packet(0x07ec,6);
+	//packet(0x07ed,8);
+	//packet(0x07ee,6);
+	//packet(0x07ef,8);
+	//packet(0x07f0,4);
+	//packet(0x07f2,4);
+	//packet(0x07f3,3);
+#endif
+
+// 2009-10-06aRagexeRE
+#if PACKETVER >= 20091006
+	//packet(0x07ec,8);
+	//packet(0x07ed,10);
+	//packet(0x07f0,8);
+	//packet(0x07f1,15);
+	//packet(0x07f2,6);
+	//packet(0x07f3,4);
+	//packet(0x07f4,3);
+#endif
+
+// 2009-10-27aRagexeRE
+#if PACKETVER >= 20091027
+	parseable_packet(0x07f5,6,clif_parse_GMFullStrip,2);
+	packet(0x07f6,14);
+#endif
+
+// 2009-11-03aRagexeRE
+#if PACKETVER >= 20091103
+	packet(0x07f7,-1);
+	packet(0x07f8,-1);
+	packet(0x07f9,-1);
+#endif
+
+// 2009-11-17aRagexeRE
+#if PACKETVER >= 20091117
+	packet(0x07fa,8);
+#endif
+
+// 2009-11-24aRagexeRE
+#if PACKETVER >= 20091124
+	packet(0x07fb,25);
+#endif
+
+// 2009-12-01aRagexeRE
+#if PACKETVER >= 20091201
+	packet(0x07fc,10);
+	ack_packet(ZC_BROADCASTING_SPECIAL_ITEM_OBTAIN,0x07fd,-1,0);
+	packet(0x07fe,26);
+	//packet(0x07ff,-1);
+#endif
+
+// 2009-12-15aRagexeRE
+#if PACKETVER >= 20091215
+	packet(0x0800,-1);
+	//packet(0x0801,-1);
+#endif
+
+// 2009-12-22aRagexeRE
+#if PACKETVER >= 2009122
+	parseable_packet(0x0802,18,clif_parse_PartyBookingRegisterReq,2,4,6); // Booking System
+	packet(0x0803,4);
+	packet(0x0804,8); // Booking System
+	packet(0x0805,-1);
+	parseable_packet(0x0806,4,clif_parse_PartyBookingDeleteReq,2); // Booking System
+	//packet(0x0807,2);
+	packet(0x0808,4); // Booking System
+	//packet(0x0809,14);
+	//packet(0x080A,50);
+	//packet(0x080B,18);
+	//packet(0x080C,6);
+#endif
+
+// 2009-12-29aRagexeRE
+#if PACKETVER >= 20091229
+	parseable_packet(0x0804,14,clif_parse_PartyBookingSearchReq,2,4,6,8,12); // Booking System
+	parseable_packet(0x0806,2,clif_parse_PartyBookingDeleteReq,0); // Booking System
+	packet(0x0807,4);
+	parseable_packet(0x0808,14,clif_parse_PartyBookingUpdateReq,2); // Booking System
+	packet(0x0809,50);
+	packet(0x080A,18);
+	packet(0x080B,6); // Booking System
+#endif
+
+// 2010-01-05aRagexeRE
+#if PACKETVER >= 20100105
+	parseable_packet(0x0801,-1,clif_parse_PurchaseReq2,2,4,8,12);
+#endif
+
+// 2010-01-26aRagexeRE
+#if PACKETVER >= 20100126
+	//packet(0x080C,2);
+	//packet(0x080D,3);
+	packet(0x080E,14);
+#endif
+
+// 2010-02-09aRagexeRE
+#if PACKETVER >= 20100209
+	//packet(0x07F0,6);
+#endif
+
+// 2010-02-23aRagexeRE
+#if PACKETVER >= 20100223
+	packet(0x080F,20);
+#endif
+
+// 2010-03-03aRagexeRE
+#if PACKETVER >= 20100303
+	packet(0x0810,3);
+	parseable_packet(0x0811,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//packet(0x0812,86);
+	//packet(0x0813,6);
+	//packet(0x0814,6);
+	//packet(0x0815,-1);
+	//packet(0x0817,-1);
+	//packet(0x0818,6);
+	//packet(0x0819,4);
+#endif
+
+// 2010-03-09aRagexeRE
+#if PACKETVER >= 20100309
+	packet(0x0813,-1);
+	//packet(0x0814,2);
+	//packet(0x0815,6);
+	packet(0x0816,6);
+	packet(0x0818,-1);
+	//packet(0x0819,10);
+	//packet(0x081A,4);
+	//packet(0x081B,4);
+	//packet(0x081C,6);
+	packet(0x081d,22);
+	packet(0x081e,8);
+#endif
+
+// 2010-03-23aRagexeRE
+#if PACKETVER >= 20100323
+	//packet(0x081F,-1);
+#endif
+
+// 2010-04-06aRagexeRE
+#if PACKETVER >= 20100406
+	//packet(0x081A,6);
+#endif
+
+// 2010-04-13aRagexeRE
+#if PACKETVER >= 20100413
+	//packet(0x081A,10);
+	packet(0x0820,11);
+	//packet(0x0821,2);
+	//packet(0x0822,9);
+	//packet(0x0823,-1);
+#endif
+
+// 2010-04-14dRagexeRE
+#if PACKETVER >= 20100414
+	//packet(0x081B,8);
+#endif
+
+// 2010-04-20aRagexeRE
+#if PACKETVER >= 20100420
+	packet(0x0812,8);
+	packet(0x0814,86);
+	parseable_packet(0x0815,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0817,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0819,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	packet(0x081a,4);
+	packet(0x081b,10);
+	packet(0x081c,10);
+	packet(0x0824,6);
+#endif
+
+// 2010-06-01aRagexeRE
+#if PACKETVER >= 20100601
+	//packet(0x0825,-1);
+	//packet(0x0826,4);
+	parseable_packet(0x0835,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	packet(0x0836,-1);
+	packet(0x0837,3);
+	//packet(0x0838,3);
+#endif
+
+// 2010-06-08aRagexeRE
+#if PACKETVER >= 20100608
+	parseable_packet(0x0838,2,clif_parse_SearchStoreInfoNextPage,0);
+	packet(0x083A,4); // Search Stalls Feature
+	parseable_packet(0x083B,2,clif_parse_CloseSearchStoreInfo,0);
+	parseable_packet(0x083C,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	packet(0x083D,6);
+#endif
+
+// 2010-06-15aRagexeRE
+#if PACKETVER >= 20100615
+	//packet(0x083E,26);
+#endif
+
+// 2010-06-22aRagexeRE
+#if PACKETVER >= 20100622
+	//packet(0x083F,22);
+#endif
+
+// 2010-06-29aRagexeRE
+#if PACKETVER >= 20100629
+	ack_packet(ZC_WEAR_EQUIP_ACK,0x00AA,9,2,4,6,8);
+	//packet(0x07F1,18);
+	//packet(0x07F2,8);
+	//packet(0x07F3,6);
+#endif
+
+// 2010-07-01aRagexeRE
+#if PACKETVER >= 20100701
+	packet(0x083A,5); // Search Stalls Feature
+#endif
+
+// 2010-07-13aRagexeRE
+#if PACKETVER >= 20100713
+	//packet(0x0827,6);
+	//packet(0x0828,14);
+	//packet(0x0829,6);
+	//packet(0x082A,10);
+	//packet(0x082B,6);
+	//packet(0x082C,14);
+	//packet(0x0840,-1);
+	//packet(0x0841,19);
+#endif
+
+// 2010-07-14aRagexeRE
+#if PACKETVER >= 20100714
+	//packet(0x0841,4);
+#endif
+
+// 2010-08-03aRagexeRE
+#if PACKETVER >= 20100803
+	packet(0x0839,66);
+	parseable_packet(0x0842,6,clif_parse_GMRecall2,2);
+	parseable_packet(0x0843,6,clif_parse_GMRemove2,2);
+#endif
+
+// 2010-11-24aRagexeRE
+#if PACKETVER >= 20101124
+	parseable_packet(0x0288,-1,clif_parse_cashshop_buy,2,4,8,10);
+	parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x035f,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0360,6,clif_parse_TickSend,2);
+	parseable_packet(0x0361,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0362,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0363,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0364,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0365,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0366,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0367,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0369,6,clif_parse_SolveCharName,2);
+	packet(0x0856,-1);
+	packet(0x0857,-1);
+	packet(0x0858,-1);
+	packet(0x0859,-1);
+	ack_packet(ZC_WEAR_EQUIP_ACK,0x08d0,9,2,4,6,8);
+#endif
+
+// 2011-10-05aRagexeRE
+#if PACKETVER >= 20111005
+	parseable_packet(0x0364,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0817,6,clif_parse_TickSend,2);
+	parseable_packet(0x0366,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0815,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0885,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0893,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0897,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0369,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x08ad,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0838,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
+	packet(0x08d2,10);
+	packet(0x08d1,7);
+	parseable_packet(0x0846,4,clif_parse_CashShopReqTab,2); //2011-07-18
+#endif
+
+// 2011-11-02aRagexe
+#if PACKETVER >= 20111102
+	parseable_packet(0x0436,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0898,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0281,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x088d,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x083c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x08aa,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x02c4,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0811,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	packet(0x0890,8);
+	parseable_packet(0x08a5,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0835,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x089b,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x08a1,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x089e,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x08ab,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x088b,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x08a2,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	packet(0x08cf,10); //Amulet spirits
+#endif
+
+// 2012-03-07fRagexeRE
+#if PACKETVER >= 20120307
+	parseable_packet(0x086A,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0887,6,clif_parse_TickSend,2);
+	parseable_packet(0x0890,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0865,6,clif_parse_TakeItem,2);
+	parseable_packet(0x02C4,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x093B,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0963,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0863,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0861,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0929,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0885,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0889,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0870,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	//parseable_packet(0x0926,41,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0884,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
+	parseable_packet(0x0365,41,clif_parse_PartyBookingRegisterReq,2,4,6);
+	// New Packet
+	packet(0x090F,-1); // ZC_NOTIFY_NEWENTRY7
+	packet(0x0914,-1); // ZC_NOTIFY_MOVEENTRY8
+	packet(0x0915,-1); // ZC_NOTIFY_STANDENTRY9
+#endif
+
+// 2012-04-10aRagexeRE
+#if PACKETVER >= 20120410
+	parseable_packet(0x01fd,15,clif_parse_RepairItem,2,4,6,7,9,11,13);
+	parseable_packet(0x089c,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0885,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0961,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0288,-1,clif_parse_cashshop_buy,2,4,8,10);
+	parseable_packet(0x091c,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x094b,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
+	parseable_packet(0x0945,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0886,6,clif_parse_TickSend,2);
+	parseable_packet(0x0871,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0938,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0891,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x086c,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a6,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0889,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0884,6,clif_parse_SolveCharName,2);
+	packet(0x08e6,4);
+	parseable_packet(0x08e7,10,clif_parse_PartyBookingSearchReq,2,4,6,8,12);
+	packet(0x08e8,-1);
+	parseable_packet(0x08e9,2,clif_parse_PartyBookingDeleteReq,0);
+	packet(0x08ea,4);
+	parseable_packet(0x08eb,39,clif_parse_PartyBookingUpdateReq,2);
+	packet(0x08ec,73);
+	packet(0x08ed,43);
+	packet(0x08ee,6);
+	parseable_packet(0x08ef,6,NULL,2);
+	packet(0x08f0,6);
+	parseable_packet(0x08f1,6,NULL,2);
+	packet(0x08f2,36);
+	packet(0x08f3,-1);
+	packet(0x08f4,6);
+	parseable_packet(0x08f5,-1,NULL,2,4);
+	packet(0x08f6,22);
+	packet(0x08f7,3);
+	packet(0x08f8,7);
+	packet(0x08f9,6);
+	packet(0x08fa,6);
+	parseable_packet(0x08fb,6,NULL,2);
+	parseable_packet(0x0907,5,clif_parse_MoveItem,2,4);
+	packet(0x0908,5);
+	parseable_packet(0x08d7,28,NULL,2,4);
+	packet(0x0977,14); //Monster HP Bar
+	parseable_packet(0x0916,26,clif_parse_GuildInvite2,2);
+	parseable_packet(0x091d,41,clif_parse_PartyBookingRegisterReq,2,4,6);
+	ack_packet(ZC_PERSONAL_INFOMATION,0x08cb,10,2,4,6,8,10,11,13,15); //Still need further information
+	// Merge Item
+	ack_packet(ZC_MERGE_ITEM_OPEN,0x096D,-1,2,4); // ZC_MERGE_ITEM_OPEN
+	parseable_packet(0x096E,-1,clif_parse_merge_item_req,2,4); // CZ_REQ_MERGE_ITEM
+	ack_packet(ZC_ACK_MERGE_ITEM,0x096F,7,2,4,6); // ZC_ACK_MERGE_ITEM
+	parseable_packet(0x0974,2,clif_parse_merge_item_cancel,0); // CZ_CANCEL_MERGE_ITEM
+	parseable_packet(0x0844,2,clif_parse_cashshop_open_request,0);
+	packet(0x0849,16); //clif_cashshop_result
+	parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
+	parseable_packet(0x084a,2,clif_parse_cashshop_close,0);
+	parseable_packet(0x08c9,2,clif_parse_cashshop_list_request,0);
+#endif
+
+// 2012-04-18aRagexeRE [Special Thanks to Judas!]
+#if PACKETVER >= 20120418
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x08A8,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08E5,41,clif_parse_PartyBookingRegisterReq,2,4,6); //Added to prevent disconnections
+	packet(0x08d2,10);
+#endif
+
+// 2012-06-18
+#if PACKETVER >= 20120618
+	packet(0x0983,29); // ZC_MSG_STATE_CHANGE3
+	parseable_packet(0x0861,41,clif_parse_PartyBookingRegisterReq,2,4,6); //actually 12-05-03
+#endif
+
+// 2012-07-02aRagexeRE (unstable)
+#if PACKETVER >= 20120702
+	parseable_packet(0x0363,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0364,6,clif_parse_TickSend,2);
+	parseable_packet(0x085a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0861,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0862,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0863,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0886,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0889,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x089e,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x089f,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a0,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x094a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0953,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0960,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0879,41,clif_parse_PartyBookingRegisterReq,2,4,6);
+#endif
+
+// 2013-03-20Ragexe (Judas)
+#if PACKETVER >= 20130320
+	parseable_packet(0x014f,6,clif_parse_GuildRequestInfo,2);
+	parseable_packet(0x01fd,15,clif_parse_RepairItem,2,4,6,7,9,11,13);
+	//parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035f,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0363,6,clif_parse_TickSend,2);
+	parseable_packet(0x0365,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0438,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0447,2,clif_parse_blocking_playcancel,0); // CZ_BLOCKING_PLAY_CANCEL
+	parseable_packet(0x044A,6,clif_parse_client_version,2);
+	parseable_packet(0x0844,2,clif_parse_cashshop_open_request,0);
+	packet(0x0849,16); //clif_cashshop_result
+	parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
+	parseable_packet(0x084a,2,clif_parse_cashshop_close,0);
+	packet(0x084b,19); //fallitem4
+	parseable_packet(0x085a,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x085d,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0868,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x086d,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x086f,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0874,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0881,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0886,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0888,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x088e,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0897,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0898,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x089b,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08ac,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08c9,2,clif_parse_cashshop_list_request,0);
+	packet(0x08cf,10); //Amulet spirits
+	packet(0x08d2,10);
+	parseable_packet(0x0907,5,clif_parse_MoveItem,2,4);
+	packet(0x0908,5);
+	parseable_packet(0x0922,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	//parseable_packet(0x092e,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0933,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0938,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x093f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0947,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x094c,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x094e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0959,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x095a,8,clif_parse_Mail_setattach,2,4);
+	packet(0x0977,14); //Monster HP Bar
+	parseable_packet(0x0978,6,clif_parse_reqworldinfo,2);
+	packet(0x0979,50); //ackworldinfo
+	ack_packet(ZC_PERSONAL_INFOMATION,0x097b,16,2,4,8,12,16,17,21,25); //Still need further information
+	//ack_packet(ZC_PERSONAL_INFOMATION_CHN,0x0981,12,2,4,6,8,12,13,15,17,10); // Disabled until further information is found.
+	packet(0x0990,31); //additem
+	packet(0x0991,-1); //inv itemlist normal
+	packet(0x0992,-1); //inv itemlist equip
+	packet(0x0993,-1); //cart itemlist normal
+	packet(0x0994,-1); //cart itemlist equip
+	packet(0x0995,-1); //store itemlist normal
+	packet(0x0996,-1); //store itemlist equip
+	packet(0x0997,-1); //ZC_EQUIPWIN_MICROSCOPE_V5
+	parseable_packet(0x0998,8,clif_parse_EquipItem,2,4); // CZ_REQ_WEAR_EQUIP_V5
+	ack_packet(ZC_WEAR_EQUIP_ACK,0x0999,11,2,4,8,10); // cz_wear_equipv5
+	packet(0x099a,9); // take_off_equipv5
+	packet(0x099b,8); //maptypeproperty2
+	// New Packets
+	packet(0x08C8,34); // ZC_NOTIFY_ACT3
+	packet(0x08ff,24); // ZC_EFST_SET_ENTER
+	packet(0x0984,28); // ZC_EFST_SET_ENTER2
+	packet(0x099f,22); // ZC_SKILL_ENTRY4
+#endif
+
+// 2013-06-05Ragexe
+#if PACKETVER >= 20130605
+	parseable_packet(0x097C,4,clif_parse_ranklist,2);
+#endif
+
+// 2013-07-10Ragexe
+#if PACKETVER >= 20130710
+	parseable_packet(0x0848,-1,clif_parse_cashshop_buy,2,6,4,10);
+	packet(0x097D,288); //ZC_ACK_RANKING
+#endif
+
+// 2013-07-17Ragexe
+#if PACKETVER >= 20130717
+	ack_packet(ZC_BANKING_CHECK,0x09A6,12,2,10);
+	parseable_packet(0x09A7,10,clif_parse_BankDeposit,2,6);
+	ack_packet(ZC_ACK_BANKING_DEPOSIT,0x09A8,16,2,4,12);
+	parseable_packet(0x09A9,10,clif_parse_BankWithdraw,2,6);
+	ack_packet(ZC_ACK_BANKING_WITHDRAW,0x09AA,16,2,4,12);
+	parseable_packet(0x09AB,6,clif_parse_BankCheck,2);
+	parseable_packet(0x09B6,6,clif_parse_BankOpen,2);
+	ack_packet(ZC_ACK_OPEN_BANKING,0x09B7,4,2);
+	parseable_packet(0x09B8,6,clif_parse_BankClose,2);
+	ack_packet(ZC_ACK_CLOSE_BANKING,0x09B9,4,2);
+#endif
+
+// 2013-07-31cRagexe
+#if PACKETVER >= 20130731
+	packet(0x09ca,23); // ZC_SKILL_ENTRY5
+	packet(0x09cb,17); // ZC_USE_SKILL2
+#endif
+
+// 2013-08-07Ragexe
+#if PACKETVER >= 20130807
+	ack_packet(ZC_C_MARKERINFO,0x09C1,10,2,6,8);
+	// Merge Item
+	ack_packet(ZC_MERGE_ITEM_OPEN,0x096D,-1,2,4); // ZC_MERGE_ITEM_OPEN
+	parseable_packet(0x096E,-1,clif_parse_merge_item_req,2,4); // CZ_REQ_MERGE_ITEM
+	ack_packet(ZC_ACK_MERGE_ITEM,0x096F,7,2,4,6,7); // ZC_ACK_MERGE_ITEM
+	parseable_packet(0x0974,2,clif_parse_merge_item_cancel,0); // CZ_CANCEL_MERGE_ITEM
+#endif
+
+// 2013-12-23Ragexe
+#if PACKETVER >= 20131223
+	//New Packets
+	//packet(0x097E,12); //ZC_UPDATE_RANKING_POINT
+	parseable_packet(0x09CE,102,clif_parse_GM_Item_Monster,2);
+	parseable_packet(0x09D4,2,clif_parse_NPCShopClosed,0);
+	//NPC Market
+	packet(0x09D5,-1);
+	parseable_packet(0x09D6,-1,clif_parse_NPCMarketPurchase,2,4,6);
+	packet(0x09D7,-1);
+	parseable_packet(0x09D8,2,clif_parse_NPCMarketClosed,0);
+	// Clan System
+	packet(0x0988,6);
+	packet(0x0989,2);
+	packet(0x098A,-1);
+	parseable_packet(0x098D,-1,clif_parse_clan_chat,2,4);
+	packet(0x098E,-1);
+	// Sale
+	parseable_packet(0x09AC,-1,clif_parse_sale_search,2,4,8);
+	packet(0x09AD,8);
+	parseable_packet(0x09AE,17,clif_parse_sale_add,2,6,8,12,16);
+	packet(0x09AF,4);
+	parseable_packet(0x09B0,8,clif_parse_sale_remove,2,6);
+	packet(0x09B1,4);
+	packet(0x09B2,8);
+	packet(0x09B3,4);
+	parseable_packet(0x09B4,6,clif_parse_sale_open,2);
+	parseable_packet(0x09BC,6,clif_parse_sale_close,2);
+	parseable_packet(0x09C3,8,clif_parse_sale_refresh,2,6);
+	packet(0x09C4,8);
+	// New Packet
+	packet(0x097A,-1); // ZC_ALL_QUEST_LIST2
+	packet(0x09DB,-1); // ZC_NOTIFY_MOVEENTRY10
+	packet(0x09DC,-1); // ZC_NOTIFY_NEWENTRY10
+	packet(0x09DD,-1); // ZC_NOTIFY_STANDENTRY10
+	packet(0x09DF,7); // ZC_ACK_WHISPER02
+#endif
+
+// 2014-10-16Ragexe
+#if PACKETVER >= 20141016
+	packet(0x09DF,7);
+	// New packet
+	packet(0x0A00,269); // ZC_SHORTCUT_KEY_LIST_V3
+	parseable_packet(0x0A01,3,clif_parse_HotkeyRowShift,2); // CZ_SHORTCUTKEYBAR_ROTATE
+	packet(0x0A02,4); // ZC_DRESSROOM_OPEN
+	packet(0x0A0E,14); // ZC_BATTLEFIELD_NOTIFY_HP2
+	packet(0x09F7,75); // ZC_PROPERTY_HOMUN_2
+	packet(0x09E5,18); // ZC_DELETEITEM_FROM_MCSTORE2
+	packet(0x09E6,22); // ZC_UPDATE_ITEM_FROM_BUYING_STORE2
+	// Roulette System [Yommy]
+	parseable_packet(0x0A19,2,clif_parse_RouletteOpen,0); // CZ_REQ_OPEN_ROULETTE
+	packet(0x0A1A,23); // ZC_ACK_OPEN_ROULETTE
+	parseable_packet(0x0A1B,2,clif_parse_RouletteInfo,0); // CZ_REQ_ROULETTE_INFO
+	packet(0x0A1C,-1); // ZC_ACK_ROULETTE_INFO
+	parseable_packet(0x0A1D,2,clif_parse_RouletteClose,0); // CZ_REQ_CLOSE_ROULETTE
+	packet(0x0A1E,3); // ZC_ACK_CLOSE_ROULETTE
+	parseable_packet(0x0A1F,2,clif_parse_RouletteGenerate,0); // CZ_REQ_GENERATE_ROULETTE
+	packet(0x0A20,21); // ZC_ACK_GENERATE_ROULETTE
+	parseable_packet(0x0A21,3,clif_parse_RouletteRecvItem,2); // CZ_RECV_ROULETTE_ITEM
+	packet(0x0A22,5); // ZC_RECV_ROULETTE_ITEM
+#endif
+
+// 2014-10-22bRagexe
+#if PACKETVER >= 20141022
+	packet(0x006d,149);
+	packet(0x08e3,149);
+	// New Packet
+	packet(0x0A18,14); // ZC_ACCEPT_ENTER3
+	packet(0x0A28,3); // ZC_ACK_OPENSTORE2
+	packet(0x09FD,-1); // ZC_NOTIFY_MOVEENTRY11
+	packet(0x09FE,-1); // ZC_NOTIFY_NEWENTRY11
+	packet(0x09FF,-1); // ZC_NOTIFY_STANDENTRY11
+	//packet(0x09F8,-1); // ZC_ALL_QUEST_LIST3
+#endif
+
+// 2015-05-13aRagexe
+#if PACKETVER >= 20150513
+	// New Packets
+	packet(0xA3B,-1); // ZC_HAT_EFFECT
+	// RODEX Mail system
+	packet(0x09E7,3); // ZC_NOTIFY_UNREADMAIL
+	parseable_packet(0x09E8,11,clif_parse_Mail_refreshinbox,2,3); // CZ_OPEN_MAILBOX
+	parseable_packet(0x09E9,2,clif_parse_dull,0); // CZ_CLOSE_MAILBOX
+	parseable_packet(0x09EA,11,clif_parse_Mail_read,2,3); // CZ_REQ_READ_MAIL
+	packet(0x09EB,-1); // ZC_ACK_READ_MAIL
+	parseable_packet(0x09EC,-1,clif_parse_Mail_send,2,4,28,52,60,62,64); // CZ_REQ_WRITE_MAIL
+	packet(0x09ED,3); // ZC_ACK_WRITE_MAIL
+	parseable_packet(0x09EE,11,clif_parse_Mail_refreshinbox,2,3); // CZ_REQ_NEXT_MAIL_LIST
+	parseable_packet(0x09EF,11,clif_parse_Mail_refreshinbox,2,3); // CZ_REQ_REFRESH_MAIL_LIST
+	packet(0x09F0,-1); // ZC_ACK_MAIL_LIST
+	parseable_packet(0x09F1,11,clif_parse_Mail_getattach,0); // CZ_REQ_ZENY_FROM_MAIL
+	packet(0x09F2,12); // ZC_ACK_ZENY_FROM_MAIL
+	parseable_packet(0x09F3,11,clif_parse_Mail_getattach,0); // CZ_REQ_ITEM_FROM_MAIL
+	packet(0x09F4,12); // ZC_ACK_ITEM_FROM_MAIL
+	parseable_packet(0x09F5,11,clif_parse_Mail_delete,0); // CZ_REQ_DELETE_MAIL
+	packet(0x09F6,11); // ZC_ACK_DELETE_MAIL
+	parseable_packet(0x0A03,2,clif_parse_Mail_cancelwrite,0); // CZ_REQ_CANCEL_WRITE_MAIL
+	parseable_packet(0x0A04,6,clif_parse_Mail_setattach,2,4); // CZ_REQ_ADD_ITEM_TO_MAIL
+	packet(0x0A05,53); // ZC_ACK_ADD_ITEM_TO_MAIL
+	parseable_packet(0x0A06,6,clif_parse_Mail_winopen,2,4); // CZ_REQ_REMOVE_ITEM_MAIL
+	packet(0x0A07,9); // ZC_ACK_REMOVE_ITEM_MAIL
+	parseable_packet(0x0A08,26,clif_parse_Mail_beginwrite,0); // CZ_REQ_OPEN_WRITE_MAIL
+	packet(0x0A12,27); // ZC_ACK_OPEN_WRITE_MAIL
+	parseable_packet(0x0A13,26,clif_parse_Mail_Receiver_Check,2); // CZ_CHECK_RECEIVE_CHARACTER_NAME
+	packet(0x0A14,10); // ZC_CHECK_RECEIVE_CHARACTER_NAME
+	packet(0x0A32,2); // ZC_OPEN_RODEX_THROUGH_NPC_ONLY
+	// New EquipPackets Support
+	packet(0x0A09,45); // ZC_ADD_EXCHANGE_ITEM3
+	packet(0x0A0A,47); // ZC_ADD_ITEM_TO_STORE3
+	packet(0x0A0B,47); // ZC_ADD_ITEM_TO_CART3
+	packet(0x0A0C,56); // ZC_ITEM_PICKUP_ACK_V6
+	packet(0x0A0D,-1); // ZC_INVENTORY_ITEMLIST_EQUIP_V6
+	packet(0x0A0F,-1); // ZC_CART_ITEMLIST_EQUIP_V6
+	packet(0x0A10,-1); // ZC_STORE_ITEMLIST_EQUIP_V6
+	packet(0x0A2D,-1); // ZC_EQUIPWIN_MICROSCOPE_V6
+	// OneClick Itemidentify
+	parseable_packet(0x0A35,4,clif_parse_Oneclick_Itemidentify,2); // CZ_REQ_ONECLICK_ITEMIDENTIFY
+	// Achievement System
+	packet(0x0A23,-1); // ZC_ALL_ACH_LIST
+	packet(0x0A24,66); // ZC_ACH_UPDATE
+	parseable_packet(0x0A25,6,clif_parse_dull,0); // CZ_REQ_ACH_REWARD
+	packet(0x0A26,7); // ZC_REQ_ACH_REWARD_ACK
+	// Title System
+	parseable_packet(0x0A2E,6,clif_parse_dull,0); // CZ_REQ_CHANGE_TITLE
+	packet(0x0A2F,7); // ZC_ACK_CHANGE_TITLE
+	packet(0x0A30,106); // ZC_ACK_REQNAMEALL2
+	// Pet Evolution System
+	parseable_packet(0x09FB,-1,clif_parse_dull,0); // CZ_PET_EVOLUTION
+	packet(0x09FC,6); // ZC_PET_EVOLUTION_RESULT
+#endif
+
+// 2015-05-20aRagexe
+#if PACKETVER >= 20150520
+	parseable_packet(0x0A3D,18,clif_parse_sale_add,2,6,8,12,16);
+#endif
+
+// 2015-09-16Ragexe
+#if PACKETVER >= 20150916
+	// New Packet
+	packet(0x097F,-1); // ZC_SELECTCART
+	parseable_packet(0x0980,7,clif_parse_SelectCart,2,6); // CZ_SELECTCART
+#endif
+
+// 2016-03-02bRagexe
+#if PACKETVER >= 20160302
+	packet(0x0A51,34);
+#endif
+
+// 2016-03-30aRagexe
+#if PACKETVER >= 20160330
+	parseable_packet(0x0A6E,-1,clif_parse_Mail_send,2,4,28,52,60,62,64,68); // CZ_REQ_WRITE_MAIL2
+#endif
+
+// 2016-06-01aRagexe
+#if PACKETVER >= 20160601
+	packet(0x0A7D,-1);
+#endif
+
+// 2017-05-02dRagexeRE
+#if PACKETVER >= 20170502
+	packet(0x0A43,85);
+	packet(0x0A44,-1);
+	packet(0x0ABD,10);
+#endif
+
+#endif /* _CLIF_PACKETDB_H_ */

+ 3511 - 0
src/map/clif_shuffle.h

@@ -0,0 +1,3511 @@
+// Copyright (c) Athena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+
+#ifndef _CLIF_SHUFFLE_H_
+#define _CLIF_SHUFFLE_H_
+
+// 2013-05-15aRagexe
+#if PACKETVER == 20130515
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x0862,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0887,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08A1,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x08AA,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x08AC,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x092D,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0931,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x093e,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0943,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0944,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0947,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0962,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0963,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-05-22Ragexe
+#elif PACKETVER == 20130522
+	parseable_packet(0x0360,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0362,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0368,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0369,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x07EC,6,clif_parse_TickSend,2);
+	parseable_packet(0x0811,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x086A,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x086E,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0874,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x087E,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x088e,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x089B,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x089C,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x08A2,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08A9,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x08AC,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08a3,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a6,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x08aa,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0925,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0926,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x093e,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0950,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0952,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x095C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x095E,6,clif_parse_TakeItem,2);
+	parseable_packet(0x095b,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0964,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	//parseable_packet(0x0965,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+// 2013-05-29Ragexe
+#elif PACKETVER == 20130529
+	parseable_packet(0x023B,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085A,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x085E,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0863,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0869,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0874,18,clif_parse_PartyBookingRegisterReq,2);
+	parseable_packet(0x0876,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0877,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x0888,4,NULL,0); // CZ_GANGSI_RANK
+	//parseable_packet(0x088E,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0890,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0892,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0895,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0897,6,clif_parse_TickSend,2);
+	parseable_packet(0x08A7,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x08A8,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0917,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0918,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0919,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0936,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0937,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0938,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0941,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0951,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0956,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0957,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0958,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0964,2,clif_parse_ReqCloseBuyingStore,0);
+// 2013-06-05Ragexe
+#elif PACKETVER == 20130605
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0883,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-06-12Ragexe
+#elif PACKETVER == 20130612
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x087E,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0919,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x093A,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0940,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0964,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-06-18Ragexe
+#elif PACKETVER == 20130618
+	parseable_packet(0x0281,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x02C4,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0363,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x085A,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0862,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0864,36,clif_parse_StoragePassword,2,4,20);
+	//parseable_packet(0x0878,4,NULL,0); // CZ_GANGSI_RANK
+	//parseable_packet(0x087A,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0885,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0887,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0889,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x088E,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0890,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0891,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x08A6,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08A7,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0917,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0930,6,clif_parse_TickSend,2);
+	parseable_packet(0x0932,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0936,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0942,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0944,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0945,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x094F,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0951,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0953,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x095B,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0962,6,clif_parse_TakeItem,2);
+	parseable_packet(0x096A,10,clif_parse_UseSkillToPos,2,4,6,8);
+// 2013-06-26Ragexe
+#elif PACKETVER == 20130626
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0365,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x0860,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x088B,6,clif_parse_TakeItem,2);
+	parseable_packet(0x088C,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x088F,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0894,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0895,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x08A5,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x08AB,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0921,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0930,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x094D,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0952,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0960,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-07-03Ragexe
+#elif PACKETVER == 20130703
+	parseable_packet(0x0202,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0873,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0930,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x094A,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-07-10Ragexe
+#elif PACKETVER == 20130710
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0880,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-07-17Ragexe
+#elif PACKETVER == 20130717
+	parseable_packet(0x02C4,6,clif_parse_TickSend,2);
+	parseable_packet(0x0819,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x083C,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0862,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0863,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x086B,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	//parseable_packet(0x086C,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0882,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x088A,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x088C,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0897,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0898,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x089B,8,clif_parse_MoveToKafra,2,4);
+	//parseable_packet(0x08A6,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x08A9,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08AA,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0917,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0918,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x091D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x091E,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x092F,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x093B,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0952,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0956,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0958,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x095B,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0960,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0967,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x096A,2,clif_parse_ReqCloseBuyingStore,0);
+// 2013-08-07Ragexe
+#elif PACKETVER == 20130807
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0887,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2013-12-23Ragexe
+#elif PACKETVER == 20131223
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08A4,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2014-10-16Ragexe
+#elif PACKETVER == 20141016
+	parseable_packet(0x022D,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x086E,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x0922,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0936,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x094B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0967,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2014-10-22bRagexe
+#elif PACKETVER == 20141022
+	parseable_packet(0x023b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0878,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x087d,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0896,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0899,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x08aa,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x08ab,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08ad,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x091a,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x092b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x093b,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0940,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x094e,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0955,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-01-07aRagexeRE
+#elif PACKETVER == 20150107
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x087c,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0895,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x092d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0943,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0947,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-01-14aRagexe
+#elif PACKETVER == 20150114
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0868,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0899,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0946,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x0955,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0957,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-01-28aRagexe
+#elif PACKETVER == 20150128
+	parseable_packet(0x0202,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x023b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x035f,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0365,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	//parseable_packet(0x0368,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0838,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x085a,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0864,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x086d,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0870,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0874,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0875,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0876,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x087d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0888,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x089a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08ab,6,clif_parse_TakeItem,2);
+	parseable_packet(0x091f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0927,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0929,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x092d,2,clif_parse_SearchStoreInfoNextPage,0);
+	//parseable_packet(0x0938,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x093a,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0944,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x094d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x094e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0952,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0963,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0968,6,clif_parse_DropItem,2,4);
+// 2015-02-04aRagexe
+#elif PACKETVER == 20150204
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0966,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-02-25aRagexeRE or 2015-02-26aRagexeRE
+#elif PACKETVER == 20150225 || PACKETVER == 20150226
+	parseable_packet(0x02c4,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0362,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0819,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0867,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x0885,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0896,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x089b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x089c,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a4,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0940,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0946,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0948,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x094f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0952,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0955,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x096a,19,clif_parse_WantToConnection,2,6,10,14,18);
+// 2015-03-11aRagexeRE
+#elif PACKETVER == 20150311
+	parseable_packet(0x023b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0360,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0436,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0438,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0838,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x086a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x086c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x087b,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0883,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0886,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0888,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0896,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a1,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08a3,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a5,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08a6,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x091c,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0928,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x092a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x092e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x093b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0943,6,clif_parse_SolveCharName,2);
+	//parseable_packet(0x0946,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0957,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0958,6,clif_parse_TickSend,2);
+	parseable_packet(0x095b,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0963,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0964,8,clif_parse_MoveToKafra,2,4);
+// 2015-03-25aRagexe
+#elif PACKETVER == 20150325
+	parseable_packet(0x0202,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0363,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0365,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0438,2,clif_parse_SearchStoreInfoNextPage,0);
+	//parseable_packet(0x0802,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0819,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x085d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x086f,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x087c,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x087e,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0883,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0885,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0891,6,clif_parse_GetCharNameRequest,2);
+	//parseable_packet(0x0893,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0897,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0899,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08a1,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a7,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0919,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x092c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0931,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0932,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0938,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0940,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0947,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x094a,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0950,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0954,6,clif_parse_TickSend,2);
+	parseable_packet(0x0969,8,clif_parse_MoveFromKafra,2,4);
+// 2015-04-01aRagexe
+#elif PACKETVER == 20150401
+	parseable_packet(0x0362,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0367,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0437,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x083c,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x085e,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x086f,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0875,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x087e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x088c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x088f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0895,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0898,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x089c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a5,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x091c,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0922,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0924,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0938,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0939,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x093a,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x093b,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x093e,2,clif_parse_SearchStoreInfoNextPage,0);
+	//parseable_packet(0x0946,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0949,6,clif_parse_TakeItem,2);
+	parseable_packet(0x094b,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0953,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x095f,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0964,5,clif_parse_ChangeDir,2,4);
+// 2015-04-22aRagexeRE
+#elif PACKETVER == 20150422
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0955,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-04-29aRagexe
+#elif PACKETVER == 20150429
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0363,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0867,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x086a,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0886,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x088f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0894,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0899,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x089f,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x08a6,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	//parseable_packet(0x08a8,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08ad,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0929,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x093d,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0943,6,clif_parse_TakeItem,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-05-07bRagexe
+#elif PACKETVER == 20150507
+	parseable_packet(0x023b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0864,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x0887,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0889,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0924,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x092e,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x093b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0941,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x0942,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0953,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0955,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0958,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-05-13aRagexe
+#elif PACKETVER == 20150513
+	parseable_packet(0x022D,2,clif_parse_ReqCloseBuyingStore,0);
+	//parseable_packet(0x02C4,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0363,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0864,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0879,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0883,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0885,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x08A8,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0923,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0924,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x0927,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x094A,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0958,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0960,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2015-05-27aRagexe
+#elif PACKETVER == 20150527
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x083c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0940,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-06-17aRagexeRE or 2015-06-18aRagexeRE
+#elif PACKETVER == 20150617 || PACKETVER == 20150618
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0362,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0363,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0365,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07ec,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	//parseable_packet(0x0811,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0869,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x086a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x086b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0870,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x087a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0886,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x0894,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0940,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x094e,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-08-19aRagexeRE
+#elif PACKETVER == 20150819
+	parseable_packet(0x0202,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x022d,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0281,6,clif_parse_TakeItem,2);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x085d,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x0862,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0865,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0871,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0888,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0919,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091e,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0927,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0940,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0961,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0967,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-08-26aRagexeRE
+#elif PACKETVER == 20150826
+	parseable_packet(0x0362,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0368,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0436,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x07ec,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0819,6,clif_parse_ReqClickBuyingStore,2);
+	//parseable_packet(0x0861,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0865,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x086b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0870,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x087b,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x088b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x088d,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0890,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0891,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08a0,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08a1,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a8,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0924,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0928,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x092e,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x093b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0945,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x094f,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0951,6,clif_parse_TickSend,2);
+	parseable_packet(0x0959,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0964,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x0968,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0969,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+// 2015-09-16Ragexe
+#elif PACKETVER == 20150916
+	parseable_packet(0x022D,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0817,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0835,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x085E,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0869,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0873,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0877,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x087F,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0881,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x089B,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x089C,6,clif_parse_TakeItem,2);
+	parseable_packet(0x089E,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x08AC,6,clif_parse_TickSend,2);
+	parseable_packet(0x0920,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0924,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x092E,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x092F,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0934,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0936,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x0938,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x093E,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0941,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0942,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0948,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//parseable_packet(0x094F,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x095A,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0960,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0961,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0969,19,clif_parse_WantToConnection,2,6,10,14,18);
+// 2015-10-01bRagexeRE
+#elif PACKETVER == 20151001
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,NULL,2,4,6);
+	parseable_packet(0x0366,90,NULL,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0860,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-10-07aRagexeRE
+#elif PACKETVER == 20151007
+	parseable_packet(0x0202,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x0862,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x093f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x095f,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0961,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0967,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-10-14bRagexeRE
+#elif PACKETVER == 20151014
+	parseable_packet(0x0202,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0817,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0838,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x085a,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085c,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0860,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0863,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0867,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0872,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0874,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0881,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0883,6,clif_parse_TickSend,2);
+	parseable_packet(0x0884,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0889,6,clif_parse_ReqClickBuyingStore,2);
+	//parseable_packet(0x088e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	//parseable_packet(0x089a,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x089b,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x089f,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x08aa,6,clif_parse_TakeItem,2);
+	parseable_packet(0x091c,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x091d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0930,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0934,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0944,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x094f,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0956,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x095e,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0961,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0964,19,clif_parse_WantToConnection,2,6,10,14,18);
+// 2015-10-28cRagexeRE
+#elif PACKETVER == 20151028
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0860,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-10-29aRagexe
+#elif PACKETVER == 20151029
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022D,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023B,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035F,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07E4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07EC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0860,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096A,6,clif_parse_GetCharNameRequest,2);
+// 2015-11-04aRagexe
+#elif PACKETVER == 20151104
+	parseable_packet(0x023B,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0360,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0363,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0437,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07EC,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0811,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0815,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0886,6,clif_parse_TickSend,2);
+	parseable_packet(0x0887,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x088B,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x088D,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x08A3,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08A5,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0928,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x0939,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x093A,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0940,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x0964,6,clif_parse_TakeItem,2);
+// 2015-11-18aRagexeRE
+#elif PACKETVER == 20151118
+	parseable_packet(0x022d,6,clif_parse_TickSend,2);
+	parseable_packet(0x035f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0365,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x086b,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x088b,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x08ab,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0921,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0925,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x092e,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x092f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x093c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0943,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0946,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	//parseable_packet(0x0957,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095c,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2015-12-02bRagexeRE
+#elif PACKETVER == 20151202
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0870,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+#elif PACKETVER == 20151216
+	parseable_packet(0x022D,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0361,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x0364,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0436,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083C,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x085B,6,clif_parse_TickSend,2);
+	parseable_packet(0x0864,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0865,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x086E,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x086a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0870,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0874,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0885,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x088B,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x089D,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x089E,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08A2,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x08A9,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08AC,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091D,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0944,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0947,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0949,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0954,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0960,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0966,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0968,10,clif_parse_UseSkillToId,2,4,6);
+// 2015-12-23bRagexeRE
+#elif PACKETVER == 20151223
+	parseable_packet(0x02c4,8,clif_parse_MoveToKafra,2,4);
+	//parseable_packet(0x0362,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x0802,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0815,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0864,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0866,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x086e,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0872,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0875,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0876,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0881,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0884,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0886,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x088d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0890,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0891,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0898,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x08aa,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0918,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x091a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x091b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0920,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0923,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0924,6,clif_parse_TickSend,2);
+	parseable_packet(0x095e,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x095f,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0965,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0967,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+// 2016-01-06aRagexeRE
+#elif PACKETVER == 20160106
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07ec,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0861,6,clif_parse_TakeItem,2);
+	parseable_packet(0x086a,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x086c,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0878,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x087a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x087f,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0885,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0889,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x088a,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0891,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a0,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x091d,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x0940,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-01-13cRagexeRE
+#elif PACKETVER == 20160113
+	parseable_packet(0x022d,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x023b,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x035f,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0815,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x085b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0864,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x086d,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x0873,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0875,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0888,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x088c,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0892,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0893,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0899,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x089a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a0,6,clif_parse_TickSend,2);
+	parseable_packet(0x08a6,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08aa,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0919,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x091b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0924,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0930,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0932,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x093c,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0941,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x094d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x094f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0967,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+// 2016-01-20aRagexeRE
+#elif PACKETVER == 20160120
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0865,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-01-27bRagexeRE
+#elif PACKETVER == 20160127
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085e,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0922,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x095a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0961,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-02-03aRagexeRE
+#elif PACKETVER == 20160203
+	parseable_packet(0x0202,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0437,6,clif_parse_TickSend,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0811,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0835,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x086c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0872,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0873,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x088c,4,NULL,0); // CZ_GANGSI_RANK
+	//parseable_packet(0x0918,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x093e,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0940,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0947,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0954,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x095a,6,clif_parse_TakeItem,2);
+	parseable_packet(0x095d,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-02-11aRagexeRE
+#elif PACKETVER == 20160211
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x086c,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0870,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0886,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-02-17cRagexeRE
+#elif PACKETVER == 20160217
+	parseable_packet(0x0202,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x023b,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0362,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0365,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0864,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0870,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0873,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x087a,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0888,6,clif_parse_TickSend,2);
+	parseable_packet(0x088d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x088f,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0899,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08a0,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a9,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x08ac,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08ad,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x091d,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0920,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0926,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x092e,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x093b,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x093e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0941,6,clif_parse_TakeItem,2);
+	parseable_packet(0x094a,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x094f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x095e,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0966,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0967,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0969,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+// 2016-02-24bRagexeRE
+#elif PACKETVER == 20160224
+	parseable_packet(0x022d,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0364,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0436,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0861,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x086b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0884,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0885,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0888,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x08a9,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x0920,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0929,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x092f,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0936,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0938,6,clif_parse_TakeItem,2);
+	parseable_packet(0x094c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0961,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-03-02bRagexeRE
+#elif PACKETVER == 20160302
+	parseable_packet(0x022d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0367,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0802,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0819,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x085b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0864,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0865,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0867,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0868,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0873,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0875,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x087a,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x087d,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0883,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08a6,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x08a9,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x091a,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0927,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x092d,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x092f,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0945,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x094e,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x0950,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0957,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x095a,6,clif_parse_TickSend,2);
+	parseable_packet(0x0960,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0961,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0967,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0968,7,clif_parse_ActionRequest,2,6);
+// 2016-03-09aRagexeRE
+#elif PACKETVER == 20160309
+	parseable_packet(0x023b,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0281,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0364,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0819,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0838,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x083c,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x085a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x085f,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0866,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x086a,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	//parseable_packet(0x0873,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x087c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x087e,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x089b,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x089d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a7,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x091d,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0920,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0922,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//parseable_packet(0x0929,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x092a,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x092e,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0932,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x094f,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0956,6,clif_parse_TickSend,2);
+	parseable_packet(0x095e,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x096a,6,clif_parse_TakeItem,2);
+// 2016-03-16aRagexeRE
+#elif PACKETVER == 20160316
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0922,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-03-23aRagexeRE
+#elif PACKETVER == 20160323
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0365,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x0867,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0869,6,clif_parse_TakeItem,2);
+	parseable_packet(0x086a,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0872,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0878,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0883,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0896,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x089a,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x091b,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0926,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0927,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0933,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x093c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-03-30aRagexeRE
+#elif PACKETVER == 20160330
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0365,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0867,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x086d,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x0878,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x087f,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0889,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088b,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x088d,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0918,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0925,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x092a,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x092c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0930,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0939,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x093b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-04-06aRagexeRE
+#elif PACKETVER == 20160406
+	parseable_packet(0x0364,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x07e4,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0819,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x085a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x085c,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0869,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0877,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0878,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0879,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0884,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0892,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0895,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0898,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x089b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x089e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a1,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a9,2,clif_parse_ReqCloseBuyingStore,0);
+	//parseable_packet(0x08ac,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0927,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x092d,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0933,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0934,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0940,6,clif_parse_TickSend,2);
+	parseable_packet(0x0949,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x094d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0953,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x095d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x095f,5,clif_parse_WalkToXY,2);
+	//parseable_packet(0x0962,4,NULL,0); // CZ_GANGSI_RANK
+// 2016-04-14bRagexeRE
+#elif PACKETVER == 20160414
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0363,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0862,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x087a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0880,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0885,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x089e,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x0918,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0922,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0927,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0931,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0934,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0945,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0953,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-04-20aRagexeRE
+#elif PACKETVER == 20160420
+	parseable_packet(0x022d,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x02c4,6,clif_parse_TickSend,2);
+	parseable_packet(0x035f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0864,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x0870,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0872,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0874,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0884,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0888,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x088b,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a5,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x092f,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0935,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x094e,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x095c,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-04-27aRagexeRE
+#elif PACKETVER == 20160427
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0835,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0940,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-05-04aRagexeRE
+#elif PACKETVER == 20160504
+	parseable_packet(0x0202,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0363,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//parseable_packet(0x0365,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x083c,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x085f,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x086b,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x087f,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0884,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0886,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0887,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x088a,6,clif_parse_TakeItem,2);
+	parseable_packet(0x088d,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x088f,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0890,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0893,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x0898,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x089d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08ad,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0918,6,clif_parse_TickSend,2);
+	parseable_packet(0x0921,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0922,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0924,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x093e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0940,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0941,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0948,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0952,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x095b,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0969,36,clif_parse_StoragePassword,0);
+// 2016-05-11aRagexeRE
+#elif PACKETVER == 20160511
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085e,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0894,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x089b,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0918,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0920,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0940,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-05-18aRagexeRE
+#elif PACKETVER == 20160518
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x086c,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0874,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x089a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a9,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0928,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-05-25aRagexeRE
+#elif PACKETVER == 20160525
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x085a,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x085e,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0867,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x086a,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0899,6,clif_parse_TakeItem,2);
+	parseable_packet(0x089c,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x091d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x092c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0937,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0945,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x094a,8,clif_parse_MoveToKafra,2,4);
+	//parseable_packet(0x094e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0951,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0956,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-06-01aRagexeRE
+#elif PACKETVER == 20160601
+	parseable_packet(0x0202,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x02c4,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0863,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0870,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x087d,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x088d,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x088f,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0895,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x08a7,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x08ac,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x0924,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x095f,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0961,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-06-08aRagexeRE
+#elif PACKETVER == 20160608
+	parseable_packet(0x022d,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x02c4,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x035f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0437,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07ec,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0802,6,clif_parse_TickSend,2);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x085c,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0885,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0889,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0899,6,clif_parse_TakeItem,2);
+	parseable_packet(0x089b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x08a6,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x093b,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x094d,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0958,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x095b,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0969,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-06-15aRagexeRE
+#elif PACKETVER == 20160615
+	parseable_packet(0x0281,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0363,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0364,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0369,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x083c,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0866,5,clif_parse_WalkToXY,2);
+	//parseable_packet(0x0870,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x087d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x087e,6,clif_parse_TakeItem,2);
+	parseable_packet(0x087f,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	//parseable_packet(0x0884,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0887,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0888,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x088a,6,clif_parse_TickSend,2);
+	parseable_packet(0x088d,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0891,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0898,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x092f,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x093e,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0947,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0948,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x094a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x094b,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0954,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0957,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0958,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x095c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x095e,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0961,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+// 2016-06-22aRagexeRE
+#elif PACKETVER == 20160622
+	parseable_packet(0x023b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x035f,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0361,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x07e4,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0861,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	//parseable_packet(0x0865,4,NULL,0); // CZ_GANGSI_RANK
+	//parseable_packet(0x0867,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0880,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0887,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0890,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0891,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0892,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x089a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x089e,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a2,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08a8,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x091c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x092d,6,clif_parse_TickSend,2);
+	parseable_packet(0x092f,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0936,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0937,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x093b,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x093f,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0946,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0959,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0965,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0969,6,clif_parse_DropItem,2,4);
+// 2016-06-30aRagexeRE
+#elif PACKETVER == 20160630
+	parseable_packet(0x0202,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x022d,5,clif_parse_WalkToXY,2);
+	//parseable_packet(0x035f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0363,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0368,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x085c,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	//parseable_packet(0x085e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0860,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0861,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0863,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0867,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x086b,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0881,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0885,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x088e,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0893,6,clif_parse_TickSend,2);
+	parseable_packet(0x091e,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0922,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0925,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0926,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x093e,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0946,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0948,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x094a,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0957,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x095a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0968,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0969,6,clif_parse_TakeItem,2);
+	parseable_packet(0x096a,8,clif_parse_MoveToKafra,2,4);
+// 2016-07-06cRagexeRE
+#elif PACKETVER == 20160706
+	parseable_packet(0x0362,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0436,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x085f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0860,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0869,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x086b,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0884,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x0886,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0889,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0892,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0899,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08a4,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08a5,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x08a8,6,clif_parse_TickSend,2);
+	parseable_packet(0x0918,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x091b,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0924,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0926,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0927,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0929,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x092d,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0939,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x093d,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0944,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0945,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x094c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0952,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0957,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0958,6,clif_parse_TakeItem,2);
+// 2016-07-13bRagexeRE
+#elif PACKETVER == 20160713
+	parseable_packet(0x022d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0363,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0364,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0838,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0860,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0865,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0869,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0875,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0877,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x087b,6,clif_parse_TickSend,2);
+	parseable_packet(0x0883,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x088d,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0892,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x089a,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x089f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08a2,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a4,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x091c,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x091d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0921,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0922,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x092c,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0931,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0939,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0944,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0945,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0947,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0957,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x095b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+// 2016-07-20aRagexeRE
+#elif PACKETVER == 20160720
+	parseable_packet(0x0362,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0363,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0365,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x07e4,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0819,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0838,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x085b,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x086a,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x086d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x087f,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0883,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0887,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0897,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x089a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x089c,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x089e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a0,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08aa,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x0917,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x091c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x092a,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x093b,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x093e,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0946,6,clif_parse_TickSend,2);
+	parseable_packet(0x094d,6,clif_parse_SolveCharName,2);
+	//parseable_packet(0x0953,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x095b,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0960,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0969,26,clif_parse_PartyInvite2,2);
+// 2016-07-27bRagexeRE
+#elif PACKETVER == 20160727
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x023b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0362,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0363,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0436,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0438,6,clif_parse_TickSend,2);
+	parseable_packet(0x07ec,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0866,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0868,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0869,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0874,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0877,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0883,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0887,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x088e,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0891,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x089f,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x08a2,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a4,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08a7,6,clif_parse_TakeItem,2);
+	parseable_packet(0x092e,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0936,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0941,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0946,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0949,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0951,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x095f,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0966,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0969,-1,clif_parse_ItemListWindowSelected,2,4,8);
+// 2016-08-03bRagexeRE
+#elif PACKETVER == 20160803
+	parseable_packet(0x0364,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x085d,6,clif_parse_ReqClickBuyingStore,2);
+	//parseable_packet(0x0878,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x087f,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0881,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0886,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0887,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0888,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088b,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0891,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0895,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x089c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x089e,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x08a1,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x091b,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0929,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0930,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0932,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0934,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0937,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x093a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x093e,6,clif_parse_TickSend,2);
+	parseable_packet(0x093f,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0952,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0955,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0956,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0959,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x095a,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x096a,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+// 2016-08-10aRagexeRE
+#elif PACKETVER == 20160810
+	parseable_packet(0x0361,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0819,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0838,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x085d,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x085e,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x085f,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0860,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x086f,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0875,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0879,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x087a,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0885,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0888,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0890,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x089d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x089f,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x08a9,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091a,6,clif_parse_TakeItem,2);
+	parseable_packet(0x091b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x091c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x0926,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x092b,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x092d,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0935,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0943,6,clif_parse_TickSend,2);
+	parseable_packet(0x094b,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0959,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x095b,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0967,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+// 2016-08-31bRagexeRE
+#elif PACKETVER == 20160831
+	parseable_packet(0x022d,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0366,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x07ec,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0835,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0865,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x086d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0870,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0874,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x0876,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0878,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x087c,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x08a8,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x08a9,6,clif_parse_TickSend,2);
+	parseable_packet(0x0917,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x091b,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x092c,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x092e,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0938,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x093a,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0946,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x094a,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x094f,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0950,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0954,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0957,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x095e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0960,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0964,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0967,10,clif_parse_UseSkillToId,2,4,6);
+// 2016-09-07aRagexeRE
+#elif PACKETVER == 20160907
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x091c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-09-13aRagexeRE
+#elif PACKETVER == 20160913
+	parseable_packet(0x0361,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0817,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x085b,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0865,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0874,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0875,6,clif_parse_TickSend,2);
+	parseable_packet(0x0879,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x087a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x087b,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0887,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0889,6,clif_parse_TakeItem,2);
+	parseable_packet(0x088e,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x088f,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0891,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0892,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x089b,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x089c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a5,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0928,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0935,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x093a,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0949,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x094a,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0950,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0952,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0954,5,clif_parse_WalkToXY,2);
+	//parseable_packet(0x0962,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0963,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0968,2,clif_parse_ReqCloseBuyingStore,0);
+// 2016-09-21bRagexeRE
+#elif PACKETVER == 20160921
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x094a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-09-28dRagexeRE
+#elif PACKETVER == 20160928
+	parseable_packet(0x0202,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0366,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0436,6,clif_parse_ReqClickBuyingStore,2);
+	//parseable_packet(0x0811,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0838,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0864,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0866,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x086d,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0872,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0878,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x087f,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0889,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x088e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0897,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x089a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a2,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a9,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0919,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x091e,6,clif_parse_TickSend,2);
+	parseable_packet(0x0927,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x092d,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0944,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x094d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x094e,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0953,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0955,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0957,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x095a,4,NULL,0); // CZ_GANGSI_RANK
+// 2016-10-05aRagexeRE
+#elif PACKETVER == 20161005
+	parseable_packet(0x0202,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0838,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0863,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0886,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x088e,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0891,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0892,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x089b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x089c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a0,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08ac,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x08ad,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0918,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0919,6,clif_parse_SolveCharName,2);
+	//parseable_packet(0x091e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x092b,6,clif_parse_TickSend,2);
+	parseable_packet(0x0931,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0932,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x093b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0942,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0944,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0945,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x094a,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x094d,5,clif_parse_HomMenu,2,4);
+	//parseable_packet(0x0952,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x095b,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0967,10,clif_parse_UseSkillToId,2,4,6);
+// 2016-10-12aRagexeRE
+#elif PACKETVER == 20161012
+	parseable_packet(0x023b,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0364,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0365,6,clif_parse_TickSend,2);
+	parseable_packet(0x0369,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x07ec,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0819,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x085b,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x085e,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0863,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0868,6,clif_parse_TakeItem,2);
+	parseable_packet(0x086d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0872,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0875,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0880,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0893,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a0,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x092d,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0936,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0937,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0939,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0943,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0944,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x094f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0951,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x095c,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0962,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0966,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0967,36,clif_parse_StoragePassword,0);
+// 2016-10-19aRagexeRE
+#elif PACKETVER == 20161019
+	parseable_packet(0x022d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0361,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0889,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x0892,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0946,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0963,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-10-26bRagexeRE
+#elif PACKETVER == 20161026
+	parseable_packet(0x0363,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0438,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0802,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x085a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x085f,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0861,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0862,6,clif_parse_TickSend,2);
+	parseable_packet(0x086a,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x086c,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	//parseable_packet(0x086e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x087a,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	//parseable_packet(0x087c,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x087f,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0886,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0891,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0894,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0898,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x091a,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x091b,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0926,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x092c,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x092e,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x092f,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0930,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x094b,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0953,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x095c,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x095e,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0962,5,clif_parse_ChangeDir,2,4);
+// 2016-11-03aRagexeRE
+#elif PACKETVER == 20161103
+	parseable_packet(0x0361,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x0367,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0436,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0802,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0838,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x083c,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x085f,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0869,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x086c,2,clif_parse_SearchStoreInfoNextPage,0);
+	//parseable_packet(0x086f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0874,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0886,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0890,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x089f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x08a2,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x08aa,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x091b,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0922,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0925,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0928,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x092f,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0936,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0946,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0949,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x095e,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0964,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0965,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0966,6,clif_parse_TickSend,2);
+// 2016-11-09bRagexeRE
+#elif PACKETVER == 20161109
+	parseable_packet(0x02c4,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0361,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0362,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,6,clif_parse_TickSend,2);
+	parseable_packet(0x0366,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x085d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x085e,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0865,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x086a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x086d,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0870,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0876,6,clif_parse_ReqClickBuyingStore,2);
+	//parseable_packet(0x087a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0881,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x088e,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0891,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0898,6,clif_parse_TakeItem,2);
+	parseable_packet(0x089a,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x089d,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//parseable_packet(0x089f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x08a7,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x08ad,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0927,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0937,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x093c,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x093f,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0954,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0956,5,clif_parse_ChangeDir,2,4);
+// 2016-11-16cRagexeRE
+#elif PACKETVER == 20161116
+	parseable_packet(0x0368,6,clif_parse_TickSend,2);
+	parseable_packet(0x0369,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0835,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x085f,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0864,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x086f,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0885,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x088b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x088d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x088f,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0890,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0892,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0893,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a1,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a2,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08aa,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08ac,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0920,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0925,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x092a,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0931,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x093c,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x094a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0952,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0957,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x095b,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x095d,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095f,2,clif_parse_SearchStoreInfoNextPage,0);
+	//parseable_packet(0x0967,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+// 2016-11-23aRagexeRE
+#elif PACKETVER == 20161123
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0362,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0437,6,clif_parse_TickSend,2);
+	parseable_packet(0x085c,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0861,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0862,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0866,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x086f,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0871,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x087f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0880,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0882,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x088b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x089c,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a9,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x08aa,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x091a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0926,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x092a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x092f,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0930,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0941,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x094d,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x094f,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	//parseable_packet(0x095a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x095b,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0962,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_SolveCharName,2);
+// 2016-11-30bRagexeRE
+#elif PACKETVER == 20161130
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,6,clif_parse_TickSend,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	//parseable_packet(0x088f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0931,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0943,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0954,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0959,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-12-07eRagexeRE
+#elif PACKETVER == 20161207
+	parseable_packet(0x023b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0867,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x0868,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0875,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x087e,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0886,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08a1,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a2,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08ad,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0918,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x091d,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x0943,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0965,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-12-14bRagexeRE
+#elif PACKETVER == 20161214
+	parseable_packet(0x022d,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0281,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x02c4,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0364,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0436,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	//parseable_packet(0x0819,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085a,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0862,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x086d,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0887,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0895,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0899,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x08a6,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x092e,6,clif_parse_TakeItem,2);
+	parseable_packet(0x093d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2016-12-21aRagexeRE
+#elif PACKETVER == 20161221
+	parseable_packet(0x035f,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0366,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0438,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0817,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x085b,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0866,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0876,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0881,6,clif_parse_GetCharNameRequest,2);
+	//parseable_packet(0x0884,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0885,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x088c,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0890,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x0899,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x089a,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x089b,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x08aa,6,clif_parse_TickSend,2);
+	parseable_packet(0x091e,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0926,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0928,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x092c,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x092e,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0930,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0943,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0946,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x094b,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x095a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0964,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0965,5,clif_parse_ChangeDir,2,4);
+// 2016-12-28aRagexeRE
+#elif PACKETVER == 20161228
+	parseable_packet(0x0362,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x085a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x085e,5,clif_parse_HomMenu,4);
+	parseable_packet(0x0865,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x086a,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x086c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x086d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0870,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0871,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0875,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x087f,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0886,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0889,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0893,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x089f,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a2,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08a3,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x08a5,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08ab,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08ac,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x08ad,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x091c,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0929,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x092c,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0934,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x0935,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	//parseable_packet(0x0938,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x093d,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0944,6,clif_parse_TickSend,2);
+// 2017-01-04bRagexeRE
+#elif PACKETVER == 20170104
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x085a,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x087f,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0896,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x091b,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0940,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-01-11aRagexeRE
+#elif PACKETVER == 20170111
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0877,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x087f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x088a,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a1,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a3,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a6,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x091a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x091b,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0940,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x094c,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0961,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0969,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-01-18aRagexeRE
+#elif PACKETVER == 20170118
+	parseable_packet(0x022d,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0364,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0436,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0862,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0865,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x086f,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x0873,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x089e,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x08ad,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x091f,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x0927,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0933,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0958,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0962,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x096a,8,clif_parse_MoveToKafra,2,4);
+// 2017-01-25aRagexeRE
+#elif PACKETVER == 20170125
+	parseable_packet(0x0438,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0811,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x086e,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0876,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0877,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0879,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x087b,6,clif_parse_TakeItem,2);
+	parseable_packet(0x087d,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0881,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x0884,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0893,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x0894,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0895,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0898,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x089b,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x08a5,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x091b,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x091c,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0920,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0929,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x092b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0930,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x093c,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0943,6,clif_parse_TickSend,2);
+	parseable_packet(0x0944,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x095c,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0965,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0968,2,clif_parse_SearchStoreInfoNextPage,0);
+// 2017-02-01aRagexeRE
+#elif PACKETVER == 20170201
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0815,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085d,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x085e,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0875,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x0879,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0881,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0884,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0885,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0886,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x088b,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x08a4,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0919,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0920,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0938,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0940,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x094c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0966,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0969,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-02-08aRagexeRE
+#elif PACKETVER == 20170208
+	//parseable_packet(0x02c4,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0367,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085c,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0860,5,clif_parse_ChangeDir,2,4);
+	//parseable_packet(0x087a,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x088c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0892,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x08a1,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x08ac,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0921,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0923,6,clif_parse_TakeItem,2);
+	parseable_packet(0x092d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0932,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0937,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-02-15aRagexeRE
+#elif PACKETVER == 20170215
+	parseable_packet(0x02c4,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x035f,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0360,6,clif_parse_TickSend,2);
+	parseable_packet(0x0811,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x083c,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x085c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0876,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x087c,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x087d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x087e,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0883,6,clif_parse_SolveCharName,2);
+	//parseable_packet(0x0884,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x088a,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x088b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x088c,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0890,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x0896,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x089b,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a2,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08a8,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x091c,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0925,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x092b,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x092d,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0942,6,clif_parse_TakeItem,2);
+	parseable_packet(0x094e,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x095f,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0962,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0969,5,clif_parse_WalkToXY,2);
+// 2017-02-22aRagexeRE
+#elif PACKETVER == 20170222
+	parseable_packet(0x0202,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085f,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0866,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0870,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x0871,4,NULL,0); // CZ_GANGSI_RANK
+	//parseable_packet(0x0877,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0889,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0894,6,clif_parse_TakeItem,2);
+	parseable_packet(0x08a3,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x08a8,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0937,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0939,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0943,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x095d,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0962,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-02-28aRagexeRE
+#elif PACKETVER == 20170228
+	parseable_packet(0x022d, 6, clif_parse_DropItem, 2, 4);
+	parseable_packet(0x0360, 7, clif_parse_ActionRequest, 2, 6);
+	parseable_packet(0x0362, 5, clif_parse_HomMenu, 2, 4);
+	parseable_packet(0x0819, 12, clif_parse_SearchStoreInfoListItemClick, 2, 6, 10);
+	parseable_packet(0x085e, 90, clif_parse_UseSkillToPosMoreInfo, 2, 4, 6, 8, 10);
+	parseable_packet(0x0863, -1, clif_parse_SearchStoreInfo, 2, 4, 5, 9, 13, 14, 15);
+	parseable_packet(0x086b, 19, clif_parse_WantToConnection, 2, 6, 10, 14, 18);
+	parseable_packet(0x0873, -1, clif_parse_ItemListWindowSelected, 2, 4, 8);
+	parseable_packet(0x0874, -1, clif_parse_ReqOpenBuyingStore, 2, 4, 8, 9, 89);
+	parseable_packet(0x0876, 2, clif_parse_ReqCloseBuyingStore, 0);
+	parseable_packet(0x0883, 2, clif_parse_SearchStoreInfoNextPage, 0);
+	parseable_packet(0x0884, 5, clif_parse_WalkToXY, 2);
+	parseable_packet(0x0889, 5, clif_parse_ChangeDir, 2, 4);
+	parseable_packet(0x0893, 6, clif_parse_GetCharNameRequest, 2);
+	parseable_packet(0x089e, 8, clif_parse_MoveToKafra, 2, 4);
+	parseable_packet(0x08a0, 26, clif_parse_FriendsListAdd, 2);
+	parseable_packet(0x08a2, 36, clif_parse_StoragePassword, 0);
+	//parseable_packet(0x08a6,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x08a7, 6, clif_parse_ReqClickBuyingStore, 2);
+	parseable_packet(0x091f, 10, clif_parse_UseSkillToId, 2, 4, 6);
+	parseable_packet(0x092a, 6, clif_parse_TakeItem, 2);
+	parseable_packet(0x092e, -1, clif_parse_ReqTradeBuyingStore, 2, 4, 8, 12);
+	parseable_packet(0x0937, 6, clif_parse_TickSend, 2);
+	//parseable_packet(0x093e,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0944, 8, clif_parse_MoveFromKafra, 2, 4);
+	parseable_packet(0x0947, 6, clif_parse_SolveCharName, 2);
+	parseable_packet(0x0948, 26, clif_parse_PartyInvite2, 2);
+	parseable_packet(0x0952, 10, clif_parse_UseSkillToPos, 2, 4, 6, 8);
+	parseable_packet(0x0955, 18, clif_parse_PartyBookingRegisterReq, 2, 4);
+// 2017-03-08bRagexeRE
+#elif PACKETVER == 20170308
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x087d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-03-15cRagexeRE
+#elif PACKETVER == 20170315
+	parseable_packet(0x02c4,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x035f,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0360,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0366,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0367,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0436,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x07ec,6,clif_parse_TickSend,2);
+	//parseable_packet(0x085c,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0863,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x086a,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0872,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x087b,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0884,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x088b,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x088d,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x088f,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0892,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x089c,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x08aa,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091a,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x091b,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x091d,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0920,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0922,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0944,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x094a,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x094e,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0950,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0952,36,clif_parse_StoragePassword,0);
+// 2017-03-22aRagexeRE
+#elif PACKETVER == 20170322
+	parseable_packet(0x0202,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x022d,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x023b,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0361,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x091a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-03-29dRagexeRE
+#elif PACKETVER == 20170329
+	parseable_packet(0x0281,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0363,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085d,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x087a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0888,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x08a8,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0917,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0926,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0929,6,clif_parse_TakeItem,2);
+	parseable_packet(0x092e,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0937,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0939,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0949,8,clif_parse_MoveFromKafra,2,4);
+	//parseable_packet(0x095f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-04-05bRagexeRE
+#elif PACKETVER == 20170405
+	parseable_packet(0x022d,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0281,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0363,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x085f,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0860,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0864,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0865,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x086f,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0893,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x08a5,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x094c,36,clif_parse_StoragePassword,0);
+	//parseable_packet(0x094f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0964,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-04-12aRagexeRE
+#elif PACKETVER == 20170412
+	parseable_packet(0x023b,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0365,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0863,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0869,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x086d,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0878,5,clif_parse_WalkToXY,2);
+	//parseable_packet(0x0879,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x087b,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x088b,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0890,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0893,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0898,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x089a,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x089c,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x08a1,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x091a,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x091e,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0929,6,clif_parse_TickSend,2);
+	//parseable_packet(0x092e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0938,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0942,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0945,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0949,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x094f,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0952,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0959,6,clif_parse_TakeItem,2);
+	parseable_packet(0x095b,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x095c,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x095d,36,clif_parse_StoragePassword,0);
+// 2017-04-19bRagexeRE
+#elif PACKETVER == 20170419
+	parseable_packet(0x0811,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0819,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0838,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x085a,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x085e,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0862,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0868,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x086a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	//parseable_packet(0x0872,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0881,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x088d,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x088f,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0897,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0898,6,clif_parse_TickSend,2);
+	parseable_packet(0x089d,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x08aa,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091b,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0920,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0922,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0930,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0931,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0935,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x093a,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x093f,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0942,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x095c,6,clif_parse_TakeItem,2);
+	parseable_packet(0x095d,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	//parseable_packet(0x0963,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0965,6,clif_parse_ReqClickBuyingStore,2);
+// 2017-04-26dRagexeRE
+#elif PACKETVER == 20170426
+	parseable_packet(0x0281,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0866,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	//parseable_packet(0x086f,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x087a,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0887,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0899,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x089c,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x08a2,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x08a4,6,clif_parse_TakeItem,2);
+	//parseable_packet(0x091f,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0927,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0940,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0958,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0963,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-05-02dRagexeRE
+#elif PACKETVER == 20170502
+	parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x035f,6,clif_parse_TickSend,2);
+	parseable_packet(0x0360,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0362,6,clif_parse_DropItem,2,4);
+	//parseable_packet(0x0363,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0364,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0365,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0366,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0368,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0369,7,clif_parse_ActionRequest,2,6);
+	//parseable_packet(0x0436,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0438,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x07e4,6,clif_parse_TakeItem,2);
+	parseable_packet(0x07ec,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x0802,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0815,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0817,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0838,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x083c,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0875,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0894,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x089c,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x093c,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0950,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x096a,6,clif_parse_GetCharNameRequest,2);
+// 2017-05-17aRagexeRE
+#elif PACKETVER == 20170517
+	//parseable_packet(0x0364,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0367,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0437,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0802,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0815,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0817,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0868,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0875,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x087b,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x087d,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x088c,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x088d,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0894,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0896,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0899,26,clif_parse_PartyInvite2,2);
+	//parseable_packet(0x089e,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x089f,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x08a2,6,clif_parse_TickSend,2);
+	parseable_packet(0x08a8,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x08aa,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x091b,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0923,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x093b,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0945,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0946,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0947,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0958,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0960,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0964,6,clif_parse_TakeItem,2);
+// 2017-05-24aRagexeRE
+#elif PACKETVER == 20170524
+	parseable_packet(0x0364,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0368,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x0802,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x085e,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x085f,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0860,6,clif_parse_TickSend,2);
+	parseable_packet(0x0864,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0866,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0868,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x086d,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0873,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x0874,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x087d,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x0882,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x088d,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x0894,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x089c,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x08a1,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	//parseable_packet(0x091e,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0923,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x0925,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0934,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0946,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x0958,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x095a,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x095b,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0964,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0967,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x0968,6,clif_parse_SolveCharName,2);
+// 2017-05-31aRagexeRE
+#elif PACKETVER == 20170531
+	parseable_packet(0x0361,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x0369,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x07e4,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x07ec,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0819,6,clif_parse_TickSend,2);
+	//parseable_packet(0x085b,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x085f,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0861,26,clif_parse_FriendsListAdd,2);
+	//parseable_packet(0x0868,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0873,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0875,10,clif_parse_UseSkillToPos,2,4,6,8);
+	parseable_packet(0x0878,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x087b,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x0885,-1,clif_parse_ItemListWindowSelected,2,4,8);
+	parseable_packet(0x088b,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+	parseable_packet(0x088d,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0894,19,clif_parse_WantToConnection,2,6,10,14,18);
+	parseable_packet(0x089a,36,clif_parse_StoragePassword,0);
+	parseable_packet(0x089c,5,clif_parse_HomMenu,4);
+	parseable_packet(0x08a2,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x08ac,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x08ad,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x092d,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0933,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0937,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0940,18,clif_parse_PartyBookingRegisterReq,2,4);
+	parseable_packet(0x0945,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0963,6,clif_parse_TakeItem,2);
+	parseable_packet(0x0968,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+// 2017-06-07cRagexeRE
+#elif PACKETVER == 20170607
+	parseable_packet(0x0361,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
+	parseable_packet(0x0364,36,clif_parse_StoragePassword,2,4,20);
+	parseable_packet(0x07e4,6,clif_parse_TickSend,2);
+	parseable_packet(0x085a,5,clif_parse_ChangeDir,2,4);
+	parseable_packet(0x085e,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
+	parseable_packet(0x0862,6,clif_parse_GetCharNameRequest,2);
+	parseable_packet(0x0863,6,clif_parse_ReqClickBuyingStore,2);
+	parseable_packet(0x0864,6,clif_parse_DropItem,2,4);
+	parseable_packet(0x0871,19,clif_parse_WantToConnection,2,6,10,14,18);
+	//parseable_packet(0x0873,8,NULL,0); // CZ_JOIN_BATTLE_FIELD
+	parseable_packet(0x0875,12,clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0885,26,clif_parse_FriendsListAdd,2);
+	parseable_packet(0x088a,8,clif_parse_MoveFromKafra,2,4);
+	parseable_packet(0x0897,6,clif_parse_TakeItem,2);
+	parseable_packet(0x089d,8,clif_parse_MoveToKafra,2,4);
+	parseable_packet(0x08a9,10,clif_parse_UseSkillToId,2,4,6);
+	parseable_packet(0x08ab,90,clif_parse_UseSkillToPosMoreInfo,2,4,6,8,10);
+	parseable_packet(0x0917,2,clif_parse_SearchStoreInfoNextPage,0);
+	parseable_packet(0x0918,18,clif_parse_PartyBookingRegisterReq,2,4,6);
+	parseable_packet(0x0919,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
+	parseable_packet(0x0925,26,clif_parse_PartyInvite2,2);
+	parseable_packet(0x0927,10,clif_parse_UseSkillToPos,2,4,6,8);
+	//parseable_packet(0x0931,4,NULL,0); // CZ_GANGSI_RANK
+	parseable_packet(0x0934,5,clif_parse_WalkToXY,2);
+	parseable_packet(0x0938,7,clif_parse_ActionRequest,2,6);
+	parseable_packet(0x093d,2,clif_parse_ReqCloseBuyingStore,0);
+	parseable_packet(0x0942,5,clif_parse_HomMenu,2,4);
+	parseable_packet(0x0944,6,clif_parse_SolveCharName,2);
+	parseable_packet(0x0949,-1,clif_parse_ReqOpenBuyingStore,2,4,8,9,89);
+#endif
+
+#endif /* _CLIF_SHUFFLE_H_ */

+ 9 - 0
src/map/map-server.vcxproj.filters

@@ -131,6 +131,15 @@
     <ClInclude Include="clan.h">
       <Filter>Header Files</Filter>
     </ClInclude>
+    <ClInclude Include="clif_obfuscation.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="clif_packetdb.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="clif_shuffle.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="atcommand.c">

+ 2 - 2
src/map/pc.c

@@ -1228,10 +1228,10 @@ bool pc_authok(struct map_session_data *sd, uint32 login_id2, time_t expiration_
 	//display login notice
 	ShowInfo("'"CL_WHITE"%s"CL_RESET"' logged in."
 	         " (AID/CID: '"CL_WHITE"%d/%d"CL_RESET"',"
-	         " Packet Ver: '"CL_WHITE"%d"CL_RESET"', IP: '"CL_WHITE"%d.%d.%d.%d"CL_RESET"',"
+	         " IP: '"CL_WHITE"%d.%d.%d.%d"CL_RESET"',"
 	         " Group '"CL_WHITE"%d"CL_RESET"').\n",
 	         sd->status.name, sd->status.account_id, sd->status.char_id,
-	         sd->packet_ver, CONVIP(ip), sd->group_id);
+	         CONVIP(ip), sd->group_id);
 	// Send friends list
 	clif_friendslist_send(sd);
 

+ 0 - 1
src/map/pc.h

@@ -289,7 +289,6 @@ struct map_session_data {
 	int count_rewarp; //count how many time we being rewarped
 
 	int langtype;
-	uint32 packet_ver;  // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 9aug04/16aug04/17aug04, 10: 6sept04, 11: 21sept04, 12: 18oct04, 13: 25oct04 ... 18
 	struct mmo_charstatus status;
 
 	// Item Storages

+ 0 - 31
src/map/script.c

@@ -21284,36 +21284,6 @@ BUILDIN_FUNC(party_destroy)
 	return SCRIPT_CMD_SUCCESS;
 }
 
-/** Checks if a player's client version meets a required version or date.
-* @param type: 0 - check by version number; 1 - check by date
-* @param data: Input
-*/
-BUILDIN_FUNC(is_clientver) {
-	TBL_PC *sd = NULL;
-	int type;
-	int data;
-	int ret = 0;
-
-	if ( !script_charid2sd(4,sd) ) {
-		script_pushint(st,0);
-		return SCRIPT_CMD_FAILURE;
-	}
-
-	type = script_getnum(st,2);
-	data = script_getnum(st,3);
-
-	switch(type){
-		case 0:
-			ret = (sd->packet_ver >= data)?1:0;
-			break;
-		case 1:
-			ret = (sd->packet_ver >= date2version(data))?1:0;
-			break;
-	}
-	script_pushint(st,ret);
-	return SCRIPT_CMD_SUCCESS;
-}
-
 /** Returns various information about a player's VIP status. Need to enable VIP system
  * vip_status <type>,{"<character name>"};
  * @param type: Info type, see enum vip_status_type
@@ -23758,7 +23728,6 @@ struct script_function buildin_func[] = {
 	BUILDIN_DEF(clan_join,"i?"),
 	BUILDIN_DEF(clan_leave,"?"),
 
-	BUILDIN_DEF(is_clientver,"ii?"),
 	BUILDIN_DEF2(montransform, "transform", "vi?????"), // Monster Transform [malufett/Hercules]
 	BUILDIN_DEF2(montransform, "active_transform", "vi?????"),
 	BUILDIN_DEF(vip_status,"i?"),

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio