summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/char/char.c311
-rw-r--r--src/char/int_homun.c19
-rw-r--r--src/char/int_quest.c14
-rw-r--r--src/char/int_rodex.c205
-rw-r--r--src/char/int_storage.c26
-rw-r--r--src/common/HPMDataCheck.h8
-rw-r--r--src/common/HPMSymbols.inc.h2
-rw-r--r--src/common/mmo.h18
-rw-r--r--src/common/nullpo.h9
-rw-r--r--src/common/sql.c99
-rw-r--r--src/common/sql.h2
-rw-r--r--src/login/account_sql.c34
-rw-r--r--src/login/lclif.c15
-rw-r--r--src/login/lclif.p.h17
-rw-r--r--src/login/login.c140
-rw-r--r--src/login/login.h21
-rw-r--r--src/map/Makefile.in7
-rw-r--r--src/map/atcommand.c19
-rw-r--r--src/map/battle.c1
-rw-r--r--src/map/battle.h3
-rw-r--r--src/map/chrif.c6
-rw-r--r--src/map/clif.c331
-rw-r--r--src/map/clif.h16
-rw-r--r--src/map/elemental.c2
-rw-r--r--src/map/homunculus.c7
-rw-r--r--src/map/homunculus.h2
-rw-r--r--src/map/intif.c22
-rw-r--r--src/map/itemdb.c6
-rw-r--r--src/map/itemdb.h4
-rw-r--r--src/map/map.c6
-rw-r--r--src/map/map.h5
-rw-r--r--src/map/mapreg_sql.c6
-rw-r--r--src/map/mercenary.c2
-rw-r--r--src/map/mercenary.h2
-rw-r--r--src/map/mob.c19
-rw-r--r--src/map/mob.h9
-rw-r--r--src/map/npc.c32
-rw-r--r--src/map/npc.h3
-rw-r--r--src/map/packets.h8011
-rw-r--r--src/map/packets_keys_main.h (renamed from src/map/packets_keys.h)944
-rw-r--r--src/map/packets_keys_zero.h118
-rw-r--r--src/map/packets_shuffle_main.h9537
-rw-r--r--src/map/packets_shuffle_zero.h489
-rw-r--r--src/map/packets_struct.h86
-rw-r--r--src/map/pc.c54
-rw-r--r--src/map/pc.h2
-rw-r--r--src/map/pet.c8
-rw-r--r--src/map/script.c339
-rw-r--r--src/map/script.h27
-rw-r--r--src/map/skill.c853
-rw-r--r--src/map/skill.h111
-rw-r--r--src/map/status.c44
-rw-r--r--src/map/status.h2
-rw-r--r--src/plugins/HPMHooking/HPMHooking.Defs.inc246
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.Hooks.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.sources.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc62
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc17
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.Hooks.inc403
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.sources.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc54
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc15
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc569
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.sources.inc2
66 files changed, 14272 insertions, 9181 deletions
diff --git a/src/char/char.c b/src/char/char.c
index 78b2d19fa..c3fcd9e0a 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -600,7 +600,7 @@ int char_mmo_char_tosql(int char_id, struct mmo_charstatus* p)
StrBuf->Clear(&buf);
StrBuf->Printf(&buf, "INSERT INTO `%s`(`char_id`,`id`,`lv`,`flag`) VALUES ", skill_db);
//insert here.
- for( i = 0, count = 0; i < MAX_SKILL; ++i ) {
+ for (i = 0, count = 0; i < MAX_SKILL_DB; ++i) {
if( p->skill[i].id != 0 && p->skill[i].flag != SKILL_FLAG_TEMPORARY ) {
if( p->skill[i].lv == 0 && ( p->skill[i].flag == SKILL_FLAG_PERM_GRANTED || p->skill[i].flag == SKILL_FLAG_PERMANENT ) )
continue;
@@ -755,7 +755,7 @@ int char_getitemdata_from_sql(struct item *items, int max, int guid, enum invent
stmt = SQL->StmtMalloc(inter->sql_handle);
if (SQL_ERROR == SQL->StmtPrepareStr(stmt, StrBuf->Value(&buf))
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &guid, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &guid, sizeof guid)
|| SQL_ERROR == SQL->StmtExecute(stmt)) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
@@ -763,32 +763,35 @@ int char_getitemdata_from_sql(struct item *items, int max, int guid, enum invent
return -1;
}
- if (SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &item.id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_SHORT, &item.nameid, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_SHORT, &item.amount, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_UINT, &item.equip, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_CHAR, &item.identify, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_CHAR, &item.refine, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_CHAR, &item.attribute, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT, &item.expire_time, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_UCHAR, &item.bound, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_UINT64, &item.unique_id, 0, NULL, NULL))
- {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &item.id, sizeof item.id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_SHORT, &item.nameid, sizeof item.nameid, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_SHORT, &item.amount, sizeof item.amount, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_UINT, &item.equip, sizeof item.equip, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_CHAR, &item.identify, sizeof item.identify, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_CHAR, &item.refine, sizeof item.refine, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_CHAR, &item.attribute, sizeof item.attribute, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT, &item.expire_time, sizeof item.expire_time, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_UCHAR, &item.bound, sizeof item.bound, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_UINT64, &item.unique_id, sizeof item.unique_id, NULL, NULL)
+ ) {
SqlStmt_ShowDebug(stmt);
}
- for (i = 0; i < MAX_SLOTS; i++)
- if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + i, SQLDT_SHORT, &item.card[i], 0, NULL, NULL))
+ for (i = 0; i < MAX_SLOTS; i++) {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + i, SQLDT_SHORT, &item.card[i], sizeof item.card[i], NULL, NULL))
SqlStmt_ShowDebug(stmt);
+ }
- for (i = 0; i < MAX_ITEM_OPTIONS; i++)
- if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + i * 2, SQLDT_INT16, &item.option[i].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 11 + MAX_SLOTS + i * 2, SQLDT_INT16, &item.option[i].value, 0, NULL, NULL))
+ for (i = 0; i < MAX_ITEM_OPTIONS; i++) {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + i * 2, SQLDT_INT16, &item.option[i].index, sizeof item.option[i].index, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 11 + MAX_SLOTS + i * 2, SQLDT_INT16, &item.option[i].value, sizeof item.option[i].index, NULL, NULL))
SqlStmt_ShowDebug(stmt);
+ }
- if (has_favorite)
- if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + MAX_ITEM_OPTIONS * 2, SQLDT_UCHAR, &item.favorite, 0, NULL, NULL))
+ if (has_favorite) {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + MAX_ITEM_OPTIONS * 2, SQLDT_CHAR, &item.favorite, sizeof item.favorite, NULL, NULL))
SqlStmt_ShowDebug(stmt);
+ }
if (SQL->StmtNumRows(stmt) > 0 ) {
i = 0;
@@ -1066,46 +1069,46 @@ int char_mmo_chars_fromsql(struct char_session_data* sd, uint8* buf)
"`robe`,`slotchange`,`unban_time`,`sex`"
" FROM `%s` WHERE `account_id`='%d' AND `char_num` < '%d'", char_db, sd->account_id, MAX_CHARS)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p.char_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR, &p.slot, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &p.name, sizeof(p.name), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_SHORT, &p.class, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_INT, &p.base_level, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &p.job_level, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_UINT64, &p.base_exp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT64, &p.job_exp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_INT, &p.zeny, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_SHORT, &p.str, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_SHORT, &p.agi, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_SHORT, &p.vit, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_SHORT, &p.int_, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_SHORT, &p.dex, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 14, SQLDT_SHORT, &p.luk, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 15, SQLDT_INT, &p.max_hp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 16, SQLDT_INT, &p.hp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 17, SQLDT_INT, &p.max_sp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 18, SQLDT_INT, &p.sp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 19, SQLDT_INT, &p.status_point, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 20, SQLDT_INT, &p.skill_point, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 21, SQLDT_UINT, &p.option, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 22, SQLDT_UCHAR, &p.karma, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 23, SQLDT_SHORT, &p.manner, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 24, SQLDT_SHORT, &p.hair, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 25, SQLDT_SHORT, &p.hair_color, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 26, SQLDT_SHORT, &p.clothes_color, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 27, SQLDT_SHORT, &p.body, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 28, SQLDT_SHORT, &p.look.weapon, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 29, SQLDT_SHORT, &p.look.shield, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 30, SQLDT_SHORT, &p.look.head_top, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 31, SQLDT_SHORT, &p.look.head_mid, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 32, SQLDT_SHORT, &p.look.head_bottom, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 33, SQLDT_STRING, &last_map, sizeof(last_map), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 34, SQLDT_USHORT, &p.rename, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 35, SQLDT_UINT32, &p.delete_date, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 36, SQLDT_SHORT, &p.look.robe, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 37, SQLDT_USHORT, &p.slotchange, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 38, SQLDT_LONG, &unban_time, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 39, SQLDT_ENUM, &sex, sizeof(sex), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p.char_id, sizeof p.char_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR, &p.slot, sizeof p.slot, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &p.name, sizeof p.name, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_INT16, &p.class, sizeof p.class, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_INT, &p.base_level, sizeof p.base_level, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &p.job_level, sizeof p.job_level, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_UINT64, &p.base_exp, sizeof p.base_exp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT64, &p.job_exp, sizeof p.job_exp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_INT, &p.zeny, sizeof p.zeny, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_SHORT, &p.str, sizeof p.str, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_SHORT, &p.agi, sizeof p.agi, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_SHORT, &p.vit, sizeof p.vit, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_SHORT, &p.int_, sizeof p.int_, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_SHORT, &p.dex, sizeof p.dex, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 14, SQLDT_SHORT, &p.luk, sizeof p.luk, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 15, SQLDT_INT, &p.max_hp, sizeof p.max_hp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 16, SQLDT_INT, &p.hp, sizeof p.hp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 17, SQLDT_INT, &p.max_sp, sizeof p.max_sp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 18, SQLDT_INT, &p.sp, sizeof p.sp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 19, SQLDT_INT, &p.status_point, sizeof p.status_point, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 20, SQLDT_INT, &p.skill_point, sizeof p.skill_point, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 21, SQLDT_UINT, &p.option, sizeof p.option, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 22, SQLDT_UCHAR, &p.karma, sizeof p.karma, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 23, SQLDT_SHORT, &p.manner, sizeof p.manner, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 24, SQLDT_SHORT, &p.hair, sizeof p.hair, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 25, SQLDT_SHORT, &p.hair_color, sizeof p.hair_color, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 26, SQLDT_SHORT, &p.clothes_color, sizeof p.clothes_color, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 27, SQLDT_SHORT, &p.body, sizeof p.body, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 28, SQLDT_SHORT, &p.look.weapon, sizeof p.look.weapon, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 29, SQLDT_SHORT, &p.look.shield, sizeof p.look.shield, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 30, SQLDT_SHORT, &p.look.head_top, sizeof p.look.head_top, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 31, SQLDT_SHORT, &p.look.head_mid, sizeof p.look.head_mid, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 32, SQLDT_SHORT, &p.look.head_bottom, sizeof p.look.head_bottom, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 33, SQLDT_STRING, &last_map, sizeof last_map, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 34, SQLDT_USHORT, &p.rename, sizeof p.rename, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 35, SQLDT_TIME, &p.delete_date, sizeof p.delete_date, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 36, SQLDT_SHORT, &p.look.robe, sizeof p.look.robe, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 37, SQLDT_USHORT, &p.slotchange, sizeof p.slotchange, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 38, SQLDT_TIME, &unban_time, sizeof unban_time, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 39, SQLDT_ENUM, &sex, sizeof sex, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
@@ -1172,67 +1175,67 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
"`save_map`,`save_x`,`save_y`,`partner_id`,`father`,`mother`,`child`,`fame`,`rename`,`delete_date`,`robe`,`slotchange`,"
"`char_opt`,`font`,`uniqueitem_counter`,`sex`,`hotkey_rowshift`"
" FROM `%s` WHERE `char_id`=? LIMIT 1", char_db)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p->char_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &p->account_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UCHAR, &p->slot, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_STRING, &p->name, sizeof(p->name), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_SHORT, &p->class, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &p->base_level, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_INT, &p->job_level, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT64, &p->base_exp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_UINT64, &p->job_exp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_INT, &p->zeny, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_SHORT, &p->str, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_SHORT, &p->agi, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_SHORT, &p->vit, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_SHORT, &p->int_, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 14, SQLDT_SHORT, &p->dex, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 15, SQLDT_SHORT, &p->luk, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 16, SQLDT_INT, &p->max_hp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 17, SQLDT_INT, &p->hp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 18, SQLDT_INT, &p->max_sp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 19, SQLDT_INT, &p->sp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 20, SQLDT_INT, &p->status_point, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 21, SQLDT_INT, &p->skill_point, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 22, SQLDT_UINT, &p->option, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 23, SQLDT_UCHAR, &p->karma, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 24, SQLDT_SHORT, &p->manner, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 25, SQLDT_INT, &p->party_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 26, SQLDT_INT, &p->guild_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 27, SQLDT_INT, &p->pet_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 28, SQLDT_INT, &p->hom_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 29, SQLDT_INT, &p->ele_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 30, SQLDT_SHORT, &p->hair, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 31, SQLDT_SHORT, &p->hair_color, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 32, SQLDT_SHORT, &p->clothes_color, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 33, SQLDT_SHORT, &p->body, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 34, SQLDT_SHORT, &p->look.weapon, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 35, SQLDT_SHORT, &p->look.shield, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 36, SQLDT_SHORT, &p->look.head_top, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 37, SQLDT_SHORT, &p->look.head_mid, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 38, SQLDT_SHORT, &p->look.head_bottom, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 39, SQLDT_STRING, &last_map, sizeof(last_map), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 40, SQLDT_SHORT, &p->last_point.x, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 41, SQLDT_SHORT, &p->last_point.y, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 42, SQLDT_STRING, &save_map, sizeof(save_map), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 43, SQLDT_SHORT, &p->save_point.x, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 44, SQLDT_SHORT, &p->save_point.y, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 45, SQLDT_INT, &p->partner_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 46, SQLDT_INT, &p->father, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 47, SQLDT_INT, &p->mother, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 48, SQLDT_INT, &p->child, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 49, SQLDT_INT, &p->fame, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 50, SQLDT_USHORT, &p->rename, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 51, SQLDT_UINT32, &p->delete_date, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 52, SQLDT_SHORT, &p->look.robe, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 53, SQLDT_USHORT, &p->slotchange, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 54, SQLDT_UINT, &opt, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 55, SQLDT_UCHAR, &p->font, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 56, SQLDT_UINT, &p->uniqueitem_counter, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 57, SQLDT_ENUM, &sex, sizeof(sex), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 58, SQLDT_UCHAR, &p->hotkey_rowshift, 0, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p->char_id, sizeof p->char_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &p->account_id, sizeof p->account_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UCHAR, &p->slot, sizeof p->slot, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_STRING, &p->name, sizeof p->name, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_INT16, &p->class, sizeof p->class, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &p->base_level, sizeof p->base_level, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_INT, &p->job_level, sizeof p->job_level, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_UINT64, &p->base_exp, sizeof p->base_exp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_UINT64, &p->job_exp, sizeof p->job_exp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_INT, &p->zeny, sizeof p->zeny, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_SHORT, &p->str, sizeof p->str, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_SHORT, &p->agi, sizeof p->agi, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_SHORT, &p->vit, sizeof p->vit, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_SHORT, &p->int_, sizeof p->int_, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 14, SQLDT_SHORT, &p->dex, sizeof p->dex, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 15, SQLDT_SHORT, &p->luk, sizeof p->luk, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 16, SQLDT_INT, &p->max_hp, sizeof p->max_hp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 17, SQLDT_INT, &p->hp, sizeof p->hp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 18, SQLDT_INT, &p->max_sp, sizeof p->max_sp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 19, SQLDT_INT, &p->sp, sizeof p->sp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 20, SQLDT_INT, &p->status_point, sizeof p->status_point, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 21, SQLDT_INT, &p->skill_point, sizeof p->skill_point, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 22, SQLDT_UINT, &p->option, sizeof p->option, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 23, SQLDT_UCHAR, &p->karma, sizeof p->karma, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 24, SQLDT_SHORT, &p->manner, sizeof p->manner, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 25, SQLDT_INT, &p->party_id, sizeof p->party_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 26, SQLDT_INT, &p->guild_id, sizeof p->guild_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 27, SQLDT_INT, &p->pet_id, sizeof p->pet_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 28, SQLDT_INT, &p->hom_id, sizeof p->hom_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 29, SQLDT_INT, &p->ele_id, sizeof p->ele_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 30, SQLDT_SHORT, &p->hair, sizeof p->hair, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 31, SQLDT_SHORT, &p->hair_color, sizeof p->hair_color, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 32, SQLDT_SHORT, &p->clothes_color, sizeof p->clothes_color, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 33, SQLDT_SHORT, &p->body, sizeof p->body, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 34, SQLDT_SHORT, &p->look.weapon, sizeof p->look.weapon, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 35, SQLDT_SHORT, &p->look.shield, sizeof p->look.shield, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 36, SQLDT_SHORT, &p->look.head_top, sizeof p->look.head_top, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 37, SQLDT_SHORT, &p->look.head_mid, sizeof p->look.head_mid, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 38, SQLDT_SHORT, &p->look.head_bottom, sizeof p->look.head_bottom, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 39, SQLDT_STRING, &last_map, sizeof last_map, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 40, SQLDT_INT16, &p->last_point.x, sizeof p->last_point.x, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 41, SQLDT_INT16, &p->last_point.y, sizeof p->last_point.y, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 42, SQLDT_STRING, &save_map, sizeof save_map, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 43, SQLDT_INT16, &p->save_point.x, sizeof p->save_point.x, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 44, SQLDT_INT16, &p->save_point.y, sizeof p->save_point.y, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 45, SQLDT_INT, &p->partner_id, sizeof p->partner_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 46, SQLDT_INT, &p->father, sizeof p->father, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 47, SQLDT_INT, &p->mother, sizeof p->mother, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 48, SQLDT_INT, &p->child, sizeof p->child, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 49, SQLDT_INT, &p->fame, sizeof p->fame, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 50, SQLDT_USHORT, &p->rename, sizeof p->rename, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 51, SQLDT_TIME, &p->delete_date, sizeof p->delete_date, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 52, SQLDT_SHORT, &p->look.robe, sizeof p->look.robe, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 53, SQLDT_USHORT, &p->slotchange, sizeof p->slotchange, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 54, SQLDT_UINT, &opt, sizeof opt, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 55, SQLDT_UCHAR, &p->font, sizeof p->font, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 56, SQLDT_UINT32, &p->uniqueitem_counter, sizeof p->uniqueitem_counter, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 57, SQLDT_ENUM, &sex, sizeof sex, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 58, SQLDT_UCHAR, &p->hotkey_rowshift, sizeof p->hotkey_rowshift, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
@@ -1276,11 +1279,11 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
//`memo` (`memo_id`,`char_id`,`map`,`x`,`y`)
memset(&tmp_point, 0, sizeof(tmp_point));
if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `map`,`x`,`y` FROM `%s` WHERE `char_id`=? ORDER by `memo_id` LIMIT %d", memo_db, MAX_MEMOPOINTS)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &point_map, sizeof(point_map), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_SHORT, &tmp_point.x, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_SHORT, &tmp_point.y, 0, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &point_map, sizeof point_map, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT16, &tmp_point.x, sizeof tmp_point.x, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_INT16, &tmp_point.y, sizeof tmp_point.y, NULL, NULL)
)
SqlStmt_ShowDebug(stmt);
@@ -1301,12 +1304,12 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
//read skill
//`skill` (`char_id`, `id`, `lv`)
memset(&tmp_skill, 0, sizeof(tmp_skill));
- if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `id`, `lv`,`flag` FROM `%s` WHERE `char_id`=? LIMIT %d", skill_db, MAX_SKILL)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `id`, `lv`,`flag` FROM `%s` WHERE `char_id`=? LIMIT %d", skill_db, MAX_SKILL_DB)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_USHORT, &tmp_skill.id , 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR , &tmp_skill.lv , 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UCHAR , &tmp_skill.flag, 0, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_USHORT, &tmp_skill.id, sizeof tmp_skill.id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR, &tmp_skill.lv, sizeof tmp_skill.lv, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UCHAR, &tmp_skill.flag, sizeof tmp_skill.flag, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
}
@@ -1314,7 +1317,7 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
if( tmp_skill.flag != SKILL_FLAG_PERM_GRANTED )
tmp_skill.flag = SKILL_FLAG_PERMANENT;
- for( i = 0; i < MAX_SKILL && SQL_SUCCESS == SQL->StmtNextRow(stmt); ++i ) {
+ for (i = 0; i < MAX_SKILL_DB && SQL_SUCCESS == SQL->StmtNextRow(stmt); ++i) {
if( skillid2idx[tmp_skill.id] )
memcpy(&p->skill[skillid2idx[tmp_skill.id]], &tmp_skill, sizeof(tmp_skill));
else
@@ -1326,11 +1329,11 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
//`friends` (`char_id`, `friend_account`, `friend_id`)
memset(&tmp_friend, 0, sizeof(tmp_friend));
if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT c.`account_id`, c.`char_id`, c.`name` FROM `%s` c LEFT JOIN `%s` f ON f.`friend_account` = c.`account_id` AND f.`friend_id` = c.`char_id` WHERE f.`char_id`=? LIMIT %d", char_db, friend_db, MAX_FRIENDS)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &tmp_friend.account_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &tmp_friend.char_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &tmp_friend.name, sizeof(tmp_friend.name), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &tmp_friend.account_id, sizeof tmp_friend.account_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &tmp_friend.char_id, sizeof tmp_friend.char_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &tmp_friend.name, sizeof tmp_friend.name, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
}
@@ -1344,13 +1347,15 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
//`hotkey` (`char_id`, `hotkey`, `type`, `itemskill_id`, `skill_lvl`
memset(&tmp_hotkey, 0, sizeof(tmp_hotkey));
if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `hotkey`, `type`, `itemskill_id`, `skill_lvl` FROM `%s` WHERE `char_id`=?", hotkey_db)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &hotkey_num, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR, &tmp_hotkey.type, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UINT, &tmp_hotkey.id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_USHORT, &tmp_hotkey.lv, 0, NULL, NULL) )
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &hotkey_num, sizeof hotkey_num, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UCHAR, &tmp_hotkey.type, sizeof tmp_hotkey.type, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UINT, &tmp_hotkey.id, sizeof tmp_hotkey.id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_USHORT, &tmp_hotkey.lv, sizeof tmp_hotkey.lv, NULL, NULL)
+ ) {
SqlStmt_ShowDebug(stmt);
+ }
while( SQL_SUCCESS == SQL->StmtNextRow(stmt) )
{
@@ -1371,12 +1376,12 @@ int char_mmo_char_fromsql(int char_id, struct mmo_charstatus* p, bool load_every
//`account_data` (`account_id`,`bank_vault`,`base_exp`,`base_drop`,`base_death`)
if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `bank_vault`,`base_exp`,`base_drop`,`base_death` FROM `%s` WHERE `account_id`=? LIMIT 1", account_data_db)
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &account_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &account_id, sizeof account_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p->bank_vault, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_USHORT, &p->mod_exp, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_USHORT, &p->mod_drop, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_USHORT, &p->mod_death, 0, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &p->bank_vault, sizeof p->bank_vault, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_USHORT, &p->mod_exp, sizeof p->mod_exp, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_USHORT, &p->mod_drop, sizeof p->mod_drop, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_USHORT, &p->mod_death, sizeof p->mod_death, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
}
@@ -2250,7 +2255,7 @@ int char_parse_fromlogin_connection_state(int fd)
ShowError("Can not connect to login-server.\n");
ShowError("The server communication passwords (default s1/p1) are probably invalid.\n");
ShowError("Also, please make sure your login db has the correct communication username/passwords and the gender of the account is S.\n");
- ShowError("The communication passwords are set in /conf/map-server.conf and /conf/char/char-server.conf\n");
+ ShowError("The communication passwords are set in /conf/map/map-server.conf and /conf/char/char-server.conf\n");
sockt->eof(fd);
return 1;
} else {
@@ -2439,13 +2444,13 @@ int char_parse_fromlogin_changesex_reply(int fd)
stmt = SQL->StmtMalloc(inter->sql_handle);
if (SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `char_id`,`class`,`guild_id` FROM `%s` WHERE `account_id` = '%d'", char_db, acc)
|| SQL_ERROR == SQL->StmtExecute(stmt)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &char_id, sizeof char_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &class, sizeof class, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &guild_id, sizeof guild_id, NULL, NULL)
) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
}
- SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &char_id, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &class, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &guild_id, 0, NULL, NULL);
for (i = 0; i < MAX_CHARS && SQL_SUCCESS == SQL->StmtNextRow(stmt); ++i) {
char_change_sex_sub(sex, acc, char_id, class, guild_id);
@@ -2979,8 +2984,8 @@ void char_parse_frommap_skillid2idx(int fd)
if( j )
j /= 4;
for(i = 0; i < j; i++) {
- if( RFIFOW(fd, 4 + (i*4)) > MAX_SKILL_ID ) {
- ShowWarning("Error skillid2dx[%d] = %d failed, %d is higher than MAX_SKILL_ID (%d)\n",RFIFOW(fd, 4 + (i*4)), RFIFOW(fd, 6 + (i*4)),RFIFOW(fd, 4 + (i*4)),MAX_SKILL_ID);
+ if (RFIFOW(fd, 4 + (i*4)) >= MAX_SKILL_ID) {
+ ShowWarning("Error skillid2dx[%d] = %d failed, %d is higher than MAX_SKILL_ID (%d)\n", RFIFOW(fd, 4 + (i*4)), RFIFOW(fd, 6 + (i*4)), RFIFOW(fd, 4 + (i*4)), MAX_SKILL_ID);
continue;
}
skillid2idx[RFIFOW(fd, 4 + (i*4))] = RFIFOW(fd, 6 + (i*4));
@@ -3375,8 +3380,8 @@ void char_ban(int account_id, int char_id, time_t *unban_time, short year, short
if( SQL_SUCCESS != SQL->StmtPrepare(stmt,
"UPDATE `%s` SET `unban_time` = ? WHERE `char_id` = ? LIMIT 1",
char_db)
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 0, SQLDT_LONG, &timestamp, sizeof(timestamp))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 1, SQLDT_INT, &char_id, sizeof(char_id))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 0, SQLDT_TIME, &timestamp, sizeof timestamp)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 1, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_SUCCESS != SQL->StmtExecute(stmt)
) {
SqlStmt_ShowDebug(stmt);
@@ -3385,7 +3390,7 @@ void char_ban(int account_id, int char_id, time_t *unban_time, short year, short
SQL->StmtFree(stmt);
// condition applies; send to all map-servers to disconnect the player
- if( timestamp > time(NULL) ) {
+ if (timestamp > time(NULL)) {
mapif->char_ban(char_id, timestamp);
// disconnect player if online on char-server
chr->disconnect_player(account_id);
diff --git a/src/char/int_homun.c b/src/char/int_homun.c
index 04f4c8f21..edf737992 100644
--- a/src/char/int_homun.c
+++ b/src/char/int_homun.c
@@ -129,10 +129,10 @@ bool mapif_homunculus_create(struct s_homunculus *hd)
SQL->EscapeStringLen(inter->sql_handle, esc_name, hd->name, strnlen(hd->name, NAME_LENGTH));
if (SQL_ERROR == SQL->Query(inter->sql_handle, "INSERT INTO `%s` "
- "(`char_id`, `class`,`prev_class`,`name`,`level`,`exp`,`intimacy`,`hunger`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `hp`,`max_hp`,`sp`,`max_sp`,`skill_point`, `rename_flag`, `vaporize`) "
- "VALUES ('%d', '%d', '%d', '%s', '%d', '%u', '%u', '%d', '%d', %d, '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d')",
+ "(`char_id`, `class`,`prev_class`,`name`,`level`,`exp`,`intimacy`,`hunger`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `hp`,`max_hp`,`sp`,`max_sp`,`skill_point`, `rename_flag`, `vaporize`, `autofeed`) "
+ "VALUES ('%d', '%d', '%d', '%s', '%d', '%u', '%u', '%d', '%d', %d, '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d')",
homunculus_db, hd->char_id, hd->class_, hd->prev_class, esc_name, hd->level, hd->exp, hd->intimacy, hd->hunger, hd->str, hd->agi, hd->vit, hd->int_, hd->dex, hd->luk,
- hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize)) {
+ hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize, hd->autofeed)) {
Sql_ShowDebug(inter->sql_handle);
return false;
}
@@ -156,9 +156,9 @@ bool mapif_homunculus_save(const struct s_homunculus *hd)
SQL->EscapeStringLen(inter->sql_handle, esc_name, hd->name, strnlen(hd->name, NAME_LENGTH));
- if (SQL_ERROR == SQL->Query(inter->sql_handle, "UPDATE `%s` SET `char_id`='%d', `class`='%d',`prev_class`='%d',`name`='%s',`level`='%d',`exp`='%u',`intimacy`='%u',`hunger`='%d', `str`='%d', `agi`='%d', `vit`='%d', `int`='%d', `dex`='%d', `luk`='%d', `hp`='%d',`max_hp`='%d',`sp`='%d',`max_sp`='%d',`skill_point`='%d', `rename_flag`='%d', `vaporize`='%d' WHERE `homun_id`='%d'",
+ if (SQL_ERROR == SQL->Query(inter->sql_handle, "UPDATE `%s` SET `char_id`='%d', `class`='%d',`prev_class`='%d',`name`='%s',`level`='%d',`exp`='%u',`intimacy`='%u',`hunger`='%d', `str`='%d', `agi`='%d', `vit`='%d', `int`='%d', `dex`='%d', `luk`='%d', `hp`='%d',`max_hp`='%d',`sp`='%d',`max_sp`='%d',`skill_point`='%d', `rename_flag`='%d', `vaporize`='%d', `autofeed`='%d' WHERE `homun_id`='%d'",
homunculus_db, hd->char_id, hd->class_, hd->prev_class, esc_name, hd->level, hd->exp, hd->intimacy, hd->hunger, hd->str, hd->agi, hd->vit, hd->int_, hd->dex, hd->luk,
- hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize, hd->hom_id)) {
+ hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize, hd->autofeed, hd->hom_id)) {
Sql_ShowDebug(inter->sql_handle);
flag = false;
} else {
@@ -171,9 +171,9 @@ bool mapif_homunculus_save(const struct s_homunculus *hd)
} else {
for (i = 0; i < MAX_HOMUNSKILL; ++i) {
if (hd->hskill[i].id > 0 && hd->hskill[i].lv != 0) {
- SQL->StmtBindParam(stmt, 0, SQLDT_USHORT, &hd->hskill[i].id, 0);
- SQL->StmtBindParam(stmt, 1, SQLDT_USHORT, &hd->hskill[i].lv, 0);
- if (SQL_ERROR == SQL->StmtExecute(stmt)) {
+ if (SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_USHORT, &hd->hskill[i].id, sizeof hd->hskill[i].id)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_UCHAR, &hd->hskill[i].lv, sizeof hd->hskill[i].lv)
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
SqlStmt_ShowDebug(stmt);
flag = false;
break;
@@ -196,7 +196,7 @@ bool mapif_homunculus_load(int homun_id, struct s_homunculus* hd)
nullpo_ret(hd);
memset(hd, 0, sizeof(*hd));
- if( SQL_ERROR == SQL->Query(inter->sql_handle, "SELECT `homun_id`,`char_id`,`class`,`prev_class`,`name`,`level`,`exp`,`intimacy`,`hunger`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `hp`,`max_hp`,`sp`,`max_sp`,`skill_point`,`rename_flag`, `vaporize` FROM `%s` WHERE `homun_id`='%d'", homunculus_db, homun_id) )
+ if (SQL_ERROR == SQL->Query(inter->sql_handle, "SELECT `homun_id`,`char_id`,`class`,`prev_class`,`name`,`level`,`exp`,`intimacy`,`hunger`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `hp`,`max_hp`,`sp`,`max_sp`,`skill_point`,`rename_flag`, `vaporize`, `autofeed` FROM `%s` WHERE `homun_id`='%d'", homunculus_db, homun_id))
{
Sql_ShowDebug(inter->sql_handle);
return false;
@@ -236,6 +236,7 @@ bool mapif_homunculus_load(int homun_id, struct s_homunculus* hd)
SQL->GetData(inter->sql_handle, 19, &data, NULL); hd->skillpts = atoi(data);
SQL->GetData(inter->sql_handle, 20, &data, NULL); hd->rename_flag = atoi(data);
SQL->GetData(inter->sql_handle, 21, &data, NULL); hd->vaporize = atoi(data);
+ SQL->GetData(inter->sql_handle, 22, &data, NULL); hd->autofeed = atoi(data);
SQL->FreeResult(inter->sql_handle);
hd->intimacy = cap_value(hd->intimacy, 0, 100000);
diff --git a/src/char/int_quest.c b/src/char/int_quest.c
index bd49cb7d4..9554be414 100644
--- a/src/char/int_quest.c
+++ b/src/char/int_quest.c
@@ -56,6 +56,7 @@ struct quest *mapif_quests_fromsql(int char_id, int *count)
StringBuf buf;
int i;
int sqlerror = SQL_SUCCESS;
+ int quest_state = 0;
if (!count)
return NULL;
@@ -77,11 +78,11 @@ struct quest *mapif_quests_fromsql(int char_id, int *count)
memset(&tmp_quest, 0, sizeof(struct quest));
if (SQL_ERROR == SQL->StmtPrepareStr(stmt, StrBuf->Value(&buf))
- || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, 0)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT, &char_id, sizeof char_id)
|| SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &tmp_quest.quest_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &tmp_quest.state, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UINT, &tmp_quest.time, 0, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &tmp_quest.quest_id, sizeof tmp_quest.quest_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &quest_state, sizeof quest_state, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_UINT, &tmp_quest.time, sizeof tmp_quest.time, NULL, NULL)
) {
sqlerror = SQL_ERROR;
}
@@ -89,7 +90,7 @@ struct quest *mapif_quests_fromsql(int char_id, int *count)
StrBuf->Destroy(&buf);
for (i = 0; sqlerror != SQL_ERROR && i < MAX_QUEST_OBJECTIVES; i++) { // Stop on the first error
- sqlerror = SQL->StmtBindColumn(stmt, 3+i, SQLDT_INT, &tmp_quest.count[i], 0, NULL, NULL);
+ sqlerror = SQL->StmtBindColumn(stmt, 3+i, SQLDT_INT, &tmp_quest.count[i], sizeof tmp_quest.count[i], NULL, NULL);
}
if (sqlerror == SQL_ERROR) {
@@ -105,9 +106,10 @@ struct quest *mapif_quests_fromsql(int char_id, int *count)
questlog = (struct quest *)aCalloc(*count, sizeof(struct quest));
while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
+ tmp_quest.state = quest_state;
if (i >= *count) // Sanity check, should never happen
break;
- memcpy(&questlog[i++], &tmp_quest, sizeof(tmp_quest));
+ questlog[i++] = tmp_quest;
}
if (i < *count) {
// Should never happen. Compact array
diff --git a/src/char/int_rodex.c b/src/char/int_rodex.c
index 994e8110e..b7314e726 100644
--- a/src/char/int_rodex.c
+++ b/src/char/int_rodex.c
@@ -43,10 +43,9 @@ struct inter_rodex_interface *inter_rodex;
// Loads new mails of this char_id/account_id
static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 mail_id, struct rodex_maillist *mails)
{
- int i, count = 0;
+ int count = 0;
struct rodex_message msg = { 0 };
struct SqlStmt *stmt;
- struct SqlStmt *stmt_items;
nullpo_retr(-1, mails);
@@ -108,112 +107,128 @@ static int inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64
}
if (SQL_ERROR == SQL->StmtExecute(stmt)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT64, &msg.id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_STRING, &msg.sender_name, sizeof(msg.sender_name), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &msg.sender_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_STRING, &msg.receiver_name, sizeof(msg.receiver_name), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_INT, &msg.receiver_id, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &msg.receiver_accountid, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_STRING, &msg.title, sizeof(msg.title), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_STRING, &msg.body, sizeof(msg.body), NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_INT, &msg.zeny, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_UINT8, &msg.type, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_INT8, &msg.is_read, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_INT, &msg.send_date, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_INT, &msg.expire_date, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_INT, &msg.weight, 0, NULL, NULL)
- ) {
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_INT64, &msg.id, sizeof msg.id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_STRING, &msg.sender_name, sizeof msg.sender_name, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &msg.sender_id, sizeof msg.sender_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 3, SQLDT_STRING, &msg.receiver_name, sizeof msg.receiver_name, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 4, SQLDT_INT, &msg.receiver_id, sizeof msg.receiver_id, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 5, SQLDT_INT, &msg.receiver_accountid, sizeof msg.receiver_accountid, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 6, SQLDT_STRING, &msg.title, sizeof msg.title, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 7, SQLDT_STRING, &msg.body, sizeof msg.body, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 8, SQLDT_INT64, &msg.zeny, sizeof msg.zeny, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 9, SQLDT_UINT8, &msg.type, sizeof msg.type, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 10, SQLDT_BOOL, &msg.is_read, sizeof msg.is_read, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 11, SQLDT_INT, &msg.send_date, sizeof msg.send_date, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 12, SQLDT_INT, &msg.expire_date, sizeof msg.expire_date, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 13, SQLDT_INT, &msg.weight, sizeof msg.weight, NULL, NULL)
+ ) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
return -1;
}
- stmt_items = SQL->StmtMalloc(inter->sql_handle);
- if (stmt_items == NULL) {
- SQL->StmtFreeResult(stmt);
- SQL->StmtFree(stmt);
- return -1;
- }
-
- // Read mails
- while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
+ {
struct item it = { 0 };
+ StringBuf buf;
+ struct SqlStmt *stmt_items = SQL->StmtMalloc(inter->sql_handle);
+ int i;
- if (msg.type & MAIL_TYPE_ITEM) {
- if (SQL_ERROR == SQL->StmtPrepare(stmt_items, "SELECT `nameid`, `amount`, `equip`, `identify`,"
- "`refine`, `attribute`, `card0`, `card1`, `card2`, `card3`, `opt_idx0`, `opt_val0`,"
- "`opt_idx1`, `opt_val1`, `opt_idx2`, `opt_val2`, `opt_idx3`, `opt_val3`, `opt_idx4`, `opt_val4`,"
- "`expire_time`, `bound`, `unique_id`"
- "FROM `%s` WHERE mail_id = '%"PRId64"' ORDER BY `mail_id` ASC", rodex_item_db, msg.id)
- || SQL_ERROR == SQL->StmtExecute(stmt_items)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 0, SQLDT_INT, &it.nameid, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 1, SQLDT_INT, &it.amount, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 2, SQLDT_UINT, &it.equip, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 3, SQLDT_INT8, &it.identify, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 4, SQLDT_INT8, &it.refine, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 5, SQLDT_INT8, &it.attribute, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 6, SQLDT_INT16, &it.card[0], 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 7, SQLDT_INT16, &it.card[1], 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 8, SQLDT_INT16, &it.card[2], 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 9, SQLDT_INT16, &it.card[3], 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 10, SQLDT_INT16, &it.option[0].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 11, SQLDT_INT16, &it.option[0].value, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 12, SQLDT_INT16, &it.option[1].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 13, SQLDT_INT16, &it.option[1].value, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 14, SQLDT_INT16, &it.option[2].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 15, SQLDT_INT16, &it.option[2].value, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 16, SQLDT_INT16, &it.option[3].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 17, SQLDT_INT16, &it.option[3].value, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 18, SQLDT_INT16, &it.option[4].index, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 19, SQLDT_INT16, &it.option[4].value, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 20, SQLDT_INT, &it.expire_time, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 21, SQLDT_UINT8, &it.bound, 0, NULL, NULL)
- || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 22, SQLDT_UINT64, &it.unique_id, 0, NULL, NULL)) {
- SqlStmt_ShowDebug(stmt_items);
- }
-
- for (i = 0; i < RODEX_MAX_ITEM && SQL_SUCCESS == SQL->StmtNextRow(stmt_items); ++i) {
- msg.items[i].item = it;
- msg.items_count++;
- }
+ if (stmt_items == NULL) {
+ SQL->StmtFreeResult(stmt);
+ SQL->StmtFree(stmt);
+ return -1;
}
- if (msg.items_count == 0) {
- msg.type &= ~MAIL_TYPE_ITEM;
+ StrBuf->Init(&buf);
+
+ StrBuf->AppendStr(&buf, "SELECT `nameid`, `amount`, `equip`, `identify`, `refine`, `attribute`, `expire_time`, `bound`, `unique_id`");
+ for (i = 0; i < MAX_SLOTS; i++) {
+ StrBuf->Printf(&buf, ", `card%d`", i);
+ }
+ for (i = 0; i < MAX_ITEM_OPTIONS; i++) {
+ StrBuf->Printf(&buf, ", `opt_idx%d`, `opt_val%d`", i, i);
}
+ StrBuf->Printf(&buf, "FROM `%s` WHERE mail_id = ? ORDER BY `mail_id` ASC", rodex_item_db);
- if (msg.zeny == 0) {
- msg.type &= ~MAIL_TYPE_ZENY;
+ if (SQL_ERROR == SQL->StmtPrepareStr(stmt_items, StrBuf->Value(&buf))
+ || SQL_ERROR == SQL->StmtBindParam(stmt_items, 0, SQLDT_INT64, &msg.id, sizeof msg.id)
+ ) {
+ SqlStmt_ShowDebug(stmt_items);
}
+ // Read mails
+ while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
+
+ if (msg.type & MAIL_TYPE_ITEM) {
+ if (SQL_ERROR == SQL->StmtExecute(stmt_items)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 0, SQLDT_SHORT, &it.nameid, sizeof it.nameid, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 1, SQLDT_SHORT, &it.amount, sizeof it.amount, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 2, SQLDT_UINT, &it.equip, sizeof it.equip, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 3, SQLDT_CHAR, &it.identify, sizeof it.identify, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 4, SQLDT_CHAR, &it.refine, sizeof it.refine, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 5, SQLDT_CHAR, &it.attribute, sizeof it.attribute, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 6, SQLDT_UINT, &it.expire_time, sizeof it.expire_time, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 7, SQLDT_UCHAR, &it.bound, sizeof it.bound, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 8, SQLDT_UINT64, &it.unique_id, sizeof it.unique_id, NULL, NULL)
+ ) {
+ SqlStmt_ShowDebug(stmt_items);
+ }
+ for (i = 0; i < MAX_SLOTS; i++) {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt_items, 9 + i, SQLDT_SHORT, &it.card[i], sizeof it.card[i], NULL, NULL))
+ SqlStmt_ShowDebug(stmt_items);
+ }
+ for (i = 0; i < MAX_ITEM_OPTIONS; i++) {
+ if (SQL_ERROR == SQL->StmtBindColumn(stmt_items, 9 + MAX_SLOTS + i * 2, SQLDT_INT16, &it.option[i].index, sizeof it.option[i].index, NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt_items, 10 + MAX_SLOTS + i * 2, SQLDT_INT16, &it.option[i].value, sizeof it.option[i].value, NULL, NULL)
+ ) {
+ SqlStmt_ShowDebug(stmt_items);
+ }
+ }
+
+ for (i = 0; i < RODEX_MAX_ITEM && SQL_SUCCESS == SQL->StmtNextRow(stmt_items); ++i) {
+ msg.items[i].item = it;
+ msg.items_count++;
+ }
+ }
+
+ if (msg.items_count == 0) {
+ msg.type &= ~MAIL_TYPE_ITEM;
+ }
+
+ if (msg.zeny == 0) {
+ msg.type &= ~MAIL_TYPE_ZENY;
+ }
+
#if PACKETVER >= 20170419
- if (opentype == RODEX_OPENTYPE_UNSET) {
- if (msg.receiver_id != 0)
- msg.opentype = RODEX_OPENTYPE_MAIL;
- else
- msg.opentype = RODEX_OPENTYPE_ACCOUNT;
- } else {
- msg.opentype = opentype;
- }
+ if (opentype == RODEX_OPENTYPE_UNSET) {
+ if (msg.receiver_id != 0)
+ msg.opentype = RODEX_OPENTYPE_MAIL;
+ else
+ msg.opentype = RODEX_OPENTYPE_ACCOUNT;
+ } else {
+ msg.opentype = opentype;
+ }
#else
- msg.opentype = opentype;
+ msg.opentype = opentype;
#endif
#if PACKETVER < 20160601
- // NPC Message Type isn't supported in old clients
- msg.type &= ~MAIL_TYPE_NPC;
+ // NPC Message Type isn't supported in old clients
+ msg.type &= ~MAIL_TYPE_NPC;
#endif
- ++count;
- VECTOR_ENSURE(*mails, 1, 1);
- VECTOR_PUSH(*mails, msg);
- memset(&msg, 0, sizeof(struct rodex_message));
+ ++count;
+ VECTOR_ENSURE(*mails, 1, 1);
+ VECTOR_PUSH(*mails, msg);
+ memset(&msg, 0, sizeof(struct rodex_message));
+
+ SQL->StmtFreeResult(stmt_items);
+ }
+ StrBuf->Destroy(&buf);
+ SQL->StmtFree(stmt_items);
}
SQL->StmtFreeResult(stmt);
- SQL->StmtFreeResult(stmt_items);
-
SQL->StmtFree(stmt);
- SQL->StmtFree(stmt_items);
ShowInfo("rodex load complete from DB - id: %d (total: %d)\n", char_id, count);
return count;
@@ -331,27 +346,28 @@ int64 inter_rodex_savemessage(struct rodex_message* msg)
*------------------------------------------*/
void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails)
{
- int per_packet = (UINT16_MAX - 15) / sizeof(struct rodex_message);
+ int per_packet = (UINT16_MAX - 16) / sizeof(struct rodex_message);
int sent = 0;
+ bool is_first = true;
nullpo_retv(mails);
Assert_retv(char_id > 0);
Assert_retv(count >= 0);
do {
- int i = 15, j, size, limit;
+ int i = 16, j, size, limit;
+ int to_send = count - sent;
bool is_last = true;
- if (count <= per_packet) {
- size = count * sizeof(struct rodex_message) + 15;
- limit = count;
+ if (to_send <= per_packet) {
+ size = to_send * sizeof(struct rodex_message) + 16;
+ limit = to_send;
is_last = true;
} else {
- int to_send = count - sent;
limit = min(to_send, per_packet);
if (limit != to_send) {
is_last = false;
}
- size = limit * sizeof(struct rodex_message) + 15;
+ size = limit * sizeof(struct rodex_message) + 16;
}
WFIFOHEAD(fd, size);
@@ -361,11 +377,14 @@ void mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int co
WFIFOB(fd, 8) = opentype;
WFIFOB(fd, 9) = flag;
WFIFOB(fd, 10) = is_last;
- WFIFOL(fd, 11) = count;
+ WFIFOB(fd, 11) = is_first;
+ WFIFOL(fd, 12) = limit;
for (j = 0; j < limit; ++j, ++sent, i += sizeof(struct rodex_message)) {
memcpy(WFIFOP(fd, i), &VECTOR_INDEX(*mails, sent), sizeof(struct rodex_message));
}
WFIFOSET(fd, size);
+
+ is_first = false;
} while (sent < count);
}
diff --git a/src/char/int_storage.c b/src/char/int_storage.c
index aafba8520..70cdc5f19 100644
--- a/src/char/int_storage.c
+++ b/src/char/int_storage.c
@@ -566,23 +566,23 @@ int mapif_parse_ItemBoundRetrieve_sub(int fd)
}
memset(&item, 0, sizeof(item));
- SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &item.id, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 1, SQLDT_SHORT, &item.nameid, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 2, SQLDT_SHORT, &item.amount, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 3, SQLDT_USHORT, &item.equip, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 4, SQLDT_CHAR, &item.identify, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 5, SQLDT_CHAR, &item.refine, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 6, SQLDT_CHAR, &item.attribute, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 7, SQLDT_UINT, &item.expire_time, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 8, SQLDT_UCHAR, &item.bound, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 9, SQLDT_UINT64, &item.unique_id, 0, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 0, SQLDT_INT, &item.id, sizeof item.id, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 1, SQLDT_SHORT, &item.nameid, sizeof item.nameid, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 2, SQLDT_SHORT, &item.amount, sizeof item.amount, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 3, SQLDT_UINT, &item.equip, sizeof item.equip, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 4, SQLDT_CHAR, &item.identify, sizeof item.identify, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 5, SQLDT_CHAR, &item.refine, sizeof item.refine, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 6, SQLDT_CHAR, &item.attribute, sizeof item.attribute, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 7, SQLDT_UINT, &item.expire_time, sizeof item.expire_time, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 8, SQLDT_UCHAR, &item.bound, sizeof item.bound, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 9, SQLDT_UINT64, &item.unique_id, sizeof item.unique_id, NULL, NULL);
/* Card Slots */
for (j = 0; j < MAX_SLOTS; ++j)
- SQL->StmtBindColumn(stmt, 10 + j, SQLDT_SHORT, &item.card[j], 0, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 10 + j, SQLDT_SHORT, &item.card[j], sizeof item.card[j], NULL, NULL);
/* Item Options */
for (j = 0; j < MAX_ITEM_OPTIONS; ++j) {
- SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + j * 2, SQLDT_INT16, &item.option[j].index, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 11 + MAX_SLOTS + j * 2, SQLDT_INT16, &item.option[j].value, 0, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 10 + MAX_SLOTS + j * 2, SQLDT_INT16, &item.option[j].index, sizeof item.option[j].index, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 11 + MAX_SLOTS + j * 2, SQLDT_INT16, &item.option[j].value, sizeof item.option[j].value, NULL, NULL);
}
while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
Assert_retb(i < MAX_INVENTORY);
diff --git a/src/common/HPMDataCheck.h b/src/common/HPMDataCheck.h
index 7480269e5..97a772b6e 100644
--- a/src/common/HPMDataCheck.h
+++ b/src/common/HPMDataCheck.h
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2014-2017 Hercules Dev Team
+ * Copyright (C) 2014-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -325,6 +325,7 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "packet_CA_LOGIN3", sizeof(struct packet_CA_LOGIN3), SERVER_TYPE_LOGIN },
{ "packet_CA_LOGIN4", sizeof(struct packet_CA_LOGIN4), SERVER_TYPE_LOGIN },
{ "packet_CA_LOGIN_HAN", sizeof(struct packet_CA_LOGIN_HAN), SERVER_TYPE_LOGIN },
+ { "packet_CA_LOGIN_OTP", sizeof(struct packet_CA_LOGIN_OTP), SERVER_TYPE_LOGIN },
{ "packet_CA_LOGIN_PCBANG", sizeof(struct packet_CA_LOGIN_PCBANG), SERVER_TYPE_LOGIN },
{ "packet_CA_SSO_LOGIN_REQ", sizeof(struct packet_CA_SSO_LOGIN_REQ), SERVER_TYPE_LOGIN },
{ "packet_SC_NOTIFY_BAN", sizeof(struct packet_SC_NOTIFY_BAN), SERVER_TYPE_LOGIN },
@@ -570,11 +571,16 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_ACK_REMOVE_ITEM_MAIL", sizeof(struct PACKET_ZC_ACK_REMOVE_ITEM_MAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_ZENY_FROM_MAIL", sizeof(struct PACKET_ZC_ACK_ZENY_FROM_MAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_ADD_ITEM_TO_MAIL", sizeof(struct PACKET_ZC_ADD_ITEM_TO_MAIL), SERVER_TYPE_MAP },
+ { "PACKET_ZC_ADD_MEMBER_TO_GROUP", sizeof(struct PACKET_ZC_ADD_MEMBER_TO_GROUP), SERVER_TYPE_MAP },
{ "PACKET_ZC_CHECKNAME", sizeof(struct PACKET_ZC_CHECKNAME), SERVER_TYPE_MAP },
+ { "PACKET_ZC_GROUP_LIST", sizeof(struct PACKET_ZC_GROUP_LIST), SERVER_TYPE_MAP },
+ { "PACKET_ZC_GROUP_LIST_SUB", sizeof(struct PACKET_ZC_GROUP_LIST_SUB), SERVER_TYPE_MAP },
{ "PACKET_ZC_MAIL_LIST", sizeof(struct PACKET_ZC_MAIL_LIST), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_UNREADMAIL", sizeof(struct PACKET_ZC_NOTIFY_UNREADMAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_READ_MAIL", sizeof(struct PACKET_ZC_READ_MAIL), SERVER_TYPE_MAP },
+ { "PACKET_ZC_SKILL_SCALE", sizeof(struct PACKET_ZC_SKILL_SCALE), SERVER_TYPE_MAP },
{ "PACKET_ZC_WRITE_MAIL_RESULT", sizeof(struct PACKET_ZC_WRITE_MAIL_RESULT), SERVER_TYPE_MAP },
+ { "ZC_PROGRESS_ACTOR", sizeof(struct ZC_PROGRESS_ACTOR), SERVER_TYPE_MAP },
{ "mail_item", sizeof(struct mail_item), SERVER_TYPE_MAP },
{ "maillistinfo", sizeof(struct maillistinfo), SERVER_TYPE_MAP },
{ "packet_additem", sizeof(struct packet_additem), SERVER_TYPE_MAP },
diff --git a/src/common/HPMSymbols.inc.h b/src/common/HPMSymbols.inc.h
index 5ee8a014b..58540ee36 100644
--- a/src/common/HPMSymbols.inc.h
+++ b/src/common/HPMSymbols.inc.h
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/common/mmo.h b/src/common/mmo.h
index 52f68b719..7fd4ca6ea 100644
--- a/src/common/mmo.h
+++ b/src/common/mmo.h
@@ -74,6 +74,13 @@
#undef ENABLE_PACKETVER_RE
#endif // DISABLE_PACKETVER_RE
+//Uncomment the following line if your client is zero ragexe instead of normal kro clients
+//#define ENABLE_PACKETVER_ZERO
+#ifdef ENABLE_PACKETVER_ZERO
+ #define PACKETVER_ZERO
+ #undef ENABLE_PACKETVER_ZERO
+#endif // DISABLE_PACKETVER_ZERO
+
// Client support for experimental RagexeRE UI present in 2012-04-10 and 2012-04-18
#if defined(PACKETVER_RE) && ( PACKETVER == 20120410 || PACKETVER == 20120418 )
#define PARTY_RECRUIT
@@ -139,8 +146,8 @@
#endif
#define MAX_FAME 1000000000
#define MAX_CART 100
-#ifndef MAX_SKILL
-#define MAX_SKILL 1510
+#ifndef MAX_SKILL_DB
+#define MAX_SKILL_DB 1510 ///< Maximum number of skills in the skill DB (compacted array size)
#endif
#ifndef MAX_SKILL_ID
#define MAX_SKILL_ID 10015 // [Ind/Hercules] max used skill ID
@@ -552,6 +559,7 @@ struct s_homunculus { //[orn]
int luk_value;
int8 spiritball; //for homun S [lighta]
+ int autofeed;
};
struct s_mercenary {
@@ -635,7 +643,7 @@ struct mmo_charstatus {
struct point last_point,save_point,memo_point[MAX_MEMOPOINTS];
struct item inventory[MAX_INVENTORY],cart[MAX_CART];
- struct s_skill skill[MAX_SKILL];
+ struct s_skill skill[MAX_SKILL_DB];
struct s_friend friends[MAX_FRIENDS]; //New friend system [Skotlex]
#ifdef HOTKEY_SAVING
@@ -1203,4 +1211,8 @@ enum hz_char_ask_name_answer {
#error MAX_SLOTS it too small
#endif
+#ifdef MAX_SKILL
+#error MAX_SKILL has been replaced by MAX_SKILL_DB. Please update your custom definitions.
+#endif
+
#endif /* COMMON_MMO_H */
diff --git a/src/common/nullpo.h b/src/common/nullpo.h
index 28d058dc0..ae0c82364 100644
--- a/src/common/nullpo.h
+++ b/src/common/nullpo.h
@@ -23,15 +23,10 @@
#include "common/hercules.h"
-// enabled by default on debug builds
-#if defined(DEBUG) && !defined(NULLPO_CHECK)
+// if need disable nullpo checks this line can be commented
#define NULLPO_CHECK
-#endif
-
-// Skip assert checks on release builds
-#if !defined(RELEASE) && !defined(ASSERT_CHECK)
+// if need disable asserts checks this line can be commented
#define ASSERT_CHECK
-#endif
/** Assert */
diff --git a/src/common/sql.c b/src/common/sql.c
index 235be3aca..7f526cff6 100644
--- a/src/common/sql.c
+++ b/src/common/sql.c
@@ -423,68 +423,99 @@ static int Sql_P_BindSqlDataType(MYSQL_BIND* bind, enum SqlDataType buffer_type,
memset(bind, 0, sizeof(MYSQL_BIND));
switch( buffer_type )
{
- case SQLDT_NULL: bind->buffer_type = MYSQL_TYPE_NULL;
+ case SQLDT_NULL:
+ bind->buffer_type = MYSQL_TYPE_NULL;
buffer_len = 0;// FIXME length = ? [FlavioJS]
break;
// fixed size
- case SQLDT_UINT8: bind->is_unsigned = 1;
+ case SQLDT_UINT8:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_INT8: bind->buffer_type = MYSQL_TYPE_TINY;
- buffer_len = 1;
+ case SQLDT_INT8:
+ bind->buffer_type = MYSQL_TYPE_TINY;
+ Assert_retr(SQL_ERROR, buffer_len == 1);
break;
- case SQLDT_UINT16: bind->is_unsigned = 1;
+ case SQLDT_UINT16:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_INT16: bind->buffer_type = MYSQL_TYPE_SHORT;
- buffer_len = 2;
+ case SQLDT_INT16:
+ bind->buffer_type = MYSQL_TYPE_SHORT;
+ Assert_retr(SQL_ERROR, buffer_len == 2);
break;
- case SQLDT_UINT32: bind->is_unsigned = 1;
+ case SQLDT_UINT32:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_INT32: bind->buffer_type = MYSQL_TYPE_LONG;
- buffer_len = 4;
+ case SQLDT_INT32:
+ bind->buffer_type = MYSQL_TYPE_LONG;
+ Assert_retr(SQL_ERROR, buffer_len == 4);
break;
- case SQLDT_UINT64: bind->is_unsigned = 1;
+ case SQLDT_UINT64:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_INT64: bind->buffer_type = MYSQL_TYPE_LONGLONG;
- buffer_len = 8;
+ case SQLDT_INT64:
+ bind->buffer_type = MYSQL_TYPE_LONGLONG;
+ Assert_retr(SQL_ERROR, buffer_len == 8);
break;
// platform dependent size
- case SQLDT_UCHAR: bind->is_unsigned = 1;
+ case SQLDT_UCHAR:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_CHAR: bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(char));
- buffer_len = sizeof(char);
+ case SQLDT_CHAR:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(char));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(char));
break;
- case SQLDT_USHORT: bind->is_unsigned = 1;
+ case SQLDT_USHORT:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_SHORT: bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(short));
- buffer_len = sizeof(short);
+ case SQLDT_SHORT:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(short));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(short));
break;
- case SQLDT_UINT: bind->is_unsigned = 1;
+ case SQLDT_UINT:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_INT: bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(int));
- buffer_len = sizeof(int);
+ case SQLDT_INT:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(int));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(int));
break;
- case SQLDT_ULONG: bind->is_unsigned = 1;
+ case SQLDT_ULONG:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_LONG: bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(long));
- buffer_len = sizeof(long);
+ case SQLDT_LONG:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(long));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(long));
break;
- case SQLDT_ULONGLONG: bind->is_unsigned = 1;
+ case SQLDT_ULONGLONG:
+ bind->is_unsigned = 1;
FALLTHROUGH
- case SQLDT_LONGLONG: bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(int64));
- buffer_len = sizeof(int64);
+ case SQLDT_LONGLONG:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(long long));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(long long));
+ break;
+ case SQLDT_BOOL:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(bool));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(bool));
+ break;
+ case SQLDT_TIME:
+ bind->buffer_type = Sql_P_SizeToMysqlIntType(sizeof(time_t));
+ Assert_retr(SQL_ERROR, buffer_len == sizeof(time_t));
break;
// floating point
- case SQLDT_FLOAT: bind->buffer_type = MYSQL_TYPE_FLOAT;
- buffer_len = 4;
+ case SQLDT_FLOAT:
+ bind->buffer_type = MYSQL_TYPE_FLOAT;
+ Assert_retr(SQL_ERROR, buffer_len == 4);
break;
- case SQLDT_DOUBLE: bind->buffer_type = MYSQL_TYPE_DOUBLE;
- buffer_len = 8;
+ case SQLDT_DOUBLE:
+ bind->buffer_type = MYSQL_TYPE_DOUBLE;
+ Assert_retr(SQL_ERROR, buffer_len == 8);
break;
// other
case SQLDT_STRING:
- case SQLDT_ENUM: bind->buffer_type = MYSQL_TYPE_STRING;
+ case SQLDT_ENUM:
+ bind->buffer_type = MYSQL_TYPE_STRING;
break;
- case SQLDT_BLOB: bind->buffer_type = MYSQL_TYPE_BLOB;
+ case SQLDT_BLOB:
+ bind->buffer_type = MYSQL_TYPE_BLOB;
break;
default:
ShowDebug("Sql_P_BindSqlDataType: unsupported buffer type (%u)\n", buffer_type);
diff --git a/src/common/sql.h b/src/common/sql.h
index 4d9a12cc1..11127c66c 100644
--- a/src/common/sql.h
+++ b/src/common/sql.h
@@ -59,6 +59,8 @@ enum SqlDataType {
SQLDT_UINT,
SQLDT_ULONG,
SQLDT_ULONGLONG,
+ SQLDT_BOOL,
+ SQLDT_TIME,
// floating point
SQLDT_FLOAT,
SQLDT_DOUBLE,
diff --git a/src/login/account_sql.c b/src/login/account_sql.c
index 70d4f3dfb..66ede6cfa 100644
--- a/src/login/account_sql.c
+++ b/src/login/account_sql.c
@@ -599,16 +599,16 @@ static bool mmo_auth_tosql(AccountDB_SQL* db, const struct mmo_account* acc, boo
if( SQL_SUCCESS != SQL->StmtPrepare(stmt,
"INSERT INTO `%s` (`account_id`, `userid`, `user_pass`, `sex`, `email`, `group_id`, `state`, `unban_time`, `expiration_time`, `logincount`, `lastlogin`, `last_ip`, `birthdate`, `character_slots`, `pincode`, `pincode_change`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
db->account_db)
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 0, SQLDT_INT, &acc->account_id, sizeof(acc->account_id))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 0, SQLDT_INT, &acc->account_id, sizeof acc->account_id)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 1, SQLDT_STRING, acc->userid, strlen(acc->userid))
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 2, SQLDT_STRING, acc->pass, strlen(acc->pass))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 3, SQLDT_ENUM, &acc->sex, sizeof(acc->sex))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 3, SQLDT_ENUM, &acc->sex, sizeof acc->sex)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 4, SQLDT_STRING, &acc->email, strlen(acc->email))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 5, SQLDT_INT, &acc->group_id, sizeof(acc->group_id))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 6, SQLDT_UINT, &acc->state, sizeof(acc->state))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 7, SQLDT_LONG, &acc->unban_time, sizeof(acc->unban_time))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 8, SQLDT_INT, &acc->expiration_time, sizeof(acc->expiration_time))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 9, SQLDT_UINT, &acc->logincount, sizeof(acc->logincount))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 5, SQLDT_INT, &acc->group_id, sizeof acc->group_id)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 6, SQLDT_UINT, &acc->state, sizeof acc->state)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 7, SQLDT_TIME, &acc->unban_time, sizeof acc->unban_time)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 8, SQLDT_TIME, &acc->expiration_time, sizeof acc->expiration_time)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 9, SQLDT_UINT, &acc->logincount, sizeof acc->logincount)
|| SQL_SUCCESS != (acc->lastlogin[0] < '1' || acc->lastlogin[0] > '9' ?
SQL->StmtBindParam(stmt, 10, SQLDT_NULL, NULL, 0) :
SQL->StmtBindParam(stmt, 10, SQLDT_STRING, &acc->lastlogin, strlen(acc->lastlogin))
@@ -618,9 +618,9 @@ static bool mmo_auth_tosql(AccountDB_SQL* db, const struct mmo_account* acc, boo
SQL->StmtBindParam(stmt, 12, SQLDT_NULL, NULL, 0) :
SQL->StmtBindParam(stmt, 12, SQLDT_STRING, &acc->birthdate, strlen(acc->birthdate))
)
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 13, SQLDT_UCHAR, &acc->char_slots, sizeof(acc->char_slots))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 13, SQLDT_UINT8, &acc->char_slots, sizeof acc->char_slots)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 14, SQLDT_STRING, &acc->pincode, strlen(acc->pincode))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 15, SQLDT_LONG, &acc->pincode_change, sizeof(acc->pincode_change))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 15, SQLDT_UINT, &acc->pincode_change, sizeof acc->pincode_change)
|| SQL_SUCCESS != SQL->StmtExecute(stmt)
) {
SqlStmt_ShowDebug(stmt);
@@ -630,13 +630,13 @@ static bool mmo_auth_tosql(AccountDB_SQL* db, const struct mmo_account* acc, boo
if( SQL_SUCCESS != SQL->StmtPrepare(stmt, "UPDATE `%s` SET `userid`=?,`user_pass`=?,`sex`=?,`email`=?,`group_id`=?,`state`=?,`unban_time`=?,`expiration_time`=?,`logincount`=?,`lastlogin`=?,`last_ip`=?,`birthdate`=?,`character_slots`=?,`pincode`=?,`pincode_change`=? WHERE `account_id` = '%d'", db->account_db, acc->account_id)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 0, SQLDT_STRING, acc->userid, strlen(acc->userid))
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 1, SQLDT_STRING, acc->pass, strlen(acc->pass))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 2, SQLDT_ENUM, &acc->sex, sizeof(acc->sex))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 2, SQLDT_ENUM, &acc->sex, sizeof acc->sex)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 3, SQLDT_STRING, acc->email, strlen(acc->email))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 4, SQLDT_INT, &acc->group_id, sizeof(acc->group_id))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 5, SQLDT_UINT, &acc->state, sizeof(acc->state))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 6, SQLDT_LONG, &acc->unban_time, sizeof(acc->unban_time))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 7, SQLDT_LONG, &acc->expiration_time, sizeof(acc->expiration_time))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 8, SQLDT_UINT, &acc->logincount, sizeof(acc->logincount))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 4, SQLDT_INT, &acc->group_id, sizeof acc->group_id)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 5, SQLDT_UINT, &acc->state, sizeof acc->state)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 6, SQLDT_TIME, &acc->unban_time, sizeof acc->unban_time)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 7, SQLDT_TIME, &acc->expiration_time, sizeof acc->expiration_time)
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 8, SQLDT_UINT, &acc->logincount, sizeof acc->logincount)
|| SQL_SUCCESS != (acc->lastlogin[0] < '1' || acc->lastlogin[0] > '9' ?
SQL->StmtBindParam(stmt, 9, SQLDT_NULL, NULL, 0) :
SQL->StmtBindParam(stmt, 9, SQLDT_STRING, &acc->lastlogin, strlen(acc->lastlogin))
@@ -646,9 +646,9 @@ static bool mmo_auth_tosql(AccountDB_SQL* db, const struct mmo_account* acc, boo
SQL->StmtBindParam(stmt, 11, SQLDT_NULL, NULL, 0) :
SQL->StmtBindParam(stmt, 11, SQLDT_STRING, &acc->birthdate, strlen(acc->birthdate))
)
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 12, SQLDT_UCHAR, &acc->char_slots, sizeof(acc->char_slots))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 12, SQLDT_UINT8, &acc->char_slots, sizeof acc->char_slots)
|| SQL_SUCCESS != SQL->StmtBindParam(stmt, 13, SQLDT_STRING, &acc->pincode, strlen(acc->pincode))
- || SQL_SUCCESS != SQL->StmtBindParam(stmt, 14, SQLDT_LONG, &acc->pincode_change, sizeof(acc->pincode_change))
+ || SQL_SUCCESS != SQL->StmtBindParam(stmt, 14, SQLDT_UINT, &acc->pincode_change, sizeof acc->pincode_change)
|| SQL_SUCCESS != SQL->StmtExecute(stmt)
) {
SqlStmt_ShowDebug(stmt);
diff --git a/src/login/lclif.c b/src/login/lclif.c
index f32538610..1870f9bc9 100644
--- a/src/login/lclif.c
+++ b/src/login/lclif.c
@@ -216,6 +216,15 @@ enum parsefunc_rcode lclif_parse_CA_SSO_LOGIN_REQ(int fd, struct login_session_d
return PACKET_VALID;
}
+/// @copydoc lclif_interface_private::parse_CA_LOGIN_OTP()
+enum parsefunc_rcode lclif_parse_CA_LOGIN_OTP(int fd, struct login_session_data *sd) __attribute__((nonnull (2)));
+enum parsefunc_rcode lclif_parse_CA_LOGIN_OTP(int fd, struct login_session_data *sd)
+{
+ //const struct packet_CA_LOGIN_OTP *packet = RP2PTR(fd);
+ login->client_login_otp(fd, sd);
+ return PACKET_VALID;
+}
+
/// @copydoc lclif_interface_private::parse_CA_REQ_HASH()
enum parsefunc_rcode lclif_parse_CA_REQ_HASH(int fd, struct login_session_data *sd) __attribute__((nonnull (2)));
enum parsefunc_rcode lclif_parse_CA_REQ_HASH(int fd, struct login_session_data *sd)
@@ -284,7 +293,7 @@ bool lclif_send_server_list(struct login_session_data *sd)
packet->server_list[n].ip = htonl((subnet_char_ip) ? subnet_char_ip : server[i].ip);
packet->server_list[n].port = sockt->ntows(htons(server[i].port)); // [!] LE byte order here [!]
safestrncpy(packet->server_list[n].name, server[i].name, 20);
- packet->server_list[n].usercount = server[i].users;
+ packet->server_list[n].usercount = login->convert_users_to_colors(server[i].users);
if (server[i].type == CST_PAYING && sd->expiration_time > time(NULL))
packet->server_list[n].property = CST_NORMAL;
@@ -502,6 +511,7 @@ void packetdb_loaddb(void)
packet_def(CA_LOGIN_PCBANG),
packet_def(CA_LOGIN_HAN),
packet_def2(CA_SSO_LOGIN_REQ, -1),
+ packet_def(CA_LOGIN_OTP),
packet_def(CA_REQ_HASH),
#undef packet_def
#undef packet_def2
@@ -512,7 +522,7 @@ void packetdb_loaddb(void)
for (i = 0; i < length; ++i) {
int16 packet_id = packet[i].packet_id;
- Assert_retb(packet_id >= MIN_PACKET_DB && packet_id < MAX_PACKET_DB);
+ Assert_retb(packet_id >= MIN_PACKET_DB && packet_id <= MAX_PACKET_DB);
lclif->p->dbs->packet_db[packet_id].len = packet[i].packet_len;
lclif->p->dbs->packet_db[packet_id].pFunc = packet[i].pFunc;
}
@@ -565,6 +575,7 @@ void lclif_defaults(void)
lclif->p->parse_CA_LOGIN_PCBANG = lclif_parse_CA_LOGIN_PCBANG;
lclif->p->parse_CA_LOGIN_HAN = lclif_parse_CA_LOGIN_HAN;
lclif->p->parse_CA_SSO_LOGIN_REQ = lclif_parse_CA_SSO_LOGIN_REQ;
+ lclif->p->parse_CA_LOGIN_OTP = lclif_parse_CA_LOGIN_OTP;
lclif->p->parse_CA_REQ_HASH = lclif_parse_CA_REQ_HASH;
lclif->p->parse_CA_CHARSERVERCONNECT = lclif_parse_CA_CHARSERVERCONNECT;
}
diff --git a/src/login/lclif.p.h b/src/login/lclif.p.h
index d28f1c587..024280b37 100644
--- a/src/login/lclif.p.h
+++ b/src/login/lclif.p.h
@@ -35,7 +35,7 @@
// Packet DB
#define MIN_PACKET_DB 0x0064
-#define MAX_PACKET_DB 0x08ff
+#define MAX_PACKET_DB 0x0acf
/* Enums */
@@ -51,6 +51,7 @@ enum login_packet_id {
PACKET_ID_CA_LOGIN4 = 0x027c,
PACKET_ID_CA_LOGIN_HAN = 0x02b0,
PACKET_ID_CA_SSO_LOGIN_REQ = 0x0825,
+ PACKET_ID_CA_LOGIN_OTP = 0x0acf,
PACKET_ID_CA_REQ_HASH = 0x01db,
PACKET_ID_CA_CHARSERVERCONNECT = 0x2710, // Custom Hercules Packet
//PACKET_ID_CA_SSO_LOGIN_REQa = 0x825a, /* unused */
@@ -160,6 +161,19 @@ struct packet_CA_SSO_LOGIN_REQ {
char t1[]; ///< SSO Login Token (variable length)
} __attribute__((packed));
+/**
+ * Packet structure for CA_LOGIN_OTP.
+ */
+struct packet_CA_LOGIN_OTP {
+ int16 packet_id; ///< Packet ID (#PACKET_ID_CA_LOGIN_OTP)
+#if PACKETVER >= 20171113
+ uint32 devFlags; ///< flags including dev flag
+#endif
+ char login[25]; ///< Username
+ char password[32]; ///< Password encrypted by rijndael
+ char flagsStr[5]; ///< Unknown flags. Normally string: G000
+} __attribute__((packed));
+
#if 0 // Unused
struct packet_CA_SSO_LOGIN_REQa {
int16 packet_id;
@@ -325,6 +339,7 @@ struct lclif_interface_private {
LoginParseFunc *parse_CA_LOGIN_PCBANG; ///< Packet handler for #packet_CA_LOGIN_PCBANG.
LoginParseFunc *parse_CA_LOGIN_HAN; ///< Packet handler for #packet_CA_LOGIN_HAN.
LoginParseFunc *parse_CA_SSO_LOGIN_REQ; ///< Packet handler for #packet_CA_SSO_LOGIN_REQ.
+ LoginParseFunc *parse_CA_LOGIN_OTP; ///< Packet handler for #packet_CA_LOGIN_OTP.
LoginParseFunc *parse_CA_REQ_HASH; ///< Packet handler for #packet_CA_REQ_HASH.
LoginParseFunc *parse_CA_CHARSERVERCONNECT; ///< Packet handler for #packet_CA_CHARSERVERCONNECT.
};
diff --git a/src/login/login.c b/src/login/login.c
index ae584206f..a78276051 100644
--- a/src/login/login.c
+++ b/src/login/login.c
@@ -1360,6 +1360,41 @@ bool login_client_login(int fd, struct login_session_data *sd)
return false;
}
+bool login_client_login_otp(int fd, struct login_session_data *sd) __attribute__((nonnull (2)));
+bool login_client_login_otp(int fd, struct login_session_data *sd)
+{
+ // send ok response with fake token
+#ifdef PACKETVER_ZERO
+#if PACKETVER >= 20171127
+ WFIFOHEAD(fd, 33);
+ WFIFOW(fd, 0) = 0x0ae3;
+ WFIFOW(fd, 2) = 33; // len
+ WFIFOL(fd, 4) = 0; // normal login
+ safestrncpy(WFIFOP(fd, 8), "S1000", 6);
+ safestrncpy(WFIFOP(fd, 28), "token", 6);
+ WFIFOSET(fd, 33);
+#elif PACKETVER >= 20171123
+ WFIFOHEAD(fd, 19);
+ WFIFOW(fd, 0) = 0x0ae3;
+ WFIFOW(fd, 2) = 19; // len
+ WFIFOL(fd, 4) = 0; // normal login
+ safestrncpy(WFIFOP(fd, 8), "S1000", 6);
+ safestrncpy(WFIFOP(fd, 14), "token", 6);
+ WFIFOSET(fd, 19);
+#else
+ WFIFOHEAD(fd, 13);
+ WFIFOW(fd, 0) = 0x0ad1;
+ WFIFOW(fd, 2) = 13; // len
+ WFIFOL(fd, 4) = 0; // normal login
+ safestrncpy(WFIFOP(fd, 8), "token", 6);
+ WFIFOSET(fd, 13);
+#endif
+ return true;
+#else // PACKETVER_ZERO
+ return false;
+#endif // PACKETVER_ZERO
+}
+
void login_char_server_connection_status(int fd, struct login_session_data* sd, uint8 status) __attribute__((nonnull (2)));
void login_char_server_connection_status(int fd, struct login_session_data* sd, uint8 status)
{
@@ -1604,7 +1639,7 @@ bool login_config_read_account(const char *filename, struct config_t *config, bo
/**
* Frees login->config->client_hash_nodes
**/
-void clear_client_hash_nodes(void)
+void login_clear_client_hash_nodes(void)
{
struct client_hash_node *node = login->config->client_hash_nodes;
@@ -1618,7 +1653,7 @@ void clear_client_hash_nodes(void)
}
/**
- * Reads information from login_configuration.permission.hash.md5_hashes.
+ * Reads information from login_configuration.permission.hash.md5_hashes (unused function)
*
* @param setting The setting to read from.
*/
@@ -1627,7 +1662,7 @@ void login_config_set_md5hash(struct config_setting_t *setting)
int i;
int count = libconfig->setting_length(setting);
- clear_client_hash_nodes();
+ login->clear_client_hash_nodes();
// There's no need to parse if it's disabled or if there's no list
if (count <= 0 || !login->config->client_hash_check)
@@ -1702,7 +1737,7 @@ bool login_config_read_permission_hash(const char *filename, struct config_t *co
libconfig->setting_lookup_bool_real(setting, "enabled", &login->config->client_hash_check);
if ((setting = libconfig->lookup(config, "login_configuration/permission/hash/MD5_hashes")) != NULL)
- login_config_set_md5hash(setting);
+ login->config_set_md5hash(setting);
return true;
}
@@ -1710,7 +1745,7 @@ bool login_config_read_permission_hash(const char *filename, struct config_t *co
/**
* Clears login->config->dnsbl_servers, freeing any allocated memory.
*/
-void clear_dnsbl_servers(void)
+void login_clear_dnsbl_servers(void)
{
while (VECTOR_LENGTH(login->config->dnsbl_servers) > 0) {
aFree(&VECTOR_POP(login->config->dnsbl_servers));
@@ -1728,7 +1763,7 @@ void login_config_set_dnsbl_servers(struct config_setting_t *setting)
int i;
int count = libconfig->setting_length(setting);
- clear_dnsbl_servers();
+ login->clear_dnsbl_servers();
// There's no need to parse if it's disabled
if (count <= 0 || !login->config->use_dnsbl)
@@ -1772,7 +1807,7 @@ bool login_config_read_permission_blacklist(const char *filename, struct config_
libconfig->setting_lookup_bool_real(setting, "enabled", &login->config->use_dnsbl);
if ((setting = libconfig->lookup(config, "login_configuration/permission/DNS_blacklist/dnsbl_servers")) != NULL)
- login_config_set_dnsbl_servers(setting);
+ login->config_set_dnsbl_servers(setting);
return true;
}
@@ -1806,15 +1841,47 @@ bool login_config_read_permission(const char *filename, struct config_t *config,
libconfig->setting_lookup_bool_real(setting, "check_client_version", &login->config->check_client_version);
libconfig->setting_lookup_uint32(setting, "client_version_to_connect", &login->config->client_version_to_connect);
- if (!login_config_read_permission_hash(filename, config, imported))
+ if (!login->config_read_permission_hash(filename, config, imported))
retval = false;
- if (!login_config_read_permission_blacklist(filename, config, imported))
+ if (!login->config_read_permission_blacklist(filename, config, imported))
retval = false;
return retval;
}
/**
+ * Reads 'login_configuration.users_count' and initializes required variables.
+ *
+ * @param filename Path to configuration file (used in error and warning messages).
+ * @param config The current config being parsed.
+ * @param imported Whether the current config is imported from another file.
+ *
+ * @retval false in case of error.
+ */
+bool login_config_read_users(const char *filename, struct config_t *config, bool imported)
+{
+ struct config_setting_t *setting = NULL;
+ bool retval = true;
+
+ nullpo_retr(false, filename);
+ nullpo_retr(false, config);
+
+ if ((setting = libconfig->lookup(config, "login_configuration/users_count")) == NULL) {
+ if (imported)
+ return true;
+ ShowError("login_config_read: login_configuration/users_count was not found in %s!\n", filename);
+ return false;
+ }
+
+ libconfig->setting_lookup_bool_real(setting, "send_user_count_description", &login->config->send_user_count_description);
+ libconfig->setting_lookup_uint32(setting, "low", &login->config->users_low);
+ libconfig->setting_lookup_uint32(setting, "medium", &login->config->users_medium);
+ libconfig->setting_lookup_uint32(setting, "high", &login->config->users_high);
+
+ return retval;
+}
+
+/**
* Reads the 'login-config' configuration file and initializes required variables.
*
* @param filename Path to configuration file.
@@ -1833,15 +1900,17 @@ bool login_config_read(const char *filename, bool imported)
if (!libconfig->load_file(&config, filename))
return false; // Error message is already shown by libconfig->load_file
- if (!login_config_read_inter(filename, &config, imported))
+ if (!login->config_read_inter(filename, &config, imported))
+ retval = false;
+ if (!login->config_read_console(filename, &config, imported))
retval = false;
- if (!login_config_read_console(filename, &config, imported))
+ if (!login->config_read_log(filename, &config, imported))
retval = false;
- if (!login_config_read_log(filename, &config, imported))
+ if (!login->config_read_account(filename, &config, imported))
retval = false;
- if (!login_config_read_account(filename, &config, imported))
+ if (!login->config_read_permission(filename, &config, imported))
retval = false;
- if (!login_config_read_permission(filename, &config, imported))
+ if (!login->config_read_users(filename, &config, imported))
retval = false;
if (!loginlog_config_read("conf/common/inter-server.conf", imported)) // Only inter-server
@@ -1866,6 +1935,30 @@ bool login_config_read(const char *filename, bool imported)
return retval;
}
+/**
+ * Convert users count to colors.
+ *
+ * @param users Actual users count.
+ *
+ * @retval users count or color id.
+ **/
+uint16 login_convert_users_to_colors(uint16 users)
+{
+#if PACKETVER >= 20170726
+ if (!login->config->send_user_count_description)
+ return 4;
+ if (users <= login->config->users_low)
+ return 0;
+ else if (users <= login->config->users_medium)
+ return 1;
+ else if (users <= login->config->users_high)
+ return 2;
+ return 3;
+#else
+ return users;
+#endif
+}
+
//--------------------------------------
// Function called at exit of the server
//--------------------------------------
@@ -1877,8 +1970,8 @@ int do_final(void)
HPM->event(HPET_FINAL);
- clear_client_hash_nodes();
- clear_dnsbl_servers();
+ login->clear_client_hash_nodes();
+ login->clear_dnsbl_servers();
login_log(0, "login server", 100, "login server shutdown");
@@ -2160,6 +2253,7 @@ void login_defaults(void) {
login->parse_fromchar = login_parse_fromchar;
login->client_login = login_client_login;
+ login->client_login_otp = login_client_login_otp;
login->parse_request_connection = login_parse_request_connection;
login->auth_ok = login_auth_ok;
login->auth_failed = login_auth_failed;
@@ -2168,6 +2262,20 @@ void login_defaults(void) {
login->config_set_defaults = login_config_set_defaults;
login->config_read = login_config_read;
+ login->config_read_inter = login_config_read_inter;
+ login->config_read_console = login_config_read_console;
+ login->config_read_log = login_config_read_log;
+ login->config_read_account = login_config_read_account;
+ login->config_read_permission = login_config_read_permission;
+ login->config_read_permission_hash = login_config_read_permission_hash;
+ login->config_read_permission_blacklist = login_config_read_permission_blacklist;
+ login->config_read_users = login_config_read_users;
+ login->config_set_dnsbl_servers = login_config_set_dnsbl_servers;
+
+ login->clear_dnsbl_servers = login_clear_dnsbl_servers;
+ login->clear_client_hash_nodes = login_clear_client_hash_nodes;
+ login->config_set_md5hash = login_config_set_md5hash;
+ login->convert_users_to_colors = login_convert_users_to_colors;
login->LOGIN_CONF_NAME = NULL;
login->NET_CONF_NAME = NULL;
}
diff --git a/src/login/login.h b/src/login/login.h
index 5632e6529..3af54ef50 100644
--- a/src/login/login.h
+++ b/src/login/login.h
@@ -32,6 +32,8 @@
struct mmo_account;
struct AccountDB;
+struct config_t;
+struct config_setting_t;
enum E_LOGINSERVER_ST
{
@@ -119,6 +121,11 @@ struct Login_Config {
bool use_dnsbl; ///< dns blacklist blocking ?
VECTOR_DECL(char *) dnsbl_servers; ///< dnsbl servers
+ bool send_user_count_description;
+ uint32 users_low;
+ uint32 users_medium;
+ uint32 users_high;
+
bool client_hash_check; ///< flags for checking client md5
// TODO: VECTOR candidate
struct client_hash_node *client_hash_nodes; ///< linked list containg md5 hash for each gm group
@@ -205,10 +212,24 @@ struct login_interface {
void (*auth_ok) (struct login_session_data* sd);
void (*auth_failed) (struct login_session_data* sd, int result);
bool (*client_login) (int fd, struct login_session_data *sd);
+ bool (*client_login_otp) (int fd, struct login_session_data *sd);
void (*char_server_connection_status) (int fd, struct login_session_data* sd, uint8 status);
void (*parse_request_connection) (int fd, struct login_session_data* sd, const char *ip, uint32 ipl);
void (*config_set_defaults) (void);
bool (*config_read) (const char *filename, bool included);
+ bool (*config_read_inter) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_console) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_log) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_account) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_permission) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_permission_hash) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_permission_blacklist) (const char *filename, struct config_t *config, bool imported);
+ bool (*config_read_users) (const char *filename, struct config_t *config, bool imported);
+ void (*clear_dnsbl_servers) (void);
+ void (*config_set_dnsbl_servers) (struct config_setting_t *setting);
+ void (*clear_client_hash_nodes) (void);
+ void (*config_set_md5hash) (struct config_setting_t *setting);
+ uint16 (*convert_users_to_colors) (uint16 users);
char *LOGIN_CONF_NAME;
char *NET_CONF_NAME; ///< Network configuration filename
};
diff --git a/src/map/Makefile.in b/src/map/Makefile.in
index 6147285e9..91efba0ae 100644
--- a/src/map/Makefile.in
+++ b/src/map/Makefile.in
@@ -50,9 +50,10 @@ MAP_OBJ = $(addprefix obj_sql/, $(patsubst %c,%o,$(MAP_C)))
MAP_H = atcommand.h battle.h battleground.h buyingstore.h channel.h chat.h \
chrif.h clif.h date.h duel.h elemental.h guild.h homunculus.h HPMmap.h \
instance.h intif.h irc-bot.h itemdb.h log.h mail.h map.h mapreg.h \
- mercenary.h mob.h npc.h packets.h packets_keys.h packets_struct.h party.h path.h \
- pc.h pc_groups.h pet.h quest.h rodex.h script.h searchstore.h skill.h \
- status.h storage.h trade.h unit.h vending.h
+ mercenary.h mob.h npc.h packets.h packets_keys_main.h packets_keys_zero.h \
+ packets_shuffle_main.h packets_shuffle_zero.h packets_struct.h party.h \
+ path.h pc.h pc_groups.h pet.h quest.h rodex.h script.h searchstore.h \
+ skill.h status.h storage.h trade.h unit.h vending.h
MAP_PH =
HAVE_MYSQL=@HAVE_MYSQL@
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index d9f4810ee..aa25f11d6 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -5296,12 +5296,13 @@ ACMD(skillid)
iter = db_iterator(skill->name2id_db);
for (data = iter->first(iter,&key); iter->exists(iter); data = iter->next(iter,&key)) {
- int idx = skill->get_index(DB->data2i(data));
- if (strnicmp(key.str, message, skillen) == 0 || strnicmp(skill->dbs->db[idx].desc, message, skillen) == 0) {
- safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd,1164), DB->data2i(data), skill->dbs->db[idx].desc, key.str); // skill %d: %s (%s)
+ int skill_id = DB->data2i(data);
+ const char *skill_desc = skill->get_desc(skill_id);
+ if (strnicmp(key.str, message, skillen) == 0 || strnicmp(skill_desc, message, skillen) == 0) {
+ safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd, 1164), skill_id, skill_desc, key.str); // skill %d: %s (%s)
clif->message(fd, atcmd_output);
- } else if ( found < MAX_SKILLID_PARTIAL_RESULTS && ( stristr(key.str,message) || stristr(skill->dbs->db[idx].desc,message) ) ) {
- snprintf(partials[found], MAX_SKILLID_PARTIAL_RESULTS_LEN, msg_fd(fd,1164), DB->data2i(data), skill->dbs->db[idx].desc, key.str);
+ } else if (found < MAX_SKILLID_PARTIAL_RESULTS && (stristr(key.str, message) != NULL || stristr(skill_desc, message) != NULL)) {
+ snprintf(partials[found], MAX_SKILLID_PARTIAL_RESULTS_LEN, msg_fd(fd, 1164), skill_id, skill_desc, key.str);
found++;
}
}
@@ -5428,7 +5429,7 @@ ACMD(skilltree)
for (j = 0; j < VECTOR_LENGTH(entry->need); j++) {
struct skill_tree_requirement *req = &VECTOR_INDEX(entry->need, j);
if (pc->checkskill(sd, req->id) < req->lv) {
- safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd,1170), req->lv, skill->dbs->db[req->id].desc); // Player requires level %d of skill %s.
+ safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd,1170), req->lv, skill->get_desc(req->id)); // Player requires level %d of skill %s.
clif->message(fd, atcmd_output);
meets = 0;
}
@@ -5456,7 +5457,7 @@ void atcommand_getring(struct map_session_data* sd) {
if((flag = pc->additem(sd,&item_tmp,1,LOG_TYPE_COMMAND))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
@@ -8686,7 +8687,7 @@ ACMD(cart) {
int val = atoi(message);
bool need_skill = pc->checkskill(sd, MC_PUSHCART) ? false : true;
- unsigned int index = skill->get_index(MC_PUSHCART);
+ int index = skill->get_index(MC_PUSHCART);
if (!*message || val < 0 || val > MAX_CARTS) {
safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd,1390),command,MAX_CARTS); // Unknown Cart (usage: %s <0-%d>).
@@ -9394,7 +9395,7 @@ ACMD(cddebug) {
}
if (!cd || (*message && !strcmpi(message,"reset"))) {
- for(i = 0; i < MAX_SKILL; i++) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if( sd->blockskill[i] ) {
clif->messages(fd,"Found skill '%s', unblocking...",skill->dbs->db[i].name);
sd->blockskill[i] = false;
diff --git a/src/map/battle.c b/src/map/battle.c
index 8983e93c9..70ebc4a08 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -7308,6 +7308,7 @@ static const struct battle_data {
{ "boarding_halter_speed", &battle_config.boarding_halter_speed, 25, 0, 100, },
{ "features/rodex", &battle_config.feature_rodex, 1, 0, 1, },
{ "features/rodex_use_accountmail", &battle_config.feature_rodex_use_accountmail, 0, 0, 1, },
+ { "features/enable_homun_autofeed", &battle_config.feature_enable_homun_autofeed, 1, 0, 1, },
};
#ifndef STATS_OPT_OUT
/**
diff --git a/src/map/battle.h b/src/map/battle.h
index 4a63887c4..429249dca 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -54,6 +54,7 @@ struct status_data;
enum {
// Flag of the final calculation
+ BF_NONE = 0x0000,
BF_WEAPON = 0x0001,
BF_MAGIC = 0x0002,
BF_MISC = 0x0004,
@@ -559,6 +560,8 @@ struct Battle_Config {
int feature_rodex;
int feature_rodex_use_accountmail;
+
+ int feature_enable_homun_autofeed;
};
/* criteria for battle_config.idletime_critera */
diff --git a/src/map/chrif.c b/src/map/chrif.c
index 39aa046d7..96f144523 100644
--- a/src/map/chrif.c
+++ b/src/map/chrif.c
@@ -1360,10 +1360,10 @@ void chrif_skillid2idx(int fd) {
if (!sockt->session_is_valid(fd))
return;
- WFIFOHEAD(fd,4 + (MAX_SKILL * 4));
+ WFIFOHEAD(fd,4 + (MAX_SKILL_DB * 4));
WFIFOW(fd,0) = 0x2b0b;
- for(i = 0; i < MAX_SKILL; i++) {
- if( skill->dbs->db[i].nameid ) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
+ if (skill->dbs->db[i].nameid != 0) {
WFIFOW(fd, 4 + (count*4)) = skill->dbs->db[i].nameid;
WFIFOW(fd, 6 + (count*4)) = i;
count++;
diff --git a/src/map/clif.c b/src/map/clif.c
index 088c92ea8..988e821e7 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -293,7 +293,11 @@ unsigned char clif_bl_type(struct block_list *bl)
case BL_NPC:
vd = status->get_viewdata(bl);
nullpo_retr(CLUT_NPC, vd);
+#if PACKETVER >= 20170726
+ return CLUT_EVENT;
+#else
return pc->db_checkid(vd->class) ? CLUT_PC : CLUT_EVENT;
+#endif
case BL_PET:
vd = status->get_viewdata(bl);
nullpo_retr(CLUT_NPC, vd);
@@ -732,6 +736,8 @@ void clif_authrefuse(int fd, uint8 error_code)
/// 108 = BAN_IP_BLOCK
/// 109 = BAN_INVALID_PWD_CNT
/// 110 = BAN_NOT_ALLOWED_JOBCLASS
+/// 113 = access is restricted between the hours of midnight to 6:00am.
+/// 115 = You are in game connection ban period.
/// ? = disconnected -> MsgStringTable[3]
// TODO: type enum
void clif_authfail_fd(int fd, int type)
@@ -790,7 +796,15 @@ void clif_dropflooritem(struct flooritem_data* fitem) {
p.subX = fitem->subx;
p.subY = fitem->suby;
p.count = fitem->item_data.amount;
-
+#ifdef PACKETVER_ZERO
+ if (fitem->showdropeffect) {
+ p.showdropeffect = itemdb_showdropeffect(fitem->item_data.nameid);
+ p.dropeffectmode = itemdb_dropeffectmode(fitem->item_data.nameid);
+ } else {
+ p.showdropeffect = 0;
+ p.dropeffectmode = 0;
+ }
+#endif
clif->send(&p, sizeof(p), &fitem->bl, AREA);
}
@@ -1067,14 +1081,17 @@ void clif_set_unit_idle(struct block_list* bl, struct map_session_data *tsd, enu
#endif
#if PACKETVER >= 20120221
if (battle_config.show_monster_hp_bar && bl->type == BL_MOB && status_get_hp(bl) < status_get_max_hp(bl)) {
- const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
p.maxHP = status_get_max_hp(bl);
p.HP = status_get_hp(bl);
- p.isBoss = (md->spawn != NULL && md->spawn->state.boss) ? 1 : 0;
} else {
p.maxHP = -1;
p.HP = -1;
- p.isBoss = 0;
+ }
+ if (bl->type == BL_MOB) {
+ const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
+ p.isBoss = (md->spawn != NULL) ? md->spawn->state.boss : BTYPE_NONE;
+ } else {
+ p.isBoss = BTYPE_NONE;
}
#endif
#if PACKETVER >= 20150513
@@ -1216,14 +1233,17 @@ void clif_spawn_unit(struct block_list* bl, enum send_target target) {
#endif
#if PACKETVER >= 20120221
if (battle_config.show_monster_hp_bar && bl->type == BL_MOB && status_get_hp(bl) < status_get_max_hp(bl)) {
- const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
p.maxHP = status_get_max_hp(bl);
p.HP = status_get_hp(bl);
- p.isBoss = (md->spawn != NULL && md->spawn->state.boss) ? 1 : 0;
} else {
p.maxHP = -1;
p.HP = -1;
- p.isBoss = 0;
+ }
+ if (bl->type == BL_MOB) {
+ const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
+ p.isBoss = (md->spawn != NULL) ? md->spawn->state.boss : BTYPE_NONE;
+ } else {
+ p.isBoss = BTYPE_NONE;
}
#endif
#if PACKETVER >= 20150513
@@ -1315,14 +1335,17 @@ void clif_set_unit_walking(struct block_list* bl, struct map_session_data *tsd,
#endif
#if PACKETVER >= 20120221
if (battle_config.show_monster_hp_bar && bl->type == BL_MOB && status_get_hp(bl) < status_get_max_hp(bl)) {
- const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
p.maxHP = status_get_max_hp(bl);
p.HP = status_get_hp(bl);
- p.isBoss = (md->spawn != NULL && md->spawn->state.boss) ? 1 : 0;
} else {
p.maxHP = -1;
p.HP = -1;
- p.isBoss = 0;
+ }
+ if (bl->type == BL_MOB) {
+ const struct mob_data *md = BL_UCCAST(BL_MOB, bl);
+ p.isBoss = (md->spawn != NULL) ? md->spawn->state.boss : BTYPE_NONE;
+ } else {
+ p.isBoss = BTYPE_NONE;
}
#endif
#if PACKETVER >= 20150513
@@ -1666,8 +1689,7 @@ void clif_homskillinfoblock(struct map_session_data *sd) {
if ( id != 0 ) {
j = id - HM_SKILLBASE;
WFIFOW(fd, len) = id;
- WFIFOW(fd, len + 2) = skill->get_inf(id);
- WFIFOW(fd, len + 4) = 0;
+ WFIFOL(fd, len + 2) = skill->get_inf(id);
WFIFOW(fd, len + 6) = hd->homunculus.hskill[j].lv;
if ( hd->homunculus.hskill[j].lv ) {
WFIFOW(fd, len + 8) = skill->get_sp(id, hd->homunculus.hskill[j].lv);
@@ -1888,19 +1910,25 @@ void clif_changemap(struct map_session_data *sd, short m, int x, int y) {
/// Notifies the client of a position change to coordinates on given map, which is on another map-server (ZC_NPCACK_SERVERMOVE).
/// 0092 <map name>.16B <x>.W <y>.W <ip>.L <port>.W
+/// 0ac7 <map name>.16B <x>.W <y>.W <ip>.L <port>.W <zero>.128B
void clif_changemapserver(struct map_session_data* sd, unsigned short map_index, int x, int y, uint32 ip, uint16 port) {
int fd;
+#if PACKETVER >= 20170315
+ const int cmd = 0xac7;
+#else
+ const int cmd = 0x92;
+#endif
nullpo_retv(sd);
fd = sd->fd;
- WFIFOHEAD(fd,packet_len(0x92));
- WFIFOW(fd,0) = 0x92;
- mapindex->getmapname_ext(mapindex_id2name(map_index), WFIFOP(fd,2));
- WFIFOW(fd,18) = x;
- WFIFOW(fd,20) = y;
- WFIFOL(fd,22) = htonl(ip);
- WFIFOW(fd,26) = sockt->ntows(htons(port)); // [!] LE byte order here [!]
- WFIFOSET(fd,packet_len(0x92));
+ WFIFOHEAD(fd, packet_len(cmd));
+ WFIFOW(fd, 0) = cmd;
+ mapindex->getmapname_ext(mapindex_id2name(map_index), WFIFOP(fd, 2));
+ WFIFOW(fd, 18) = x;
+ WFIFOW(fd, 20) = y;
+ WFIFOL(fd, 22) = htonl(ip);
+ WFIFOW(fd, 26) = sockt->ntows(htons(port)); // [!] LE byte order here [!]
+ WFIFOSET(fd, packet_len(cmd));
}
void clif_blown(struct block_list *bl)
@@ -2286,6 +2314,7 @@ void clif_viewpoint(struct map_session_data *sd, int npc_id, int type, int x, in
/// 2 = bottom right corner
/// 3 = middle of screen, inside a movable window
/// 4 = middle of screen, movable with a close button, chrome-less
+/// 255 = hide
void clif_cutin(struct map_session_data* sd, const char* image, int type)
{
int fd;
@@ -3332,17 +3361,22 @@ void clif_changelook(struct block_list *bl,int type,int val)
#if PACKETVER < 4
clif->sendlook(bl, bl->id, type, val, 0, target);
#else
- if(type == LOOK_WEAPON || type == LOOK_SHIELD) {
- nullpo_retv(vd);
- type = LOOK_WEAPON;
- val = vd->weapon;
- val2 = vd->shield;
- }
- if (clif->isdisguised(bl)) {
- clif->sendlook(bl, bl->id, type, val, val2, AREA_WOS);
- clif->sendlook(bl, -bl->id, type, val, val2, SELF);
+ if (bl->type != BL_NPC) {
+ if(type == LOOK_WEAPON || type == LOOK_SHIELD) {
+ nullpo_retv(vd);
+ type = LOOK_WEAPON;
+ val = vd->weapon;
+ val2 = vd->shield;
+ }
+ if (clif->isdisguised(bl)) {
+ clif->sendlook(bl, bl->id, type, val, val2, AREA_WOS);
+ clif->sendlook(bl, -bl->id, type, val, val2, SELF);
+ } else {
+ clif->sendlook(bl, bl->id, type, val, val2, target);
+ }
} else {
- clif->sendlook(bl, bl->id, type, val, val2, target);
+ struct npc_data *nd = BL_UCAST(BL_NPC, bl);
+ npc->refresh(nd);
}
#endif
}
@@ -4848,9 +4882,9 @@ void clif_skillinfoblock(struct map_session_data *sd)
fd=sd->fd;
if (!fd) return;
- WFIFOHEAD(fd, MAX_SKILL * 37 + 4);
+ WFIFOHEAD(fd, MAX_SKILL_DB * 37 + 4);
WFIFOW(fd,0) = 0x10f;
- for ( i = 0, len = 4; i < MAX_SKILL; i++) {
+ for ( i = 0, len = 4; i < MAX_SKILL_DB; i++) {
if( (id = sd->status.skill[i].id) != 0 ) {
int level;
// workaround for bugreport:5348
@@ -4881,7 +4915,7 @@ void clif_skillinfoblock(struct map_session_data *sd)
WFIFOSET(fd,len);
// workaround for bugreport:5348; send the remaining skills one by one to bypass packet size limit
- for ( ; i < MAX_SKILL; i++) {
+ for ( ; i < MAX_SKILL_DB; i++) {
if( (id = sd->status.skill[i].id) != 0 ) {
clif->addskill(sd, id);
clif->skillinfo(sd, id, 0);
@@ -4983,7 +5017,7 @@ void clif_skillinfo(struct map_session_data *sd,int skill_id, int inf)
int skill_lv;
nullpo_retv(sd);
- Assert_retv(idx >= 0 && idx < MAX_SKILL);
+ Assert_retv(idx >= 0 && idx < MAX_SKILL_DB);
skill_lv = sd->status.skill[idx].lv;
@@ -5050,6 +5084,10 @@ void clif_useskill(struct block_list* bl, int src_id, int dst_id, int dst_x, int
} else {
clif->send(buf,packet_len(cmd), bl, AREA);
}
+#if PACKETVER >= 20151223
+ if ((skill->get_inf2(skill_id) & INF2_SHOW_SKILL_SCALE) != 0)
+ clif->skill_scale(bl, src_id, bl->x, bl->y, skill_id, skill_lv, casttime);
+#endif
}
/// Notifies clients in area, that an object canceled casting (ZC_DISPEL).
@@ -6248,8 +6286,7 @@ void clif_item_skill(struct map_session_data *sd,uint16 skill_id,uint16 skill_lv
WFIFOHEAD(fd,packet_len(0x147));
WFIFOW(fd, 0)=0x147;
WFIFOW(fd, 2)=skill_id;
- WFIFOW(fd, 4)=skill->get_inf(skill_id);
- WFIFOW(fd, 6)=0;
+ WFIFOL(fd, 4)=skill->get_inf(skill_id);
WFIFOW(fd, 8)=skill_lv;
WFIFOW(fd,10)=skill->get_sp(skill_id,skill_lv);
WFIFOW(fd,12)=skill->get_range2(&sd->bl, skill_id,skill_lv);
@@ -6557,9 +6594,6 @@ void clif_party_created(struct map_session_data *sd,int result)
}
/// Adds new member to a party.
-/// 0104 <account id>.L <role>.L <x>.W <y>.W <state>.B <party name>.24B <char name>.24B <map name>.16B (ZC_ADD_MEMBER_TO_GROUP)
-/// 01e9 <account id>.L <role>.L <x>.W <y>.W <state>.B <party name>.24B <char name>.24B <map name>.16B <item pickup rule>.B <item share rule>.B (ZC_ADD_MEMBER_TO_GROUP2)
-/// 0a43 <account id>.L <role>.L <class>.W <base level>.W <x>.W <y>.W <state>.B <party name>.24B <char name>.24B <map name>.16B <item pickup rule>.B <item share rule>.B (ZC_ADD_MEMBER_TO_GROUP3)
/// role:
/// 0 = leader
/// 1 = normal
@@ -6569,19 +6603,12 @@ void clif_party_created(struct map_session_data *sd,int result)
void clif_party_member_info(struct party_data *p, struct map_session_data *sd)
{
int i;
-#if PACKETVER < 20170502
- unsigned char buf[81];
- const int cmd = 0x1e9;
- const int offset = 0;
-#else
- unsigned char buf[85];
-// [4144] probably 0xa43 packet can works on older clients because in client was added in 2015-10-07
- const int cmd = 0xa43;
- int offset = 4;
-#endif
+ struct PACKET_ZC_ADD_MEMBER_TO_GROUP packet;
nullpo_retv(p);
nullpo_retv(sd);
+
+ memset(&packet, 0, sizeof(packet));
if (!sd) { //Pick any party member (this call is used when changing item share rules)
ARR_FIND(0, MAX_PARTY, i, p->data[i].sd != 0);
} else {
@@ -6591,27 +6618,28 @@ void clif_party_member_info(struct party_data *p, struct map_session_data *sd)
return; //Should never happen...
sd = p->data[i].sd;
- WBUFW(buf, 0) = cmd;
- WBUFL(buf, 2) = sd->status.account_id;
- WBUFL(buf, 6) = (p->party.member[i].leader) ? 0 : 1;
+ packet.packetType = partymemberinfo;
+ packet.AID = sd->status.account_id;
+#if PACKETVER >= 20171207
+ packet.GID = sd->status.char_id;
+#endif
+ packet.leader = (p->party.member[i].leader) ? 0 : 1;
#if PACKETVER >= 20170502
- WBUFW(buf, 10) = sd->status.class;
- WBUFW(buf, 12) = sd->status.base_level;
+ packet.class = sd->status.class;
+ packet.baseLevel = sd->status.base_level;
#endif
- WBUFW(buf, offset + 10) = sd->bl.x;
- WBUFW(buf, offset + 12) = sd->bl.y;
- WBUFB(buf, offset + 14) = (p->party.member[i].online) ? 0 : 1;
- memcpy(WBUFP(buf, offset + 15), p->party.name, NAME_LENGTH);
- memcpy(WBUFP(buf, offset + 39), sd->status.name, NAME_LENGTH);
- mapindex->getmapname_ext(map->list[sd->bl.m].custom_name ? map->list[map->list[sd->bl.m].instance_src_map].name : map->list[sd->bl.m].name, WBUFP(buf, offset + 63));
- WBUFB(buf, offset + 79) = (p->party.item & 1) ? 1 : 0;
- WBUFB(buf, offset + 80) = (p->party.item & 2) ? 1 : 0;
- clif->send(buf, packet_len(cmd), &sd->bl, PARTY);
+ packet.x = sd->bl.x;
+ packet.y = sd->bl.y;
+ packet.offline = (p->party.member[i].online) ? 0 : 1;
+ memcpy(packet.partyName, p->party.name, NAME_LENGTH);
+ memcpy(packet.playerName, sd->status.name, NAME_LENGTH);
+ mapindex->getmapname_ext(map->list[sd->bl.m].custom_name ? map->list[map->list[sd->bl.m].instance_src_map].name : map->list[sd->bl.m].name, packet.mapName);
+ packet.sharePickup = (p->party.item & 1) ? 1 : 0;
+ packet.shareLoot = (p->party.item & 2) ? 1 : 0;
+ clif->send(&packet, sizeof(packet), &sd->bl, PARTY);
}
/// Sends party information (ZC_GROUP_LIST).
-/// 00fb <packet len>.W <party name>.24B { <account id>.L <nick>.24B <map name>.16B <role>.B <state>.B }*
-/// 0a44 <packet len>.W <party name>.24B { <account id>.L <nick>.24B <map name>.16B <role>.B <state>.B <class>.W <base level>.W }* <item pickup rule>.B <item share rule>.B <unknown>.L
/// role:
/// 0 = leader
/// 1 = normal
@@ -6620,23 +6648,16 @@ void clif_party_member_info(struct party_data *p, struct map_session_data *sd)
/// 1 = disconnected
void clif_party_info(struct party_data* p, struct map_session_data *sd)
{
+ struct PACKET_ZC_GROUP_LIST *packet;
struct map_session_data* party_sd = NULL;
int i, c;
-#if PACKETVER < 20170502
- const int cmd = 0xfb;
- const int size = 46;
- unsigned char buf[2 + 2 + NAME_LENGTH + 46 * MAX_PARTY];
-#else
-// [4144] probably 0xa44 packet can works on older clients because in client was added in 2015-10-07
- const int cmd = 0xa44;
- const int size = 50;
- unsigned char buf[2 + 2 + NAME_LENGTH + 50 * MAX_PARTY + 6];
-#endif
-
+ unsigned char buf[sizeof(*packet) + sizeof(struct PACKET_ZC_GROUP_LIST_SUB) * MAX_PARTY];
nullpo_retv(p);
- WBUFW(buf, 0) = cmd;
- memcpy(WBUFP(buf, 4), p->party.name, NAME_LENGTH);
+ memset(buf, 0, sizeof(buf));
+ packet = (struct PACKET_ZC_GROUP_LIST *)buf;
+ packet->packetType = partyinfo;
+ memcpy(packet->partyName, p->party.name, NAME_LENGTH);
for(i = 0, c = 0; i < MAX_PARTY; i++)
{
struct party_member *m = &p->party.member[i];
@@ -6646,30 +6667,26 @@ void clif_party_info(struct party_data* p, struct map_session_data *sd)
if (party_sd == NULL)
party_sd = p->data[i].sd;
- WBUFL(buf, 28 + c * size) = m->account_id;
- memcpy(WBUFP(buf, 28 + c * size + 4), m->name, NAME_LENGTH);
- mapindex->getmapname_ext(mapindex_id2name(m->map), WBUFP(buf, 28 + c * size + 28));
- WBUFB(buf, 28 + c * size + 44) = (m->leader) ? 0 : 1;
- WBUFB(buf, 28 + c * size + 45) = (m->online) ? 0 : 1;
+ packet->members[c].AID = m->account_id;
+#if PACKETVER >= 20171207
+ packet->members[c].GID = m->char_id;
+#endif
+ memcpy(packet->members[c].playerName, m->name, NAME_LENGTH);
+ mapindex->getmapname_ext(mapindex_id2name(m->map), packet->members[c].mapName);
+ packet->members[c].leader = (m->leader) ? 0 : 1;
+ packet->members[c].offline = (m->online) ? 0 : 1;
#if PACKETVER >= 20170502
- WBUFW(buf, 28 + c * size + 46) = m->class;
- WBUFW(buf, 28 + c * size + 48) = m->lv;
+ packet->members[c].class = m->class;
+ packet->members[c].baseLevel = m->lv;
#endif
c++;
}
-#if PACKETVER < 20170502
- WBUFW(buf, 2) = 28 + c * size;
-#else
- WBUFB(buf, 28 + c * size) = (p->party.item & 1) ? 1 : 0;
- WBUFB(buf, 28 + c * size + 1) = (p->party.item & 2) ? 1 : 0;
- WBUFL(buf, 28 + c * size + 2) = 0; // unknown
- WBUFW(buf, 2) = 28 + c * size + 6;
-#endif
+ packet->packetLen = sizeof(*packet) + c * sizeof(struct PACKET_ZC_GROUP_LIST_SUB);
if (sd) { // send only to self
- clif->send(buf, WBUFW(buf, 2), &sd->bl, SELF);
+ clif->send(buf, packet->packetLen, &sd->bl, SELF);
} else if (party_sd) { // send to whole party
- clif->send(buf, WBUFW(buf, 2), &party_sd->bl, PARTY);
+ clif->send(buf, packet->packetLen, &party_sd->bl, PARTY);
}
}
@@ -9021,14 +9038,15 @@ void clif_feel_hate_reset(struct map_session_data *sd)
clif->starskill(sd, "", 0, 0, 30);
}
-/// Equip window (un)tick ack (ZC_CONFIG).
+/// Send configurations (ZC_CONFIG).
/// 02d9 <type>.L <value>.L
/// type:
/// 0 = open equip window
+/// 3 = homunculus autofeeding
/// value:
/// 0 = disabled
/// 1 = enabled
-void clif_equiptickack(struct map_session_data* sd, int flag)
+void clif_zc_config(struct map_session_data* sd, int type, int flag)
{
int fd;
nullpo_retv(sd);
@@ -9036,7 +9054,7 @@ void clif_equiptickack(struct map_session_data* sd, int flag)
WFIFOHEAD(fd, packet_len(0x2d9));
WFIFOW(fd, 0) = 0x2d9;
- WFIFOL(fd, 2) = 0;
+ WFIFOL(fd, 2) = type;
WFIFOL(fd, 6) = flag;
WFIFOSET(fd, packet_len(0x2d9));
}
@@ -9891,7 +9909,6 @@ void clif_parse_Hotkey(int fd, struct map_session_data *sd) {
/// Displays cast-like progress bar (ZC_PROGRESS).
/// 02f0 <color>.L <time>.L
-/* TODO ZC_PROGRESS_ACTOR <account_id>.L */
void clif_progressbar(struct map_session_data * sd, unsigned int color, unsigned int second)
{
int fd;
@@ -9920,6 +9937,30 @@ void clif_progressbar_abort(struct map_session_data * sd)
WFIFOSET(fd,packet_len(0x2f2));
}
+/**
+* Displays cast-like progress bar on a unit.
+* 09d1 <id>.L <color>.L <time>.L
+*
+* @param bl Source block list.
+* @param color Message color (RGB format: 0xRRGGBB).
+* @param time Time in seconds.
+*/
+void clif_progressbar_unit(struct block_list *bl, uint32 color, uint32 time)
+{
+#if PACKETVER >= 20130821
+ struct ZC_PROGRESS_ACTOR p;
+ nullpo_retv(bl);
+
+ p.PacketType = progressbarunit;
+ p.GID = bl->id;
+ p.color = color;
+ p.time = time;
+ clif->send(&p, sizeof(p), bl, AREA);
+#else
+ ShowWarning("clif_progressbar_unit: Using progressbar with units available for PACKETVER >= 20130821 only.");
+#endif
+}
+
void clif_parse_progressbar(int fd, struct map_session_data * sd) __attribute__((nonnull (2)));
/// Notification from the client, that the progress bar has reached 100% (CZ_PROGRESS).
/// 02f1
@@ -15920,19 +15961,32 @@ void clif_parse_ViewPlayerEquip(int fd, struct map_session_data* sd) {
clif->msgtable(sd, MSG_EQUIP_NOT_PUBLIC);
}
-void clif_parse_EquipTick(int fd, struct map_session_data* sd) __attribute__((nonnull (2)));
-/// Request to change equip window tick (CZ_CONFIG).
+void clif_parse_cz_config(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
+/// Receive configurations (CZ_CONFIG).
/// 02d8 <type>.L <value>.L
/// type:
/// 0 = open equip window
+/// 3 = homunculus autofeeding
/// value:
/// 0 = disabled
/// 1 = enabled
-void clif_parse_EquipTick(int fd, struct map_session_data* sd)
-{
- bool flag = (RFIFOL(fd,6) != 0) ? true : false;
- sd->status.show_equip = flag;
- clif->equiptickack(sd, flag);
+void clif_parse_cz_config(int fd, struct map_session_data *sd)
+{
+ int type = RFIFOL(fd, 2);
+ int flag = RFIFOL(fd, 6);
+
+ if (type == CZ_CONFIG_OPEN_EQUIPMENT_WINDOW) {
+ sd->status.show_equip = flag;
+ } else if (type == CZ_CONFIG_HOMUNCULUS_AUTOFEEDING) {
+ struct homun_data *hd;
+ hd = sd->hd;
+ nullpo_retv(hd);
+ hd->homunculus.autofeed = flag;
+ } else {
+ ShowWarning("clif_parse_cz_config: Unsupported type has been received (%d).", type);
+ return;
+ }
+ clif->zc_config(sd, type, flag);
}
void clif_parse_PartyTick(int fd, struct map_session_data* sd) __attribute__((nonnull (2)));
@@ -17624,7 +17678,7 @@ int clif_autoshadowspell_list(struct map_session_data *sd) {
WFIFOHEAD(fd, 2 * 6 + 4);
WFIFOW(fd,0) = 0x442;
- for( i = 0, c = 0; i < MAX_SKILL; i++ )
+ for (i = 0, c = 0; i < MAX_SKILL_DB; i++)
if( sd->status.skill[i].flag == SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].id > 0 &&
sd->status.skill[i].id < GS_GLITTERING && skill->get_type(sd->status.skill[i].id) == BF_MAGIC )
{ // Can't auto cast both Extended class and 3rd class skills.
@@ -18388,19 +18442,19 @@ void clif_parse_BankWithdraw(int fd, struct map_session_data *sd)
void clif_parse_BankCheck(int fd, struct map_session_data* sd) __attribute__((nonnull (2)));
void clif_parse_BankCheck(int fd, struct map_session_data* sd)
{
-#if PACKETVER >= 20130313
+#if PACKETVER >= 20130320
struct packet_banking_check p;
+ p.PacketType = banking_checkType;
if (!battle_config.feature_banking) {
- clif->messagecolor_self(fd, COLOR_RED, msg_fd(fd,1483));
- return;
+ p.Money = 0;
+ p.Reason = (short)1;
+ } else {
+ p.Money = (int)sd->status.bank_vault;
+ p.Reason = (short)0;
}
- p.PacketType = banking_checkType;
- p.Money = (int)sd->status.bank_vault;
- p.Reason = (short)0;
-
- clif->send(&p,sizeof(p), &sd->bl, SELF);
+ clif->send(&p, sizeof(p), &sd->bl, SELF);
#endif
}
@@ -19842,6 +19896,32 @@ void clif_parse_rodex_cancel_write_mail(int fd, struct map_session_data *sd)
rodex->clean(sd, 1);
}
+void clif_skill_scale(struct block_list *bl, int src_id, int x, int y, uint16 skill_id, uint16 skill_lv, int casttime)
+{
+#if PACKETVER >= 20151223
+ struct PACKET_ZC_SKILL_SCALE p;
+
+ p.PacketType = skillscale;
+ p.AID = src_id;
+ p.skill_id = skill_id;
+ p.skill_lv = skill_lv;
+ p.x = x;
+ p.y = y;
+ p.casttime = casttime;
+
+ if (clif->isdisguised(bl)) {
+ clif->send(&p, sizeof(p), bl, AREA_WOS);
+ p.AID = -src_id;
+ clif->send(&p, sizeof(p), bl, SELF);
+ } else {
+ clif->send(&p, sizeof(p), bl, AREA);
+ }
+#else
+ ShowWarning("clif_skill_scale: showing skill scale available only for clients >= 20151223.");
+ return;
+#endif
+}
+
/*==========================================
* Main client packet processing function
*------------------------------------------*/
@@ -20054,9 +20134,22 @@ void packetdb_loaddb(void) {
#define packet(id, size, ...) packetdb_addpacket((id), (size), ##__VA_ARGS__, 0xFFFF)
#include "packets.h" /* load structure data */
+#ifdef PACKETVER_ZERO
+#include "packets_shuffle_zero.h"
+#else // PACKETVER_ZERO
+#include "packets_shuffle_main.h"
+#endif // PACKETVER_ZERO
#undef packet
#define packetKeys(a,b,c) do { clif->cryptKey[0] = (a); clif->cryptKey[1] = (b); clif->cryptKey[2] = (c); } while(0)
-#include "packets_keys.h"
+#if defined(OBFUSCATIONKEY1) && defined(OBFUSCATIONKEY2) && defined(OBFUSCATIONKEY3)
+ packetKeys(OBFUSCATIONKEY1,OBFUSCATIONKEY2,OBFUSCATIONKEY3);
+#else // defined(OBFUSCATIONKEY1) && defined(OBFUSCATIONKEY2) && defined(OBFUSCATIONKEY3)
+#ifdef PACKETVER_ZERO
+#include "packets_keys_zero.h"
+#else // PACKETVER_ZERO
+#include "packets_keys_main.h"
+#endif // PACKETVER_ZERO
+#endif // defined(OBFUSCATIONKEY1) && defined(OBFUSCATIONKEY2) && defined(OBFUSCATIONKEY3)
#undef packetKeys
}
void clif_bc_ready(void) {
@@ -20296,13 +20389,14 @@ void clif_defaults(void) {
clif->mission_info = clif_mission_info;
clif->feel_hate_reset = clif_feel_hate_reset;
clif->partytickack = clif_partytickack;
- clif->equiptickack = clif_equiptickack;
+ clif->zc_config = clif_zc_config;
clif->viewequip_ack = clif_viewequip_ack;
clif->equpcheckbox = clif_equpcheckbox;
clif->displayexp = clif_displayexp;
clif->font = clif_font;
clif->progressbar = clif_progressbar;
clif->progressbar_abort = clif_progressbar_abort;
+ clif->progressbar_unit = clif_progressbar_unit;
clif->showdigit = clif_showdigit;
clif->elementalconverter_list = clif_elementalconverter_list;
clif->spellbook_list = clif_spellbook_list;
@@ -20821,7 +20915,7 @@ void clif_defaults(void) {
clif->pAdopt_request = clif_parse_Adopt_request;
clif->pAdopt_reply = clif_parse_Adopt_reply;
clif->pViewPlayerEquip = clif_parse_ViewPlayerEquip;
- clif->pEquipTick = clif_parse_EquipTick;
+ clif->p_cz_config = clif_parse_cz_config;
clif->pquestStateAck = clif_parse_questStateAck;
clif->pmercenary_action = clif_parse_mercenary_action;
clif->pBattleChat = clif_parse_BattleChat;
@@ -20911,4 +21005,5 @@ void clif_defaults(void) {
clif->rodex_request_items = clif_rodex_request_items;
clif->rodex_icon = clif_rodex_icon;
clif->rodex_send_mails_all = clif_rodex_send_mails_all;
+ clif->skill_scale = clif_skill_scale;
}
diff --git a/src/map/clif.h b/src/map/clif.h
index 851c823ea..69567cc2c 100644
--- a/src/map/clif.h
+++ b/src/map/clif.h
@@ -563,7 +563,15 @@ enum clif_unittype {
CLUT_MERCNARY = 0x9,
CLUT_ELEMENTAL = 0xa,
};
-
+/**
+* Receive configuration types
+**/
+enum CZ_CONFIG {
+ CZ_CONFIG_OPEN_EQUIPMENT_WINDOW = 0,
+ // Unknown = 1,
+ CZ_CONFIG_PET_AUTOFEEDING = 2,
+ CZ_CONFIG_HOMUNCULUS_AUTOFEEDING = 3,
+};
/**
* Structures
**/
@@ -781,13 +789,14 @@ struct clif_interface {
void (*mission_info) (struct map_session_data *sd, int mob_id, unsigned char progress);
void (*feel_hate_reset) (struct map_session_data *sd);
void (*partytickack) (struct map_session_data* sd, bool flag);
- void (*equiptickack) (struct map_session_data* sd, int flag);
+ void (*zc_config) (struct map_session_data *sd, int type, int flag);
void (*viewequip_ack) (struct map_session_data* sd, struct map_session_data* tsd);
void (*equpcheckbox) (struct map_session_data* sd);
void (*displayexp) (struct map_session_data *sd, uint64 exp, char type, bool is_quest);
void (*font) (struct map_session_data *sd);
void (*progressbar) (struct map_session_data * sd, unsigned int color, unsigned int second);
void (*progressbar_abort) (struct map_session_data * sd);
+ void (*progressbar_unit) (struct block_list *bl, uint32 color, uint32 time);
void (*showdigit) (struct map_session_data* sd, unsigned char type, int value);
int (*elementalconverter_list) (struct map_session_data *sd);
int (*spellbook_list) (struct map_session_data *sd);
@@ -1302,7 +1311,7 @@ struct clif_interface {
void (*pAdopt_request) (int fd, struct map_session_data *sd);
void (*pAdopt_reply) (int fd, struct map_session_data *sd);
void (*pViewPlayerEquip) (int fd, struct map_session_data* sd);
- void (*pEquipTick) (int fd, struct map_session_data* sd);
+ void (*p_cz_config) (int fd, struct map_session_data *sd);
void (*pquestStateAck) (int fd, struct map_session_data * sd);
void (*pmercenary_action) (int fd, struct map_session_data* sd);
void (*pBattleChat) (int fd, struct map_session_data* sd);
@@ -1395,6 +1404,7 @@ struct clif_interface {
void (*pRodexRequestItems) (int fd, struct map_session_data *sd);
void (*rodex_request_items) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result);
void (*rodex_icon) (int fd, bool show);
+ void (*skill_scale) (struct block_list *bl, int src_id, int x, int y, uint16 skill_id, uint16 skill_lv, int casttime);
};
#ifdef HERCULES_CORE
diff --git a/src/map/elemental.c b/src/map/elemental.c
index ae1fda0a2..cf1d485e1 100644
--- a/src/map/elemental.c
+++ b/src/map/elemental.c
@@ -885,7 +885,7 @@ int read_elementaldb(void) {
estatus->race = atoi(str[20]);
ele = atoi(str[21]);
- estatus->def_ele = ele%10;
+ estatus->def_ele = ele % ELE_MAX;
estatus->ele_lv = ele/20;
if( estatus->def_ele >= ELE_MAX ) {
ShowWarning("Elemental %d has invalid element type %d (max element is %d)\n", db->class_, estatus->def_ele, ELE_MAX - 1);
diff --git a/src/map/homunculus.c b/src/map/homunculus.c
index ddaf3443a..9f5756885 100644
--- a/src/map/homunculus.c
+++ b/src/map/homunculus.c
@@ -683,7 +683,12 @@ int homunculus_hunger_timer(int tid, int64 tick, int id, intptr_t data) {
} else if(hd->homunculus.hunger == 75) {
clif->emotion(&hd->bl, E_OK);
}
-
+ if (battle_config.feature_enable_homun_autofeed != 0) {
+ if (hd->homunculus.autofeed) {
+ if (hd->homunculus.hunger < 30)
+ homun->feed(sd, hd);
+ }
+ }
if(hd->homunculus.hunger < 0) {
hd->homunculus.hunger = 0;
// Delete the homunculus if intimacy <= 100
diff --git a/src/map/homunculus.h b/src/map/homunculus.h
index a80392cf6..f3b10fc19 100644
--- a/src/map/homunculus.h
+++ b/src/map/homunculus.h
@@ -124,7 +124,7 @@ struct homun_data {
struct map_session_data *master; //pointer back to its master
int hungry_timer; //[orn]
unsigned int exp_next;
- char blockskill[MAX_SKILL]; // [orn]
+ char blockskill[MAX_SKILL_DB]; // [orn]
int64 masterteleport_timer;
};
diff --git a/src/map/intif.c b/src/map/intif.c
index 60edc8d8b..be6b75d96 100644
--- a/src/map/intif.c
+++ b/src/map/intif.c
@@ -2438,7 +2438,8 @@ void intif_parse_RequestRodexOpenInbox(int fd)
#endif
int8 flag = RFIFOB(fd, 9);
int8 is_end = RFIFOB(fd, 10);
- int count = RFIFOL(fd, 11);
+ int is_first = RFIFOB(fd, 11);
+ int count = RFIFOL(fd, 12);
int i, j;
sd = map->charid2sd(RFIFOL(fd, 4));
@@ -2446,16 +2447,25 @@ void intif_parse_RequestRodexOpenInbox(int fd)
if (sd == NULL) // user is not online anymore
return;
- sd->rodex.total = count;
- if (RFIFOW(fd, 2) - 15 != sd->rodex.total * sizeof(struct rodex_message)) {
- ShowError("intif_parse_RodexInboxOpenReceived: data size mismatch %d != %"PRIuS"\n", RFIFOW(fd, 2) - 15, sd->rodex.total * sizeof(struct rodex_message));
+ if (is_first == false && sd->rodex.total == 0) {
+ ShowError("intif_parse_RodexInboxOpenReceived: mail list received in wrong order.\n");
return;
}
- if (flag == 0)
+ if (is_first)
+ sd->rodex.total = count;
+ else
+ sd->rodex.total += count;
+
+ if (RFIFOW(fd, 2) - 16 != count * sizeof(struct rodex_message)) {
+ ShowError("intif_parse_RodexInboxOpenReceived: data size mismatch %d != %"PRIuS"\n", RFIFOW(fd, 2) - 16, count * sizeof(struct rodex_message));
+ return;
+ }
+
+ if (flag == 0 && is_first)
VECTOR_CLEAR(sd->rodex.messages);
- for (i = 0, j = 15; i < count; ++i, j += sizeof(struct rodex_message)) {
+ for (i = 0, j = 16; i < count; ++i, j += sizeof(struct rodex_message)) {
struct rodex_message msg = { 0 };
VECTOR_ENSURE(sd->rodex.messages, 1, 1);
memcpy(&msg, RFIFOP(fd, j), sizeof(struct rodex_message));
diff --git a/src/map/itemdb.c b/src/map/itemdb.c
index 7fedb19ae..17a73400a 100644
--- a/src/map/itemdb.c
+++ b/src/map/itemdb.c
@@ -2070,6 +2070,12 @@ int itemdb_readdb_libconfig_sub(struct config_setting_t *it, int n, const char *
if ((t = libconfig->setting_get_member(it, "DisableOptions")))
id.flag.no_options = libconfig->setting_get_bool(t) ? 1 : 0;
+ if ((t = libconfig->setting_get_member(it, "ShowDropEffect")))
+ id.flag.showdropeffect = libconfig->setting_get_bool(t) ? 1 : 0;
+
+ if (itemdb->lookup_const(it, "DropEffectMode", &i32) && i32 >= 0)
+ id.dropeffectmode = i32;
+
if (itemdb->lookup_const(it, "ViewSprite", &i32) && i32 >= 0)
id.view_sprite = i32;
diff --git a/src/map/itemdb.h b/src/map/itemdb.h
index d2d3b6c73..5344a7cd6 100644
--- a/src/map/itemdb.h
+++ b/src/map/itemdb.h
@@ -472,6 +472,7 @@ struct item_data {
int view_id;
int matk;
int elvmax;/* maximum level for this item */
+ int dropeffectmode;
int delay;
uint64 class_base[3]; ///< Specifies if the base can wear this item (split in 3 indexes per type: 1-1, 2-1, 2-2)
@@ -495,6 +496,7 @@ struct item_data {
unsigned force_serial : 1;
unsigned no_options: 1; // < disallows use of item options on the item. (non-equippable items are automatically flagged) [Smokexyz]
unsigned drop_announce : 1; // Official Drop Announce [Jedzkie]
+ unsigned showdropeffect: 1; // < Allow showing effect on item drop [Asheraf]
} flag;
struct {// item stacking limitation
unsigned short amount;
@@ -538,6 +540,8 @@ struct item_data {
#define itemdb_value_sell(n) (itemdb->search(n)->value_sell)
#define itemdb_canrefine(n) (!itemdb->search(n)->flag.no_refine)
#define itemdb_allowoption(n) (!itemdb->search(n)->flag.no_options)
+#define itemdb_showdropeffect(n) (itemdb->search(n)->flag.showdropeffect)
+#define itemdb_dropeffectmode(n) (itemdb->search(n)->dropeffectmode)
#define itemdb_is_element(n) ((n) >= ITEMID_SCARLET_PTS && (n) <= ITEMID_LIME_GREEN_PTS)
#define itemdb_is_spellbook(n) ((n) >= ITEMID_MAGIC_BOOK_FB && (n) <= ITEMID_MAGIC_BOOK_DL)
diff --git a/src/map/map.c b/src/map/map.c
index ff5c2aafd..306f3a99d 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -1694,8 +1694,9 @@ bool map_closest_freecell(int16 m, const struct block_list *bl, int16 *x, int16
* @m, @x, @y mapid,x,y
* @first_charid, @second_charid, @third_charid, looting priority
* @flag: &1 MVP item. &2 do stacking check.
+ * @showdropeffect: show effect when the item is dropped.
*------------------------------------------*/
-int map_addflooritem(const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags)
+int map_addflooritem(const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, bool showdropeffect)
{
int r;
struct flooritem_data *fitem=NULL;
@@ -1714,6 +1715,7 @@ int map_addflooritem(const struct block_list *bl, struct item *item_data, int am
fitem->bl.x = x;
fitem->bl.y = y;
fitem->bl.id = map->get_new_object_id();
+ fitem->showdropeffect = showdropeffect;
if(fitem->bl.id==0){
ers_free(map->flooritem_ers, fitem);
return 0;
@@ -1840,7 +1842,7 @@ void map_addiddb(struct block_list *bl)
struct mob_data *md = BL_UCAST(BL_MOB, bl);
idb_put(map->mobid_db,bl->id,bl);
- if( md->state.boss )
+ if (md->state.boss == BTYPE_MVP)
idb_put(map->bossid_db, bl->id, bl);
}
diff --git a/src/map/map.h b/src/map/map.h
index 3221c73cd..fab8839d8 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -519,7 +519,7 @@ struct spawn_data {
//0: Normal mob | 1: Standard summon, attacks mobs
//2: Alchemist Marine Sphere | 3: Alchemist Summon Flora | 4: Summon Zanzou
unsigned int dynamic : 1; ///< Whether this data is indexed by a map's dynamic mob list
- unsigned int boss : 1; ///< 0: Non-boss monster | 1: Boss monster
+ uint8 boss; ///< 0: Non-boss monster | 1: Boss monster | 2: MVP
} state;
char name[NAME_LENGTH], eventname[EVENT_NAME_LENGTH]; //Name/event
};
@@ -531,6 +531,7 @@ struct flooritem_data {
int first_get_charid,second_get_charid,third_get_charid;
int64 first_get_tick,second_get_tick,third_get_tick;
struct item item_data;
+ bool showdropeffect;
};
enum status_point_types { //we better clean up this enum and change it name [Hemagx]
@@ -1208,7 +1209,7 @@ END_ZEROED_BLOCK;
int (*clearflooritem_timer) (int tid, int64 tick, int id, intptr_t data);
int (*removemobs_timer) (int tid, int64 tick, int id, intptr_t data);
void (*clearflooritem) (struct block_list* bl);
- int (*addflooritem) (const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags);
+ int (*addflooritem) (const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, bool showdropeffect);
// player to map session
void (*addnickdb) (int charid, const char* nick);
void (*delnickdb) (int charid, const char* nick);
diff --git a/src/map/mapreg_sql.c b/src/map/mapreg_sql.c
index 4cdb91b21..02015e011 100644
--- a/src/map/mapreg_sql.c
+++ b/src/map/mapreg_sql.c
@@ -211,9 +211,9 @@ void script_load_mapreg(void) {
mapreg->skip_insert = true;
- SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &varname[0], sizeof(varname), &length, NULL);
- SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &index, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &value[0], sizeof(value), NULL, NULL);
+ SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &varname, sizeof varname, &length, NULL);
+ SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &index, sizeof index, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &value, sizeof value, NULL, NULL);
while ( SQL_SUCCESS == SQL->StmtNextRow(stmt) ) {
int s = script->add_str(varname);
diff --git a/src/map/mercenary.c b/src/map/mercenary.c
index f5d3fe11c..c4b692008 100644
--- a/src/map/mercenary.c
+++ b/src/map/mercenary.c
@@ -465,7 +465,7 @@ bool read_mercenarydb_sub(char* str[], int columns, int current) {
mstatus->race = atoi(str[20]);
ele = atoi(str[21]);
- mstatus->def_ele = ele%10;
+ mstatus->def_ele = ele % ELE_MAX;
mstatus->ele_lv = ele/20;
if( mstatus->def_ele >= ELE_MAX ) {
ShowWarning("Mercenary %d has invalid element type %d (max element is %d)\n", db->class_, mstatus->def_ele, ELE_MAX - 1);
diff --git a/src/map/mercenary.h b/src/map/mercenary.h
index 0af75e8a2..f3773f191 100644
--- a/src/map/mercenary.h
+++ b/src/map/mercenary.h
@@ -92,7 +92,7 @@ struct mercenary_data {
struct regen_data regen;
struct s_mercenary_db *db;
struct s_mercenary mercenary;
- char blockskill[MAX_SKILL];
+ char blockskill[MAX_SKILL_DB];
struct map_session_data *master;
int contract_timer;
diff --git a/src/map/mob.c b/src/map/mob.c
index 822b84bf4..e93c9009d 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -1838,11 +1838,13 @@ int mob_ai_hard(int tid, int64 tick, int id, intptr_t data) {
/*==========================================
* Initializes the delay drop structure for mob-dropped items.
*------------------------------------------*/
-struct item_drop* mob_setdropitem(int nameid, int qty, struct item_data *data) {
+struct item_drop* mob_setdropitem(int nameid, int qty, struct item_data *data)
+{
struct item_drop *drop = ers_alloc(item_drop_ers, struct item_drop);
drop->item_data.nameid = nameid;
drop->item_data.amount = qty;
drop->item_data.identify = data ? itemdb->isidentified2(data) : itemdb->isidentified(nameid);
+ drop->showdropeffect = true;
drop->next = NULL;
return drop;
}
@@ -1857,6 +1859,7 @@ struct item_drop* mob_setlootitem(struct item* item)
nullpo_retr(NULL, item);
drop = ers_alloc(item_drop_ers, struct item_drop);
memcpy(&drop->item_data, item, sizeof(struct item));
+ drop->showdropeffect = false;
drop->next = NULL;
return drop;
}
@@ -1864,7 +1867,8 @@ struct item_drop* mob_setlootitem(struct item* item)
/*==========================================
* item drop with delay (timer function)
*------------------------------------------*/
-int mob_delay_item_drop(int tid, int64 tick, int id, intptr_t data) {
+int mob_delay_item_drop(int tid, int64 tick, int id, intptr_t data)
+{
struct item_drop_list *list;
struct item_drop *ditem;
list=(struct item_drop_list *)data;
@@ -1872,8 +1876,9 @@ int mob_delay_item_drop(int tid, int64 tick, int id, intptr_t data) {
while (ditem) {
struct item_drop *ditem_prev;
map->addflooritem(NULL, &ditem->item_data,ditem->item_data.amount,
- list->m,list->x,list->y,
- list->first_charid,list->second_charid,list->third_charid,0);
+ list->m,list->x,list->y,
+ list->first_charid,list->second_charid,list->third_charid,0,
+ ditem->showdropeffect);
ditem_prev = ditem;
ditem = ditem->next;
ers_free(item_drop_ers, ditem_prev);
@@ -2586,7 +2591,7 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type) {
if((temp = pc->additem(mvp_sd,&item,1,LOG_TYPE_PICKDROP_PLAYER)) != 0) {
clif->additem(mvp_sd,0,0,temp);
- map->addflooritem(&md->bl, &item, 1, mvp_sd->bl.m, mvp_sd->bl.x, mvp_sd->bl.y, mvp_sd->status.char_id, (second_sd?second_sd->status.char_id : 0), (third_sd ? third_sd->status.char_id : 0), 1);
+ map->addflooritem(&md->bl, &item, 1, mvp_sd->bl.m, mvp_sd->bl.x, mvp_sd->bl.y, mvp_sd->status.char_id, (second_sd?second_sd->status.char_id : 0), (third_sd ? third_sd->status.char_id : 0), 1, true);
}
//Logs items, MVP prizes [Lupus]
@@ -2686,7 +2691,7 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type) {
return 5; // Note: Actually, it's 4. Oh well...
// MvP tomb [GreenBox]
- if (battle_config.mvp_tomb_enabled && md->spawn->state.boss && map->list[md->bl.m].flag.notomb != 1)
+ if (battle_config.mvp_tomb_enabled && md->spawn->state.boss == BTYPE_MVP && map->list[md->bl.m].flag.notomb != 1)
mob->mvptomb_create(md, mvp_sd ? mvp_sd->status.name : NULL, time(NULL));
if( !rebirth ) {
@@ -4846,7 +4851,7 @@ bool mob_parse_row_mobskilldb(char** str, int columns, int current)
struct mob_skill *ms, gms;
int mob_id;
int i =0, j, tmp;
- uint16 sidx = 0;
+ int sidx = 0;
nullpo_retr(false, str);
mob_id = atoi(str[0]);
diff --git a/src/map/mob.h b/src/map/mob.h
index 7f2accedf..98d64873b 100644
--- a/src/map/mob.h
+++ b/src/map/mob.h
@@ -69,6 +69,12 @@ struct hplugin_data_store;
// Disable this to make monsters not do any path search when looking for a target (old behavior).
#define ACTIVEPATHSEARCH
+enum e_bosstype {
+ BTYPE_NONE = 0,
+ BTYPE_BOSS = 1,
+ BTYPE_MVP = 2,
+};
+
//Mob skill states.
enum MobSkillState {
MSS_ANY = -1,
@@ -181,10 +187,10 @@ struct mob_data {
unsigned int spotted: 1;
unsigned int npc_killmonster: 1; //for new killmonster behavior
unsigned int rebirth: 1; // NPC_Rebirth used
- unsigned int boss : 1;
enum MobSkillState skillstate;
unsigned char steal_flag; //number of steal tries (to prevent steal exploit on mobs with few items) [Lupus]
unsigned char attacked_count; //For rude attacked.
+ uint8 boss;
int provoke_flag; // Celest
} state;
struct guardian_data* guardian_data;
@@ -400,6 +406,7 @@ enum mob_id {
// The data structures for storing delayed item drops
struct item_drop {
struct item item_data;
+ bool showdropeffect;
struct item_drop* next;
};
struct item_drop_list {
diff --git a/src/map/npc.c b/src/map/npc.c
index ecf7f878f..d3dfb39d2 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -114,6 +114,8 @@ bool npc_db_checkid(int id)
return true;
if (id >= MAX_NPC_CLASS2_START && id < MAX_NPC_CLASS2_END) // Second range
return true;
+ if (pc->db_checkid(id))
+ return true;
// Anything else is invalid
return false;
}
@@ -1558,9 +1560,9 @@ void npc_market_fromsql(void)
return;
}
- SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &name[0], sizeof(name), NULL, NULL);
- SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &itemid, 0, NULL, NULL);
- SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &amount, 0, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &name, sizeof name, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &itemid, sizeof itemid, NULL, NULL);
+ SQL->StmtBindColumn(stmt, 2, SQLDT_INT, &amount, sizeof amount, NULL, NULL);
while ( SQL_SUCCESS == SQL->StmtNextRow(stmt) ) {
struct npc_data *nd = NULL;
@@ -2706,6 +2708,7 @@ struct npc_data *npc_create_npc(enum npc_subtype subtype, int m, int x, int y, u
nd->area_size = AREA_SIZE + 1;
nd->class_ = class_;
nd->speed = 200;
+ nd->vd = npc_viewdb[0]; // Copy INVISIBLE_CLASS view data. Actual view data is set by npc->add_to_location() later.
return nd;
}
@@ -3656,6 +3659,18 @@ void npc_setclass(struct npc_data* nd, short class_) {
clif->spawn(&nd->bl);// fade in
}
+void npc_refresh(struct npc_data* nd)
+{
+ nullpo_retv(nd);
+
+ if (map->list[nd->bl.m].users) {
+ // using here CLR_TRICKDEAD because other flags show effects.
+ // probably need use other flag or other way to refresh npc.
+ clif->clearunit_area(&nd->bl, CLR_TRICKDEAD); // fade out
+ clif->spawn(&nd->bl); // fade in
+ }
+}
+
// @commands (script based)
int npc_do_atcmd_event(struct map_session_data* sd, const char* command, const char* message, const char* eventname)
{
@@ -3843,7 +3858,12 @@ const char *npc_parse_mob(const char *w1, const char *w2, const char *w3, const
memset(&mobspawn, 0, sizeof(struct spawn_data));
- mobspawn.state.boss = (strcmp(w2,"boss_monster") == 0 ? 1 : 0);
+ if (strcmp(w2, "boss_monster") == 0)
+ mobspawn.state.boss = BTYPE_MVP;
+ else if (strcmp(w2, "miniboss_monster") == 0)
+ mobspawn.state.boss = BTYPE_BOSS;
+ else
+ mobspawn.state.boss = BTYPE_NONE;
// w1=<map name>,<x>,<y>,<xs>,<ys>
// w3=<mob name>{,<mob level>}
@@ -4662,7 +4682,7 @@ int npc_parsesrcfile(const char* filepath, bool runOnInit) {
{
p = npc->parse_duplicate(w1,w2,w3,w4, p, buffer, filepath, (runOnInit?NPO_ONINIT:NPO_NONE), &success);
}
- else if( (strcmp(w2,"monster") == 0 || strcmp(w2,"boss_monster") == 0) )
+ else if (strcmp(w2,"monster") == 0 || strcmp(w2,"boss_monster") == 0 || strcmp(w2,"miniboss_monster") == 0)
{
p = npc->parse_mob(w1, w2, w3, w4, p, buffer, filepath, &success);
}
@@ -4994,7 +5014,6 @@ int do_init_npc(bool minimal) {
npc_viewdb[i].class = i;
for( i = MAX_NPC_CLASS2_START; i < MAX_NPC_CLASS2_END; i++ )
npc_viewdb2[i - MAX_NPC_CLASS2_START].class = i;
-
npc->ev_db = strdb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA, EVENT_NAME_LENGTH);
npc->ev_label_db = strdb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA, NAME_LENGTH);
npc->name_db = strdb_alloc(DB_OPT_BASE, NAME_LENGTH);
@@ -5189,4 +5208,5 @@ void npc_defaults(void) {
npc->market_delfromsql = npc_market_delfromsql;
npc->market_delfromsql_sub = npc_market_delfromsql_sub;
npc->db_checkid = npc_db_checkid;
+ npc->refresh = npc_refresh;
}
diff --git a/src/map/npc.h b/src/map/npc.h
index 3bd11d536..8bb38f252 100644
--- a/src/map/npc.h
+++ b/src/map/npc.h
@@ -70,7 +70,7 @@ struct npc_parse;
struct npc_data {
struct block_list bl;
struct unit_data *ud;
- struct view_data *vd;
+ struct view_data vd;
unsigned int option;
struct npc_data *master_nd;
short class_;
@@ -309,6 +309,7 @@ struct npc_interface {
void (*market_delfromsql) (struct npc_data *nd, unsigned short index);
void (*market_delfromsql_sub) (const char *npcname, unsigned short index);
bool (*db_checkid) (const int id);
+ void (*refresh) (struct npc_data* nd);
/**
* For the Secure NPC Timeout option (check config/Secure.h) [RR]
**/
diff --git a/src/map/packets.h b/src/map/packets.h
index e9d895440..229d6afde 100644
--- a/src/map/packets.h
+++ b/src/map/packets.h
@@ -49,7 +49,7 @@ packet(0x006e,3);
packet(0x006f,2);
packet(0x0070,6);
packet(0x0071,28);
-packet(0x0072,19,clif->pWantToConnection,2,6,10,14,18);
+packet(0x0072,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
packet(0x0073,11);
packet(0x0074,3);
packet(0x0075,-1);
@@ -61,18 +61,18 @@ packet(0x007a,58);
packet(0x007b,60);
packet(0x007c,41);
packet(0x007d,2,clif->pLoadEndAck,0);
-packet(0x007e,6,clif->pTickSend,2);
+packet(0x007e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
packet(0x007f,6);
packet(0x0080,7);
packet(0x0081,3);
packet(0x0082,2);
packet(0x0083,2);
packet(0x0084,2);
-packet(0x0085,5,clif->pWalkToXY,2);
+packet(0x0085,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
packet(0x0086,16);
packet(0x0087,12);
packet(0x0088,10);
-packet(0x0089,7,clif->pActionRequest,2,6);
+packet(0x0089,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
packet(0x008a,29);
packet(0x008b,2);
packet(0x008c,-1,clif->pGlobalMessage,2,4);
@@ -83,21 +83,21 @@ packet(0x0090,7,clif->pNpcClicked,2);
packet(0x0091,22);
packet(0x0092,28);
packet(0x0093,2);
-packet(0x0094,6,clif->pGetCharNameRequest,2);
+packet(0x0094,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
packet(0x0095,30);
packet(0x0096,-1,clif->pWisMessage,2,4,28);
packet(0x0097,-1);
packet(0x0098,3);
packet(0x0099,-1,clif->pBroadcast,2,4);
packet(0x009a,-1);
-packet(0x009b,5,clif->pChangeDir,2,4);
+packet(0x009b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
packet(0x009c,9);
packet(0x009d,17);
packet(0x009e,17);
-packet(0x009f,6,clif->pTakeItem,2);
+packet(0x009f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
packet(0x00a0,23);
packet(0x00a1,6);
-packet(0x00a2,6,clif->pDropItem,2,4);
+packet(0x00a2,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
packet(0x00a3,-1);
packet(0x00a4,-1);
packet(0x00a5,-1);
@@ -178,9 +178,9 @@ packet(0x00ef,2,clif->pTradeCommit,0);
packet(0x00f0,3);
packet(0x00f1,2);
packet(0x00f2,6);
-packet(0x00f3,8,clif->pMoveToKafra,2,4);
+packet(0x00f3,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
packet(0x00f4,21);
-packet(0x00f5,8,clif->pMoveFromKafra,2,4);
+packet(0x00f5,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
packet(0x00f6,8);
packet(0x00f7,2,clif->pCloseKafra,0);
packet(0x00f8,2);
@@ -210,10 +210,10 @@ packet(0x010f,-1);
packet(0x0110,10);
packet(0x0111,39);
packet(0x0112,4,clif->pSkillUp,2);
-packet(0x0113,10,clif->pUseSkillToId,2,4,6);
+packet(0x0113,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
packet(0x0114,31);
packet(0x0115,35);
-packet(0x0116,10,clif->pUseSkillToPos,2,4,6,8);
+packet(0x0116,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
packet(0x0117,18);
packet(0x0118,2,clif->pStopAttack,0);
packet(0x0119,13);
@@ -335,10 +335,10 @@ packet(0x018c,29);
packet(0x018d,-1);
packet(0x018e,10,clif->pProduceMix,2,4,6,8);
packet(0x018f,6);
-packet(0x0190,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+packet(0x0190,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
packet(0x0191,86);
packet(0x0192,24);
-packet(0x0193,6,clif->pSolveCharName,2);
+packet(0x0193,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
packet(0x0194,30);
packet(0x0195,102);
packet(0x0196,9);
@@ -449,7 +449,7 @@ packet(0x01fe,5);
packet(0x01ff,10);
packet(0x0200,26);
packet(0x0201,-1);
-packet(0x0202,26,clif->pFriendsListAdd,2);
+packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
packet(0x0203,10,clif->pFriendsListRemove,2,6);
packet(0x0204,18);
packet(0x0205,26);
@@ -719,7 +719,7 @@ packet(0x96e,-1,clif->ackmergeitems);
//2005-04-25aSakexe
#if PACKETVER >= 20050425
- packet(0x022d,5,clif->pHomMenu,2,4);
+ packet(0x022d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
packet(0x0232,9,clif->pHomMoveTo,2,6);
packet(0x0233,11,clif->pHomAttack,2,6,10);
packet(0x0234,6,clif->pHomMoveToMaster,2);
@@ -1131,7 +1131,7 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x02c0,2);
packet(0x02c1,-1);
packet(0x02c2,-1);
- packet(0x02c4,26,clif->pPartyInvite2,2);
+ packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
packet(0x02c5,30);
packet(0x02c6,30);
packet(0x02c7,7,clif->pReplyPartyInvite2,2,6);
@@ -1151,7 +1151,7 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x02d5,2);
packet(0x02d6,6,clif->pViewPlayerEquip,2);
packet(0x02d7,-1);
- packet(0x02d8,10,clif->pEquipTick,6);
+ packet(0x02d8,10,clif->p_cz_config,6);
packet(0x02d9,10);
packet(0x02da,3);
packet(0x02db,-1,clif->pBattleChat,2,4);
@@ -1388,9 +1388,9 @@ packet(0x96e,-1,clif->ackmergeitems);
//2008-09-10aSakexe
#if PACKETVER >= 20080910
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0437,7,clif->pActionRequest,2,6);
- packet(0x0438,10,clif->pUseSkillToId,2,4,6);
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
packet(0x0439,8,clif->pUseItem,2,4);
#endif
@@ -1469,9 +1469,9 @@ packet(0x96e,-1,clif->ackmergeitems);
//2008-09-10aRagexeRE
#if PACKETVER >= 20080910
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0437,7,clif->pActionRequest,2,6);
- packet(0x0438,10,clif->pUseSkillToId,2,4,6);
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
packet(0x0439,8,clif->pUseItem,2,4);
#endif
@@ -1583,7 +1583,7 @@ packet(0x96e,-1,clif->ackmergeitems);
//2009-08-18aRagexeRE
#if PACKETVER >= 20090818
packet(0x07e3,6);
- packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
packet(0x07e6,8);
#endif
@@ -1715,7 +1715,7 @@ packet(0x96e,-1,clif->ackmergeitems);
//2010-03-03aRagexeRE
#if PACKETVER >= 20100303
packet(0x0810,3);
- packet(0x0811,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0811,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
//packet(0x0812,86);
//packet(0x0813,6);
//packet(0x0814,6);
@@ -1768,9 +1768,9 @@ packet(0x96e,-1,clif->ackmergeitems);
#if PACKETVER >= 20100420
packet(0x0812,8);
packet(0x0814,86);
- packet(0x0815,2,clif->pReqCloseBuyingStore,0);
- packet(0x0817,6,clif->pReqClickBuyingStore,2);
- packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0817,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
packet(0x081a,4);
packet(0x081b,10);
packet(0x081c,10);
@@ -1781,7 +1781,7 @@ packet(0x96e,-1,clif->ackmergeitems);
#if PACKETVER >= 20100601
//packet(0x0825,-1);
//packet(0x0826,4);
- packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
packet(0x0836,-1);
packet(0x0837,3);
//packet(0x0838,3);
@@ -1789,10 +1789,10 @@ packet(0x96e,-1,clif->ackmergeitems);
//2010-06-08aRagexeRE
#if PACKETVER >= 20100608
- packet(0x0838,2,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
packet(0x083A,4); // Search Stalls Feature
packet(0x083B,2,clif->pCloseSearchStoreInfo,0);
- packet(0x083C,12,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083C,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
packet(0x083D,6);
#endif
@@ -1846,18 +1846,18 @@ packet(0x96e,-1,clif->ackmergeitems);
//2010-11-24aRagexeRE
#if PACKETVER >= 20101124
packet(0x0288,-1,clif->pcashshop_buy,4,8);
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x035f,5,clif->pWalkToXY,2);
- packet(0x0360,6,clif->pTickSend,2);
- packet(0x0361,5,clif->pChangeDir,2,4);
- packet(0x0362,6,clif->pTakeItem,2);
- packet(0x0363,6,clif->pDropItem,2,4);
- packet(0x0364,8,clif->pMoveToKafra,2,4);
- packet(0x0365,8,clif->pMoveFromKafra,2,4);
- packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0368,6,clif->pGetCharNameRequest,2);
- packet(0x0369,6,clif->pSolveCharName,2);
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x035f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0362,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0365,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
packet(0x0856,-1);
packet(0x0857,-1);
packet(0x0858,-1);
@@ -1971,17 +1971,17 @@ packet(0x96e,-1,clif->ackmergeitems);
//2011-10-05aRagexeRE
#if PACKETVER >= 20111005
- packet(0x0364,5,clif->pWalkToXY,2);
- packet(0x0817,6,clif->pTickSend,2);
- packet(0x0366,5,clif->pChangeDir,2,4);
- packet(0x0815,6,clif->pTakeItem,2);
- packet(0x0885,6,clif->pDropItem,2,4);
- packet(0x0893,8,clif->pMoveToKafra,2,4);
- packet(0x0897,8,clif->pMoveFromKafra,2,4);
- packet(0x0369,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x08ad,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x088a,6,clif->pGetCharNameRequest,2);
- packet(0x0838,6,clif->pSolveCharName,2);
+ packet(0x0364,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0817,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0366,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0815,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0893,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0897,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0369,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ad,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0838,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
packet(0x0439,8,clif->pUseItem,2,4);
packet(0x08d7,28,clif->pBGQueueRegister,2);
packet(0x090a,26,clif->pBGQueueCheckState,2);
@@ -1991,59 +1991,59 @@ packet(0x96e,-1,clif->ackmergeitems);
//2011-11-02aRagexe
#if PACKETVER >= 20111102
- packet(0x0436,26,clif->pFriendsListAdd,2);
+ packet(0x0436,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
packet(0x0898,5,clif->pHomMenu,4);
- packet(0x0281,36,clif->pStoragePassword,0);
- packet(0x088d,26,clif->pPartyInvite2,2);
- packet(0x083c,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x08aa,7,clif->pActionRequest,2,6);
- packet(0x02c4,10,clif->pUseSkillToId,2,4,6);
- packet(0x0811,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0281,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x083c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08aa,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x02c4,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0811,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
packet(0x890,8);
packet(0x08a5,18,clif->pPartyBookingRegisterReq,2,4,6);
- packet(0x0835,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x089b,2,clif->pReqCloseBuyingStore,0);
- packet(0x08a1,6,clif->pReqClickBuyingStore,2);
- packet(0x089e,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x08ab,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x088b,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x08a2,12,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0835,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a1,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08ab,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08a2,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
#ifndef PACKETVER_RE
- packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0892,5,clif->pWalkToXY,2);
- packet(0x0899,6,clif->pTickSend,2);
+ packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0892,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0899,6,clif->pTickSend,2); // CZ_REQUEST_TIME
#endif
#endif
//2012-03-07fRagexeRE
#if PACKETVER >= 20120307
- packet(0x086A,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x0887,6,clif->pTickSend,2);
- packet(0x0890,5,clif->pChangeDir,2,4);
- packet(0x0865,6,clif->pTakeItem,2);
- packet(0x02C4,6,clif->pDropItem,2,4);
- packet(0x093B,8,clif->pMoveToKafra,2,4);
- packet(0x0963,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0369,26,clif->pFriendsListAdd,2);
+ packet(0x086A,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0887,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0890,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0865,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x02C4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x093B,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0963,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
packet(0x0863,5,clif->pHomMenu,4);
- packet(0x0861,36,clif->pStoragePassword,0);
- packet(0x0929,26,clif->pPartyInvite2,2);
- packet(0x0885,7,clif->pActionRequest,2,6);
- packet(0x0889,10,clif->pUseSkillToId,2,4,6);
- packet(0x0870,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0861,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0929,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0885,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0889,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0870,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0884,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0884,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
packet(0x0439,8,clif->pUseItem,2,4);
// changed packet sizes
packet(0x08e2,27); // ZC_NAVIGATION_ACTIVE
@@ -2052,34 +2052,34 @@ packet(0x96e,-1,clif->ackmergeitems);
//2012-04-10aRagexeRE
#if PACKETVER >= 20120410
packet(0x01FD,15,clif->pRepairItem,2);
- packet(0x089C,26,clif->pFriendsListAdd,2);
- packet(0x0885,5,clif->pHomMenu,2,4);
- packet(0x0961,36,clif->pStoragePassword,0);
+ packet(0x089C,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0961,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0288,-1,clif->pcashshop_buy,4,8);
- packet(0x091C,26,clif->pPartyInvite2,2);
- packet(0x094B,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
+ packet(0x091C,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094B,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
packet(0x0439,8,clif->pUseItem,2,4);
- packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x0886,6,clif->pTickSend,2);
- packet(0x0871,5,clif->pChangeDir,2,4);
- packet(0x0938,6,clif->pTakeItem,2);
- packet(0x0891,6,clif->pDropItem,2,4);
- packet(0x086C,8,clif->pMoveToKafra,2,4);
- packet(0x08A6,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0889,6,clif->pGetCharNameRequest,2);
- packet(0x0884,6,clif->pSolveCharName,2);
+ packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0886,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0871,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0938,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0891,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x086C,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08A6,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0889,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0884,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
#ifndef PACKETVER_RE
packet(0x091D,18,clif->pPartyBookingRegisterReq,2,4,6);
#else
@@ -2119,20 +2119,20 @@ packet(0x96e,-1,clif->ackmergeitems);
//2012-04-18aRagexeRE [Special Thanks to Judas!]
#if PACKETVER >= 20120418
- packet(0x023B,26,clif->pFriendsListAdd,2);
- packet(0x0361,5,clif->pHomMenu,2,4);
- packet(0x08A8,36,clif->pStoragePassword,0);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0202,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
+ packet(0x023B,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08A8,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
packet(0x08E5,41,clif->pPartyRecruitRegisterReq,2,4);
packet(0x0916,26,clif->pGuildInvite2,2);
#endif
@@ -2163,57 +2163,57 @@ packet(0x96e,-1,clif->ackmergeitems);
// - 2012-07-02 is NOT STABLE.
// - The packets are kept here for reference, DONT USE THEM.
#if PACKETVER >= 20120702
- packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0364,6,clif->pTickSend,2);
- packet(0x085a,7,clif->pActionRequest,2,6);
- packet(0x0861,8,clif->pMoveFromKafra,2,4);
- packet(0x0862,10,clif->pUseSkillToId,2,4,6);
- packet(0x0863,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0886,6,clif->pSolveCharName,2);
- packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x089e,6,clif->pDropItem,2,4);
- packet(0x089f,6,clif->pTakeItem,2);
- packet(0x08a0,8,clif->pMoveToKafra,2,4);
- packet(0x094a,6,clif->pGetCharNameRequest,2);
- packet(0x0953,5,clif->pWalkToXY,2);
- packet(0x0960,5,clif->pChangeDir,2,4);
+ packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0364,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0861,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0862,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0863,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0886,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a0,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x094a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0953,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0960,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
#endif
//2012-07-10
#if PACKETVER >= 20120710
- packet(0x0886,2,clif->pReqCloseBuyingStore,0);
+ packet(0x0886,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
#endif
//2012-07-16aRagExe (special thanks to Yommy/Frost!)
#if PACKETVER >= 20120716
packet(0x0879,18,clif->pPartyBookingRegisterReq,2,4,6);
- packet(0x023B,26,clif->pFriendsListAdd,2);
- packet(0x0361,5,clif->pHomMenu,2,4);
- packet(0x0819,36,clif->pStoragePassword,0);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
+ packet(0x023B,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0819,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
packet(0x0439,8,clif->pUseItem,2,4);
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0940,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0811,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0202,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0940,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0811,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
@@ -2259,37 +2259,37 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-03-20Ragexe (Judas + Yommy)
#if PACKETVER >= 20130320
// Shuffle Start
- packet(0x088E,7,clif->pActionRequest,2,6);
- packet(0x089B,10,clif->pUseSkillToId,2,4,6);
- packet(0x0881,5,clif->pWalkToXY,2);
- packet(0x0363,6,clif->pTickSend,2);
- packet(0x0897,5,clif->pChangeDir,2,4);
- packet(0x0933,6,clif->pTakeItem,2);
- packet(0x0438,6,clif->pDropItem,2,4);
- packet(0x08AC,8,clif->pMoveToKafra,2,4);
- packet(0x0874,8,clif->pMoveFromKafra,2,4);
- packet(0x0959,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x085A,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0898,6,clif->pGetCharNameRequest,2);
- packet(0x094C,6,clif->pSolveCharName,2);
- packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x092E,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x094E,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0922,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x035F,6,clif->pReqClickBuyingStore,2);
- packet(0x0886,2,clif->pReqCloseBuyingStore,0);
- packet(0x0938,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088E,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089B,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0881,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0363,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0897,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0933,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0438,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08AC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0874,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0959,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x085A,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0898,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094C,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x092E,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x094E,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0922,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x035F,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0886,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0938,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x085D,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x085D,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085D,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0868,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x086D,26,clif->pPartyInvite2,2);
- packet(0x086F,26,clif->pFriendsListAdd,2);
- packet(0x093F,5,clif->pHomMenu,2,4);
- packet(0x0947,36,clif->pStoragePassword,0);
+ packet(0x0868,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086D,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086F,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093F,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0890,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x095a,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
@@ -2327,37 +2327,37 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-05-15aRagexe (Shakto)
#if PACKETVER >= 20130515
// Shuffle Start
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0362,5,clif->pChangeDir,2,4);
- packet(0x08A1,6,clif->pTakeItem,2);
- packet(0x0944,6,clif->pDropItem,2,4);
- packet(0x0887,8,clif->pMoveToKafra,2,4);
- packet(0x08AC,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0362,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08A1,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0944,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0887,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08AC,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x092D,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x092D,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092D,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0963,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0947,26,clif->pPartyInvite2,2);
- packet(0x0962,26,clif->pFriendsListAdd,2);
- packet(0x0931,5,clif->pHomMenu,2,4);
- packet(0x093E,36,clif->pStoragePassword,0);
+ packet(0x0963,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0947,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0962,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x093E,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0862,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x08aa,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
@@ -2366,37 +2366,37 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-05-22Ragexe (Shakto)
#if PACKETVER >= 20130522
// Shuffle Start
- packet(0x08A2,7,clif->pActionRequest,2,6);
- packet(0x095C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0360,5,clif->pWalkToXY,2);
- packet(0x07EC,6,clif->pTickSend,2);
- packet(0x0925,5,clif->pChangeDir,2,4);
- packet(0x095E,6,clif->pTakeItem,2);
- packet(0x089C,6,clif->pDropItem,2,4);
- packet(0x08A3,8,clif->pMoveToKafra,2,4);
- packet(0x087E,8,clif->pMoveFromKafra,2,4);
- packet(0x0811,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0964,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x08A6,6,clif->pGetCharNameRequest,2);
- packet(0x0369,6,clif->pSolveCharName,2);
- packet(0x093E,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x08AA,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x095B,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0952,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0368,6,clif->pReqClickBuyingStore,2);
- packet(0x086E,2,clif->pReqCloseBuyingStore,0);
- packet(0x0874,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08A2,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x095C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0360,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x07EC,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0925,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095E,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089C,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08A3,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087E,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0811,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0964,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08A6,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x093E,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08AA,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x095B,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0952,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0368,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x086E,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0874,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x089B,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x089B,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089B,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x086A,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x08A9,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0950,26,clif->pPartyInvite2,2);
- packet(0x0362,26,clif->pFriendsListAdd,2);
- packet(0x0926,5,clif->pHomMenu,2,4);
- packet(0x088E,36,clif->pStoragePassword,0);
+ packet(0x086A,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08A9,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0950,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088E,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x08ac,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x0965,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
// Shuffle End
@@ -2404,74 +2404,74 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-05-29Ragexe (Shakto)
#if PACKETVER >= 20130529
- packet(0x0890,7,clif->pActionRequest,2,6);
- packet(0x0438,10,clif->pUseSkillToId,2,4,6);
- packet(0x0876,5,clif->pWalkToXY,2);
- packet(0x0897,6,clif->pTickSend,2);
- packet(0x0951,5,clif->pChangeDir,2,4);
- packet(0x0895,6,clif->pTakeItem,2);
- packet(0x08A7,6,clif->pDropItem,2,4);
- packet(0x0938,8,clif->pMoveToKafra,2,4);
- packet(0x0957,8,clif->pMoveFromKafra,2,4);
- packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x085E,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0863,6,clif->pGetCharNameRequest,2);
- packet(0x0937,6,clif->pSolveCharName,2);
- packet(0x085A,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0941,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0918,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0936,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0892,6,clif->pReqClickBuyingStore,2);
- packet(0x0964,2,clif->pReqCloseBuyingStore,0);
- packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0876,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0897,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0895,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08A7,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0938,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0957,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x085E,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0937,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x085A,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0918,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0936,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0892,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0964,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0874,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0874,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0874,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x08A8,26,clif->pPartyInvite2,2);
- packet(0x0877,26,clif->pFriendsListAdd,2);
- packet(0x023B,5,clif->pHomMenu,2,4);
- packet(0x0956,36,clif->pStoragePassword,0);
+ packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08A8,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0877,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x023B,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0888,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x088e,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
//2013-06-05Ragexe (Shakto)
#if PACKETVER >= 20130605
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0202,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0365,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x023B,26,clif->pFriendsListAdd,2);
- packet(0x0361,5,clif->pHomMenu,2,4);
- packet(0x0883,36,clif->pStoragePassword,0);
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x023B,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0883,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x097C,4,clif->pRanklist);
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
@@ -2480,108 +2480,108 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-06-12Ragexe (Shakto)
#if PACKETVER >= 20130612
// most shuffle packets used from 20130605
- packet(0x087E,5,clif->pChangeDir,2,4);
- packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0940,26,clif->pFriendsListAdd,2);
- packet(0x093A,5,clif->pHomMenu,2,4);
- packet(0x0964,36,clif->pStoragePassword,0);
+ packet(0x087E,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093A,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0964,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
#endif
//2013-06-18Ragexe (Shakto)
#if PACKETVER >= 20130618
- packet(0x0889,7,clif->pActionRequest,2,6);
- packet(0x0951,10,clif->pUseSkillToId,2,4,6);
- packet(0x088E,5,clif->pWalkToXY,2);
- packet(0x0930,6,clif->pTickSend,2);
- packet(0x08A6,5,clif->pChangeDir,2,4);
- packet(0x0962,6,clif->pTakeItem,2);
- packet(0x0917,6,clif->pDropItem,2,4);
- packet(0x0885,8,clif->pMoveToKafra,2,4);
- packet(0x0936,8,clif->pMoveFromKafra,2,4);
- packet(0x096A,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x094F,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0944,6,clif->pGetCharNameRequest,2);
- packet(0x0945,6,clif->pSolveCharName,2);
- packet(0x0890,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0363,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0862,6,clif->pReqClickBuyingStore,2);
- packet(0x085A,2,clif->pReqCloseBuyingStore,0);
- packet(0x0932,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0951,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088E,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0930,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08A6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0917,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0936,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096A,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094F,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0944,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0945,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0890,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0363,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0862,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085A,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0932,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x08A7,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x08A7,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08A7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0942,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x095B,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0887,26,clif->pPartyInvite2,2);
- packet(0x0953,26,clif->pFriendsListAdd,2);
- packet(0x02C4,5,clif->pHomMenu,2,4);
- packet(0x0864,36,clif->pStoragePassword,0);
+ packet(0x0942,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095B,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0953,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x02C4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0864,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0878,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x087a,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
//2013-06-26Ragexe (Shakto)
#if PACKETVER >= 20130626
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x094D,5,clif->pChangeDir,2,4);
- packet(0x088B,6,clif->pTakeItem,2);
- packet(0x0952,6,clif->pDropItem,2,4);
- packet(0x0921,8,clif->pMoveToKafra,2,4);
- packet(0x0817,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0365,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094D,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088B,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0952,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0921,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0817,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0894,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0894,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0894,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x08A5,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x088C,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0895,26,clif->pPartyInvite2,2);
- packet(0x08AB,26,clif->pFriendsListAdd,2);
- packet(0x0960,5,clif->pHomMenu,2,4);
- packet(0x0930,36,clif->pStoragePassword,0);
+ packet(0x08A5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088C,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0895,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08AB,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0960,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0930,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0860,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x088f,4,clif->pDull); // CZ_GANGSI_RANK
#endif
//2013-07-03Ragexe (Shakto)
#if PACKETVER >= 20130703
- packet(0x0930,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0202,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0202,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0365,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x0360,26,clif->pFriendsListAdd,2);
- packet(0x094A,5,clif->pHomMenu,2,4);
- packet(0x0873,36,clif->pStoragePassword,0);
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0360,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x094A,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
@@ -2658,37 +2658,37 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-08-07Ragexe (Shakto)
#if PACKETVER >= 20130807
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0202,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0365,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x023B,26,clif->pFriendsListAdd,2);
- packet(0x0361,5,clif->pHomMenu,2,4);
- packet(0x0887,36,clif->pStoragePassword,0);
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x023B,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0887,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
@@ -2702,37 +2702,37 @@ packet(0x96e,-1,clif->ackmergeitems);
//2013-08-14aRagexe - Themon
#if PACKETVER >= 20130814
- packet(0x0874,7,clif->pActionRequest,2,6);
- packet(0x0947,10,clif->pUseSkillToId,2,4,6);
- packet(0x093A,5,clif->pWalkToXY,2);
- packet(0x088A,6,clif->pTickSend,2);
- packet(0x088C,5,clif->pChangeDir,2,4);
- packet(0x0926,6,clif->pTakeItem,2);
- packet(0x095F,6,clif->pDropItem,2,4);
- packet(0x0202,8,clif->pMoveToKafra,2,4);
- packet(0x0873,8,clif->pMoveFromKafra,2,4);
- packet(0x0887,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0962,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0937,6,clif->pGetCharNameRequest,2);
- packet(0x0923,6,clif->pSolveCharName,2);
- packet(0x0868,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0941,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0895,6,clif->pReqClickBuyingStore,2);
- packet(0x094E,2,clif->pReqCloseBuyingStore,0);
- packet(0x0936,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0947,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x093A,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x088A,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088C,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0926,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095F,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0202,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0873,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0887,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0962,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0937,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0923,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0868,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0895,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094E,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0936,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
#ifdef PACKETVER_RE
packet(0x0365,41,clif->pPartyRecruitRegisterReq,2,4);
#else // not PACKETVER_RE
- packet(0x0959,18,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0959,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
#endif // PACKETVER_RE
- packet(0x08A4,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x0368,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0927,26,clif->pPartyInvite2,2);
- packet(0x0281,26,clif->pFriendsListAdd,2);
- packet(0x0958,5,clif->pHomMenu,2,4);
- packet(0x0885,36,clif->pStoragePassword,0);
+ packet(0x08A4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0368,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0281,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0815,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x0896,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
@@ -2862,33 +2862,33 @@ packet(0x96e,-1,clif->ackmergeitems);
// 2013-12-18bRagexe - Yommy
#if PACKETVER >= 20131218
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0947,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x022D,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x092F,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x08AB,26,clif->pFriendsListAdd,2);
- packet(0x0811,5,clif->pHomMenu,2,4);
- packet(0x085C,36,clif->pStoragePassword,0);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0947,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x022D,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x092F,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08AB,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0811,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x085C,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x087b,4,clif->pDull); // CZ_GANGSI_RANK
#endif
@@ -2909,33 +2909,33 @@ packet(0x96e,-1,clif->ackmergeitems);
// 2013-12-23cRagexe - Yommy
#if PACKETVER >= 20131223
- packet(0x0369,7,clif->pActionRequest,2,6);
- packet(0x083C,10,clif->pUseSkillToId,2,4,6);
- packet(0x0437,5,clif->pWalkToXY,2);
- packet(0x035F,6,clif->pTickSend,2);
- packet(0x0202,5,clif->pChangeDir,2,4);
- packet(0x07E4,6,clif->pTakeItem,2);
- packet(0x0362,6,clif->pDropItem,2,4);
- packet(0x07EC,8,clif->pMoveToKafra,2,4);
- packet(0x0364,8,clif->pMoveFromKafra,2,4);
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x096A,6,clif->pGetCharNameRequest,2);
- packet(0x0368,6,clif->pSolveCharName,2);
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0360,6,clif->pReqClickBuyingStore,2);
- packet(0x0817,2,clif->pReqCloseBuyingStore,0);
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x0802,26,clif->pPartyInvite2,2);
- packet(0x023B,26,clif->pFriendsListAdd,2);
- packet(0x0361,5,clif->pHomMenu,2,4);
- packet(0x08A4,36,clif->pStoragePassword,0);
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035F,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x07E4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07EC,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096A,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x023B,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08A4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x0363,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
packet(0x0436,4,clif->pDull); // CZ_GANGSI_RANK
#endif
@@ -2950,33 +2950,33 @@ packet(0x96e,-1,clif->ackmergeitems);
// 2013-12-30aRagexe - Yommy
#if PACKETVER >= 20131230
- packet(0x0871,7,clif->pActionRequest,2,6);
- packet(0x02C4,10,clif->pUseSkillToId,2,4,6);
- packet(0x035F,5,clif->pWalkToXY,2);
- packet(0x0438,6,clif->pTickSend,2);
- packet(0x094A,5,clif->pChangeDir,2,4);
- packet(0x092A,6,clif->pTakeItem,2);
- packet(0x0860,6,clif->pDropItem,2,4);
- packet(0x0968,8,clif->pMoveToKafra,2,4);
- packet(0x0895,8,clif->pMoveFromKafra,2,4);
- packet(0x091E,10,clif->pUseSkillToPos,2,4,6,8);
- packet(0x096A,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
- packet(0x0926,6,clif->pGetCharNameRequest,2);
- packet(0x0898,6,clif->pSolveCharName,2);
- packet(0x087B,12,clif->pSearchStoreInfoListItemClick,2,6,10);
- packet(0x0369,2,clif->pSearchStoreInfoNextPage,0);
- packet(0x093D,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
- packet(0x087F,-1,clif->pReqTradeBuyingStore,2,4,8,12);
- packet(0x0969,6,clif->pReqClickBuyingStore,2);
- packet(0x094C,2,clif->pReqCloseBuyingStore,0);
- packet(0x0365,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
- packet(0x091F,18,clif->pPartyBookingRegisterReq,2,4);
- packet(0x022D,-1,clif->pItemListWindowSelected,2,4,8);
- packet(0x089C,19,clif->pWantToConnection,2,6,10,14,18);
- packet(0x08A9,26,clif->pPartyInvite2,2);
- packet(0x0943,26,clif->pFriendsListAdd,2);
- packet(0x0949,5,clif->pHomMenu,2,4);
- packet(0x091D,36,clif->pStoragePassword,0);
+ packet(0x0871,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x02C4,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x035F,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094A,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092A,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0968,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091E,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x096A,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0926,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087B,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0369,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093D,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x087F,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0969,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094C,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0365,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091F,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x022D,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089C,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08A9,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0943,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0949,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x091D,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
packet(0x087e,4,clif->pDull); // CZ_GANGSI_RANK
packet(0x093e,8,clif->pDull); // CZ_JOIN_BATTLE_FIELD
#endif
@@ -2993,74 +2993,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// 2014 Packet Data
-// 2014-01-08cRagexe
-#if PACKETVER == 20140108
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-01-15eRagexe
-#if PACKETVER == 20140115
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_MOVE2
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQUEST_TIME2
- packet(0x0361,6,clif->pDropItem,2,4); // CZ_CHANGE_DIRECTION2
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND2
- packet(0x0367,8,clif->pMoveFromKafra,2,4); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME2
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQNAME_BYGID2
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_ACT2
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL2
- packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_SSILIST_ITEM_CLICK
- packet(0x0865,36,clif->pStoragePassword,0); // ZC_REASSEMBLY_AUTH12
- packet(0x0887,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REASSEMBLY_AUTH04
- packet(0x088a,8,clif->pDull/*,XXX*/); // CZ_REASSEMBLY_AUTH07
- packet(0x088e,8,clif->pMoveToKafra,2,4); // CZ_REASSEMBLY_AUTH11
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_REASSEMBLY_AUTH24
- packet(0x08a7,5,clif->pChangeDir,2,4); // CZ_REASSEMBLY_AUTH36
- packet(0x092d,5,clif->pHomMenu,2,4); // ZC_REASSEMBLY_AUTH65
- packet(0x0940,6,clif->pTakeItem,2); // ZC_REASSEMBLY_AUTH84
- packet(0x095b,4,clif->pDull/*,XXX*/); // CZ_REASSEMBLY_AUTH69
- packet(0x095d,26,clif->pPartyInvite2,2); // CZ_REASSEMBLY_AUTH71
- packet(0x0965,-1,clif->pItemListWindowSelected,2,4,8); // CZ_REASSEMBLY_AUTH79
- packet(0x0966,19,clif->pWantToConnection,2,6,10,14,18); // CZ_REASSEMBLY_AUTH80
- packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_REASSEMBLY_AUTH84
-#endif
-
// 2014-01-15cRagexeRE
#if PACKETVER >= 20140115
// new packets
@@ -3075,40 +3007,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x09eb,-1); // ZC_ACK_READ_RODEX
#endif
-// 2014-01-22aRagexe
-#if PACKETVER == 20140122
-// shuffle packets
- packet(0x0360,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0811,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0863,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0871,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0872,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0890,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0893,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0899,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x089d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08a2,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08aa,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0917,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0925,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x092f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0941,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0942,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x094c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0950,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0952,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0955,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0957,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x095d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x095f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
-#endif
-
// 2014-01-22aRagexeRE
#if PACKETVER >= 20140122
// new packets
@@ -3121,40 +3019,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x09f9,143); // ZC_ADD_QUEST_EX
#endif
-// 2014-01-29aRagexe
-#if PACKETVER == 20140129
-// shuffle packets
- packet(0x0281,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0367,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0884,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0885,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0921,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0924,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x092c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0958,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-01-29bRagexeRE
#if PACKETVER >= 20140129
// new packets
@@ -3170,74 +3034,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif // PACKETVER_RE
#endif
-// 2014-02-05bRagexe
-#if PACKETVER == 20140205
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0938,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-02-12aRagexe
-#if PACKETVER == 20140212
-// shuffle packets
- packet(0x02c4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0369,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0438,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x086e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0874,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0877,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0878,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x087e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0888,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x088c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x08a0,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a1,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a7,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0919,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0928,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0930,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0934,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0936,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0944,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0952,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0953,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0960,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
-#endif
-
// 2014-02-12aRagexeRE
#if PACKETVER >= 20140212
// new packets
@@ -3246,40 +3042,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x09e8,11,clif->pRodexOpenMailbox); // CZ_OPEN_RODEXBOX
#endif
-// 2014-02-19aRagexe
-#if PACKETVER == 20140219
-// shuffle packets
- packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0360,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0364,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0802,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x085d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x085f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0860,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0868,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x086f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0889,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0898,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x089f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08ac,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0921,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0927,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0939,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0949,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0953,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x095a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0961,6,clif->pTickSend,2); // CZ_REQUEST_TIME
-#endif
-
// 2014-02-19aRagexeRE
#if PACKETVER >= 20140219
// Warning hercules using this packets for items manipulation. In RagexeRE from 20140129 and before 20140305, this actions broken.
@@ -3292,40 +3054,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif // PACKETVER_RE
#endif
-// 2014-02-26aRagexe
-#if PACKETVER == 20140226
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0877,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0887,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0894,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x091a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0921,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0931,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0941,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-02-26aRagexeRE
#if PACKETVER >= 20140226
// new packets
@@ -3336,40 +3064,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2014-03-05aRagexe
-#if PACKETVER == 20140305
-// shuffle packets
- packet(0x0202,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0878,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0934,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-03-05aRagexeRE
#if PACKETVER >= 20140305
// new packets
@@ -3391,40 +3085,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x09f4,3); // ZC_ACK_ITEM_FROM_RODEX
#endif
-// 2014-03-12dRagexe
-#if PACKETVER == 20140312
-// shuffle packets
- packet(0x0202,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x023b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x086f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0889,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0891,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0894,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x089b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x089e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a6,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08ad,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x091b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x091c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x091e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0948,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x094b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x094c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0957,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x095d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
// 2014-03-12bRagexeRE
#if PACKETVER >= 20140312
// new packets
@@ -3437,40 +3097,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a0d,-1); // ZC_INVENTORY_ITEMLIST_EQUIP_V6
#endif
-// 2014-03-26aRagexe
-#if PACKETVER == 20140326
-// shuffle packets
- packet(0x0362,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0365,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x07ec,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x083c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x085b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0865,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0867,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0869,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x086b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x087c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x087e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x087f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0887,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08aa,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08ac,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08ad,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0918,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0928,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x092a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x093d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0946,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x095a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x095c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0969,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
-#endif
-
// 2014-03-26cRagexeRE
#if PACKETVER >= 20140326
// changed packet sizes
@@ -3483,40 +3109,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a08,7,clif->pDull/*,XXX*/); // CZ_REQ_OPEN_WRITE_RODEX
#endif
-// 2014-04-02fRagexe
-#if PACKETVER == 20140402
-// shuffle packets
- packet(0x023b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0360,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0364,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x085b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x085d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0867,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0868,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0882,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0883,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x088c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0890,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0896,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x089a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08ac,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0926,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0933,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x093f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0944,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0946,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x094c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0950,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0965,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
-#endif
-
// 2014-04-02eRagexeRE
#if PACKETVER >= 20140402
// new packets
@@ -3526,40 +3118,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2014-04-09aRagexe
-#if PACKETVER == 20140409
-// shuffle packets
- packet(0x0819,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x085b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0868,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x086a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x086d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0873,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0875,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x087e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0883,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0884,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x088a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0890,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0893,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0896,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a2,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08a6,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x08a7,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a9,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0918,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x092e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0942,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0947,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x095e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
-#endif
-
// 2014-04-09aRagexeRE
#if PACKETVER >= 20140409
// changed packet sizes
@@ -3567,40 +3125,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x09f4,12); // ZC_ACK_ITEM_FROM_RODEX
#endif
-// 2014-04-16aRagexe
-#if PACKETVER == 20140416
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x095c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-04-16aRagexeRE
#if PACKETVER >= 20140416
// new packets
@@ -3614,40 +3138,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a08,26,clif->pRodexOpenWriteMail); // CZ_REQ_OPEN_WRITE_RODEX
#endif
-// 2014-04-23aRagexe
-#if PACKETVER == 20140423
-// shuffle packets
- packet(0x022d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0436,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0811,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x083c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x085a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x085b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0862,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0866,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x086b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x086f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0873,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0890,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0895,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0896,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0898,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x089d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08a8,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08ad,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x091a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0920,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x094f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x095e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
-#endif
-
// 2014-04-23aRagexeRE
#if PACKETVER >= 20140423
// new packets
@@ -3664,114 +3154,12 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a17,6); // ZC_DYNAMICNPC_CREATE_RESULT
#endif
-// 2014-05-08aRagexe
-#if PACKETVER == 20140508
-// shuffle packets
- packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x022d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x023b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0281,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x035f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0362,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0365,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x07ec,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0811,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0815,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0817,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x083c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
-#endif
-
// 2014-05-08bRagexeRE
#if PACKETVER >= 20140508
// changed packet sizes
packet(0x0a15,12); // ZC_GOLDPCCAFE_POINT
#endif
-// 2014-05-14bRagexe
-#if PACKETVER == 20140514
-// shuffle packets
- packet(0x0437,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0817,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0865,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0868,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0876,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0877,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0886,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x088a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x088b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0895,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x089c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a5,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0921,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0925,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x092c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x092f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0962,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0965,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x096a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
-#endif
-
-// 2014-05-21bRagexe
-#if PACKETVER == 20140521
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x088b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x089c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0968,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-05-21aRagexeRE
#if PACKETVER >= 20140521
// changed packet sizes
@@ -3779,74 +3167,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a14,10); // ZC_CHECK_RECEIVE_CHARACTER_NAME
#endif
-// 2014-05-28aRagexe
-#if PACKETVER == 20140528
-// shuffle packets
- packet(0x0202,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x085f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0862,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0875,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0877,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0879,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x087e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x088a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x088f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0894,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08a8,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0929,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0930,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0938,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x093a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x093f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x094b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x095f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0963,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0966,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
-#endif
-
-// 2014-06-05aRagexe
-#if PACKETVER == 20140605
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0369,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0921,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x094c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
/* Roulette System [Yommy/Hercules] */
// 2014-06-05aRagexe
#if PACKETVER >= 20140605
@@ -3859,40 +3179,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a1d,14,clif->pDull/*,XXX*/); // CZ_REQ_CLOSE_ROULETTE
#endif
-// 2014-06-11cRagexe
-#if PACKETVER == 20140611
-// shuffle packets
- packet(0x0364,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0438,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0838,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0864,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0867,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0878,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0891,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0893,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0894,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a2,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0924,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x094f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0950,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0958,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0965,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0969,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
/* Roulette System [Yommy/Hercules] */
// 2014-06-11bRagexe / RE. moved by 4144
#if PACKETVER >= 20140611
@@ -3914,108 +3200,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a1d,2,clif->pRouletteClose,0); // CZ_REQ_CLOSE_ROULETTE
#endif
-// 2014-06-12aRagexe
-#if PACKETVER == 20140612
-// shuffle packets
- packet(0x0364,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0438,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0838,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0864,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0867,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0878,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0891,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0893,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0894,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a2,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0924,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x094f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0950,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0958,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0965,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0969,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
-// 2014-06-13aRagexe
-#if PACKETVER == 20140613
-// shuffle packets
- packet(0x0364,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0438,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0838,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0864,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0867,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0878,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0891,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0893,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0894,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a2,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0924,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x094f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0950,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0958,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0965,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0969,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
-// 2014-06-18aRagexe
-#if PACKETVER == 20140618
-// shuffle packets
- packet(0x085d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0860,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0861,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0878,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0884,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0885,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0886,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0890,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a7,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08ac,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x091f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0929,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0935,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0939,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x093b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0945,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0954,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0957,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x095e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0967,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
-#endif
-
// 2014-06-18cRagexeRE
#if PACKETVER >= 20140618
// changed packet sizes
@@ -4023,40 +3207,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a22,5); // ZC_RECV_ROULETTE_ITEM
#endif
-// 2014-06-25aRagexe
-#if PACKETVER == 20140625
-// shuffle packets
- packet(0x0202,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x023b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0815,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0817,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0835,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x085a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0861,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0875,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x087b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0886,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0888,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x088a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0897,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08a1,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a2,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0923,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0928,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0946,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0959,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0968,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0969,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-06-25aRagexeRE
#if PACKETVER >= 20140625
// new packets
@@ -4066,40 +3216,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a24,36); // ZC_ACH_UPDATE
#endif
-// 2014-07-02aRagexe
-#if PACKETVER == 20140702
-// shuffle packets
- packet(0x022d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0438,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x07e4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0835,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0887,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0892,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0895,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08a0,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a2,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0925,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0933,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-07-02aRagexeRE
#if PACKETVER >= 20140702
// new packets
@@ -4107,114 +3223,12 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a2a,6,clif->pDull/*,XXX*/); // CZ_ACK_AU_BOT
#endif
-// 2014-07-09aRagexe
-#if PACKETVER == 20140709
-// shuffle packets
- packet(0x0364,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0866,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0869,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0875,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0877,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0879,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x087a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0887,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0888,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0894,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0897,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0898,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0925,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x092f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0931,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0934,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0939,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x093f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x094f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0961,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
-#endif
-
-// 2014-07-16aRagexe
-#if PACKETVER == 20140716
-// shuffle packets
- packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0811,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0868,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0871,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0881,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0896,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x089a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x089f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08a2,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08a4,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x08ac,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0918,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0926,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x092c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0938,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0947,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0952,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0959,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
-#endif
-
// 2014-07-16aRagexeRE
#if PACKETVER >= 20140716
// changed packet sizes
packet(0x09e7,3); // ZC_NOTIFY_UNREAD_RODEX
#endif
-// 2014-07-23aRagexe
-#if PACKETVER == 20140723
-// shuffle packets
- packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0436,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0819,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x085f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x087d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0888,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0891,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0896,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0898,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x089e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08ad,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0927,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x092f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0934,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0935,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0939,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x093d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0945,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0947,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0948,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0960,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
// 2014-07-23aRagexeRE
#if PACKETVER >= 20140723
// new packets
@@ -4224,250 +3238,12 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a24,56); // ZC_ACH_UPDATE
#endif
-// 2014-07-30aRagexe
-#if PACKETVER == 20140730
-// shuffle packets
- packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0366,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0367,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0437,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x07ec,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0802,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0815,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0817,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x085f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x087d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x087e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x087f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0889,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x088b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x088d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0892,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a0,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a7,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a9,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0924,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0934,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0940,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0946,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
-#endif
-
-// 2014-08-06aRagexe
-#if PACKETVER == 20140806
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0948,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-08-13aRagexe
-#if PACKETVER == 20140813
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0868,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0878,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0882,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0897,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0899,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a7,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0967,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-08-14aRagexe
-#if PACKETVER == 20140814
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0868,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0878,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0882,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0897,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0899,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a7,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0967,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-08-20aRagexe
-#if PACKETVER == 20140820
-// shuffle packets
- packet(0x035f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0835,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0861,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0864,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0869,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x086c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0872,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0876,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0899,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a3,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a7,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0937,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x093a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x093e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0951,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0952,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0956,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0958,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
// 2014-08-20aRagexeRE
#if PACKETVER >= 20140820
// new packets
packet(0x0a2d,-1); // ZC_EQUIPWIN_MICROSCOPE_V6
#endif
-// 2014-08-27aRagexe
-#if PACKETVER == 20140827
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0943,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-09-03aRagexe
-#if PACKETVER == 20140903
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0943,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0945,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-09-03aRagexeRE
#if PACKETVER >= 20140903
// new packets
@@ -4476,74 +3252,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2014-09-17aRagexe
-#if PACKETVER == 20140917
-// shuffle packets
- packet(0x022d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0364,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0365,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0367,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0895,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0897,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0898,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a8,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0919,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x091e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x092a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0930,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0949,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x094f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0951,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0955,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0956,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x095a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x095c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x095e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0966,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
-#endif
-
-// 2014-09-24cRagexe
-#if PACKETVER == 20140924
-// shuffle packets
- packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0367,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0815,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0862,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0864,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0865,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x086b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x086d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0886,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x088b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0894,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0898,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a5,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a7,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0918,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x091b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0925,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0926,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0928,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0934,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0949,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0952,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
-#endif
-
// 2014-09-24bRagexeRE
#if PACKETVER >= 20140924
// new packets
@@ -4554,324 +3262,18 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a34,6); // ZC_UPDATE_TAIWANCASH
#endif
-// 2014-10-01aRagexe
-#if PACKETVER == 20141001
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0884,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0885,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x089d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x092a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0939,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0952,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
-#endif
-
// 2014-10-01bRagexeRE
#if PACKETVER >= 20141001
// changed packet sizes
packet(0x0a24,66); // ZC_ACH_UPDATE
#endif
-// 2014-10-08aRagexe
-#if PACKETVER == 20141008
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0942,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-10-08bRagexeRE
#if PACKETVER >= 20141008
// changed packet sizes
packet(0x0a05,49); // ZC_ACK_ADD_ITEM_RODEX
#endif
-// 2014-10-15bRagexe
-#if PACKETVER == 20141015
-// shuffle packets
- packet(0x022d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0922,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0967,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-10-16aRagexe
-#if PACKETVER == 20141016
-// shuffle packets
- packet(0x022d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0922,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0967,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-10-22bRagexe
-#if PACKETVER == 20141022
-// shuffle packets
- packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0878,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x087d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0896,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0899,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08aa,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x094e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-10-29aRagexe
-#if PACKETVER == 20141029
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0940,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-11-05aRagexe
-#if PACKETVER == 20141105
-// shuffle packets
- packet(0x022d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x035f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0360,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0864,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0865,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0871,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0874,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0875,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0877,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0879,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0887,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0892,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0898,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a0,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08a5,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a7,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08ad,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x091e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x092b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0944,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0948,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0950,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0957,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x095f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0968,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
-// 2014-11-12cRagexe
-#if PACKETVER == 20141112
-// shuffle packets
- packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0438,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x07e4,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x083c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0871,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0885,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0886,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08a0,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a1,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08ab,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0919,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0929,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0943,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x095d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0960,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0962,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
-#endif
-
-// 2014-11-19dRagexe
-#if PACKETVER == 20141119
-// shuffle packets
- packet(0x0202,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0865,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0866,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0872,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0873,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0875,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x087c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0887,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0888,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x088d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0895,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a8,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0918,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0920,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0921,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0933,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0938,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0948,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x094c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0963,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
-#endif
-
// 2014-11-19bRagexeRE
#if PACKETVER >= 20141119
// new packets
@@ -4880,40 +3282,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a05,53); // ZC_ACK_ADD_ITEM_RODEX
#endif
-// 2014-11-26aRagexe
-#if PACKETVER == 20141126
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0367,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0802,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0871,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0884,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0920,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0942,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0965,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2014-11-26aRagexeRE
#if PACKETVER >= 20141126
// new packets
@@ -4921,590 +3289,12 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a37,57); // ZC_ITEM_PICKUP_ACK_V7
#endif
-// 2014-12-03aRagexe
-#if PACKETVER == 20141203
-// shuffle packets
- packet(0x0202,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0281,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0362,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0367,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0861,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x086d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x086e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x087b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0880,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0889,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0898,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08a5,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08aa,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0917,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x091c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0928,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x092a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0936,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0957,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x095c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0962,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
-#endif
-
-// 2014-12-10bRagexe
-#if PACKETVER == 20141210
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0885,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08ac,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0917,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0927,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x092b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0947,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0954,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0958,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0963,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0967,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2014-12-24aRagexe
-#if PACKETVER == 20141224
-// shuffle packets
- packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0438,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0835,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x085a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0865,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x086c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0870,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x087b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x089b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08a3,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08ac,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0932,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0945,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0946,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0949,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x094f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0950,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0953,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0956,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x095b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x095f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
-#endif
-
-// 2014-12-31aRagexe
-#if PACKETVER == 20141231
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-01-07aRagexeRE
-#if PACKETVER == 20150107
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0895,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0943,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-01-14aRagexe
-#if PACKETVER == 20150114
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0868,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0899,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0946,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0955,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0957,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-01-21aRagexe
-#if PACKETVER == 20150121
-// shuffle packets
- packet(0x0281,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x088b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x089e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08ab,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0918,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0919,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0955,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0959,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0963,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0967,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-01-28aRagexe
-#if PACKETVER == 20150128
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x023b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0838,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0864,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x086d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0870,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0874,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0875,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0888,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0968,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
-#endif
-
// 2015-01-28aRagexeRE
#if PACKETVER >= 20150128
// new packets
packet(0x0a38,3);
#endif
-// 2015-01-29aRagexe
-#if PACKETVER == 20150129
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x023b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0838,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0864,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x086d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0870,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0874,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0875,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0888,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0968,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
-#endif
-
-// 2015-01-30aRagexe
-#if PACKETVER == 20150130
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x023b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0838,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0864,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x086d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0870,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0874,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0875,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0888,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0968,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
-#endif
-
-// 2015-02-04aRagexe
-#if PACKETVER == 20150204
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0966,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-02-11aRagexe
-#if PACKETVER == 20150211
-// shuffle packets
- packet(0x023b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0368,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0369,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0436,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0437,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x07e4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0817,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0819,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0835,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0862,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0870,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0873,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x087b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0882,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0883,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0885,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0886,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x089c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08aa,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0919,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0951,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0957,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0958,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
-// 2015-02-17aRagexe
-#if PACKETVER == 20150217
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-02-25aRagexeRE
-#if PACKETVER == 20150225
-// shuffle packets
- packet(0x02c4,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0948,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0955,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
-#endif
-
-// 2015-02-26aRagexeRE
-#if PACKETVER == 20150226
-// shuffle packets
- packet(0x02c4,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0948,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0955,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
-#endif
-
-// 2015-03-04aRagexe
-#if PACKETVER == 20150304
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0862,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x086d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0879,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0892,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x093a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0947,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x095d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0960,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0961,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-03-11aRagexeRE
-#if PACKETVER == 20150311
-// shuffle packets
- packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0360,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0438,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0838,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x086a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x086c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x087b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0883,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0888,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0896,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a5,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08a6,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0928,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x092e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0943,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0958,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x095b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0964,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
// 2015-03-11aRagexeRE
#if PACKETVER >= 20150311
// new packets
@@ -5512,176 +3302,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2015-03-18aRagexe
-#if PACKETVER == 20150318
-// shuffle packets
- packet(0x0202,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x023b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0281,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0802,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0862,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0885,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x088c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a4,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0920,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0927,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0928,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0936,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0937,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x093a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x094c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0951,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0958,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0959,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0960,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
-// 2015-03-25aRagexe
-#if PACKETVER == 20150325
-// shuffle packets
- packet(0x0202,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0365,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0438,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x085d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x086f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0883,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0885,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0893,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0897,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0899,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a7,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0919,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0931,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0932,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0938,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0947,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0950,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0954,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0969,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
-#endif
-
-// 2015-04-01aRagexe
-#if PACKETVER == 20150401
-// shuffle packets
- packet(0x0362,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0367,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0437,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x083c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x086f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0875,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x087e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x088f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0898,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a5,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0922,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0924,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0938,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0939,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x093a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x093b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x093e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0949,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0953,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0964,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
-// 2015-04-08aRagexe
-#if PACKETVER == 20150408
-// shuffle packets
- packet(0x0819,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x085a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0865,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0868,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x086b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x086e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0878,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x087f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0888,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0889,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0891,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a2,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x091e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0922,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0946,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0955,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0957,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0959,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0963,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
-// 2015-04-15aRagexe
-#if PACKETVER == 20150415
-// shuffle packets
- packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0364,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0366,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0368,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0802,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0835,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x085e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0867,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0868,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0869,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x086c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0880,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0898,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a0,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x093c,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0941,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0946,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0953,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x095c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
// 2015-04-15aRagexeRE
#if PACKETVER >= 20150415
// changed packet sizes
@@ -5689,182 +3309,12 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2015-04-22aRagexeRE
-#if PACKETVER == 20150422
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0955,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-04-22aRagexeRE
#if PACKETVER >= 20150422
// new packets
packet(0x0a3b,-1);
// changed packet sizes
#endif
-// 2015-04-29aRagexe
-#if PACKETVER == 20150429
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x086a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0886,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0894,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0899,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x089f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08a8,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08ad,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0943,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-05-07bRagexe
-#if PACKETVER == 20150507
-// shuffle packets
- packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0887,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0889,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0924,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x092e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x093b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0941,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0942,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0953,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0955,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0958,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-05-13aRagexe
-#if PACKETVER == 20150513
-// shuffle packets
- packet(0x022d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x02c4,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0883,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a8,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0923,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0924,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0927,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x094a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0960,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-05-20aRagexe
-#if PACKETVER == 20150520
-// shuffle packets
- packet(0x0202,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0361,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0835,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x085e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0865,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0868,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x087d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0880,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0882,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a2,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0924,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0931,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0936,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x093d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0940,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0945,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x094e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0960,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0961,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
// 2015-05-20aRagexeRE
#if PACKETVER >= 20150520
// new packets
@@ -5872,716 +3322,36 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a3d,18,clif->pDull/*,XXX*/);
#endif
-// 2015-05-27aRagexe
-#if PACKETVER == 20150527
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x083c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0940,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-06-03aRagexe
-#if PACKETVER == 20150603
-// shuffle packets
- packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0437,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0860,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0864,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0867,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0873,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0877,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0881,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0884,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x088b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0897,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x089a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a1,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08ad,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x091b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0922,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x093b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x093f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0955,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0956,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0960,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0969,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x096a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
-#endif
-
// 2015-06-03bRagexeRE
#if PACKETVER >= 20150603
// new packets
packet(0x0a3e,-1);
#endif
-// 2015-06-10aRagexe
-#if PACKETVER == 20150610
-// shuffle packets
- packet(0x022d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0438,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x07e4,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0835,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0872,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0877,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x087e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0884,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x088d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x088f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0897,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a0,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08ac,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0925,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x092e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0932,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x093e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0940,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0946,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0949,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0957,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x095d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0964,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
-// 2015-06-17aRagexeRE
-#if PACKETVER == 20150617
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0362,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0365,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x086b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0894,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-06-18aRagexeRE
-#if PACKETVER == 20150618
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0362,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0365,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x086b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0894,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-06-24aRagexe
-#if PACKETVER == 20150624
-// shuffle packets
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0365,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0870,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0940,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0966,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2015-06-24aRagexeRE
#if PACKETVER >= 20150624
// new packets
packet(0x0a3f,9);
#endif
-// 2015-07-02aRagexe
-#if PACKETVER == 20150702
-// shuffle packets
- packet(0x023b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0281,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x07e4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x086d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x087d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0883,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x088e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0893,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a0,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a4,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a5,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a6,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08ad,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0919,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0923,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0928,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x092c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x093f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0946,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0954,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0956,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0958,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x095f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0960,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0968,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
-// 2015-07-08cRagexe
-#if PACKETVER == 20150708
-// shuffle packets
- packet(0x022d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0368,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0872,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x092a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-07-15aRagexe
-#if PACKETVER == 20150715
-// shuffle packets
- packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0362,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0436,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0437,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x086f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0873,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0879,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x087c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x087f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0886,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0895,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0896,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0897,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0899,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x089a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a4,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08ac,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0917,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x093e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0944,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0950,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0961,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0965,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
-// 2015-07-29aRagexe
-#if PACKETVER == 20150729
-// shuffle packets
- packet(0x0437,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0438,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x085b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0860,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x086e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x086f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0870,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0880,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0881,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0886,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x089a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a3,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08ac,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08ad,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0920,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x092b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x093a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x093f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0955,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x095e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0961,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
-#endif
-
-// 2015-08-05aRagexe
-#if PACKETVER == 20150805
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-08-12aRagexe
-#if PACKETVER == 20150812
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2015-08-12aRagexeRE
#if PACKETVER >= 20150812
// new packets
packet(0x0a40,11);
#endif
-// 2015-08-19aRagexeRE
-#if PACKETVER == 20150819
-// shuffle packets
- packet(0x0202,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x022d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0281,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x085d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0862,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0865,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0871,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0888,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0919,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0927,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0961,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0967,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-08-26aRagexeRE
-#if PACKETVER == 20150826
-// shuffle packets
- packet(0x0362,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0368,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0436,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x07ec,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0861,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x086b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x087b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0890,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0891,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a0,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08a1,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0924,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0928,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x092e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x093b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0945,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0951,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0959,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0968,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0969,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
-#endif
-
-// 2015-09-02aRagexe
-#if PACKETVER == 20150902
-// shuffle packets
- packet(0x023b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0360,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0367,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0802,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x083c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x087b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0886,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0887,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0889,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x088d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0892,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0897,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0899,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08a9,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0923,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0928,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x092d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0941,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0947,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x094f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0953,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x095b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0960,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
-// 2015-09-09aRagexe
-#if PACKETVER == 20150909
-// shuffle packets
- packet(0x023b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0361,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0437,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0861,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0871,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x087b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0883,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0886,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0895,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0928,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0940,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0941,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0962,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
// 2015-09-09aRagexeRE
#if PACKETVER >= 20150909
// new packets
packet(0x0a41,18);
#endif
-// 2015-09-16aRagexe
-#if PACKETVER == 20150916
-// shuffle packets
- packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0817,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0835,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x085e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0869,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0873,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0877,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0881,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x089b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x089c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08ac,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0920,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0924,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x092e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x092f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0934,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0936,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0942,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0948,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x095a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0960,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0969,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
-#endif
-
// 2015-09-16aRagexeRE
#if PACKETVER >= 20150916
// new packets
packet(0x0a42,43);
#endif
-// 2015-09-23bRagexe
-#if PACKETVER == 20150923
-// shuffle packets
- packet(0x0361,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0817,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x085c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x085d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0864,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x086e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x086f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0870,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0879,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x087f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x088e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0892,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0895,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a0,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a2,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08a5,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08a6,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x092b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0936,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x093b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0951,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
-#endif
-
-// 2015-10-01aRagexe
-#if PACKETVER == 20151001
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-10-07aRagexeRE
-#if PACKETVER == 20151007
-// shuffle packets
- packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0862,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0961,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0967,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2015-10-07aRagexeRE
#if PACKETVER >= 20151007
// new packets
@@ -6589,284 +3359,12 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a44,-1);
#endif
-// 2015-10-14bRagexeRE
-#if PACKETVER == 20151014
-// shuffle packets
- packet(0x0202,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0817,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0838,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x085a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0863,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0874,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0881,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0883,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0884,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0889,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x088e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x089a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x089f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08aa,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x091d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0930,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0934,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0944,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x094f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0956,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x095e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0961,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
-#endif
-
-// 2015-10-21aRagexe
-#if PACKETVER == 20151021
-// shuffle packets
- packet(0x023b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x02c4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-10-22aRagexe
-#if PACKETVER == 20151022
-// shuffle packets
- packet(0x023b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x02c4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-10-28cRagexeRE
-#if PACKETVER == 20151028
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2015-10-28cRagexeRE
#if PACKETVER >= 20151028
// new packets
packet(0x0a45,-1);
#endif
-// 2015-10-29aRagexe
-#if PACKETVER == 20151029
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-11-04aRagexe
-#if PACKETVER == 20151104
-// shuffle packets
- packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0360,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0363,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0437,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0811,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0815,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0886,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x088b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x088d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08a3,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a5,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0928,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0939,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093a,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x0940,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
-#endif
-
-// 2015-11-11aRagexe
-#if PACKETVER == 20151111
-// shuffle packets
- packet(0x02c4,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085d,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x0862,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0871,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0885,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0942,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x094a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0958,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0967,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0969,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-11-18aRagexeRE
-#if PACKETVER == 20151118
-// shuffle packets
- packet(0x022d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x035f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x088b,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x08ab,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0921,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0925,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x092e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0943,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x0957,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095c,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2015-11-18aRagexeRE
#if PACKETVER >= 20151118
// new packets
@@ -6876,346 +3374,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a4c,28);
#endif
-// 2015-11-25bRagexe
-#if PACKETVER == 20151125
-// shuffle packets
- packet(0x0361,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0366,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x0438,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0802,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0838,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0863,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0883,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0884,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x088c,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x088d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x089f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x08a9,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x092a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x092e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0939,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0951,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0956,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0959,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
-#endif
-
-// 2015-12-02bRagexeRE
-#if PACKETVER == 20151202
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0870,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2015-12-09aRagexe
-#if PACKETVER == 20151209
-// shuffle packets
- packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x07e4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x07ec,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0811,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0819,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x085b,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
- packet(0x085d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0861,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0866,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x087a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x087f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0894,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08a1,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0920,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x092d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0932,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
- packet(0x093b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0948,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094a,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0956,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x095c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0961,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0964,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
-#endif
-
-// 2015-12-16aRagexe
-#if PACKETVER == 20151216
-// shuffle packets
- packet(0x022d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0361,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0364,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0436,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x085b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0865,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x086a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0874,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x088b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x089e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a2,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a9,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0949,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0954,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0960,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0966,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0968,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
-#endif
-
-// 2015-12-23bRagexeRE
-#if PACKETVER == 20151223
-// shuffle packets
- packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0362,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0815,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0864,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0866,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x086e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0872,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0875,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0876,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0881,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0884,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0886,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x088d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0890,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0891,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0898,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08aa,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0918,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x091a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x091b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0920,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0923,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0924,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x095e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x095f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0965,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0967,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
-#endif
-
-// 2015-12-30aRagexe
-#if PACKETVER == 20151230
-// shuffle packets
- packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x07ec,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0861,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0869,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0886,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x088e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0897,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0923,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x093a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0949,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-01-06aRagexeRE
-#if PACKETVER == 20160106
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0861,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0878,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x087f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0889,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x088a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0891,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0940,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-01-13aRagexeRE
-#if PACKETVER == 20160113
-// shuffle packets
- packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x023b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x035f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0815,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x085b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0864,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x086d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0873,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0888,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0893,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a0,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a6,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08aa,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0919,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x091b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0924,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0930,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0932,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x093c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0941,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x094d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0967,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
-#endif
-
-// 2016-01-20aRagexeRE
-#if PACKETVER == 20160120
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0865,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-01-27aRagexeRE
-#if PACKETVER == 20160127
-// shuffle packets
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0922,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-01-27aRagexeRE
#if PACKETVER >= 20160127
// new packets
@@ -7223,176 +3381,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-02-03aRagexeRE
-#if PACKETVER == 20160203
-// shuffle packets
- packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0437,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0835,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x088c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0918,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0940,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0947,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0954,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x095a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-02-11aRagexeRE
-#if PACKETVER == 20160211
-// shuffle packets
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0870,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-02-17cRagexeRE
-#if PACKETVER == 20160217
-// shuffle packets
- packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x023b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0362,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0864,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0870,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0873,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x087a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0888,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x088d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x088f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0899,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a0,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a9,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08ac,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ad,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x091d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0920,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0926,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x092e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x093b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0941,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0966,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0967,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0969,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
-#endif
-
-// 2016-02-24bRagexeRE
-#if PACKETVER == 20160224
-// shuffle packets
- packet(0x022d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0364,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0436,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0861,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x086b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0884,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0885,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0888,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0920,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0929,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0938,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0961,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-03-02bRagexeRE
-#if PACKETVER == 20160302
-// shuffle packets
- packet(0x022d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0367,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0819,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x085b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0864,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0865,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0868,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0873,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x087a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x087d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0883,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a6,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08a9,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x091a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0927,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x092f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0945,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x094e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0950,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0957,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x095a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0960,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0967,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0968,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
-#endif
-
// 2016-03-02bRagexeRE
#if PACKETVER >= 20160302
// new packets
@@ -7403,74 +3391,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-03-09aRagexeRE
-#if PACKETVER == 20160309
-// shuffle packets
- packet(0x023b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0281,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0819,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0838,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x083c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0873,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x087e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x089b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0920,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0922,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0929,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x092a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x092e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0932,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x094f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0956,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x096a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
-#endif
-
-// 2016-03-16aRagexeRE
-#if PACKETVER == 20160316
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0922,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-03-16aRagexeRE
#if PACKETVER >= 20160316
// new packets
@@ -7490,40 +3410,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-03-23aRagexeRE
-#if PACKETVER == 20160323
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0869,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0872,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0878,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0883,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0926,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0927,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0933,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x093c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-03-23aRagexeRE
#if PACKETVER >= 20160323
// new packets
packet(0x0a68,3);
@@ -7534,40 +3420,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-03-30aRagexeRE
-#if PACKETVER == 20160330
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x086d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0878,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x088d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0918,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0925,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x092a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x092c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0930,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0939,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x093b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-03-30aRagexeRE
#if PACKETVER >= 20160330
// new packets
packet(0x0a6c,7,clif->pDull/*,XXX*/);
@@ -7577,142 +3429,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-04-06aRagexeRE
-#if PACKETVER == 20160406
-// shuffle packets
- packet(0x0364,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x07e4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x085a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0869,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0877,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0878,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0879,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0884,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0892,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0895,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0898,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a9,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08ac,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0927,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0933,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0934,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0940,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0949,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x094d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0953,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x095f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0962,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
-#endif
-
-// 2016-04-14bRagexeRE
-#if PACKETVER == 20160414
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0363,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0862,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0880,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0885,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0918,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0922,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0927,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0931,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0934,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0945,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0953,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-04-20aRagexeRE
-#if PACKETVER == 20160420
-// shuffle packets
- packet(0x022d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x035f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0870,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0872,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0874,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0884,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a5,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0935,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x094e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x095c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-04-27aRagexeRE
-#if PACKETVER == 20160427
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0835,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-04-27aRagexeRE
#if PACKETVER >= 20160427
// new packets
@@ -7721,40 +3437,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-05-04aRagexeRE
-#if PACKETVER == 20160504
-// shuffle packets
- packet(0x0202,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0363,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0365,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x083c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x085f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x086b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x087f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0884,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x088d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0893,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0898,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x089d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0918,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0921,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0922,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0924,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0940,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0941,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0948,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0952,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0969,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
-#endif
-
-// 2016-05-04aRagexeRE
#if PACKETVER >= 20160504
// new packets
packet(0x0a70,2,clif->pDull/*,XXX*/);
@@ -7764,40 +3446,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-05-11aRagexeRE
-#if PACKETVER == 20160511
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0894,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0918,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0940,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-05-11aRagexeRE
#if PACKETVER >= 20160511
// new packets
packet(0x0a73,6);
@@ -7806,40 +3454,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-05-18aRagexeRE
-#if PACKETVER == 20160518
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0874,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0928,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-05-18aRagexeRE
#if PACKETVER >= 20160518
// new packets
packet(0x0a76,80);
@@ -7848,40 +3462,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-05-25aRagexeRE
-#if PACKETVER == 20160525
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x085e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x086a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x092c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0945,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x094a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0951,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0956,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-05-25aRagexeRE
#if PACKETVER >= 20160525
// new packets
packet(0x0a77,15);
@@ -7890,40 +3470,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-06-01aRagexeRE
-#if PACKETVER == 20160601
-// shuffle packets
- packet(0x0202,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0863,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0870,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x087d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x088f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0895,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08a7,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0924,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x095f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-06-01aRagexeRE
#if PACKETVER >= 20160601
// new packets
packet(0x0a79,-1);
@@ -7933,74 +3479,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-06-08aRagexeRE
-#if PACKETVER == 20160608
-// shuffle packets
- packet(0x022d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x035f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0437,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0802,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0889,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08a6,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x094d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0958,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0969,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-06-15aRagexeRE
-#if PACKETVER == 20160615
-// shuffle packets
- packet(0x0281,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0369,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x083c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0866,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0870,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x087e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x087f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0887,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0888,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0891,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x092f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x093e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0947,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0948,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x094b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0954,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0957,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0958,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x095c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x095e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0961,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
-#endif
-
// 2016-06-15aRagexeRE
#if PACKETVER >= 20160615
// new packets
@@ -8012,40 +3490,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-06-22aRagexeRE
-#if PACKETVER == 20160622
-// shuffle packets
- packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x035f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x07e4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0861,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0865,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0867,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0880,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0887,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0890,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0891,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0892,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x089e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a2,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a8,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0936,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x093b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x093f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0959,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0965,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0969,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
-#endif
-
-// 2016-06-22aRagexeRE
#if PACKETVER >= 20160622
// new packets
packet(0x0a82,46);
@@ -8059,40 +3503,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-06-29aRagexeRE
-#if PACKETVER == 20160629
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x022d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x035f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0363,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x085c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x085e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0860,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0861,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0863,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0867,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x086b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0881,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x088e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0893,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0925,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0926,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x093e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0946,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0948,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0957,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x095a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0968,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0969,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
-// 2016-06-29aRagexeRE
#if PACKETVER >= 20160629
// new packets
packet(0x0a89,32);
@@ -8104,74 +3514,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a80,6);
#endif
-// 2016-06-30aRagexeRE
-#if PACKETVER == 20160630
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x022d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x035f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0363,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x085c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x085e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0860,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0861,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0863,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0867,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x086b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0881,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x088e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0893,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0925,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0926,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x093e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0946,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0948,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0957,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x095a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0968,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0969,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
-// 2016-07-06cRagexeRE
-#if PACKETVER == 20160706
-// shuffle packets
- packet(0x0362,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x085f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0860,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0869,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x086b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0884,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0886,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0892,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0899,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08a5,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08a8,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0918,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x091b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0924,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0926,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0927,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0939,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x093d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0944,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0945,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x094c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0957,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
-#endif
-
// 2016-07-06cRagexeRE
#if PACKETVER >= 20160706
// new packets
@@ -8181,40 +3523,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a89,57);
#endif
-// 2016-07-13bRagexeRE
-#if PACKETVER == 20160713
-// shuffle packets
- packet(0x022d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0363,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0838,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0860,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0865,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0877,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x087b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0883,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x088d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0892,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x089a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x091c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0921,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0922,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x092c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0931,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0944,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0945,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0947,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0957,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x095b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
-#endif
-
// 2016-07-13aRagexeRE
#if PACKETVER >= 20160713
// new packets
@@ -8223,40 +3531,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-07-20aRagexeRE
-#if PACKETVER == 20160720
-// shuffle packets
- packet(0x0362,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0363,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0365,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x07e4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0838,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x085b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x086a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x087f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0883,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0897,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x089e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a0,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08aa,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0917,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x093b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x093e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0946,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x094d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0953,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x095b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0960,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0969,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
-#endif
-
-// 2016-07-20aRagexeRE
#if PACKETVER >= 20160720
// new packets
packet(0x0a8e,2);
@@ -8265,40 +3539,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-07-27bRagexeRE
-#if PACKETVER == 20160727
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x023b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0363,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0436,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x07ec,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0866,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0868,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0869,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0874,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0877,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0883,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0887,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x089f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a4,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08a7,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0936,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0946,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0949,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0951,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x095f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0966,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
-#endif
-
// 2016-07-27aRagexeRE
#if PACKETVER >= 20160727
// new packets
@@ -8309,40 +3549,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-08-03bRagexeRE
-#if PACKETVER == 20160803
-// shuffle packets
- packet(0x0364,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x085d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0878,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0881,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0888,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0891,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0895,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x08a1,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x091b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0930,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0932,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0934,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0937,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x093a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x093e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x093f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0952,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0956,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0959,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x095a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
-#endif
-
-// 2016-08-03bRagexeRE
#if PACKETVER >= 20160803
// new packets
packet(0x0a94,2);
@@ -8350,108 +3556,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a81,4);
#endif
-// 2016-08-10aRagexeRE
-#if PACKETVER == 20160810
-// shuffle packets
- packet(0x0361,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0819,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x085d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x085e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x085f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0860,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x086f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0875,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0879,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x087a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0885,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0888,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0890,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x089f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a9,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x091c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0926,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x092b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x092d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0935,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0943,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x094b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0959,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x095b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0967,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
-#endif
-
-// 2016-08-31bRagexeRE
-#if PACKETVER == 20160831
-// shuffle packets
- packet(0x022d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0366,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x086d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0876,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0878,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x087c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08a9,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0917,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x092c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0938,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0946,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x094a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x094f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0950,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0954,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0957,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x095e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0960,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0964,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0967,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
-#endif
-
-// 2016-09-07aRagexeRE
-#if PACKETVER == 20160907
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x091c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-09-07aRagexeRE
#if PACKETVER >= 20160907
// new packets
@@ -8459,74 +3563,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-09-13aRagexeRE
-#if PACKETVER == 20160913
-// shuffle packets
- packet(0x0361,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0817,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0865,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0874,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0875,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0879,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0887,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0889,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0891,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0892,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a5,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0935,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0949,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x094a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0950,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0952,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0954,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0962,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0963,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0968,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
-#endif
-
-// 2016-09-21bRagexeRE
-#if PACKETVER == 20160921
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x094a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-09-21bRagexeRE
#if PACKETVER >= 20160921
// new packets
@@ -8535,40 +3571,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0a37,59); // ZC_ITEM_PICKUP_ACK_V7
#endif
-// 2016-09-28dRagexeRE
-#if PACKETVER == 20160928
-// shuffle packets
- packet(0x0202,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0366,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0878,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0889,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x088e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0897,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x089a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a9,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0919,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x091e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0927,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x092d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0944,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0953,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0957,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
-#endif
-
// 2016-09-28cRagexeRE
#if PACKETVER >= 20160928
// new packets
@@ -8585,40 +3587,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-10-05aRagexeRE
-#if PACKETVER == 20161005
-// shuffle packets
- packet(0x0202,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0838,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0886,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0891,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0892,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x089b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a0,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08ac,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0918,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0919,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x092b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0931,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0932,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x093b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0942,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0945,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x094a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0952,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x095b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0967,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
-#endif
-
-// 2016-10-05aRagexeRE
#if PACKETVER >= 20161005
// new packets
packet(0x0aa0,2,clif->pDull/*,XXX*/);
@@ -8629,108 +3597,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-10-12aRagexeRE
-#if PACKETVER == 20161012
-// shuffle packets
- packet(0x023b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0365,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0369,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x07ec,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0819,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x085b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x085e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0863,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0868,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0872,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0875,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0880,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0893,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a0,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0936,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0937,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0939,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0943,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0944,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0951,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x095c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0962,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0966,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0967,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
-#endif
-
-// 2016-10-19aRagexeRE
-#if PACKETVER == 20161019
-// shuffle packets
- packet(0x022d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0361,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0889,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0892,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-10-26bRagexeRE
-#if PACKETVER == 20161026
-// shuffle packets
- packet(0x0363,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0861,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0862,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x086a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x086e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x087c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0886,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0891,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0894,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0898,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x091b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0926,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x092e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x092f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0930,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x094b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0953,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x095c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x095e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0962,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
// 2016-10-26bRagexeRE
#if PACKETVER >= 20161026
// new packets
@@ -8739,210 +3605,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-11-02aRagexeRE
-#if PACKETVER == 20161102
-// shuffle packets
- packet(0x0361,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0367,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0802,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x083c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0874,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0886,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a2,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08aa,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x091b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0922,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0925,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0936,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0949,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0964,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0965,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0966,6,clif->pTickSend,2); // CZ_REQUEST_TIME
-#endif
-
-// 2016-11-03aRagexeRE
-#if PACKETVER == 20161103
-// shuffle packets
- packet(0x0361,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0367,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0802,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x083c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0874,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0886,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a2,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x08aa,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x091b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0922,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0925,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0936,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0949,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0964,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0965,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0966,6,clif->pTickSend,2); // CZ_REQUEST_TIME
-#endif
-
-// 2016-11-09bRagexeRE
-#if PACKETVER == 20161109
-// shuffle packets
- packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0361,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0362,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x085d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x085e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x086a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x086d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0870,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0876,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0881,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x088e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0891,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0898,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x089f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a7,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0937,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x093c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x093f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0954,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
-// 2016-11-16cRagexeRE
-#if PACKETVER == 20161116
-// shuffle packets
- packet(0x0368,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0369,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0835,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x085f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x086f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0885,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x088b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x088d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x088f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0890,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0892,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0893,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a2,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08ac,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0920,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0925,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x092a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0931,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x093c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x094a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0957,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x095b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0967,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
-#endif
-
-// 2016-11-23aRagexeRE
-#if PACKETVER == 20161123
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0437,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0861,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0862,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x086f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0871,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0880,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0882,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x088b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a9,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x091a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0926,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x092a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x092f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0930,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x094d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x094f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x095a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x095b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0962,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x096a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
-#endif
-
-// 2016-11-30bRagexeRE
-#if PACKETVER == 20161130
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0954,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0959,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-11-30aRagexeRE
#if PACKETVER >= 20161130
// new packets
@@ -8954,40 +3616,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-12-07eRagexeRE
-#if PACKETVER == 20161207
-// shuffle packets
- packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0867,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0868,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0875,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0886,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a2,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0943,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0965,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2016-12-07cRagexeRE
#if PACKETVER >= 20161207
// new packets
@@ -8995,74 +3623,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2016-12-14bRagexeRE
-#if PACKETVER == 20161214
-// shuffle packets
- packet(0x022d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x02c4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0862,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x086d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0887,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0895,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0899,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a6,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x092e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x093d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2016-12-21aRagexeRE
-#if PACKETVER == 20161221
-// shuffle packets
- packet(0x035f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0366,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0817,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x085b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0866,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0876,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0881,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0890,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0899,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x08aa,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0926,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x092c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x092e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0930,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0943,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0946,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x094b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0965,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
-#endif
-
// 2016-12-21aRagexeRE
#if PACKETVER >= 20161221
// new packets
@@ -9075,40 +3635,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2016-12-28aRagexeRE
-#if PACKETVER == 20161228
-// shuffle packets
- packet(0x0362,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x085a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0865,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x086a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x086c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x086d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0870,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0871,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0875,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0889,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0893,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a2,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08a3,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a5,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ab,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08ac,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0929,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x092c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0934,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0935,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x093d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0944,6,clif->pTickSend,2); // CZ_REQUEST_TIME
-#endif
-
-// 2016-12-28aRagexeRE
#if PACKETVER >= 20161228
// new packets
// changed packet sizes
@@ -9116,40 +3642,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-01-04bRagexeRE
-#if PACKETVER == 20170104
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x085a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0896,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-01-04bRagexeRE
#if PACKETVER >= 20170104
// new packets
packet(0x0ab2,7);
@@ -9158,40 +3650,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-01-11aRagexeRE
-#if PACKETVER == 20170111
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0877,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x088a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a6,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x091b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0969,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-01-11aRagexeRE
#if PACKETVER >= 20170111
// new packets
packet(0x0ab4,4);
@@ -9204,40 +3662,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-01-18aRagexeRE
-#if PACKETVER == 20170118
-// shuffle packets
- packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0862,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0865,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x086f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0873,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08ad,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0927,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0933,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0958,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0962,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
-// 2017-01-18aRagexeRE
#if PACKETVER >= 20170118
// new packets
packet(0x0aba,2);
@@ -9247,74 +3671,6 @@ packet(0x96e,-1,clif->ackmergeitems);
packet(0x0ab3,19);
#endif
-// 2017-01-25aRagexeRE
-#if PACKETVER == 20170125
-// shuffle packets
- packet(0x0438,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0877,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0879,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x087d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0881,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0893,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0894,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0895,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x089b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08a5,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x091b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x091c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0920,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0929,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x092b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0930,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0943,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0944,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x095c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0965,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0968,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
-// 2017-02-01aRagexeRE
-#if PACKETVER == 20170201
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0815,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0875,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0879,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0881,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0886,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x088b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a4,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0919,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0920,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0938,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x094c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2017-02-01aRagexeRE
#if PACKETVER >= 20170201
// new packets
@@ -9322,74 +3678,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2017-02-08aRagexeRE
-#if PACKETVER == 20170208
-// shuffle packets
- packet(0x02c4,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0367,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0860,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0892,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a1,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0921,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0923,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0932,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0937,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-02-15aRagexeRE
-#if PACKETVER == 20170215
-// shuffle packets
- packet(0x02c4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x035f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0876,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x087c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x087d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0883,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x088c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0890,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0896,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a2,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x08a8,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0925,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0942,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x094e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x095f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0962,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0969,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
-#endif
-
// 2017-02-15aRagexeRE
#if PACKETVER >= 20170215
// new packets
@@ -9398,40 +3686,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-02-22aRagexeRE
-#if PACKETVER == 20170222
-// shuffle packets
- packet(0x0202,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0866,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0871,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0877,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0894,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08a3,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08a8,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0939,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0943,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0962,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-02-22aRagexeRE
#if PACKETVER >= 20170222
// new packets
packet(0x0abe,116);
@@ -9440,40 +3694,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-02-28aRagexeRE
-#if PACKETVER == 20170228
-// shuffle packets
- packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0360,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0819,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x085e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0863,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x086b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0873,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0874,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0876,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0883,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0889,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0893,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x089e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08a7,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x091f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0937,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x093e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0944,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0947,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0948,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0952,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
-#endif
-
-// 2017-02-28aRagexeRE
#if PACKETVER >= 20170228
// new packets
packet(0x0ac0,26,clif->pRodexOpenMailbox); // CZ_OPEN_RODEXBOX
@@ -9490,40 +3710,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-03-08bRagexeRE
-#if PACKETVER == 20170308
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-03-08bRagexeRE
#if PACKETVER >= 20170308
// new packets
packet(0x0ac8,2);
@@ -9531,74 +3717,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2017-03-15cRagexeRE
-#if PACKETVER == 20170315
-// shuffle packets
- packet(0x02c4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x035f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0360,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0366,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0436,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x07ec,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0863,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0872,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x087b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0884,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x088b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x089c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x091d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0922,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0944,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x094e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0950,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0952,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
-#endif
-
-// 2017-03-22aRagexeRE
-#if PACKETVER == 20170322
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x091a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2017-03-22aRagexeRE
#if PACKETVER >= 20170322
// new packets
@@ -9606,40 +3724,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2017-03-29dRagexeRE
-#if PACKETVER == 20170329
-// shuffle packets
- packet(0x0281,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0363,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0888,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x08a8,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0917,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0926,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0929,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x092e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0949,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2017-03-29cRagexeRE
#if PACKETVER >= 20170329
// new packets
@@ -9648,40 +3732,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-04-05bRagexeRE
-#if PACKETVER == 20170405
-// shuffle packets
- packet(0x022d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0281,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0363,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0860,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0865,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x086f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0893,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a5,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x094c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0964,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-04-05bRagexeRE
#if PACKETVER >= 20170405
// new packets
packet(0x0acb,12);
@@ -9689,74 +3739,6 @@ packet(0x96e,-1,clif->ackmergeitems);
// changed packet sizes
#endif
-// 2017-04-12aRagexeRE
-#if PACKETVER == 20170412
-// shuffle packets
- packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0365,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0869,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x086d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0878,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0879,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x088b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0890,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0893,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x089a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x089c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x091e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0929,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x092e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0938,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0942,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0945,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0949,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x094f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0959,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x095c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x095d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
-#endif
-
-// 2017-04-19bRagexeRE
-#if PACKETVER == 20170419
-// shuffle packets
- packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0819,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0838,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0862,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0868,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0872,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0881,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0897,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0898,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0920,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0922,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0930,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0931,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0935,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x093a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x093f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0942,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x095c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x095d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0963,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0965,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
-#endif
-
// 2017-04-19bRagexeRE
#if PACKETVER >= 20170419
// new packets
@@ -9766,40 +3748,6 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-04-26dRagexeRE
-#if PACKETVER == 20170426
-// shuffle packets
- packet(0x0281,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0866,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0887,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0899,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08a2,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x08a4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0927,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0958,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0963,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-04-26dRagexeRE
#if PACKETVER >= 20170426
// new packets
// changed packet sizes
@@ -9807,216 +3755,12 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-05-02dRagexeRE
-#if PACKETVER == 20170502
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0875,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0894,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x089c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x093c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0950,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-05-02dRagexeRE
#if PACKETVER >= 20170502
// new packets
packet(0x0ace,4);
// changed packet sizes
#endif
-// 2017-05-17aRagexeRE
-#if PACKETVER == 20170517
-// shuffle packets
- packet(0x0364,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0367,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0815,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0817,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0868,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x087b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x087d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x088c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0894,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0896,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x089f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08a2,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a8,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x091b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x093b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0946,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0960,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
-#endif
-
-// 2017-05-24aRagexeRE
-#if PACKETVER == 20170524
-// shuffle packets
- packet(0x0364,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0368,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0802,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x085e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0860,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0866,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0868,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x086d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0873,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0874,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x087d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0882,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x088d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0894,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a1,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0923,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0925,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0934,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0946,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0958,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x095b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0964,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0967,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0968,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
-#endif
-
-// 2017-05-31aRagexeRE
-#if PACKETVER == 20170531
-// shuffle packets
- packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0369,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x07e4,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x07ec,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0819,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x085f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0868,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0873,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0875,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0878,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x088b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x088d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0894,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x08a2,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x08ac,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x08ad,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x092d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0933,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0940,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0945,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0963,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0968,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
-#endif
-
-// 2017-06-07bRagexeRE
-#if PACKETVER == 20170607
-// shuffle packets
- packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x07e4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x085e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0862,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0864,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0871,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0873,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0875,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0885,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x088a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0897,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x089d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a9,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08ab,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0917,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0919,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0925,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0927,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0931,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0934,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0938,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x093d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0944,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0949,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
-#endif
-
-// 2017-06-14bRagexeRE
-#if PACKETVER == 20170614
-// shuffle packets
- packet(0x023b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0361,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0364,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0367,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0838,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0860,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0865,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0866,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0867,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x086b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0877,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a2,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x08ad,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0928,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x092f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0936,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0963,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
-#endif
-
// 2017-06-14bRagexeRE
#if PACKETVER >= 20170614
// new packets
@@ -10026,187 +3770,17 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-06-21aRagexeRE
-#if PACKETVER == 20170621
-// shuffle packets
- packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0365,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0366,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0802,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x085d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x087d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0885,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a8,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0956,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0957,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x095b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x095c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0961,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-06-21aRagexeRE
#if PACKETVER >= 20170621
// changed packet sizes
packet(0x0acf,57);
#endif
-// 2017-06-28bRagexeRE
-#if PACKETVER == 20170628
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0863,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-07-05aRagexeRE
-#if PACKETVER == 20170705
-// shuffle packets
- packet(0x0202,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0886,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x088e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x089a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x089d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x092f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0930,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0932,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0934,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x094c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
// 2017-07-05aRagexeRE
#if PACKETVER >= 20170705
// changed packet sizes
packet(0x0acf,64);
#endif
-// 2017-07-12bRagexeRE
-#if PACKETVER == 20170712
-// shuffle packets
- packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0944,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-07-19aRagexeRE
-#if PACKETVER == 20170719
-// shuffle packets
- packet(0x022d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0367,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0368,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0369,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x07e4,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x085a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x085e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x087d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0881,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0882,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0891,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0898,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x08a6,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a8,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x091b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x092c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x092e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x092f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x093d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0944,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
-#endif
-
// 2017-07-19aRagexeRE
#if PACKETVER >= 20170719
// new packets
@@ -10222,181 +3796,11 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-07-26cRagexeRE
-#if PACKETVER == 20170726
-// shuffle packets
- packet(0x0363,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0369,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0438,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0838,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0873,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0874,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0878,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0881,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0888,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x088e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08a3,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08a7,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08aa,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x08ac,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x091e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x091f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0921,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0923,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0943,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x094f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0950,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0952,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0954,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x095a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0963,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
-#endif
-
-// 2017-07-26cRagexeRE
#if PACKETVER >= 20170726
// new packets
packet(0x0ada,30);
#endif
-// 2017-08-01aRagexeRE
-#if PACKETVER == 20170801
-// shuffle packets
- packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0281,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a6,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x094f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-08-16cRagexeRE
-#if PACKETVER == 20170816
-// shuffle packets
- packet(0x022d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x035f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0362,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0438,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x085a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0862,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0864,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x087e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0881,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0882,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0888,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0889,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x08a3,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a7,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08a9,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x08ac,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x091c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0921,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0925,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x093a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x093d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0941,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0950,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0960,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
-#endif
-
-// 2017-08-23aRagexeRE
-#if PACKETVER == 20170823
-// shuffle packets
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x086d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08ac,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-08-30bRagexeRE
-#if PACKETVER == 20170830
-// shuffle packets
- packet(0x0281,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x02c4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0363,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0364,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0860,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x086a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0875,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0884,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0888,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0899,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x089e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a8,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x091e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0921,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0925,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x092e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x093e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0940,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0942,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0943,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0947,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0951,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0959,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
-#endif
-
// 2017-08-30aRagexeRE
#if PACKETVER >= 20170830
// new packets
@@ -10408,265 +3812,164 @@ packet(0x96e,-1,clif->ackmergeitems);
#endif
// 2017-09-06cRagexeRE
-#if PACKETVER == 20170906
-// shuffle packets
- packet(0x0202,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0281,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0366,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0802,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0866,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x086c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a3,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x08a7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x091e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0953,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-09-06cRagexeRE
#if PACKETVER >= 20170906
// new packets
packet(0x0adc,6);
#endif
// 2017-09-13bRagexeRE
-#if PACKETVER == 20170913
-// shuffle packets
- packet(0x0281,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x035f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0437,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x07e4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0817,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x085a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0860,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0865,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0866,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x088c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0890,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0891,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0892,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x08a7,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x08aa,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x08ab,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x08ac,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x08ad,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x091b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x091d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0920,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0923,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0925,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0927,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x095a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x095c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
-#endif
-
-// 2017-09-13bRagexeRE
#if PACKETVER >= 20170913
// new packets
packet(0x0add,22);
#endif
-// 2017-09-20bRagexeRE
-#if PACKETVER == 20170920
-// shuffle packets
- packet(0x0369,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0436,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x07ec,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x085a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0862,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0864,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0865,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x086a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x086c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0874,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0875,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0889,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x088e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x089b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0919,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0921,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0926,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x092e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x0939,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0945,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x094c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x095d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0961,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0966,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x096a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
-#endif
-
#if PACKETVER >= 20170920
// new packets
packet(0x0ade,6);
packet(0x0adf,58);
#endif
-// 2017-09-27bRagexeRE
-#if PACKETVER == 20170927
-// shuffle packets
- packet(0x02c4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x035f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
- packet(0x0361,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0362,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x085c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0873,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0875,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x087d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x088b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0899,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x08a3,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x08a5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x08ad,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x091e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0922,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0923,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0927,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x093b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0942,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0945,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x094b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x094d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x095a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
-#endif
-
#if PACKETVER >= 20170927
// new packets
packet(0x0ae0,30);
// changed packet sizes
#endif
-// 2017-10-02cRagexeRE
-#if PACKETVER == 20171002
-// shuffle packets
- packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0897,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x089d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0928,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x092d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0934,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x093b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x093d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0943,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-10-11bRagexeRE
-#if PACKETVER == 20171011
-// shuffle packets
- packet(0x023b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x087b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x0882,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0950,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0954,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
-#endif
-
-// 2017-10-18aRagexeRE
-#if PACKETVER == 20171018
-// shuffle packets
- packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
- packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
- packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
- packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
- packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
- packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
- packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
- packet(0x0436,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
- packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
- packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
- packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
- packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
- packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
- packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
- packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
- packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
- packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
- packet(0x086a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
- packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
- packet(0x087e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
- packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
- packet(0x089a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
- packet(0x089f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
- packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
- packet(0x0938,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
- packet(0x0944,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
- packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
- packet(0x094f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
- packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#ifdef PACKETVER_ZERO
+// 2017-10-25bRagexe_zero
+#if PACKETVER >= 20171025
+// new packets
+ packet(0x0ae1,28);
+#endif
+#endif // PACKETVER_ZERO
+
+// 2017-11-01bRagexeRE
+#if PACKETVER >= 20171101
+// new packets
+ packet(0x0ae1,28);
+#endif
+
+#ifdef PACKETVER_ZERO
+// 2017-11-09aRagexe
+#if PACKETVER >= 20171109
+// new packets
+ packet(0x0ae2,7);
+#endif
+// 2017-11-13aRagexe
+#if PACKETVER >= 20171113
+// changed packet sizes
+ packet(0x0acf,68);
+#endif
+#endif // PACKETVER_ZERO
+
+// 2017-11-15aRagexeRE
+#if PACKETVER >= 20171115
+// new packets
+ packet(0x0ae2,7);
+// changed packet sizes
+ packet(0x0acf,68);
+#endif
+
+#ifdef PACKETVER_ZERO
+// 2017-11-23dRagexe
+#if PACKETVER >= 20171123
+// new packets
+ packet(0x0ae3,-1); // AC_LOGIN_OTP
+#endif
+
+// 2017-11-30bRagexe
+#if PACKETVER >= 20171130
+// new packets
+ packet(0x0ae4,89);
+ packet(0x0ae5,-1);
+// changed packet sizes
+#endif
+#endif // PACKETVER_ZERO
+
+// 2017-12-06aRagexeRE
+#if PACKETVER >= 20171206
+// new packets
+ packet(0x0ae4,89);
+ packet(0x0ae5,-1);
+// changed packet sizes
+#endif
+
+#ifndef PACKETVER_ZERO
+#if PACKETVER >= 20171213
+// new packets
+ packet(0x0ae3,-1); // AC_LOGIN_OTP
+ packet(0x0ae6,30);
+ packet(0x0ae7,30);
+// changed packet sizes
+#endif
+#endif // PACKETVER_ZERO
+
+#ifdef PACKETVER_ZERO
+#if PACKETVER >= 20171214
+// new packets
+ packet(0x0ae6,30);
+ packet(0x0ae7,30);
+ packet(0x0ae8,2);
+// changed packet sizes
+#endif
+#endif // PACKETVER_ZERO
+
+// 2017-12-13bRagexe
+#if PACKETVER >= 20171213
+// new packets
+ packet(0x0ae3,-1); // AC_LOGIN_OTP
+ packet(0x0ae6,30);
+ packet(0x0ae7,30);
+// changed packet sizes
+#endif
+
+// 2017-12-20aRagexe
+#if PACKETVER >= 20171220
+// new packets
+ packet(0x0ae8,2);
+ packet(0x0ae9,64);
+ packet(0x0aea,11);
+// changed packet sizes
+#endif
+
+// 2017-12-27aRagexe
+#if PACKETVER >= 20171227
+// new packets
+ packet(0x0aeb,11);
+ packet(0x0aec,2);
+// changed packet sizes
+ packet(0x0aea,2);
+#endif
+
+// 2018-01-03aRagexe
+#if PACKETVER >= 20180103
+// new packets
+ packet(0x0aed,2);
+ packet(0x0aee,2);
+// changed packet sizes
+#ifdef PACKETVER_RE
+ packet(0x09a0,6); // HC_CHARLIST_NOTIFY
+#endif
+// changed packet sizes
+#endif
+
+#if PACKETVER >= 20180117
+// new packets
+ packet(0x0aef,2);
+ packet(0x0af0,10);
+// changed packet sizes
+ packet(0x0ae9,13);
+#endif
+
+// 2018-01-24bRagexeRE
+#if PACKETVER >= 20180124
+// new packets
+ packet(0x0af2,40,clif->pDull/*,XXX*/);
+ packet(0x0af3,-1,clif->pDull/*,XXX*/);
+// changed packet sizes
+#ifndef PACKETVER_RE
+ packet(0x0821,102,clif->pDull/*,XXX*/); // AC_OTP_USER
+#endif
#endif
#endif /* MAP_PACKETS_H */
diff --git a/src/map/packets_keys.h b/src/map/packets_keys_main.h
index 85796813a..afaf62e2d 100644
--- a/src/map/packets_keys.h
+++ b/src/map/packets_keys_main.h
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2015 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -18,8 +18,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef MAP_PACKETS_KEYS_H
-#define MAP_PACKETS_KEYS_H
+#ifndef MAP_PACKETS_MAIN_KEYS_H
+#define MAP_PACKETS_MAIN_KEYS_H
#ifndef packetKeys
#define packetKeys(a,b,c)
@@ -27,222 +27,169 @@
/* PacketKeys: http://herc.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ */
-// 2010-11-23aRagexe, 2010-11-23aRagexeRE
-#if PACKETVER == 20101123
- packetKeys(0x49357D72,0x22C370A1,0x5F836591);
-#endif
-
-// 2010-11-24aRagexe, 2010-11-24aRagexeRE, 2010-11-24bRagexeRE, 2010-11-24dRagexe, 2010-11-24eRagexe, 2010-11-24fRagexe
-#if PACKETVER == 20101124
- packetKeys(0x49357D72,0x22C370A1,0x5F836591);
-#endif
+/* This file is autogenerated, please do not commit manual changes */
-// 2010-11-26aRagexe, 2010-11-26aRagexeRE
-#if PACKETVER == 20101126
+// 2010-11-23aRagexe, 2010-11-24aRagexe, 2010-11-24dRagexe, 2010-11-24eRagexe, 2010-11-24fRagexe, 2010-11-26aRagexe
+#if PACKETVER == 20101123 || \
+ PACKETVER == 20101124 || \
+ PACKETVER == 20101126
packetKeys(0x49357D72,0x22C370A1,0x5F836591);
#endif
-// 2010-11-30aRagexe, 2010-11-30aRagexeRE
+// 2010-11-30aRagexe
#if PACKETVER == 20101130
packetKeys(0x3726593C,0x0EFD5EE8,0x79036DF9);
#endif
-// 2010-12-07aRagexeRE, 2010-12-07bRagexe
+// 2010-12-07bRagexe
#if PACKETVER == 20101207
packetKeys(0x66111112,0x2B7B53AA,0x04E76DF8);
#endif
-// 2010-12-14aRagexe, 2010-12-14aRagexeRE
+// 2010-12-14aRagexe
#if PACKETVER == 20101214
packetKeys(0x5E535D06,0x4E297F0E,0x400B6AD8);
#endif
-// 2010-12-21aRagexe, 2010-12-21aRagexeRE
+// 2010-12-21aRagexe
#if PACKETVER == 20101221
packetKeys(0x0448466A,0x41554AC9,0x5B4710B2);
#endif
-// 2010-12-28aRagexe, 2010-12-28aRagexeRE
+// 2010-12-28aRagexe
#if PACKETVER == 20101228
packetKeys(0x50C638A5,0x4BF86B20,0x480C3746);
#endif
-// 2011-01-04aRagexe, 2011-01-04aRagexeRE
+// 2011-01-04aRagexe
#if PACKETVER == 20110104
packetKeys(0x55DB401F,0x047D4E02,0x6D8F2EA3);
#endif
-// 2011-01-11aRagexe, 2011-01-11aRagexeRE
+// 2011-01-11aRagexe
#if PACKETVER == 20110111
packetKeys(0x2D5F6302,0x2A361CD6,0x39D661D6);
#endif
-// 2011-01-18aRagexe, 2011-01-18aRagexeRE
+// 2011-01-18aRagexe
#if PACKETVER == 20110118
packetKeys(0x3C777D2D,0x00541A1D,0x5E0053A2);
#endif
-// 2011-01-25aRagexe, 2011-01-25aRagexeRE
-#if PACKETVER == 20110125
- packetKeys(0x6BB84BB0,0x4C004382,0x10AE3260);
-#endif
-
-// 2011-01-26aRagexe, 2011-01-26aRagexeRE, 2011-01-26bRagexe, 2011-01-26bRagexeRE
-#if PACKETVER == 20110126
+// 2011-01-25aRagexe, 2011-01-26aRagexe, 2011-01-26bRagexe, 2011-01-31aRagexe
+#if PACKETVER == 20110125 || \
+ PACKETVER == 20110126 || \
+ PACKETVER == 20110131
packetKeys(0x6BB84BB0,0x4C004382,0x10AE3260);
#endif
-// 2011-01-31aRagexe, 2011-01-31aRagexeRE, 2011-01-31bRagexe, 2011-01-31bRagexeRE, 2011-01-31cRagexeRE
-#if PACKETVER == 20110131
- packetKeys(0x6BB84BB0,0x4C004382,0x10AE3260);
-#endif
-
-// 2011-02-01aRagexe
-#if PACKETVER == 20110201
+// 2011-01-31bRagexe, 2011-02-01aRagexe
+#if PACKETVER == 20110131 || \
+ PACKETVER == 20110201
packetKeys(0x68871E62,0x60D17266,0x74726DAA);
#endif
-// 2011-02-08aRagexe, 2011-02-08aRagexeRE
-#if PACKETVER == 20110208
- packetKeys(0x72BA4E9D,0x281E1DF1,0x208255AA);
-#endif
-
-// 2011-02-10aRagexe, 2011-02-10bRagexe
-#if PACKETVER == 20110210
+// 2011-02-08aRagexe, 2011-02-10aRagexe, 2011-02-10bRagexe
+#if PACKETVER == 20110208 || \
+ PACKETVER == 20110210
packetKeys(0x72BA4E9D,0x281E1DF1,0x208255AA);
#endif
-// 2011-02-15aRagexe, 2011-02-15aRagexeRE
+// 2011-02-15aRagexe
#if PACKETVER == 20110215
packetKeys(0x1B174D76,0x32005014,0x7B8B72D5);
#endif
-// 2011-02-22aRagexe, 2011-02-22aRagexeRE
-#if PACKETVER == 20110222
+// 2011-02-22aRagexe, 2011-02-23aRagexe, 2011-02-23bRagexe, 2011-02-24aRagexe, 2011-02-25aRagexe, 2011-02-25bRagexe
+#if PACKETVER == 20110222 || \
+ PACKETVER == 20110223 || \
+ PACKETVER == 20110224 || \
+ PACKETVER == 20110225
packetKeys(0x48F73B56,0x155F7D66,0x44AB57CE);
#endif
-// 2011-02-23aRagexe, 2011-02-23aRagexeRE, 2011-02-23bRagexe, 2011-02-23bRagexeRE
-#if PACKETVER == 20110223
- packetKeys(0x48F73B56,0x155F7D66,0x44AB57CE);
-#endif
-
-// 2011-02-24aRagexe, 2011-02-24aRagexeRE
-#if PACKETVER == 20110224
- packetKeys(0x48F73B56,0x155F7D66,0x44AB57CE);
-#endif
-
-// 2011-02-25aRagexe, 2011-02-25aRagexeRE, 2011-02-25bRagexe
-#if PACKETVER == 20110225
- packetKeys(0x48F73B56,0x155F7D66,0x44AB57CE);
-#endif
-
-// 2011-02-28aRagexe, 2011-02-28aRagexeRE
+// 2011-02-28aRagexe
#if PACKETVER == 20110228
packetKeys(0x26385EBF,0x7A8C7534,0x60AE2C34);
#endif
-// 2011-03-08aRagexe, 2011-03-08aRagexeRE
-#if PACKETVER == 20110308
+// 2011-03-08aRagexe, 2011-03-09aRagexe, 2011-03-09bRagexe, 2011-03-09cRagexe, 2011-03-09dRagexe
+#if PACKETVER == 20110308 || \
+ PACKETVER == 20110309
packetKeys(0x003F1B20,0x7A1E12A3,0x34994AAD);
#endif
-// 2011-03-09aRagexe, 2011-03-09aRagexeRE, 2011-03-09bRagexe, 2011-03-09bRagexeRE, 2011-03-09cRagexe, 2011-03-09cRagexeRE, 2011-03-09dRagexe, 2011-03-09dRagexeRE
-#if PACKETVER == 20110309
- packetKeys(0x003F1B20,0x7A1E12A3,0x34994AAD);
-#endif
-
-// 2011-03-15aRagexe, 2011-03-15aRagexeRE
-#if PACKETVER == 20110315
+// 2011-03-15aRagexe, 2011-03-16aRagexe
+#if PACKETVER == 20110315 || \
+ PACKETVER == 20110316
packetKeys(0x62967D7D,0x34833D1A,0x26D45ECA);
#endif
-// 2011-03-16aRagexe
-#if PACKETVER == 20110316
- packetKeys(0x62967D7D,0x34833D1A,0x26D45ECA);
-#endif
-
-// 2011-03-22aRagexe, 2011-03-22aRagexeRE
+// 2011-03-22aRagexe
#if PACKETVER == 20110322
packetKeys(0x5870617C,0x638D5376,0x739F4817);
#endif
-// 2011-03-29aRagexe, 2011-03-29aRagexeRE
-#if PACKETVER == 20110329
+// 2011-03-29aRagexe, 2011-03-30aRagexe
+#if PACKETVER == 20110329 || \
+ PACKETVER == 20110330
packetKeys(0x06900BB7,0x45DB687B,0x197B017B);
#endif
-// 2011-03-30aRagexe, 2011-03-30aRagexeRE, 2011-03-30cRagexeRE
-#if PACKETVER == 20110330
- packetKeys(0x06900BB7,0x45DB687B,0x197B017B);
-#endif
-
-// 2011-04-05aRagexe, 2011-04-05aRagexeRE
+// 2011-04-05aRagexe
#if PACKETVER == 20110405
packetKeys(0x248D5C37,0x1C6A1B37,0x1F644FDB);
#endif
-// 2011-04-12aRagexeRE, 2011-04-12bRagexe
+// 2011-04-12bRagexe
#if PACKETVER == 20110412
packetKeys(0x3DE86BFC,0x0DD47F80,0x42481C9B);
#endif
-// 2011-04-19aRagexe, 2011-04-19aRagexeRE
+// 2011-04-19aRagexe
#if PACKETVER == 20110419
packetKeys(0x26073204,0x62013A51,0x22AC58E0);
#endif
-// 2011-04-26aRagexe, 2011-04-26aRagexeRE
+// 2011-04-26aRagexe
#if PACKETVER == 20110426
packetKeys(0x392813F9,0x09905054,0x40DB732E);
#endif
-// 2011-05-03aRagexe, 2011-05-03aRagexeRE
+// 2011-05-03aRagexe
#if PACKETVER == 20110503
packetKeys(0x28BE32EE,0x1D506FCB,0x63832421);
#endif
-// 2011-05-11aRagexe, 2011-05-11aRagexeRE
+// 2011-05-11aRagexe
#if PACKETVER == 20110511
packetKeys(0x6A715733,0x3C5C0D74,0x408A48EC);
#endif
-// 2011-05-17aRagexe, 2011-05-17bRagexeRE
+// 2011-05-17aRagexe
#if PACKETVER == 20110517
packetKeys(0x07FE0C72,0x46766BAD,0x5EB5126A);
#endif
-// 2011-05-23aRagexe
-#if PACKETVER == 20110523
- packetKeys(0x69166916,0x69166916,0x69166916);
-#endif
-
-// 2011-05-26aRagexeRE, 2011-05-26bRagexe
-#if PACKETVER == 20110526
+// 2011-05-23aRagexe, 2011-05-26bRagexe
+#if PACKETVER == 20110523 || \
+ PACKETVER == 20110526
packetKeys(0x69166916,0x69166916,0x69166916);
#endif
-// 2011-05-31aRagexe, 2011-05-31aRagexeRE
+// 2011-05-31aRagexe
#if PACKETVER == 20110531
packetKeys(0x5ABA2C7C,0x3CD22073,0x78953988);
#endif
-// 2011-06-07aRagexe, 2011-06-07aRagexeRE
-#if PACKETVER == 20110607
+// 2011-06-07aRagexe, 2011-06-08aRagexe, 2011-06-08bRagexe, 2011-06-08cRagexe, 2011-06-09aRagexe
+#if PACKETVER == 20110607 || \
+ PACKETVER == 20110608 || \
+ PACKETVER == 20110609
packetKeys(0x76B0426C,0x0DD74DEB,0x1F92228E);
#endif
-// 2011-06-08aRagexe, 2011-06-08aRagexeRE, 2011-06-08bRagexe, 2011-06-08bRagexeRE, 2011-06-08cRagexe, 2011-06-08cRagexeRE
-#if PACKETVER == 20110608
- packetKeys(0x76B0426C,0x0DD74DEB,0x1F92228E);
-#endif
-
-// 2011-06-09aRagexe, 2011-06-09aRagexeRE
-#if PACKETVER == 20110609
- packetKeys(0x76B0426C,0x0DD74DEB,0x1F92228E);
-#endif
-
-// 2011-06-14aRagexe, 2011-06-14bRagexeRE
+// 2011-06-14aRagexe
#if PACKETVER == 20110614
packetKeys(0x5749027B,0x71710972,0x5B096475);
#endif
@@ -262,13 +209,9 @@
packetKeys(0x48801A5E,0x68FC7726,0x081D7F6E);
#endif
-// 2011-07-11bRagexe
-#if PACKETVER == 20110711
- packetKeys(0x489C544B,0x33BA1C25,0x2DE66E4E);
-#endif
-
-// 2011-07-13aRagexe, 2011-07-13aRagexeRE, 2011-07-13bRagexe, 2011-07-13bRagexeRE, 2011-07-13cRagexeRE
-#if PACKETVER == 20110713
+// 2011-07-11bRagexe, 2011-07-13aRagexe, 2011-07-13bRagexe
+#if PACKETVER == 20110711 || \
+ PACKETVER == 20110713
packetKeys(0x489C544B,0x33BA1C25,0x2DE66E4E);
#endif
@@ -277,7 +220,7 @@
packetKeys(0x08464674,0x1EEB3BD5,0x33395199);
#endif
-// 2011-07-26aRagexe, 2011-07-26aRagexeRE
+// 2011-07-26aRagexe
#if PACKETVER == 20110726
packetKeys(0x41E5730B,0x119C6C11,0x5356524A);
#endif
@@ -292,23 +235,15 @@
packetKeys(0x742A559A,0x047F425D,0x5C8C2CA0);
#endif
-// 2011-08-16aRagexe, 2011-08-16aRagexeRE
-#if PACKETVER == 20110816
- packetKeys(0x053D5CED,0x3DED6DED,0x6DED6DED);
-#endif
-
-// 2011-08-17aRagexe, 2011-08-17aRagexeRE, 2011-08-17bRagexe, 2011-08-17bRagexeRE
-#if PACKETVER == 20110817
+// 2011-08-16aRagexe, 2011-08-16aRagexeRE, 2011-08-17aRagexe, 2011-08-17aRagexeRE, 2011-08-17bRagexe, 2011-08-17bRagexeRE
+#if PACKETVER == 20110816 || \
+ PACKETVER == 20110817
packetKeys(0x053D5CED,0x3DED6DED,0x6DED6DED);
#endif
-// 2011-08-23aRagexe, 2011-08-23aRagexeRE
-#if PACKETVER == 20110823
- packetKeys(0x35C91401,0x262A5556,0x28FA03AA);
-#endif
-
-// 2011-08-24aRagexe, 2011-08-24aRagexeRE, 2011-08-24bRagexeRE
-#if PACKETVER == 20110824
+// 2011-08-23aRagexe, 2011-08-23aRagexeRE, 2011-08-24aRagexe, 2011-08-24aRagexeRE, 2011-08-24bRagexeRE
+#if PACKETVER == 20110823 || \
+ PACKETVER == 20110824
packetKeys(0x35C91401,0x262A5556,0x28FA03AA);
#endif
@@ -317,13 +252,9 @@
packetKeys(0x3AD67ED0,0x44703C69,0x6F876809);
#endif
-// 2011-09-06aRagexe, 2011-09-06aRagexeRE
-#if PACKETVER == 20110906
- packetKeys(0x350124EC,0x39A14595,0x0DE56125);
-#endif
-
-// 2011-09-14aRagexe, 2011-09-14aRagexeRE
-#if PACKETVER == 20110914
+// 2011-09-06aRagexe, 2011-09-06aRagexeRE, 2011-09-14aRagexe, 2011-09-14aRagexeRE
+#if PACKETVER == 20110906 || \
+ PACKETVER == 20110914
packetKeys(0x350124EC,0x39A14595,0x0DE56125);
#endif
@@ -332,48 +263,28 @@
packetKeys(0x79C91A12,0x20450CC0,0x584B2A38);
#endif
-// 2011-09-28aRagexe, 2011-09-28aRagexe-retry, 2011-09-28aRagexeRE
-#if PACKETVER == 20110928
+// 2011-09-28aRagexe, 2011-09-28aRagexe-retry, 2011-09-28aRagexeRE, 2011-09-29aRagexe, 2011-09-29aRagexeRE
+#if PACKETVER == 20110928 || \
+ PACKETVER == 20110929
packetKeys(0x26567512,0x4B0732DF,0x57D266C6);
#endif
-// 2011-09-29aRagexe, 2011-09-29aRagexeRE
-#if PACKETVER == 20110929
- packetKeys(0x26567512,0x4B0732DF,0x57D266C6);
-#endif
-
-// 2011-10-04aRagexe, 2011-10-04aRagexeRE
-#if PACKETVER == 20111004
+// 2011-10-04aRagexe, 2011-10-04aRagexeRE, 2011-10-05aRagexe, 2011-10-05aRagexeRE
+#if PACKETVER == 20111004 || \
+ PACKETVER == 20111005
packetKeys(0x291E6762,0x77CD391A,0x60AC2F16);
#endif
-// 2011-10-05aRagexe, 2011-10-05aRagexeRE
-#if PACKETVER == 20111005
- packetKeys(0x291E6762,0x77CD391A,0x60AC2F16);
-#endif
-
-// 2011-10-10aRagexe, 2011-10-10bRagexeRE
-#if PACKETVER == 20111010
+// 2011-10-10aRagexe, 2011-10-10bRagexeRE, 2011-10-12aRagexeRE, 2011-10-12bRagexe
+#if PACKETVER == 20111010 || \
+ PACKETVER == 20111012
packetKeys(0x7F3C2D29,0x59B01DE6,0x1DBB44CA);
#endif
-// 2011-10-12aRagexeRE, 2011-10-12bRagexe
-#if PACKETVER == 20111012
- packetKeys(0x7F3C2D29,0x59B01DE6,0x1DBB44CA);
-#endif
-
-// 2011-10-17aRagexe, 2011-10-17aRagexeRE
-#if PACKETVER == 20111017
- packetKeys(0x357D55DC,0x5A8D759F,0x245C30F5);
-#endif
-
-// 2011-10-19aRagexeRE, 2011-10-19bRagexeRE
-#if PACKETVER == 20111019
- packetKeys(0x357D55DC,0x5A8D759F,0x245C30F5);
-#endif
-
-// 2011-10-21aRagexe, 2011-10-21aRagexeRE, 2011-10-21cRagexe
-#if PACKETVER == 20111021
+// 2011-10-17aRagexe, 2011-10-17aRagexeRE, 2011-10-19aRagexeRE, 2011-10-19bRagexeRE, 2011-10-21aRagexe, 2011-10-21aRagexeRE, 2011-10-21cRagexe
+#if PACKETVER == 20111017 || \
+ PACKETVER == 20111019 || \
+ PACKETVER == 20111021
packetKeys(0x357D55DC,0x5A8D759F,0x245C30F5);
#endif
@@ -382,43 +293,27 @@
packetKeys(0x50AE1A63,0x3CE579B5,0x29C10406);
#endif
-// 2011-11-01cRagexe, 2011-11-01cRagexeRE
-#if PACKETVER == 20111101
+// 2011-11-01cRagexe, 2011-11-01cRagexeRE, 2011-11-02aRagexe, 2011-11-02aRagexeRE
+#if PACKETVER == 20111101 || \
+ PACKETVER == 20111102
packetKeys(0x5324329D,0x5D545D52,0x06137269);
#endif
-// 2011-11-02aRagexe, 2011-11-02aRagexeRE
-#if PACKETVER == 20111102
- packetKeys(0x5324329D,0x5D545D52,0x06137269);
-#endif
-
-// 2011-11-08aRagexe, 2011-11-08aRagexeRE
-#if PACKETVER == 20111108
+// 2011-11-08aRagexe, 2011-11-08aRagexeRE, 2011-11-09aRagexe, 2011-11-09aRagexeRE, 2011-11-09bRagexe, 2011-11-09cRagexe, 2011-11-09dRagexe, 2011-11-09eRagexe
+#if PACKETVER == 20111108 || \
+ PACKETVER == 20111109
packetKeys(0x0B642BDA,0x6ECB1D1C,0x61C7454B);
#endif
-// 2011-11-09aRagexe, 2011-11-09aRagexeRE, 2011-11-09bRagexe, 2011-11-09cRagexe, 2011-11-09dRagexe, 2011-11-09eRagexe
-#if PACKETVER == 20111109
- packetKeys(0x0B642BDA,0x6ECB1D1C,0x61C7454B);
-#endif
-
-// 2011-11-14aRagexe, 2011-11-14aRagexeRE
-#if PACKETVER == 20111114
- packetKeys(0x419D0DB0,0x74916BF4,0x027371B4);
-#endif
-
-// 2011-11-16aRagexe, 2011-11-16aRagexeRE
-#if PACKETVER == 20111116
+// 2011-11-14aRagexe, 2011-11-14aRagexeRE, 2011-11-16aRagexe, 2011-11-16aRagexeRE
+#if PACKETVER == 20111114 || \
+ PACKETVER == 20111116
packetKeys(0x419D0DB0,0x74916BF4,0x027371B4);
#endif
-// 2011-11-22aRagexe, 2011-11-22aRagexeRE
-#if PACKETVER == 20111122
- packetKeys(0x3B550F07,0x1F666C7C,0x60304EF5);
-#endif
-
-// 2011-11-23aRagexe
-#if PACKETVER == 20111123
+// 2011-11-22aRagexe, 2011-11-22aRagexeRE, 2011-11-23aRagexe
+#if PACKETVER == 20111122 || \
+ PACKETVER == 20111123
packetKeys(0x3B550F07,0x1F666C7C,0x60304EF5);
#endif
@@ -427,13 +322,9 @@
packetKeys(0x2A610886,0x3E09165E,0x57C11888);
#endif
-// 2011-12-13aRagexe, 2011-12-13aRagexeRE
-#if PACKETVER == 20111213
- packetKeys(0x5151306B,0x7AE32886,0x53060628);
-#endif
-
-// 2011-12-14aRagexe, 2011-12-14aRagexeRE, 2011-12-14bRagexeRE, 2011-12-14cRagexeRE
-#if PACKETVER == 20111214
+// 2011-12-13aRagexe, 2011-12-13aRagexeRE, 2011-12-14aRagexe, 2011-12-14aRagexeRE, 2011-12-14bRagexeRE, 2011-12-14cRagexeRE
+#if PACKETVER == 20111213 || \
+ PACKETVER == 20111214
packetKeys(0x5151306B,0x7AE32886,0x53060628);
#endif
@@ -442,23 +333,15 @@
packetKeys(0x05D53871,0x7D0027B4,0x29975333);
#endif
-// 2011-12-27aRagexe, 2011-12-27aRagexeRE
-#if PACKETVER == 20111227
+// 2011-12-27aRagexe, 2011-12-27aRagexeRE, 2011-12-28aRagexe, 2011-12-28aRagexeRE
+#if PACKETVER == 20111227 || \
+ PACKETVER == 20111228
packetKeys(0x0FF87E93,0x6CFF7860,0x3A3D1DEC);
#endif
-// 2011-12-28aRagexe, 2011-12-28aRagexeRE
-#if PACKETVER == 20111228
- packetKeys(0x0FF87E93,0x6CFF7860,0x3A3D1DEC);
-#endif
-
-// 2012-01-03aRagexe, 2012-01-03bRagexeRE
-#if PACKETVER == 20120103
- packetKeys(0x262034A1,0x674542A5,0x73A50BA5);
-#endif
-
-// 2012-01-04aRagexe, 2012-01-04aRagexeRE, 2012-01-04bRagexe
-#if PACKETVER == 20120104
+// 2012-01-03aRagexe, 2012-01-03bRagexeRE, 2012-01-04aRagexe, 2012-01-04aRagexeRE, 2012-01-04bRagexe
+#if PACKETVER == 20120103 || \
+ PACKETVER == 20120104
packetKeys(0x262034A1,0x674542A5,0x73A50BA5);
#endif
@@ -467,13 +350,9 @@
packetKeys(0x2B412AFC,0x4FF94487,0x6705339D);
#endif
-// 2012-01-17aRagexe, 2012-01-17aRagexeRE
-#if PACKETVER == 20120117
- packetKeys(0x24E32C2E,0x48DD17A5,0x64F8771A);
-#endif
-
-// 2012-01-18aRagexe
-#if PACKETVER == 20120118
+// 2012-01-17aRagexe, 2012-01-17aRagexeRE, 2012-01-18aRagexe
+#if PACKETVER == 20120117 || \
+ PACKETVER == 20120118
packetKeys(0x24E32C2E,0x48DD17A5,0x64F8771A);
#endif
@@ -482,63 +361,35 @@
packetKeys(0x504345D0,0x3D427B1B,0x794C2DCC);
#endif
-// 2012-01-31aRagexe, 2012-01-31cRagexeRE
-#if PACKETVER == 20120131
- packetKeys(0x2CFC0A71,0x2BA91D8D,0x087E39E0);
-#endif
-
-// 2012-02-01aRagexeRE
-#if PACKETVER == 20120201
+// 2012-01-31aRagexe, 2012-01-31cRagexeRE, 2012-02-01aRagexeRE, 2012-02-02aRagexe, 2012-02-02aRagexeRE, 2012-02-02bRagexe, 2012-02-02bRagexeRE
+#if PACKETVER == 20120131 || \
+ PACKETVER == 20120201 || \
+ PACKETVER == 20120202
packetKeys(0x2CFC0A71,0x2BA91D8D,0x087E39E0);
#endif
-// 2012-02-02aRagexe, 2012-02-02aRagexeRE, 2012-02-02bRagexe, 2012-02-02bRagexeRE
-#if PACKETVER == 20120202
- packetKeys(0x2CFC0A71,0x2BA91D8D,0x087E39E0);
-#endif
-
-// 2012-02-07bRagexe, 2012-02-07bRagexeRE
-#if PACKETVER == 20120207
+// 2012-02-07bRagexe, 2012-02-07bRagexeRE, 2012-02-08aRagexe, 2012-02-09aRagexe
+#if PACKETVER == 20120207 || \
+ PACKETVER == 20120208 || \
+ PACKETVER == 20120209
packetKeys(0x1D373F5D,0x5ACD604D,0x1C4D7C4D);
#endif
-// 2012-02-08aRagexe
-#if PACKETVER == 20120208
- packetKeys(0x1D373F5D,0x5ACD604D,0x1C4D7C4D);
-#endif
-
-// 2012-02-09aRagexe
-#if PACKETVER == 20120209
- packetKeys(0x1D373F5D,0x5ACD604D,0x1C4D7C4D);
-#endif
-
-// 2012-02-14bRagexe, 2012-02-14bRagexeRE
-#if PACKETVER == 20120214
- packetKeys(0x7A255EFA,0x30977276,0x2D4A0448);
-#endif
-
-// 2012-02-15aRagexe
-#if PACKETVER == 20120215
+// 2012-02-14bRagexe, 2012-02-14bRagexeRE, 2012-02-15aRagexe
+#if PACKETVER == 20120214 || \
+ PACKETVER == 20120215
packetKeys(0x7A255EFA,0x30977276,0x2D4A0448);
#endif
-// 2012-02-21aRagexe, 2012-02-21aRagexeRE
-#if PACKETVER == 20120221
- packetKeys(0x1CA5130F,0x43ED240A,0x7FEA3BE0);
-#endif
-
-// 2012-02-22aRagexe, 2012-02-22aRagexeRE
-#if PACKETVER == 20120222
+// 2012-02-21aRagexe, 2012-02-21aRagexeRE, 2012-02-22aRagexe, 2012-02-22aRagexeRE
+#if PACKETVER == 20120221 || \
+ PACKETVER == 20120222
packetKeys(0x1CA5130F,0x43ED240A,0x7FEA3BE0);
#endif
-// 2012-02-28bRagexe, 2012-02-28bRagexeRE
-#if PACKETVER == 20120228
- packetKeys(0x520B4C64,0x2800407D,0x47651458);
-#endif
-
-// 2012-02-29aRagexe, 2012-02-29aRagexeRE
-#if PACKETVER == 20120229
+// 2012-02-28bRagexe, 2012-02-28bRagexeRE, 2012-02-29aRagexe, 2012-02-29aRagexeRE
+#if PACKETVER == 20120228 || \
+ PACKETVER == 20120229
packetKeys(0x520B4C64,0x2800407D,0x47651458);
#endif
@@ -552,13 +403,9 @@
packetKeys(0x689C1729,0x11812639,0x60F82967);
#endif
-// 2012-03-20aRagexe, 2012-03-20aRagexeRE
-#if PACKETVER == 20120320
- packetKeys(0x21F9683F,0x710C5CA5,0x1FD910E9);
-#endif
-
-// 2012-03-21aRagexeRE
-#if PACKETVER == 20120321
+// 2012-03-20aRagexe, 2012-03-20aRagexeRE, 2012-03-21aRagexeRE
+#if PACKETVER == 20120320 || \
+ PACKETVER == 20120321
packetKeys(0x21F9683F,0x710C5CA5,0x1FD910E9);
#endif
@@ -577,13 +424,9 @@
packetKeys(0x01581359,0x452D6FFA,0x6AFB6E2E);
#endif
-// 2012-04-17aRagexe, 2012-04-17aRagexeRE
-#if PACKETVER == 20120417
- packetKeys(0x01540E48,0x13041224,0x31247924);
-#endif
-
-// 2012-04-18aRagexeRE
-#if PACKETVER == 20120418
+// 2012-04-17aRagexe, 2012-04-17aRagexeRE, 2012-04-18aRagexeRE
+#if PACKETVER == 20120417 || \
+ PACKETVER == 20120418
packetKeys(0x01540E48,0x13041224,0x31247924);
#endif
@@ -592,23 +435,15 @@
packetKeys(0x411D1DBB,0x4CBA4848,0x1A432FC4);
#endif
-// 2012-05-02aRagexeRE
-#if PACKETVER == 20120502
- packetKeys(0x37A91D19,0x10190019,0x00190019);
-#endif
-
-// 2012-05-03aRagexe, 2012-05-03aRagexeRE, 2012-05-03bRagexe
-#if PACKETVER == 20120503
+// 2012-05-02aRagexeRE, 2012-05-03aRagexe, 2012-05-03aRagexeRE, 2012-05-03bRagexe
+#if PACKETVER == 20120502 || \
+ PACKETVER == 20120503
packetKeys(0x37A91D19,0x10190019,0x00190019);
#endif
-// 2012-05-08aRagexe, 2012-05-08aRagexeRE
-#if PACKETVER == 20120508
- packetKeys(0x16CF3301,0x1F472B9B,0x0B4A3CD2);
-#endif
-
-// 2012-05-09aRagexeRE, 2012-05-09bRagexeRE
-#if PACKETVER == 20120509
+// 2012-05-08aRagexe, 2012-05-08aRagexeRE, 2012-05-09aRagexeRE, 2012-05-09bRagexeRE
+#if PACKETVER == 20120508 || \
+ PACKETVER == 20120509
packetKeys(0x16CF3301,0x1F472B9B,0x0B4A3CD2);
#endif
@@ -617,73 +452,49 @@
packetKeys(0x4A715EF9,0x79103E4F,0x405C1238);
#endif
-// 2012-05-22aRagexe
-#if PACKETVER == 20120522
- packetKeys(0x70EB4CCB,0x0487713C,0x398D4B08);
-#endif
-
-// 2012-05-23aRagexe, 2012-05-23aRagexeRE, 2012-05-23bRagexeRE
-#if PACKETVER == 20120523
- packetKeys(0x70EB4CCB,0x0487713C,0x398D4B08);
-#endif
-
-// 2012-05-25aRagexeRE
-#if PACKETVER == 20120525
+// 2012-05-22aRagexe, 2012-05-23aRagexe, 2012-05-23aRagexeRE, 2012-05-23bRagexeRE, 2012-05-25aRagexeRE
+#if PACKETVER == 20120522 || \
+ PACKETVER == 20120523 || \
+ PACKETVER == 20120525
packetKeys(0x70EB4CCB,0x0487713C,0x398D4B08);
#endif
-// 2012-05-29bRagexe, 2012-05-29bRagexeRE, 2012-05-29bragexe
+// 2012-05-29bRagexe, 2012-05-29bRagexeRE
#if PACKETVER == 20120529
packetKeys(0x53415DDE,0x34953E16,0x27623DF2);
#endif
-// 2012-06-01aRagexeRE
-#if PACKETVER == 20120601
- packetKeys(0x68CA3080,0x31B74BDD,0x505208F1);
-#endif
-
-// 2012-06-04aRagexe, 2012-06-04aragexe
-#if PACKETVER == 20120604
- packetKeys(0x68CA3080,0x31B74BDD,0x505208F1);
-#endif
-
-// 2012-06-05aRagexeRE
-#if PACKETVER == 20120605
+// 2012-06-01aRagexeRE, 2012-06-04aRagexe, 2012-06-05aRagexeRE
+#if PACKETVER == 20120601 || \
+ PACKETVER == 20120604 || \
+ PACKETVER == 20120605
packetKeys(0x68CA3080,0x31B74BDD,0x505208F1);
#endif
-// 2012-06-12aRagexe, 2012-06-12aRagexeRE, 2012-06-12aragexe
+// 2012-06-12aRagexe, 2012-06-12aRagexeRE
#if PACKETVER == 20120612
packetKeys(0x32E45D64,0x35643564,0x35643564);
#endif
-// 2012-06-18aRagexe, 2012-06-18aRagexeRE, 2012-06-18aragexe
+// 2012-06-18aRagexe, 2012-06-18aRagexeRE
#if PACKETVER == 20120618
packetKeys(0x261F261F,0x261F261F,0x261F261F);
#endif
-// 2012-06-26aRagexe, 2012-06-26aRagexeRE, 2012-06-26aragexe
-#if PACKETVER == 20120626
+// 2012-06-26aRagexe, 2012-06-26aRagexeRE, 2012-06-27aRagexe, 2012-06-27aRagexeRE
+#if PACKETVER == 20120626 || \
+ PACKETVER == 20120627
packetKeys(0x02277E66,0x045723F1,0x7107392C);
#endif
-// 2012-06-27aRagexe, 2012-06-27aRagexeRE, 2012-06-27aragexe
-#if PACKETVER == 20120627
- packetKeys(0x02277E66,0x045723F1,0x7107392C);
-#endif
-
-// 2012-07-02aRagexe, 2012-07-02aRagexeRE, 2012-07-02aragexe
+// 2012-07-02aRagexe, 2012-07-02aRagexeRE
#if PACKETVER == 20120702
packetKeys(0x25733B31,0x53486CFD,0x398649BD);
#endif
-// 2012-07-10aRagexe, 2012-07-10aRagexeRE
-#if PACKETVER == 20120710
- packetKeys(0x0E8B7AFB,0x6930362D,0x42D33A57);
-#endif
-
-// 2012-07-12aRagexe, 2012-07-12aRagexeRE
-#if PACKETVER == 20120712
+// 2012-07-10aRagexe, 2012-07-10aRagexeRE, 2012-07-12aRagexe, 2012-07-12aRagexeRE
+#if PACKETVER == 20120710 || \
+ PACKETVER == 20120712
packetKeys(0x0E8B7AFB,0x6930362D,0x42D33A57);
#endif
@@ -737,23 +548,15 @@
packetKeys(0x72E00F24,0x4EA02D80,0x7C803480);
#endif
-// 2012-09-25aRagexe, 2012-09-25aRagexeRE
-#if PACKETVER == 20120925
+// 2012-09-25aRagexe, 2012-09-25aRagexeRE, 2012-09-26aRagexe, 2012-09-26aRagexeRE
+#if PACKETVER == 20120925 || \
+ PACKETVER == 20120926
packetKeys(0x43A66E22,0x36C2229F,0x08172ECE);
#endif
-// 2012-09-26aRagexe, 2012-09-26aRagexeRE
-#if PACKETVER == 20120926
- packetKeys(0x43A66E22,0x36C2229F,0x08172ECE);
-#endif
-
-// 2012-10-10aRagexe, 2012-10-10aRagexeRE, 2012-10-10bRagexe, 2012-10-10bRagexeRE
-#if PACKETVER == 20121010
- packetKeys(0x169733E2,0x4C4640DC,0x31636531);
-#endif
-
-// 2012-10-11aRagexeRE
-#if PACKETVER == 20121011
+// 2012-10-10aRagexe, 2012-10-10aRagexeRE, 2012-10-10bRagexe, 2012-10-10bRagexeRE, 2012-10-11aRagexeRE
+#if PACKETVER == 20121010 || \
+ PACKETVER == 20121011
packetKeys(0x169733E2,0x4C4640DC,0x31636531);
#endif
@@ -812,13 +615,9 @@
packetKeys(0x71773018,0x36A14EEB,0x28CD5A20);
#endif
-// 2013-01-03aRagexe, 2013-01-03aRagexeRE
-#if PACKETVER == 20130103
- packetKeys(0x1E1A559A,0x199A799A,0x799A799A);
-#endif
-
-// 2013-01-07aRagexe
-#if PACKETVER == 20130107
+// 2013-01-03aRagexe, 2013-01-03aRagexeRE, 2013-01-07aRagexe
+#if PACKETVER == 20130103 || \
+ PACKETVER == 20130107
packetKeys(0x1E1A559A,0x199A799A,0x799A799A);
#endif
@@ -827,13 +626,9 @@
packetKeys(0x6435360F,0x0A283678,0x64A04AC7);
#endif
-// 2013-01-15aRagexeRE, 2013-01-15bRagexe
-#if PACKETVER == 20130115
- packetKeys(0x273C25CD,0x06AA48AF,0x45A01BD4);
-#endif
-
-// 2013-01-16aRagexe, 2013-01-16aRagexeRE, 2013-01-16bRagexe
-#if PACKETVER == 20130116
+// 2013-01-15aRagexeRE, 2013-01-15bRagexe, 2013-01-16aRagexe, 2013-01-16aRagexeRE, 2013-01-16bRagexe
+#if PACKETVER == 20130115 || \
+ PACKETVER == 20130116
packetKeys(0x273C25CD,0x06AA48AF,0x45A01BD4);
#endif
@@ -922,17 +717,17 @@
packetKeys(0x75794A38,0x58A96BC1,0x296E6FB8);
#endif
-// 2013-05-22Ragexe, 2013-05-22aRagexe, 2013-05-22aRagexeRE
+// 2013-05-22aRagexe, 2013-05-22aRagexeRE
#if PACKETVER == 20130522
packetKeys(0x6948050B,0x06511D9D,0x725D4DF1);
#endif
-// 2013-05-29Ragexe, 2013-05-29aRagexe, 2013-05-29aRagexeRE
+// 2013-05-29aRagexe, 2013-05-29aRagexeRE
#if PACKETVER == 20130529
packetKeys(0x023A6C87,0x14BF1F1E,0x5CC70CC9);
#endif
-// 2013-06-05Ragexe, 2013-06-05aRagexe, 2013-06-05bRagexe, 2013-06-05cRagexeRE
+// 2013-06-05aRagexe, 2013-06-05bRagexe, 2013-06-05cRagexeRE
#if PACKETVER == 20130605
packetKeys(0x646E08D9,0x5F153AB5,0x61B509B5);
#endif
@@ -942,12 +737,12 @@
packetKeys(0x6D166F66,0x3C000FCF,0x295B0FCB);
#endif
-// 2013-06-18aRagexe, 2013-06-18aRagexeRE
+// 2013-06-18#1aRagexe, 2013-06-18#1aRagexeRE, 2013-06-18aRagexe, 2013-06-18aRagexeRE
#if PACKETVER == 20130618
packetKeys(0x434115DE,0x34A10FE9,0x6791428E);
#endif
-// 2013-06-26aRagexeRE, 2013-06-26bRagexe, 2013-06-26bRagexeRE, 2013-06-26cRagexe
+// 2013-06-26_3bRagexeRE, 2013-06-26_3cRagexe, 2013-06-26aRagexeRE, 2013-06-26bRagexe, 2013-06-26bRagexeRE, 2013-06-26cRagexe
#if PACKETVER == 20130626
packetKeys(0x38F453EF,0x6A040FD8,0x65BD6668);
#endif
@@ -1042,18 +837,10 @@
packetKeys(0x4A6A3EFF,0x7E2D5237,0x01CA019E);
#endif
-// 2013-11-06aRagexe, 2013-11-06aRagexeRE
-#if PACKETVER == 20131106
- packetKeys(0x143E528F,0x5CA05899,0x44B85B23);
-#endif
-
-// 2013-11-07aRagexe, 2013-11-07cRagexe
-#if PACKETVER == 20131107
- packetKeys(0x143E528F,0x5CA05899,0x44B85B23);
-#endif
-
-// 2013-11-08aRagexe
-#if PACKETVER == 20131108
+// 2013-11-06aRagexe, 2013-11-06aRagexeRE, 2013-11-07aRagexe, 2013-11-07bRagexe, 2013-11-07cRagexe, 2013-11-08aRagexe
+#if PACKETVER == 20131106 || \
+ PACKETVER == 20131107 || \
+ PACKETVER == 20131108
packetKeys(0x143E528F,0x5CA05899,0x44B85B23);
#endif
@@ -1077,7 +864,7 @@
packetKeys(0x792760B2,0x5AF45387,0x36165603);
#endif
-// 2013-12-11cRagexeRE, 2013-12-11dRagexe, 2013-12-11eRagexeRE
+// 2013-12-11cRagexe, 2013-12-11cRagexeRE, 2013-12-11dRagexe, 2013-12-11eRagexeRE
#if PACKETVER == 20131211
packetKeys(0x55B0394E,0x4D341FF2,0x60BC1DC3);
#endif
@@ -1087,7 +874,15 @@
packetKeys(0x6A596301,0x76866D0E,0x32294A45);
#endif
-// 2013-12-23aRagexeRE, 2013-12-23bRagexe, 2013-12-23bRagexeRE, 2013-12-23cRagexe, 2013-12-23xRagexeRE
+// 2013-12-23aRagexeRE, 2014-05-08aRagexe, 2014-05-08aRagexeRE, 2014-06-11eRagexe, 2015-02-25hRagexe
+#if PACKETVER == 20131223 || \
+ PACKETVER == 20140508 || \
+ PACKETVER == 20140611 || \
+ PACKETVER == 20150225
+ packetKeys(0x00000000,0x00000000,0x00000000);
+#endif
+
+// 2013-12-23bRagexe, 2013-12-23bRagexeRE, 2013-12-23cRagexe, 2013-12-23xRagexeRE
#if PACKETVER == 20131223
packetKeys(0x631C511C,0x111C111C,0x111C111C);
#endif
@@ -1102,7 +897,7 @@
packetKeys(0x4A1E26F2,0x231E7EFE,0x61FE19FE);
#endif
-// 2014-01-15aRagexe, 2014-01-15bRagexe, 2014-01-15cRagexeRE, 2014-01-15dRagexeRE, 2014-01-15eRagexe, 2014-01-15eRagexeRE
+// 2014-01-15aRagexe, 2014-01-15bRagexe, 2014-01-15cRagexe, 2014-01-15cRagexeRE, 2014-01-15dRagexeRE, 2014-01-15eRagexe, 2014-01-15eRagexeRE
#if PACKETVER == 20140115
packetKeys(0x63224335,0x0F3A1F27,0x6D217B24);
#endif
@@ -1147,7 +942,7 @@
packetKeys(0x48911E4E,0x58CB2EB3,0x05232619);
#endif
-// 2014-03-19aRagexeRE
+// 2014-03-19aRagexe, 2014-03-19aRagexeRE
#if PACKETVER == 20140319
packetKeys(0x3DA44383,0x1ABB165F,0x5B6846B9);
#endif
@@ -1177,12 +972,12 @@
packetKeys(0x7E0D6B56,0x74673CD3,0x2EBA4940);
#endif
-// 2014-04-30aRagexeRE
+// 2014-04-30aRagexe, 2014-04-30aRagexeRE
#if PACKETVER == 20140430
packetKeys(0x400145D8,0x3FE50155,0x11624F70);
#endif
-// 2014-05-08aRagexe, 2014-05-08bRagexe, 2014-05-08bRagexeRE
+// 2014-05-08bRagexe, 2014-05-08bRagexeRE
#if PACKETVER == 20140508
packetKeys(0x087E57EC,0x25224F4A,0x024F12C6);
#endif
@@ -1207,18 +1002,10 @@
packetKeys(0x5ABC4223,0x04DD2636,0x0D5850E0);
#endif
-// 2014-06-11bRagexeRE, 2014-06-11cRagexe, 2014-06-11dRagexe, 2014-06-11eRagexe, 2014-06-11hRagexe
-#if PACKETVER == 20140611
- packetKeys(0x4FC83479,0x3AB04D1F,0x477B4010);
-#endif
-
-// 2014-06-12aRagexe
-#if PACKETVER == 20140612
- packetKeys(0x4FC83479,0x3AB04D1F,0x477B4010);
-#endif
-
-// 2014-06-13aRagexe
-#if PACKETVER == 20140613
+// 2014-06-11bRagexeRE, 2014-06-11cRagexe, 2014-06-11dRagexe, 2014-06-11hRagexe, 2014-06-12aRagexe, 2014-06-13aRagexe
+#if PACKETVER == 20140611 || \
+ PACKETVER == 20140612 || \
+ PACKETVER == 20140613
packetKeys(0x4FC83479,0x3AB04D1F,0x477B4010);
#endif
@@ -1262,13 +1049,9 @@
packetKeys(0x0D5B69AC,0x3C001F20,0x0C201420);
#endif
-// 2014-08-13aRagexe, 2014-08-13aRagexeRE, 2014-08-13bRagexe
-#if PACKETVER == 20140813
- packetKeys(0x7AD51E0A,0x28C72C46,0x210205BD);
-#endif
-
-// 2014-08-14aRagexe
-#if PACKETVER == 20140814
+// 2014-08-13aRagexe, 2014-08-13aRagexeRE, 2014-08-13bRagexe, 2014-08-14aRagexe
+#if PACKETVER == 20140813 || \
+ PACKETVER == 20140814
packetKeys(0x7AD51E0A,0x28C72C46,0x210205BD);
#endif
@@ -1277,7 +1060,7 @@
packetKeys(0x374F15D0,0x64C87DEC,0x65CE2A41);
#endif
-// 2014-08-27aRagexe
+// 2014-08-27aRagexe, 2014-08-27aRagexeRE
#if PACKETVER == 20140827
packetKeys(0x53814CA2,0x27DE193E,0x503E683E);
#endif
@@ -1287,7 +1070,7 @@
packetKeys(0x2F386F34,0x0F935365,0x76A43888);
#endif
-// 2014-09-17aRagexe
+// 2014-09-17aRagexe, 2014-09-17cRagexeRE
#if PACKETVER == 20140917
packetKeys(0x180118EA,0x440134CF,0x3A99179D);
#endif
@@ -1307,13 +1090,9 @@
packetKeys(0x754365B3,0x36B326B3,0x26B326B3);
#endif
-// 2014-10-15bRagexe, 2014-10-15bRagexeRE, 2014-10-15cRagexe, 2014-10-15dRagexe
-#if PACKETVER == 20141015
- packetKeys(0x2DFF467C,0x444B37EE,0x2C1B634F);
-#endif
-
-// 2014-10-16aRagexe, 2014-10-16aRagexeRE
-#if PACKETVER == 20141016
+// 2014-10-15bRagexe, 2014-10-15bRagexeRE, 2014-10-15cRagexe, 2014-10-15dRagexe, 2014-10-16aRagexe, 2014-10-16aRagexeRE
+#if PACKETVER == 20141015 || \
+ PACKETVER == 20141016
packetKeys(0x2DFF467C,0x444B37EE,0x2C1B634F);
#endif
@@ -1357,18 +1136,14 @@
packetKeys(0x0B0B1DD3,0x26EF1797,0x4F40370B);
#endif
-// 2014-12-17aRagexeRE
+// 2014-12-17aRagexe, 2014-12-17aRagexeRE
#if PACKETVER == 20141217
packetKeys(0x01AB478C,0x0FDE58F2,0x1DAC7303);
#endif
-// 2014-12-23cRagexeRE
-#if PACKETVER == 20141223
- packetKeys(0x2E8936E6,0x34463C46,0x67CD3885);
-#endif
-
-// 2014-12-24aRagexe
-#if PACKETVER == 20141224
+// 2014-12-23cRagexeRE, 2014-12-24aRagexe
+#if PACKETVER == 20141223 || \
+ PACKETVER == 20141224
packetKeys(0x2E8936E6,0x34463C46,0x67CD3885);
#endif
@@ -1392,18 +1167,10 @@
packetKeys(0x0B9D2AF5,0x658A3346,0x379E3654);
#endif
-// 2015-01-28aRagexe, 2015-01-28aRagexeRE
-#if PACKETVER == 20150128
- packetKeys(0x77CA2D55,0x28B608F0,0x75B47957);
-#endif
-
-// 2015-01-29aRagexe
-#if PACKETVER == 20150129
- packetKeys(0x77CA2D55,0x28B608F0,0x75B47957);
-#endif
-
-// 2015-01-30aRagexe
-#if PACKETVER == 20150130
+// 2015-01-28aRagexe, 2015-01-28aRagexeRE, 2015-01-29aRagexe, 2015-01-30aRagexe
+#if PACKETVER == 20150128 || \
+ PACKETVER == 20150129 || \
+ PACKETVER == 20150130
packetKeys(0x77CA2D55,0x28B608F0,0x75B47957);
#endif
@@ -1422,13 +1189,9 @@
packetKeys(0x731B731B,0x731B731B,0x731B731B);
#endif
-// 2015-02-25aRagexeRE, 2015-02-25bRagexeRE, 2015-02-25cRagexeRE, 2015-02-25dRagexeRE, 2015-02-25eRagexe, 2015-02-25eRagexeRE, 2015-02-25fRagexe, 2015-02-25gRagexe, 2015-02-25hRagexe, 2015-02-25iRagexe, 2015-02-25jRagexe
-#if PACKETVER == 20150225
- packetKeys(0x57FD4B7B,0x19CC16FB,0x0D255D72);
-#endif
-
-// 2015-02-26aRagexe, 2015-02-26aRagexeRE
-#if PACKETVER == 20150226
+// 2015-02-25aRagexeRE, 2015-02-25bRagexeRE, 2015-02-25cRagexeRE, 2015-02-25dRagexeRE, 2015-02-25eRagexe, 2015-02-25eRagexeRE, 2015-02-25fRagexe, 2015-02-25gRagexe, 2015-02-25iRagexe, 2015-02-25jRagexe, 2015-02-26aRagexe, 2015-02-26aRagexeRE
+#if PACKETVER == 20150225 || \
+ PACKETVER == 20150226
packetKeys(0x57FD4B7B,0x19CC16FB,0x0D255D72);
#endif
@@ -1507,13 +1270,9 @@
packetKeys(0x2FC406D3,0x7B3E32F5,0x02B80B47);
#endif
-// 2015-06-17aRagexe, 2015-06-17aRagexeRE
-#if PACKETVER == 20150617
- packetKeys(0x250F7E09,0x25416076,0x029A780E);
-#endif
-
-// 2015-06-18aRagexe, 2015-06-18aRagexeRE
-#if PACKETVER == 20150618
+// 2015-06-17aRagexe, 2015-06-17aRagexeRE, 2015-06-18aRagexe, 2015-06-18aRagexeRE
+#if PACKETVER == 20150617 || \
+ PACKETVER == 20150618
packetKeys(0x250F7E09,0x25416076,0x029A780E);
#endif
@@ -1522,13 +1281,9 @@
packetKeys(0x440B0E24,0x1BEA7A4C,0x2C646784);
#endif
-// 2015-07-01bRagexeRE
-#if PACKETVER == 20150701
- packetKeys(0x4DD55F9B,0x70C67B03,0x78C60DB6);
-#endif
-
-// 2015-07-02aRagexe
-#if PACKETVER == 20150702
+// 2015-07-01bRagexe, 2015-07-01bRagexeRE, 2015-07-02aRagexe
+#if PACKETVER == 20150701 || \
+ PACKETVER == 20150702
packetKeys(0x4DD55F9B,0x70C67B03,0x78C60DB6);
#endif
@@ -1542,7 +1297,7 @@
packetKeys(0x1F805483,0x67745585,0x7FCE189C);
#endif
-// 2015-07-22bRagexeRE
+// 2015-07-22bRagexe, 2015-07-22bRagexeRE
#if PACKETVER == 20150722
packetKeys(0x41FA53D4,0x2CF044E2,0x663A3F1D);
#endif
@@ -1582,12 +1337,12 @@
packetKeys(0x19AB2BF0,0x04754299,0x48770736);
#endif
-// 2015-09-16aRagexe, 2015-09-16aRagexeRE, 2015-09-16cRagexe, 2015-09-16cRagexeRE
+// 2015-09-16aRagexe, 2015-09-16cRagexe, 2015-09-16cRagexeRE
#if PACKETVER == 20150916
packetKeys(0x17F83A19,0x116944F4,0x1CC541E9);
#endif
-// 2015-09-23bRagexe, 2015-09-23bRagexeRE, 2015-09-23cRagexe, 2015-09-23eRagexe, 2015-09-23eRagexeRE, 2015-09-23fRagexe, 2015-09-23fRagexeRE
+// 2015-09-23bRagexe, 2015-09-23bRagexeRE, 2015-09-23cRagexe, 2015-09-23dRagexe, 2015-09-23eRagexe, 2015-09-23eRagexeRE, 2015-09-23fRagexe, 2015-09-23fRagexeRE
#if PACKETVER == 20150923
packetKeys(0x765742B9,0x22D61C2F,0x7DA94FB2);
#endif
@@ -1607,23 +1362,15 @@
packetKeys(0x402728A8,0x5D0E309F,0x240018FD);
#endif
-// 2015-10-21aRagexe
-#if PACKETVER == 20151021
+// 2015-10-21aRagexe, 2015-10-21aRagexeRE, 2015-10-22aRagexe, 2015-10-22aRagexeRE
+#if PACKETVER == 20151021 || \
+ PACKETVER == 20151022
packetKeys(0x0311104D,0x46C326D6,0x00E82720);
#endif
-// 2015-10-22aRagexe, 2015-10-22aRagexeRE
-#if PACKETVER == 20151022
- packetKeys(0x0311104D,0x46C326D6,0x00E82720);
-#endif
-
-// 2015-10-28cRagexe, 2015-10-28cRagexeRE, 2015-10-28dRagexe, 2015-10-28dRagexeRE
-#if PACKETVER == 20151028
- packetKeys(0x45B945B9,0x45B945B9,0x45B945B9);
-#endif
-
-// 2015-10-29aRagexe, 2015-10-29aRagexeRE
-#if PACKETVER == 20151029
+// 2015-10-28bRagexeRE, 2015-10-28bRagexeRE_2, 2015-10-28cRagexe, 2015-10-28cRagexeRE, 2015-10-28dRagexe, 2015-10-28dRagexeRE, 2015-10-29aRagexe, 2015-10-29aRagexeRE
+#if PACKETVER == 20151028 || \
+ PACKETVER == 20151029
packetKeys(0x45B945B9,0x45B945B9,0x45B945B9);
#endif
@@ -1667,7 +1414,7 @@
packetKeys(0x347D68D0,0x2C705320,0x7B4A199D);
#endif
-// 2015-12-30aRagexe
+// 2015-12-30aRagexe, 2015-12-30aRagexeRE
#if PACKETVER == 20151230
packetKeys(0x54C51241,0x33883499,0x3CDA35F0);
#endif
@@ -1677,7 +1424,7 @@
packetKeys(0x40520265,0x33FE26FC,0x7136294F);
#endif
-// 2016-01-13aRagexe, 2016-01-13aRagexeRE, 2016-01-13bRagexe, 2016-01-13bRagexeRE, 2016-01-13cRagexeRE
+// 2016-01-13aRagexe, 2016-01-13aRagexeRE, 2016-01-13bRagexe, 2016-01-13bRagexeRE, 2016-01-13bRagexeRE_2, 2016-01-13bRagexe_2, 2016-01-13cRagexeRE
#if PACKETVER == 20160113
packetKeys(0x18005C4B,0x19A94A72,0x73F678EC);
#endif
@@ -1687,7 +1434,7 @@
packetKeys(0x51495149,0x51495149,0x51495149);
#endif
-// 2016-01-27aRagexeRE, 2016-01-27bRagexeRE, 2016-01-27cRagexe, 2016-01-27dRagexe
+// 2016-01-27aRagexeRE, 2016-01-27aRagexeRE_2, 2016-01-27bRagexeRE, 2016-01-27cRagexe, 2016-01-27dRagexe
#if PACKETVER == 20160127
packetKeys(0x6B1E7146,0x612C47E6,0x274E56EE);
#endif
@@ -1702,7 +1449,7 @@
packetKeys(0x613813EA,0x05251DAB,0x1FD35E33);
#endif
-// 2016-02-17aRagexe, 2016-02-17aRagexeRE, 2016-02-17bRagexeRE, 2016-02-17cRagexeRE
+// 2016-02-17aRagexe, 2016-02-17aRagexeRE, 2016-02-17bRagexeRE, 2016-02-17bRagexeRE_2, 2016-02-17cRagexeRE
#if PACKETVER == 20160217
packetKeys(0x25895A8E,0x09421C19,0x763A2D7A);
#endif
@@ -1722,17 +1469,13 @@
packetKeys(0x21587520,0x353A7706,0x1B722B25);
#endif
-// 2016-03-16aRagexe, 2016-03-16aRagexeRE
-#if PACKETVER == 20160316
- packetKeys(0x62363E36,0x3E363E36,0x3E363E36);
-#endif
-
-// 2016-03-18aRagexe
-#if PACKETVER == 20160318
+// 2016-03-16aRagexe, 2016-03-16aRagexeRE, 2016-03-18aRagexe
+#if PACKETVER == 20160316 || \
+ PACKETVER == 20160318
packetKeys(0x62363E36,0x3E363E36,0x3E363E36);
#endif
-// 2016-03-23aRagexe, 2016-03-23aRagexeRE, 2016-03-23bRagexe
+// 2016-03-23aRagexe, 2016-03-23aRagexeRE, 2016-03-23bRagexe, 2016-03-23bRagexeRE
#if PACKETVER == 20160323
packetKeys(0x73E35A83,0x62142FA8,0x12BA36BD);
#endif
@@ -1747,7 +1490,7 @@
packetKeys(0x568611EA,0x32457D8D,0x2B020477);
#endif
-// 2016-04-14aRagexe, 2016-04-14aRagexeRE, 2016-04-14bRagexe, 2016-04-14bRagexeRE, 2016-04-14cRagexe
+// 2016-04-14aRagexe, 2016-04-14aRagexeRE, 2016-04-14bRagexe, 2016-04-14bRagexeRE, 2016-04-14bRagexe_2, 2016-04-14cRagexe
#if PACKETVER == 20160414
packetKeys(0x31BD479A,0x40C61398,0x397C1A80);
#endif
@@ -1757,7 +1500,7 @@
packetKeys(0x67D2163A,0x3068215B,0x4835474D);
#endif
-// 2016-04-27aRagexeRE
+// 2016-04-27aRagexe, 2016-04-27aRagexeRE
#if PACKETVER == 20160427
packetKeys(0x12DC378E,0x4E3E7EBE,0x0ABE2ABE);
#endif
@@ -1777,13 +1520,9 @@
packetKeys(0x57DB7CA1,0x1FEA1629,0x26DD244D);
#endif
-// 2016-05-25aRagexe, 2016-05-25aRagexeRE
-#if PACKETVER == 20160525
- packetKeys(0x485C45B6,0x47DC6192,0x76B34A36);
-#endif
-
-// 2016-05-26aRagexe
-#if PACKETVER == 20160526
+// 2016-05-25aRagexe, 2016-05-25aRagexeRE, 2016-05-26aRagexe
+#if PACKETVER == 20160525 || \
+ PACKETVER == 20160526
packetKeys(0x485C45B6,0x47DC6192,0x76B34A36);
#endif
@@ -1792,13 +1531,9 @@
packetKeys(0x3DAD32C4,0x59F001BE,0x73F65E56);
#endif
-// 2016-06-08aRagexe, 2016-06-08aRagexeRE, 2016-06-08bRagexe, 2016-06-08bRagexeRE
-#if PACKETVER == 20160608
- packetKeys(0x11D74609,0x77C43E8A,0x44290F53);
-#endif
-
-// 2016-06-09aRagexe
-#if PACKETVER == 20160609
+// 2016-06-08aRagexe, 2016-06-08aRagexeRE, 2016-06-08bRagexe, 2016-06-08bRagexeRE, 2016-06-09aRagexe
+#if PACKETVER == 20160608 || \
+ PACKETVER == 20160609
packetKeys(0x11D74609,0x77C43E8A,0x44290F53);
#endif
@@ -1812,13 +1547,9 @@
packetKeys(0x426548AB,0x5C0F5DD4,0x03022710);
#endif
-// 2016-06-29aRagexe, 2016-06-29aRagexeRE
-#if PACKETVER == 20160629
- packetKeys(0x0DF31CCC,0x54281606,0x5C4C6855);
-#endif
-
-// 2016-06-30aRagexe, 2016-06-30aRagexeRE
-#if PACKETVER == 20160630
+// 2016-06-29aRagexe, 2016-06-29aRagexeRE, 2016-06-30aRagexe, 2016-06-30aRagexeRE
+#if PACKETVER == 20160629 || \
+ PACKETVER == 20160630
packetKeys(0x0DF31CCC,0x54281606,0x5C4C6855);
#endif
@@ -1827,7 +1558,7 @@
packetKeys(0x33A766D0,0x743F04F8,0x0FA0276C);
#endif
-// 2016-07-13aRagexe, 2016-07-13aRagexeRE, 2016-07-13bRagexeRE, 2016-07-13cRagexe, 2016-07-13dRagexe
+// 2016-07-13aRagexe, 2016-07-13aRagexeRE, 2016-07-13bRagexe, 2016-07-13bRagexeRE, 2016-07-13cRagexe, 2016-07-13dRagexe
#if PACKETVER == 20160713
packetKeys(0x714F2495,0x7DDC6F32,0x3FD8533D);
#endif
@@ -1852,12 +1583,17 @@
packetKeys(0x2F252886,0x242234A2,0x48BC5032);
#endif
-// 2016-08-17aRagexe
+// 2016-08-17aRagexe, 2016-08-17aRagexeRE
#if PACKETVER == 20160817
packetKeys(0x675E6900,0x3F8E1D16,0x58D650E5);
#endif
-// 2016-08-31aRagexeRE, 2016-08-31bRagexeRE
+// 2016-08-24aRagexe, 2016-08-24aRagexeRE
+#if PACKETVER == 20160824
+ packetKeys(0x2FA92FA9,0x2FA92FA9,0x2FA92FA9);
+#endif
+
+// 2016-08-31aRagexe, 2016-08-31aRagexeRE, 2016-08-31bRagexe, 2016-08-31bRagexeRE
#if PACKETVER == 20160831
packetKeys(0x564E13B0,0x7F680549,0x382D273B);
#endif
@@ -1872,47 +1608,43 @@
packetKeys(0x7C79748F,0x1AA03B1D,0x6EAC4747);
#endif
-// 2016-09-21bRagexeRE
+// 2016-09-21aRagexe, 2016-09-21bRagexeRE
#if PACKETVER == 20160921
packetKeys(0x11CD15CD,0x15CD15CD,0x15CD15CD);
#endif
-// 2016-09-28cRagexeRE, 2016-09-28dRagexeRE
+// 2016-09-28cRagexe, 2016-09-28cRagexeRE, 2016-09-28dRagexeRE
#if PACKETVER == 20160928
packetKeys(0x2F8C67F5,0x22D42C38,0x57513774);
#endif
-// 2016-10-05aRagexeRE
+// 2016-10-05aRagexe, 2016-10-05aRagexeRE
#if PACKETVER == 20161005
packetKeys(0x5BAE21F8,0x021E2FFC,0x3BEB7C31);
#endif
-// 2016-10-12aRagexeRE
+// 2016-10-12aRagexe, 2016-10-12aRagexeRE
#if PACKETVER == 20161012
packetKeys(0x5E2311F2,0x14FD012C,0x76EB64F6);
#endif
-// 2016-10-19aRagexeRE
+// 2016-10-19aRagexe, 2016-10-19aRagexeRE
#if PACKETVER == 20161019
packetKeys(0x34882F11,0x7C870E70,0x7E61350D);
#endif
-// 2016-10-26bRagexeRE, 2016-10-26cRagexeRE
+// 2016-10-26bRagexe, 2016-10-26bRagexeRE, 2016-10-26cRagexe, 2016-10-26cRagexeRE
#if PACKETVER == 20161026
packetKeys(0x2CB86AE6,0x7D12660E,0x1B004DEB);
#endif
-// 2016-11-02aRagexe, 2016-11-02aRagexeRE
-#if PACKETVER == 20161102
- packetKeys(0x76725C17,0x72FE4EC1,0x07A91BFD);
-#endif
-
-// 2016-11-03aRagexeRE
-#if PACKETVER == 20161103
+// 2016-11-02aRagexe, 2016-11-02aRagexeRE, 2016-11-03aRagexe, 2016-11-03aRagexeRE
+#if PACKETVER == 20161102 || \
+ PACKETVER == 20161103
packetKeys(0x76725C17,0x72FE4EC1,0x07A91BFD);
#endif
-// 2016-11-09aRagexe, 2016-11-09bRagexeRE, 2016-11-09cRagexeRE, 2016-11-09dRagexeRE
+// 2016-11-09aRagexe, 2016-11-09aRagexeRE, 2016-11-09bRagexe, 2016-11-09bRagexeRE, 2016-11-09cRagexeRE, 2016-11-09dRagexeRE
#if PACKETVER == 20161109
packetKeys(0x0A5277C0,0x2DB17506,0x0E8F26DA);
#endif
@@ -1927,22 +1659,22 @@
packetKeys(0x66FF559F,0x00D3535B,0x236246F7);
#endif
-// 2016-11-30aRagexeRE, 2016-11-30bRagexeRE
+// 2016-11-30aRagexe, 2016-11-30aRagexeRE, 2016-11-30bRagexe, 2016-11-30bRagexeRE
#if PACKETVER == 20161130
packetKeys(0x2ED80296,0x0D837373,0x20266F9A);
#endif
-// 2016-12-07cRagexeRE, 2016-12-07dRagexeRE, 2016-12-07eRagexeRE
+// 2016-12-07cRagexe, 2016-12-07cRagexeRE, 2016-12-07dRagexeRE, 2016-12-07eRagexe, 2016-12-07eRagexeRE
#if PACKETVER == 20161207
packetKeys(0x52D267AA,0x4FE42156,0x1292153E);
#endif
-// 2016-12-14bRagexeRE, 2016-12-14cRagexe, 2016-12-14cRagexeRE
+// 2016-12-14bRagexe, 2016-12-14bRagexeRE, 2016-12-14cRagexe, 2016-12-14cRagexeRE
#if PACKETVER == 20161214
packetKeys(0x4DDE217B,0x07863AE0,0x5B591656);
#endif
-// 2016-12-21aRagexeRE, 2016-12-21bRagexeRE, 2016-12-21cRagexeRE, 2016-12-21dRagexeRE
+// 2016-12-21aRagexe, 2016-12-21aRagexeRE, 2016-12-21bRagexe, 2016-12-21bRagexeRE, 2016-12-21cRagexeRE, 2016-12-21dRagexeRE
#if PACKETVER == 20161221
packetKeys(0x69CB4F56,0x793C165E,0x673A2354);
#endif
@@ -1952,12 +1684,12 @@
packetKeys(0x09366971,0x005672F1,0x6F3712AE);
#endif
-// 2017-01-04bRagexeRE
+// 2017-01-04aRagexe, 2017-01-04bRagexeRE
#if PACKETVER == 20170104
packetKeys(0x44416BC3,0x6C8D1817,0x072D75D5);
#endif
-// 2017-01-11aRagexeRE
+// 2017-01-11aRagexe, 2017-01-11aRagexeRE
#if PACKETVER == 20170111
packetKeys(0x19B637F9,0x0E9C378A,0x41673186);
#endif
@@ -1977,12 +1709,12 @@
packetKeys(0x2011228E,0x00453005,0x628E7F0A);
#endif
-// 2017-02-08aRagexeRE, 2017-02-08bRagexeRE
+// 2017-02-08aRagexeRE, 2017-02-08bRagexe, 2017-02-08bRagexeRE
#if PACKETVER == 20170208
packetKeys(0x6A764E5F,0x0609570D,0x28AE07FA);
#endif
-// 2017-02-15aRagexeRE
+// 2017-02-15aRagexe, 2017-02-15aRagexeRE
#if PACKETVER == 20170215
packetKeys(0x50C01315,0x51012A42,0x679E16C3);
#endif
@@ -1997,7 +1729,7 @@
packetKeys(0x771D4F2B,0x20EF1F4C,0x0D5135C8);
#endif
-// 2017-03-08bRagexeRE
+// 2017-03-08aRagexe, 2017-03-08bRagexeRE
#if PACKETVER == 20170308
packetKeys(0x653470A9,0x6B316A71,0x5C712C71);
#endif
@@ -2007,12 +1739,12 @@
packetKeys(0x399A0856,0x56642A94,0x7F77157D);
#endif
-// 2017-03-22aRagexeRE, 2017-03-22bRagexeRE
+// 2017-03-22aRagexe, 2017-03-22aRagexeRE, 2017-03-22bRagexe, 2017-03-22bRagexeRE
#if PACKETVER == 20170322
packetKeys(0x2050167B,0x01731233,0x40337033);
#endif
-// 2017-03-29cRagexe, 2017-03-29cRagexeRE, 2017-03-29dRagexeRE
+// 2017-03-29bRagexe, 2017-03-29cRagexe, 2017-03-29cRagexeRE, 2017-03-29dRagexeRE
#if PACKETVER == 20170329
packetKeys(0x18B31A80,0x1B0B1D56,0x16857D6A);
#endif
@@ -2027,134 +1759,200 @@
packetKeys(0x39223393,0x5C847779,0x10217985);
#endif
-// 2017-04-19bRagexeRE
+// 2017-04-19aRagexe, 2017-04-19bRagexeRE
#if PACKETVER == 20170419
packetKeys(0x1F8F4B3F,0x2E481F03,0x39ED4178);
#endif
-// 2017-04-26dRagexeRE
+// 2017-04-26bRagexe, 2017-04-26dRagexeRE
#if PACKETVER == 20170426
packetKeys(0x167642A7,0x1DEC3D26,0x6D046D4C);
#endif
-// 2017-05-02dRagexeRE
+// 2017-05-02aRagexe, 2017-05-02bRagexe, 2017-05-02dRagexeRE
#if PACKETVER == 20170502
packetKeys(0x05224194,0x466D4204,0x31F02EE0);
#endif
-// 2017-05-17aRagexeRE, 2017-05-17bRagexeRE
+// 2017-05-17aRagexe, 2017-05-17aRagexeRE, 2017-05-17bRagexeRE
#if PACKETVER == 20170517
packetKeys(0x2CC4749A,0x1FA954DC,0x72276857);
#endif
-// 2017-05-24aRagexeRE
+// 2017-05-24aRagexe, 2017-05-24aRagexeRE, 2017-05-24bRagexe
#if PACKETVER == 20170524
packetKeys(0x0B4E03A6,0x2B93427C,0x583D4477);
#endif
-// 2017-05-31aRagexeRE
+// 2017-05-31aRagexe, 2017-05-31aRagexeRE
#if PACKETVER == 20170531
packetKeys(0x03FA5A97,0x20B802D5,0x339F1977);
#endif
-// 2017-06-07bRagexeRE
+// 2017-06-07bRagexeRE, 2017-06-07cRagexe, 2017-06-07cRagexeRE
#if PACKETVER == 20170607
packetKeys(0x50564ACD,0x79CA4E15,0x405F4894);
#endif
-// 2017-06-14bRagexeRE
+// 2017-06-14bRagexe, 2017-06-14bRagexeRE
#if PACKETVER == 20170614
packetKeys(0x5ED10A48,0x667F4301,0x2E5D761F);
#endif
-// 2017-06-21aRagexeRE
+// 2017-06-21aRagexeRE, 2017-06-21bRagexe
#if PACKETVER == 20170621
packetKeys(0x155F34EC,0x2D943FA9,0x3D9170EB);
#endif
-// 2017-06-28bRagexeRE
+// 2017-06-28bRagexe, 2017-06-28bRagexeRE
#if PACKETVER == 20170628
packetKeys(0x04691C86,0x43C210E2,0x2FE277E2);
#endif
-// 2017-07-05aRagexeRE
+// 2017-07-05aRagexe, 2017-07-05aRagexeRE
#if PACKETVER == 20170705
packetKeys(0x7EB000AE,0x02FB1DBC,0x5CB131E6);
#endif
-// 2017-07-12bRagexeRE
+// 2017-07-12bRagexe, 2017-07-12bRagexeRE
#if PACKETVER == 20170712
packetKeys(0x2C3C202C,0x3F2C2F2C,0x2F2C2F2C);
#endif
-// 2017-07-19aRagexeRE
+// 2017-07-19aRagexe, 2017-07-19aRagexeRE
#if PACKETVER == 20170719
packetKeys(0x46465C88,0x10116F66,0x200866F9);
#endif
-// 2017-07-26cRagexeRE
+// 2017-07-26aRagexe, 2017-07-26cRagexeRE
#if PACKETVER == 20170726
packetKeys(0x102F23DB,0x7E767751,0x3BC172EF);
#endif
-// 2017-08-01aRagexeRE
+// 2017-08-01aRagexe, 2017-08-01aRagexeRE, 2017-08-01bRagexe
#if PACKETVER == 20170801
packetKeys(0x26B52A7F,0x5377619D,0x4F580AC4);
#endif
-// 2017-08-16cRagexeRE, 2017-08-16dRagexeRE
+// 2017-08-09cRagexe, 2017-08-09cRagexeRE
+#if PACKETVER == 20170809
+ packetKeys(0x452156CB,0x71442624,0x2EE66D1C);
+#endif
+
+// 2017-08-16cRagexe, 2017-08-16cRagexeRE, 2017-08-16dRagexe, 2017-08-16dRagexeRE
#if PACKETVER == 20170816
packetKeys(0x78914673,0x3F8B7634,0x55B814BC);
#endif
-// 2017-08-23aRagexeRE
+// 2017-08-23aRagexe, 2017-08-23aRagexeRE
#if PACKETVER == 20170823
packetKeys(0x22677205,0x393D1002,0x58DC6BB4);
#endif
-// 2017-08-30aRagexeRE, 2017-08-30bRagexeRE
+// 2017-08-30aRagexe, 2017-08-30aRagexeRE, 2017-08-30bRagexe, 2017-08-30bRagexeRE
#if PACKETVER == 20170830
packetKeys(0x1D49592B,0x00970C17,0x1E640103);
#endif
-// 2017-09-06cRagexeRE
+// 2017-09-06cRagexe, 2017-09-06cRagexeRE
#if PACKETVER == 20170906
packetKeys(0x7DEF7677,0x351F36E6,0x52303485);
#endif
-// 2017-09-13bRagexeRE
+// 2017-09-13bRagexeRE, 2017-09-13cRagexe
#if PACKETVER == 20170913
packetKeys(0x7A645935,0x1DA05062,0x5A7A4C43);
#endif
-// 2017-09-20bRagexeRE
+// 2017-09-20aRagexe, 2017-09-20bRagexeRE
#if PACKETVER == 20170920
packetKeys(0x53024DA5,0x04EC212D,0x0BF87CD4);
#endif
-// 2017-09-27bRagexeRE, 2017-09-27dRagexeRE
+// 2017-09-27bRagexe, 2017-09-27bRagexeRE, 2017-09-27cRagexe, 2017-09-27dRagexe, 2017-09-27dRagexeRE
#if PACKETVER == 20170927
packetKeys(0x15624100,0x0CE1463E,0x0E5D6534);
#endif
-// 2017-10-02cRagexeRE
+// 2017-10-02cRagexe, 2017-10-02cRagexeRE
#if PACKETVER == 20171002
packetKeys(0x15E1716C,0x4E765B63,0x357D2370);
#endif
-// 2017-10-11aRagexeRE, 2017-10-11bRagexeRE
+// 2017-10-11aRagexe, 2017-10-11aRagexeRE, 2017-10-11bRagexe, 2017-10-11bRagexeRE
#if PACKETVER == 20171011
packetKeys(0x4F121B3E,0x12670E17,0x19896C11);
#endif
-// 2017-10-18aRagexeRE
+// 2017-10-18aRagexe, 2017-10-18aRagexeRE
#if PACKETVER == 20171018
packetKeys(0x2CAA109C,0x158C1EC2,0x7A5E58F3);
#endif
+// 2017-10-25bRagexe, 2017-10-25bRagexeRE, 2017-10-25cRagexe, 2017-10-25cRagexeRE, 2017-10-25dRagexe, 2017-10-25dRagexeRE, 2017-10-25eRagexe, 2017-10-25eRagexeRE
+#if PACKETVER == 20171025
+ packetKeys(0x165C565C,0x565C565C,0x565C565C);
+#endif
+
+// 2017-11-01aRagexe, 2017-11-01bRagexeRE
+#if PACKETVER == 20171101
+ packetKeys(0x7056317F,0x7EEE0589,0x02672373);
+#endif
+
+// 2017-11-08aRagexe, 2017-11-08bRagexeRE
+#if PACKETVER == 20171108
+ packetKeys(0x03695685,0x7FAC12CE,0x182F7A7B);
+#endif
+
+// 2017-11-15aRagexe, 2017-11-15aRagexeRE
+#if PACKETVER == 20171115
+ packetKeys(0x23B97A3B,0x34610993,0x2892070E);
+#endif
+
+// 2017-11-22aRagexe, 2017-11-22bRagexeRE
+#if PACKETVER == 20171122
+ packetKeys(0x03221B0E,0x73AB7A5F,0x0DD80FD4);
+#endif
+
+// 2017-11-29aRagexe, 2017-11-29aRagexeRE
+#if PACKETVER == 20171129
+ packetKeys(0x581B77A7,0x62F74D7A,0x4F102173);
+#endif
+
+// 2017-12-06aRagexeRE, 2017-12-06bRagexe, 2017-12-06cRagexe
+#if PACKETVER == 20171206
+ packetKeys(0x39D54BD3,0x577A0C21,0x4C1C316E);
+#endif
+
+// 2017-12-13bRagexe, 2017-12-13bRagexeRE
+#if PACKETVER == 20171213
+ packetKeys(0x44E41107,0x3B126921,0x00E06AAC);
+#endif
+
+// 2017-12-20aRagexe, 2017-12-20aRagexeRE
+#if PACKETVER == 20171220
+ packetKeys(0x6EFE009A,0x440B7BFA,0x052339C8);
+#endif
-#if defined(OBFUSCATIONKEY1) && defined(OBFUSCATIONKEY2) && defined(OBFUSCATIONKEY3)
- packetKeys(OBFUSCATIONKEY1,OBFUSCATIONKEY2,OBFUSCATIONKEY3);
+// 2017-12-27aRagexe, 2017-12-27aRagexeRE
+#if PACKETVER == 20171227
+ packetKeys(0x257A2F6E,0x51140EEE,0x00FA4452);
#endif
-#endif /* MAP_PACKETS_KEYS_H */
+// 2018-01-03aRagexe, 2018-01-03aRagexeRE, 2018-01-03bRagexe, 2018-01-03bRagexeRE
+#if PACKETVER == 20180103
+ packetKeys(0x348F4BD7,0x7A425A54,0x628F589A);
+#endif
+
+// 2018-01-17aRagexe, 2018-01-17aRagexeRE
+#if PACKETVER == 20180117
+ packetKeys(0x21F477F4,0x37F437F4,0x37F437F4);
+#endif
+
+// 2018-01-24bRagexe, 2018-01-24bRagexeRE
+#if PACKETVER == 20180124
+ packetKeys(0x7EAA1CE0,0x415D1CFD,0x4C8F19FA);
+#endif
+
+
+#endif /* MAP_PACKETS_MAIN_KEYS_H */
diff --git a/src/map/packets_keys_zero.h b/src/map/packets_keys_zero.h
new file mode 100644
index 000000000..93c917559
--- /dev/null
+++ b/src/map/packets_keys_zero.h
@@ -0,0 +1,118 @@
+/**
+ * This file is part of Hercules.
+ * http://herc.ws - http://github.com/HerculesWS/Hercules
+ *
+ * Copyright (C) 2013-2018 Hercules Dev Team
+ *
+ * Hercules is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef MAP_PACKETS_ZERO_KEYS_H
+#define MAP_PACKETS_ZERO_KEYS_H
+
+#ifndef packetKeys
+ #define packetKeys(a,b,c)
+#endif
+
+/* PacketKeys: http://herc.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ */
+
+/* This file is autogenerated, please do not commit manual changes */
+
+// 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero
+#if PACKETVER == 20171019 || \
+ PACKETVER == 20171023 || \
+ PACKETVER == 20171024 || \
+ PACKETVER == 20171025 || \
+ PACKETVER == 20171027 || \
+ PACKETVER == 20171030 || \
+ PACKETVER == 20171031 || \
+ PACKETVER == 20171109 || \
+ PACKETVER == 20171113
+ packetKeys(0x00000000,0x00000000,0x00000000);
+#endif
+
+// 2017-11-15aRagexe_zero, 2017-11-15bRagexe_zero, 2017-11-16aRagexe_zero, 2017-11-17aRagexe_zero
+#if PACKETVER == 20171115 || \
+ PACKETVER == 20171116 || \
+ PACKETVER == 20171117
+ packetKeys(0x3B93061D,0x3CB50DCD,0x410A197E);
+#endif
+
+// 2017-11-21aRagexe_zero, 2017-11-22aRagexe_zero
+#if PACKETVER == 20171121 || \
+ PACKETVER == 20171122
+ packetKeys(0x195B4DA8,0x6E3A473B,0x126F4B61);
+#endif
+
+// 2017-11-23dRagexe_zero
+#if PACKETVER == 20171123
+ packetKeys(0x6087733A,0x5C5C4AEE,0x0F10408F);
+#endif
+
+// 2017-11-27aRagexe_zero, 2017-11-27cRagexe_zero, 2017-11-28aRagexe_zero
+#if PACKETVER == 20171127 || \
+ PACKETVER == 20171128
+ packetKeys(0x141C135C,0x675C275C,0x275C275C);
+#endif
+
+// 2017-11-30bRagexe_zero
+#if PACKETVER == 20171130
+ packetKeys(0x31A04B32,0x3AC96B76,0x1742085D);
+#endif
+
+// 2017-12-04bRagexe_zero
+#if PACKETVER == 20171204
+ packetKeys(0x06A109F1,0x6A953256,0x0A6040A3);
+#endif
+
+// 2017-12-06aRagexe_zero, 2017-12-06bRagexe_zero, 2017-12-06cRagexe_zero, 2017-12-06dRagexe_zero, 2017-12-08aRagexe_zero, 2017-12-08cRagexe_zero, 2017-12-08dRagexe_zero, 2017-12-09bRagexe_zero, 2017-12-09cRagexe_zero, 2017-12-10aRagexe_zero, 2017-12-11bRagexe_zero, 2017-12-12aRagexe_zero, 2017-12-13aRagexe_zero, 2017-12-13bRagexe_zero, 2017-12-13cRagexe_zero
+#if PACKETVER == 20171206 || \
+ PACKETVER == 20171208 || \
+ PACKETVER == 20171209 || \
+ PACKETVER == 20171210 || \
+ PACKETVER == 20171211 || \
+ PACKETVER == 20171212 || \
+ PACKETVER == 20171213
+ packetKeys(0x718D0388,0x56A11525,0x20042F67);
+#endif
+
+// 2017-12-14cRagexe_zero
+#if PACKETVER == 20171214
+ packetKeys(0x6CE1021D,0x77703B04,0x4E722232);
+#endif
+
+// 2017-12-20aRagexe_zero, 2017-12-21aRagexe_zero, 2017-12-21bRagexe_zero
+#if PACKETVER == 20171220 || \
+ PACKETVER == 20171221
+ packetKeys(0x1E2047D2,0x7EE31AC2,0x31434F61);
+#endif
+
+// 2017-12-27bRagexe_zero, 2017-12-29aRagexe_zero
+#if PACKETVER == 20171227 || \
+ PACKETVER == 20171229
+ packetKeys(0x7CBF0846,0x02F92654,0x22AA5E2D);
+#endif
+
+// 2018-01-03aRagexe_zero
+#if PACKETVER == 20180103
+ packetKeys(0x2A3D4E64,0x7008690C,0x69FF066F);
+#endif
+
+// 2018-01-17aRagexe_zero
+#if PACKETVER == 20180117
+ packetKeys(0x230959EB,0x1CCB0182,0x1FFA2B30);
+#endif
+
+
+#endif /* MAP_PACKETS_ZERO_KEYS_H */
diff --git a/src/map/packets_shuffle_main.h b/src/map/packets_shuffle_main.h
new file mode 100644
index 000000000..c30f4296b
--- /dev/null
+++ b/src/map/packets_shuffle_main.h
@@ -0,0 +1,9537 @@
+/**
+ * This file is part of Hercules.
+ * http://herc.ws - http://github.com/HerculesWS/Hercules
+ *
+ * Copyright (C) 2013-2018 Hercules Dev Team
+ *
+ * Hercules is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+//Included directly by clif.c in packet_loaddb()
+
+#ifndef MAP_PACKETS_SHUFFLE_MAIN_H
+#define MAP_PACKETS_SHUFFLE_MAIN_H
+
+#ifndef packet
+ #define packet(a,b,...)
+#endif
+
+/*
+ * packet syntax
+ * - packet(packet_id,length,function,offset ( specifies the offset of a packet field in bytes from the begin of the packet ),...)
+ * - Example: packet(0x0072,19,clif->pWantToConnection,2,6,10,14,18);
+ */
+
+/* This file is autogenerated, please do not commit manual changes */
+
+
+// 2012-07-10aRagexe, 2012-07-10aRagexeRE, 2012-07-12aRagexe, 2012-07-12aRagexeRE
+#if PACKETVER == 20120710 || \
+ PACKETVER == 20120712
+ packet(0x0202,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x02c4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0362,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0365,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0367,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x07e4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0811,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0877,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0878,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x087f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0893,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a3,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a6,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a8,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08aa,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0936,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0948,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0953,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0956,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0958,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0960,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2012-07-16aRagexe, 2012-07-16aRagexeRE
+#if PACKETVER == 20120716
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x089f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-07-24aRagexe, 2012-07-24aRagexeRE
+#if PACKETVER == 20120724
+ packet(0x035f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0815,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0835,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0865,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0866,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0872,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0877,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087c,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0887,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0888,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a1,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a9,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0928,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0929,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x092b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0935,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0938,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x093c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0945,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0957,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0959,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0965,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+#endif
+
+// 2012-08-01aRagexe, 2012-08-01aRagexeRE, 2012-08-01bRagexe, 2012-08-01bRagexeRE
+#if PACKETVER == 20120801
+ packet(0x0360,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0438,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0873,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0875,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x088b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0890,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0895,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a2,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08aa,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ab,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0917,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0930,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0934,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x093c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0946,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0964,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2012-08-08aRagexe, 2012-08-08aRagexeRE, 2012-08-08bRagexe, 2012-08-08bRagexeRE, 2012-08-08cRagexe, 2012-08-08cRagexeRE, 2012-08-08dRagexeRE
+#if PACKETVER == 20120808
+ packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x093d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-08-14aRagexe, 2012-08-14aRagexeRE, 2012-08-14bRagexe, 2012-08-14bRagexeRE
+#if PACKETVER == 20120814
+ packet(0x0281,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0365,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0366,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x07ec,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0815,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0838,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0861,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0862,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0865,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0868,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0875,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0882,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x088b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x088d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0895,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08a8,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0920,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0929,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0932,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0934,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0941,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0967,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0969,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2012-08-22aRagexe, 2012-08-22aRagexeRE, 2012-08-22bRagexe, 2012-08-22bRagexeRE, 2012-08-22cRagexe, 2012-08-22cRagexeRE
+#if PACKETVER == 20120822
+ packet(0x0365,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0437,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x085a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x085d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0872,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x087d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a5,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ab,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0917,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0924,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0927,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0935,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0937,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0940,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0943,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0953,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0955,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0958,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+#endif
+
+// 2012-08-30aRagexe, 2012-08-30aRagexeRE, 2012-08-30bRagexeRE
+#if PACKETVER == 20120830
+ packet(0x022d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0364,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0802,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0838,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0861,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0872,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0887,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0888,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0890,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0926,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0934,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0945,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094b,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-09-05aRagexe, 2012-09-05aRagexeRE
+#if PACKETVER == 20120905
+ packet(0x022d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0365,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0817,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x085a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0877,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0878,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x087e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0887,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0895,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0897,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a0,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a6,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0917,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0918,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x091a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0927,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x093c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0944,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0945,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0950,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0959,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0960,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0967,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+#endif
+
+// 2012-09-11aRagexe, 2012-09-11aRagexeRE
+#if PACKETVER == 20120911
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0819,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0868,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0877,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0879,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a4,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a5,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08a6,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a7,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08ad,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0930,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0935,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0948,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0949,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0958,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0959,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0962,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0963,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0968,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2012-09-19aRagexe, 2012-09-19aRagexeRE
+#if PACKETVER == 20120919
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-09-25aRagexe, 2012-09-25aRagexeRE, 2012-09-26aRagexe, 2012-09-26aRagexeRE
+#if PACKETVER == 20120925 || \
+ PACKETVER == 20120926
+ packet(0x07e4,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0815,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0819,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0835,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0838,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0873,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x087e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0887,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a4,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x091c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0923,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0927,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0932,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0942,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0948,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0950,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0956,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0957,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0958,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0963,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+#endif
+
+// 2012-10-10aRagexe, 2012-10-10aRagexeRE, 2012-10-10bRagexe, 2012-10-10bRagexeRE, 2012-10-11aRagexeRE
+#if PACKETVER == 20121010 || \
+ PACKETVER == 20121011
+ packet(0x0202,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0817,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0869,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0874,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0883,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0888,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0891,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0896,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0898,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a6,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a9,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0925,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0934,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0942,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0947,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0957,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0958,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0959,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0964,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0969,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2012-10-17aRagexe, 2012-10-17aRagexeRE, 2012-10-17bRagexe, 2012-10-17bRagexeRE
+#if PACKETVER == 20121017
+ packet(0x023b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0868,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0887,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0888,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0897,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x089a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0918,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0920,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0960,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0965,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-10-24aRagexe, 2012-10-24aRagexeRE
+#if PACKETVER == 20121024
+ packet(0x0436,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0437,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0438,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0817,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0838,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0868,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0872,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0875,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x087e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0882,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0888,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0889,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a9,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08aa,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0931,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0938,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x093a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0942,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0947,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0954,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0955,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x095d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0965,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2012-10-31aRagexe, 2012-10-31aRagexeRE
+#if PACKETVER == 20121031
+ packet(0x022d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0871,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0877,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0898,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-11-07aRagexe, 2012-11-07aRagexeRE
+#if PACKETVER == 20121107
+ packet(0x0360,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0361,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0365,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x085c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0861,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0865,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0871,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0873,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0878,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0890,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0891,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0896,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a2,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ad,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0922,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0934,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x093b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0945,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x094d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0960,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0963,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0966,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+#endif
+
+// 2012-11-14aRagexe, 2012-11-14aRagexeRE
+#if PACKETVER == 20121114
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0365,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0437,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0815,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0862,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0876,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0879,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0881,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0898,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0899,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a9,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08aa,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ab,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0930,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0935,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0938,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x093b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x093c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0944,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0949,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x095c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0965,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2012-11-21aRagexe, 2012-11-21aRagexeRE
+#if PACKETVER == 20121121
+ packet(0x0202,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0437,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0863,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0872,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0875,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0880,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0892,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a7,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08aa,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x091a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0921,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0927,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0929,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0938,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0946,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x094d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0950,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0952,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0957,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0958,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+#endif
+
+// 2012-11-28aRagexe, 2012-11-28aRagexeRE
+#if PACKETVER == 20121128
+ packet(0x0362,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0363,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x07ec,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0802,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0861,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0867,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x086c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0872,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0888,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0894,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0895,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a8,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08ad,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0921,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0931,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0945,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0947,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0950,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0953,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0960,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+#endif
+
+// 2012-12-05aRagexe, 2012-12-05aRagexeRE, 2012-12-05bRagexe, 2012-12-05bRagexeRE
+#if PACKETVER == 20121205
+ packet(0x035f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0360,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0815,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0863,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0864,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0873,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0875,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0878,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0888,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0889,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08ad,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x091c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0921,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x093a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0946,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0954,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0959,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0968,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2012-12-12aRagexe, 2012-12-12aRagexeRE, 2012-12-12bRagexe, 2012-12-12bRagexeRE, 2012-12-12cRagexeRE
+#if PACKETVER == 20121212
+ packet(0x0362,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0368,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0369,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0436,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0438,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0817,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x085c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0877,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x087d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0893,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0895,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a3,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a7,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a9,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08aa,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ac,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0917,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0920,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0932,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0947,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0951,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0953,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0957,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0965,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0966,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-12-18aRagexe, 2012-12-18aRagexeRE, 2012-12-18bRagexe, 2012-12-18bRagexeRE
+#if PACKETVER == 20121218
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0363,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0872,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0889,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0890,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x091a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0935,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0946,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0957,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2012-12-27aRagexe, 2012-12-27aRagexeRE
+#if PACKETVER == 20121227
+ packet(0x0202,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x02c4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0361,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0437,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0860,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0870,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0872,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0886,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0888,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0890,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0894,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0896,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a6,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08aa,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0917,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x091f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0920,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0932,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0933,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0943,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0947,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0953,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0958,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x095d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0962,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+#endif
+
+// 2013-01-03aRagexe, 2013-01-03aRagexeRE, 2013-01-07aRagexe
+#if PACKETVER == 20130103 || \
+ PACKETVER == 20130107
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0940,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-01-09aRagexe, 2013-01-09aRagexeRE
+#if PACKETVER == 20130109
+ packet(0x0281,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0365,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0368,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0838,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0866,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0888,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a2,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08aa,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ac,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0918,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0922,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0927,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0928,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0930,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0931,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093e,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0950,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0951,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0955,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2013-01-15aRagexeRE, 2013-01-15bRagexe, 2013-01-16aRagexe, 2013-01-16aRagexeRE, 2013-01-16bRagexe
+#if PACKETVER == 20130115 || \
+ PACKETVER == 20130116
+ packet(0x0361,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x07ec,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0817,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0861,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0863,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0870,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0871,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0877,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0879,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0888,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x088b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0894,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0895,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a0,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0918,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0928,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x092d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0939,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094b,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x095a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2013-01-21aRagexe, 2013-01-21aRagexeRE
+#if PACKETVER == 20130121
+ packet(0x023b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x035f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0802,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0815,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0817,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x085d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0874,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0884,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0893,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x094f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0963,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-01-30aRagexe, 2013-01-30aRagexeRE
+#if PACKETVER == 20130130
+ packet(0x035f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0367,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0437,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x085f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0862,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x086b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0885,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0886,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0887,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0889,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x089a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a0,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a4,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a9,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x091a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0920,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0924,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x093a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0956,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0957,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095b,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2013-02-06aRagexe, 2013-02-06aRagexeRE
+#if PACKETVER == 20130206
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0811,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0876,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0883,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0899,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a0,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0920,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0925,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x093c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0950,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-02-15aRagexe, 2013-02-15aRagexeRE, 2013-02-15bRagexe
+#if PACKETVER == 20130215
+ packet(0x023b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0886,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ad,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0923,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0956,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x095d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0962,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-02-20aRagexe, 2013-02-20bRagexeRE
+#if PACKETVER == 20130220
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-02-27aRagexe, 2013-02-27aRagexeRE
+#if PACKETVER == 20130227
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x035f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0360,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0811,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0815,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0817,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0863,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0867,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x086e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0893,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0898,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a0,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a1,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x091b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0924,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x092b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x092f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0946,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0951,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0967,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+#endif
+
+// 2013-03-06aRagexe, 2013-03-06aRagexeRE, 2013-03-06bRagexeRE
+#if PACKETVER == 20130306
+ packet(0x022d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0367,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0368,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0802,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0817,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x085b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0860,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0881,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0890,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0898,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ac,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0917,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0926,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0934,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0936,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0943,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0945,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0946,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094a,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0951,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0960,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2013-03-13aRagexe, 2013-03-13aRagexeRE, 2013-03-13bRagexeRE, 2013-03-13cRagexeRE
+#if PACKETVER == 20130313
+ packet(0x0202,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0887,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0920,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-03-20bRagexeRE, 2013-03-20cRagexeRE, 2013-03-20dRagexe, 2013-03-20eRagexe
+#if PACKETVER == 20130320
+ packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0438,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x085a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x085d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0868,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0874,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0881,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0886,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0890,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0897,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0898,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0922,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0933,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0938,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x093f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0959,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2013-03-27bRagexe, 2013-03-27bRagexeRE
+#if PACKETVER == 20130327
+ packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0835,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0873,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0878,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0891,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0893,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a1,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a2,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x092b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x092d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x092e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0933,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0938,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0939,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0955,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0960,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0961,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0967,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+#endif
+
+// 2013-04-03aRagexe, 2013-04-03aRagexeRE
+#if PACKETVER == 20130403
+ packet(0x023b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0884,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a5,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0942,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0950,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-04-10aRagexe, 2013-04-10aRagexeRE
+#if PACKETVER == 20130410
+ packet(0x0367,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0437,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0860,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0865,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0881,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x088c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0890,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0891,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a0,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08a7,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0917,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x091d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0933,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0939,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x093d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0944,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0945,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0955,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0960,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0967,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x096a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+#endif
+
+// 2013-04-17aRagexe, 2013-04-17aRagexeRE
+#if PACKETVER == 20130417
+ packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0875,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0929,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0962,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0969,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x096a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2013-04-24aRagexe, 2013-04-24aRagexeRE
+#if PACKETVER == 20130424
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0969,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-05-02aRagexe, 2013-05-02aRagexeRE, 2013-05-02bRagexe
+#if PACKETVER == 20130502
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0874,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0875,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0877,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0888,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0889,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a1,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a3,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0961,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0967,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2013-05-08bRagexe, 2013-05-08bRagexeRE, 2013-05-08cRagexe, 2013-05-08dRagexe, 2013-05-08eRagexe, 2013-05-08fRagexe
+#if PACKETVER == 20130508
+ packet(0x022d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0868,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0878,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0893,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0895,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0897,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ab,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x092d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0944,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0957,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-05-15aRagexe, 2013-05-15aRagexeRE
+#if PACKETVER == 20130515
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0887,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a1,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08aa,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ac,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x093e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0944,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0947,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0962,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0963,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-05-22aRagexe, 2013-05-22aRagexeRE
+#if PACKETVER == 20130522
+ packet(0x0360,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0368,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x07ec,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0811,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0874,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x088e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a2,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a3,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a6,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a9,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08aa,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08ac,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0925,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0950,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0952,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0964,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0965,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2013-05-29aRagexe, 2013-05-29aRagexeRE
+#if PACKETVER == 20130529
+ packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x085e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0874,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0876,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0877,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0888,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0890,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0892,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0895,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0897,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a7,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a8,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0918,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0936,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0937,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0938,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0957,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0964,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+#endif
+
+// 2013-06-05aRagexe, 2013-06-05bRagexe, 2013-06-05cRagexeRE
+#if PACKETVER == 20130605
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0883,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-06-12aRagexe, 2013-06-12bRagexe, 2013-06-12bRagexeRE, 2013-06-12cRagexe, 2013-06-12dRagexe, 2013-06-12eRagexe
+#if PACKETVER == 20130612
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0964,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-06-18#1aRagexe, 2013-06-18#1aRagexeRE, 2013-06-18aRagexe, 2013-06-18aRagexeRE
+#if PACKETVER == 20130618
+ packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x02c4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0363,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0862,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0864,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0878,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x088e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0890,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0917,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0930,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0932,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0936,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0942,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0944,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0945,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0951,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0953,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2013-06-26_3bRagexeRE, 2013-06-26_3cRagexe, 2013-06-26aRagexeRE, 2013-06-26bRagexe, 2013-06-26bRagexeRE, 2013-06-26cRagexe
+#if PACKETVER == 20130626
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0860,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x088c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0894,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0895,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08ab,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0921,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0930,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0952,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0960,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-07-03aRagexe, 2013-07-03bRagexeRE
+#if PACKETVER == 20130703
+ packet(0x0202,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0930,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-07-10aRagexeRE, 2013-07-10bRagexe, 2013-07-10bRagexeRE, 2013-07-10cRagexeRE, 2013-07-10dRagexeRE, 2013-07-10eRagexeRE
+#if PACKETVER == 20130710
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0880,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-07-17cRagexe, 2013-07-17cRagexeRE, 2013-07-17dRagexeRE, 2013-07-17eRagexeRE
+#if PACKETVER == 20130717
+ packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0863,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x086b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0882,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x088a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0897,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0898,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a9,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08aa,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0917,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0918,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x091d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0956,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0958,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x095b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0960,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0967,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x096a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+#endif
+
+// 2013-07-24eRagexe, 2013-07-24eRagexeRE, 2013-07-24fRagexeRE
+#if PACKETVER == 20130724
+ packet(0x023b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0437,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x085a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0867,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0874,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0876,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0890,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0891,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0893,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0921,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0924,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x092b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0953,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0954,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0956,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0958,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0965,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0966,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2013-07-31cRagexe, 2013-07-31cRagexeRE
+#if PACKETVER == 20130731
+ packet(0x022d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0366,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0865,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0878,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x087e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0884,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0889,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0894,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0895,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0923,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0925,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x092b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0935,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x094c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0956,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0957,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0962,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+#endif
+
+// 2013-08-07aRagexe, 2013-08-07aRagexeRE
+#if PACKETVER == 20130807
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0887,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-08-14aRagexe, 2013-08-14aRagexeRE
+#if PACKETVER == 20130814
+ packet(0x0202,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0281,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0368,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0815,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0868,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0873,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0874,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0887,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0895,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0896,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0923,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0926,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0936,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0937,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x093a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0947,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0959,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0962,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2013-08-21bRagexe, 2013-08-21dRagexeRE
+#if PACKETVER == 20130821
+ packet(0x0202,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0437,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0438,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x07ec,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0815,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0863,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0879,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0881,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x088d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0892,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a6,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ad,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x093e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0947,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0954,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0964,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0967,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0969,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+#endif
+
+// 2013-08-28bRagexe, 2013-08-28bRagexeRE, 2013-08-28cRagexe, 2013-08-28cRagexeRE
+#if PACKETVER == 20130828
+ packet(0x023b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0361,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0364,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0817,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0873,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0889,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0893,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a3,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08ac,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0917,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0919,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x091e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0923,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0924,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0928,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0930,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0944,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x094f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x095d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2013-09-04aRagexe, 2013-09-04bRagexeRE
+#if PACKETVER == 20130904
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0838,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0937,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-09-11aRagexe, 2013-09-11aRagexeRE, 2013-09-11bRagexe, 2013-09-11bRagexeRE
+#if PACKETVER == 20130911
+ packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0868,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0889,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0891,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x091e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x093a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0940,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0948,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0967,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2013-09-17aRagexe, 2013-09-17aRagexeRE
+#if PACKETVER == 20130917
+ packet(0x035f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0811,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0838,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x083c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0863,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0868,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x087a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0895,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x089d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a0,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a2,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08a8,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0918,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0921,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0923,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0934,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x094c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0957,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0959,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x096a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+#endif
+
+// 2013-09-25aRagexe, 2013-09-25aRagexeRE, 2013-09-25bRagexe, 2013-09-25bRagexeRE, 2013-09-25cRagexe
+#if PACKETVER == 20130925
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0875,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0876,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0885,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0887,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0890,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0940,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0969,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-10-02aRagexe, 2013-10-02aRagexeRE
+#if PACKETVER == 20131002
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0940,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-10-08aRagexe, 2013-10-08bRagexeRE
+#if PACKETVER == 20131008
+ packet(0x0202,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0362,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x07e4,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x083c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x085e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0863,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0883,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0884,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0896,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a9,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0917,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0923,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0927,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0932,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0934,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0936,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x093c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0952,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0956,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0969,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2013-10-16aRagexe, 2013-10-16aRagexeRE, 2013-10-16bRagexe, 2013-10-16bRagexeRE
+#if PACKETVER == 20131016
+ packet(0x022d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0281,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0361,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0364,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0366,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x07ec,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x085a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x085d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0864,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0867,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0870,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0875,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0887,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0888,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0890,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0894,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x091e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0927,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0946,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0962,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0966,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2013-10-23aRagexe, 2013-10-23aRagexeRE
+#if PACKETVER == 20131023
+ packet(0x0366,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0438,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0819,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0835,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x085b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0862,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0872,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0876,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x088f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a7,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08ab,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0919,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0923,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0924,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0935,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0937,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0944,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0951,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0954,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+#endif
+
+// 2013-10-30aRagexe, 2013-10-30aRagexeRE
+#if PACKETVER == 20131030
+ packet(0x022d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0887,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a2,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0925,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-11-06aRagexe, 2013-11-06aRagexeRE, 2013-11-07aRagexe, 2013-11-07bRagexe, 2013-11-07cRagexe, 2013-11-08aRagexe
+#if PACKETVER == 20131106 || \
+ PACKETVER == 20131107 || \
+ PACKETVER == 20131108
+ packet(0x0281,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0363,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0369,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0436,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0802,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0817,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0866,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0867,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0870,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0875,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0887,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0891,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0893,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0894,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a2,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0919,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0935,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0942,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0946,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0947,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0948,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0950,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0954,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0962,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0967,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+#endif
+
+// 2013-11-13aRagexeRE, 2013-11-13bRagexe
+#if PACKETVER == 20131113
+ packet(0x0364,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0879,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x088c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x088f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a8,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x091c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0920,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0928,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0929,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x092b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x092f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0934,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0936,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0949,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0950,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x095f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0960,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0964,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0969,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+#endif
+
+// 2013-11-20dRagexe, 2013-11-20eRagexeRE
+#if PACKETVER == 20131120
+ packet(0x0361,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0368,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0802,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0817,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x085f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0862,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0884,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a1,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a8,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0917,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0926,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0927,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0940,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0950,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0953,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0955,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2013-11-27aRagexeRE, 2013-11-27bRagexe, 2013-11-27bRagexeRE
+#if PACKETVER == 20131127
+ packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0366,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0881,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0884,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0894,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0930,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x093a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0940,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x095c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0967,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2013-12-04dRagexeRE, 2013-12-04eRagexe, 2013-12-04eRagexeRE
+#if PACKETVER == 20131204
+ packet(0x0365,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0366,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0862,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0869,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0877,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0879,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0882,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a0,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08a4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a7,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08ad,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0928,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x092d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0932,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0951,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0958,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0959,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0961,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0967,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+#endif
+
+// 2013-12-11cRagexe, 2013-12-11cRagexeRE, 2013-12-11dRagexe, 2013-12-11eRagexeRE
+#if PACKETVER == 20131211
+ packet(0x0202,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0366,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0865,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0873,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0881,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0892,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a3,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ab,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x092b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0931,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-12-18aRagexeRE, 2013-12-18bRagexe
+#if PACKETVER == 20131218
+ packet(0x022d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x087b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ab,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0947,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-12-23bRagexe, 2013-12-23bRagexeRE, 2013-12-23cRagexe, 2013-12-23xRagexeRE
+#if PACKETVER == 20131223
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2013-12-30aRagexe, 2013-12-30aRagexeRE
+#if PACKETVER == 20131230
+ packet(0x022d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x02c4,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x035f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0365,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0369,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0871,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x087b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a9,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x091d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0926,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x093d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0943,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0949,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0968,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0969,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x096a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2014-01-08bRagexeRE, 2014-01-08cRagexe, 2014-01-08cRagexeRE, 2014-01-08dRagexe
+#if PACKETVER == 20140108
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-01-15aRagexe, 2014-01-15bRagexe, 2014-01-15cRagexe, 2014-01-15cRagexeRE, 2014-01-15dRagexeRE, 2014-01-15eRagexe, 2014-01-15eRagexeRE
+#if PACKETVER == 20140115
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0367,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0865,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0887,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a7,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0965,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0966,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2014-01-22aRagexe, 2014-01-22aRagexeRE
+#if PACKETVER == 20140122
+ packet(0x0360,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0811,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0863,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0871,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0872,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0890,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0893,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0899,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a2,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08aa,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0917,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0925,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x092f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0941,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0942,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x094c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0950,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0952,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0955,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0957,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2014-01-29aRagexe, 2014-01-29bRagexeRE, 2014-01-29cRagexe
+#if PACKETVER == 20140129
+ packet(0x0281,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0367,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0884,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0885,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0921,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0924,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x092c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0958,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-02-05bRagexe, 2014-02-05bRagexeRE
+#if PACKETVER == 20140205
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0938,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-02-12aRagexe, 2014-02-12aRagexeRE
+#if PACKETVER == 20140212
+ packet(0x02c4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0369,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0438,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0874,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0877,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0878,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0888,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x088c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a0,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a1,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a7,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0919,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0928,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0930,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0934,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0936,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x093d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0944,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0952,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0953,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0960,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+#endif
+
+// 2014-02-19aRagexe, 2014-02-19aRagexeRE, 2014-02-19bRagexeRE
+#if PACKETVER == 20140219
+ packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0360,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0364,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0802,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x085d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0860,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0868,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0889,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0898,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x089f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08ac,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0921,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0927,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0939,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0949,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0953,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x095a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0961,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+#endif
+
+// 2014-02-26aRagexe, 2014-02-26aRagexeRE, 2014-02-26bRagexeRE
+#if PACKETVER == 20140226
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0877,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0887,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0894,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0921,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0931,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0941,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-03-05aRagexe, 2014-03-05aRagexeRE, 2014-03-05bRagexe, 2014-03-05bRagexeRE
+#if PACKETVER == 20140305
+ packet(0x0202,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0878,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0934,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-03-12bRagexeRE, 2014-03-12dRagexe
+#if PACKETVER == 20140312
+ packet(0x0202,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x023b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x086f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0889,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0891,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0894,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x089b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x089e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a6,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08ad,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x091e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0948,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x094c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0957,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2014-03-19aRagexe, 2014-03-19aRagexeRE
+#if PACKETVER == 20140319
+ packet(0x02c4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07e4,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0802,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0811,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0815,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x085a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0864,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0865,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0866,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0872,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0883,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0890,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0893,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a2,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0933,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0942,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0944,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0947,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0954,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0955,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0964,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x096a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2014-03-26aRagexe, 2014-03-26cRagexeRE
+#if PACKETVER == 20140326
+ packet(0x0362,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0365,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x07ec,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x083c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0865,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0867,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0869,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0887,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08aa,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ac,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08ad,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0918,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0928,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x092a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0946,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x095a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0969,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2014-04-02eRagexeRE, 2014-04-02fRagexe, 2014-04-02fRagexeRE, 2014-04-02gRagexe
+#if PACKETVER == 20140402
+ packet(0x023b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0360,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0364,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x085b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x085d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0867,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0868,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0882,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0883,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0890,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0896,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08ac,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0926,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0933,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x093f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0944,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0946,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x094c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0950,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0965,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2014-04-09aRagexe, 2014-04-09aRagexeRE, 2014-04-09bRagexe
+#if PACKETVER == 20140409
+ packet(0x0819,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x085b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0868,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x086a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0873,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0875,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x087e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0883,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0884,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0890,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0893,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0896,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a2,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a6,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08a7,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a9,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0918,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x092e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0942,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0947,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x095e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2014-04-16aRagexe, 2014-04-16aRagexeRE, 2014-04-16bRagexe
+#if PACKETVER == 20140416
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-04-23aRagexe, 2014-04-23aRagexeRE
+#if PACKETVER == 20140423
+ packet(0x022d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0436,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0811,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x083c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x085a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0866,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x086f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0873,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0890,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0895,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0896,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0898,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a8,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08ad,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x091a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0920,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2014-04-30aRagexe, 2014-04-30aRagexeRE
+#if PACKETVER == 20140430
+ packet(0x023b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x035f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0860,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0871,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0875,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0884,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0899,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a1,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0940,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0953,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0956,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+#endif
+
+// 2014-05-08bRagexe, 2014-05-08bRagexeRE
+#if PACKETVER == 20140508
+ packet(0x022d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0366,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0861,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x089b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0927,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0930,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0932,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0934,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2014-05-08aRagexe, 2014-05-08aRagexeRE, 2014-06-11eRagexe, 2015-02-25hRagexe
+#if PACKETVER == 20140508 || \
+ PACKETVER == 20140611 || \
+ PACKETVER == 20150225
+ packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x022d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x023b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0281,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0362,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0365,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x07ec,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0811,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0815,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0817,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2014-05-14bRagexe, 2014-05-14bRagexeRE, 2014-05-14cRagexeRE
+#if PACKETVER == 20140514
+ packet(0x0437,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0817,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0865,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0868,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0876,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0877,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0886,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0895,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a5,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0921,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0925,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0962,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0965,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x096a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+#endif
+
+// 2014-05-21aRagexeRE, 2014-05-21bRagexe
+#if PACKETVER == 20140521
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0869,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x089c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0968,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-05-28aRagexe, 2014-05-28aRagexeRE
+#if PACKETVER == 20140528
+ packet(0x0202,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0360,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x085f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0862,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0875,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0877,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0879,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x088f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0894,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a8,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0929,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0930,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0938,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x093a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x093f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0963,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0966,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+#endif
+
+// 2014-06-05aRagexe, 2014-06-05aRagexeRE, 2014-06-05bRagexe
+#if PACKETVER == 20140605
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0369,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0921,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-06-11bRagexeRE, 2014-06-11cRagexe, 2014-06-11dRagexe, 2014-06-11hRagexe, 2014-06-12aRagexe, 2014-06-13aRagexe
+#if PACKETVER == 20140611 || \
+ PACKETVER == 20140612 || \
+ PACKETVER == 20140613
+ packet(0x0364,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0438,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x07e4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0838,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0864,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0867,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0878,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0891,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0893,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0894,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a2,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0924,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0950,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0951,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0958,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0965,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0969,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2014-06-18aRagexe, 2014-06-18cRagexeRE
+#if PACKETVER == 20140618
+ packet(0x085d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0860,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0861,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0878,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0884,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0885,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0886,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0890,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a7,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08ac,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0917,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x091f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0929,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0935,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0939,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x093b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0945,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0957,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x095e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0967,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+#endif
+
+// 2014-06-25aRagexe, 2014-06-25aRagexeRE, 2014-06-25bRagexe
+#if PACKETVER == 20140625
+ packet(0x0202,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x023b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0815,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0817,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0835,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0861,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0875,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0886,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0888,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x088a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0897,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a1,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a2,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0923,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0928,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0946,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0959,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0968,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0969,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-07-02aRagexe, 2014-07-02aRagexeRE
+#if PACKETVER == 20140702
+ packet(0x022d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0438,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x07e4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0835,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0887,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0892,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0895,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a0,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a2,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0925,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0933,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-07-09aRagexe, 2014-07-09aRagexeRE
+#if PACKETVER == 20140709
+ packet(0x0364,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0866,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0869,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0875,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0877,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0879,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x087a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0887,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0888,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0894,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0897,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0898,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0925,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x092f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0931,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0934,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0939,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x093f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0961,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2014-07-16aRagexe, 2014-07-16aRagexeRE, 2014-07-16bRagexe, 2014-07-16cRagexe
+#if PACKETVER == 20140716
+ packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0811,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0868,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0871,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0881,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0896,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a2,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a4,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08ac,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0918,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0926,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x092c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0938,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0947,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0952,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0959,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+#endif
+
+// 2014-07-23aRagexe, 2014-07-23aRagexeRE, 2014-07-23bRagexe, 2014-07-23bRagexeRE
+#if PACKETVER == 20140723
+ packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0436,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0819,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x087d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0888,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0891,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0896,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0898,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08ad,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0927,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x092f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0934,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0935,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0939,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x093d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0945,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0947,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0948,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0960,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2014-07-30aRagexe, 2014-07-30bRagexeRE
+#if PACKETVER == 20140730
+ packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0366,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0367,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0437,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x07ec,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0802,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0815,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0817,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x087d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x087f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0889,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x088b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0892,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a0,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a7,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a9,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0924,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0934,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0940,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0946,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+#endif
+
+// 2014-08-06aRagexe, 2014-08-06aRagexeRE, 2014-08-06bRagexe
+#if PACKETVER == 20140806
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0948,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-08-13aRagexe, 2014-08-13aRagexeRE, 2014-08-13bRagexe, 2014-08-14aRagexe
+#if PACKETVER == 20140813 || \
+ PACKETVER == 20140814
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0868,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0878,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0882,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0897,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0899,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a7,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0967,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-08-20aRagexe, 2014-08-20aRagexeRE
+#if PACKETVER == 20140820
+ packet(0x035f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0835,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0861,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0864,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0869,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0872,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0876,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0899,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a3,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a7,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0936,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0937,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x093a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0951,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0952,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0956,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0958,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2014-08-27aRagexe, 2014-08-27aRagexeRE
+#if PACKETVER == 20140827
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0943,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-09-03aRagexe, 2014-09-03aRagexeRE
+#if PACKETVER == 20140903
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0943,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0945,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-09-17aRagexe, 2014-09-17cRagexeRE
+#if PACKETVER == 20140917
+ packet(0x022d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0364,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0365,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0367,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0895,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0897,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0898,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a8,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0919,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x091e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x092a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0930,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0949,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0951,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0955,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0956,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x095a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x095c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x095e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0966,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2014-09-24bRagexeRE, 2014-09-24cRagexe, 2014-09-24cRagexeRE
+#if PACKETVER == 20140924
+ packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0367,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0815,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0864,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0865,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x086b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x086d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0886,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0894,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0898,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a5,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a7,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0918,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0925,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0926,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0928,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0934,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0949,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0952,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+#endif
+
+// 2014-10-01aRagexe, 2014-10-01bRagexeRE, 2014-10-01cRagexeRE
+#if PACKETVER == 20141001
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0884,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0885,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0939,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0952,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+#endif
+
+// 2014-10-08aRagexe, 2014-10-08bRagexe, 2014-10-08bRagexeRE, 2014-10-08cRagexe, 2014-10-08cRagexeRE, 2014-10-08dRagexe
+#if PACKETVER == 20141008
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0942,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-10-15bRagexe, 2014-10-15bRagexeRE, 2014-10-15cRagexe, 2014-10-15dRagexe, 2014-10-16aRagexe, 2014-10-16aRagexeRE
+#if PACKETVER == 20141015 || \
+ PACKETVER == 20141016
+ packet(0x022d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0922,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0967,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-10-22aRagexeRE, 2014-10-22bRagexe
+#if PACKETVER == 20141022
+ packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0878,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0896,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0899,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08aa,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08ab,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x094e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-10-29aRagexe, 2014-10-29aRagexeRE
+#if PACKETVER == 20141029
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0940,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-11-05aRagexe, 2014-11-05aRagexeRE, 2014-11-05bRagexe, 2014-11-05bRagexeRE
+#if PACKETVER == 20141105
+ packet(0x022d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x035f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0360,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0864,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0865,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0871,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0874,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0875,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0877,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0879,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0887,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0892,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0898,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a0,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a5,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a7,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ad,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0944,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0948,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0950,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0957,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x095f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0968,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2014-11-12aRagexeRE, 2014-11-12cRagexe, 2014-11-12dRagexe
+#if PACKETVER == 20141112
+ packet(0x0362,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0438,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x07e4,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0869,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0871,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0885,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0886,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08a0,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a1,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08ab,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0919,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0926,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0929,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0943,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0960,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0962,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2014-11-19bRagexeRE, 2014-11-19dRagexe
+#if PACKETVER == 20141119
+ packet(0x0202,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0865,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0866,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0872,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0873,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0875,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x087c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0887,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0888,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x088d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0895,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a8,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0918,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0920,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0921,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0933,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0938,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0940,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0948,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x094c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0963,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2014-11-26aRagexe, 2014-11-26aRagexeRE, 2014-11-26bRagexe, 2014-11-26bRagexeRE, 2014-11-26cRagexe, 2014-11-26cRagexeRE, 2014-11-26dRagexe, 2014-11-26dRagexeRE, 2014-11-26eRagexeRE
+#if PACKETVER == 20141126
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0367,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0871,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0884,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0920,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0942,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0965,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-12-03aRagexe, 2014-12-03aRagexeRE
+#if PACKETVER == 20141203
+ packet(0x0202,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0281,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0362,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0367,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0861,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x086e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0880,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0889,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0898,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08a5,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08aa,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0917,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0928,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x092a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0936,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0957,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0962,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2014-12-10bRagexe, 2014-12-10cRagexe, 2014-12-10cRagexeRE
+#if PACKETVER == 20141210
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0885,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08ac,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0917,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0927,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x092b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0947,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0954,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0958,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0963,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0967,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2014-12-17aRagexe, 2014-12-17aRagexeRE
+#if PACKETVER == 20141217
+ packet(0x0360,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0875,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0878,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0879,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0883,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0889,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x088e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a1,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a2,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a8,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08ab,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08ac,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0919,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0924,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0930,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0932,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0933,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0936,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0939,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0940,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0944,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0945,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0948,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0960,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2014-12-23cRagexeRE, 2014-12-24aRagexe
+#if PACKETVER == 20141223 || \
+ PACKETVER == 20141224
+ packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0438,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0835,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x085a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0865,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086c,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0870,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x089b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a3,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08ac,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0932,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0945,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0946,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0949,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x094f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0950,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0953,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0956,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+#endif
+
+// 2014-12-31aRagexe, 2014-12-31aRagexeRE
+#if PACKETVER == 20141231
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-01-07aRagexe, 2015-01-07aRagexeRE
+#if PACKETVER == 20150107
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0895,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0943,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-01-14aRagexe, 2015-01-14aRagexeRE, 2015-01-14bRagexe, 2015-01-14cRagexe, 2015-01-14dRagexe
+#if PACKETVER == 20150114
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0868,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0899,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0946,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0955,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0957,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-01-21aRagexe, 2015-01-21aRagexeRE, 2015-01-21bRagexeRE
+#if PACKETVER == 20150121
+ packet(0x0281,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ab,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0918,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0919,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0955,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0959,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0963,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0967,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-01-28aRagexe, 2015-01-28aRagexeRE, 2015-01-29aRagexe, 2015-01-30aRagexe
+#if PACKETVER == 20150128 || \
+ PACKETVER == 20150129 || \
+ PACKETVER == 20150130
+ packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x023b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0368,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0838,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0864,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0870,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0874,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0875,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0888,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x093a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0968,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+#endif
+
+// 2015-02-04aRagexe, 2015-02-04cRagexeRE
+#if PACKETVER == 20150204
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0966,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-02-11aRagexe, 2015-02-11aRagexeRE
+#if PACKETVER == 20150211
+ packet(0x023b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0368,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0369,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0436,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0437,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x07e4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0817,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0819,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0835,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0862,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0870,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0873,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0882,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0883,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0885,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0886,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x089c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08aa,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0919,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0951,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0957,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0958,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2015-02-17aRagexe, 2015-02-17aRagexeRE
+#if PACKETVER == 20150217
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-02-25aRagexeRE, 2015-02-25bRagexeRE, 2015-02-25cRagexeRE, 2015-02-25dRagexeRE, 2015-02-25eRagexe, 2015-02-25eRagexeRE, 2015-02-25fRagexe, 2015-02-25gRagexe, 2015-02-25iRagexe, 2015-02-25jRagexe, 2015-02-26aRagexe, 2015-02-26aRagexeRE
+#if PACKETVER == 20150225 || \
+ PACKETVER == 20150226
+ packet(0x02c4,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0948,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0952,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0955,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2015-03-04aRagexe, 2015-03-04aRagexeRE, 2015-03-04bRagexeRE
+#if PACKETVER == 20150304
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x086d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0879,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0892,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0947,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x095d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0960,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0961,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-03-11aRagexe, 2015-03-11aRagexeRE, 2015-03-11bRagexe, 2015-03-11bRagexeRE
+#if PACKETVER == 20150311
+ packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0360,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0438,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0838,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x087b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0883,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0888,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0896,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a1,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a5,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08a6,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0928,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x092e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0943,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0957,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0958,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x095b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0963,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0964,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2015-03-18aRagexe, 2015-03-18aRagexeRE, 2015-03-18bRagexe, 2015-03-18bRagexeRE, 2015-03-18cRagexeRE
+#if PACKETVER == 20150318
+ packet(0x0202,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x023b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0281,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0802,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0862,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0885,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0889,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x088c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x089c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a4,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0920,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0927,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0928,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0936,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0937,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0951,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0958,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0959,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0960,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2015-03-25aRagexe, 2015-03-25bRagexeRE, 2015-03-25cRagexeRE
+#if PACKETVER == 20150325
+ packet(0x0202,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0365,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0438,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0883,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0885,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0893,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0897,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0899,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a7,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0919,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0931,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0932,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0938,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0947,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0950,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0954,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0969,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+#endif
+
+// 2015-04-01aRagexe, 2015-04-01bRagexeRE
+#if PACKETVER == 20150401
+ packet(0x0362,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0367,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0437,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x083c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x086f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0875,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x087e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0895,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0898,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a5,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x091c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0922,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0924,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0938,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0939,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x093a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x093b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x093e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0949,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0953,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0964,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2015-04-08aRagexe, 2015-04-08aRagexeRE
+#if PACKETVER == 20150408
+ packet(0x0819,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x085a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0865,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0868,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x086b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x086e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0878,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x087f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0888,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0889,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0891,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a2,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0922,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0946,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0955,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0957,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0959,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0963,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2015-04-15aRagexe, 2015-04-15aRagexeRE
+#if PACKETVER == 20150415
+ packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0364,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0366,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0368,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0802,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0835,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x085e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0867,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0868,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0869,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0880,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0898,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a0,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x093c,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0941,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0946,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0953,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2015-04-22aRagexe, 2015-04-22aRagexeRE
+#if PACKETVER == 20150422
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0955,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-04-29aRagexe, 2015-04-29aRagexeRE
+#if PACKETVER == 20150429
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0886,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0894,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0899,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x089f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a8,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ad,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0943,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-05-07bRagexe, 2015-05-07bRagexeRE, 2015-05-07cRagexe
+#if PACKETVER == 20150507
+ packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0887,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0889,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0924,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x093b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0941,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0942,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0953,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0955,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0958,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-05-13aRagexe, 2015-05-13aRagexeRE
+#if PACKETVER == 20150513
+ packet(0x022d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x02c4,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0883,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a8,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0923,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0924,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0927,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0960,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-05-20aRagexe, 2015-05-20aRagexeRE
+#if PACKETVER == 20150520
+ packet(0x0202,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0361,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0835,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0865,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0868,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0880,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0882,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a2,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0924,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0931,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0936,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x093d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0940,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0945,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0960,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0961,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2015-05-27aRagexe, 2015-05-27aRagexeRE
+#if PACKETVER == 20150527
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x083c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0940,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-06-03aRagexe, 2015-06-03bRagexeRE
+#if PACKETVER == 20150603
+ packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0437,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0860,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0864,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0867,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0873,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0877,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0881,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0884,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0897,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a1,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ad,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0922,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x093b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0955,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0956,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0960,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0969,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x096a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+#endif
+
+// 2015-06-10aRagexe, 2015-06-10aRagexeRE
+#if PACKETVER == 20150610
+ packet(0x022d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0438,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x07e4,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0835,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0872,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0877,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0884,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x088d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x088f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0897,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a0,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08ac,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0925,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x092e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0932,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0940,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0946,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0949,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0957,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x095d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0964,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2015-06-17aRagexe, 2015-06-17aRagexeRE, 2015-06-18aRagexe, 2015-06-18aRagexeRE
+#if PACKETVER == 20150617 || \
+ PACKETVER == 20150618
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0365,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0869,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0870,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0894,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-06-24aRagexe, 2015-06-24aRagexeRE
+#if PACKETVER == 20150624
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0365,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0870,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0940,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0966,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-07-01bRagexe, 2015-07-01bRagexeRE, 2015-07-02aRagexe
+#if PACKETVER == 20150701 || \
+ PACKETVER == 20150702
+ packet(0x023b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x07e4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x087d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0883,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0893,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a0,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a4,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a5,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a6,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08ad,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0919,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0923,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0928,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x093f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0946,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0954,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0956,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0958,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x095f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0960,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0968,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2015-07-08bRagexeRE, 2015-07-08cRagexe, 2015-07-08cRagexeRE, 2015-07-08dRagexeRE
+#if PACKETVER == 20150708
+ packet(0x022d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0368,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0872,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x092a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0962,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-07-15aRagexe, 2015-07-15aRagexeRE
+#if PACKETVER == 20150715
+ packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0362,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0436,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0437,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0835,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0873,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0879,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x087c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x087f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0886,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0895,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0896,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0897,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0899,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x089a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a4,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08ac,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0917,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x093e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0944,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0950,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0956,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0961,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0965,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2015-07-22bRagexe, 2015-07-22bRagexeRE
+#if PACKETVER == 20150722
+ packet(0x023b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0281,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0360,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0361,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0368,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0811,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0815,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0817,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0869,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0878,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x087d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0880,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0884,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0899,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a8,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0919,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0921,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0925,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x092e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x093d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x094c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0951,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0958,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2015-07-29aRagexe, 2015-07-29aRagexeRE
+#if PACKETVER == 20150729
+ packet(0x0437,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0438,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x085b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0860,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x086f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0870,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0880,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0881,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0886,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a3,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ac,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08ad,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0920,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x092b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x093a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0955,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0961,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+#endif
+
+// 2015-08-05aRagexe, 2015-08-05dRagexeRE
+#if PACKETVER == 20150805
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-08-12aRagexe, 2015-08-12aRagexeRE
+#if PACKETVER == 20150812
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-08-19aRagexe, 2015-08-19aRagexeRE, 2015-08-19bRagexeRE
+#if PACKETVER == 20150819
+ packet(0x0202,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x022d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0281,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x085d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0862,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0865,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0871,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0888,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0919,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0927,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0961,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0967,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-08-26aRagexe, 2015-08-26aRagexeRE, 2015-08-26bRagexe, 2015-08-26bRagexeRE
+#if PACKETVER == 20150826
+ packet(0x0362,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0436,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x07ec,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0819,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0861,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x086b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x087b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0890,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0891,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a0,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08a1,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0924,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0928,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x092e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0945,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0951,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0959,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0968,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0969,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+#endif
+
+// 2015-09-02aRagexe, 2015-09-02aRagexeRE
+#if PACKETVER == 20150902
+ packet(0x023b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0360,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0367,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0802,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x083c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0863,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0886,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0887,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0889,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x088d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0892,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0897,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0899,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a9,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0923,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0928,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0941,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0947,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x094f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0953,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0960,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2015-09-09aRagexe, 2015-09-09aRagexeRE
+#if PACKETVER == 20150909
+ packet(0x023b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0361,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0437,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0861,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0871,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x087b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0883,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0886,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0895,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0928,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0940,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0941,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0962,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2015-09-16aRagexe, 2015-09-16cRagexe, 2015-09-16cRagexeRE
+#if PACKETVER == 20150916
+ packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0817,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0835,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0869,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0873,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0877,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0881,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x089b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08ac,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0920,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0924,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x092e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x092f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0934,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0936,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x093e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0941,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0942,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0948,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x095a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0960,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0969,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2015-09-23bRagexe, 2015-09-23bRagexeRE, 2015-09-23cRagexe, 2015-09-23dRagexe, 2015-09-23eRagexe, 2015-09-23eRagexeRE, 2015-09-23fRagexe, 2015-09-23fRagexeRE
+#if PACKETVER == 20150923
+ packet(0x0361,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0817,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x085c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x085d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0864,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x086f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0870,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0879,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x088e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0892,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0895,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a0,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a2,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a5,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a6,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x092b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0936,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0951,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+#endif
+
+// 2015-10-01aRagexe, 2015-10-01bRagexeRE
+#if PACKETVER == 20151001
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0960,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-10-07aRagexe, 2015-10-07aRagexeRE
+#if PACKETVER == 20151007
+ packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x093f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0961,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0967,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-10-14bRagexe, 2015-10-14bRagexeRE
+#if PACKETVER == 20151014
+ packet(0x0202,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0817,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0838,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x085a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0863,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0874,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0881,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0883,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0884,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0889,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x088e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x089f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08aa,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x091d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0930,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0934,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0944,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x094f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0956,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0961,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+#endif
+
+// 2015-10-21aRagexe, 2015-10-21aRagexeRE, 2015-10-22aRagexe, 2015-10-22aRagexeRE
+#if PACKETVER == 20151021 || \
+ PACKETVER == 20151022
+ packet(0x023b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x02c4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-10-28bRagexeRE, 2015-10-28bRagexeRE_2, 2015-10-28cRagexe, 2015-10-28cRagexeRE, 2015-10-28dRagexe, 2015-10-28dRagexeRE, 2015-10-29aRagexe, 2015-10-29aRagexeRE
+#if PACKETVER == 20151028 || \
+ PACKETVER == 20151029
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0860,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-11-04aRagexe, 2015-11-04aRagexeRE
+#if PACKETVER == 20151104
+ packet(0x023b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0360,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0363,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0437,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0811,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0815,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0886,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x088d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a3,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a5,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0928,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0939,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093a,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x0940,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2015-11-11aRagexe, 2015-11-11aRagexeRE, 2015-11-11bRagexe
+#if PACKETVER == 20151111
+ packet(0x02c4,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x0862,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0871,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0885,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0942,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0958,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0967,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0969,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-11-18aRagexe, 2015-11-18aRagexeRE
+#if PACKETVER == 20151118
+ packet(0x022d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x035f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x088b,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x08ab,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0921,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0925,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0943,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x0957,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095c,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-11-25bRagexe, 2015-11-25bRagexeRE, 2015-11-25cRagexeRE, 2015-11-25dRagexe, 2015-11-25dRagexeRE
+#if PACKETVER == 20151125
+ packet(0x0361,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0366,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x0438,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0802,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0838,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0863,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0883,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0884,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x0885,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088c,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a9,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x092a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0939,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x093e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0951,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0956,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0959,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2015-12-02aRagexe, 2015-12-02bRagexeRE
+#if PACKETVER == 20151202
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0870,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2015-12-09aRagexe, 2015-12-09aRagexeRE
+#if PACKETVER == 20151209
+ packet(0x0365,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x07e4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x07ec,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0811,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0819,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085b,36,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD
+ packet(0x085d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0861,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0866,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0894,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a1,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0920,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0930,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0932,-1,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES
+ packet(0x093b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0948,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094a,18,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0956,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0961,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0964,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+#endif
+
+// 2015-12-16aRagexe, 2015-12-16aRagexeRE
+#if PACKETVER == 20151216
+ packet(0x022d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0361,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0364,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0436,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0865,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0870,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0874,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0885,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a2,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a9,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0947,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0949,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0954,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0960,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0966,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0968,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2015-12-23bRagexe, 2015-12-23bRagexeRE
+#if PACKETVER == 20151223
+ packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0362,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0802,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0815,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0864,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0866,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0872,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0875,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0876,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0881,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0884,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0886,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0890,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0891,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0898,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08aa,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0918,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x091b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0920,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0923,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0924,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x095e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0965,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0967,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2015-12-30aRagexe, 2015-12-30aRagexeRE
+#if PACKETVER == 20151230
+ packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x07ec,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0861,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0869,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0886,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x088e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0897,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0923,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0949,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-01-06aRagexe, 2016-01-06aRagexeRE
+#if PACKETVER == 20160106
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0861,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x086c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0878,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x087f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0889,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0891,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0940,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-01-13aRagexe, 2016-01-13aRagexeRE, 2016-01-13bRagexe, 2016-01-13bRagexeRE, 2016-01-13bRagexeRE_2, 2016-01-13bRagexe_2, 2016-01-13cRagexeRE
+#if PACKETVER == 20160113
+ packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x023b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0815,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x085b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0864,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x086d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0873,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0888,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0893,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a0,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a6,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08aa,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0919,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0924,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0930,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0932,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x093c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0941,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0967,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2016-01-20aRagexe, 2016-01-20aRagexeRE
+#if PACKETVER == 20160120
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0865,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-01-27aRagexeRE, 2016-01-27aRagexeRE_2, 2016-01-27bRagexeRE, 2016-01-27cRagexe, 2016-01-27dRagexe
+#if PACKETVER == 20160127
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0922,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0961,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-02-03aRagexe, 2016-02-03aRagexeRE
+#if PACKETVER == 20160203
+ packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0437,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0835,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0873,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0918,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0940,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0947,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0954,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-02-11aRagexe, 2016-02-11aRagexeRE
+#if PACKETVER == 20160211
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0870,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0886,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-02-17aRagexe, 2016-02-17aRagexeRE, 2016-02-17bRagexeRE, 2016-02-17bRagexeRE_2, 2016-02-17cRagexeRE
+#if PACKETVER == 20160217
+ packet(0x0202,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x023b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0362,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0365,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0864,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0870,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0873,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x087a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0888,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x088f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0899,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a0,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a9,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08ac,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08ad,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x091d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0920,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0926,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0941,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x095e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0966,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0967,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0969,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2016-02-24aRagexe, 2016-02-24aRagexeRE, 2016-02-24bRagexeRE
+#if PACKETVER == 20160224
+ packet(0x022d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0364,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0436,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0861,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0884,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0885,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0888,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0920,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0929,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0936,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0938,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0961,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-03-02bRagexe, 2016-03-02bRagexeRE
+#if PACKETVER == 20160302
+ packet(0x022d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0367,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0802,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0819,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0864,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0865,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0867,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0868,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0873,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0883,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a6,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a9,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0927,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0945,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094e,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0950,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0957,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0960,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0967,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0968,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+#endif
+
+// 2016-03-09aRagexeRE, 2016-03-09cRagexe
+#if PACKETVER == 20160309
+ packet(0x023b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0281,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0819,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0838,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x083c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0873,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x087e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0920,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0922,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0929,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0932,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0956,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x096a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2016-03-16aRagexe, 2016-03-16aRagexeRE, 2016-03-18aRagexe
+#if PACKETVER == 20160316 || \
+ PACKETVER == 20160318
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0922,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-03-23aRagexe, 2016-03-23aRagexeRE, 2016-03-23bRagexe, 2016-03-23bRagexeRE
+#if PACKETVER == 20160323
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0869,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0872,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0878,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0883,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0896,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0926,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0927,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0933,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x093c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-03-30aRagexe, 2016-03-30aRagexeRE, 2016-03-30bRagexe
+#if PACKETVER == 20160330
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0365,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0878,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0918,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0925,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x092c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0930,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0939,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x093b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-04-06aRagexe, 2016-04-06aRagexeRE, 2016-04-06bRagexe
+#if PACKETVER == 20160406
+ packet(0x0364,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x07e4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0869,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0877,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0878,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0879,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0884,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0892,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0895,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0898,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a9,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ac,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0927,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0933,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0934,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0940,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0949,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0953,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0962,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2016-04-14aRagexe, 2016-04-14aRagexeRE, 2016-04-14bRagexe, 2016-04-14bRagexeRE, 2016-04-14bRagexe_2, 2016-04-14cRagexe
+#if PACKETVER == 20160414
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0363,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0880,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0918,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0922,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0927,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0931,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0934,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0945,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0953,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-04-20aRagexeRE, 2016-04-20cRagexe
+#if PACKETVER == 20160420
+ packet(0x022d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x02c4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x035f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0870,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0872,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0874,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0884,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a5,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0935,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x094e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-04-27aRagexe, 2016-04-27aRagexeRE
+#if PACKETVER == 20160427
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0835,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-05-04aRagexe, 2016-05-04aRagexeRE
+#if PACKETVER == 20160504
+ packet(0x0202,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0363,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0365,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x083c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x085f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x087f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0884,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0887,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x088d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0893,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0898,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08ad,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0918,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0921,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0922,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0924,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0940,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0941,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0948,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0952,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0969,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2016-05-11aRagexe, 2016-05-11aRagexeRE, 2016-05-11bRagexeRE
+#if PACKETVER == 20160511
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0894,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0918,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-05-18aRagexe, 2016-05-18aRagexeRE
+#if PACKETVER == 20160518
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0874,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a9,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0928,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-05-25aRagexe, 2016-05-25aRagexeRE, 2016-05-26aRagexe
+#if PACKETVER == 20160525 || \
+ PACKETVER == 20160526
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x085e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0867,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x092c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0945,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0951,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0956,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-06-01aRagexe, 2016-06-01aRagexeRE
+#if PACKETVER == 20160601
+ packet(0x0202,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0863,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0870,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x088f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0895,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a7,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ac,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0924,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0961,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-06-08aRagexe, 2016-06-08aRagexeRE, 2016-06-08bRagexe, 2016-06-08bRagexeRE, 2016-06-09aRagexe
+#if PACKETVER == 20160608 || \
+ PACKETVER == 20160609
+ packet(0x022d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x035f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0437,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07ec,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0802,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0889,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0899,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a6,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0958,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0969,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-06-15aRagexe, 2016-06-15aRagexeRE
+#if PACKETVER == 20160615
+ packet(0x0281,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0369,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x083c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0866,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0870,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0887,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0888,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0891,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x092f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0947,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0948,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0954,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0957,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0958,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0961,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2016-06-22aRagexe, 2016-06-22aRagexeRE
+#if PACKETVER == 20160622
+ packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x035f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x07e4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0861,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0865,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0867,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0880,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0887,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0890,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0891,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0892,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x089a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a2,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a8,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092d,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x092f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0936,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x093b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x093f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0959,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0965,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0969,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+#endif
+
+// 2016-06-29aRagexe, 2016-06-29aRagexeRE, 2016-06-30aRagexe, 2016-06-30aRagexeRE
+#if PACKETVER == 20160629 || \
+ PACKETVER == 20160630
+ packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x022d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x035f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0363,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0368,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x085c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x085e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0860,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0861,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0863,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0867,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x086b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0881,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0885,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0893,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0922,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0925,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0926,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0946,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0948,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0957,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0968,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0969,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2016-07-06bRagexe, 2016-07-06cRagexeRE
+#if PACKETVER == 20160706
+ packet(0x0362,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x085f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0860,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0869,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x086b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0884,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0886,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0892,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0899,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a5,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a8,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0918,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x091b,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0924,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0926,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0927,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0929,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0939,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x093d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0944,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0945,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0957,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0958,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2016-07-13aRagexe, 2016-07-13aRagexeRE, 2016-07-13bRagexe, 2016-07-13bRagexeRE, 2016-07-13cRagexe, 2016-07-13dRagexe
+#if PACKETVER == 20160713
+ packet(0x022d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0363,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0838,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0860,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0865,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0869,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0877,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0883,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0892,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x089a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0921,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0922,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0931,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0944,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0945,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0947,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0957,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x095b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2016-07-20aRagexe, 2016-07-20aRagexeRE, 2016-07-20bRagexe, 2016-07-20bRagexeRE
+#if PACKETVER == 20160720
+ packet(0x0362,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0363,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0365,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x07e4,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0838,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x085b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x086a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0883,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0897,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a0,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08aa,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0917,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x091c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093b,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x093e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0946,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0953,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x095b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0960,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0969,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+#endif
+
+// 2016-07-27aRagexe, 2016-07-27aRagexeRE, 2016-07-27bRagexe, 2016-07-27bRagexeRE
+#if PACKETVER == 20160727
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x023b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0363,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0436,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x07ec,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0866,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0868,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0869,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0874,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0877,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0883,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0887,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x089f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a4,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a7,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0936,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0941,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0946,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0949,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0951,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x095f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0966,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+#endif
+
+// 2016-08-03bRagexe, 2016-08-03bRagexeRE
+#if PACKETVER == 20160803
+ packet(0x0364,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x085d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0878,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0881,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0886,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0887,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0888,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0891,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0895,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08a1,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0929,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0930,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0932,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0934,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0937,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x093a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x093e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0952,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0955,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0956,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0959,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+#endif
+
+// 2016-08-10aRagexe, 2016-08-10aRagexeRE
+#if PACKETVER == 20160810
+ packet(0x0361,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0819,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x085d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x085e,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x085f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0860,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0875,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0879,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0885,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0888,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0890,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x089f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a9,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0926,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0935,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0943,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0959,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x095b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0967,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2016-08-17aRagexe, 2016-08-17aRagexeRE
+#if PACKETVER == 20160817
+ packet(0x0364,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0437,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x07e4,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0811,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0819,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x083c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x085c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0867,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x086b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0875,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x087f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0886,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0891,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x089c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08a5,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a6,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a9,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08ab,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08ac,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08ad,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0929,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0930,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0939,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0957,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0960,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0963,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2016-08-24aRagexe, 2016-08-24aRagexeRE
+#if PACKETVER == 20160824
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0934,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-08-31aRagexe, 2016-08-31aRagexeRE, 2016-08-31bRagexe, 2016-08-31bRagexeRE
+#if PACKETVER == 20160831
+ packet(0x022d,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0366,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x086d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0874,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0876,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0878,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x087c,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08a8,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a9,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0917,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0938,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0946,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x094a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0950,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0954,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0957,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0960,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0964,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0967,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2016-09-07aRagexe, 2016-09-07aRagexeRE
+#if PACKETVER == 20160907
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x091c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-09-13aRagexe, 2016-09-13aRagexeRE
+#if PACKETVER == 20160913
+ packet(0x0361,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0817,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0865,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0874,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0875,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0879,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0887,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0889,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x088e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0891,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0892,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a5,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0935,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x093a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0949,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x094a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0950,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0952,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0954,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0962,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0963,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0968,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+#endif
+
+// 2016-09-21aRagexe, 2016-09-21bRagexeRE
+#if PACKETVER == 20160921
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-09-28cRagexe, 2016-09-28cRagexeRE, 2016-09-28dRagexeRE
+#if PACKETVER == 20160928
+ packet(0x0202,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0366,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0811,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0864,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0872,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0878,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0889,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x088e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0897,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x089a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a9,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0919,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0927,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0944,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0953,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0957,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+#endif
+
+// 2016-10-05aRagexe, 2016-10-05aRagexeRE
+#if PACKETVER == 20161005
+ packet(0x0202,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0838,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0863,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0886,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0891,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0892,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a0,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08ac,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0918,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0919,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x092b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0931,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0932,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x093b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0942,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0944,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0945,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x094a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0952,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x095b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0967,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2016-10-12aRagexe, 2016-10-12aRagexeRE
+#if PACKETVER == 20161012
+ packet(0x023b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0364,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0365,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0369,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x07ec,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0819,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x085b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x085e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0863,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0868,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0872,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0875,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0880,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0893,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a0,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0936,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0937,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0939,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0943,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0944,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0951,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0962,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0966,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0967,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2016-10-19aRagexe, 2016-10-19aRagexeRE
+#if PACKETVER == 20161019
+ packet(0x022d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0361,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0889,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0892,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0963,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-10-26bRagexe, 2016-10-26bRagexeRE, 2016-10-26cRagexe, 2016-10-26cRagexeRE
+#if PACKETVER == 20161026
+ packet(0x0363,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085f,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0861,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0862,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x086a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x086e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087a,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x087c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0886,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0891,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0894,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0898,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0926,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x092e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0930,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0953,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x095c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x095e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0962,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2016-11-02aRagexe, 2016-11-02aRagexeRE, 2016-11-03aRagexe, 2016-11-03aRagexeRE
+#if PACKETVER == 20161102 || \
+ PACKETVER == 20161103
+ packet(0x0361,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0367,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0802,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x083c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0869,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0874,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0886,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a2,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08aa,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x091b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0922,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0925,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0936,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0946,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0949,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x095e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0964,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0965,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0966,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+#endif
+
+// 2016-11-09aRagexe, 2016-11-09aRagexeRE, 2016-11-09bRagexe, 2016-11-09bRagexeRE, 2016-11-09cRagexeRE, 2016-11-09dRagexeRE
+#if PACKETVER == 20161109
+ packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0361,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0362,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0366,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x085d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x085e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x086a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0870,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0876,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0881,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x088e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0891,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0898,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a7,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08ad,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0927,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0937,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0954,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0956,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2016-11-16aRagexe, 2016-11-16bRagexeRE, 2016-11-16cRagexeRE
+#if PACKETVER == 20161116
+ packet(0x0368,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0369,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0835,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x085f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0885,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x088d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x088f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0890,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0892,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0893,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a2,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08ac,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0920,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0925,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x092a,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0931,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x093c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x094a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0957,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x095b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0967,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+#endif
+
+// 2016-11-23aRagexe, 2016-11-23aRagexeRE
+#if PACKETVER == 20161123
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0362,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0437,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085c,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0861,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0866,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x086f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0871,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0880,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0882,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089c,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a9,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08aa,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0926,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0930,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x094d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x094f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x095a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x095b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0962,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+#endif
+
+// 2016-11-30aRagexe, 2016-11-30aRagexeRE, 2016-11-30bRagexe, 2016-11-30bRagexeRE
+#if PACKETVER == 20161130
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0931,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0943,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0954,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0959,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-12-07cRagexe, 2016-12-07cRagexeRE, 2016-12-07dRagexeRE, 2016-12-07eRagexe, 2016-12-07eRagexeRE
+#if PACKETVER == 20161207
+ packet(0x023b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0868,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0875,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087e,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0886,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a2,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08ad,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0943,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0965,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-12-14bRagexe, 2016-12-14bRagexeRE, 2016-12-14cRagexe, 2016-12-14cRagexeRE
+#if PACKETVER == 20161214
+ packet(0x022d,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x02c4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0436,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0862,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x086d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0887,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0895,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0899,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a6,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x092e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x093d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2016-12-21aRagexe, 2016-12-21aRagexeRE, 2016-12-21bRagexe, 2016-12-21bRagexeRE, 2016-12-21cRagexeRE, 2016-12-21dRagexeRE
+#if PACKETVER == 20161221
+ packet(0x035f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0366,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0438,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0817,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x085b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0866,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0876,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0881,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0890,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0899,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08aa,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0926,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x092e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0930,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0943,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0946,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x094b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x095a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0964,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0965,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2016-12-28aRagexe, 2016-12-28aRagexeRE
+#if PACKETVER == 20161228
+ packet(0x0362,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x085a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0865,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x086a,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x086c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0870,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0871,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0875,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x087f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0886,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0889,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0893,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a2,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a3,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a5,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08ab,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08ac,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08ad,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0929,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x092c,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0934,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0935,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0938,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x093d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0944,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+#endif
+
+// 2017-01-04aRagexe, 2017-01-04bRagexeRE
+#if PACKETVER == 20170104
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x085a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0896,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-01-11aRagexe, 2017-01-11aRagexeRE
+#if PACKETVER == 20170111
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0877,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a1,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a3,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a6,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0961,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0969,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-01-18aRagexe, 2017-01-18aRagexeRE
+#if PACKETVER == 20170118
+ packet(0x022d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0364,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0865,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086f,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0873,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08ad,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x091f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0927,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0933,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0958,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0962,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2017-01-25aRagexe, 2017-01-25aRagexeRE
+#if PACKETVER == 20170125
+ packet(0x0438,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0876,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0877,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0879,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0881,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0893,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0894,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0895,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08a5,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091b,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x091c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0920,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0929,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x092b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0930,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0943,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0944,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0965,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0968,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2017-02-01aRagexe, 2017-02-01aRagexeRE
+#if PACKETVER == 20170201
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0815,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0875,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0879,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0881,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0886,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a4,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0919,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0920,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0938,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0940,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x094c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0969,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-02-08aRagexeRE, 2017-02-08bRagexe, 2017-02-08bRagexeRE
+#if PACKETVER == 20170208
+ packet(0x02c4,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0367,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0860,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0892,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a1,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08ac,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0921,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0923,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0932,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0937,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-02-15aRagexe, 2017-02-15aRagexeRE
+#if PACKETVER == 20170215
+ packet(0x02c4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x035f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0876,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087c,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x087d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087e,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0883,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x088b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x088c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0890,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0896,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a2,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08a8,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0925,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x092d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0942,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x094e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x095f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0962,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0969,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+#endif
+
+// 2017-02-22aRagexe, 2017-02-22aRagexeRE
+#if PACKETVER == 20170222
+ packet(0x0202,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0866,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0870,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0871,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0877,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0894,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a3,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a8,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0939,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0943,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0962,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-02-28aRagexe, 2017-02-28aRagexeRE, 2017-02-28bRagexe
+#if PACKETVER == 20170228
+ packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0360,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0819,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x085e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0863,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086b,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0873,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0874,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0876,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0883,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0884,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0889,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0893,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x089e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a0,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a7,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x091f,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x092a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0937,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0944,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0947,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0948,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0952,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0955,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2017-03-08aRagexe, 2017-03-08bRagexeRE
+#if PACKETVER == 20170308
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-03-15cRagexe, 2017-03-15cRagexeRE
+#if PACKETVER == 20170315
+ packet(0x02c4,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x035f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0360,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0366,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0436,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x07ec,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085c,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0863,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x086a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0872,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0884,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x088b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x089c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x091d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0920,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0922,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0944,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x094a,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x094e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0950,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0952,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2017-03-22aRagexe, 2017-03-22aRagexeRE, 2017-03-22bRagexe, 2017-03-22bRagexeRE
+#if PACKETVER == 20170322
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x091a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-03-29bRagexe, 2017-03-29cRagexe, 2017-03-29cRagexeRE, 2017-03-29dRagexeRE
+#if PACKETVER == 20170329
+ packet(0x0281,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0363,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0888,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a8,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0917,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0926,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0929,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x092e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0937,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0949,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-04-05bRagexe, 2017-04-05bRagexeRE, 2017-04-05cRagexe, 2017-04-05cRagexeRE
+#if PACKETVER == 20170405
+ packet(0x022d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0281,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0363,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085f,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0860,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0864,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0865,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0893,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a5,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094c,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0964,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-04-12aRagexe, 2017-04-12aRagexeRE
+#if PACKETVER == 20170412
+ packet(0x023b,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0365,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0863,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0869,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086d,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0878,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0879,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x088b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0890,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0893,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0898,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x089a,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08a1,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x091e,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0929,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x092e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0938,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0942,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0945,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0949,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x094f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0952,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0959,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x095c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x095d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+#endif
+
+// 2017-04-19aRagexe, 2017-04-19bRagexeRE
+#if PACKETVER == 20170419
+ packet(0x0811,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0819,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0838,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0862,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0868,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0872,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0881,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0897,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0898,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x089d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0920,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0922,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0930,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0931,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0935,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093f,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0942,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x095c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x095d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0963,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0965,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+#endif
+
+// 2017-04-26bRagexe, 2017-04-26dRagexeRE
+#if PACKETVER == 20170426
+ packet(0x0281,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0866,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0887,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0899,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a2,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x08a4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0927,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0940,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0958,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0963,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-05-02aRagexe, 2017-05-02bRagexe, 2017-05-02dRagexeRE
+#if PACKETVER == 20170502
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0875,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0894,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x089c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x093c,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0950,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-05-17aRagexe, 2017-05-17aRagexeRE, 2017-05-17bRagexeRE
+#if PACKETVER == 20170517
+ packet(0x0364,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0367,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0815,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0817,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0868,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0875,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087b,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x088d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0894,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0896,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x089f,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a2,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a8,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08aa,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x091b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x093b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0946,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0960,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0964,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+#endif
+
+// 2017-05-24aRagexe, 2017-05-24aRagexeRE, 2017-05-24bRagexe
+#if PACKETVER == 20170524
+ packet(0x0364,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0368,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0802,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x085e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0860,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0864,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0866,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0868,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x086d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0873,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0874,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087d,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0882,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0894,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089c,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a1,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0923,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0925,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0934,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0946,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0958,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x095b,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0964,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0967,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0968,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+#endif
+
+// 2017-05-31aRagexe, 2017-05-31aRagexeRE
+#if PACKETVER == 20170531
+ packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0369,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x07e4,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x07ec,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0819,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x085f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0868,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0873,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0875,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0878,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x088d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0894,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a2,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x08ac,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08ad,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0933,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0940,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0945,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0963,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0968,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+#endif
+
+// 2017-06-07bRagexeRE, 2017-06-07cRagexe, 2017-06-07cRagexeRE
+#if PACKETVER == 20170607
+ packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0364,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x07e4,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x085e,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0862,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0864,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0871,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0873,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0875,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0885,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x088a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0897,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x089d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a9,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08ab,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0917,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0918,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0919,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0925,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0927,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0931,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0934,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0938,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x093d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0944,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0949,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2017-06-14bRagexe, 2017-06-14bRagexeRE
+#if PACKETVER == 20170614
+ packet(0x023b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0361,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0364,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0367,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0838,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x083c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0860,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0865,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0866,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0867,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x086b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x086c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0877,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x087d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0889,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a2,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08ad,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0928,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x092f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0936,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0944,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0957,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0963,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2017-06-21aRagexeRE, 2017-06-21bRagexe
+#if PACKETVER == 20170621
+ packet(0x0202,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0365,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0366,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0802,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085d,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x087d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0885,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a8,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0956,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0957,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x095c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0961,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-06-28bRagexe, 2017-06-28bRagexeRE
+#if PACKETVER == 20170628
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0863,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-07-05aRagexe, 2017-07-05aRagexeRE
+#if PACKETVER == 20170705
+ packet(0x0202,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x02c4,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0879,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0886,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x088d,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x092f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0930,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0932,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0934,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x094c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-07-12bRagexe, 2017-07-12bRagexeRE
+#if PACKETVER == 20170712
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0944,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-07-19aRagexe, 2017-07-19aRagexeRE
+#if PACKETVER == 20170719
+ packet(0x022d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0367,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0368,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0369,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x07e4,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085a,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0863,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x086e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x087d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0881,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0882,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0891,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0898,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089d,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a6,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a8,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091b,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x092c,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x092e,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x092f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x093d,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0944,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0966,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+#endif
+
+// 2017-07-26aRagexe, 2017-07-26cRagexeRE
+#if PACKETVER == 20170726
+ packet(0x0363,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0369,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0438,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0838,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0873,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0874,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0878,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0881,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0888,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x088e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a3,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a7,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08aa,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08ab,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08ac,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x091e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0921,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0923,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0943,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x094f,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0950,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0952,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0954,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095a,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0963,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+#endif
+
+// 2017-08-01aRagexe, 2017-08-01aRagexeRE, 2017-08-01bRagexe
+#if PACKETVER == 20170801
+ packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0281,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0362,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a6,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095a,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-08-09cRagexe, 2017-08-09cRagexeRE
+#if PACKETVER == 20170809
+ packet(0x022d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0281,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0364,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0366,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0367,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x07e4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0802,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0835,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0868,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x086e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086f,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0876,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0880,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0890,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0892,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0895,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0899,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a3,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a6,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0918,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0921,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x092b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0931,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0939,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x093b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0940,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2017-08-16cRagexe, 2017-08-16cRagexeRE, 2017-08-16dRagexe, 2017-08-16dRagexeRE
+#if PACKETVER == 20170816
+ packet(0x022d,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x035f,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0361,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0362,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0438,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x085a,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0862,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0864,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x087e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0881,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0882,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0884,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0888,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0889,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x08a3,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a7,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08a9,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08ac,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x091c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0921,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0925,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x092c,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x093a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x093d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0940,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0941,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0950,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0960,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+#endif
+
+// 2017-08-23aRagexe, 2017-08-23aRagexeRE
+#if PACKETVER == 20170823
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x086d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08ac,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-08-30aRagexe, 2017-08-30aRagexeRE, 2017-08-30bRagexe, 2017-08-30bRagexeRE
+#if PACKETVER == 20170830
+ packet(0x0281,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x02c4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0363,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0364,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0860,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0865,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x086a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0875,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0884,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0888,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0897,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0899,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089e,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a8,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0921,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0925,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x092e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0939,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x093e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0940,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0942,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0943,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0947,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0951,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0959,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2017-09-06cRagexe, 2017-09-06cRagexeRE
+#if PACKETVER == 20170906
+ packet(0x0202,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0281,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x02c4,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0860,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0866,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a2,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a3,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a7,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x091a,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0953,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-09-13bRagexeRE, 2017-09-13cRagexe
+#if PACKETVER == 20170913
+ packet(0x0281,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x035f,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0437,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x07e4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0817,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0835,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x085a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0860,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0865,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0866,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x088c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0890,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0891,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0892,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a6,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x08a7,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x08aa,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08ab,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08ac,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ad,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x091b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0920,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0923,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0925,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0927,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x095a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095c,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+#endif
+
+// 2017-09-20aRagexe, 2017-09-20bRagexeRE
+#if PACKETVER == 20170920
+ packet(0x0369,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0436,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x07ec,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x085a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0861,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0862,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0864,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0865,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x086a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x086c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0874,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0875,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0889,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x088e,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x089b,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0919,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x091e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0921,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0923,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0926,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0937,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0939,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0945,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x094c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0961,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0966,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x096a,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+#endif
+
+// 2017-09-27bRagexe, 2017-09-27bRagexeRE, 2017-09-27cRagexe, 2017-09-27dRagexe, 2017-09-27dRagexeRE
+#if PACKETVER == 20170927
+ packet(0x02c4,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x035f,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0361,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0362,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0366,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x085c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0873,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0875,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x087e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x088b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0899,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x089a,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08a3,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a5,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a6,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08ad,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x091e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0922,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0923,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0927,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x093b,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0942,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0945,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x094d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0959,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x095a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2017-10-02cRagexe, 2017-10-02cRagexeRE
+#if PACKETVER == 20171002
+ packet(0x022d,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0885,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0897,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0928,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x092d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0934,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093b,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x093e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0943,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x095f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-10-11aRagexe, 2017-10-11aRagexeRE, 2017-10-11bRagexe, 2017-10-11bRagexeRE
+#if PACKETVER == 20171011
+ packet(0x023b,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0882,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0950,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0954,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-10-18aRagexe, 2017-10-18aRagexeRE
+#if PACKETVER == 20171018
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0363,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x087a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089a,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a6,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0938,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0944,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x094a,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x094f,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-10-25bRagexe, 2017-10-25bRagexeRE, 2017-10-25cRagexe, 2017-10-25cRagexeRE, 2017-10-25dRagexe, 2017-10-25dRagexeRE, 2017-10-25eRagexe, 2017-10-25eRagexeRE
+#if PACKETVER == 20171025
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a2,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-01aRagexe, 2017-11-01bRagexeRE
+#if PACKETVER == 20171101
+ packet(0x022d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0368,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0369,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0438,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0835,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x085b,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0860,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0872,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0876,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0886,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088e,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0890,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0895,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0899,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x089b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x089c,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a0,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x08ab,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08ad,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x091b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0939,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x094a,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x094d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0952,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0957,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x095a,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0962,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0966,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2017-11-08aRagexe, 2017-11-08bRagexeRE
+#if PACKETVER == 20171108
+ packet(0x0202,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0361,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x07e4,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0815,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0819,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0838,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x085d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0863,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0878,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x087e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0884,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0896,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0897,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x08a2,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x08a9,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08ad,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091d,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x091f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0940,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0941,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0945,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0947,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0949,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x094e,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0958,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x095a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0963,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0965,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0967,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2017-11-15aRagexe, 2017-11-15aRagexeRE
+#if PACKETVER == 20171115
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0365,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x086d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x086f,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x087e,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0883,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0890,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0898,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0926,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0958,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x095a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-22aRagexe, 2017-11-22bRagexeRE
+#if PACKETVER == 20171122
+ packet(0x0281,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x02c4,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x035f,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0838,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x083c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x085b,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0862,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0867,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0877,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0885,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0890,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0891,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0893,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0897,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0898,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x089a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x089e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x08a6,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x08a9,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x091e,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0920,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0923,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0934,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x093b,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0945,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0947,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0962,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0968,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+#endif
+
+// 2017-11-29aRagexe, 2017-11-29aRagexeRE
+#if PACKETVER == 20171129
+ packet(0x02c4,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x035f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0363,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0365,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0862,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x086d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0876,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0878,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x08a5,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0940,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x094b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0953,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0966,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-12-06aRagexeRE, 2017-12-06bRagexe, 2017-12-06cRagexe
+#if PACKETVER == 20171206
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0867,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x086a,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x086e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0885,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0888,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0897,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x089d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08a2,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x08a4,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0923,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x092e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0936,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0942,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0958,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0961,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-12-13bRagexe, 2017-12-13bRagexeRE
+#if PACKETVER == 20171213
+ packet(0x0202,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0860,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0881,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0890,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x091a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0957,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-12-20aRagexe, 2017-12-20aRagexeRE
+#if PACKETVER == 20171220
+ packet(0x0281,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0366,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0369,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0436,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0437,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x085e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0861,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0872,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0873,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0880,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0882,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0885,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0899,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x089e,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x08a7,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x091b,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091e,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0924,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0929,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0933,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x093e,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0941,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0946,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x094e,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0951,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0957,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0960,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0964,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+#endif
+
+// 2017-12-27aRagexe, 2017-12-27aRagexeRE
+#if PACKETVER == 20171227
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x087d,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0888,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x088a,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x088d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x08a0,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a5,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092c,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x092e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0938,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0945,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0969,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x096a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+#endif
+
+// 2018-01-03aRagexe, 2018-01-03aRagexeRE, 2018-01-03bRagexe, 2018-01-03bRagexeRE
+#if PACKETVER == 20180103
+ packet(0x02c4,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0363,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0865,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x086b,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x086d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0872,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0876,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0879,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x088e,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0899,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x089f,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x08a9,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ab,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x08ac,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x091d,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0922,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0926,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0927,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x092c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0935,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0938,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0941,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0946,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0948,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094e,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x095d,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x095f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0960,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+#endif
+
+// 2018-01-17aRagexe, 2018-01-17aRagexeRE
+#if PACKETVER == 20180117
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0875,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2018-01-24bRagexe, 2018-01-24bRagexeRE
+#if PACKETVER == 20180124
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0802,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085f,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0868,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x086a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x086f,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x087a,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0888,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0890,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0919,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0940,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0946,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x094d,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0958,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0961,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+
+#endif /* MAP_PACKETS_SHUFFLE_MAIN_H */
diff --git a/src/map/packets_shuffle_zero.h b/src/map/packets_shuffle_zero.h
new file mode 100644
index 000000000..01facb96b
--- /dev/null
+++ b/src/map/packets_shuffle_zero.h
@@ -0,0 +1,489 @@
+/**
+ * This file is part of Hercules.
+ * http://herc.ws - http://github.com/HerculesWS/Hercules
+ *
+ * Copyright (C) 2013-2018 Hercules Dev Team
+ *
+ * Hercules is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+//Included directly by clif.c in packet_loaddb()
+
+#ifndef MAP_PACKETS_SHUFFLE_ZERO_H
+#define MAP_PACKETS_SHUFFLE_ZERO_H
+
+#ifndef packet
+ #define packet(a,b,...)
+#endif
+
+/*
+ * packet syntax
+ * - packet(packet_id,length,function,offset ( specifies the offset of a packet field in bytes from the begin of the packet ),...)
+ * - Example: packet(0x0072,19,clif->pWantToConnection,2,6,10,14,18);
+ */
+
+/* This file is autogenerated, please do not commit manual changes */
+
+
+// 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero
+#if PACKETVER == 20171019 || \
+ PACKETVER == 20171023 || \
+ PACKETVER == 20171024 || \
+ PACKETVER == 20171025 || \
+ PACKETVER == 20171027 || \
+ PACKETVER == 20171030 || \
+ PACKETVER == 20171031 || \
+ PACKETVER == 20171109 || \
+ PACKETVER == 20171113
+ packet(0x0202,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x022d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x023b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0281,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x02c4,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x035f,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0360,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0361,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0362,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0363,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0364,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0365,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0366,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0367,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0369,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0436,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0437,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0438,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x07e4,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x07ec,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0802,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0811,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0815,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0817,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0819,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0838,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x083c,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2017-11-15aRagexe_zero, 2017-11-15bRagexe_zero, 2017-11-16aRagexe_zero, 2017-11-17aRagexe_zero
+#if PACKETVER == 20171115 || \
+ PACKETVER == 20171116 || \
+ PACKETVER == 20171117
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0860,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0881,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0922,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0959,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0966,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-21aRagexe_zero, 2017-11-22aRagexe_zero
+#if PACKETVER == 20171121 || \
+ PACKETVER == 20171122
+ packet(0x0202,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x022d,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0866,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0889,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0892,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08ad,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0918,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x091f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0928,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0943,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0950,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-23dRagexe_zero
+#if PACKETVER == 20171123
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0367,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085f,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0860,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0876,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0882,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x088c,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0896,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x089e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x08a8,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x092b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0930,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0935,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0947,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0960,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-27aRagexe_zero, 2017-11-27cRagexe_zero, 2017-11-28aRagexe_zero
+#if PACKETVER == 20171127 || \
+ PACKETVER == 20171128
+ packet(0x0202,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x022d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x023b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0361,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0362,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0363,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0364,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0365,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0436,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x07e4,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x07ec,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0802,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0893,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-11-30bRagexe_zero
+#if PACKETVER == 20171130
+ packet(0x0361,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0864,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x086f,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0871,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0872,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0875,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0878,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0881,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0884,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0886,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0887,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x088b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0894,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0899,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08a0,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x08a7,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0925,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0928,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0930,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0931,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0935,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093a,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0947,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x094c,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x095b,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x095f,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0960,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0965,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+#endif
+
+// 2017-12-04bRagexe_zero
+#if PACKETVER == 20171204
+ packet(0x0281,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x035f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0360,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0368,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0369,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0437,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x083c,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x085b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086f,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x087d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0885,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0887,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0892,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0896,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x08aa,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0917,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091b,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0921,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0924,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0937,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0960,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x096a,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+#endif
+
+// 2017-12-06aRagexe_zero, 2017-12-06bRagexe_zero, 2017-12-06cRagexe_zero, 2017-12-06dRagexe_zero, 2017-12-08aRagexe_zero, 2017-12-08cRagexe_zero, 2017-12-08dRagexe_zero, 2017-12-09bRagexe_zero, 2017-12-09cRagexe_zero, 2017-12-10aRagexe_zero, 2017-12-11bRagexe_zero, 2017-12-12aRagexe_zero, 2017-12-13aRagexe_zero, 2017-12-13bRagexe_zero, 2017-12-13cRagexe_zero
+#if PACKETVER == 20171206 || \
+ PACKETVER == 20171208 || \
+ PACKETVER == 20171209 || \
+ PACKETVER == 20171210 || \
+ PACKETVER == 20171211 || \
+ PACKETVER == 20171212 || \
+ PACKETVER == 20171213
+ packet(0x0281,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0366,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0436,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0835,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x083c,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0860,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0862,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0864,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0870,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0878,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x087a,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x087b,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0885,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x088d,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0893,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0897,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x089e,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x08a4,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x08ac,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0920,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0934,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0936,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x093a,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0940,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0941,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0959,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x095c,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x095f,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+#endif
+
+// 2017-12-14cRagexe_zero
+#if PACKETVER == 20171214
+ packet(0x023b,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x02c4,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0438,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x085b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x085e,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0862,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0864,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x086a,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0871,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0873,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x0886,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x088b,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x088c,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0892,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0894,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0897,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x08a3,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x08a5,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x08ac,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0933,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x094a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x094d,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x094f,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0951,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x095a,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x095b,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0960,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0969,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x096a,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+#endif
+
+// 2017-12-20aRagexe_zero, 2017-12-21aRagexe_zero, 2017-12-21bRagexe_zero
+#if PACKETVER == 20171220 || \
+ PACKETVER == 20171221
+ packet(0x022d,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0281,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0438,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x07ec,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0819,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0835,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0838,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x085f,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0867,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x086c,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0872,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x087a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x087e,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0899,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x089b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x089c,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x08a3,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x08a5,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x08ad,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x091f,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0921,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x092d,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x092e,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0932,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0934,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0937,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x094d,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x095b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x096a,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+#endif
+
+// 2017-12-27bRagexe_zero, 2017-12-29aRagexe_zero
+#if PACKETVER == 20171227 || \
+ PACKETVER == 20171229
+ packet(0x02c4,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0860,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x086c,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0871,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0872,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0874,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0876,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0877,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0878,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x087b,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0885,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x0889,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x088b,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0894,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x089f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x091c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0920,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0925,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x092d,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0930,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x0939,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x093e,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0941,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0945,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0946,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x094b,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x095e,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0967,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0968,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+#endif
+
+// 2018-01-03aRagexe_zero
+#if PACKETVER == 20180103
+ packet(0x035f,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0360,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x0366,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x07e4,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x083c,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x0860,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+ packet(0x0866,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x086d,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x0871,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x0872,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x0874,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x087b,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0885,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0888,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0890,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0896,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x089d,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x08a6,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x091e,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0924,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0938,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x093b,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0956,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x0958,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x095b,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x095d,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0964,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x0966,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x096a,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+#endif
+
+// 2018-01-17aRagexe_zero
+#if PACKETVER == 20180117
+ packet(0x0361,26,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ
+ packet(0x0364,6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID
+ packet(0x0438,8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD
+ packet(0x07e4,36,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD
+ packet(0x083c,6,clif->pDropItem,2,4); // CZ_ITEM_THROW
+ packet(0x0866,-1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE
+ packet(0x086e,10,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND
+ packet(0x086f,6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE
+ packet(0x087d,19,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER
+ packet(0x0881,10,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL
+ packet(0x0884,2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE
+ packet(0x0886,6,clif->pTakeItem,2); // CZ_ITEM_PICKUP
+ packet(0x0890,8,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE
+ packet(0x0891,6,clif->pGetCharNameRequest,2); // CZ_REQNAME
+ packet(0x0893,7,clif->pActionRequest,2,6); // CZ_REQUEST_ACT
+ packet(0x0899,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO
+ packet(0x089d,-1,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES
+ packet(0x089e,5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION
+ packet(0x0919,6,clif->pTickSend,2); // CZ_REQUEST_TIME
+ packet(0x091c,8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY
+ packet(0x091f,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
+ packet(0x0921,5,clif->pWalkToXY,2); // CZ_REQUEST_MOVE
+ packet(0x0928,2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE
+ packet(0x0929,18,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER
+ packet(0x092d,4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK
+ packet(0x0933,12,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK
+ packet(0x0946,26,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS
+ packet(0x095e,-1,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE
+ packet(0x0963,5,clif->pHomMenu,2,4); // CZ_COMMAND_MER
+#endif
+
+
+#endif /* MAP_PACKETS_SHUFFLE_ZERO_H */
diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h
index 03b555e2b..1105bec96 100644
--- a/src/map/packets_struct.h
+++ b/src/map/packets_struct.h
@@ -191,7 +191,9 @@ enum packet_headers {
skill_entryType = 0x9ca,
#endif
graffiti_entryType = 0x1c9,
-#if PACKETVER > 20130000 /* not sure date */
+#ifdef PACKETVER_ZERO
+ dropflooritemType = 0xadd,
+#elif PACKETVER > 20130000 /* not sure date */
dropflooritemType = 0x84b,
#else
dropflooritemType = 0x9e,
@@ -330,6 +332,23 @@ enum packet_headers {
#else // PACKETVER >= 20160316
rodexcheckplayer = 0x0A51,
#endif
+#if PACKETVER >= 20151223
+ skillscale = 0xA41,
+#endif
+#if PACKETVER >= 20130821
+ progressbarunit = 0x09D1,
+#endif
+#if PACKETVER >= 20171207
+ partymemberinfo = 0x0ae4,
+ partyinfo = 0x0ae5,
+#elif PACKETVER >= 20170502
+// [4144] probably 0xa43 packet can works on older clients because in client was added in 2015-10-07
+ partymemberinfo = 0x0a43,
+ partyinfo = 0x0a44,
+#else
+ partymemberinfo = 0x01e9,
+ partyinfo = 0x00fb,
+#endif
};
#if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute
@@ -492,6 +511,10 @@ struct packet_dropflooritem {
uint8 subX;
uint8 subY;
int16 count;
+#ifdef PACKETVER_ZERO
+ int8 showdropeffect;
+ int16 dropeffectmode;
+#endif
} __attribute__((packed));
struct packet_idle_unit2 {
#if PACKETVER < 20091103
@@ -1478,6 +1501,67 @@ struct PACKET_ZC_ACK_ITEM_FROM_MAIL {
int8 result;
} __attribute__((packed));
+struct PACKET_ZC_SKILL_SCALE {
+ int16 PacketType;
+ uint32 AID;
+ int16 skill_id;
+ int16 skill_lv;
+ int16 x;
+ int16 y;
+ uint32 casttime;
+} __attribute__((packed));
+
+struct ZC_PROGRESS_ACTOR {
+ int16 PacketType;
+ int32 GID;
+ int32 color;
+ uint32 time;
+} __attribute__((packed));
+
+struct PACKET_ZC_ADD_MEMBER_TO_GROUP {
+ int16 packetType;
+ uint32 AID;
+#if PACKETVER >= 20171207
+ uint32 GID;
+#endif
+ uint32 leader;
+// [4144] probably 0xa43 packet can works on older clients because in client was added in 2015-10-07
+#if PACKETVER >= 20170502
+ int16 class;
+ int16 baseLevel;
+#endif
+ int16 x;
+ int16 y;
+ uint8 offline;
+ char partyName[NAME_LENGTH];
+ char playerName[NAME_LENGTH];
+ char mapName[MAP_NAME_LENGTH_EXT];
+ int8 sharePickup;
+ int8 shareLoot;
+} __attribute__((packed));
+
+struct PACKET_ZC_GROUP_LIST_SUB {
+ uint32 AID;
+#if PACKETVER >= 20171207
+ uint32 GID;
+#endif
+ char playerName[NAME_LENGTH];
+ char mapName[MAP_NAME_LENGTH_EXT];
+ uint8 leader;
+ uint8 offline;
+#if PACKETVER >= 20170502
+ int16 class;
+ int16 baseLevel;
+#endif
+} __attribute__((packed));
+
+struct PACKET_ZC_GROUP_LIST {
+ int16 packetType;
+ int16 packetLen;
+ char partyName[NAME_LENGTH];
+ struct PACKET_ZC_GROUP_LIST_SUB members[];
+} __attribute__((packed));
+
#if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute
#pragma pack(pop)
#endif // not NetBSD < 6 / Solaris
diff --git a/src/map/pc.c b/src/map/pc.c
index 0636ebafa..449cb25d3 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -1560,7 +1560,7 @@ int pc_calc_skillpoint(struct map_session_data* sd) {
nullpo_ret(sd);
- for (i = 1; i < MAX_SKILL; i++) {
+ for (i = 1; i < MAX_SKILL_DB; i++) {
int skill_lv = pc->checkskill2(sd,i);
if (skill_lv > 0) {
inf2 = skill->dbs->db[i].inf2;
@@ -1596,7 +1596,7 @@ int pc_calc_skilltree(struct map_session_data *sd)
}
classidx = pc->class2idx(class);
- for( i = 0; i < MAX_SKILL; i++ ) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if( sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED ) //Don't touch these
sd->status.skill[i].id = 0; //First clear skills.
/* permanent skills that must be re-checked */
@@ -1613,7 +1613,7 @@ int pc_calc_skilltree(struct map_session_data *sd)
}
}
- for( i = 0; i < MAX_SKILL; i++ ) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if( sd->status.skill[i].flag != SKILL_FLAG_PERMANENT && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED && sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED )
{ // Restore original level of skills after deleting earned skills.
sd->status.skill[i].lv = (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY) ? 0 : sd->status.skill[i].flag - SKILL_FLAG_REPLACED_LV_0;
@@ -1622,18 +1622,25 @@ int pc_calc_skilltree(struct map_session_data *sd)
if( sd->sc.count && sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_BARDDANCER && skill->dbs->db[i].nameid >= DC_HUMMING && skill->dbs->db[i].nameid <= DC_SERVICEFORYOU )
{ //Enable Bard/Dancer spirit linked skills.
- if( sd->status.sex )
- { //Link dancer skills to bard.
- // i can be < 8?
- if( sd->status.skill[i-8].lv < 10 )
+ if (sd->status.sex) {
+ // Link dancer skills to bard.
+ if (i < 8) {
+ Assert_report(i >= 8);
+ continue;
+ }
+ if (sd->status.skill[i-8].lv < 10)
continue;
sd->status.skill[i].id = skill->dbs->db[i].nameid;
sd->status.skill[i].lv = sd->status.skill[i-8].lv; // Set the level to the same as the linking skill
sd->status.skill[i].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
- } else { //Link bard skills to dancer.
- if( sd->status.skill[i].lv < 10 )
+ } else {
+ // Link bard skills to dancer.
+ if (i < 8) {
+ Assert_report(i >= 8);
+ continue;
+ }
+ if (sd->status.skill[i].lv < 10)
continue;
- // i can be < 8?
sd->status.skill[i-8].id = skill->dbs->db[i-8].nameid;
sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
@@ -1642,7 +1649,7 @@ int pc_calc_skilltree(struct map_session_data *sd)
}
if( pc_has_permission(sd, PC_PERM_ALL_SKILL) ) {
- for( i = 0; i < MAX_SKILL; i++ ) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
switch(skill->dbs->db[i].nameid) {
/**
* Dummy skills must be added here otherwise they'll be displayed in the,
@@ -1836,7 +1843,7 @@ int pc_clean_skilltree(struct map_session_data *sd)
{
int i;
nullpo_ret(sd);
- for (i = 0; i < MAX_SKILL; i++){
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY || sd->status.skill[i].flag == SKILL_FLAG_PLAGIARIZED) {
sd->status.skill[i].id = 0;
sd->status.skill[i].lv = 0;
@@ -4143,7 +4150,7 @@ int pc_bonus5(struct map_session_data *sd,int type,int type2,int type3,int type4
*------------------------------------------*/
int pc_skill(struct map_session_data *sd, int id, int level, int flag)
{
- uint16 index = 0;
+ int index = 0;
nullpo_ret(sd);
if (!(index = skill->get_index(id))) {
@@ -4774,7 +4781,7 @@ int pc_dropitem(struct map_session_data *sd,int n,int amount)
return 0;
}
- if (!map->addflooritem(&sd->bl, &sd->status.inventory[n], amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 2))
+ if (!map->addflooritem(&sd->bl, &sd->status.inventory[n], amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 2, false))
return 0;
pc->delitem(sd, n, amount, 1, DELITEM_NORMAL, LOG_TYPE_PICKDROP_PLAYER);
@@ -5869,7 +5876,7 @@ int pc_memo(struct map_session_data* sd, int pos) {
* Return player sd skill_lv learned for given skill
*------------------------------------------*/
int pc_checkskill(struct map_session_data *sd,uint16 skill_id) {
- uint16 index = 0;
+ int index = 0;
if(sd == NULL) return 0;
if( skill_id >= GD_SKILLBASE && skill_id < GD_MAX ) {
struct guild *g;
@@ -5888,8 +5895,9 @@ int pc_checkskill(struct map_session_data *sd,uint16 skill_id) {
return 0;
}
int pc_checkskill2(struct map_session_data *sd,uint16 index) {
- if(sd == NULL) return 0;
- if(index >= ARRAYLENGTH(sd->status.skill) ) {
+ if (sd == NULL)
+ return 0;
+ if (index >= MAX_SKILL_DB) {
ShowError("pc_checkskill: Invalid skill index %d (char_id=%d).\n", index, sd->status.char_id);
return 0;
}
@@ -7229,7 +7237,7 @@ int pc_statusup2(struct map_session_data* sd, int type, int val)
* Skill point allocation
*------------------------------------------*/
int pc_skillup(struct map_session_data *sd,uint16 skill_id) {
- uint16 index = 0;
+ int index = 0;
nullpo_ret(sd);
if( skill_id >= GD_SKILLBASE && skill_id < GD_SKILLBASE+MAX_GUILDSKILL ) {
@@ -7286,7 +7294,7 @@ int pc_allskillup(struct map_session_data *sd)
nullpo_ret(sd);
- for(i=0;i<MAX_SKILL;i++){
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if (sd->status.skill[i].flag != SKILL_FLAG_PERMANENT && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED && sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED) {
sd->status.skill[i].lv = (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY) ? 0 : sd->status.skill[i].flag - SKILL_FLAG_REPLACED_LV_0;
sd->status.skill[i].flag = SKILL_FLAG_PERMANENT;
@@ -7297,7 +7305,7 @@ int pc_allskillup(struct map_session_data *sd)
if (pc_has_permission(sd, PC_PERM_ALL_SKILL)) { //Get ALL skills except npc/guild ones. [Skotlex]
//and except SG_DEVIL [Komurka] and MO_TRIPLEATTACK and RG_SNATCHER [ultramage]
- for(i=0;i<MAX_SKILL;i++){
+ for (i = 0; i < MAX_SKILL_DB; i++) {
switch( skill->dbs->db[i].nameid ) {
case SG_DEVIL:
case MO_TRIPLEATTACK:
@@ -7537,9 +7545,7 @@ int pc_resetskill(struct map_session_data* sd, int flag)
status_change_end(&sd->bl, SC_SPRITEMABLE, INVALID_TIMER);
}
- for( i = 1; i < MAX_SKILL; i++ ) {
- // FIXME: We're looping on i = [1..MAX_SKILL-1] (which makes sense as index for sd->status.skill[]) but then we're using the
- // same i to access skill->dbs->db[], and especially to check skill_ischangesex(). This is wrong.
+ for (i = 1; i < MAX_SKILL_DB; i++) {
uint16 skill_id = 0;
int lv = sd->status.skill[i].lv;
if (lv < 1) continue;
@@ -7956,7 +7962,7 @@ int pc_dead(struct map_session_data *sd,struct block_list *src) {
item_tmp.card[1]=0;
item_tmp.card[2]=GetWord(sd->status.char_id,0); // CharId
item_tmp.card[3]=GetWord(sd->status.char_id,1);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
// activate Steel body if a super novice dies at 99+% exp [celest]
diff --git a/src/map/pc.h b/src/map/pc.h
index 50cb1b68e..df0df979d 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -292,7 +292,7 @@ struct map_session_data {
uint16 skill_id_old,skill_lv_old;
uint16 skill_id_dance,skill_lv_dance;
short cook_mastery; // range: [0,1999] [Inkfish]
- bool blockskill[MAX_SKILL];
+ bool blockskill[MAX_SKILL_DB];
int cloneskill_id, reproduceskill_id;
int menuskill_id, menuskill_val, menuskill_val2;
int invincible_timer;
diff --git a/src/map/pet.c b/src/map/pet.c
index 9ac496659..2997a4b5a 100644
--- a/src/map/pet.c
+++ b/src/map/pet.c
@@ -325,7 +325,7 @@ int pet_return_egg(struct map_session_data *sd, struct pet_data *pd)
tmp_item.card[3] = pd->pet.rename_flag;
if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_EGG))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
pd->pet.incubate = 1;
unit->free(&pd->bl,CLR_OUTSIGHT);
@@ -610,7 +610,7 @@ bool pet_get_egg(int account_id, short pet_class, int pet_id ) {
tmp_item.card[3] = 0; //New pets are not named.
if((ret = pc->additem(sd,&tmp_item,1,LOG_TYPE_PICKDROP_PLAYER))) {
clif->additem(sd,0,0,ret);
- map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
return true;
@@ -751,7 +751,7 @@ int pet_unequipitem(struct map_session_data *sd, struct pet_data *pd) {
tmp_item.identify = 1;
if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_CONSUME))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
if( battle_config.pet_equip_required )
{ // Skotlex: halt support timers if needed
@@ -1026,7 +1026,7 @@ int pet_delay_item_drop(int tid, int64 tick, int id, intptr_t data) {
struct item_drop *ditem_prev;
map->addflooritem(NULL, &ditem->item_data, ditem->item_data.amount,
list->m, list->x, list->y,
- list->first_charid, list->second_charid, list->third_charid, 0);
+ list->first_charid, list->second_charid, list->third_charid, 0, false);
ditem_prev = ditem;
ditem = ditem->next;
ers_free(pet->item_drop_ers, ditem_prev);
diff --git a/src/map/script.c b/src/map/script.c
index d2101d21f..d7a65f554 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -7923,7 +7923,7 @@ BUILDIN(getitem) {
if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) {
clif->additem(sd, 0, 0, flag);
if( pc->candrop(sd,&it) )
- map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -8031,7 +8031,7 @@ BUILDIN(getitem2)
if ((flag = pc->additem(sd, &item_tmp, get_count, LOG_TYPE_SCRIPT))) {
clif->additem(sd, 0, 0, flag);
if( pc->candrop(sd,&item_tmp) )
- map->addflooritem(&sd->bl, &item_tmp, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -8224,7 +8224,7 @@ BUILDIN(makeitem)
item_tmp.nameid = nameid;
item_tmp.identify=1;
- map->addflooritem(NULL, &item_tmp, amount, m, x, y, 0, 0, 0, 0);
+ map->addflooritem(NULL, &item_tmp, amount, m, x, y, 0, 0, 0, 0, false);
return true;
}
@@ -8308,7 +8308,7 @@ BUILDIN(makeitem2)
item_tmp.card[2] = (short)script_getnum(st, 9);
item_tmp.card[3] = (short)script_getnum(st, 10);
- map->addflooritem(NULL, &item_tmp, amount, m, x, y, 0, 0, 0, 0);
+ map->addflooritem(NULL, &item_tmp, amount, m, x, y, 0, 0, 0, 0, false);
return true;
}
@@ -12190,7 +12190,7 @@ BUILDIN(homunculus_mutate)
if (script_hasdata(st,2))
homun_id = script_getnum(st,2);
else
- homun_id = 6048 + (rnd() % 4);
+ homun_id = HOMID_EIRA + (rnd() % 4);
m_class = homun->class2type(sd->hd->homunculus.class_);
m_id = homun->class2type(homun_id);
@@ -13576,7 +13576,7 @@ BUILDIN(successremovecards)
if ((flag = pc->additem(sd, &item_tmp, 1, LOG_TYPE_SCRIPT))) {
clif->additem(sd, 0, 0, flag);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -13634,7 +13634,7 @@ BUILDIN(failedremovecards)
if ((flag = pc->additem(sd, &item_tmp, 1, LOG_TYPE_SCRIPT))) {
clif->additem(sd, 0, 0, flag);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -14081,53 +14081,61 @@ BUILDIN(getiteminfo)
}
switch (n) {
- case 0:
+ case ITEMINFO_BUYPRICE:
script_pushint(st, it->value_buy);
break;
- case 1:
+ case ITEMINFO_SELLPRICE:
script_pushint(st, it->value_sell);
break;
- case 2:
+ case ITEMINFO_TYPE:
script_pushint(st, it->type);
break;
- case 3:
+ case ITEMINFO_MAXCHANCE:
script_pushint(st, it->maxchance);
break;
- case 4:
+ case ITEMINFO_SEX:
script_pushint(st, it->sex);
break;
- case 5:
+ case ITEMINFO_LOC:
script_pushint(st, it->equip);
break;
- case 6:
+ case ITEMINFO_WEIGHT:
script_pushint(st, it->weight);
break;
- case 7:
+ case ITEMINFO_ATK:
script_pushint(st, it->atk);
break;
- case 8:
+ case ITEMINFO_DEF:
script_pushint(st, it->def);
break;
- case 9:
+ case ITEMINFO_RANGE:
script_pushint(st, it->range);
break;
- case 10:
+ case ITEMINFO_SLOTS:
script_pushint(st, it->slot);
break;
- case 11:
+ case ITEMINFO_SUBTYPE:
script_pushint(st, it->subtype);
break;
- case 12:
+ case ITEMINFO_ELV:
script_pushint(st, it->elv);
break;
- case 13:
+ case ITEMINFO_WLV:
script_pushint(st, it->wlv);
break;
- case 14:
+ case ITEMINFO_VIEWID:
script_pushint(st, it->view_id);
break;
+ case ITEMINFO_MATK:
+ script_pushint(st, it->matk);
+ break;
+ case ITEMINFO_VIEWSPRITE:
+ script_pushint(st, it->view_sprite);
+ break;
default:
+ ShowError("buildin_getiteminfo: Invalid item type %d.\n", n);
script_pushint(st,-1);
+ return false;
}
return true;
}
@@ -14270,31 +14278,36 @@ BUILDIN(setequipoption)
if (equip_index > 0 && equip_index <= ARRAYLENGTH(script->equip)) {
if ((i = pc->checkequip(sd, script->equip[equip_index - 1])) == -1) {
- ShowError("buildin_setequipoptioninfo: No equipment is equipped in the given index %d.\n", equip_index);
+ ShowError("buildin_setequipoption: No equipment is equipped in the given index %d.\n", equip_index);
script_pushint(st, 0);
return false;
}
} else {
- ShowError("buildin_setequipoptioninfo: Invalid equipment index %d provided.\n", equip_index);
+ ShowError("buildin_setequipoption: Invalid equipment index %d provided.\n", equip_index);
script_pushint(st, 0);
return false;
}
if (sd->status.inventory[i].nameid != 0) {
-
- if ((ito = itemdb->option_exists(opt_index)) == NULL) {
- script_pushint(st, 0);
- ShowError("buildin_setequipotion: Option index %d does not exist!\n", opt_index);
- return false;
- } else if (value < -INT16_MAX || value > INT16_MAX) {
- script_pushint(st, 0);
- ShowError("buildin_setequipotion: Option value %d exceeds maximum limit (%d to %d) for type!\n", value, -INT16_MAX, INT16_MAX);
- return false;
+ if (opt_index == 0) {
+ // Remove the option
+ sd->status.inventory[i].option[slot-1].index = 0;
+ sd->status.inventory[i].option[slot-1].value = 0;
+ } else {
+ if ((ito = itemdb->option_exists(opt_index)) == NULL) {
+ script_pushint(st, 0);
+ ShowError("buildin_setequipotion: Option index %d does not exist!\n", opt_index);
+ return false;
+ } else if (value < -INT16_MAX || value > INT16_MAX) {
+ script_pushint(st, 0);
+ ShowError("buildin_setequipotion: Option value %d exceeds maximum limit (%d to %d) for type!\n", value, -INT16_MAX, INT16_MAX);
+ return false;
+ }
+ /* Add Option Index */
+ sd->status.inventory[i].option[slot-1].index = ito->index;
+ /* Add Option Value */
+ sd->status.inventory[i].option[slot-1].value = value;
}
- /* Add Option Index */
- sd->status.inventory[i].option[slot-1].index = ito->index;
- /* Add Option Value */
- sd->status.inventory[i].option[slot-1].value = value;
/* Unequip and simulate deletion of the item. */
pc->unequipitem(sd, i, PCUNEQUIPITEM_FORCE); // status calc will happen in pc->equipitem() below
@@ -14334,54 +14347,61 @@ BUILDIN(setiteminfo)
}
switch (n) {
- case 0:
+ case ITEMINFO_BUYPRICE:
it->value_buy = value;
break;
- case 1:
+ case ITEMINFO_SELLPRICE:
it->value_sell = value;
break;
- case 2:
+ case ITEMINFO_TYPE:
it->type = value;
break;
- case 3:
+ case ITEMINFO_MAXCHANCE:
it->maxchance = value;
break;
- case 4:
+ case ITEMINFO_SEX:
it->sex = value;
break;
- case 5:
+ case ITEMINFO_LOC:
it->equip = value;
break;
- case 6:
+ case ITEMINFO_WEIGHT:
it->weight = value;
break;
- case 7:
+ case ITEMINFO_ATK:
it->atk = value;
break;
- case 8:
+ case ITEMINFO_DEF:
it->def = value;
break;
- case 9:
+ case ITEMINFO_RANGE:
it->range = value;
break;
- case 10:
+ case ITEMINFO_SLOTS:
it->slot = value;
break;
- case 11:
+ case ITEMINFO_SUBTYPE:
it->subtype = value;
break;
- case 12:
+ case ITEMINFO_ELV:
it->elv = value;
break;
- case 13:
+ case ITEMINFO_WLV:
it->wlv = value;
break;
- case 14:
+ case ITEMINFO_VIEWID:
it->view_id = value;
break;
+ case ITEMINFO_MATK:
+ it->matk = value;
+ break;
+ case ITEMINFO_VIEWSPRITE:
+ it->view_sprite = value;
+ break;
default:
+ ShowError("buildin_setiteminfo: invalid type %d.\n", n);
script_pushint(st,-1);
- return true;
+ return false;
}
script_pushint(st,value);
return true;
@@ -14585,7 +14605,7 @@ BUILDIN(getskilllist)
int i,j=0;
if (sd == NULL)
return true;
- for(i=0;i<MAX_SKILL;i++) {
+ for (i = 0; i < MAX_SKILL_DB; i++) {
if(sd->status.skill[i].id > 0 && sd->status.skill[i].lv > 0) {
pc->setreg(sd,reference_uid(script->add_str("@skilllist_id"), j),sd->status.skill[i].id);
pc->setreg(sd,reference_uid(script->add_str("@skilllist_lv"), j),sd->status.skill[i].lv);
@@ -15866,11 +15886,12 @@ enum logmes_type {
/*==========================================
* Allows player to write logs (i.e. Bank NPC, etc) [Lupus]
*------------------------------------------*/
-BUILDIN(logmes) {
+BUILDIN(logmes)
+{
const char *str = script_getstr(st, 2);
struct map_session_data *sd = script->rid2sd(st);
enum logmes_type type = LOGMES_NPC;
- nullpo_retr(sd, false);
+ nullpo_retr(false, sd);
if (script_hasdata(st, 3)) {
type = script_getnum(st, 3);
@@ -18211,6 +18232,8 @@ BUILDIN(setunitdata)
case UDT_INTIMACY:
case UDT_LIFETIME:
case UDT_MERC_KILLCOUNT:
+ case UDT_ROBE:
+ case UDT_BODY2:
setunitdata_check_min(4, 0);
break;
case UDT_MASTERAID:
@@ -19149,6 +19172,40 @@ BUILDIN(setunitdata)
case UDT_DMOTION:
nd->status.dmotion = (unsigned short) val;
break;
+ case UDT_SEX:
+ nd->vd.sex = (char)val;
+ npc->refresh(nd);
+ break;
+ case UDT_HAIRSTYLE:
+ clif->changelook(bl, LOOK_HAIR, val);
+ break;
+ case UDT_HAIRCOLOR:
+ clif->changelook(bl, LOOK_HAIR_COLOR, val);
+ break;
+ case UDT_HEADBOTTOM:
+ clif->changelook(bl, LOOK_HEAD_BOTTOM, val);
+ break;
+ case UDT_HEADMIDDLE:
+ clif->changelook(bl, LOOK_HEAD_MID, val);
+ break;
+ case UDT_HEADTOP:
+ clif->changelook(bl, LOOK_HEAD_TOP, val);
+ break;
+ case UDT_CLOTHCOLOR:
+ clif->changelook(bl, LOOK_CLOTHES_COLOR, val);
+ break;
+ case UDT_SHIELD:
+ clif->changelook(bl, LOOK_SHIELD, val);
+ break;
+ case UDT_WEAPON:
+ clif->changelook(bl, LOOK_WEAPON, val);
+ break;
+ case UDT_ROBE:
+ clif->changelook(bl, LOOK_ROBE, val);
+ break;
+ case UDT_BODY2:
+ clif->changelook(bl, LOOK_BODY2, val);
+ break;
default:
ShowWarning("buildin_setunitdata: Invalid data type '%s' for NPC unit.\n", udtype);
script_pushint(st, 0);
@@ -19559,6 +19616,18 @@ BUILDIN(getunitdata)
case UDT_AMOTION: script_pushint(st, nd->status.amotion); break;
case UDT_ADELAY: script_pushint(st, nd->status.adelay); break;
case UDT_DMOTION: script_pushint(st, nd->status.dmotion); break;
+ case UDT_SEX: script_pushint(st, nd->vd.sex); break;
+ case UDT_CLASS: script_pushint(st, nd->vd.class); break;
+ case UDT_HAIRSTYLE: script_pushint(st, nd->vd.hair_style); break;
+ case UDT_HAIRCOLOR: script_pushint(st, nd->vd.hair_color); break;
+ case UDT_HEADBOTTOM: script_pushint(st, nd->vd.head_bottom); break;
+ case UDT_HEADMIDDLE: script_pushint(st, nd->vd.head_mid); break;
+ case UDT_HEADTOP: script_pushint(st, nd->vd.head_top); break;
+ case UDT_CLOTHCOLOR: script_pushint(st, nd->vd.cloth_color); break;
+ case UDT_SHIELD: script_pushint(st, nd->vd.shield); break;
+ case UDT_WEAPON: script_pushint(st, nd->vd.weapon); break;
+ case UDT_ROBE: script_pushint(st, nd->vd.robe); break;
+ case UDT_BODY2: script_pushint(st, nd->vd.body_style); break;
default:
ShowWarning("buildin_getunitdata: Invalid data type '%s' for NPC unit.\n", udtype);
script_pushint(st, 0);
@@ -20446,15 +20515,18 @@ BUILDIN(questinfo)
quest_id = script_getnum(st, 2);
icon = script_getnum(st, 3);
- #if PACKETVER >= 20120410
- if(icon < 0 || (icon > 8 && icon != 9999) || icon == 7)
- icon = 9999; // Default to nothing if icon id is invalid.
- #else
- if(icon < 0 || icon > 7)
- icon = 0;
- else
- icon = icon + 1;
- #endif
+#if PACKETVER >= 20170315
+ if (icon < 0 || (icon > 10 && icon != 9999))
+ icon = 9999;
+#elif PACKETVER >= 20120410
+ if (icon < 0 || (icon > 8 && icon != 9999) || icon == 7)
+ icon = 9999; // Default to nothing if icon id is invalid.
+#else
+ if (icon < 0 || icon > 7)
+ icon = 0;
+ else
+ icon = icon + 1;
+#endif
qi.quest_id = quest_id;
qi.icon = (unsigned char)icon;
@@ -20648,15 +20720,18 @@ BUILDIN(showevent)
}
}
- #if PACKETVER >= 20120410
- if(icon < 0 || (icon > 8 && icon != 9999) || icon == 7)
- icon = 9999; // Default to nothing if icon id is invalid.
- #else
- if(icon < 0 || icon > 7)
- icon = 0;
- else
- icon = icon + 1;
- #endif
+#if PACKETVER >= 20170315
+ if (icon < 0 || (icon > 10 && icon != 9999))
+ icon = 9999;
+#elif PACKETVER >= 20120410
+ if (icon < 0 || (icon > 8 && icon != 9999) || icon == 7)
+ icon = 9999; // Default to nothing if icon id is invalid.
+#else
+ if (icon < 0 || icon > 7)
+ icon = 0;
+ else
+ icon = icon + 1;
+#endif
clif->quest_show_event(sd, &nd->bl, icon, color);
return true;
@@ -21128,72 +21203,90 @@ BUILDIN(has_instance)
const char *str;
int16 m;
int instance_id = -1;
+ int i = 0, j = 0;
bool type = strcmp(script->getfuncname(st),"has_instance2") == 0 ? true : false;
str = script_getstr(st, 2);
- if( (m = map->mapname2mapid(str)) < 0 ) {
- if( type )
+ if ((m = map->mapname2mapid(str)) < 0) {
+ if (type) {
script_pushint(st, -1);
- else
+ } else {
script_pushconststr(st, "");
+ }
return true;
}
- if( script_hasdata(st, 3) )
+ if (script_hasdata(st, 3))
instance_id = script_getnum(st, 3);
- else if( st->instance_id >= 0 )
+ else if (st->instance_id >= 0)
instance_id = st->instance_id;
- else if( (sd = script->rid2sd(st)) != NULL ) {
+ else if ((sd = script->rid2sd(st)) != NULL) {
struct party_data *p;
- int i = 0, j = 0;
- if( sd->instances ) {
- for( i = 0; i < sd->instances; i++ ) {
- if( sd->instance[i] >= 0 ) {
+ if (sd->instances) {
+ for (i = 0; i < sd->instances; i++) {
+ if (sd->instance[i] >= 0) {
ARR_FIND(0, instance->list[sd->instance[i]].num_map, j, map->list[instance->list[sd->instance[i]].map[j]].instance_src_map == m);
- if( j != instance->list[sd->instance[i]].num_map )
+ if (j != instance->list[sd->instance[i]].num_map)
break;
}
}
- if( i != sd->instances )
+ if (i != sd->instances) {
instance_id = sd->instance[i];
+ }
}
if (instance_id == -1 && sd->status.party_id && (p = party->search(sd->status.party_id)) != NULL && p->instances) {
- for( i = 0; i < p->instances; i++ ) {
- if( p->instance[i] >= 0 ) {
+ for (i = 0; i < p->instances; i++) {
+ if (p->instance[i] >= 0) {
ARR_FIND(0, instance->list[p->instance[i]].num_map, j, map->list[instance->list[p->instance[i]].map[j]].instance_src_map == m);
- if( j != instance->list[p->instance[i]].num_map )
+ if (j != instance->list[p->instance[i]].num_map)
break;
}
}
- if( i != p->instances )
+ if (i != p->instances) {
instance_id = p->instance[i];
+ }
}
- if( instance_id == -1 && sd->guild && sd->guild->instances ) {
- for( i = 0; i < sd->guild->instances; i++ ) {
- if( sd->guild->instance[i] >= 0 ) {
+ if (instance_id == -1 && sd->guild && sd->guild->instances) {
+ for (i = 0; i < sd->guild->instances; i++) {
+ if (sd->guild->instance[i] >= 0) {
ARR_FIND(0, instance->list[sd->guild->instance[i]].num_map, j, map->list[instance->list[sd->guild->instance[i]].map[j]].instance_src_map == m);
- if( j != instance->list[sd->guild->instance[i]].num_map )
+ if (j != instance->list[sd->guild->instance[i]].num_map)
break;
}
}
- if( i != sd->guild->instances )
+ if (i != sd->guild->instances)
instance_id = sd->guild->instance[i];
}
}
- if( !instance->valid(instance_id) || (m = instance->map2imap(m, instance_id)) < 0 ) {
- if( type )
+ if (instance_id == -1) {
+ for (i = 0; i < instance->instances; i++) {
+ if (instance->list[i].state != INSTANCE_FREE && instance->list[i].owner_type == IOT_NONE && instance->list[i].num_map > 0) {
+ ARR_FIND(0, instance->list[i].num_map, j, map->list[instance->list[i].map[j]].instance_src_map == m);
+ if (j != instance->list[i].num_map)
+ break;
+ }
+ }
+ if (i != instance->instances) {
+ instance_id = instance->list[i].id;
+ }
+ }
+
+ if (!instance->valid(instance_id) || (m = instance->map2imap(m, instance_id)) < 0) {
+ if (type) {
script_pushint(st, -1);
- else
+ } else {
script_pushconststr(st, "");
+ }
return true;
}
- if( type )
+ if (type) {
script_pushint(st, instance_id);
- else
+ } else {
script_pushconststr(st, map->list[m].name);
+ }
return true;
}
@@ -21477,7 +21570,29 @@ BUILDIN(progressbar)
clif->progressbar(sd, (unsigned int)strtoul(color, (char **)NULL, 0), second);
return true;
}
+BUILDIN(progressbar_unit)
+{
+ const char *color = script_getstr(st, 2);
+ uint32 second = script_getnum(st, 3);
+ if (script_hasdata(st, 4)) {
+ struct block_list *bl = map->id2bl(script_getnum(st, 4));
+
+ if (bl == NULL) {
+ ShowWarning("buildin_progressbar_unit: Error in finding object with given GID %d!\n", script_getnum(st, 4));
+ return true;
+ }
+ clif->progressbar_unit(bl, (unsigned int)strtoul(color, (char **)NULL, 0), second);
+ } else {
+ struct map_session_data *sd = script->rid2sd(st);
+
+ if (sd == NULL)
+ return false;
+
+ clif->progressbar_unit(&sd->bl, (unsigned int)strtoul(color, (char **)NULL, 0), second);
+ }
+ return true;
+}
BUILDIN(pushpc)
{
uint8 dir;
@@ -22078,7 +22193,7 @@ BUILDIN(getrandgroupitem)
if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) {
clif->additem(sd, 0, 0, flag);
if( pc->candrop(sd,&it) )
- map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -23505,7 +23620,7 @@ BUILDIN(dressroom)
clif->dressroom_open(sd, 0);
break;
default:
- ShowWarning("script:dressroom: unknown mode (%i).\n", mode);
+ ShowWarning("script:dressroom: unknown mode (%u).\n", mode);
script_pushint(st, 0);
return false;
}
@@ -24312,6 +24427,7 @@ void script_parse_builtin(void) {
BUILDIN_DEF(setfont,"i"),
BUILDIN_DEF(areamobuseskill,"siiiiviiiii"),
BUILDIN_DEF(progressbar,"si"),
+ BUILDIN_DEF(progressbar_unit,"si?"),
BUILDIN_DEF(pushpc,"ii"),
BUILDIN_DEF(buyingstore,"i"),
BUILDIN_DEF(searchstores,"ii"),
@@ -24751,6 +24867,25 @@ void script_hardcoded_constants(void)
script->set_constant("MAPINFO_SIZE_Y", MAPINFO_SIZE_Y, false, false);
script->set_constant("MAPINFO_ZONE", MAPINFO_ZONE, false, false);
+ script->constdb_comment("set/getiteminfo options");
+ script->set_constant("ITEMINFO_BUYPRICE", ITEMINFO_BUYPRICE, false, false);
+ script->set_constant("ITEMINFO_SELLPRICE", ITEMINFO_SELLPRICE, false, false);
+ script->set_constant("ITEMINFO_TYPE", ITEMINFO_TYPE, false, false);
+ script->set_constant("ITEMINFO_MAXCHANCE", ITEMINFO_MAXCHANCE, false, false);
+ script->set_constant("ITEMINFO_SEX", ITEMINFO_SEX, false, false);
+ script->set_constant("ITEMINFO_LOC", ITEMINFO_LOC, false, false);
+ script->set_constant("ITEMINFO_WEIGHT", ITEMINFO_WEIGHT, false, false);
+ script->set_constant("ITEMINFO_ATK", ITEMINFO_ATK, false, false);
+ script->set_constant("ITEMINFO_DEF", ITEMINFO_DEF, false, false);
+ script->set_constant("ITEMINFO_RANGE", ITEMINFO_RANGE, false, false);
+ script->set_constant("ITEMINFO_SLOTS", ITEMINFO_SLOTS, false, false);
+ script->set_constant("ITEMINFO_SUBTYPE", ITEMINFO_SUBTYPE, false, false);
+ script->set_constant("ITEMINFO_ELV", ITEMINFO_ELV, false, false);
+ script->set_constant("ITEMINFO_WLV", ITEMINFO_WLV, false, false);
+ script->set_constant("ITEMINFO_VIEWID", ITEMINFO_VIEWID, false, false);
+ script->set_constant("ITEMINFO_MATK", ITEMINFO_MATK, false, false);
+ script->set_constant("ITEMINFO_VIEWSPRITE", ITEMINFO_VIEWSPRITE, false, false);
+
script->constdb_comment("Renewal");
#ifdef RENEWAL
script->set_constant("RENEWAL", 1, false, false);
diff --git a/src/map/script.h b/src/map/script.h
index 283afa496..14d20838d 100644
--- a/src/map/script.h
+++ b/src/map/script.h
@@ -423,10 +423,37 @@ enum script_unit_data_types {
UDT_LIFETIME,
UDT_MERC_KILLCOUNT,
UDT_STATPOINT,
+ UDT_ROBE,
+ UDT_BODY2,
UDT_MAX
};
/**
+ * Item Info types.
+ */
+enum script_iteminfo_types {
+ ITEMINFO_BUYPRICE = 0,
+ ITEMINFO_SELLPRICE,
+ ITEMINFO_TYPE,
+ ITEMINFO_MAXCHANCE,
+ ITEMINFO_SEX,
+ ITEMINFO_LOC,
+ ITEMINFO_WEIGHT,
+ ITEMINFO_ATK,
+ ITEMINFO_DEF,
+ ITEMINFO_RANGE,
+ ITEMINFO_SLOTS,
+ ITEMINFO_SUBTYPE,
+ ITEMINFO_ELV,
+ ITEMINFO_WLV,
+ ITEMINFO_VIEWID,
+ ITEMINFO_MATK,
+ ITEMINFO_VIEWSPRITE,
+
+ ITEMINFO_MAX
+};
+
+/**
* Structures
**/
diff --git a/src/map/skill.c b/src/map/skill.c
index 726deaa9a..4c9e83579 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -105,7 +105,7 @@ int skill_name2id(const char* name)
/// Maps skill ids to skill db offsets.
/// Returns the skill's array index, or 0 (Unknown Skill).
-int skill_get_index (uint16 skill_id)
+int skill_get_index(int skill_id)
{
// avoid ranges reserved for mapping guild/homun/mercenary skills
if( (skill_id >= GD_SKILLRANGEMIN && skill_id <= GD_SKILLRANGEMAX)
@@ -138,88 +138,593 @@ int skill_get_index (uint16 skill_id)
}
// validate result
- if( !skill_id || skill_id >= MAX_SKILL_DB )
+ if (skill_id <= 0|| skill_id >= MAX_SKILL_DB)
return 0;
return skill_id;
}
-const char* skill_get_name( uint16 skill_id ) {
+const char *skill_get_name(int skill_id)
+{
return skill->dbs->db[skill->get_index(skill_id)].name;
}
-const char* skill_get_desc( uint16 skill_id ) {
+const char *skill_get_desc(int skill_id)
+{
return skill->dbs->db[skill->get_index(skill_id)].desc;
}
-// out of bounds error checking [celest]
-void skill_chk(uint16* skill_id) {
- *skill_id = skill->get_index(*skill_id); // checks/adjusts id
-}
+#define skill_get_lvl_idx(lv) (min((lv), MAX_SKILL_LEVEL) - 1)
+#define skill_adjust_over_level(val, lv, max_lv) ((val) > 1 ? ((val) + ((lv) - (max_lv)) / 2) : (val))
-#define skill_get(var,id) do { skill->chk(&(id)); if(!(id)) return 0; return (var); } while(0)
-#define skill_get2(var,id,lv) do { \
- skill->chk(&(id)); \
- if(!(id)) return 0; \
- if( (lv) > MAX_SKILL_LEVEL && (var) > 1 ) { \
- int lv2__ = (lv); (lv) = skill->dbs->db[(id)].max; \
- return (var) + ((lv2__-(lv))/2);\
- } \
- return (var);\
-} while(0)
-#define skill_glv(lv) min((lv),MAX_SKILL_LEVEL-1)
// Skill DB
-int skill_get_hit( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].hit, skill_id); }
-int skill_get_inf( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].inf, skill_id); }
-int skill_get_ele( uint16 skill_id , uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get (skill->dbs->db[skill_id].element[skill_glv(skill_lv-1)], skill_id); }
-int skill_get_nk( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].nk, skill_id); }
-int skill_get_max( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].max, skill_id); }
-int skill_get_range( uint16 skill_id , uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].range[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_splash( uint16 skill_id , uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 ( (skill->dbs->db[skill_id].splash[skill_glv(skill_lv-1)]>=0?skill->dbs->db[skill_id].splash[skill_glv(skill_lv-1)]:AREA_SIZE), skill_id, skill_lv); }
-int skill_get_hp( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].hp[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_sp( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].sp[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_hp_rate(uint16 skill_id, uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].hp_rate[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_sp_rate(uint16 skill_id, uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].sp_rate[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_state(uint16 skill_id) { skill_get (skill->dbs->db[skill_id].state, skill_id); }
-int skill_get_spiritball(uint16 skill_id, uint16 skill_lv) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].spiritball[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_itemid(uint16 skill_id, int idx) { skill_get (skill->dbs->db[skill_id].itemid[idx], skill_id); }
-int skill_get_itemqty(uint16 skill_id, int idx) { skill_get (skill->dbs->db[skill_id].amount[idx], skill_id); }
-int skill_get_zeny( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].zeny[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_num( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].num[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_cast( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].cast[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_delay( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].delay[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_walkdelay( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].walkdelay[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_time( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].upkeep_time[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_time2( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].upkeep_time2[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_castdef( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].cast_def_rate, skill_id); }
-int skill_get_weapontype( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].weapon, skill_id); }
-int skill_get_ammotype( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].ammo, skill_id); }
-int skill_get_ammo_qty( uint16 skill_id, uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].ammo_qty[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_inf2( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].inf2, skill_id); }
-int skill_get_castcancel( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].castcancel, skill_id); }
-int skill_get_maxcount( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].maxcount[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_blewcount( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].blewcount[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_mhp( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].mhp[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_castnodex( uint16 skill_id ,uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].castnodex[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_delaynodex( uint16 skill_id ,uint16 skill_lv ){ Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].delaynodex[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_type( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].skill_type, skill_id); }
-int skill_get_unit_id ( uint16 skill_id, int flag ){ skill_get (skill->dbs->db[skill_id].unit_id[flag], skill_id); }
-int skill_get_unit_interval( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].unit_interval, skill_id); }
-int skill_get_unit_range( uint16 skill_id, uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].unit_range[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_unit_target( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].unit_target&BCT_ALL, skill_id); }
-int skill_get_unit_bl_target( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].unit_target&BL_ALL, skill_id); }
-int skill_get_unit_flag( uint16 skill_id ) { skill_get (skill->dbs->db[skill_id].unit_flag, skill_id); }
-int skill_get_unit_layout_type( uint16 skill_id ,uint16 skill_lv ){ Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].unit_layout_type[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_cooldown( uint16 skill_id, uint16 skill_lv ) { Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].cooldown[skill_glv(skill_lv-1)], skill_id, skill_lv); }
-int skill_get_fixed_cast( uint16 skill_id ,uint16 skill_lv ) {
+
+int skill_get_hit(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].hit;
+}
+
+int skill_get_inf(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return INF_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(INF_NONE, idx != 0);
+ return skill->dbs->db[idx].inf;
+}
+
+int skill_get_ele(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return ELE_NEUTRAL;
+ idx = skill->get_index(skill_id);
+ Assert_retr(ELE_NEUTRAL, idx != 0);
+ Assert_retr(ELE_NEUTRAL, skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].element[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].element[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_nk(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return NK_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(NK_NONE, idx != 0);
+ return skill->dbs->db[idx].nk;
+}
+
+int skill_get_max(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].max;
+}
+
+int skill_get_range(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].range[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].range[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_splash(int skill_id, int skill_lv)
+{
+ int idx, val;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ val = skill->dbs->db[idx].splash[skill_get_lvl_idx(skill_lv)];
+ if (val < 0) {
+ val = AREA_SIZE;
+ }
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return val;
+}
+
+int skill_get_hp(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].hp[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].hp[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_sp(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].sp[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].sp[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_hp_rate(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].hp_rate[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].hp_rate[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_sp_rate(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].sp_rate[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].sp_rate[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_state(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return ST_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(ST_NONE, idx != 0);
+ return skill->dbs->db[idx].state;
+}
+
+int skill_get_spiritball(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].spiritball[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].spiritball[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_itemid(int skill_id, int item_idx)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
+ return skill->dbs->db[idx].itemid[item_idx];
+}
+
+int skill_get_itemqty(int skill_id, int item_idx)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
+ return skill->dbs->db[idx].amount[item_idx];
+}
+
+int skill_get_zeny(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].zeny[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].zeny[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_num(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].num[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].num[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_cast(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].cast[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].cast[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_delay(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].delay[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].delay[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_walkdelay(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].walkdelay[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].walkdelay[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_time(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].upkeep_time[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].upkeep_time[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_time2(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].upkeep_time2[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].upkeep_time2[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_castdef(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].cast_def_rate;
+}
+
+int skill_get_weapontype(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].weapon;
+}
+
+int skill_get_ammotype(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].ammo;
+}
+
+int skill_get_ammo_qty(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].ammo_qty[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].ammo_qty[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_inf2(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return INF2_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(INF2_NONE, idx != 0);
+ return skill->dbs->db[idx].inf2;
+}
+
+int skill_get_castcancel(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].castcancel;
+}
+
+int skill_get_maxcount(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].maxcount[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].maxcount[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_blewcount(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].blewcount[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].blewcount[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_mhp(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].mhp[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].mhp[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_castnodex(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].castnodex[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].castnodex[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_delaynodex(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].delaynodex[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].delaynodex[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_type(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return BF_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(BF_NONE, idx != 0);
+ return skill->dbs->db[idx].skill_type;
+}
+
+int skill_get_unit_id(int skill_id, int flag)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(flag >= 0 && flag < ARRAYLENGTH(skill->dbs->db[0].unit_id));
+ return skill->dbs->db[idx].unit_id[flag];
+}
+
+int skill_get_unit_interval(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ return skill->dbs->db[idx].unit_interval;
+}
+
+int skill_get_unit_range(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].unit_range[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].unit_range[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_unit_target(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return BCT_NOONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(BCT_NOONE, idx != 0);
+ return skill->dbs->db[idx].unit_target & BCT_ALL;
+}
+
+int skill_get_unit_bl_target(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return BL_NUL;
+ idx = skill->get_index(skill_id);
+ Assert_retr(BL_NUL, idx != 0);
+ return skill->dbs->db[idx].unit_target & BL_ALL;
+}
+
+int skill_get_unit_flag(int skill_id)
+{
+ int idx;
+ if (skill_id == 0)
+ return UF_NONE;
+ idx = skill->get_index(skill_id);
+ Assert_retr(UF_NONE, idx != 0);
+ return skill->dbs->db[idx].unit_flag;
+}
+
+int skill_get_unit_layout_type(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].unit_layout_type[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].unit_layout_type[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_cooldown(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].cooldown[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].cooldown[skill_get_lvl_idx(skill_lv)];
+}
+
+int skill_get_fixed_cast(int skill_id, int skill_lv)
+{
+ int idx;
+ if (skill_id == 0)
+ return 0;
+ idx = skill->get_index(skill_id);
+ Assert_ret(idx != 0);
+ Assert_ret(skill_lv > 0);
#ifdef RENEWAL_CAST
- Assert_ret(skill_lv > 0); skill_get2 (skill->dbs->db[skill_id].fixed_cast[skill_glv(skill_lv-1)], skill_id, skill_lv);
+ if (skill_lv > MAX_SKILL_LEVEL) {
+ int val = skill->dbs->db[idx].fixed_cast[skill_get_lvl_idx(skill_lv)];
+ return skill_adjust_over_level(val, skill_lv, skill->dbs->db[idx].max);
+ }
+ return skill->dbs->db[idx].fixed_cast[skill_get_lvl_idx(skill_lv)];
#else
return 0;
#endif
}
-int skill_tree_get_max(uint16 skill_id, int class)
+int skill_tree_get_max(int skill_id, int class)
{
int i;
int class_idx = pc->class2idx(class);
@@ -231,7 +736,7 @@ int skill_tree_get_max(uint16 skill_id, int class)
return skill->get_max(skill_id);
}
-int skill_get_casttype(uint16 skill_id)
+int skill_get_casttype(int skill_id)
{
int inf = skill->get_inf(skill_id);
if (inf&(INF_GROUND_SKILL))
@@ -248,7 +753,7 @@ int skill_get_casttype(uint16 skill_id)
return CAST_DAMAGE;
}
-int skill_get_casttype2(uint16 index)
+int skill_get_casttype2(int index)
{
int inf;
Assert_retr(CAST_NODAMAGE, index < MAX_SKILL_DB);
@@ -268,7 +773,7 @@ int skill_get_casttype2(uint16 index)
}
//Returns actual skill range taking into account attack range and AC_OWL [Skotlex]
-int skill_get_range2(struct block_list *bl, uint16 skill_id, uint16 skill_lv)
+int skill_get_range2(struct block_list *bl, int skill_id, int skill_lv)
{
int range;
struct map_session_data *sd = BL_CAST(BL_PC, bl);
@@ -482,7 +987,7 @@ int can_copy (struct map_session_data *sd, uint16 skill_id, struct block_list* b
(skill_id >= GC_DARKCROW && skill_id <= SU_FRESHSHRIMP)))
return 0;
// Reproduce will only copy skills according on the list. [Jobbie]
- else if( sd->sc.data[SC__REPRODUCE] && !skill->dbs->reproduce_db[skill->get_index(skill_id)] )
+ else if (sd->sc.data[SC__REPRODUCE] && (skill->get_inf2(skill_id) & INF2_ALLOW_REPRODUCE) == 0)
return 0;
return 1;
@@ -3175,8 +3680,8 @@ int skill_check_condition_mercenary(struct block_list *bl, int skill_id, int lv,
struct status_data *st;
struct map_session_data *sd = NULL;
int i, hp, sp, hp_rate, sp_rate, state, mhp;
- uint16 idx;
- int itemid[MAX_SKILL_ITEM_REQUIRE],amount[ARRAYLENGTH(itemid)],index[ARRAYLENGTH(itemid)];
+ int idx;
+ int itemid[MAX_SKILL_ITEM_REQUIRE], amount[MAX_SKILL_ITEM_REQUIRE], index[MAX_SKILL_ITEM_REQUIRE];
if( lv < 1 || lv > MAX_SKILL_LEVEL )
return 0;
@@ -3192,8 +3697,7 @@ int skill_check_condition_mercenary(struct block_list *bl, int skill_id, int lv,
return 0;
// Requirements
- for( i = 0; i < ARRAYLENGTH(itemid); i++ )
- {
+ for (i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
itemid[i] = skill->dbs->db[idx].itemid[i];
amount[i] = skill->dbs->db[idx].amount[i];
}
@@ -4703,7 +5207,7 @@ int skill_castend_damage_id(struct block_list* src, struct block_list *bl, uint1
item_tmp.nameid = sg->item_id ? sg->item_id : ITEMID_BOOBY_TRAP;
item_tmp.identify = 1;
if( item_tmp.nameid )
- map->addflooritem(bl, &item_tmp, 1, bl->m, bl->x, bl->y, 0, 0, 0, 0);
+ map->addflooritem(bl, &item_tmp, 1, bl->m, bl->x, bl->y, 0, 0, 0, 0, false);
}
skill->delunit(su);
}
@@ -6666,7 +7170,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
// custom hack to make the mob display the skill, because these skills don't show the skill use text themselves
//NOTE: mobs don't have the sprite animation that is used when performing this skill (will cause glitches)
char temp[70];
- snprintf(temp, sizeof(temp), "%s : %s !!",md->name,skill->dbs->db[skill_id].desc);
+ snprintf(temp, sizeof(temp), "%s : %s !!", md->name, skill->get_desc(skill_id));
clif->disp_overhead(&md->bl,temp);
}
break;
@@ -6865,7 +7369,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
return 1;
}
if( sd->skillitem != skill_id )
- status_zap(src,0,skill->dbs->db[skill->get_index(skill_id)].sp[skill_lv]); // consume sp only if succeeded
+ status_zap(src, 0, skill->get_sp(skill_id, skill_lv)); // consume sp only if succeeded
}
break;
@@ -6948,7 +7452,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
eflag = pc->additem(sd,&item_tmp,1,LOG_TYPE_PRODUCE);
if(eflag) {
clif->additem(sd,0,0,eflag);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
break;
@@ -7041,21 +7545,22 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
return 1;
}
if( sd ) {
- int x,bonus=100, potion = min(500+skill_lv,505);
- x = skill_lv%11 - 1;
- i = pc->search_inventory(sd,skill->dbs->db[skill_id].itemid[x]);
- if (i == INDEX_NOT_FOUND || skill->dbs->db[skill_id].itemid[x] <= 0) {
+ int bonus = 100, potion = min(500+skill_lv,505);
+ int item_idx = (skill_lv - 1) % MAX_SKILL_ITEM_REQUIRE;
+ int item_id = skill->get_itemid(skill_id, item_idx);
+ int inventory_idx = pc->search_inventory(sd, item_id);
+ if (inventory_idx == INDEX_NOT_FOUND || item_id <= 0) {
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
map->freeblock_unlock();
return 1;
}
- if(sd->inventory_data[i] == NULL || sd->status.inventory[i].amount < skill->dbs->db[skill_id].amount[x]) {
+ if (sd->inventory_data[inventory_idx] == NULL || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx)) {
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
map->freeblock_unlock();
return 1;
}
if( skill_id == AM_BERSERKPITCHER ) {
- if (dstsd && dstsd->status.base_level < sd->inventory_data[i]->elv) {
+ if (dstsd != NULL && dstsd->status.base_level < sd->inventory_data[inventory_idx]->elv) {
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
map->freeblock_unlock();
return 1;
@@ -7064,7 +7569,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
script->potion_flag = 1;
script->potion_hp = script->potion_sp = script->potion_per_hp = script->potion_per_sp = 0;
script->potion_target = bl->id;
- script->run_use_script(sd, sd->inventory_data[i], 0);
+ script->run_use_script(sd, sd->inventory_data[inventory_idx], 0);
script->potion_flag = script->potion_target = 0;
if( sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_ALCHEMIST )
bonus += sd->status.base_level;
@@ -7384,7 +7889,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
maxlv = skill_lv - 4;
}
else if(skill_lv >=2) {
- int i = rnd()%3;
+ int i = rnd() % ARRAYLENGTH(spellarray);
spellid = spellarray[i];
maxlv = skill_lv - 1;
}
@@ -7591,14 +8096,14 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
case WE_MALE:
{
- int hp_rate = (!skill_lv)? 0:skill->dbs->db[skill_id].hp_rate[skill_lv-1];
+ int hp_rate = skill_lv == 0 ? 0 : skill->get_hp_rate(skill_id, skill_lv);
int gain_hp = tstatus->max_hp*abs(hp_rate)/100; // The earned is the same % of the target HP than it cost the caster. [Skotlex]
clif->skill_nodamage(src,bl,skill_id,status->heal(bl, gain_hp, 0, 0),1);
}
break;
case WE_FEMALE:
{
- int sp_rate = (!skill_lv)? 0:skill->dbs->db[skill_id].sp_rate[skill_lv-1];
+ int sp_rate = skill_lv == 0 ? 0 : skill->get_sp_rate(skill_id, skill_lv);
int gain_sp = tstatus->max_sp*abs(sp_rate)/100;// The earned is the same % of the target SP than it cost the caster. [Skotlex]
clif->skill_nodamage(src,bl,skill_id,status->heal(bl, 0, gain_sp, 0),1);
}
@@ -7661,16 +8166,17 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
if( battle_config.skill_removetrap_type ) {
int i;
// get back all items used to deploy the trap
- for( i = 0; i < 10; i++ ) {
- if( skill->dbs->db[su->group->skill_id].itemid[i] > 0 ) {
+ for (i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ int nameid = skill->get_itemid(su->group->skill_id, i);
+ if (nameid > 0) {
int success;
- struct item item_tmp;
- memset(&item_tmp,0,sizeof(item_tmp));
- item_tmp.nameid = skill->dbs->db[su->group->skill_id].itemid[i];
+ struct item item_tmp = { 0 };
+ int amount = skill->get_itemqty(su->group->skill_id, i);
+ item_tmp.nameid = nameid;
item_tmp.identify = 1;
- if (item_tmp.nameid && (success=pc->additem(sd,&item_tmp,skill->dbs->db[su->group->skill_id].amount[i],LOG_TYPE_SKILL)) != 0) {
+ if ((success = pc->additem(sd, &item_tmp, amount, LOG_TYPE_SKILL)) != 0) {
clif->additem(sd,0,0,success);
- map->addflooritem(&sd->bl, &item_tmp, skill->dbs->db[su->group->skill_id].amount[i], sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -7682,7 +8188,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
item_tmp.identify = 1;
if (item_tmp.nameid && (flag=pc->additem(sd,&item_tmp,1,LOG_TYPE_SKILL)) != 0) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
}
@@ -7902,7 +8408,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
map->freeblock_unlock();
return 0;
}
- status_zap(src,0,skill->dbs->db[skill->get_index(skill_id)].sp[skill_lv]); // consume sp only if succeeded [Inkfish]
+ status_zap(src, 0, skill->get_sp(skill_id, skill_lv)); // consume sp only if succeeded [Inkfish]
do {
int eff = rnd() % 14;
if( eff == 5 )
@@ -7926,7 +8432,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
clif->damage(src,bl,0,0,1000,0,BDT_NORMAL,0);
if( !status->isdead(bl) ) {
int where[] = { EQP_ARMOR, EQP_SHIELD, EQP_HELM, EQP_SHOES, EQP_GARMENT };
- skill->break_equip(bl, where[rnd()%5], 10000, BCT_ENEMY);
+ skill->break_equip(bl, where[rnd() % ARRAYLENGTH(where)], 10000, BCT_ENEMY);
}
}
break;
@@ -7947,7 +8453,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
case 7: // stop freeze or stoned
{
enum sc_type sc[] = { SC_STOP, SC_FREEZE, SC_STONE };
- sc_start(src,bl,sc[rnd()%3],100,skill_lv,skill->get_time2(skill_id,skill_lv));
+ sc_start(src,bl,sc[rnd() % ARRAYLENGTH(sc)],100,skill_lv,skill->get_time2(skill_id,skill_lv));
}
break;
case 8: // curse coma and poison
@@ -10837,10 +11343,13 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui
// Slim Pitcher [Celest]
case CR_SLIMPITCHER:
if (sd) {
- int i = skill_lv%11 - 1;
- int j = pc->search_inventory(sd,skill->dbs->db[skill_id].itemid[i]);
- if (j == INDEX_NOT_FOUND || skill->dbs->db[skill_id].itemid[i] <= 0
- || sd->inventory_data[j] == NULL || sd->status.inventory[j].amount < skill->dbs->db[skill_id].amount[i]
+ int item_idx = (skill_lv - 1) % MAX_SKILL_ITEM_REQUIRE;
+ int item_id = skill->get_itemid(skill_id, item_idx);
+ int inventory_idx = pc->search_inventory(sd, item_id);
+ int bonus;
+ if (inventory_idx == INDEX_NOT_FOUND || item_id <= 0
+ || sd->inventory_data[inventory_idx] == NULL
+ || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx)
) {
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
return 1;
@@ -10848,44 +11357,44 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui
script->potion_flag = 1;
script->potion_hp = 0;
script->potion_sp = 0;
- script->run_use_script(sd, sd->inventory_data[j], 0);
+ script->run_use_script(sd, sd->inventory_data[inventory_idx], 0);
script->potion_flag = 0;
//Apply skill bonuses
- i = pc->checkskill(sd,CR_SLIMPITCHER)*10
+ bonus = pc->checkskill(sd,CR_SLIMPITCHER)*10
+ pc->checkskill(sd,AM_POTIONPITCHER)*10
+ pc->checkskill(sd,AM_LEARNINGPOTION)*5
+ pc->skillheal_bonus(sd, skill_id);
- script->potion_hp = script->potion_hp * (100+i)/100;
- script->potion_sp = script->potion_sp * (100+i)/100;
+ script->potion_hp = script->potion_hp * (100 + bonus) / 100;
+ script->potion_sp = script->potion_sp * (100 + bonus) / 100;
- if(script->potion_hp > 0 || script->potion_sp > 0) {
- i = skill->get_splash(skill_id, skill_lv);
+ if (script->potion_hp > 0 || script->potion_sp > 0) {
+ r = skill->get_splash(skill_id, skill_lv);
map->foreachinarea(skill->area_sub,
- src->m,x-i,y-i,x+i,y+i,BL_CHAR,
- src,skill_id,skill_lv,tick,flag|BCT_PARTY|BCT_GUILD|1,
+ src->m, x - r, y - r, x + r, y + r, BL_CHAR,
+ src, skill_id, skill_lv, tick, flag|BCT_PARTY|BCT_GUILD|1,
skill->castend_nodamage_id);
}
} else {
- int i = skill_lv%11 - 1;
- struct item_data *item;
- i = skill->dbs->db[skill_id].itemid[i];
- item = itemdb->search(i);
+ int item_idx = (skill_lv - 1) % MAX_SKILL_ITEM_REQUIRE;
+ int item_id = skill->get_itemid(skill_id, item_idx);
+ struct item_data *item = itemdb->search(item_id);
+ int bonus;
script->potion_flag = 1;
script->potion_hp = 0;
script->potion_sp = 0;
script->run(item->script,0,src->id,0);
script->potion_flag = 0;
- i = skill->get_max(CR_SLIMPITCHER)*10;
+ bonus = skill->get_max(CR_SLIMPITCHER)*10;
- script->potion_hp = script->potion_hp * (100+i)/100;
- script->potion_sp = script->potion_sp * (100+i)/100;
+ script->potion_hp = script->potion_hp * (100 + bonus)/100;
+ script->potion_sp = script->potion_sp * (100 + bonus)/100;
- if(script->potion_hp > 0 || script->potion_sp > 0) {
- i = skill->get_splash(skill_id, skill_lv);
+ if (script->potion_hp > 0 || script->potion_sp > 0) {
+ r = skill->get_splash(skill_id, skill_lv);
map->foreachinarea(skill->area_sub,
- src->m,x-i,y-i,x+i,y+i,BL_CHAR,
- src,skill_id,skill_lv,tick,flag|BCT_PARTY|BCT_GUILD|1,
+ src->m, x - r, y - r, x + r, y + r, BL_CHAR,
+ src, skill_id, skill_lv, tick, flag|BCT_PARTY|BCT_GUILD|1,
skill->castend_nodamage_id);
}
}
@@ -11636,27 +12145,27 @@ struct skill_unit_group* skill_unitsetting(struct block_list *src, uint16 skill_
int element[5]={ELE_WIND,ELE_DARK,ELE_POISON,ELE_WATER,ELE_FIRE};
val1 = st->rhw.ele;
- if (!val1)
- val1=element[rnd()%5];
+ if (val1 == ELE_NEUTRAL)
+ val1 = element[rnd() % ARRAYLENGTH(element)];
- switch (val1)
- {
+ switch (val1) {
case ELE_FIRE:
- subunt++;
- FALLTHROUGH
+ subunt = 4;
+ break;
case ELE_WATER:
- subunt++;
- FALLTHROUGH
+ subunt = 3;
+ break;
case ELE_POISON:
- subunt++;
- FALLTHROUGH
+ subunt = 2;
+ break;
case ELE_DARK:
- subunt++;
- FALLTHROUGH
+ subunt = 1;
+ break;
case ELE_WIND:
+ subunt = 0;
break;
default:
- subunt=rnd()%5;
+ subunt = rnd() % 5;
break;
}
@@ -14824,7 +15333,8 @@ struct skill_condition skill_get_requirement(struct map_session_data* sd, uint16
}
for( i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++ ) {
- if( (skill_id == AM_POTIONPITCHER || skill_id == CR_SLIMPITCHER || skill_id == CR_CULTIVATION) && i != skill_lv%11 - 1 )
+ int item_idx = (skill_lv - 1) % MAX_SKILL_ITEM_REQUIRE;
+ if ((skill_id == AM_POTIONPITCHER || skill_id == CR_SLIMPITCHER || skill_id == CR_CULTIVATION) && i != item_idx)
continue;
switch( skill_id ) {
@@ -16618,15 +17128,16 @@ struct skill_unit_group* skill_id2group(int group_id)
/// Fatal error if nothing is available.
int skill_get_new_group_id(void)
{
- if( skill->unit_group_newid >= MAX_SKILL_DB && skill->id2group(skill->unit_group_newid) == NULL )
+ if (skill->unit_group_newid > MAX_SKILL_ID && skill->id2group(skill->unit_group_newid) == NULL)
return skill->unit_group_newid++;// available
- {// find next id
+
+ {
+ // find next id
int base_id = skill->unit_group_newid;
- while( base_id != ++skill->unit_group_newid )
- {
- if( skill->unit_group_newid < MAX_SKILL_DB )
- skill->unit_group_newid = MAX_SKILL_DB;
- if( skill->id2group(skill->unit_group_newid) == NULL )
+ while (base_id != ++skill->unit_group_newid) {
+ if (skill->unit_group_newid <= MAX_SKILL_ID)
+ skill->unit_group_newid = MAX_SKILL_ID + 1;
+ if (skill->id2group(skill->unit_group_newid) == NULL)
return skill->unit_group_newid++;// available
}
// full loop, nothing available
@@ -16991,7 +17502,7 @@ int skill_unit_timer_sub(union DBKey key, struct DBData *data, va_list ap)
memset(&item_tmp,0,sizeof(item_tmp));
item_tmp.nameid = group->item_id ? group->item_id : ITEMID_BOOBY_TRAP;
item_tmp.identify = 1;
- map->addflooritem(bl, &item_tmp, 1, bl->m, bl->x, bl->y, 0, 0, 0, 0);
+ map->addflooritem(bl, &item_tmp, 1, bl->m, bl->x, bl->y, 0, 0, 0, 0, false);
}
skill->delunit(su);
}
@@ -17719,7 +18230,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
int difficulty = 30 + rnd()%120; // Random number between (30 ~ 150)
make_per = sd->status.job_level / 4 + st->luk / 2 + st->dex / 3; // (Caster?s Job Level / 4) + (Caster?s LUK / 2) + (Caster?s DEX / 3)
- qty = ~(5 + rnd()%5) + 1;
+ qty = ~(5 + rnd()%5) + 1; // FIXME[Haru]: This smells, if anyone knows the intent, please rewrite the expression in a more clear form.
switch(nameid){// difficulty factor
case ITEMID_APPLE_BOMB:
@@ -17755,7 +18266,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
qty = 5;
if( qty < 0 || (skill_lv == 1 && make_per < difficulty)){
- qty = ~qty + 1;
+ qty = ~qty + 1; // FIXME[Haru]: This smells. If anyone knows the intent, please rewrite the expression in a more clear form.
make_per = 0;
}else
make_per = 10000;
@@ -17946,7 +18457,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
tmp_item.amount = qty * skill->dbs->changematerial_db[i].qty[j];
if((flag = pc->additem(sd,&tmp_item,tmp_item.amount,LOG_TYPE_PRODUCE))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
k++;
}
@@ -17960,7 +18471,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
} else if (tmp_item.amount) { //Success
if((flag = pc->additem(sd,&tmp_item,tmp_item.amount,LOG_TYPE_PRODUCE))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
if( skill_id == GN_MIX_COOKING || skill_id == GN_MAKEBOMB || skill_id == GN_S_PHARMACY )
clif->msgtable_skill(sd, skill_id, MSG_SKILL_SUCCESS);
@@ -18012,7 +18523,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
int rate = rnd()%500;
memset(&tmp_item,0,sizeof(tmp_item));
if( rate < 50) i = 4;
- else if( rate < 100) i = 2+rnd()%1;
+ else if( rate < 100) i = 2+rnd()%1; // FIXME[Haru]: This '%1' is certainly not intended. If anyone knows the purpose, please rewrite this code.
else if( rate < 250 ) i = 1;
else if( rate < 500 ) i = 0;
tmp_item.nameid = compensation[i];
@@ -18020,7 +18531,7 @@ int skill_produce_mix(struct map_session_data *sd, uint16 skill_id, int nameid,
tmp_item.identify = 1;
if( pc->additem(sd,&tmp_item,tmp_item.amount,LOG_TYPE_PRODUCE) ) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
clif->msgtable_skill(sd, skill_id, MSG_SKILL_FAILURE);
}
@@ -18077,7 +18588,7 @@ int skill_arrow_create (struct map_session_data *sd, int nameid)
continue;
if((flag = pc->additem(sd,&tmp_item,tmp_item.amount,LOG_TYPE_PRODUCE))) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
@@ -18332,7 +18843,7 @@ int skill_elementalanalysis(struct map_session_data *sd, uint16 skill_lv, const
int flag = pc->additem(sd,&tmp_item,tmp_item.amount,LOG_TYPE_CONSUME);
if (flag) {
clif->additem(sd,0,0,flag);
- map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
+ map->addflooritem(&sd->bl, &tmp_item, tmp_item.amount, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
}
@@ -18435,7 +18946,7 @@ int skill_blockpc_end(int tid, int64 tick, int id, intptr_t data)
struct map_session_data *sd = map->id2sd(id);
struct skill_cd * cd = NULL;
- if (data <= 0 || data >= MAX_SKILL)
+ if (data <= 0 || data >= MAX_SKILL_DB)
return 0;
if (!sd || !sd->blockskill[data])
return 0;
@@ -18571,7 +19082,7 @@ int skill_blockpc_start_(struct map_session_data *sd, uint16 skill_id, int tick)
int skill_blockhomun_end(int tid, int64 tick, int id, intptr_t data)
{
struct homun_data *hd = map->id2hd(id);
- if (data <= 0 || data >= MAX_SKILL)
+ if (data <= 0 || data >= MAX_SKILL_DB)
return 0;
if (hd != NULL)
hd->blockskill[data] = 0;
@@ -18600,7 +19111,7 @@ int skill_blockhomun_start(struct homun_data *hd, uint16 skill_id, int tick)
int skill_blockmerc_end(int tid, int64 tick, int id, intptr_t data)
{
struct mercenary_data *md = map->id2mc(id);
- if (data <= 0 || data >= MAX_SKILL)
+ if (data <= 0 || data >= MAX_SKILL_DB)
return 0;
if (md != NULL)
md->blockskill[data] = 0;
@@ -19338,21 +19849,6 @@ bool skill_parse_row_magicmushroomdb(char* split[], int column, int current)
return true;
}
-bool skill_parse_row_reproducedb(char* split[], int column, int current)
-{
- uint16 skill_id;
- uint16 idx;
- nullpo_retr(false, split);
- skill_id = atoi(split[0]);
- idx = skill->get_index(skill_id);
- if( !idx )
- return false;
-
- skill->dbs->reproduce_db[idx] = true;
-
- return true;
-}
-
bool skill_parse_row_abradb(char* split[], int columns, int current)
{
// skill_id,DummyName,RequiredHocusPocusLevel,Rate
@@ -19651,6 +20147,18 @@ void skill_validate_skillinfo(struct config_setting_t *conf, struct s_skill_db *
} else {
sk->inf2 &= ~INF2_FREE_CAST_REDUCED;
}
+ } else if (strcmpi(type, "ShowSkillScale") == 0) {
+ if (on) {
+ sk->inf2 |= INF2_SHOW_SKILL_SCALE;
+ } else {
+ sk->inf2 &= ~INF2_SHOW_SKILL_SCALE;
+ }
+ } else if (strcmpi(type, "AllowReproduce") == 0) {
+ if (on) {
+ sk->inf2 |= INF2_ALLOW_REPRODUCE;
+ } else {
+ sk->inf2 &= ~INF2_ALLOW_REPRODUCE;
+ }
} else if (strcmpi(type, "None") != 0) {
skilldb_invalid_error(type, config_setting_name(t), sk->nameid);
}
@@ -20477,7 +20985,7 @@ bool skill_read_skilldb(const char *filename)
struct config_setting_t *sk, *conf;
char filepath[256];
int count=0, index=0;
- bool duplicate[MAX_SKILL] = {0};
+ bool duplicate[MAX_SKILL_DB] = {0};
nullpo_retr(false, filename);
@@ -20763,7 +21271,6 @@ void skill_readdb(bool minimal)
sv->readdb(map->db_path, "spellbook_db.txt", ',', 3, 3, MAX_SKILL_SPELLBOOK_DB, skill->parse_row_spellbookdb);
//Guillotine Cross
sv->readdb(map->db_path, "magicmushroom_db.txt", ',', 1, 1, MAX_SKILL_MAGICMUSHROOM_DB, skill->parse_row_magicmushroomdb);
- sv->readdb(map->db_path, "skill_reproduce_db.txt", ',', 1, 1, MAX_SKILL_DB, skill->parse_row_reproducedb);
sv->readdb(map->db_path, "skill_improvise_db.txt", ',', 2, 2, MAX_SKILL_IMPROVISE_DB, skill->parse_row_improvisedb);
sv->readdb(map->db_path, "skill_changematerial_db.txt", ',', 4, 4+2*5, MAX_SKILL_PRODUCE_DB, skill->parse_row_changematerialdb);
}
@@ -20902,8 +21409,12 @@ void skill_defaults(void)
skill->get_hp = skill_get_hp;
skill->get_mhp = skill_get_mhp;
skill->get_sp = skill_get_sp;
+ skill->get_hp_rate = skill_get_hp_rate;
+ skill->get_sp_rate = skill_get_sp_rate;
skill->get_state = skill_get_state;
skill->get_spiritball = skill_get_spiritball;
+ skill->get_itemid = skill_get_itemid;
+ skill->get_itemqty = skill_get_itemqty;
skill->get_zeny = skill_get_zeny;
skill->get_num = skill_get_num;
skill->get_cast = skill_get_cast;
@@ -20932,7 +21443,6 @@ void skill_defaults(void)
skill->tree_get_max = skill_tree_get_max;
skill->get_name = skill_get_name;
skill->get_desc = skill_get_desc;
- skill->chk = skill_chk;
skill->get_casttype = skill_get_casttype;
skill->get_casttype2 = skill_get_casttype2;
skill->is_combo = skill_is_combo;
@@ -21074,7 +21584,6 @@ void skill_defaults(void)
skill->parse_row_abradb = skill_parse_row_abradb;
skill->parse_row_spellbookdb = skill_parse_row_spellbookdb;
skill->parse_row_magicmushroomdb = skill_parse_row_magicmushroomdb;
- skill->parse_row_reproducedb = skill_parse_row_reproducedb;
skill->parse_row_improvisedb = skill_parse_row_improvisedb;
skill->parse_row_changematerialdb = skill_parse_row_changematerialdb;
skill->usave_add = skill_usave_add;
diff --git a/src/map/skill.h b/src/map/skill.h
index bba440107..c494c0e83 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -25,7 +25,7 @@
#include "map/status.h" // enum sc_type
#include "common/hercules.h"
#include "common/db.h"
-#include "common/mmo.h" // MAX_SKILL, struct square
+#include "common/mmo.h" // MAX_SKILL_DB, struct square
/**
* Declarations
@@ -43,7 +43,6 @@ struct status_change_entry;
/**
* Defines
**/
-#define MAX_SKILL_DB MAX_SKILL
#define MAX_SKILL_PRODUCE_DB 270
#define MAX_PRODUCE_RESOURCE 10
#define MAX_SKILL_ARROW_DB 140
@@ -77,6 +76,7 @@ struct status_change_entry;
//Constants to identify the skill's inf value:
enum e_skill_inf {
+ INF_NONE = 0x00,
INF_ATTACK_SKILL = 0x01,
INF_GROUND_SKILL = 0x02,
INF_SELF_SKILL = 0x04, // Skills casted on self where target is automatically chosen
@@ -89,6 +89,7 @@ enum e_skill_inf {
//The NK value applies only to non INF_GROUND_SKILL skills
//when determining skill castend function to invoke.
enum e_skill_nk {
+ NK_NONE = 0x00,
NK_NO_DAMAGE = 0x01,
NK_SPLASH = 0x02|0x04, // 0x4 = splash & split
NK_SPLASH_ONLY = 0x02,
@@ -103,6 +104,7 @@ enum e_skill_nk {
//A skill with 3 would be no damage + splash: area of effect.
//Constants to identify a skill's inf2 value.
enum e_skill_inf2 {
+ INF2_NONE = 0x00000,
INF2_QUEST_SKILL = 0x00001,
INF2_NPC_SKILL = 0x00002, // NPC skills are those that players can't have in their skill tree.
INF2_WEDDING_SKILL = 0x00004,
@@ -120,6 +122,8 @@ enum e_skill_inf2 {
INF2_CHORUS_SKILL = 0x04000, // Chorus skill
INF2_FREE_CAST_NORMAL = 0x08000,
INF2_FREE_CAST_REDUCED = 0x10000,
+ INF2_SHOW_SKILL_SCALE = 0x20000,
+ INF2_ALLOW_REPRODUCE = 0x40000,
};
@@ -132,6 +136,7 @@ enum e_skill_display {
};
enum {
+ UF_NONE = 0x0000,
UF_DEFNOTENEMY = 0x0001, // If 'defunit_not_enemy' is set, the target is changed to 'friend'
UF_NOREITERATION = 0x0002, // Spell cannot be stacked
UF_NOFOOTSET = 0x0004, // Spell cannot be cast near/on targets
@@ -158,7 +163,7 @@ enum wl_spheres {
};
enum {
- ST_NONE,
+ ST_NONE = 0,
ST_HIDING,
ST_CLOAKING,
ST_HIDDEN,
@@ -1893,7 +1898,6 @@ BEGIN_ZEROED_BLOCK; // This block will be zeroed in skill_defaults() as well as
struct s_skill_improvise_db improvise_db[MAX_SKILL_IMPROVISE_DB];
struct s_skill_changematerial_db changematerial_db[MAX_SKILL_PRODUCE_DB];
struct s_skill_spellbook_db spellbook_db[MAX_SKILL_SPELLBOOK_DB];
- bool reproduce_db[MAX_SKILL_DB];
END_ZEROED_BLOCK;
struct s_skill_unit_layout unit_layout[MAX_SKILL_UNIT_LAYOUT];
};
@@ -1930,54 +1934,56 @@ struct skill_interface {
int unit_temp[20]; // temporary storage for tracking skill unit skill ids as players move in/out of them
int unit_group_newid;
/* accesssors */
- int (*get_index) ( uint16 skill_id );
- int (*get_type) ( uint16 skill_id );
- int (*get_hit) ( uint16 skill_id );
- int (*get_inf) ( uint16 skill_id );
- int (*get_ele) ( uint16 skill_id, uint16 skill_lv );
- int (*get_nk) ( uint16 skill_id );
- int (*get_max) ( uint16 skill_id );
- int (*get_range) ( uint16 skill_id, uint16 skill_lv );
- int (*get_range2) (struct block_list *bl, uint16 skill_id, uint16 skill_lv);
- int (*get_splash) ( uint16 skill_id, uint16 skill_lv );
- int (*get_hp) ( uint16 skill_id, uint16 skill_lv );
- int (*get_mhp) ( uint16 skill_id, uint16 skill_lv );
- int (*get_sp) ( uint16 skill_id, uint16 skill_lv );
- int (*get_state) (uint16 skill_id);
- int (*get_spiritball) (uint16 skill_id, uint16 skill_lv);
- int (*get_zeny) ( uint16 skill_id, uint16 skill_lv );
- int (*get_num) ( uint16 skill_id, uint16 skill_lv );
- int (*get_cast) ( uint16 skill_id, uint16 skill_lv );
- int (*get_delay) ( uint16 skill_id, uint16 skill_lv );
- int (*get_walkdelay) ( uint16 skill_id, uint16 skill_lv );
- int (*get_time) ( uint16 skill_id, uint16 skill_lv );
- int (*get_time2) ( uint16 skill_id, uint16 skill_lv );
- int (*get_castnodex) ( uint16 skill_id, uint16 skill_lv );
- int (*get_delaynodex) ( uint16 skill_id ,uint16 skill_lv );
- int (*get_castdef) ( uint16 skill_id );
- int (*get_weapontype) ( uint16 skill_id );
- int (*get_ammotype) ( uint16 skill_id );
- int (*get_ammo_qty) ( uint16 skill_id, uint16 skill_lv );
- int (*get_unit_id) (uint16 skill_id,int flag);
- int (*get_inf2) ( uint16 skill_id );
- int (*get_castcancel) ( uint16 skill_id );
- int (*get_maxcount) ( uint16 skill_id, uint16 skill_lv );
- int (*get_blewcount) ( uint16 skill_id, uint16 skill_lv );
- int (*get_unit_flag) ( uint16 skill_id );
- int (*get_unit_target) ( uint16 skill_id );
- int (*get_unit_interval) ( uint16 skill_id );
- int (*get_unit_bl_target) ( uint16 skill_id );
- int (*get_unit_layout_type) ( uint16 skill_id ,uint16 skill_lv );
- int (*get_unit_range) ( uint16 skill_id, uint16 skill_lv );
- int (*get_cooldown) ( uint16 skill_id, uint16 skill_lv );
- int (*tree_get_max) (uint16 skill_id, int class);
- const char *(*get_name) ( uint16 skill_id );
- const char *(*get_desc) ( uint16 skill_id );
- /* check */
- void (*chk) (uint16* skill_id);
+ int (*get_index) (int skill_id);
+ int (*get_type) (int skill_id);
+ int (*get_hit) (int skill_id);
+ int (*get_inf) (int skill_id);
+ int (*get_ele) (int skill_id, int skill_lv);
+ int (*get_nk) (int skill_id);
+ int (*get_max) (int skill_id);
+ int (*get_range) (int skill_id, int skill_lv);
+ int (*get_range2) (struct block_list *bl, int skill_id, int skill_lv);
+ int (*get_splash) (int skill_id, int skill_lv);
+ int (*get_hp) (int skill_id, int skill_lv);
+ int (*get_mhp) (int skill_id, int skill_lv);
+ int (*get_sp) (int skill_id, int skill_lv);
+ int (*get_hp_rate) (int skill_id, int skill_lv);
+ int (*get_sp_rate) (int skill_id, int skill_lv);
+ int (*get_state) (int skill_id);
+ int (*get_spiritball) (int skill_id, int skill_lv);
+ int (*get_itemid) (int skill_id, int item_idx);
+ int (*get_itemqty) (int skill_id, int item_idx);
+ int (*get_zeny) (int skill_id, int skill_lv);
+ int (*get_num) (int skill_id, int skill_lv);
+ int (*get_cast) (int skill_id, int skill_lv);
+ int (*get_delay) (int skill_id, int skill_lv);
+ int (*get_walkdelay) (int skill_id, int skill_lv);
+ int (*get_time) (int skill_id, int skill_lv);
+ int (*get_time2) (int skill_id, int skill_lv);
+ int (*get_castnodex) (int skill_id, int skill_lv);
+ int (*get_delaynodex) (int skill_id, int skill_lv);
+ int (*get_castdef) (int skill_id);
+ int (*get_weapontype) (int skill_id);
+ int (*get_ammotype) (int skill_id);
+ int (*get_ammo_qty) (int skill_id, int skill_lv);
+ int (*get_unit_id) (int skill_id, int flag);
+ int (*get_inf2) (int skill_id);
+ int (*get_castcancel) (int skill_id);
+ int (*get_maxcount) (int skill_id, int skill_lv);
+ int (*get_blewcount) (int skill_id, int skill_lv);
+ int (*get_unit_flag) (int skill_id);
+ int (*get_unit_target) (int skill_id);
+ int (*get_unit_interval) (int skill_id);
+ int (*get_unit_bl_target) (int skill_id);
+ int (*get_unit_layout_type) (int skill_id, int skill_lv);
+ int (*get_unit_range) (int skill_id, int skill_lv);
+ int (*get_cooldown) (int skill_id, int skill_lv);
+ int (*tree_get_max) (int skill_id, int class);
+ const char *(*get_name) (int skill_id);
+ const char *(*get_desc) (int skill_id);
/* whether its CAST_GROUND, CAST_DAMAGE or CAST_NODAMAGE */
- int (*get_casttype) (uint16 skill_id);
- int (*get_casttype2) (uint16 index);
+ int (*get_casttype) (int skill_id);
+ int (*get_casttype2) (int index);
bool (*is_combo) (int skill_id);
int (*name2id) (const char* name);
int (*isammotype) (struct map_session_data *sd, int skill_id);
@@ -2071,7 +2077,7 @@ struct skill_interface {
int (*check_condition_mob_master_sub) (struct block_list *bl, va_list ap);
void (*brandishspear_first) (struct square *tc, uint8 dir, int16 x, int16 y);
void (*brandishspear_dir) (struct square* tc, uint8 dir, int are);
- int (*get_fixed_cast) ( uint16 skill_id ,uint16 skill_lv );
+ int (*get_fixed_cast) (int skill_id, int skill_lv);
int (*sit_count) (struct block_list *bl, va_list ap);
int (*sit_in) (struct block_list *bl, va_list ap);
int (*sit_out) (struct block_list *bl, va_list ap);
@@ -2115,7 +2121,6 @@ struct skill_interface {
bool (*parse_row_abradb) (char* split[], int columns, int current);
bool (*parse_row_spellbookdb) (char* split[], int columns, int current);
bool (*parse_row_magicmushroomdb) (char* split[], int column, int current);
- bool (*parse_row_reproducedb) (char* split[], int column, int current);
bool (*parse_row_improvisedb) (char* split[], int columns, int current);
bool (*parse_row_changematerialdb) (char* split[], int columns, int current);
/* save new unit skill */
diff --git a/src/map/status.c b/src/map/status.c
index e0893aa36..9e578bc12 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -159,7 +159,7 @@ void initChangeTables(void)
for (i = 0; i < SC_MAX; i++)
status->dbs->IconChangeTable[i] = SI_BLANK;
- for (i = 0; i < MAX_SKILL; i++)
+ for (i = 0; i < MAX_SKILL_DB; i++)
status->dbs->Skill2SCTable[i] = SC_NONE;
for (i = 0; i < SI_MAX; i++)
@@ -2329,7 +2329,7 @@ int status_calc_pc_(struct map_session_data* sd, enum e_status_calc_opt opt)
static int calculating = 0; //Check for recursive call preemption. [Skotlex]
struct status_data *bstatus; // pointer to the player's base status
const struct status_change *sc;
- struct s_skill b_skill[MAX_SKILL]; // previous skill tree
+ struct s_skill b_skill[MAX_SKILL_DB]; // previous skill tree
int b_weight, b_max_weight, b_cart_weight_max, // previous weight
i, k, index, skill_lv,refinedef=0;
int64 i64;
@@ -6809,7 +6809,7 @@ struct view_data *status_get_viewdata(struct block_list *bl)
case BL_PC: return &BL_UCAST(BL_PC, bl)->vd;
case BL_MOB: return BL_UCAST(BL_MOB, bl)->vd;
case BL_PET: return &BL_UCAST(BL_PET, bl)->vd;
- case BL_NPC: return BL_UCAST(BL_NPC, bl)->vd;
+ case BL_NPC: return &BL_UCAST(BL_NPC, bl)->vd;
case BL_HOM: return BL_UCAST(BL_HOM, bl)->vd;
case BL_MER: return BL_UCAST(BL_MER, bl)->vd;
case BL_ELEM: return BL_UCAST(BL_ELEM, bl)->vd;
@@ -6927,10 +6927,14 @@ void status_set_viewdata(struct block_list *bl, int class_)
case BL_NPC:
{
struct npc_data *nd = BL_UCAST(BL_NPC, bl);
- if (vd != NULL)
- nd->vd = vd;
- else
+ if (vd != NULL) {
+ memcpy(&nd->vd, vd, sizeof(struct view_data));
+ } else if (pc->db_checkid(class_)) {
+ memset(&nd->vd, 0, sizeof(struct view_data));
+ nd->vd.class = class_;
+ } else {
ShowError("status_set_viewdata (NPC): No view data for class %d (name=%s)\n", class_, nd->name);
+ }
}
break;
case BL_HOM: //[blackhole89]
@@ -11542,24 +11546,26 @@ int status_change_timer(int tid, int64 tick, int id, intptr_t data)
break;
case SC_POISON:
- if(st->hp <= max(st->max_hp>>2, sce->val4)) //Stop damaging after 25% HP left.
+ if (st->hp <= max(st->max_hp / 4, sce->val4)) //Stop damaging after 25% HP left.
break;
FALLTHROUGH
case SC_DPOISON:
if (--(sce->val3) > 0) {
- if (!sc->data[SC_SLOWPOISON]) {
- if( sce->val2 && bl->type == BL_MOB ) {
- struct block_list* src = map->id2bl(sce->val2);
- if (src != NULL)
- mob->log_damage(BL_UCAST(BL_MOB, bl), src, sce->val4);
- }
- map->freeblock_lock();
- status_zap(bl, sce->val4, 0);
- if (sc->data[type]) { // Check if the status still last ( can be dead since then ).
- sc_timer_next(1000 + tick, status->change_timer, bl->id, data );
- }
- map->freeblock_unlock();
+ if (sc->data[SC_SLOWPOISON] != NULL) {
+ sc_timer_next(1000 + tick, status->change_timer, bl->id, data);
+ return 0;
+ }
+ if (sce->val2 != 0 && bl->type == BL_MOB) {
+ struct block_list* src = map->id2bl(sce->val2);
+ if (src != NULL)
+ mob->log_damage(BL_UCAST(BL_MOB, bl), src, sce->val4);
}
+ map->freeblock_lock();
+ status_zap(bl, sce->val4, 0);
+ if (sc->data[type] != NULL) { // Check if the status still last (can be dead since then).
+ sc_timer_next(1000 + tick, status->change_timer, bl->id, data);
+ }
+ map->freeblock_unlock();
return 0;
}
break;
diff --git a/src/map/status.h b/src/map/status.h
index a104c66ab..e9c2218e8 100644
--- a/src/map/status.h
+++ b/src/map/status.h
@@ -2257,7 +2257,7 @@ BEGIN_ZEROED_BLOCK; /* Everything within this block will be memset to 0 when sta
int HP_table[CLASS_COUNT][MAX_LEVEL + 1];
int SP_table[CLASS_COUNT][MAX_LEVEL + 1];
int aspd_base[CLASS_COUNT][MAX_SINGLE_WEAPON_TYPE+1]; // +1 for RENEWAL_ASPD
- sc_type Skill2SCTable[MAX_SKILL]; // skill -> status
+ sc_type Skill2SCTable[MAX_SKILL_DB]; // skill -> status
int IconChangeTable[SC_MAX]; // status -> "icon" (icon is a bit of a misnomer, since there exist values with no icon associated)
unsigned int ChangeFlagTable[SC_MAX]; // status -> flags
int SkillChangeTable[SC_MAX]; // status -> skill
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc
index d6ce83912..db578e59f 100644
--- a/src/plugins/HPMHooking/HPMHooking.Defs.inc
+++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -1174,8 +1174,8 @@ typedef void (*HPMHOOK_pre_clif_feel_hate_reset) (struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_feel_hate_reset) (struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_partytickack) (struct map_session_data **sd, bool *flag);
typedef void (*HPMHOOK_post_clif_partytickack) (struct map_session_data *sd, bool flag);
-typedef void (*HPMHOOK_pre_clif_equiptickack) (struct map_session_data **sd, int *flag);
-typedef void (*HPMHOOK_post_clif_equiptickack) (struct map_session_data *sd, int flag);
+typedef void (*HPMHOOK_pre_clif_zc_config) (struct map_session_data **sd, int *type, int *flag);
+typedef void (*HPMHOOK_post_clif_zc_config) (struct map_session_data *sd, int type, int flag);
typedef void (*HPMHOOK_pre_clif_viewequip_ack) (struct map_session_data **sd, struct map_session_data **tsd);
typedef void (*HPMHOOK_post_clif_viewequip_ack) (struct map_session_data *sd, struct map_session_data *tsd);
typedef void (*HPMHOOK_pre_clif_equpcheckbox) (struct map_session_data **sd);
@@ -1188,6 +1188,8 @@ typedef void (*HPMHOOK_pre_clif_progressbar) (struct map_session_data **sd, unsi
typedef void (*HPMHOOK_post_clif_progressbar) (struct map_session_data *sd, unsigned int color, unsigned int second);
typedef void (*HPMHOOK_pre_clif_progressbar_abort) (struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_progressbar_abort) (struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_progressbar_unit) (struct block_list **bl, uint32 *color, uint32 *time);
+typedef void (*HPMHOOK_post_clif_progressbar_unit) (struct block_list *bl, uint32 color, uint32 time);
typedef void (*HPMHOOK_pre_clif_showdigit) (struct map_session_data **sd, unsigned char *type, int *value);
typedef void (*HPMHOOK_post_clif_showdigit) (struct map_session_data *sd, unsigned char type, int value);
typedef int (*HPMHOOK_pre_clif_elementalconverter_list) (struct map_session_data **sd);
@@ -2132,8 +2134,8 @@ typedef void (*HPMHOOK_pre_clif_pAdopt_reply) (int *fd, struct map_session_data
typedef void (*HPMHOOK_post_clif_pAdopt_reply) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pViewPlayerEquip) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_pViewPlayerEquip) (int fd, struct map_session_data *sd);
-typedef void (*HPMHOOK_pre_clif_pEquipTick) (int *fd, struct map_session_data **sd);
-typedef void (*HPMHOOK_post_clif_pEquipTick) (int fd, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_p_cz_config) (int *fd, struct map_session_data **sd);
+typedef void (*HPMHOOK_post_clif_p_cz_config) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pquestStateAck) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_pquestStateAck) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pmercenary_action) (int *fd, struct map_session_data **sd);
@@ -2294,6 +2296,8 @@ typedef void (*HPMHOOK_pre_clif_rodex_request_items) (struct map_session_data **
typedef void (*HPMHOOK_post_clif_rodex_request_items) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result);
typedef void (*HPMHOOK_pre_clif_rodex_icon) (int *fd, bool *show);
typedef void (*HPMHOOK_post_clif_rodex_icon) (int fd, bool show);
+typedef void (*HPMHOOK_pre_clif_skill_scale) (struct block_list **bl, int *src_id, int *x, int *y, uint16 *skill_id, uint16 *skill_lv, int *casttime);
+typedef void (*HPMHOOK_post_clif_skill_scale) (struct block_list *bl, int src_id, int x, int y, uint16 skill_id, uint16 skill_lv, int casttime);
#endif // MAP_CLIF_H
#ifdef COMMON_CORE_H /* cmdline */
typedef void (*HPMHOOK_pre_cmdline_init) (void);
@@ -3560,6 +3564,8 @@ typedef enum parsefunc_rcode (*HPMHOOK_pre_PRIV__lclif_parse_CA_LOGIN_HAN) (int
typedef enum parsefunc_rcode (*HPMHOOK_post_PRIV__lclif_parse_CA_LOGIN_HAN) (enum parsefunc_rcode retVal___, int fd, struct login_session_data *sd);
typedef enum parsefunc_rcode (*HPMHOOK_pre_PRIV__lclif_parse_CA_SSO_LOGIN_REQ) (int *fd, struct login_session_data **sd);
typedef enum parsefunc_rcode (*HPMHOOK_post_PRIV__lclif_parse_CA_SSO_LOGIN_REQ) (enum parsefunc_rcode retVal___, int fd, struct login_session_data *sd);
+typedef enum parsefunc_rcode (*HPMHOOK_pre_PRIV__lclif_parse_CA_LOGIN_OTP) (int *fd, struct login_session_data **sd);
+typedef enum parsefunc_rcode (*HPMHOOK_post_PRIV__lclif_parse_CA_LOGIN_OTP) (enum parsefunc_rcode retVal___, int fd, struct login_session_data *sd);
typedef enum parsefunc_rcode (*HPMHOOK_pre_PRIV__lclif_parse_CA_REQ_HASH) (int *fd, struct login_session_data **sd);
typedef enum parsefunc_rcode (*HPMHOOK_post_PRIV__lclif_parse_CA_REQ_HASH) (enum parsefunc_rcode retVal___, int fd, struct login_session_data *sd);
typedef enum parsefunc_rcode (*HPMHOOK_pre_PRIV__lclif_parse_CA_CHARSERVERCONNECT) (int *fd, struct login_session_data **sd);
@@ -3840,6 +3846,8 @@ typedef void (*HPMHOOK_pre_login_auth_failed) (struct login_session_data **sd, i
typedef void (*HPMHOOK_post_login_auth_failed) (struct login_session_data *sd, int result);
typedef bool (*HPMHOOK_pre_login_client_login) (int *fd, struct login_session_data **sd);
typedef bool (*HPMHOOK_post_login_client_login) (bool retVal___, int fd, struct login_session_data *sd);
+typedef bool (*HPMHOOK_pre_login_client_login_otp) (int *fd, struct login_session_data **sd);
+typedef bool (*HPMHOOK_post_login_client_login_otp) (bool retVal___, int fd, struct login_session_data *sd);
typedef void (*HPMHOOK_pre_login_char_server_connection_status) (int *fd, struct login_session_data **sd, uint8 *status);
typedef void (*HPMHOOK_post_login_char_server_connection_status) (int fd, struct login_session_data *sd, uint8 status);
typedef void (*HPMHOOK_pre_login_parse_request_connection) (int *fd, struct login_session_data **sd, const char **ip, uint32 *ipl);
@@ -3848,6 +3856,32 @@ typedef void (*HPMHOOK_pre_login_config_set_defaults) (void);
typedef void (*HPMHOOK_post_login_config_set_defaults) (void);
typedef bool (*HPMHOOK_pre_login_config_read) (const char **filename, bool *included);
typedef bool (*HPMHOOK_post_login_config_read) (bool retVal___, const char *filename, bool included);
+typedef bool (*HPMHOOK_pre_login_config_read_inter) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_inter) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_console) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_console) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_log) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_log) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_account) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_account) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_permission) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_permission) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_permission_hash) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_permission_hash) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_permission_blacklist) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_permission_blacklist) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_login_config_read_users) (const char **filename, struct config_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_login_config_read_users) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+typedef void (*HPMHOOK_pre_login_clear_dnsbl_servers) (void);
+typedef void (*HPMHOOK_post_login_clear_dnsbl_servers) (void);
+typedef void (*HPMHOOK_pre_login_config_set_dnsbl_servers) (struct config_setting_t **setting);
+typedef void (*HPMHOOK_post_login_config_set_dnsbl_servers) (struct config_setting_t *setting);
+typedef void (*HPMHOOK_pre_login_clear_client_hash_nodes) (void);
+typedef void (*HPMHOOK_post_login_clear_client_hash_nodes) (void);
+typedef void (*HPMHOOK_pre_login_config_set_md5hash) (struct config_setting_t **setting);
+typedef void (*HPMHOOK_post_login_config_set_md5hash) (struct config_setting_t *setting);
+typedef uint16 (*HPMHOOK_pre_login_convert_users_to_colors) (uint16 *users);
+typedef uint16 (*HPMHOOK_post_login_convert_users_to_colors) (uint16 retVal___, uint16 users);
#endif // LOGIN_LOGIN_H
#ifdef CHAR_LOGINIF_H /* loginif */
typedef void (*HPMHOOK_pre_loginif_init) (void);
@@ -3952,8 +3986,8 @@ typedef int (*HPMHOOK_pre_map_removemobs_timer) (int *tid, int64 *tick, int *id,
typedef int (*HPMHOOK_post_map_removemobs_timer) (int retVal___, int tid, int64 tick, int id, intptr_t data);
typedef void (*HPMHOOK_pre_map_clearflooritem) (struct block_list **bl);
typedef void (*HPMHOOK_post_map_clearflooritem) (struct block_list *bl);
-typedef int (*HPMHOOK_pre_map_addflooritem) (const struct block_list **bl, struct item **item_data, int *amount, int16 *m, int16 *x, int16 *y, int *first_charid, int *second_charid, int *third_charid, int *flags);
-typedef int (*HPMHOOK_post_map_addflooritem) (int retVal___, const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags);
+typedef int (*HPMHOOK_pre_map_addflooritem) (const struct block_list **bl, struct item **item_data, int *amount, int16 *m, int16 *x, int16 *y, int *first_charid, int *second_charid, int *third_charid, int *flags, bool *showdropeffect);
+typedef int (*HPMHOOK_post_map_addflooritem) (int retVal___, const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, bool showdropeffect);
typedef void (*HPMHOOK_pre_map_addnickdb) (int *charid, const char **nick);
typedef void (*HPMHOOK_post_map_addnickdb) (int charid, const char *nick);
typedef void (*HPMHOOK_pre_map_delnickdb) (int *charid, const char **nick);
@@ -5124,6 +5158,8 @@ typedef void (*HPMHOOK_pre_npc_market_delfromsql_sub) (const char **npcname, uns
typedef void (*HPMHOOK_post_npc_market_delfromsql_sub) (const char *npcname, unsigned short index);
typedef bool (*HPMHOOK_pre_npc_db_checkid) (const int *id);
typedef bool (*HPMHOOK_post_npc_db_checkid) (bool retVal___, const int id);
+typedef void (*HPMHOOK_pre_npc_refresh) (struct npc_data **nd);
+typedef void (*HPMHOOK_post_npc_refresh) (struct npc_data *nd);
typedef int (*HPMHOOK_pre_npc_secure_timeout_timer) (int *tid, int64 *tick, int *id, intptr_t *data);
typedef int (*HPMHOOK_post_npc_secure_timeout_timer) (int retVal___, int tid, int64 tick, int id, intptr_t data);
#endif // MAP_NPC_H
@@ -6330,98 +6366,104 @@ typedef void (*HPMHOOK_pre_skill_reload) (void);
typedef void (*HPMHOOK_post_skill_reload) (void);
typedef void (*HPMHOOK_pre_skill_read_db) (bool *minimal);
typedef void (*HPMHOOK_post_skill_read_db) (bool minimal);
-typedef int (*HPMHOOK_pre_skill_get_index) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_index) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_type) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_type) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_hit) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_hit) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_inf) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_inf) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_ele) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_ele) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_nk) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_nk) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_max) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_max) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_range) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_range) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_range2) (struct block_list **bl, uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_range2) (int retVal___, struct block_list *bl, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_splash) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_splash) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_hp) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_hp) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_mhp) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_mhp) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_sp) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_sp) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_state) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_state) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_spiritball) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_spiritball) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_zeny) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_zeny) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_num) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_num) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_cast) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_cast) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_delay) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_delay) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_walkdelay) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_walkdelay) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_time) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_time) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_time2) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_time2) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_castnodex) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_castnodex) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_delaynodex) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_delaynodex) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_castdef) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_castdef) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_weapontype) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_weapontype) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_ammotype) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_ammotype) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_ammo_qty) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_ammo_qty) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_unit_id) (uint16 *skill_id, int *flag);
-typedef int (*HPMHOOK_post_skill_get_unit_id) (int retVal___, uint16 skill_id, int flag);
-typedef int (*HPMHOOK_pre_skill_get_inf2) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_inf2) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_castcancel) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_castcancel) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_maxcount) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_maxcount) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_blewcount) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_blewcount) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_unit_flag) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_flag) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_target) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_target) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_interval) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_interval) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_bl_target) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_bl_target) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_layout_type) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_unit_layout_type) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_unit_range) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_unit_range) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_cooldown) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_cooldown) (int retVal___, uint16 skill_id, uint16 skill_lv);
-typedef int (*HPMHOOK_pre_skill_tree_get_max) (uint16 *skill_id, int *class);
-typedef int (*HPMHOOK_post_skill_tree_get_max) (int retVal___, uint16 skill_id, int class);
-typedef const char* (*HPMHOOK_pre_skill_get_name) (uint16 *skill_id);
-typedef const char* (*HPMHOOK_post_skill_get_name) (const char* retVal___, uint16 skill_id);
-typedef const char* (*HPMHOOK_pre_skill_get_desc) (uint16 *skill_id);
-typedef const char* (*HPMHOOK_post_skill_get_desc) (const char* retVal___, uint16 skill_id);
-typedef void (*HPMHOOK_pre_skill_chk) (uint16 **skill_id);
-typedef void (*HPMHOOK_post_skill_chk) (uint16 *skill_id);
-typedef int (*HPMHOOK_pre_skill_get_casttype) (uint16 *skill_id);
-typedef int (*HPMHOOK_post_skill_get_casttype) (int retVal___, uint16 skill_id);
-typedef int (*HPMHOOK_pre_skill_get_casttype2) (uint16 *index);
-typedef int (*HPMHOOK_post_skill_get_casttype2) (int retVal___, uint16 index);
+typedef int (*HPMHOOK_pre_skill_get_index) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_index) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_type) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_type) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_hit) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_hit) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_inf) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_inf) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_ele) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_ele) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_nk) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_nk) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_max) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_max) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_range) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_range) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_range2) (struct block_list **bl, int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_range2) (int retVal___, struct block_list *bl, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_splash) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_splash) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_hp) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_hp) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_mhp) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_mhp) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_sp) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_sp) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_hp_rate) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_hp_rate) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_sp_rate) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_sp_rate) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_state) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_state) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_spiritball) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_spiritball) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_itemid) (int *skill_id, int *item_idx);
+typedef int (*HPMHOOK_post_skill_get_itemid) (int retVal___, int skill_id, int item_idx);
+typedef int (*HPMHOOK_pre_skill_get_itemqty) (int *skill_id, int *item_idx);
+typedef int (*HPMHOOK_post_skill_get_itemqty) (int retVal___, int skill_id, int item_idx);
+typedef int (*HPMHOOK_pre_skill_get_zeny) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_zeny) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_num) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_num) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_cast) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_cast) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_delay) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_delay) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_walkdelay) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_walkdelay) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_time) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_time) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_time2) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_time2) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_castnodex) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_castnodex) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_delaynodex) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_delaynodex) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_castdef) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_castdef) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_weapontype) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_weapontype) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_ammotype) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_ammotype) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_ammo_qty) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_ammo_qty) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_unit_id) (int *skill_id, int *flag);
+typedef int (*HPMHOOK_post_skill_get_unit_id) (int retVal___, int skill_id, int flag);
+typedef int (*HPMHOOK_pre_skill_get_inf2) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_inf2) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_castcancel) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_castcancel) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_maxcount) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_maxcount) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_blewcount) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_blewcount) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_unit_flag) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_unit_flag) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_unit_target) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_unit_target) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_unit_interval) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_unit_interval) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_unit_bl_target) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_unit_bl_target) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_unit_layout_type) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_unit_layout_type) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_unit_range) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_unit_range) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_cooldown) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_cooldown) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_tree_get_max) (int *skill_id, int *class);
+typedef int (*HPMHOOK_post_skill_tree_get_max) (int retVal___, int skill_id, int class);
+typedef const char* (*HPMHOOK_pre_skill_get_name) (int *skill_id);
+typedef const char* (*HPMHOOK_post_skill_get_name) (const char* retVal___, int skill_id);
+typedef const char* (*HPMHOOK_pre_skill_get_desc) (int *skill_id);
+typedef const char* (*HPMHOOK_post_skill_get_desc) (const char* retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_casttype) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_casttype) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_casttype2) (int *index);
+typedef int (*HPMHOOK_post_skill_get_casttype2) (int retVal___, int index);
typedef bool (*HPMHOOK_pre_skill_is_combo) (int *skill_id);
typedef bool (*HPMHOOK_post_skill_is_combo) (bool retVal___, int skill_id);
typedef int (*HPMHOOK_pre_skill_name2id) (const char **name);
@@ -6608,8 +6650,8 @@ typedef void (*HPMHOOK_pre_skill_brandishspear_first) (struct square **tc, uint8
typedef void (*HPMHOOK_post_skill_brandishspear_first) (struct square *tc, uint8 dir, int16 x, int16 y);
typedef void (*HPMHOOK_pre_skill_brandishspear_dir) (struct square **tc, uint8 *dir, int *are);
typedef void (*HPMHOOK_post_skill_brandishspear_dir) (struct square *tc, uint8 dir, int are);
-typedef int (*HPMHOOK_pre_skill_get_fixed_cast) (uint16 *skill_id, uint16 *skill_lv);
-typedef int (*HPMHOOK_post_skill_get_fixed_cast) (int retVal___, uint16 skill_id, uint16 skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_fixed_cast) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_fixed_cast) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_sit_count) (struct block_list **bl, va_list ap);
typedef int (*HPMHOOK_post_skill_sit_count) (int retVal___, struct block_list *bl, va_list ap);
typedef int (*HPMHOOK_pre_skill_sit_in) (struct block_list **bl, va_list ap);
@@ -6696,8 +6738,6 @@ typedef bool (*HPMHOOK_pre_skill_parse_row_spellbookdb) (char **split[], int *co
typedef bool (*HPMHOOK_post_skill_parse_row_spellbookdb) (bool retVal___, char *split[], int columns, int current);
typedef bool (*HPMHOOK_pre_skill_parse_row_magicmushroomdb) (char **split[], int *column, int *current);
typedef bool (*HPMHOOK_post_skill_parse_row_magicmushroomdb) (bool retVal___, char *split[], int column, int current);
-typedef bool (*HPMHOOK_pre_skill_parse_row_reproducedb) (char **split[], int *column, int *current);
-typedef bool (*HPMHOOK_post_skill_parse_row_reproducedb) (bool retVal___, char *split[], int column, int current);
typedef bool (*HPMHOOK_pre_skill_parse_row_improvisedb) (char **split[], int *columns, int *current);
typedef bool (*HPMHOOK_post_skill_parse_row_improvisedb) (bool retVal___, char *split[], int columns, int current);
typedef bool (*HPMHOOK_pre_skill_parse_row_changematerialdb) (char **split[], int *columns, int *current);
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
index 3eeb7fd91..d7e6f524d 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
index bbd484fe1..14dc89804 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
index a372f83b3..1836bf6ba 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/plugins/HPMHooking/HPMHooking_char.sources.inc b/src/plugins/HPMHooking/HPMHooking_char.sources.inc
index b5e9afc08..8b2f1b071 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.sources.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.sources.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
index 57c1e0233..f8c270de3 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -138,6 +138,8 @@ struct {
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_LOGIN_HAN_post;
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ_pre;
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ_post;
+ struct HPMHookPoint *HP_PRIV__lclif_parse_CA_LOGIN_OTP_pre;
+ struct HPMHookPoint *HP_PRIV__lclif_parse_CA_LOGIN_OTP_post;
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_REQ_HASH_pre;
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_REQ_HASH_post;
struct HPMHookPoint *HP_PRIV__lclif_parse_CA_CHARSERVERCONNECT_pre;
@@ -368,6 +370,8 @@ struct {
struct HPMHookPoint *HP_login_auth_failed_post;
struct HPMHookPoint *HP_login_client_login_pre;
struct HPMHookPoint *HP_login_client_login_post;
+ struct HPMHookPoint *HP_login_client_login_otp_pre;
+ struct HPMHookPoint *HP_login_client_login_otp_post;
struct HPMHookPoint *HP_login_char_server_connection_status_pre;
struct HPMHookPoint *HP_login_char_server_connection_status_post;
struct HPMHookPoint *HP_login_parse_request_connection_pre;
@@ -376,6 +380,32 @@ struct {
struct HPMHookPoint *HP_login_config_set_defaults_post;
struct HPMHookPoint *HP_login_config_read_pre;
struct HPMHookPoint *HP_login_config_read_post;
+ struct HPMHookPoint *HP_login_config_read_inter_pre;
+ struct HPMHookPoint *HP_login_config_read_inter_post;
+ struct HPMHookPoint *HP_login_config_read_console_pre;
+ struct HPMHookPoint *HP_login_config_read_console_post;
+ struct HPMHookPoint *HP_login_config_read_log_pre;
+ struct HPMHookPoint *HP_login_config_read_log_post;
+ struct HPMHookPoint *HP_login_config_read_account_pre;
+ struct HPMHookPoint *HP_login_config_read_account_post;
+ struct HPMHookPoint *HP_login_config_read_permission_pre;
+ struct HPMHookPoint *HP_login_config_read_permission_post;
+ struct HPMHookPoint *HP_login_config_read_permission_hash_pre;
+ struct HPMHookPoint *HP_login_config_read_permission_hash_post;
+ struct HPMHookPoint *HP_login_config_read_permission_blacklist_pre;
+ struct HPMHookPoint *HP_login_config_read_permission_blacklist_post;
+ struct HPMHookPoint *HP_login_config_read_users_pre;
+ struct HPMHookPoint *HP_login_config_read_users_post;
+ struct HPMHookPoint *HP_login_clear_dnsbl_servers_pre;
+ struct HPMHookPoint *HP_login_clear_dnsbl_servers_post;
+ struct HPMHookPoint *HP_login_config_set_dnsbl_servers_pre;
+ struct HPMHookPoint *HP_login_config_set_dnsbl_servers_post;
+ struct HPMHookPoint *HP_login_clear_client_hash_nodes_pre;
+ struct HPMHookPoint *HP_login_clear_client_hash_nodes_post;
+ struct HPMHookPoint *HP_login_config_set_md5hash_pre;
+ struct HPMHookPoint *HP_login_config_set_md5hash_post;
+ struct HPMHookPoint *HP_login_convert_users_to_colors_pre;
+ struct HPMHookPoint *HP_login_convert_users_to_colors_post;
struct HPMHookPoint *HP_md5_string_pre;
struct HPMHookPoint *HP_md5_string_post;
struct HPMHookPoint *HP_md5_binary_pre;
@@ -811,6 +841,8 @@ struct {
int HP_PRIV__lclif_parse_CA_LOGIN_HAN_post;
int HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ_pre;
int HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ_post;
+ int HP_PRIV__lclif_parse_CA_LOGIN_OTP_pre;
+ int HP_PRIV__lclif_parse_CA_LOGIN_OTP_post;
int HP_PRIV__lclif_parse_CA_REQ_HASH_pre;
int HP_PRIV__lclif_parse_CA_REQ_HASH_post;
int HP_PRIV__lclif_parse_CA_CHARSERVERCONNECT_pre;
@@ -1041,6 +1073,8 @@ struct {
int HP_login_auth_failed_post;
int HP_login_client_login_pre;
int HP_login_client_login_post;
+ int HP_login_client_login_otp_pre;
+ int HP_login_client_login_otp_post;
int HP_login_char_server_connection_status_pre;
int HP_login_char_server_connection_status_post;
int HP_login_parse_request_connection_pre;
@@ -1049,6 +1083,32 @@ struct {
int HP_login_config_set_defaults_post;
int HP_login_config_read_pre;
int HP_login_config_read_post;
+ int HP_login_config_read_inter_pre;
+ int HP_login_config_read_inter_post;
+ int HP_login_config_read_console_pre;
+ int HP_login_config_read_console_post;
+ int HP_login_config_read_log_pre;
+ int HP_login_config_read_log_post;
+ int HP_login_config_read_account_pre;
+ int HP_login_config_read_account_post;
+ int HP_login_config_read_permission_pre;
+ int HP_login_config_read_permission_post;
+ int HP_login_config_read_permission_hash_pre;
+ int HP_login_config_read_permission_hash_post;
+ int HP_login_config_read_permission_blacklist_pre;
+ int HP_login_config_read_permission_blacklist_post;
+ int HP_login_config_read_users_pre;
+ int HP_login_config_read_users_post;
+ int HP_login_clear_dnsbl_servers_pre;
+ int HP_login_clear_dnsbl_servers_post;
+ int HP_login_config_set_dnsbl_servers_pre;
+ int HP_login_config_set_dnsbl_servers_post;
+ int HP_login_clear_client_hash_nodes_pre;
+ int HP_login_clear_client_hash_nodes_post;
+ int HP_login_config_set_md5hash_pre;
+ int HP_login_config_set_md5hash_post;
+ int HP_login_convert_users_to_colors_pre;
+ int HP_login_convert_users_to_colors_post;
int HP_md5_string_pre;
int HP_md5_string_post;
int HP_md5_binary_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
index 125c54a12..8cec39974 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -90,6 +90,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(lclif->p->parse_CA_LOGIN_PCBANG, HP_PRIV__lclif_parse_CA_LOGIN_PCBANG) },
{ HP_POP(lclif->p->parse_CA_LOGIN_HAN, HP_PRIV__lclif_parse_CA_LOGIN_HAN) },
{ HP_POP(lclif->p->parse_CA_SSO_LOGIN_REQ, HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ) },
+ { HP_POP(lclif->p->parse_CA_LOGIN_OTP, HP_PRIV__lclif_parse_CA_LOGIN_OTP) },
{ HP_POP(lclif->p->parse_CA_REQ_HASH, HP_PRIV__lclif_parse_CA_REQ_HASH) },
{ HP_POP(lclif->p->parse_CA_CHARSERVERCONNECT, HP_PRIV__lclif_parse_CA_CHARSERVERCONNECT) },
/* libconfig_interface */
@@ -207,10 +208,24 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(login->auth_ok, HP_login_auth_ok) },
{ HP_POP(login->auth_failed, HP_login_auth_failed) },
{ HP_POP(login->client_login, HP_login_client_login) },
+ { HP_POP(login->client_login_otp, HP_login_client_login_otp) },
{ HP_POP(login->char_server_connection_status, HP_login_char_server_connection_status) },
{ HP_POP(login->parse_request_connection, HP_login_parse_request_connection) },
{ HP_POP(login->config_set_defaults, HP_login_config_set_defaults) },
{ HP_POP(login->config_read, HP_login_config_read) },
+ { HP_POP(login->config_read_inter, HP_login_config_read_inter) },
+ { HP_POP(login->config_read_console, HP_login_config_read_console) },
+ { HP_POP(login->config_read_log, HP_login_config_read_log) },
+ { HP_POP(login->config_read_account, HP_login_config_read_account) },
+ { HP_POP(login->config_read_permission, HP_login_config_read_permission) },
+ { HP_POP(login->config_read_permission_hash, HP_login_config_read_permission_hash) },
+ { HP_POP(login->config_read_permission_blacklist, HP_login_config_read_permission_blacklist) },
+ { HP_POP(login->config_read_users, HP_login_config_read_users) },
+ { HP_POP(login->clear_dnsbl_servers, HP_login_clear_dnsbl_servers) },
+ { HP_POP(login->config_set_dnsbl_servers, HP_login_config_set_dnsbl_servers) },
+ { HP_POP(login->clear_client_hash_nodes, HP_login_clear_client_hash_nodes) },
+ { HP_POP(login->config_set_md5hash, HP_login_config_set_md5hash) },
+ { HP_POP(login->convert_users_to_colors, HP_login_convert_users_to_colors) },
/* md5_interface */
{ HP_POP(md5->string, HP_md5_string) },
{ HP_POP(md5->binary, HP_md5_binary) },
diff --git a/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
index 964d46b0a..658ee874d 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -1526,6 +1526,33 @@ enum parsefunc_rcode HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ(int fd, struct login_
}
return retVal___;
}
+enum parsefunc_rcode HP_PRIV__lclif_parse_CA_LOGIN_OTP(int fd, struct login_session_data *sd) {
+ int hIndex = 0;
+ enum parsefunc_rcode retVal___ = PACKET_UNKNOWN;
+ if (HPMHooks.count.HP_PRIV__lclif_parse_CA_LOGIN_OTP_pre > 0) {
+ enum parsefunc_rcode (*preHookFunc) (int *fd, struct login_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_PRIV__lclif_parse_CA_LOGIN_OTP_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_PRIV__lclif_parse_CA_LOGIN_OTP_pre[hIndex].func;
+ retVal___ = preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.PRIV__lclif.parse_CA_LOGIN_OTP(fd, sd);
+ }
+ if (HPMHooks.count.HP_PRIV__lclif_parse_CA_LOGIN_OTP_post > 0) {
+ enum parsefunc_rcode (*postHookFunc) (enum parsefunc_rcode retVal___, int fd, struct login_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_PRIV__lclif_parse_CA_LOGIN_OTP_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_PRIV__lclif_parse_CA_LOGIN_OTP_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, fd, sd);
+ }
+ }
+ return retVal___;
+}
enum parsefunc_rcode HP_PRIV__lclif_parse_CA_REQ_HASH(int fd, struct login_session_data *sd) {
int hIndex = 0;
enum parsefunc_rcode retVal___ = PACKET_UNKNOWN;
@@ -4611,6 +4638,33 @@ bool HP_login_client_login(int fd, struct login_session_data *sd) {
}
return retVal___;
}
+bool HP_login_client_login_otp(int fd, struct login_session_data *sd) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_client_login_otp_pre > 0) {
+ bool (*preHookFunc) (int *fd, struct login_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_client_login_otp_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_client_login_otp_pre[hIndex].func;
+ retVal___ = preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.client_login_otp(fd, sd);
+ }
+ if (HPMHooks.count.HP_login_client_login_otp_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int fd, struct login_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_client_login_otp_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_client_login_otp_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, fd, sd);
+ }
+ }
+ return retVal___;
+}
void HP_login_char_server_connection_status(int fd, struct login_session_data *sd, uint8 status) {
int hIndex = 0;
if (HPMHooks.count.HP_login_char_server_connection_status_pre > 0) {
@@ -4716,6 +4770,353 @@ bool HP_login_config_read(const char *filename, bool included) {
}
return retVal___;
}
+bool HP_login_config_read_inter(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_inter_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_inter_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_inter_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_inter(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_inter_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_inter_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_inter_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_console(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_console_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_console_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_console_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_console(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_console_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_console_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_console_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_log(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_log_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_log_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_log_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_log(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_log_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_log_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_log_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_account(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_account_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_account_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_account_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_account(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_account_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_account_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_account_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_permission(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_permission_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_permission_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_permission(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_permission_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_permission_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_permission_hash(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_permission_hash_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_hash_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_permission_hash_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_permission_hash(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_permission_hash_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_hash_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_permission_hash_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_permission_blacklist(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_permission_blacklist_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_blacklist_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_permission_blacklist_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_permission_blacklist(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_permission_blacklist_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_permission_blacklist_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_permission_blacklist_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+bool HP_login_config_read_users(const char *filename, struct config_t *config, bool imported) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_login_config_read_users_pre > 0) {
+ bool (*preHookFunc) (const char **filename, struct config_t **config, bool *imported);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_users_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_read_users_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &config, &imported);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.config_read_users(filename, config, imported);
+ }
+ if (HPMHooks.count.HP_login_config_read_users_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, struct config_t *config, bool imported);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_read_users_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_read_users_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, config, imported);
+ }
+ }
+ return retVal___;
+}
+void HP_login_clear_dnsbl_servers(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_login_clear_dnsbl_servers_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_clear_dnsbl_servers_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_clear_dnsbl_servers_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.login.clear_dnsbl_servers();
+ }
+ if (HPMHooks.count.HP_login_clear_dnsbl_servers_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_clear_dnsbl_servers_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_clear_dnsbl_servers_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_login_config_set_dnsbl_servers(struct config_setting_t *setting) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_login_config_set_dnsbl_servers_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **setting);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_set_dnsbl_servers_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_set_dnsbl_servers_pre[hIndex].func;
+ preHookFunc(&setting);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.login.config_set_dnsbl_servers(setting);
+ }
+ if (HPMHooks.count.HP_login_config_set_dnsbl_servers_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *setting);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_set_dnsbl_servers_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_set_dnsbl_servers_post[hIndex].func;
+ postHookFunc(setting);
+ }
+ }
+ return;
+}
+void HP_login_clear_client_hash_nodes(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_login_clear_client_hash_nodes_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_clear_client_hash_nodes_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_clear_client_hash_nodes_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.login.clear_client_hash_nodes();
+ }
+ if (HPMHooks.count.HP_login_clear_client_hash_nodes_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_clear_client_hash_nodes_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_clear_client_hash_nodes_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_login_config_set_md5hash(struct config_setting_t *setting) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_login_config_set_md5hash_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **setting);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_set_md5hash_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_config_set_md5hash_pre[hIndex].func;
+ preHookFunc(&setting);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.login.config_set_md5hash(setting);
+ }
+ if (HPMHooks.count.HP_login_config_set_md5hash_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *setting);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_config_set_md5hash_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_config_set_md5hash_post[hIndex].func;
+ postHookFunc(setting);
+ }
+ }
+ return;
+}
+uint16 HP_login_convert_users_to_colors(uint16 users) {
+ int hIndex = 0;
+ uint16 retVal___ = 0;
+ if (HPMHooks.count.HP_login_convert_users_to_colors_pre > 0) {
+ uint16 (*preHookFunc) (uint16 *users);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_convert_users_to_colors_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_login_convert_users_to_colors_pre[hIndex].func;
+ retVal___ = preHookFunc(&users);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.login.convert_users_to_colors(users);
+ }
+ if (HPMHooks.count.HP_login_convert_users_to_colors_post > 0) {
+ uint16 (*postHookFunc) (uint16 retVal___, uint16 users);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_login_convert_users_to_colors_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_login_convert_users_to_colors_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, users);
+ }
+ }
+ return retVal___;
+}
/* md5_interface */
void HP_md5_string(const char *string, char *output) {
int hIndex = 0;
diff --git a/src/plugins/HPMHooking/HPMHooking_login.sources.inc b/src/plugins/HPMHooking/HPMHooking_login.sources.inc
index 8c3b935ac..55ced3025 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.sources.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.sources.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index 4bdc167f2..f057b34d8 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -810,8 +810,8 @@ struct {
struct HPMHookPoint *HP_clif_feel_hate_reset_post;
struct HPMHookPoint *HP_clif_partytickack_pre;
struct HPMHookPoint *HP_clif_partytickack_post;
- struct HPMHookPoint *HP_clif_equiptickack_pre;
- struct HPMHookPoint *HP_clif_equiptickack_post;
+ struct HPMHookPoint *HP_clif_zc_config_pre;
+ struct HPMHookPoint *HP_clif_zc_config_post;
struct HPMHookPoint *HP_clif_viewequip_ack_pre;
struct HPMHookPoint *HP_clif_viewequip_ack_post;
struct HPMHookPoint *HP_clif_equpcheckbox_pre;
@@ -824,6 +824,8 @@ struct {
struct HPMHookPoint *HP_clif_progressbar_post;
struct HPMHookPoint *HP_clif_progressbar_abort_pre;
struct HPMHookPoint *HP_clif_progressbar_abort_post;
+ struct HPMHookPoint *HP_clif_progressbar_unit_pre;
+ struct HPMHookPoint *HP_clif_progressbar_unit_post;
struct HPMHookPoint *HP_clif_showdigit_pre;
struct HPMHookPoint *HP_clif_showdigit_post;
struct HPMHookPoint *HP_clif_elementalconverter_list_pre;
@@ -1768,8 +1770,8 @@ struct {
struct HPMHookPoint *HP_clif_pAdopt_reply_post;
struct HPMHookPoint *HP_clif_pViewPlayerEquip_pre;
struct HPMHookPoint *HP_clif_pViewPlayerEquip_post;
- struct HPMHookPoint *HP_clif_pEquipTick_pre;
- struct HPMHookPoint *HP_clif_pEquipTick_post;
+ struct HPMHookPoint *HP_clif_p_cz_config_pre;
+ struct HPMHookPoint *HP_clif_p_cz_config_post;
struct HPMHookPoint *HP_clif_pquestStateAck_pre;
struct HPMHookPoint *HP_clif_pquestStateAck_post;
struct HPMHookPoint *HP_clif_pmercenary_action_pre;
@@ -1930,6 +1932,8 @@ struct {
struct HPMHookPoint *HP_clif_rodex_request_items_post;
struct HPMHookPoint *HP_clif_rodex_icon_pre;
struct HPMHookPoint *HP_clif_rodex_icon_post;
+ struct HPMHookPoint *HP_clif_skill_scale_pre;
+ struct HPMHookPoint *HP_clif_skill_scale_post;
struct HPMHookPoint *HP_cmdline_init_pre;
struct HPMHookPoint *HP_cmdline_init_post;
struct HPMHookPoint *HP_cmdline_final_pre;
@@ -3918,6 +3922,8 @@ struct {
struct HPMHookPoint *HP_npc_market_delfromsql_sub_post;
struct HPMHookPoint *HP_npc_db_checkid_pre;
struct HPMHookPoint *HP_npc_db_checkid_post;
+ struct HPMHookPoint *HP_npc_refresh_pre;
+ struct HPMHookPoint *HP_npc_refresh_post;
struct HPMHookPoint *HP_npc_secure_timeout_timer_pre;
struct HPMHookPoint *HP_npc_secure_timeout_timer_post;
struct HPMHookPoint *HP_nullpo_assert_report_pre;
@@ -5100,10 +5106,18 @@ struct {
struct HPMHookPoint *HP_skill_get_mhp_post;
struct HPMHookPoint *HP_skill_get_sp_pre;
struct HPMHookPoint *HP_skill_get_sp_post;
+ struct HPMHookPoint *HP_skill_get_hp_rate_pre;
+ struct HPMHookPoint *HP_skill_get_hp_rate_post;
+ struct HPMHookPoint *HP_skill_get_sp_rate_pre;
+ struct HPMHookPoint *HP_skill_get_sp_rate_post;
struct HPMHookPoint *HP_skill_get_state_pre;
struct HPMHookPoint *HP_skill_get_state_post;
struct HPMHookPoint *HP_skill_get_spiritball_pre;
struct HPMHookPoint *HP_skill_get_spiritball_post;
+ struct HPMHookPoint *HP_skill_get_itemid_pre;
+ struct HPMHookPoint *HP_skill_get_itemid_post;
+ struct HPMHookPoint *HP_skill_get_itemqty_pre;
+ struct HPMHookPoint *HP_skill_get_itemqty_post;
struct HPMHookPoint *HP_skill_get_zeny_pre;
struct HPMHookPoint *HP_skill_get_zeny_post;
struct HPMHookPoint *HP_skill_get_num_pre;
@@ -5160,8 +5174,6 @@ struct {
struct HPMHookPoint *HP_skill_get_name_post;
struct HPMHookPoint *HP_skill_get_desc_pre;
struct HPMHookPoint *HP_skill_get_desc_post;
- struct HPMHookPoint *HP_skill_chk_pre;
- struct HPMHookPoint *HP_skill_chk_post;
struct HPMHookPoint *HP_skill_get_casttype_pre;
struct HPMHookPoint *HP_skill_get_casttype_post;
struct HPMHookPoint *HP_skill_get_casttype2_pre;
@@ -5440,8 +5452,6 @@ struct {
struct HPMHookPoint *HP_skill_parse_row_spellbookdb_post;
struct HPMHookPoint *HP_skill_parse_row_magicmushroomdb_pre;
struct HPMHookPoint *HP_skill_parse_row_magicmushroomdb_post;
- struct HPMHookPoint *HP_skill_parse_row_reproducedb_pre;
- struct HPMHookPoint *HP_skill_parse_row_reproducedb_post;
struct HPMHookPoint *HP_skill_parse_row_improvisedb_pre;
struct HPMHookPoint *HP_skill_parse_row_improvisedb_post;
struct HPMHookPoint *HP_skill_parse_row_changematerialdb_pre;
@@ -7009,8 +7019,8 @@ struct {
int HP_clif_feel_hate_reset_post;
int HP_clif_partytickack_pre;
int HP_clif_partytickack_post;
- int HP_clif_equiptickack_pre;
- int HP_clif_equiptickack_post;
+ int HP_clif_zc_config_pre;
+ int HP_clif_zc_config_post;
int HP_clif_viewequip_ack_pre;
int HP_clif_viewequip_ack_post;
int HP_clif_equpcheckbox_pre;
@@ -7023,6 +7033,8 @@ struct {
int HP_clif_progressbar_post;
int HP_clif_progressbar_abort_pre;
int HP_clif_progressbar_abort_post;
+ int HP_clif_progressbar_unit_pre;
+ int HP_clif_progressbar_unit_post;
int HP_clif_showdigit_pre;
int HP_clif_showdigit_post;
int HP_clif_elementalconverter_list_pre;
@@ -7967,8 +7979,8 @@ struct {
int HP_clif_pAdopt_reply_post;
int HP_clif_pViewPlayerEquip_pre;
int HP_clif_pViewPlayerEquip_post;
- int HP_clif_pEquipTick_pre;
- int HP_clif_pEquipTick_post;
+ int HP_clif_p_cz_config_pre;
+ int HP_clif_p_cz_config_post;
int HP_clif_pquestStateAck_pre;
int HP_clif_pquestStateAck_post;
int HP_clif_pmercenary_action_pre;
@@ -8129,6 +8141,8 @@ struct {
int HP_clif_rodex_request_items_post;
int HP_clif_rodex_icon_pre;
int HP_clif_rodex_icon_post;
+ int HP_clif_skill_scale_pre;
+ int HP_clif_skill_scale_post;
int HP_cmdline_init_pre;
int HP_cmdline_init_post;
int HP_cmdline_final_pre;
@@ -10117,6 +10131,8 @@ struct {
int HP_npc_market_delfromsql_sub_post;
int HP_npc_db_checkid_pre;
int HP_npc_db_checkid_post;
+ int HP_npc_refresh_pre;
+ int HP_npc_refresh_post;
int HP_npc_secure_timeout_timer_pre;
int HP_npc_secure_timeout_timer_post;
int HP_nullpo_assert_report_pre;
@@ -11299,10 +11315,18 @@ struct {
int HP_skill_get_mhp_post;
int HP_skill_get_sp_pre;
int HP_skill_get_sp_post;
+ int HP_skill_get_hp_rate_pre;
+ int HP_skill_get_hp_rate_post;
+ int HP_skill_get_sp_rate_pre;
+ int HP_skill_get_sp_rate_post;
int HP_skill_get_state_pre;
int HP_skill_get_state_post;
int HP_skill_get_spiritball_pre;
int HP_skill_get_spiritball_post;
+ int HP_skill_get_itemid_pre;
+ int HP_skill_get_itemid_post;
+ int HP_skill_get_itemqty_pre;
+ int HP_skill_get_itemqty_post;
int HP_skill_get_zeny_pre;
int HP_skill_get_zeny_post;
int HP_skill_get_num_pre;
@@ -11359,8 +11383,6 @@ struct {
int HP_skill_get_name_post;
int HP_skill_get_desc_pre;
int HP_skill_get_desc_post;
- int HP_skill_chk_pre;
- int HP_skill_chk_post;
int HP_skill_get_casttype_pre;
int HP_skill_get_casttype_post;
int HP_skill_get_casttype2_pre;
@@ -11639,8 +11661,6 @@ struct {
int HP_skill_parse_row_spellbookdb_post;
int HP_skill_parse_row_magicmushroomdb_pre;
int HP_skill_parse_row_magicmushroomdb_post;
- int HP_skill_parse_row_reproducedb_pre;
- int HP_skill_parse_row_reproducedb_post;
int HP_skill_parse_row_improvisedb_pre;
int HP_skill_parse_row_improvisedb_post;
int HP_skill_parse_row_changematerialdb_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index 34b79bff8..6a27f3d94 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -427,13 +427,14 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->mission_info, HP_clif_mission_info) },
{ HP_POP(clif->feel_hate_reset, HP_clif_feel_hate_reset) },
{ HP_POP(clif->partytickack, HP_clif_partytickack) },
- { HP_POP(clif->equiptickack, HP_clif_equiptickack) },
+ { HP_POP(clif->zc_config, HP_clif_zc_config) },
{ HP_POP(clif->viewequip_ack, HP_clif_viewequip_ack) },
{ HP_POP(clif->equpcheckbox, HP_clif_equpcheckbox) },
{ HP_POP(clif->displayexp, HP_clif_displayexp) },
{ HP_POP(clif->font, HP_clif_font) },
{ HP_POP(clif->progressbar, HP_clif_progressbar) },
{ HP_POP(clif->progressbar_abort, HP_clif_progressbar_abort) },
+ { HP_POP(clif->progressbar_unit, HP_clif_progressbar_unit) },
{ HP_POP(clif->showdigit, HP_clif_showdigit) },
{ HP_POP(clif->elementalconverter_list, HP_clif_elementalconverter_list) },
{ HP_POP(clif->spellbook_list, HP_clif_spellbook_list) },
@@ -906,7 +907,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->pAdopt_request, HP_clif_pAdopt_request) },
{ HP_POP(clif->pAdopt_reply, HP_clif_pAdopt_reply) },
{ HP_POP(clif->pViewPlayerEquip, HP_clif_pViewPlayerEquip) },
- { HP_POP(clif->pEquipTick, HP_clif_pEquipTick) },
+ { HP_POP(clif->p_cz_config, HP_clif_p_cz_config) },
{ HP_POP(clif->pquestStateAck, HP_clif_pquestStateAck) },
{ HP_POP(clif->pmercenary_action, HP_clif_pmercenary_action) },
{ HP_POP(clif->pBattleChat, HP_clif_pBattleChat) },
@@ -987,6 +988,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->pRodexRequestItems, HP_clif_pRodexRequestItems) },
{ HP_POP(clif->rodex_request_items, HP_clif_rodex_request_items) },
{ HP_POP(clif->rodex_icon, HP_clif_rodex_icon) },
+ { HP_POP(clif->skill_scale, HP_clif_skill_scale) },
/* cmdline_interface */
{ HP_POP(cmdline->init, HP_cmdline_init) },
{ HP_POP(cmdline->final, HP_cmdline_final) },
@@ -2009,6 +2011,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(npc->market_delfromsql, HP_npc_market_delfromsql) },
{ HP_POP(npc->market_delfromsql_sub, HP_npc_market_delfromsql_sub) },
{ HP_POP(npc->db_checkid, HP_npc_db_checkid) },
+ { HP_POP(npc->refresh, HP_npc_refresh) },
{ HP_POP(npc->secure_timeout_timer, HP_npc_secure_timeout_timer) },
/* nullpo_interface */
{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
@@ -2614,8 +2617,12 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->get_hp, HP_skill_get_hp) },
{ HP_POP(skill->get_mhp, HP_skill_get_mhp) },
{ HP_POP(skill->get_sp, HP_skill_get_sp) },
+ { HP_POP(skill->get_hp_rate, HP_skill_get_hp_rate) },
+ { HP_POP(skill->get_sp_rate, HP_skill_get_sp_rate) },
{ HP_POP(skill->get_state, HP_skill_get_state) },
{ HP_POP(skill->get_spiritball, HP_skill_get_spiritball) },
+ { HP_POP(skill->get_itemid, HP_skill_get_itemid) },
+ { HP_POP(skill->get_itemqty, HP_skill_get_itemqty) },
{ HP_POP(skill->get_zeny, HP_skill_get_zeny) },
{ HP_POP(skill->get_num, HP_skill_get_num) },
{ HP_POP(skill->get_cast, HP_skill_get_cast) },
@@ -2644,7 +2651,6 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->tree_get_max, HP_skill_tree_get_max) },
{ HP_POP(skill->get_name, HP_skill_get_name) },
{ HP_POP(skill->get_desc, HP_skill_get_desc) },
- { HP_POP(skill->chk, HP_skill_chk) },
{ HP_POP(skill->get_casttype, HP_skill_get_casttype) },
{ HP_POP(skill->get_casttype2, HP_skill_get_casttype2) },
{ HP_POP(skill->is_combo, HP_skill_is_combo) },
@@ -2784,7 +2790,6 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->parse_row_abradb, HP_skill_parse_row_abradb) },
{ HP_POP(skill->parse_row_spellbookdb, HP_skill_parse_row_spellbookdb) },
{ HP_POP(skill->parse_row_magicmushroomdb, HP_skill_parse_row_magicmushroomdb) },
- { HP_POP(skill->parse_row_reproducedb, HP_skill_parse_row_reproducedb) },
{ HP_POP(skill->parse_row_improvisedb, HP_skill_parse_row_improvisedb) },
{ HP_POP(skill->parse_row_changematerialdb, HP_skill_parse_row_changematerialdb) },
{ HP_POP(skill->usave_add, HP_skill_usave_add) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index d0d062f4e..5b0ae00a7 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -10524,14 +10524,14 @@ void HP_clif_partytickack(struct map_session_data *sd, bool flag) {
}
return;
}
-void HP_clif_equiptickack(struct map_session_data *sd, int flag) {
+void HP_clif_zc_config(struct map_session_data *sd, int type, int flag) {
int hIndex = 0;
- if (HPMHooks.count.HP_clif_equiptickack_pre > 0) {
- void (*preHookFunc) (struct map_session_data **sd, int *flag);
+ if (HPMHooks.count.HP_clif_zc_config_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, int *type, int *flag);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_equiptickack_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_clif_equiptickack_pre[hIndex].func;
- preHookFunc(&sd, &flag);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_zc_config_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_zc_config_pre[hIndex].func;
+ preHookFunc(&sd, &type, &flag);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -10539,13 +10539,13 @@ void HP_clif_equiptickack(struct map_session_data *sd, int flag) {
}
}
{
- HPMHooks.source.clif.equiptickack(sd, flag);
+ HPMHooks.source.clif.zc_config(sd, type, flag);
}
- if (HPMHooks.count.HP_clif_equiptickack_post > 0) {
- void (*postHookFunc) (struct map_session_data *sd, int flag);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_equiptickack_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_clif_equiptickack_post[hIndex].func;
- postHookFunc(sd, flag);
+ if (HPMHooks.count.HP_clif_zc_config_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, int type, int flag);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_zc_config_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_zc_config_post[hIndex].func;
+ postHookFunc(sd, type, flag);
}
}
return;
@@ -10706,6 +10706,32 @@ void HP_clif_progressbar_abort(struct map_session_data *sd) {
}
return;
}
+void HP_clif_progressbar_unit(struct block_list *bl, uint32 color, uint32 time) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_progressbar_unit_pre > 0) {
+ void (*preHookFunc) (struct block_list **bl, uint32 *color, uint32 *time);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_progressbar_unit_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_progressbar_unit_pre[hIndex].func;
+ preHookFunc(&bl, &color, &time);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.progressbar_unit(bl, color, time);
+ }
+ if (HPMHooks.count.HP_clif_progressbar_unit_post > 0) {
+ void (*postHookFunc) (struct block_list *bl, uint32 color, uint32 time);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_progressbar_unit_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_progressbar_unit_post[hIndex].func;
+ postHookFunc(bl, color, time);
+ }
+ }
+ return;
+}
void HP_clif_showdigit(struct map_session_data *sd, unsigned char type, int value) {
int hIndex = 0;
if (HPMHooks.count.HP_clif_showdigit_pre > 0) {
@@ -23005,13 +23031,13 @@ void HP_clif_pViewPlayerEquip(int fd, struct map_session_data *sd) {
}
return;
}
-void HP_clif_pEquipTick(int fd, struct map_session_data *sd) {
+void HP_clif_p_cz_config(int fd, struct map_session_data *sd) {
int hIndex = 0;
- if (HPMHooks.count.HP_clif_pEquipTick_pre > 0) {
+ if (HPMHooks.count.HP_clif_p_cz_config_pre > 0) {
void (*preHookFunc) (int *fd, struct map_session_data **sd);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pEquipTick_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_clif_pEquipTick_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_p_cz_config_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_p_cz_config_pre[hIndex].func;
preHookFunc(&fd, &sd);
}
if (*HPMforce_return) {
@@ -23020,12 +23046,12 @@ void HP_clif_pEquipTick(int fd, struct map_session_data *sd) {
}
}
{
- HPMHooks.source.clif.pEquipTick(fd, sd);
+ HPMHooks.source.clif.p_cz_config(fd, sd);
}
- if (HPMHooks.count.HP_clif_pEquipTick_post > 0) {
+ if (HPMHooks.count.HP_clif_p_cz_config_post > 0) {
void (*postHookFunc) (int fd, struct map_session_data *sd);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pEquipTick_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_clif_pEquipTick_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_p_cz_config_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_p_cz_config_post[hIndex].func;
postHookFunc(fd, sd);
}
}
@@ -25113,6 +25139,32 @@ void HP_clif_rodex_icon(int fd, bool show) {
}
return;
}
+void HP_clif_skill_scale(struct block_list *bl, int src_id, int x, int y, uint16 skill_id, uint16 skill_lv, int casttime) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_skill_scale_pre > 0) {
+ void (*preHookFunc) (struct block_list **bl, int *src_id, int *x, int *y, uint16 *skill_id, uint16 *skill_lv, int *casttime);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_skill_scale_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_skill_scale_pre[hIndex].func;
+ preHookFunc(&bl, &src_id, &x, &y, &skill_id, &skill_lv, &casttime);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.skill_scale(bl, src_id, x, y, skill_id, skill_lv, casttime);
+ }
+ if (HPMHooks.count.HP_clif_skill_scale_post > 0) {
+ void (*postHookFunc) (struct block_list *bl, int src_id, int x, int y, uint16 skill_id, uint16 skill_lv, int casttime);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_skill_scale_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_skill_scale_post[hIndex].func;
+ postHookFunc(bl, src_id, x, y, skill_id, skill_lv, casttime);
+ }
+ }
+ return;
+}
/* cmdline_interface */
void HP_cmdline_init(void) {
int hIndex = 0;
@@ -41230,15 +41282,15 @@ void HP_map_clearflooritem(struct block_list *bl) {
}
return;
}
-int HP_map_addflooritem(const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags) {
+int HP_map_addflooritem(const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, bool showdropeffect) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_map_addflooritem_pre > 0) {
- int (*preHookFunc) (const struct block_list **bl, struct item **item_data, int *amount, int16 *m, int16 *x, int16 *y, int *first_charid, int *second_charid, int *third_charid, int *flags);
+ int (*preHookFunc) (const struct block_list **bl, struct item **item_data, int *amount, int16 *m, int16 *x, int16 *y, int *first_charid, int *second_charid, int *third_charid, int *flags, bool *showdropeffect);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_map_addflooritem_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_map_addflooritem_pre[hIndex].func;
- retVal___ = preHookFunc(&bl, &item_data, &amount, &m, &x, &y, &first_charid, &second_charid, &third_charid, &flags);
+ retVal___ = preHookFunc(&bl, &item_data, &amount, &m, &x, &y, &first_charid, &second_charid, &third_charid, &flags, &showdropeffect);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -41246,13 +41298,13 @@ int HP_map_addflooritem(const struct block_list *bl, struct item *item_data, int
}
}
{
- retVal___ = HPMHooks.source.map.addflooritem(bl, item_data, amount, m, x, y, first_charid, second_charid, third_charid, flags);
+ retVal___ = HPMHooks.source.map.addflooritem(bl, item_data, amount, m, x, y, first_charid, second_charid, third_charid, flags, showdropeffect);
}
if (HPMHooks.count.HP_map_addflooritem_post > 0) {
- int (*postHookFunc) (int retVal___, const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags);
+ int (*postHookFunc) (int retVal___, const struct block_list *bl, struct item *item_data, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, bool showdropeffect);
for (hIndex = 0; hIndex < HPMHooks.count.HP_map_addflooritem_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_map_addflooritem_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, bl, item_data, amount, m, x, y, first_charid, second_charid, third_charid, flags);
+ retVal___ = postHookFunc(retVal___, bl, item_data, amount, m, x, y, first_charid, second_charid, third_charid, flags, showdropeffect);
}
}
return retVal___;
@@ -52089,6 +52141,32 @@ bool HP_npc_db_checkid(const int id) {
}
return retVal___;
}
+void HP_npc_refresh(struct npc_data *nd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_npc_refresh_pre > 0) {
+ void (*preHookFunc) (struct npc_data **nd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_refresh_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_refresh_pre[hIndex].func;
+ preHookFunc(&nd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.npc.refresh(nd);
+ }
+ if (HPMHooks.count.HP_npc_refresh_post > 0) {
+ void (*postHookFunc) (struct npc_data *nd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_refresh_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_refresh_post[hIndex].func;
+ postHookFunc(nd);
+ }
+ }
+ return;
+}
int HP_npc_secure_timeout_timer(int tid, int64 tick, int id, intptr_t data) {
int hIndex = 0;
int retVal___ = 0;
@@ -67767,11 +67845,11 @@ void HP_skill_read_db(bool minimal) {
}
return;
}
-int HP_skill_get_index(uint16 skill_id) {
+int HP_skill_get_index(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_index_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_index_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_index_pre[hIndex].func;
@@ -67786,7 +67864,7 @@ int HP_skill_get_index(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_index(skill_id);
}
if (HPMHooks.count.HP_skill_get_index_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_index_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_index_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67794,11 +67872,11 @@ int HP_skill_get_index(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_type(uint16 skill_id) {
+int HP_skill_get_type(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_type_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_type_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_type_pre[hIndex].func;
@@ -67813,7 +67891,7 @@ int HP_skill_get_type(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_type(skill_id);
}
if (HPMHooks.count.HP_skill_get_type_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_type_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_type_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67821,11 +67899,11 @@ int HP_skill_get_type(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_hit(uint16 skill_id) {
+int HP_skill_get_hit(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_hit_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hit_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_hit_pre[hIndex].func;
@@ -67840,7 +67918,7 @@ int HP_skill_get_hit(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_hit(skill_id);
}
if (HPMHooks.count.HP_skill_get_hit_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hit_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_hit_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67848,11 +67926,11 @@ int HP_skill_get_hit(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_inf(uint16 skill_id) {
+int HP_skill_get_inf(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_inf_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_inf_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_inf_pre[hIndex].func;
@@ -67867,7 +67945,7 @@ int HP_skill_get_inf(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_inf(skill_id);
}
if (HPMHooks.count.HP_skill_get_inf_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_inf_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_inf_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67875,11 +67953,11 @@ int HP_skill_get_inf(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_ele(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_ele(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_ele_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ele_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_ele_pre[hIndex].func;
@@ -67894,7 +67972,7 @@ int HP_skill_get_ele(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_ele(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_ele_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ele_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_ele_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -67902,11 +67980,11 @@ int HP_skill_get_ele(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_nk(uint16 skill_id) {
+int HP_skill_get_nk(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_nk_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_nk_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_nk_pre[hIndex].func;
@@ -67921,7 +67999,7 @@ int HP_skill_get_nk(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_nk(skill_id);
}
if (HPMHooks.count.HP_skill_get_nk_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_nk_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_nk_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67929,11 +68007,11 @@ int HP_skill_get_nk(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_max(uint16 skill_id) {
+int HP_skill_get_max(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_max_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_max_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_max_pre[hIndex].func;
@@ -67948,7 +68026,7 @@ int HP_skill_get_max(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_max(skill_id);
}
if (HPMHooks.count.HP_skill_get_max_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_max_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_max_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -67956,11 +68034,11 @@ int HP_skill_get_max(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_range(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_range(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_range_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_range_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_range_pre[hIndex].func;
@@ -67975,7 +68053,7 @@ int HP_skill_get_range(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_range(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_range_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_range_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_range_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -67983,11 +68061,11 @@ int HP_skill_get_range(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_range2(struct block_list *bl, uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_range2(struct block_list *bl, int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_range2_pre > 0) {
- int (*preHookFunc) (struct block_list **bl, uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (struct block_list **bl, int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_range2_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_range2_pre[hIndex].func;
@@ -68002,7 +68080,7 @@ int HP_skill_get_range2(struct block_list *bl, uint16 skill_id, uint16 skill_lv)
retVal___ = HPMHooks.source.skill.get_range2(bl, skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_range2_post > 0) {
- int (*postHookFunc) (int retVal___, struct block_list *bl, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, struct block_list *bl, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_range2_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_range2_post[hIndex].func;
retVal___ = postHookFunc(retVal___, bl, skill_id, skill_lv);
@@ -68010,11 +68088,11 @@ int HP_skill_get_range2(struct block_list *bl, uint16 skill_id, uint16 skill_lv)
}
return retVal___;
}
-int HP_skill_get_splash(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_splash(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_splash_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_splash_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_splash_pre[hIndex].func;
@@ -68029,7 +68107,7 @@ int HP_skill_get_splash(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_splash(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_splash_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_splash_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_splash_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68037,11 +68115,11 @@ int HP_skill_get_splash(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_hp(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_hp(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_hp_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hp_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_hp_pre[hIndex].func;
@@ -68056,7 +68134,7 @@ int HP_skill_get_hp(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_hp(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_hp_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hp_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_hp_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68064,11 +68142,11 @@ int HP_skill_get_hp(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_mhp(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_mhp(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_mhp_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_mhp_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_mhp_pre[hIndex].func;
@@ -68083,7 +68161,7 @@ int HP_skill_get_mhp(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_mhp(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_mhp_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_mhp_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_mhp_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68091,11 +68169,11 @@ int HP_skill_get_mhp(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_sp(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_sp(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_sp_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_sp_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_sp_pre[hIndex].func;
@@ -68110,7 +68188,7 @@ int HP_skill_get_sp(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_sp(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_sp_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_sp_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_sp_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68118,11 +68196,65 @@ int HP_skill_get_sp(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_state(uint16 skill_id) {
+int HP_skill_get_hp_rate(int skill_id, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_hp_rate_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hp_rate_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_hp_rate_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_hp_rate(skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_hp_rate_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hp_rate_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_hp_rate_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
+int HP_skill_get_sp_rate(int skill_id, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_sp_rate_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_sp_rate_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_sp_rate_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_sp_rate(skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_sp_rate_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_sp_rate_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_sp_rate_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
+int HP_skill_get_state(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_state_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_state_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_state_pre[hIndex].func;
@@ -68137,7 +68269,7 @@ int HP_skill_get_state(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_state(skill_id);
}
if (HPMHooks.count.HP_skill_get_state_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_state_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_state_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68145,11 +68277,11 @@ int HP_skill_get_state(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_spiritball(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_spiritball(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_spiritball_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_spiritball_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_spiritball_pre[hIndex].func;
@@ -68164,7 +68296,7 @@ int HP_skill_get_spiritball(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_spiritball(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_spiritball_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_spiritball_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_spiritball_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68172,11 +68304,65 @@ int HP_skill_get_spiritball(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_zeny(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_itemid(int skill_id, int item_idx) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_itemid_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *item_idx);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemid_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_itemid_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &item_idx);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_itemid(skill_id, item_idx);
+ }
+ if (HPMHooks.count.HP_skill_get_itemid_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int item_idx);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemid_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_itemid_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, item_idx);
+ }
+ }
+ return retVal___;
+}
+int HP_skill_get_itemqty(int skill_id, int item_idx) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_itemqty_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *item_idx);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemqty_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_itemqty_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &item_idx);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_itemqty(skill_id, item_idx);
+ }
+ if (HPMHooks.count.HP_skill_get_itemqty_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int item_idx);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemqty_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_itemqty_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, item_idx);
+ }
+ }
+ return retVal___;
+}
+int HP_skill_get_zeny(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_zeny_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_zeny_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_zeny_pre[hIndex].func;
@@ -68191,7 +68377,7 @@ int HP_skill_get_zeny(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_zeny(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_zeny_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_zeny_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_zeny_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68199,11 +68385,11 @@ int HP_skill_get_zeny(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_num(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_num(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_num_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_num_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_num_pre[hIndex].func;
@@ -68218,7 +68404,7 @@ int HP_skill_get_num(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_num(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_num_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_num_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_num_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68226,11 +68412,11 @@ int HP_skill_get_num(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_cast(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_cast(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_cast_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_cast_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_cast_pre[hIndex].func;
@@ -68245,7 +68431,7 @@ int HP_skill_get_cast(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_cast(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_cast_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_cast_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_cast_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68253,11 +68439,11 @@ int HP_skill_get_cast(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_delay(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_delay(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_delay_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_delay_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_delay_pre[hIndex].func;
@@ -68272,7 +68458,7 @@ int HP_skill_get_delay(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_delay(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_delay_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_delay_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_delay_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68280,11 +68466,11 @@ int HP_skill_get_delay(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_walkdelay(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_walkdelay(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_walkdelay_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_walkdelay_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_walkdelay_pre[hIndex].func;
@@ -68299,7 +68485,7 @@ int HP_skill_get_walkdelay(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_walkdelay(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_walkdelay_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_walkdelay_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_walkdelay_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68307,11 +68493,11 @@ int HP_skill_get_walkdelay(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_time(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_time(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_time_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_time_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_time_pre[hIndex].func;
@@ -68326,7 +68512,7 @@ int HP_skill_get_time(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_time(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_time_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_time_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_time_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68334,11 +68520,11 @@ int HP_skill_get_time(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_time2(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_time2(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_time2_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_time2_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_time2_pre[hIndex].func;
@@ -68353,7 +68539,7 @@ int HP_skill_get_time2(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_time2(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_time2_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_time2_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_time2_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68361,11 +68547,11 @@ int HP_skill_get_time2(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_castnodex(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_castnodex(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_castnodex_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castnodex_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_castnodex_pre[hIndex].func;
@@ -68380,7 +68566,7 @@ int HP_skill_get_castnodex(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_castnodex(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_castnodex_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castnodex_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_castnodex_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68388,11 +68574,11 @@ int HP_skill_get_castnodex(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_delaynodex(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_delaynodex(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_delaynodex_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_delaynodex_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_delaynodex_pre[hIndex].func;
@@ -68407,7 +68593,7 @@ int HP_skill_get_delaynodex(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_delaynodex(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_delaynodex_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_delaynodex_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_delaynodex_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68415,11 +68601,11 @@ int HP_skill_get_delaynodex(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_castdef(uint16 skill_id) {
+int HP_skill_get_castdef(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_castdef_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castdef_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_castdef_pre[hIndex].func;
@@ -68434,7 +68620,7 @@ int HP_skill_get_castdef(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_castdef(skill_id);
}
if (HPMHooks.count.HP_skill_get_castdef_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castdef_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_castdef_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68442,11 +68628,11 @@ int HP_skill_get_castdef(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_weapontype(uint16 skill_id) {
+int HP_skill_get_weapontype(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_weapontype_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_weapontype_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_weapontype_pre[hIndex].func;
@@ -68461,7 +68647,7 @@ int HP_skill_get_weapontype(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_weapontype(skill_id);
}
if (HPMHooks.count.HP_skill_get_weapontype_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_weapontype_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_weapontype_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68469,11 +68655,11 @@ int HP_skill_get_weapontype(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_ammotype(uint16 skill_id) {
+int HP_skill_get_ammotype(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_ammotype_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ammotype_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_ammotype_pre[hIndex].func;
@@ -68488,7 +68674,7 @@ int HP_skill_get_ammotype(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_ammotype(skill_id);
}
if (HPMHooks.count.HP_skill_get_ammotype_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ammotype_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_ammotype_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68496,11 +68682,11 @@ int HP_skill_get_ammotype(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_ammo_qty(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_ammo_qty(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_ammo_qty_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ammo_qty_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_ammo_qty_pre[hIndex].func;
@@ -68515,7 +68701,7 @@ int HP_skill_get_ammo_qty(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_ammo_qty(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_ammo_qty_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_ammo_qty_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_ammo_qty_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68523,11 +68709,11 @@ int HP_skill_get_ammo_qty(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_unit_id(uint16 skill_id, int flag) {
+int HP_skill_get_unit_id(int skill_id, int flag) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_id_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, int *flag);
+ int (*preHookFunc) (int *skill_id, int *flag);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_id_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_id_pre[hIndex].func;
@@ -68542,7 +68728,7 @@ int HP_skill_get_unit_id(uint16 skill_id, int flag) {
retVal___ = HPMHooks.source.skill.get_unit_id(skill_id, flag);
}
if (HPMHooks.count.HP_skill_get_unit_id_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, int flag);
+ int (*postHookFunc) (int retVal___, int skill_id, int flag);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_id_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_id_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, flag);
@@ -68550,11 +68736,11 @@ int HP_skill_get_unit_id(uint16 skill_id, int flag) {
}
return retVal___;
}
-int HP_skill_get_inf2(uint16 skill_id) {
+int HP_skill_get_inf2(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_inf2_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_inf2_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_inf2_pre[hIndex].func;
@@ -68569,7 +68755,7 @@ int HP_skill_get_inf2(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_inf2(skill_id);
}
if (HPMHooks.count.HP_skill_get_inf2_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_inf2_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_inf2_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68577,11 +68763,11 @@ int HP_skill_get_inf2(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_castcancel(uint16 skill_id) {
+int HP_skill_get_castcancel(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_castcancel_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castcancel_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_castcancel_pre[hIndex].func;
@@ -68596,7 +68782,7 @@ int HP_skill_get_castcancel(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_castcancel(skill_id);
}
if (HPMHooks.count.HP_skill_get_castcancel_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castcancel_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_castcancel_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68604,11 +68790,11 @@ int HP_skill_get_castcancel(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_maxcount(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_maxcount(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_maxcount_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_maxcount_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_maxcount_pre[hIndex].func;
@@ -68623,7 +68809,7 @@ int HP_skill_get_maxcount(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_maxcount(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_maxcount_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_maxcount_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_maxcount_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68631,11 +68817,11 @@ int HP_skill_get_maxcount(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_blewcount(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_blewcount(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_blewcount_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_blewcount_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_blewcount_pre[hIndex].func;
@@ -68650,7 +68836,7 @@ int HP_skill_get_blewcount(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_blewcount(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_blewcount_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_blewcount_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_blewcount_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68658,11 +68844,11 @@ int HP_skill_get_blewcount(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_unit_flag(uint16 skill_id) {
+int HP_skill_get_unit_flag(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_flag_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_flag_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_flag_pre[hIndex].func;
@@ -68677,7 +68863,7 @@ int HP_skill_get_unit_flag(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_unit_flag(skill_id);
}
if (HPMHooks.count.HP_skill_get_unit_flag_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_flag_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_flag_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68685,11 +68871,11 @@ int HP_skill_get_unit_flag(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_unit_target(uint16 skill_id) {
+int HP_skill_get_unit_target(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_target_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_target_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_target_pre[hIndex].func;
@@ -68704,7 +68890,7 @@ int HP_skill_get_unit_target(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_unit_target(skill_id);
}
if (HPMHooks.count.HP_skill_get_unit_target_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_target_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_target_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68712,11 +68898,11 @@ int HP_skill_get_unit_target(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_unit_interval(uint16 skill_id) {
+int HP_skill_get_unit_interval(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_interval_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_interval_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_interval_pre[hIndex].func;
@@ -68731,7 +68917,7 @@ int HP_skill_get_unit_interval(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_unit_interval(skill_id);
}
if (HPMHooks.count.HP_skill_get_unit_interval_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_interval_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_interval_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68739,11 +68925,11 @@ int HP_skill_get_unit_interval(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_unit_bl_target(uint16 skill_id) {
+int HP_skill_get_unit_bl_target(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_bl_target_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_bl_target_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_bl_target_pre[hIndex].func;
@@ -68758,7 +68944,7 @@ int HP_skill_get_unit_bl_target(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_unit_bl_target(skill_id);
}
if (HPMHooks.count.HP_skill_get_unit_bl_target_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_bl_target_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_bl_target_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68766,11 +68952,11 @@ int HP_skill_get_unit_bl_target(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_unit_layout_type(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_unit_layout_type(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_layout_type_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_layout_type_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_layout_type_pre[hIndex].func;
@@ -68785,7 +68971,7 @@ int HP_skill_get_unit_layout_type(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_unit_layout_type(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_unit_layout_type_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_layout_type_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_layout_type_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68793,11 +68979,11 @@ int HP_skill_get_unit_layout_type(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_unit_range(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_unit_range(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_range_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_range_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_range_pre[hIndex].func;
@@ -68812,7 +68998,7 @@ int HP_skill_get_unit_range(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_unit_range(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_unit_range_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_range_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_range_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68820,11 +69006,11 @@ int HP_skill_get_unit_range(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_get_cooldown(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_cooldown(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_cooldown_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_cooldown_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_cooldown_pre[hIndex].func;
@@ -68839,7 +69025,7 @@ int HP_skill_get_cooldown(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_cooldown(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_cooldown_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_cooldown_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_cooldown_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -68847,11 +69033,11 @@ int HP_skill_get_cooldown(uint16 skill_id, uint16 skill_lv) {
}
return retVal___;
}
-int HP_skill_tree_get_max(uint16 skill_id, int class) {
+int HP_skill_tree_get_max(int skill_id, int class) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_tree_get_max_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, int *class);
+ int (*preHookFunc) (int *skill_id, int *class);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_tree_get_max_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_tree_get_max_pre[hIndex].func;
@@ -68866,7 +69052,7 @@ int HP_skill_tree_get_max(uint16 skill_id, int class) {
retVal___ = HPMHooks.source.skill.tree_get_max(skill_id, class);
}
if (HPMHooks.count.HP_skill_tree_get_max_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, int class);
+ int (*postHookFunc) (int retVal___, int skill_id, int class);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_tree_get_max_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_tree_get_max_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, class);
@@ -68874,11 +69060,11 @@ int HP_skill_tree_get_max(uint16 skill_id, int class) {
}
return retVal___;
}
-const char* HP_skill_get_name(uint16 skill_id) {
+const char* HP_skill_get_name(int skill_id) {
int hIndex = 0;
const char* retVal___ = NULL;
if (HPMHooks.count.HP_skill_get_name_pre > 0) {
- const char* (*preHookFunc) (uint16 *skill_id);
+ const char* (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_name_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_name_pre[hIndex].func;
@@ -68893,7 +69079,7 @@ const char* HP_skill_get_name(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_name(skill_id);
}
if (HPMHooks.count.HP_skill_get_name_post > 0) {
- const char* (*postHookFunc) (const char* retVal___, uint16 skill_id);
+ const char* (*postHookFunc) (const char* retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_name_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_name_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68901,11 +69087,11 @@ const char* HP_skill_get_name(uint16 skill_id) {
}
return retVal___;
}
-const char* HP_skill_get_desc(uint16 skill_id) {
+const char* HP_skill_get_desc(int skill_id) {
int hIndex = 0;
const char* retVal___ = NULL;
if (HPMHooks.count.HP_skill_get_desc_pre > 0) {
- const char* (*preHookFunc) (uint16 *skill_id);
+ const char* (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_desc_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_desc_pre[hIndex].func;
@@ -68920,7 +69106,7 @@ const char* HP_skill_get_desc(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_desc(skill_id);
}
if (HPMHooks.count.HP_skill_get_desc_post > 0) {
- const char* (*postHookFunc) (const char* retVal___, uint16 skill_id);
+ const char* (*postHookFunc) (const char* retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_desc_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_desc_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68928,37 +69114,11 @@ const char* HP_skill_get_desc(uint16 skill_id) {
}
return retVal___;
}
-void HP_skill_chk(uint16 *skill_id) {
- int hIndex = 0;
- if (HPMHooks.count.HP_skill_chk_pre > 0) {
- void (*preHookFunc) (uint16 **skill_id);
- *HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_chk_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_chk_pre[hIndex].func;
- preHookFunc(&skill_id);
- }
- if (*HPMforce_return) {
- *HPMforce_return = false;
- return;
- }
- }
- {
- HPMHooks.source.skill.chk(skill_id);
- }
- if (HPMHooks.count.HP_skill_chk_post > 0) {
- void (*postHookFunc) (uint16 *skill_id);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_chk_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_chk_post[hIndex].func;
- postHookFunc(skill_id);
- }
- }
- return;
-}
-int HP_skill_get_casttype(uint16 skill_id) {
+int HP_skill_get_casttype(int skill_id) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_casttype_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id);
+ int (*preHookFunc) (int *skill_id);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_casttype_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_casttype_pre[hIndex].func;
@@ -68973,7 +69133,7 @@ int HP_skill_get_casttype(uint16 skill_id) {
retVal___ = HPMHooks.source.skill.get_casttype(skill_id);
}
if (HPMHooks.count.HP_skill_get_casttype_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_casttype_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_casttype_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id);
@@ -68981,11 +69141,11 @@ int HP_skill_get_casttype(uint16 skill_id) {
}
return retVal___;
}
-int HP_skill_get_casttype2(uint16 index) {
+int HP_skill_get_casttype2(int index) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_casttype2_pre > 0) {
- int (*preHookFunc) (uint16 *index);
+ int (*preHookFunc) (int *index);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_casttype2_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_casttype2_pre[hIndex].func;
@@ -69000,7 +69160,7 @@ int HP_skill_get_casttype2(uint16 index) {
retVal___ = HPMHooks.source.skill.get_casttype2(index);
}
if (HPMHooks.count.HP_skill_get_casttype2_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 index);
+ int (*postHookFunc) (int retVal___, int index);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_casttype2_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_casttype2_post[hIndex].func;
retVal___ = postHookFunc(retVal___, index);
@@ -71607,11 +71767,11 @@ void HP_skill_brandishspear_dir(struct square *tc, uint8 dir, int are) {
}
return;
}
-int HP_skill_get_fixed_cast(uint16 skill_id, uint16 skill_lv) {
+int HP_skill_get_fixed_cast(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_fixed_cast_pre > 0) {
- int (*preHookFunc) (uint16 *skill_id, uint16 *skill_lv);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_fixed_cast_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_fixed_cast_pre[hIndex].func;
@@ -71626,7 +71786,7 @@ int HP_skill_get_fixed_cast(uint16 skill_id, uint16 skill_lv) {
retVal___ = HPMHooks.source.skill.get_fixed_cast(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_fixed_cast_post > 0) {
- int (*postHookFunc) (int retVal___, uint16 skill_id, uint16 skill_lv);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_fixed_cast_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_fixed_cast_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
@@ -72817,33 +72977,6 @@ bool HP_skill_parse_row_magicmushroomdb(char *split[], int column, int current)
}
return retVal___;
}
-bool HP_skill_parse_row_reproducedb(char *split[], int column, int current) {
- int hIndex = 0;
- bool retVal___ = false;
- if (HPMHooks.count.HP_skill_parse_row_reproducedb_pre > 0) {
- bool (*preHookFunc) (char **split[], int *column, int *current);
- *HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_parse_row_reproducedb_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_parse_row_reproducedb_pre[hIndex].func;
- retVal___ = preHookFunc(&split, &column, &current);
- }
- if (*HPMforce_return) {
- *HPMforce_return = false;
- return retVal___;
- }
- }
- {
- retVal___ = HPMHooks.source.skill.parse_row_reproducedb(split, column, current);
- }
- if (HPMHooks.count.HP_skill_parse_row_reproducedb_post > 0) {
- bool (*postHookFunc) (bool retVal___, char *split[], int column, int current);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_parse_row_reproducedb_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_parse_row_reproducedb_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, split, column, current);
- }
- }
- return retVal___;
-}
bool HP_skill_parse_row_improvisedb(char *split[], int columns, int current) {
int hIndex = 0;
bool retVal___ = false;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.sources.inc b/src/plugins/HPMHooking/HPMHooking_map.sources.inc
index ada63e53d..23f762151 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.sources.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.sources.inc
@@ -2,7 +2,7 @@
* This file is part of Hercules.
* http://herc.ws - http://github.com/HerculesWS/Hercules
*
- * Copyright (C) 2013-2017 Hercules Dev Team
+ * Copyright (C) 2013-2018 Hercules Dev Team
*
* Hercules is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by