From 3ee810000caeddc7b59f28719274c086179a9851 Mon Sep 17 00:00:00 2001 From: 0O0o0oOoO00 <11174151+0O0o0oOoO00@users.noreply.github.com> Date: Thu, 31 Jul 2025 18:00:11 +0800 Subject: [PATCH] upd: update net proto --- blcrack/cracker/gen_proto.py | 1 + blcrack/cracker/proto/common.proto | 4 + blcrack/cracker/proto/p11.proto | 20 +- blcrack/cracker/proto/p12.proto | 21 +- blcrack/cracker/proto/p13.proto | 1 + blcrack/cracker/proto/p17.proto | 9 + blcrack/cracker/proto/p21.proto | 799 +++++++++++++++++++++++++++++ blcrack/cracker/proto/p22.proto | 30 ++ blcrack/cracker/proto/p28.proto | 16 + blcrack/cracker/proto/p40.proto | 1 + blcrack/cracker/proto/p64.proto | 18 + 11 files changed, 913 insertions(+), 7 deletions(-) create mode 100644 blcrack/cracker/proto/p21.proto diff --git a/blcrack/cracker/gen_proto.py b/blcrack/cracker/gen_proto.py index d62bbedaf..c75dbbe9a 100644 --- a/blcrack/cracker/gen_proto.py +++ b/blcrack/cracker/gen_proto.py @@ -171,6 +171,7 @@ IMPORT_MAP = { "p16": ["common.proto"], "p18": ["common.proto"], "p20": ["common.proto"], + "p21": ["common.proto"], "p22": ["common.proto"], "p24": ["common.proto"], "p25": ["common.proto"], diff --git a/blcrack/cracker/proto/common.proto b/blcrack/cracker/proto/common.proto index c86ec3a02..3bdd6f932 100644 --- a/blcrack/cracker/proto/common.proto +++ b/blcrack/cracker/proto/common.proto @@ -28,6 +28,8 @@ message SHIPINFO { repeated uint32 meta_repair_list = 24; repeated SHIPCOREINFO core_list = 25; optional SPWEAPONINFO spweapon = 26; + repeated KVDATA skin_shadow_list = 27; + repeated uint32 char_random_flag = 28; } // .common.shipinfo message SHIPSTATE { @@ -136,6 +138,8 @@ message APPRECIATIONINFO { repeated uint32 musics = 2; repeated uint32 favor_gallerys = 3; repeated uint32 favor_musics = 4; + required uint32 music_no = 5; + required uint32 music_mode = 6; } // .common.appreciationinfo message BUILDINFO { diff --git a/blcrack/cracker/proto/p11.proto b/blcrack/cracker/proto/p11.proto index 19d34882d..205e5435f 100644 --- a/blcrack/cracker/proto/p11.proto +++ b/blcrack/cracker/proto/p11.proto @@ -28,7 +28,7 @@ message SC_11003 { required uint32 attack_count = 6; required uint32 win_count = 7; required string adv = 8; - repeated uint32 character = 9; + repeated KVDATA character = 9; required uint32 ship_bag_max = 10; required uint32 equip_bag_max = 11; required uint32 gm_flag = 12; @@ -61,7 +61,7 @@ message SC_11003 { repeated uint32 cartoon_read_mark = 39; repeated uint32 cartoon_collect_mark = 40; required uint32 random_ship_mode = 41; - repeated uint32 random_ship_list = 42; + repeated KVDATA random_ship_list = 42; required uint32 marry_ship = 43; repeated SHIP_TAKING_DATA taking_ship_list = 44; repeated uint32 soundstory = 45; @@ -71,6 +71,7 @@ message SC_11003 { repeated uint32 battle_ui_list = 49; required uint32 battle_ui = 50; repeated KVDATA activity_medals = 51; + required uint32 new_guide_index = 52; } // .p11.sc_11003 message SC_11004 { @@ -104,7 +105,7 @@ message SC_11010 { } // .p11.sc_11010 message CS_11011 { - repeated uint32 character = 1; + repeated KVDATA character = 1; } // .p11.cs_11011 message SC_11012 { @@ -126,6 +127,7 @@ message SC_11015 { message CS_11016 { required uint32 guide_index = 1; + required uint32 type = 2; } // .p11.cs_11016 message CS_11017 { @@ -238,7 +240,6 @@ message SC_11203 { repeated BUILDINFO build = 3; repeated uint32 number = 4; repeated RETURN_USER_INFO return_user_list = 5; - optional INS_MESSAGE ins_message = 6; repeated COLLECTIONINFO collection_list = 7; repeated TASKINFO task_list = 8; } // .p11.sc_11203 @@ -427,7 +428,6 @@ message ACTIVITYINFO { repeated uint32 data3_list = 9; repeated KEYVALUELIST date1_key_value_list = 10; repeated GROUPINFO group_list = 11; - repeated INS_MESSAGE ins_message_list = 12; repeated COLLECTIONINFO collection_list = 13; repeated TASKINFO task_list = 14; repeated BENEFITBUFF buff_list = 15; @@ -447,6 +447,7 @@ message NOTICEINFO { required uint32 icon = 9; required string track = 10; required uint32 priority = 11; + required uint32 need_level = 12; } // .p11.noticeinfo message CARDINFO { @@ -512,6 +513,15 @@ message SC_11704 { optional INS_MESSAGE data = 2; } // .p11.sc_11704 +message CS_11705 { + required uint32 index_begin = 1; + required uint32 index_end = 2; +} // .p11.cs_11705 + +message SC_11706 { + repeated INS_MESSAGE ins_message_list = 1; +} // .p11.sc_11706 + message CS_11710 { required uint32 type = 1; } // .p11.cs_11710 diff --git a/blcrack/cracker/proto/p12.proto b/blcrack/cracker/proto/p12.proto index ada915b4a..5a74d5f9c 100644 --- a/blcrack/cracker/proto/p12.proto +++ b/blcrack/cracker/proto/p12.proto @@ -255,6 +255,7 @@ message SC_12201 { message CS_12202 { required uint32 ship_id = 1; required uint32 skin_id = 2; + required uint32 skin_shadow = 3; } // .p12.cs_12202 message SC_12203 { @@ -278,14 +279,30 @@ message SC_12207 { } // .p12.sc_12207 message CS_12208 { - repeated uint32 add_list = 1; - repeated uint32 del_list = 2; + repeated KVDATA2 ship_shadow_list = 1; } // .p12.cs_12208 message SC_12209 { required uint32 result = 1; } // .p12.sc_12209 +message CS_12210 { + required uint32 ship_id = 1; + required uint32 skin_shadow_id = 2; +} // .p12.cs_12210 + +message SC_12211 { + required uint32 result = 1; +} // .p12.sc_12211 + +message CS_12212 { + repeated uint32 ship_id_list = 1; +} // .p12.cs_12212 + +message SC_12213 { + repeated KVDATA ship_count_list = 1; +} // .p12.sc_12213 + message CS_12299 { required uint32 num = 1; } // .p12.cs_12299 diff --git a/blcrack/cracker/proto/p13.proto b/blcrack/cracker/proto/p13.proto index f2bf66fd9..9f242d092 100644 --- a/blcrack/cracker/proto/p13.proto +++ b/blcrack/cracker/proto/p13.proto @@ -101,6 +101,7 @@ message SC_13104 { repeated uint32 add_flag_list = 12; repeated uint32 del_flag_list = 13; repeated CELLFLAG cell_flag_list = 14; + repeated DROPINFO extra_drop_list = 15; } // .p13.sc_13104 message SC_13105 { diff --git a/blcrack/cracker/proto/p17.proto b/blcrack/cracker/proto/p17.proto index a91c52e37..f46cdb747 100644 --- a/blcrack/cracker/proto/p17.proto +++ b/blcrack/cracker/proto/p17.proto @@ -168,6 +168,15 @@ message SC_17512 { required uint32 result = 1; } // .p17.sc_17512 +message CS_17513 { + required uint32 music_no = 1; + required uint32 music_mode = 2; +} // .p17.cs_17513 + +message SC_17514 { + required uint32 result = 1; +} // .p17.sc_17514 + message CS_17601 { required uint32 shipgroup = 1; } // .p17.cs_17601 diff --git a/blcrack/cracker/proto/p21.proto b/blcrack/cracker/proto/p21.proto new file mode 100644 index 000000000..6861d73b8 --- /dev/null +++ b/blcrack/cracker/proto/p21.proto @@ -0,0 +1,799 @@ +syntax = "proto2"; + +package p21; + +import "common.proto"; + +message CS_21000 { + required uint32 type = 1; +} // .p21.cs_21000 + +message SC_21001 { + required uint32 ret = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21001 + +message CS_21002 { + repeated uint32 open_flag = 1; + repeated uint32 close_flag = 2; +} // .p21.cs_21002 + +message SC_21003 { + required uint32 result = 1; +} // .p21.sc_21003 + +message CS_21004 { + required string name = 1; + required uint32 type = 2; +} // .p21.cs_21004 + +message SC_21005 { + required uint32 ret = 1; +} // .p21.sc_21005 + +message CS_21006 { + required uint32 type = 1; +} // .p21.cs_21006 + +message SC_21007 { + required uint32 result = 1; + repeated PB_ISLAND_ITEM item_list = 2; +} // .p21.sc_21007 + +message CS_21010 { + required uint32 level = 1; +} // .p21.cs_21010 + +message SC_21011 { + required uint32 ret = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21011 + +message CS_21012 { + required uint32 type = 1; +} // .p21.cs_21012 + +message SC_21013 { + required uint32 ret = 1; +} // .p21.sc_21013 + +message CS_21014 { + required uint32 type = 1; + repeated PB_ISLAND_ITEM item_list = 2; +} // .p21.cs_21014 + +message SC_21015 { + required uint32 result = 1; + repeated PB_ISLAND_ITEM item_list = 2; +} // .p21.sc_21015 + +message CS_21016 { + required uint32 shop_id = 1; +} // .p21.cs_21016 + +message SC_21017 { + required uint32 result = 1; + optional PB_SHOP shop_info = 2; +} // .p21.sc_21017 + +message CS_21018 { + required uint32 shop_id = 1; + required uint32 goods_id = 2; + required uint32 num = 3; +} // .p21.cs_21018 + +message SC_21019 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21019 + +message CS_21020 { + required uint32 shop_id = 1; +} // .p21.cs_21020 + +message SC_21021 { + required uint32 result = 1; + optional PB_SHOP shop_info = 2; +} // .p21.sc_21021 + +message CS_21026 { + required uint32 id = 1; + required uint32 count = 2; + repeated uint32 arg = 3; +} // .p21.cs_21026 + +message SC_21027 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; + repeated PB_ISLAND_SHIP ship_list = 3; +} // .p21.sc_21027 + +message CS_21030 { + required uint32 type = 1; +} // .p21.cs_21030 + +message SC_21031 { + repeated uint32 remove_task_list = 1; + repeated uint32 remove_task_finish = 2; + repeated PB_TASK_RANDOM task_list_random = 3; +} // .p21.sc_21031 + +message CS_21032 { + repeated uint32 task_id_list = 1; +} // .p21.cs_21032 + +message SC_21033 { + repeated PB_TASK task_list = 1; +} // .p21.sc_21033 + +message CS_21034 { + required uint32 task_id = 1; +} // .p21.cs_21034 + +message SC_21035 { + required uint32 result = 1; +} // .p21.sc_21035 + +message CS_21036 { + required uint32 task_id = 1; + required uint32 target_id = 2; + required uint32 target_count = 3; +} // .p21.cs_21036 + +message SC_21037 { + required uint32 result = 1; + repeated PB_TASK task_list = 2; +} // .p21.sc_21037 + +message CS_21038 { + required uint32 task_id = 1; +} // .p21.cs_21038 + +message SC_21039 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21039 + +message SC_21040 { + repeated PB_TASK task_list = 1; +} // .p21.sc_21040 + +message CS_21200 { + required uint32 island_id = 1; +} // .p21.cs_21200 + +message SC_21201 { + required PB_ISLAND island = 1; +} // .p21.sc_21201 + +message CS_21202 { + required uint32 island_id = 1; +} // .p21.cs_21202 + +message SC_21203 { + required uint32 result = 1; + repeated PB_PLAYER player_list = 2; +} // .p21.sc_21203 + +message CS_21204 { + required uint32 island_id = 1; +} // .p21.cs_21204 + +message SC_21205 { + required uint32 result = 1; +} // .p21.sc_21205 + +message SC_21206 { + required uint32 island_id = 1; + repeated PB_PLAYER player_list = 2; +} // .p21.sc_21206 + +message SC_21207 { + required uint32 island_id = 1; + repeated PB_OBJECT object_list = 2; +} // .p21.sc_21207 + +message CS_21209 { + required uint32 island_id = 1; + required uint32 obj_id = 2; + required uint32 slot_id = 3; + required uint32 mseconds = 4; +} // .p21.cs_21209 + +message SC_21210 { + required uint32 result = 1; +} // .p21.sc_21210 + +message CS_21211 { + required uint32 island_id = 1; + repeated PB_SYNC_OBJECT sync_ob_list = 2; +} // .p21.cs_21211 + +message SC_21212 { + repeated PB_SYNC_OBJECT sync_ob_list = 1; +} // .p21.sc_21212 + +message CS_21213 { + required uint32 island_id = 1; + required uint32 map_id = 2; +} // .p21.cs_21213 + +message SC_21214 { + required uint32 result = 1; + repeated PB_OBJECT object_list = 2; +} // .p21.sc_21214 + +message CS_21215 { + required uint32 island_id = 1; +} // .p21.cs_21215 + +message CS_21300 { + required uint32 open_flag = 1; +} // .p21.cs_21300 + +message SC_21301 { + required uint32 result = 1; +} // .p21.sc_21301 + +message CS_21302 { + required uint32 cmd = 1; + repeated uint32 user_id_list = 2; +} // .p21.cs_21302 + +message SC_21303 { + required uint32 result = 1; +} // .p21.sc_21303 + +message SC_21304 { + required uint32 timestamp = 1; +} // .p21.sc_21304 + +message CS_21305 { + required uint32 type = 1; +} // .p21.cs_21305 + +message SC_21306 { + required uint32 result = 1; +} // .p21.sc_21306 + +message CS_21307 { + repeated PB_PLACEMENT_DATA update_list = 1; + repeated PB_PLACEMENT_DATA delete_list = 2; + repeated PB_PLACEMENT_DATA add_list = 3; +} // .p21.cs_21307 + +message SC_21308 { + required uint32 result = 1; +} // .p21.sc_21308 + +message SC_21309 { + required uint32 island_id = 1; + repeated PB_PLACEMENT_DATA update_list = 2; + repeated PB_PLACEMENT_DATA delete_list = 3; + repeated PB_PLACEMENT_DATA add_list = 4; +} // .p21.sc_21309 + +message CS_21310 { + required uint32 island_id = 1; +} // .p21.cs_21310 + +message SC_21311 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21311 + +message CS_21312 { + repeated uint32 friend_list = 1; +} // .p21.cs_21312 + +message SC_21313 { + required uint32 result = 1; +} // .p21.sc_21313 + +message SC_21314 { + required uint32 island_id = 1; + required uint32 gift_count = 2; +} // .p21.sc_21314 + +message CS_21401 { + required uint32 slot_id = 1; +} // .p21.cs_21401 + +message SC_21402 { + required uint32 result = 1; + required PB_ISLAND_ORDER_SLOT slot = 2; + repeated DROPINFO drop_list = 3; +} // .p21.sc_21402 + +message CS_21403 { + required uint32 slot_id = 1; +} // .p21.cs_21403 + +message SC_21404 { + required uint32 result = 1; + required PB_ISLAND_ORDER_SLOT slot = 2; +} // .p21.sc_21404 + +message CS_21405 { + required uint32 slot_id = 1; +} // .p21.cs_21405 + +message SC_21406 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21406 + +message SC_21407 { + required uint32 island_id = 1; + required PB_ISLAND_ORDER_SLOT order_info = 2; +} // .p21.sc_21407 + +message CS_21408 { + required uint32 type = 1; + required uint32 ship_slot_id = 2; +} // .p21.cs_21408 + +message SC_21409 { + required uint32 result = 1; + required PB_ISLAND_ORDER_SHIP_SLOT slot = 2; + repeated DROPINFO drop_list = 3; +} // .p21.sc_21409 + +message CS_21410 { + required uint32 type = 1; +} // .p21.cs_21410 + +message SC_21411 { + required uint32 result = 1; +} // .p21.sc_21411 + +message CS_21412 { + required uint32 lv = 1; +} // .p21.cs_21412 + +message SC_21413 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21413 + +message CS_21414 { + required uint32 order_id = 1; +} // .p21.cs_21414 + +message SC_21415 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21415 + +message CS_21416 { + required uint32 ship_slot_id = 1; + required uint32 item_id = 2; +} // .p21.cs_21416 + +message SC_21417 { + required uint32 result = 1; + optional uint32 get_time = 2; + repeated DROPINFO drop_list = 3; +} // .p21.sc_21417 + +message CS_21501 { + required uint32 build_id = 1; + required uint32 area_id = 2; + required uint32 ship_id = 3; + required uint32 formula_id = 4; + required uint32 num = 5; +} // .p21.cs_21501 + +message SC_21502 { + required uint32 result = 1; + required PB_ISLAND_SHIP_APPOINT ship_appoint = 2; +} // .p21.sc_21502 + +message CS_21503 { + required uint32 build_id = 1; + required uint32 area_id = 2; +} // .p21.cs_21503 + +message SC_21504 { + required uint32 result = 1; + required uint32 ship_id = 2; + required uint32 cur_energy = 3; + required uint32 add_exp = 4; + required uint32 recover_time = 5; + repeated PB_ISLAND_APPOINT_AREA_AWARD award = 6; + required uint32 return_num = 7; +} // .p21.sc_21504 + +message CS_21505 { + required uint32 type = 1; + required uint32 build_id = 2; + required uint32 area_id = 3; +} // .p21.cs_21505 + +message SC_21506 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; + required uint32 get_times = 3; +} // .p21.sc_21506 + +message CS_21507 { + required uint32 build_id = 1; + required uint32 area_id = 2; +} // .p21.cs_21507 + +message SC_21508 { + required uint32 result = 1; + required PB_ISLAND_COLLECT_AREA collect_area = 2; + repeated DROPINFO drop_list = 3; +} // .p21.sc_21508 + +message CS_21509 { + required uint32 build_id = 1; + required uint32 area_id = 2; + required uint32 formula_id = 3; +} // .p21.cs_21509 + +message SC_21510 { + required uint32 result = 1; + required PB_ISLAND_HAND_AREA hand_area = 2; +} // .p21.sc_21510 + +message CS_21511 { + required uint32 build_id = 1; + required uint32 area_id = 2; +} // .p21.cs_21511 + +message SC_21512 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21512 + +message CS_21513 { + required uint32 build_id = 1; + required uint32 area_id = 2; + required uint32 item_id = 3; + required uint32 num = 4; +} // .p21.cs_21513 + +message SC_21514 { + required uint32 result = 1; + required uint32 item_times = 2; +} // .p21.sc_21514 + +message SC_21515 { + required PB_ISLAND_COLLECT_AREA collect = 1; +} // .p21.sc_21515 + +message CS_21516 { + required uint32 build_id = 1; + required uint32 area_id = 2; +} // .p21.cs_21516 + +message SC_21517 { + required uint32 result = 1; +} // .p21.sc_21517 + +message SC_21518 { + required uint32 area_id = 1; + required uint32 formula_id = 2; + required uint32 num = 3; +} // .p21.sc_21518 + +message SC_21519 { + required PB_ISLAND_BUILD build = 1; +} // .p21.sc_21519 + +message CS_21520 { + required uint32 tech_id = 1; +} // .p21.cs_21520 + +message SC_21521 { + required uint32 result = 1; +} // .p21.sc_21521 + +message CS_21522 { + required uint32 tech_id = 1; +} // .p21.cs_21522 + +message SC_21523 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21523 + +message PB_ISLAND { + required PB_ISLAND_PUBLIC public_data = 1; + optional PB_ISLAND_PRIVATE private_data = 2; +} // .p21.pb_island + +message PB_ISLAND_PUBLIC { + required uint32 id = 1; + required uint32 level = 2; + required uint32 exp = 3; + required uint32 storage_level = 4; + required string name = 5; + required PB_ISLAND_TECH tech = 6; + required uint32 prosperity = 7; + repeated uint32 ability_list = 8; + repeated uint32 prosperity_rewarded = 9; + repeated PB_ISLAND_SHIP ship_list = 10; + required uint32 agora_level = 11; + repeated PB_PLACEMENT_DATA placed_list = 12; + repeated uint32 flag_list = 13; + required uint32 tree_gift_timestamp = 14; + required uint32 tree_gift_count = 15; + repeated uint32 tree_gift_invited = 16; +} // .p21.pb_island_public + +message PB_ISLAND_PRIVATE { + required uint32 open_flag = 1; + repeated uint32 white_list = 2; + repeated uint32 black_list = 3; + repeated PB_PLAYER visitor_history = 4; + repeated PB_ISLAND_ITEM item_list = 5; + repeated PB_ISLAND_ITEM item_list_cache = 6; + repeated PB_FURNITURE furniture_list = 7; + repeated PB_SHOP shop_list = 8; + repeated PB_ISLAND_BUILD build_list = 9; + optional PB_ISLAND_ORDER_SYSTEM order_system = 10; + required PB_ISLAND_TASK task_info = 11; + required uint32 daily_timestamp = 12; + repeated KVDATA daily_list = 13; +} // .p21.pb_island_private + +message PB_PLAYER { + required uint32 id = 1; + required uint32 state = 2; + required string name = 3; + required uint32 level = 4; + required DISPLAYINFO display = 5; + required uint32 map_id = 6; +} // .p21.pb_player + +message PB_ISLAND_TECH { + repeated uint32 finish_list = 1; + repeated PB_REPEAT_FINISH repeat_finish_list = 2; +} // .p21.pb_island_tech + +message PB_REPEAT_FINISH { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_repeat_finish + +message PB_ISLAND_BUILD { + required uint32 id = 1; + required uint32 lv = 2; + repeated PB_ISLAND_SHIP_APPOINT ship_appoint_list = 3; + repeated PB_ISLAND_APPOINT_AREA_AWARD award_list = 4; + repeated PB_ISLAND_APPOINT_AREA appoint_list = 5; + repeated PB_ISLAND_COLLECT_AREA collect_list = 6; + repeated PB_ISLAND_HAND_AREA hand_list = 7; +} // .p21.pb_island_build + +message PB_ISLAND_SHIP_APPOINT { + required uint32 id = 1; + required uint32 ship_id = 2; + required uint32 max_times = 3; + required uint32 get_times = 4; + required uint32 formula_id = 5; + required uint32 start_time = 6; + required uint32 end_time = 7; + required uint32 once_cost_time = 8; + required uint32 once_cost_power = 9; + required uint32 item_times = 10; +} // .p21.pb_island_ship_appoint + +message PB_ISLAND_APPOINT_AREA_AWARD { + required uint32 id = 1; + required uint32 formula_id = 2; + repeated PB_FORMULA_DROP_INFO formula_drop_list = 3; +} // .p21.pb_island_appoint_area_award + +message PB_FORMULA_DROP_INFO { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_formula_drop_info + +message PB_ISLAND_APPOINT_AREA { + required uint32 id = 1; + required uint32 part_num = 2; + repeated PB_USE_FORMULA formula_list = 3; +} // .p21.pb_island_appoint_area + +message PB_USE_FORMULA { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_use_formula + +message PB_ISLAND_COLLECT_AREA { + required uint32 id = 1; + required uint32 pos = 2; + required uint32 get_num = 3; + required uint32 refresh_time = 4; +} // .p21.pb_island_collect_area + +message PB_ISLAND_HAND_AREA { + required uint32 id = 1; + required uint32 state = 2; + required uint32 formula_id = 3; + required uint32 end_time = 4; +} // .p21.pb_island_hand_area + +message PB_ISLAND_ITEM { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_island_item + +message PB_ISLAND_ORDER_SYSTEM { + required uint32 favor = 1; + repeated uint32 get_favor = 2; + required uint32 daily_select = 3; + required uint32 daily_slot_num = 4; + required uint32 time_slot_num = 5; + repeated PB_ISLAND_ORDER_SLOT slot_list = 6; + repeated PB_ISLAND_ORDER_SHIP_SLOT ship_slot_list = 7; +} // .p21.pb_island_order_system + +message PB_ISLAND_ORDER_SLOT { + required uint32 id = 1; + required uint32 type = 2; + required uint32 cur_select = 3; + required uint32 start_time = 4; + required uint32 submit_time = 5; + required uint32 position = 6; + required uint32 dialog_id = 7; + repeated PB_ISLAND_ITEM cost = 8; + required PB_ISLAND_ORDER_AWARD reward = 9; + required uint32 view_flag = 10; +} // .p21.pb_island_order_slot + +message PB_ISLAND_ORDER_SHIP_SLOT { + required uint32 id = 1; + required uint32 state = 2; + required uint32 load_time = 3; + required uint32 get_time = 4; + repeated PB_ISLAND_ORDER_SHIP_LOAD cost = 5; + repeated PB_ISLAND_ITEM reward = 6; +} // .p21.pb_island_order_ship_slot + +message PB_ISLAND_ORDER_SHIP_LOAD { + required uint32 id = 1; + required uint32 num = 2; + required uint32 state = 3; +} // .p21.pb_island_order_ship_load + +message PB_ISLAND_ORDER_AWARD { + repeated PB_ISLAND_ITEM item_list = 1; + required uint32 exp = 2; +} // .p21.pb_island_order_award + +message PB_ISLAND_SHIP { + required uint32 id = 1; + required uint32 tid = 2; + required uint32 level = 3; + required uint32 exp = 4; + required uint32 energy = 5; + repeated uint32 skill_list = 6; + repeated PB_SHIP_BUFF buff_list = 7; + required uint32 vow_gift = 8; + required uint32 recover_time = 9; +} // .p21.pb_island_ship + +message PB_SHIP_BUFF { + required uint32 id = 1; + required uint32 end_time = 2; +} // .p21.pb_ship_buff + +message PB_ISLAND_BUILDING { + required uint32 id = 1; + required uint32 level = 2; + repeated PB_ISLAND_BUILDING_APPOINT appoint_list = 3; + repeated PB_ISLAND_BUILDING_AREA area_list = 4; +} // .p21.pb_island_building + +message PB_ISLAND_BUILDING_APPOINT { + required uint32 appoint_pos = 1; + required uint32 role_id = 2; + required uint32 start_time = 3; + required uint32 formula_id = 4; +} // .p21.pb_island_building_appoint + +message PB_ISLAND_BUILDING_AREA { + required uint32 area_id = 1; + required uint32 status = 2; + required uint32 start_time = 3; + required uint32 formula_id = 4; +} // .p21.pb_island_building_area + +message PB_VECTOR3 { + required float x = 1; + required float y = 2; + required float z = 3; +} // .p21.pb_vector3 + +message PB_OBJECT { + required uint32 id = 1; + required uint32 type = 2; + required uint32 tid = 3; + repeated PB_SLOT slots = 4; + required uint32 state = 5; +} // .p21.pb_object + +message PB_SYNC_OBJECT { + required uint32 id = 1; + optional PB_VECTOR_3 pos = 2; + optional PB_QUATERNION dir = 3; + optional uint32 status = 4; +} // .p21.pb_sync_object + +message PB_SLOT { + required uint32 slot_id = 1; + required uint32 owner_id = 2; +} // .p21.pb_slot + +message PB_VECTOR_3 { + required float x = 1; + required float y = 2; + required float z = 3; +} // .p21.pb_vector_3 + +message PB_QUATERNION { + required float x = 1; + required float y = 2; + required float z = 3; + required float w = 4; +} // .p21.pb_quaternion + +message PB_AGORA { + required uint32 level = 1; + repeated PB_FURNITURE furniture_list = 2; + repeated PB_PLACEMENT_DATA placed_list = 3; +} // .p21.pb_agora + +message PB_FURNITURE { + required uint32 id = 1; + required uint32 count = 2; +} // .p21.pb_furniture + +message PB_PLACEMENT_DATA { + required uint32 id = 1; + required int32 x = 2; + required int32 y = 3; + required uint32 dir = 4; +} // .p21.pb_placement_data + +message PB_SHOP { + required uint32 id = 1; + required uint32 exist_time = 2; + required uint32 refresh_time = 3; + repeated PB_GOODS goods_list = 4; + required uint32 refresh_count = 5; +} // .p21.pb_shop + +message PB_GOODS { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_goods + +message PB_ISLAND_TASK { + repeated uint32 task_id_list_finish = 1; + repeated PB_TASK task_list = 2; + repeated PB_TASK_RANDOM task_list_random = 3; + required uint32 focus_id = 4; +} // .p21.pb_island_task + +message PB_TASK { + required uint32 id = 1; + required uint32 timestamp = 2; + repeated PB_TASK_PROCESS process_list = 3; +} // .p21.pb_task + +message PB_TASK_PROCESS { + required uint32 target_id = 1; + required uint32 target_count = 2; +} // .p21.pb_task_process + +message PB_TASK_RANDOM { + required uint32 task_id = 1; + required uint32 timestamp = 2; +} // .p21.pb_task_random + diff --git a/blcrack/cracker/proto/p22.proto b/blcrack/cracker/proto/p22.proto index 6957ad371..24fdfbf6c 100644 --- a/blcrack/cracker/proto/p22.proto +++ b/blcrack/cracker/proto/p22.proto @@ -110,3 +110,33 @@ message SKILL_CLASS { required uint32 exp = 6; } // .p22.skill_class +message SC_22300 { + repeated TUTHANDBOOK handbooks = 1; + repeated uint32 finished_task_ids = 2; +} // .p22.sc_22300 + +message CS_22302 { + required uint32 id = 1; + required uint32 index = 2; +} // .p22.cs_22302 + +message SC_22303 { + required uint32 result = 1; +} // .p22.sc_22303 + +message CS_22304 { + required uint32 id = 1; +} // .p22.cs_22304 + +message SC_22305 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p22.sc_22305 + +message TUTHANDBOOK { + required uint32 id = 1; + required uint32 pt = 2; + required uint32 award = 3; + repeated uint32 finished_task_ids = 4; +} // .p22.tuthandbook + diff --git a/blcrack/cracker/proto/p28.proto b/blcrack/cracker/proto/p28.proto index 2b1ba6a28..f65376037 100644 --- a/blcrack/cracker/proto/p28.proto +++ b/blcrack/cracker/proto/p28.proto @@ -186,6 +186,21 @@ message SC_28037 { required uint32 result = 1; } // .p28.sc_28037 +message CS_28038 { + required uint32 ship_group = 1; + required uint32 skin_id = 2; + repeated uint32 hidden_parts = 3; +} // .p28.cs_28038 + +message SC_28039 { + required uint32 result = 1; +} // .p28.sc_28039 + +message SKIN_HIDDEN_INFO { + required uint32 skin_id = 1; + repeated uint32 hidden_parts = 2; +} // .p28.skin_hidden_info + message APARTMENT_GIVE_GIFT { required uint32 gift_id = 1; required uint32 number = 2; @@ -209,6 +224,7 @@ message APARTMENT_SHIP { required string name = 9; required uint32 name_cd = 10; required uint32 visit_time = 11; + repeated SKIN_HIDDEN_INFO hidden_info = 12; } // .p28.apartment_ship message APARTMENT_INS { diff --git a/blcrack/cracker/proto/p40.proto b/blcrack/cracker/proto/p40.proto index 8a72fb94f..053f6199e 100644 --- a/blcrack/cracker/proto/p40.proto +++ b/blcrack/cracker/proto/p40.proto @@ -77,6 +77,7 @@ message SC_40009 { message QUICK_REWARD { repeated DROPINFO drop_list = 1; + repeated DROPINFO extra_drop_list = 2; } // .p40.quick_reward message DROPPERFORMANCE { diff --git a/blcrack/cracker/proto/p64.proto b/blcrack/cracker/proto/p64.proto index 9910f2a74..6ae4f900f 100644 --- a/blcrack/cracker/proto/p64.proto +++ b/blcrack/cracker/proto/p64.proto @@ -67,3 +67,21 @@ message TECHSET { required uint32 set_value = 3; } // .p64.techset +message CS_64990 { + required uint32 test = 1; +} // .p64.cs_64990 + +message SC_64991 { + required TEMP_TEST test = 1; + optional TEMP_TEST test2 = 2; +} // .p64.sc_64991 + +message TEMP_TEST { + optional TESTTT message_test = 1; + optional uint32 int_test = 2; +} // .p64.temp_test + +message TESTTT { + required uint32 test = 1; +} // .p64.testtt +