summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/HPM.c5
-rw-r--r--src/common/HPMDataCheck.h13
-rw-r--r--src/common/mmo.h12
-rw-r--r--src/common/packets/packets2019_len_main.h271
-rw-r--r--src/common/packets/packets2019_len_re.h277
-rw-r--r--src/common/packets/packets2019_len_zero.h271
6 files changed, 819 insertions, 30 deletions
diff --git a/src/common/HPM.c b/src/common/HPM.c
index a579a0926..479135767 100644
--- a/src/common/HPM.c
+++ b/src/common/HPM.c
@@ -458,11 +458,12 @@ static bool hplugins_addconf(unsigned int pluginID, enum HPluginConfType type, c
static struct hplugin *hplugin_load(const char *filename)
{
+ typedef void *(ImportSymbolFunc)(char *, unsigned int);
struct hplugin *plugin;
struct hplugin_info *info;
struct HPMi_interface **HPMi;
bool anyEvent = false;
- void **import_symbol_ref;
+ ImportSymbolFunc **import_symbol_ref;
int *HPMDataCheckVer;
unsigned int *HPMDataCheckLen;
struct s_HPMDataCheck *HPMDataCheck;
@@ -499,7 +500,7 @@ static struct hplugin *hplugin_load(const char *filename)
plugin->info = info;
plugin->filename = aStrdup(filename);
- if( !( import_symbol_ref = plugin_import(plugin->dll, "import_symbol",void **) ) ) {
+ if ((import_symbol_ref = plugin_import(plugin->dll, "import_symbol", ImportSymbolFunc **)) == NULL) {
ShowFatalError("HPM:plugin_load: failed to retrieve 'import_symbol' for '"CL_WHITE"%s"CL_RESET"'!\n", filename);
exit(EXIT_FAILURE);
}
diff --git a/src/common/HPMDataCheck.h b/src/common/HPMDataCheck.h
index 1e1d8068f..9c015e1f5 100644
--- a/src/common/HPMDataCheck.h
+++ b/src/common/HPMDataCheck.h
@@ -52,7 +52,6 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
#define CHAR_GEOIP_H
#endif // CHAR_GEOIP_H
#ifdef CHAR_INTER_H
- { "WisData", sizeof(struct WisData), SERVER_TYPE_CHAR },
{ "inter_interface", sizeof(struct inter_interface), SERVER_TYPE_CHAR },
#else
#define CHAR_INTER_H
@@ -526,6 +525,7 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "item_combo", sizeof(struct item_combo), SERVER_TYPE_MAP },
{ "item_data", sizeof(struct item_data), SERVER_TYPE_MAP },
{ "item_group", sizeof(struct item_group), SERVER_TYPE_MAP },
+ { "item_lapineddukddak", sizeof(struct item_lapineddukddak), SERVER_TYPE_MAP },
{ "item_package", sizeof(struct item_package), SERVER_TYPE_MAP },
{ "item_package_must_entry", sizeof(struct item_package_must_entry), SERVER_TYPE_MAP },
{ "item_package_rand_entry", sizeof(struct item_package_rand_entry), SERVER_TYPE_MAP },
@@ -666,6 +666,9 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_ACK_LEAVE_GUILD1", sizeof(struct PACKET_ZC_ACK_LEAVE_GUILD1), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_LEAVE_GUILD2", sizeof(struct PACKET_ZC_ACK_LEAVE_GUILD2), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_OPEN_WRITE_MAIL", sizeof(struct PACKET_ZC_ACK_OPEN_WRITE_MAIL), SERVER_TYPE_MAP },
+ { "PACKET_ZC_ACK_RANKING_name", sizeof(struct PACKET_ZC_ACK_RANKING_name), SERVER_TYPE_MAP },
+ { "PACKET_ZC_ACK_RANKING_points", sizeof(struct PACKET_ZC_ACK_RANKING_points), SERVER_TYPE_MAP },
+ { "PACKET_ZC_ACK_RANKING_sub", sizeof(struct PACKET_ZC_ACK_RANKING_sub), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_REMOVE_ITEM_MAIL", sizeof(struct PACKET_ZC_ACK_REMOVE_ITEM_MAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_REQMAKINGITEM", sizeof(struct PACKET_ZC_ACK_REQMAKINGITEM), SERVER_TYPE_MAP },
{ "PACKET_ZC_ACK_REQNAME_TITLE", sizeof(struct PACKET_ZC_ACK_REQNAME_TITLE), SERVER_TYPE_MAP },
@@ -680,6 +683,7 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_ADD_ITEM_TO_MAIL", sizeof(struct PACKET_ZC_ADD_ITEM_TO_MAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_ADD_ITEM_TO_STORE", sizeof(struct PACKET_ZC_ADD_ITEM_TO_STORE), SERVER_TYPE_MAP },
{ "PACKET_ZC_ADD_MEMBER_TO_GROUP", sizeof(struct PACKET_ZC_ADD_MEMBER_TO_GROUP), SERVER_TYPE_MAP },
+ { "PACKET_ZC_ADD_SKILL", sizeof(struct PACKET_ZC_ADD_SKILL), SERVER_TYPE_MAP },
{ "PACKET_ZC_BAN_LIST", sizeof(struct PACKET_ZC_BAN_LIST), SERVER_TYPE_MAP },
{ "PACKET_ZC_BAN_LIST_sub", sizeof(struct PACKET_ZC_BAN_LIST_sub), SERVER_TYPE_MAP },
{ "PACKET_ZC_CASH_ITEM_DELETE", sizeof(struct PACKET_ZC_CASH_ITEM_DELETE), SERVER_TYPE_MAP },
@@ -715,6 +719,7 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_NOTIFY_UNREADMAIL", sizeof(struct PACKET_ZC_NOTIFY_UNREADMAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_WEAPONITEMLIST", sizeof(struct PACKET_ZC_NOTIFY_WEAPONITEMLIST), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_WEAPONITEMLIST_sub", sizeof(struct PACKET_ZC_NOTIFY_WEAPONITEMLIST_sub), SERVER_TYPE_MAP },
+ { "PACKET_ZC_NPC_MARKET_PURCHASE_RESULT_sub", sizeof(struct PACKET_ZC_NPC_MARKET_PURCHASE_RESULT_sub), SERVER_TYPE_MAP },
{ "PACKET_ZC_OPEN_UI", sizeof(struct PACKET_ZC_OPEN_UI), SERVER_TYPE_MAP },
{ "PACKET_ZC_OVERWEIGHT_PERCENT", sizeof(struct PACKET_ZC_OVERWEIGHT_PERCENT), SERVER_TYPE_MAP },
{ "PACKET_ZC_PC_CASH_POINT_ITEMLIST", sizeof(struct PACKET_ZC_PC_CASH_POINT_ITEMLIST), SERVER_TYPE_MAP },
@@ -734,14 +739,19 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_SEARCH_STORE_INFO_ACK", sizeof(struct PACKET_ZC_SEARCH_STORE_INFO_ACK), SERVER_TYPE_MAP },
{ "PACKET_ZC_SEARCH_STORE_INFO_ACK_sub", sizeof(struct PACKET_ZC_SEARCH_STORE_INFO_ACK_sub), SERVER_TYPE_MAP },
{ "PACKET_ZC_SKILL_SCALE", sizeof(struct PACKET_ZC_SKILL_SCALE), SERVER_TYPE_MAP },
+ { "PACKET_ZC_SKILLINFO_LIST", sizeof(struct PACKET_ZC_SKILLINFO_LIST), SERVER_TYPE_MAP },
+ { "PACKET_ZC_SKILLINFO_UPDATE2", sizeof(struct PACKET_ZC_SKILLINFO_UPDATE2), SERVER_TYPE_MAP },
{ "PACKET_ZC_SPRITE_CHANGE", sizeof(struct PACKET_ZC_SPRITE_CHANGE), SERVER_TYPE_MAP },
+ { "PACKET_ZC_STATUS_CHANGE_ACK", sizeof(struct PACKET_ZC_STATUS_CHANGE_ACK), SERVER_TYPE_MAP },
{ "PACKET_ZC_STYLE_CHANGE_RES", sizeof(struct PACKET_ZC_STYLE_CHANGE_RES), SERVER_TYPE_MAP },
+ { "PACKET_ZC_TALKBOX_CHATCONTENTS", sizeof(struct PACKET_ZC_TALKBOX_CHATCONTENTS), SERVER_TYPE_MAP },
{ "PACKET_ZC_UI_ACTION", sizeof(struct PACKET_ZC_UI_ACTION), SERVER_TYPE_MAP },
{ "PACKET_ZC_UPDATE_ITEM_FROM_BUYING_STORE", sizeof(struct PACKET_ZC_UPDATE_ITEM_FROM_BUYING_STORE), SERVER_TYPE_MAP },
{ "PACKET_ZC_USE_ITEM_ACK", sizeof(struct PACKET_ZC_USE_ITEM_ACK), SERVER_TYPE_MAP },
{ "PACKET_ZC_WARPLIST", sizeof(struct PACKET_ZC_WARPLIST), SERVER_TYPE_MAP },
{ "PACKET_ZC_WARPLIST_sub", sizeof(struct PACKET_ZC_WARPLIST_sub), SERVER_TYPE_MAP },
{ "PACKET_ZC_WRITE_MAIL_RESULT", sizeof(struct PACKET_ZC_WRITE_MAIL_RESULT), SERVER_TYPE_MAP },
+ { "SKILLDATA", sizeof(struct SKILLDATA), SERVER_TYPE_MAP },
{ "ZC_INVENTORY_END", sizeof(struct ZC_INVENTORY_END), SERVER_TYPE_MAP },
{ "ZC_INVENTORY_START", sizeof(struct ZC_INVENTORY_START), SERVER_TYPE_MAP },
{ "ZC_PROGRESS_ACTOR", sizeof(struct ZC_PROGRESS_ACTOR), SERVER_TYPE_MAP },
@@ -788,7 +798,6 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "packet_monster_hp", sizeof(struct packet_monster_hp), SERVER_TYPE_MAP },
{ "packet_notify_bounditem", sizeof(struct packet_notify_bounditem), SERVER_TYPE_MAP },
{ "packet_npc_market_purchase", sizeof(struct packet_npc_market_purchase), SERVER_TYPE_MAP },
- { "packet_npc_market_result_ack", sizeof(struct packet_npc_market_result_ack), SERVER_TYPE_MAP },
{ "packet_package_item_announce", sizeof(struct packet_package_item_announce), SERVER_TYPE_MAP },
{ "packet_party_leader_changed", sizeof(struct packet_party_leader_changed), SERVER_TYPE_MAP },
{ "packet_quest_add_header", sizeof(struct packet_quest_add_header), SERVER_TYPE_MAP },
diff --git a/src/common/mmo.h b/src/common/mmo.h
index b58a70ae9..66736bff0 100644
--- a/src/common/mmo.h
+++ b/src/common/mmo.h
@@ -139,7 +139,7 @@
// Note that newer clients no longer save hotkeys in the registry!
#define HOTKEY_SAVING
-#if PACKETVER_MAIN_NUM >= 20190522 || PACKETVER_RE_NUM >= 20190508
+#if PACKETVER_MAIN_NUM >= 20190522 || PACKETVER_RE_NUM >= 20190508 || PACKETVER_ZERO_NUM >= 20190605
#define MAX_HOTKEYS 38
#elif PACKETVER_MAIN_NUM >= 20141022 || PACKETVER_RE_NUM >= 20141015 || defined(PACKETVER_ZERO)
// (38 = 9 skills x 4 bars & 2 Quickslots)(0x07d9,268)
@@ -156,7 +156,7 @@
#endif
#endif // PACKETVER_MAIN_NUM >= 20070711 || PACKETVER_RE_NUM >= 20080827 || PACKETVER_AD_NUM >= 20070711 || PACKETVER_SAK_NUM >= 20070628 || defined(PACKETVER_ZERO)
-#if PACKETVER_MAIN_NUM >= 20190522 || PACKETVER_RE_NUM >= 20190508
+#if PACKETVER_MAIN_NUM >= 20190522 || PACKETVER_RE_NUM >= 20190508 || PACKETVER_ZERO_NUM >= 20190605
#define MAX_HOTKEYS_DB ((MAX_HOTKEYS) * 2)
#else
#define MAX_HOTKEYS_DB MAX_HOTKEYS
@@ -907,6 +907,14 @@ struct guild_castle {
int mapindex;
char castle_name[NAME_LENGTH];
char castle_event[NAME_LENGTH];
+ int siege_type;
+ bool enable_client_warp;
+ struct {
+ int x;
+ int y;
+ int zeny;
+ int zeny_siege;
+ } client_warp;
int guild_id;
int economy;
int defense;
diff --git a/src/common/packets/packets2019_len_main.h b/src/common/packets/packets2019_len_main.h
index 0382a72d3..424abe14f 100644
--- a/src/common/packets/packets2019_len_main.h
+++ b/src/common/packets/packets2019_len_main.h
@@ -103,7 +103,11 @@ packetLen(0x007c, 44) // ZC_NOTIFY_STANDENTRY_NPC
packetLen(0x007d, 2) // CZ_NOTIFY_ACTORINIT
// Packet: 0x007e
+#if PACKETVER >= 20190904
+packetLen(0x007e, 46) // CZ_REQUEST_TIME
+#elif PACKETVER >= 20190109
packetLen(0x007e, 105) // CZ_REQUEST_TIME
+#endif
// Packet: 0x007f
packetLen(0x007f, 6) // ZC_NOTIFY_TIME
@@ -916,7 +920,11 @@ packetLen(0x018f, 8) // ZC_ACK_REQMAKINGITEM
packetLen(0x0190, 23) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
// Packet: 0x0191
+#if PACKETVER >= 20190904
+packetLen(0x0191, 27) // ZC_TALKBOX_CHATCONTENTS
+#elif PACKETVER >= 20190109
packetLen(0x0191, 86) // ZC_TALKBOX_CHATCONTENTS
+#endif
// Packet: 0x0192
packetLen(0x0192, 24) // ZC_UPDATE_MAPINFO
@@ -1966,7 +1974,11 @@ packetLen(0x0365, 8) // CZ_MOVE_ITEM_FROM_STORE_TO_BODY2
packetLen(0x0366, 10) // CZ_USE_SKILL_TOGROUND2
// Packet: 0x0367
+#if PACKETVER >= 20190904
+packetLen(0x0367, 31) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#elif PACKETVER >= 20190109
packetLen(0x0367, 90) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#endif
// Packet: 0x0368
packetLen(0x0368, 6) // CZ_REQNAME2
@@ -3757,7 +3769,7 @@ packetLen(0x0a39, 36) // CH_MAKE_CHAR
packetLen(0x0a3a, 12)
// Packet: 0x0a3b
-packetLen(0x0a3b, -1) // ZC_CUSTOM_HAT_EFFECT
+packetLen(0x0a3b, -1) // ZC_HAT_EFFECT
// Packet: 0x0a3c
packetLen(0x0a3c, -1)
@@ -3901,7 +3913,7 @@ packetLen(0x0a74, 8)
packetLen(0x0a76, 80)
// Packet: 0x0a77
-packetLen(0x0a77, 15)
+packetLen(0x0a77, 15) // CZ_CAMERA_INFO
// Packet: 0x0a78
packetLen(0x0a78, 15)
@@ -4270,7 +4282,7 @@ packetLen(0x0af4, 11) // CZ_USE_SKILL_TOGROUND
packetLen(0x0af5, 3)
// Packet: 0x0af6
-packetLen(0x0af6, 88)
+packetLen(0x0af6, 88) // ZC_ACK_RANKING
// Packet: 0x0af7
packetLen(0x0af7, 32) // ZC_ACK_REQNAME_BYGID
@@ -4312,7 +4324,13 @@ packetLen(0x0b02, 26) // AC_REFUSE_LOGIN4
packetLen(0x0b03, -1) // ZC_EQUIPWIN_MICROSCOPE_V7
// Packet: 0x0b04
+#if PACKETVER >= 20190807
+packetLen(0x0b04, 90)
+#elif PACKETVER >= 20190605
+packetLen(0x0b04, 72)
+#elif PACKETVER >= 20190109
packetLen(0x0b04, 80)
+#endif
// Packet: 0x0b05
packetLen(0x0b05, 63) // ZC_OFFLINE_STORE_VISIBLE
@@ -4393,12 +4411,16 @@ packetLen(0x0b1d, 2) // ZC_PING
#endif
// Packet: 0x0b1e
-#if PACKETVER >= 20190227
+#if PACKETVER >= 20190619
+packetLen(0x0b1e, 14)
+#elif PACKETVER >= 20190227
packetLen(0x0b1e, 10)
#endif
// Packet: 0x0b1f
-#if PACKETVER >= 20190306
+#if PACKETVER >= 20190619
+packetLen(0x0b1f, 14)
+#elif PACKETVER >= 20190306
packetLen(0x0b1f, 10)
#endif
@@ -4466,12 +4488,16 @@ packetLen(0x0b28, 22)
#endif
// Packet: 0x0b29
-#if PACKETVER >= 20190508
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190508
packetLen(0x0b29, 6)
#endif
// Packet: 0x0b2a
-#if PACKETVER >= 20190522
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190522
packetLen(0x0b2a, 40)
#elif PACKETVER >= 20190508
packetLen(0x0b2a, 6)
@@ -4499,7 +4525,7 @@ packetLen(0x0b2e, 4)
// Packet: 0x0b2f
#if PACKETVER >= 20190529
-packetLen(0x0b2f, 73)
+packetLen(0x0b2f, 73) // ZC_PROPERTY_HOMUN_3
#endif
// Packet: 0x0b30
@@ -4507,5 +4533,234 @@ packetLen(0x0b2f, 73)
packetLen(0x0b30, -1)
#endif
+// Packet: 0x0b31
+#if PACKETVER >= 20190619
+packetLen(0x0b31, 17) // ZC_ADD_SKILL
+#endif
+
+// Packet: 0x0b32
+#if PACKETVER >= 20190619
+packetLen(0x0b32, -1) // ZC_SKILLINFO_LIST
+#endif
+
+// Packet: 0x0b33
+#if PACKETVER >= 20190619
+packetLen(0x0b33, 17) // ZC_SKILLINFO_UPDATE2
+#endif
+
+// Packet: 0x0b34
+#if PACKETVER >= 20190724
+packetLen(0x0b34, 50)
+#elif PACKETVER >= 20190703
+packetLen(0x0b34, 26)
+#endif
+
+// Packet: 0x0b35
+#if PACKETVER >= 20190703
+packetLen(0x0b35, 3)
+#endif
+
+// Packet: 0x0b36
+#if PACKETVER >= 20190717
+packetLen(0x0b36, -1)
+#endif
+
+// Packet: 0x0b37
+#if PACKETVER >= 20190724
+packetLen(0x0b37, -1)
+#endif
+
+// Packet: 0x0b38
+#if PACKETVER >= 20190724
+packetLen(0x0b38, -1)
+#endif
+
+// Packet: 0x0b39
+#if PACKETVER >= 20190724
+packetLen(0x0b39, -1)
+#endif
+
+// Packet: 0x0b3a
+#if PACKETVER >= 20190724
+packetLen(0x0b3a, 4)
+#endif
+
+// Packet: 0x0b3b
+#if PACKETVER >= 20190724
+packetLen(0x0b3b, 4)
+#endif
+
+// Packet: 0x0b3c
+#if PACKETVER >= 20190724
+packetLen(0x0b3c, 4)
+#endif
+
+// Packet: 0x0b3d
+#if PACKETVER >= 20190724
+packetLen(0x0b3d, -1)
+#endif
+
+// Packet: 0x0b3e
+#if PACKETVER >= 20190724
+packetLen(0x0b3e, -1)
+#endif
+
+// Packet: 0x0b3f
+#if PACKETVER >= 20190724
+packetLen(0x0b3f, 64)
+#endif
+
+// Packet: 0x0b40
+#if PACKETVER >= 20190724
+packetLen(0x0b40, -1)
+#endif
+
+// Packet: 0x0b41
+#if PACKETVER >= 20190724
+packetLen(0x0b41, 41)
+#endif
+
+// Packet: 0x0b42
+#if PACKETVER >= 20190724
+packetLen(0x0b42, 30)
+#endif
+
+// Packet: 0x0b43
+#if PACKETVER >= 20190724
+packetLen(0x0b43, 47)
+#endif
+
+// Packet: 0x0b44
+#if PACKETVER >= 20190724
+packetLen(0x0b44, 32)
+#endif
+
+// Packet: 0x0b45
+#if PACKETVER >= 20190724
+packetLen(0x0b45, 32)
+#endif
+
+// Packet: 0x0b46
+#if PACKETVER >= 20190724
+packetLen(0x0b46, 10)
+#endif
+
+// Packet: 0x0b47
+#if PACKETVER >= 20190724
+packetLen(0x0b47, 14)
+#endif
+
+// Packet: 0x0b48
+#if PACKETVER >= 20190724
+packetLen(0x0b48, 18)
+#endif
+
+// Packet: 0x0b49
+#if PACKETVER >= 20190724
+packetLen(0x0b49, 4)
+#endif
+
+// Packet: 0x0b4a
+#if PACKETVER >= 20190724
+packetLen(0x0b4a, 6)
+#endif
+
+// Packet: 0x0b4b
+#if PACKETVER >= 20190724
+packetLen(0x0b4b, 4)
+#endif
+
+// Packet: 0x0b4c
+#if PACKETVER >= 20190724
+packetLen(0x0b4c, 2)
+#endif
+
+// Packet: 0x0b4d
+#if PACKETVER >= 20190807
+packetLen(0x0b4d, -1)
+#elif PACKETVER >= 20190724
+packetLen(0x0b4d, 6)
+#endif
+
+// Packet: 0x0b4e
+#if PACKETVER >= 20190807
+packetLen(0x0b4e, -1)
+#endif
+
+// Packet: 0x0b4f
+#if PACKETVER >= 20190807
+packetLen(0x0b4f, 2)
+#endif
+
+// Packet: 0x0b50
+#if PACKETVER >= 20190807
+packetLen(0x0b50, 2)
+#endif
+
+// Packet: 0x0b51
+#if PACKETVER >= 20190807
+packetLen(0x0b51, 2)
+#endif
+
+// Packet: 0x0b52
+#if PACKETVER >= 20190807
+packetLen(0x0b52, 2)
+#endif
+
+// Packet: 0x0b53
+#if PACKETVER >= 20190821
+packetLen(0x0b53, 52)
+#endif
+
+// Packet: 0x0b54
+#if PACKETVER >= 20190821
+packetLen(0x0b54, 8)
+#endif
+
+// Packet: 0x0b55
+#if PACKETVER >= 20190821
+packetLen(0x0b55, -1)
+#endif
+
+// Packet: 0x0b56
+#if PACKETVER >= 20190904
+packetLen(0x0b56, -1)
+#endif
+
+// Packet: 0x0b57
+#if PACKETVER >= 20190904
+packetLen(0x0b57, -1)
+#endif
+
+// Packet: 0x0b58
+#if PACKETVER >= 20190904
+packetLen(0x0b58, 2)
+#endif
+
+// Packet: 0x0b59
+#if PACKETVER >= 20190918
+packetLen(0x0b59, 2)
+#endif
+
+// Packet: 0x0b5a
+#if PACKETVER >= 20190918
+packetLen(0x0b5a, 4)
+#endif
+
+// Packet: 0x0b5b
+#if PACKETVER >= 20190918
+packetLen(0x0b5b, -1)
+#endif
+
+// Packet: 0x0b5c
+#if PACKETVER >= 20190918
+packetLen(0x0b5c, 10)
+#endif
+
+// Packet: 0x0b5d
+#if PACKETVER >= 20190918
+packetLen(0x0b5d, 2)
+#endif
+
#endif /* COMMON_PACKETS2019_LEN_MAIN_H */
diff --git a/src/common/packets/packets2019_len_re.h b/src/common/packets/packets2019_len_re.h
index c553d9324..32c14775d 100644
--- a/src/common/packets/packets2019_len_re.h
+++ b/src/common/packets/packets2019_len_re.h
@@ -103,7 +103,11 @@ packetLen(0x007c, 44) // ZC_NOTIFY_STANDENTRY_NPC
packetLen(0x007d, 2) // CZ_NOTIFY_ACTORINIT
// Packet: 0x007e
+#if PACKETVER >= 20190904
+packetLen(0x007e, 46) // CZ_REQUEST_TIME
+#elif PACKETVER >= 20190109
packetLen(0x007e, 105) // CZ_REQUEST_TIME
+#endif
// Packet: 0x007f
packetLen(0x007f, 6) // ZC_NOTIFY_TIME
@@ -916,7 +920,11 @@ packetLen(0x018f, 8) // ZC_ACK_REQMAKINGITEM
packetLen(0x0190, 23) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
// Packet: 0x0191
+#if PACKETVER >= 20190904
+packetLen(0x0191, 27) // ZC_TALKBOX_CHATCONTENTS
+#elif PACKETVER >= 20190109
packetLen(0x0191, 86) // ZC_TALKBOX_CHATCONTENTS
+#endif
// Packet: 0x0192
packetLen(0x0192, 24) // ZC_UPDATE_MAPINFO
@@ -1972,7 +1980,11 @@ packetLen(0x0365, 8) // CZ_MOVE_ITEM_FROM_STORE_TO_BODY2
packetLen(0x0366, 10) // CZ_USE_SKILL_TOGROUND2
// Packet: 0x0367
+#if PACKETVER >= 20190904
+packetLen(0x0367, 31) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#elif PACKETVER >= 20190109
packetLen(0x0367, 90) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#endif
// Packet: 0x0368
packetLen(0x0368, 6) // CZ_REQNAME2
@@ -3763,7 +3775,7 @@ packetLen(0x0a39, 36) // CH_MAKE_CHAR
packetLen(0x0a3a, 12)
// Packet: 0x0a3b
-packetLen(0x0a3b, -1) // ZC_CUSTOM_HAT_EFFECT
+packetLen(0x0a3b, -1) // ZC_HAT_EFFECT
// Packet: 0x0a3c
packetLen(0x0a3c, -1)
@@ -3907,7 +3919,7 @@ packetLen(0x0a74, 8)
packetLen(0x0a76, 80)
// Packet: 0x0a77
-packetLen(0x0a77, 15)
+packetLen(0x0a77, 15) // CZ_CAMERA_INFO
// Packet: 0x0a78
packetLen(0x0a78, 15)
@@ -4276,7 +4288,7 @@ packetLen(0x0af4, 11) // CZ_USE_SKILL_TOGROUND
packetLen(0x0af5, 3)
// Packet: 0x0af6
-packetLen(0x0af6, 88)
+packetLen(0x0af6, 88) // ZC_ACK_RANKING
// Packet: 0x0af7
packetLen(0x0af7, 32) // ZC_ACK_REQNAME_BYGID
@@ -4318,7 +4330,13 @@ packetLen(0x0b02, 26) // AC_REFUSE_LOGIN4
packetLen(0x0b03, -1) // ZC_EQUIPWIN_MICROSCOPE_V7
// Packet: 0x0b04
+#if PACKETVER >= 20190807
+packetLen(0x0b04, 90)
+#elif PACKETVER >= 20190605
+packetLen(0x0b04, 72)
+#elif PACKETVER >= 20190109
packetLen(0x0b04, 80)
+#endif
// Packet: 0x0b05
packetLen(0x0b05, 63) // ZC_OFFLINE_STORE_VISIBLE
@@ -4399,12 +4417,22 @@ packetLen(0x0b1d, 2) // ZC_PING
#endif
// Packet: 0x0b1e
-#if PACKETVER >= 20190227
+#if PACKETVER >= 20190619
+packetLen(0x0b1e, 14)
+#elif PACKETVER >= 20190605
+packetLen(0x0b1e, 14)
+// ignored packet from 2019-06-05hRagexeRE
+#elif PACKETVER >= 20190227
packetLen(0x0b1e, 10)
#endif
// Packet: 0x0b1f
-#if PACKETVER >= 20190306
+#if PACKETVER >= 20190619
+packetLen(0x0b1f, 14)
+#elif PACKETVER >= 20190605
+packetLen(0x0b1f, 14)
+// ignored packet from 2019-06-05hRagexeRE
+#elif PACKETVER >= 20190306
packetLen(0x0b1f, 10)
#endif
@@ -4472,12 +4500,16 @@ packetLen(0x0b28, 22)
#endif
// Packet: 0x0b29
-#if PACKETVER >= 20190508
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190508
packetLen(0x0b29, 6)
#endif
// Packet: 0x0b2a
-#if PACKETVER >= 20190522
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190522
packetLen(0x0b2a, 40)
#elif PACKETVER >= 20190508
packetLen(0x0b2a, 6)
@@ -4505,7 +4537,7 @@ packetLen(0x0b2e, 4)
// Packet: 0x0b2f
#if PACKETVER >= 20190529
-packetLen(0x0b2f, 73)
+packetLen(0x0b2f, 73) // ZC_PROPERTY_HOMUN_3
#endif
// Packet: 0x0b30
@@ -4513,5 +4545,234 @@ packetLen(0x0b2f, 73)
packetLen(0x0b30, -1)
#endif
+// Packet: 0x0b31
+#if PACKETVER >= 20190619
+packetLen(0x0b31, 17) // ZC_ADD_SKILL
+#endif
+
+// Packet: 0x0b32
+#if PACKETVER >= 20190619
+packetLen(0x0b32, -1) // ZC_SKILLINFO_LIST
+#endif
+
+// Packet: 0x0b33
+#if PACKETVER >= 20190619
+packetLen(0x0b33, 17) // ZC_SKILLINFO_UPDATE2
+#endif
+
+// Packet: 0x0b34
+#if PACKETVER >= 20190724
+packetLen(0x0b34, 50)
+#elif PACKETVER >= 20190703
+packetLen(0x0b34, 26)
+#endif
+
+// Packet: 0x0b35
+#if PACKETVER >= 20190703
+packetLen(0x0b35, 3)
+#endif
+
+// Packet: 0x0b36
+#if PACKETVER >= 20190717
+packetLen(0x0b36, -1)
+#endif
+
+// Packet: 0x0b37
+#if PACKETVER >= 20190724
+packetLen(0x0b37, -1)
+#endif
+
+// Packet: 0x0b38
+#if PACKETVER >= 20190724
+packetLen(0x0b38, -1)
+#endif
+
+// Packet: 0x0b39
+#if PACKETVER >= 20190724
+packetLen(0x0b39, -1)
+#endif
+
+// Packet: 0x0b3a
+#if PACKETVER >= 20190724
+packetLen(0x0b3a, 4)
+#endif
+
+// Packet: 0x0b3b
+#if PACKETVER >= 20190724
+packetLen(0x0b3b, 4)
+#endif
+
+// Packet: 0x0b3c
+#if PACKETVER >= 20190724
+packetLen(0x0b3c, 4)
+#endif
+
+// Packet: 0x0b3d
+#if PACKETVER >= 20190724
+packetLen(0x0b3d, -1)
+#endif
+
+// Packet: 0x0b3e
+#if PACKETVER >= 20190724
+packetLen(0x0b3e, -1)
+#endif
+
+// Packet: 0x0b3f
+#if PACKETVER >= 20190724
+packetLen(0x0b3f, 64)
+#endif
+
+// Packet: 0x0b40
+#if PACKETVER >= 20190724
+packetLen(0x0b40, -1)
+#endif
+
+// Packet: 0x0b41
+#if PACKETVER >= 20190724
+packetLen(0x0b41, 41)
+#endif
+
+// Packet: 0x0b42
+#if PACKETVER >= 20190724
+packetLen(0x0b42, 30)
+#endif
+
+// Packet: 0x0b43
+#if PACKETVER >= 20190724
+packetLen(0x0b43, 47)
+#endif
+
+// Packet: 0x0b44
+#if PACKETVER >= 20190724
+packetLen(0x0b44, 32)
+#endif
+
+// Packet: 0x0b45
+#if PACKETVER >= 20190724
+packetLen(0x0b45, 32)
+#endif
+
+// Packet: 0x0b46
+#if PACKETVER >= 20190724
+packetLen(0x0b46, 10)
+#endif
+
+// Packet: 0x0b47
+#if PACKETVER >= 20190724
+packetLen(0x0b47, 14)
+#endif
+
+// Packet: 0x0b48
+#if PACKETVER >= 20190724
+packetLen(0x0b48, 18)
+#endif
+
+// Packet: 0x0b49
+#if PACKETVER >= 20190724
+packetLen(0x0b49, 4)
+#endif
+
+// Packet: 0x0b4a
+#if PACKETVER >= 20190724
+packetLen(0x0b4a, 6)
+#endif
+
+// Packet: 0x0b4b
+#if PACKETVER >= 20190724
+packetLen(0x0b4b, 4)
+#endif
+
+// Packet: 0x0b4c
+#if PACKETVER >= 20190724
+packetLen(0x0b4c, 2)
+#endif
+
+// Packet: 0x0b4d
+#if PACKETVER >= 20190807
+packetLen(0x0b4d, -1)
+#elif PACKETVER >= 20190724
+packetLen(0x0b4d, 6)
+#endif
+
+// Packet: 0x0b4e
+#if PACKETVER >= 20190807
+packetLen(0x0b4e, -1)
+#endif
+
+// Packet: 0x0b4f
+#if PACKETVER >= 20190807
+packetLen(0x0b4f, 2)
+#endif
+
+// Packet: 0x0b50
+#if PACKETVER >= 20190807
+packetLen(0x0b50, 2)
+#endif
+
+// Packet: 0x0b51
+#if PACKETVER >= 20190807
+packetLen(0x0b51, 2)
+#endif
+
+// Packet: 0x0b52
+#if PACKETVER >= 20190807
+packetLen(0x0b52, 2)
+#endif
+
+// Packet: 0x0b53
+#if PACKETVER >= 20190821
+packetLen(0x0b53, 52)
+#endif
+
+// Packet: 0x0b54
+#if PACKETVER >= 20190821
+packetLen(0x0b54, 8)
+#endif
+
+// Packet: 0x0b55
+#if PACKETVER >= 20190821
+packetLen(0x0b55, -1)
+#endif
+
+// Packet: 0x0b56
+#if PACKETVER >= 20190904
+packetLen(0x0b56, -1)
+#endif
+
+// Packet: 0x0b57
+#if PACKETVER >= 20190904
+packetLen(0x0b57, -1)
+#endif
+
+// Packet: 0x0b58
+#if PACKETVER >= 20190904
+packetLen(0x0b58, 2)
+#endif
+
+// Packet: 0x0b59
+#if PACKETVER >= 20190918
+packetLen(0x0b59, 2)
+#endif
+
+// Packet: 0x0b5a
+#if PACKETVER >= 20190918
+packetLen(0x0b5a, 4)
+#endif
+
+// Packet: 0x0b5b
+#if PACKETVER >= 20190918
+packetLen(0x0b5b, -1)
+#endif
+
+// Packet: 0x0b5c
+#if PACKETVER >= 20190918
+packetLen(0x0b5c, 10)
+#endif
+
+// Packet: 0x0b5d
+#if PACKETVER >= 20190918
+packetLen(0x0b5d, 2)
+#endif
+
#endif /* COMMON_PACKETS2019_LEN_RE_H */
diff --git a/src/common/packets/packets2019_len_zero.h b/src/common/packets/packets2019_len_zero.h
index 3295b26d9..9cdc9db05 100644
--- a/src/common/packets/packets2019_len_zero.h
+++ b/src/common/packets/packets2019_len_zero.h
@@ -103,7 +103,11 @@ packetLen(0x007c, 44) // ZC_NOTIFY_STANDENTRY_NPC
packetLen(0x007d, 2) // CZ_NOTIFY_ACTORINIT
// Packet: 0x007e
+#if PACKETVER >= 20190828
+packetLen(0x007e, 46) // CZ_REQUEST_TIME
+#elif PACKETVER >= 20190116
packetLen(0x007e, 105) // CZ_REQUEST_TIME
+#endif
// Packet: 0x007f
packetLen(0x007f, 6) // ZC_NOTIFY_TIME
@@ -916,7 +920,11 @@ packetLen(0x018f, 8) // ZC_ACK_REQMAKINGITEM
packetLen(0x0190, 23) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX
// Packet: 0x0191
+#if PACKETVER >= 20190828
+packetLen(0x0191, 27) // ZC_TALKBOX_CHATCONTENTS
+#elif PACKETVER >= 20190116
packetLen(0x0191, 86) // ZC_TALKBOX_CHATCONTENTS
+#endif
// Packet: 0x0192
packetLen(0x0192, 24) // ZC_UPDATE_MAPINFO
@@ -1966,7 +1974,11 @@ packetLen(0x0365, 8) // CZ_MOVE_ITEM_FROM_STORE_TO_BODY2
packetLen(0x0366, 10) // CZ_USE_SKILL_TOGROUND2
// Packet: 0x0367
+#if PACKETVER >= 20190828
+packetLen(0x0367, 31) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#elif PACKETVER >= 20190116
packetLen(0x0367, 90) // CZ_USE_SKILL_TOGROUND_WITHTALKBOX2
+#endif
// Packet: 0x0368
packetLen(0x0368, 6) // CZ_REQNAME2
@@ -3757,7 +3769,7 @@ packetLen(0x0a39, 36) // CH_MAKE_CHAR
packetLen(0x0a3a, 12)
// Packet: 0x0a3b
-packetLen(0x0a3b, -1) // ZC_CUSTOM_HAT_EFFECT
+packetLen(0x0a3b, -1) // ZC_HAT_EFFECT
// Packet: 0x0a3c
packetLen(0x0a3c, -1)
@@ -3901,7 +3913,7 @@ packetLen(0x0a74, 8)
packetLen(0x0a76, 80)
// Packet: 0x0a77
-packetLen(0x0a77, 15)
+packetLen(0x0a77, 15) // CZ_CAMERA_INFO
// Packet: 0x0a78
packetLen(0x0a78, 15)
@@ -4270,7 +4282,7 @@ packetLen(0x0af4, 11) // CZ_USE_SKILL_TOGROUND
packetLen(0x0af5, 3)
// Packet: 0x0af6
-packetLen(0x0af6, 88)
+packetLen(0x0af6, 88) // ZC_ACK_RANKING
// Packet: 0x0af7
packetLen(0x0af7, 32) // ZC_ACK_REQNAME_BYGID
@@ -4312,7 +4324,13 @@ packetLen(0x0b02, 26) // AC_REFUSE_LOGIN4
packetLen(0x0b03, -1) // ZC_EQUIPWIN_MICROSCOPE_V7
// Packet: 0x0b04
+#if PACKETVER >= 20190814
+packetLen(0x0b04, 90)
+#elif PACKETVER >= 20190605
+packetLen(0x0b04, 72)
+#elif PACKETVER >= 20190116
packetLen(0x0b04, 80)
+#endif
// Packet: 0x0b05
packetLen(0x0b05, 63) // ZC_OFFLINE_STORE_VISIBLE
@@ -4393,12 +4411,16 @@ packetLen(0x0b1d, 2) // ZC_PING
#endif
// Packet: 0x0b1e
-#if PACKETVER >= 20190313
+#if PACKETVER >= 20190626
+packetLen(0x0b1e, 14)
+#elif PACKETVER >= 20190313
packetLen(0x0b1e, 10)
#endif
// Packet: 0x0b1f
-#if PACKETVER >= 20190313
+#if PACKETVER >= 20190626
+packetLen(0x0b1f, 14)
+#elif PACKETVER >= 20190313
packetLen(0x0b1f, 10)
#endif
@@ -4456,14 +4478,18 @@ packetLen(0x0b28, -1)
#endif
// Packet: 0x0b29
-#if PACKETVER >= 20190502
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190502
packetLen(0x0b29, 6)
#elif PACKETVER >= 20190424
packetLen(0x0b29, 3)
#endif
// Packet: 0x0b2a
-#if PACKETVER >= 20190529
+#if PACKETVER >= 20190605
+// removed
+#elif PACKETVER >= 20190529
packetLen(0x0b2a, 40)
#elif PACKETVER >= 20190502
packetLen(0x0b2a, 6)
@@ -4491,7 +4517,7 @@ packetLen(0x0b2e, 4)
// Packet: 0x0b2f
#if PACKETVER >= 20190529
-packetLen(0x0b2f, 73)
+packetLen(0x0b2f, 73) // ZC_PROPERTY_HOMUN_3
#endif
// Packet: 0x0b30
@@ -4499,5 +4525,234 @@ packetLen(0x0b2f, 73)
packetLen(0x0b30, -1)
#endif
+// Packet: 0x0b31
+#if PACKETVER >= 20190626
+packetLen(0x0b31, 17) // ZC_ADD_SKILL
+#endif
+
+// Packet: 0x0b32
+#if PACKETVER >= 20190626
+packetLen(0x0b32, -1) // ZC_SKILLINFO_LIST
+#endif
+
+// Packet: 0x0b33
+#if PACKETVER >= 20190626
+packetLen(0x0b33, 17) // ZC_SKILLINFO_UPDATE2
+#endif
+
+// Packet: 0x0b34
+#if PACKETVER >= 20190724
+packetLen(0x0b34, 50)
+#elif PACKETVER >= 20190626
+packetLen(0x0b34, 26)
+#endif
+
+// Packet: 0x0b35
+#if PACKETVER >= 20190709
+packetLen(0x0b35, 3)
+#endif
+
+// Packet: 0x0b36
+#if PACKETVER >= 20190709
+packetLen(0x0b36, -1)
+#endif
+
+// Packet: 0x0b37
+#if PACKETVER >= 20190724
+packetLen(0x0b37, -1)
+#endif
+
+// Packet: 0x0b38
+#if PACKETVER >= 20190724
+packetLen(0x0b38, -1)
+#endif
+
+// Packet: 0x0b39
+#if PACKETVER >= 20190724
+packetLen(0x0b39, -1)
+#endif
+
+// Packet: 0x0b3a
+#if PACKETVER >= 20190724
+packetLen(0x0b3a, 4)
+#endif
+
+// Packet: 0x0b3b
+#if PACKETVER >= 20190724
+packetLen(0x0b3b, 4)
+#endif
+
+// Packet: 0x0b3c
+#if PACKETVER >= 20190724
+packetLen(0x0b3c, 4)
+#endif
+
+// Packet: 0x0b3d
+#if PACKETVER >= 20190724
+packetLen(0x0b3d, -1)
+#endif
+
+// Packet: 0x0b3e
+#if PACKETVER >= 20190724
+packetLen(0x0b3e, -1)
+#endif
+
+// Packet: 0x0b3f
+#if PACKETVER >= 20190724
+packetLen(0x0b3f, 64)
+#endif
+
+// Packet: 0x0b40
+#if PACKETVER >= 20190724
+packetLen(0x0b40, -1)
+#endif
+
+// Packet: 0x0b41
+#if PACKETVER >= 20190724
+packetLen(0x0b41, 41)
+#endif
+
+// Packet: 0x0b42
+#if PACKETVER >= 20190724
+packetLen(0x0b42, 30)
+#endif
+
+// Packet: 0x0b43
+#if PACKETVER >= 20190724
+packetLen(0x0b43, 47)
+#endif
+
+// Packet: 0x0b44
+#if PACKETVER >= 20190724
+packetLen(0x0b44, 32)
+#endif
+
+// Packet: 0x0b45
+#if PACKETVER >= 20190724
+packetLen(0x0b45, 32)
+#endif
+
+// Packet: 0x0b46
+#if PACKETVER >= 20190724
+packetLen(0x0b46, 10)
+#endif
+
+// Packet: 0x0b47
+#if PACKETVER >= 20190724
+packetLen(0x0b47, 14)
+#endif
+
+// Packet: 0x0b48
+#if PACKETVER >= 20190724
+packetLen(0x0b48, 18)
+#endif
+
+// Packet: 0x0b49
+#if PACKETVER >= 20190724
+packetLen(0x0b49, 4)
+#endif
+
+// Packet: 0x0b4a
+#if PACKETVER >= 20190724
+packetLen(0x0b4a, 6)
+#endif
+
+// Packet: 0x0b4b
+#if PACKETVER >= 20190724
+packetLen(0x0b4b, 4)
+#endif
+
+// Packet: 0x0b4c
+#if PACKETVER >= 20190724
+packetLen(0x0b4c, 2)
+#endif
+
+// Packet: 0x0b4d
+#if PACKETVER >= 20190814
+packetLen(0x0b4d, -1)
+#elif PACKETVER >= 20190724
+packetLen(0x0b4d, 6)
+#endif
+
+// Packet: 0x0b4e
+#if PACKETVER >= 20190814
+packetLen(0x0b4e, -1)
+#endif
+
+// Packet: 0x0b4f
+#if PACKETVER >= 20190814
+packetLen(0x0b4f, 2)
+#endif
+
+// Packet: 0x0b50
+#if PACKETVER >= 20190814
+packetLen(0x0b50, 2)
+#endif
+
+// Packet: 0x0b51
+#if PACKETVER >= 20190814
+packetLen(0x0b51, 2)
+#endif
+
+// Packet: 0x0b52
+#if PACKETVER >= 20190814
+packetLen(0x0b52, 2)
+#endif
+
+// Packet: 0x0b53
+#if PACKETVER >= 20190814
+packetLen(0x0b53, 52)
+#endif
+
+// Packet: 0x0b54
+#if PACKETVER >= 20190814
+packetLen(0x0b54, 8)
+#endif
+
+// Packet: 0x0b55
+#if PACKETVER >= 20190828
+packetLen(0x0b55, -1)
+#endif
+
+// Packet: 0x0b56
+#if PACKETVER >= 20190828
+packetLen(0x0b56, -1)
+#endif
+
+// Packet: 0x0b57
+#if PACKETVER >= 20190828
+packetLen(0x0b57, -1)
+#endif
+
+// Packet: 0x0b58
+#if PACKETVER >= 20190828
+packetLen(0x0b58, 2)
+#endif
+
+// Packet: 0x0b59
+#if PACKETVER >= 20190918
+packetLen(0x0b59, 2)
+#endif
+
+// Packet: 0x0b5a
+#if PACKETVER >= 20190918
+packetLen(0x0b5a, 4)
+#endif
+
+// Packet: 0x0b5b
+#if PACKETVER >= 20190918
+packetLen(0x0b5b, -1)
+#endif
+
+// Packet: 0x0b5c
+#if PACKETVER >= 20190918
+packetLen(0x0b5c, 10)
+#endif
+
+// Packet: 0x0b5d
+#if PACKETVER >= 20190918
+packetLen(0x0b5d, 2)
+#endif
+
#endif /* COMMON_PACKETS2019_LEN_ZERO_H */