From 74e2ed583cf11abfb8cb7cf03b4d074fb9af294d Mon Sep 17 00:00:00 2001 From: 0O0o0oOoO00 <11174151+0O0o0oOoO00@users.noreply.github.com> Date: Thu, 20 Nov 2025 19:17:22 +0800 Subject: [PATCH] upd: game net proto --- blcrack/cracker/proto/p11.proto | 8 + blcrack/cracker/proto/p12.proto | 8 + blcrack/cracker/proto/p14.proto | 3 +- blcrack/cracker/proto/p20.proto | 15 + blcrack/cracker/proto/p21.proto | 1153 +++++++++++++++++++++++++++---- blcrack/cracker/proto/p26.proto | 121 ++++ blcrack/cracker/proto/p34.proto | 1 + blcrack/cracker/proto/p50.proto | 10 +- 8 files changed, 1199 insertions(+), 120 deletions(-) diff --git a/blcrack/cracker/proto/p11.proto b/blcrack/cracker/proto/p11.proto index 205e5435f..429f66cdf 100644 --- a/blcrack/cracker/proto/p11.proto +++ b/blcrack/cracker/proto/p11.proto @@ -196,6 +196,14 @@ message SC_11031 { required uint32 result = 1; } // .p11.sc_11031 +message CS_11032 { + repeated uint32 story_ids = 1; +} // .p11.cs_11032 + +message SC_11033 { + required uint32 result = 1; +} // .p11.sc_11033 + message CS_11100 { required string cmd = 1; optional string arg1 = 2; diff --git a/blcrack/cracker/proto/p12.proto b/blcrack/cracker/proto/p12.proto index 5a74d5f9c..b3afdea91 100644 --- a/blcrack/cracker/proto/p12.proto +++ b/blcrack/cracker/proto/p12.proto @@ -250,8 +250,16 @@ message SC_12201 { repeated IDTIMEINFO skin_list = 1; repeated uint32 forbidden_skin_list = 2; repeated uint32 forbidden_skin_type = 3; + repeated SKIN_FORBIDDEN forbidden_list = 4; } // .p12.sc_12201 +message SKIN_FORBIDDEN { + required uint32 id = 1; + required uint32 type = 2; + required uint32 start_time = 3; + required uint32 stop_time = 4; +} // .p12.skin_forbidden + message CS_12202 { required uint32 ship_id = 1; required uint32 skin_id = 2; diff --git a/blcrack/cracker/proto/p14.proto b/blcrack/cracker/proto/p14.proto index 33e2b2a60..0049468d8 100644 --- a/blcrack/cracker/proto/p14.proto +++ b/blcrack/cracker/proto/p14.proto @@ -14,6 +14,7 @@ message SC_14001 { message CS_14002 { required uint32 ship_id = 1; required uint32 pos = 2; + required uint32 lv = 3; } // .p14.cs_14002 message SC_14003 { @@ -22,7 +23,7 @@ message SC_14003 { message CS_14004 { required uint32 equip_id = 1; - required uint32 type = 2; + required uint32 lv = 2; } // .p14.cs_14004 message SC_14005 { diff --git a/blcrack/cracker/proto/p20.proto b/blcrack/cracker/proto/p20.proto index e5969aa1c..6a1defc13 100644 --- a/blcrack/cracker/proto/p20.proto +++ b/blcrack/cracker/proto/p20.proto @@ -194,6 +194,14 @@ message SC_20208 { repeated DROPINFO award_list = 2; } // .p20.sc_20208 +message CS_20209 { + repeated ACT_TASK_UPDATE progressinfo = 1; +} // .p20.cs_20209 + +message SC_20210 { + required uint32 result = 1; +} // .p20.sc_20210 + message ACT_TASK_LIST { required uint32 act_id = 1; repeated ACT_TASK tasks = 2; @@ -210,3 +218,10 @@ message ACT_TASK { required uint32 progress = 2; } // .p20.act_task +message ACT_TASK_UPDATE { + required uint32 act_id = 1; + required uint32 task_id = 2; + required uint32 mode = 3; + required uint32 progress = 4; +} // .p20.act_task_update + diff --git a/blcrack/cracker/proto/p21.proto b/blcrack/cracker/proto/p21.proto index 6861d73b8..be174e8c6 100644 --- a/blcrack/cracker/proto/p21.proto +++ b/blcrack/cracker/proto/p21.proto @@ -40,6 +40,15 @@ message SC_21007 { repeated PB_ISLAND_ITEM item_list = 2; } // .p21.sc_21007 +message CS_21008 { + required uint32 type = 1; +} // .p21.cs_21008 + +message SC_21009 { + required uint32 result = 1; + required string invite_code = 2; +} // .p21.sc_21009 + message CS_21010 { required uint32 level = 1; } // .p21.cs_21010 @@ -77,9 +86,7 @@ message SC_21017 { } // .p21.sc_21017 message CS_21018 { - required uint32 shop_id = 1; - required uint32 goods_id = 2; - required uint32 num = 3; + repeated KVDATA2 goods_list = 1; } // .p21.cs_21018 message SC_21019 { @@ -96,6 +103,26 @@ message SC_21021 { optional PB_SHOP shop_info = 2; } // .p21.sc_21021 +message CS_21022 { + required uint32 target_pt = 1; +} // .p21.cs_21022 + +message SC_21023 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21023 + +message CS_21024 { + required uint32 type = 1; +} // .p21.cs_21024 + +message SC_21025 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; + optional PB_ISLAND_SEASON_REVIEW season_review = 3; + optional PB_ISLAND_ORDER_SYSTEM order_sys = 4; +} // .p21.sc_21025 + message CS_21026 { required uint32 id = 1; required uint32 count = 2; @@ -115,7 +142,8 @@ message 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; + repeated PB_TASK task_list = 3; + repeated PB_TASK_RANDOM task_list_random = 4; } // .p21.sc_21031 message CS_21032 { @@ -158,21 +186,57 @@ message SC_21040 { repeated PB_TASK task_list = 1; } // .p21.sc_21040 +message CS_21041 { + repeated uint32 task_ids = 1; +} // .p21.cs_21041 + +message SC_21042 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21042 + +message SC_21043 { + repeated PB_TASK task_list = 1; + repeated PB_TASK_RANDOM task_list_random = 2; +} // .p21.sc_21043 + +message CS_21050 { + repeated uint32 id_list = 1; +} // .p21.cs_21050 + +message SC_21051 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21051 + +message CS_21052 { + repeated PB_ISLAND_ACHIEVENT event_list = 1; +} // .p21.cs_21052 + +message SC_21053 { + repeated PB_ISLAND_ACHIEVENT event_list = 1; +} // .p21.sc_21053 + message CS_21200 { required uint32 island_id = 1; } // .p21.cs_21200 message SC_21201 { required PB_ISLAND island = 1; + required PB_PLAYER_POS_RECORD player_position = 2; } // .p21.sc_21201 message CS_21202 { required uint32 island_id = 1; + optional string code = 2; } // .p21.cs_21202 message SC_21203 { required uint32 result = 1; repeated PB_PLAYER player_list = 2; + required uint32 island_id = 3; + required uint32 pos = 4; + required uint32 cd = 5; } // .p21.sc_21203 message CS_21204 { @@ -193,11 +257,17 @@ message SC_21207 { repeated PB_OBJECT object_list = 2; } // .p21.sc_21207 +message CS_21208 { + required uint32 island_id = 1; +} // .p21.cs_21208 + message CS_21209 { required uint32 island_id = 1; required uint32 obj_id = 2; required uint32 slot_id = 3; - required uint32 mseconds = 4; + required uint32 op = 4; + required uint32 status = 5; + required uint32 type = 6; } // .p21.cs_21209 message SC_21210 { @@ -221,12 +291,98 @@ message CS_21213 { message SC_21214 { required uint32 result = 1; repeated PB_OBJECT object_list = 2; + repeated PB_ISLAND_WILD_GATHER gather_list = 3; + repeated PB_ISLAND_COLLECT_FRAGMENT fragment_list = 4; + repeated PB_ISLAND_NPC npc_list = 5; } // .p21.sc_21214 message CS_21215 { required uint32 island_id = 1; } // .p21.cs_21215 +message SC_21216 { + repeated PB_VISITOR visitor_list = 1; +} // .p21.sc_21216 + +message SC_21217 { + required uint32 island_id = 1; + required uint32 build_id = 2; +} // .p21.sc_21217 + +message SC_21218 { + required uint32 island_id = 1; + required uint32 slot_id = 2; +} // .p21.sc_21218 + +message SC_21219 { + required uint32 island_id = 1; + required uint32 animal_id = 2; +} // .p21.sc_21219 + +message SC_21220 { + required uint32 island_id = 1; + required PB_ISLAND_SHIP_APPOINT appoint_data = 2; +} // .p21.sc_21220 + +message SC_21221 { + required uint32 island_id = 1; + repeated PB_ISLAND_HAND_AREA hand_list = 2; +} // .p21.sc_21221 + +message SC_21222 { + required uint32 island_id = 1; + repeated uint32 slot_list = 2; +} // .p21.sc_21222 + +message SC_21223 { + required uint32 island_id = 1; + required uint32 ship_id = 2; + required uint32 skin_id = 3; + required uint32 skin_color = 4; + repeated uint32 unload_dress = 5; + repeated PB_ISLAND_SHIP_WEAR dress_List = 6; +} // .p21.sc_21223 + +message SC_21224 { + required uint32 island_id = 1; + required uint32 user_id = 2; + repeated PB_ISLAND_CUR_DRESS dress_list = 3; + repeated PB_DRESS_COLOR dress_color = 4; +} // .p21.sc_21224 + +message SC_21225 { + required uint32 island_id = 1; + required PB_ISLAND_TRADE trade = 2; +} // .p21.sc_21225 + +message SC_21226 { + required uint32 island_id = 1; + required uint32 slot_id = 2; +} // .p21.sc_21226 + +message SC_21227 { + required uint32 island_id = 1; + required uint32 ability_id = 2; +} // .p21.sc_21227 + +message SC_21228 { + required uint32 island_id = 1; + repeated PB_ISLAND_NPC_PUSH refresh_list = 2; +} // .p21.sc_21228 + +message CS_21229 { + required uint32 island_id = 1; + required PB_PLAYER_POS_RECORD player_position = 2; +} // .p21.cs_21229 + +message CS_21230 { + required uint32 island_id = 1; +} // .p21.cs_21230 + +message SC_21231 { + required uint32 result = 1; +} // .p21.sc_21231 + message CS_21300 { required uint32 open_flag = 1; } // .p21.cs_21300 @@ -257,9 +413,7 @@ message SC_21306 { } // .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; + required PB_PLACEMENT_DATA update_data = 1; } // .p21.cs_21307 message SC_21308 { @@ -268,13 +422,12 @@ message 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; + required PB_PLACEMENT_DATA update_data = 2; } // .p21.sc_21309 message CS_21310 { required uint32 island_id = 1; + required uint32 pos = 2; } // .p21.cs_21310 message SC_21311 { @@ -293,8 +446,172 @@ message SC_21313 { message SC_21314 { required uint32 island_id = 1; required uint32 gift_count = 2; + repeated uint32 gift_visitor = 3; + required uint32 gift_timestamp = 4; + required uint32 cmd = 5; } // .p21.sc_21314 +message CS_21315 { + repeated uint32 user_id_list = 1; +} // .p21.cs_21315 + +message SC_21316 { + repeated KVDATA2 gift_list = 1; +} // .p21.sc_21316 + +message CS_21317 { + required PB_PLACEMENT_THEME theme = 1; +} // .p21.cs_21317 + +message SC_21318 { + required uint32 result = 1; +} // .p21.sc_21318 + +message CS_21319 { + required uint32 id = 1; +} // .p21.cs_21319 + +message SC_21320 { + required uint32 result = 1; +} // .p21.sc_21320 + +message CS_21321 { + required uint32 id = 1; +} // .p21.cs_21321 + +message SC_21322 { + repeated PB_PLACEMENT_THEME theme_list = 1; +} // .p21.sc_21322 + +message CS_21323 { + required uint32 island_id = 1; + required string content = 2; +} // .p21.cs_21323 + +message SC_21324 { + required uint32 result = 1; + required string tip = 2; +} // .p21.sc_21324 + +message SC_21325 { + required uint32 island_id = 1; + required uint32 user_id = 2; + required string content = 3; +} // .p21.sc_21325 + +message CS_21326 { + required uint32 user_id = 1; +} // .p21.cs_21326 + +message SC_21327 { + required string name = 1; + required string picture = 2; + required string visit_word = 3; + required uint32 lv = 4; + required uint32 social_flag = 5; + required uint32 label_view_flag = 6; + repeated PB_ISLAND_LABEL label_list = 7; + repeated uint32 achieve_list = 8; + required uint32 achieve_num = 9; + required uint32 visit_num = 10; + required uint32 good_num = 11; + required uint32 ship_num = 12; + required uint32 book_num = 13; + required uint32 label_flag = 14; + required uint32 good_flag = 15; + required uint32 white_flag = 16; + required uint32 black_flag = 17; +} // .p21.sc_21327 + +message CS_21328 { + required uint32 type = 1; + required string picture = 2; +} // .p21.cs_21328 + +message SC_21329 { + required uint32 result = 1; +} // .p21.sc_21329 + +message CS_21330 { + required string visit_word = 1; +} // .p21.cs_21330 + +message SC_21331 { + required uint32 result = 1; +} // .p21.sc_21331 + +message CS_21332 { + repeated PB_SET_FLAG flag_list = 1; +} // .p21.cs_21332 + +message SC_21333 { + required uint32 result = 1; +} // .p21.sc_21333 + +message CS_21334 { + required uint32 user_id = 1; +} // .p21.cs_21334 + +message SC_21335 { + required uint32 result = 1; +} // .p21.sc_21335 + +message CS_21336 { + required uint32 user_id = 1; + required uint32 label_id = 2; +} // .p21.cs_21336 + +message SC_21337 { + required uint32 result = 1; +} // .p21.sc_21337 + +message CS_21338 { + repeated uint32 group_list = 1; +} // .p21.cs_21338 + +message SC_21339 { + required uint32 result = 1; +} // .p21.sc_21339 + +message CS_21340 { + required uint32 type = 1; + required uint32 cond_id = 2; +} // .p21.cs_21340 + +message SC_21341 { + required uint32 result = 1; +} // .p21.sc_21341 + +message SC_21342 { + repeated PB_ISLAND_ITEM item_list = 1; +} // .p21.sc_21342 + +message CS_21343 { + repeated uint32 book_ids = 1; +} // .p21.cs_21343 + +message SC_21344 { + required uint32 result = 1; +} // .p21.sc_21344 + +message CS_21345 { + repeated uint32 book_ids = 1; +} // .p21.cs_21345 + +message SC_21346 { + required uint32 result = 1; + repeated PB_BOOK_COLLECT collect_list = 2; +} // .p21.sc_21346 + +message CS_21347 { + required uint32 lv = 1; +} // .p21.cs_21347 + +message SC_21348 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21348 + message CS_21401 { required uint32 slot_id = 1; } // .p21.cs_21401 @@ -337,6 +654,7 @@ message SC_21409 { required uint32 result = 1; required PB_ISLAND_ORDER_SHIP_SLOT slot = 2; repeated DROPINFO drop_list = 3; + repeated PB_SHIP_ORDER_APPOINT appoint_list = 4; } // .p21.sc_21409 message CS_21410 { @@ -367,15 +685,92 @@ message SC_21415 { message CS_21416 { required uint32 ship_slot_id = 1; - required uint32 item_id = 2; + repeated uint32 item_id = 2; } // .p21.cs_21416 message SC_21417 { required uint32 result = 1; - optional uint32 get_time = 2; + required uint32 get_time = 2; repeated DROPINFO drop_list = 3; } // .p21.sc_21417 +message CS_21418 { + required uint32 trade_id = 1; + repeated PB_TRADE_POST post_list = 2; + repeated PB_TRADE_FOOD food_list = 3; + required PB_TRADE_PRESELL presell = 4; +} // .p21.cs_21418 + +message SC_21419 { + required uint32 result = 1; + required PB_ISLAND_TRADE trade_data = 2; + repeated PB_ISLAND_SHIP_POWER ship_power = 3; +} // .p21.sc_21419 + +message CS_21420 { + required uint32 trade_id = 1; +} // .p21.cs_21420 + +message SC_21421 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21421 + +message SC_21422 { + required uint32 type = 1; + required uint32 today_event = 2; + required uint32 today_trade = 3; + repeated PB_EVENT_EFFECT effect = 4; +} // .p21.sc_21422 + +message CS_21423 { + required uint32 type = 1; + required uint32 target_id = 2; + repeated PB_SPEEDUP_TICKET tickets = 3; +} // .p21.cs_21423 + +message SC_21424 { + required uint32 result = 1; +} // .p21.sc_21424 + +message CS_21425 { + repeated PB_SPEEDUP_KEY ticket_keys = 1; +} // .p21.cs_21425 + +message SC_21426 { + required uint32 result = 1; +} // .p21.sc_21426 + +message CS_21427 { + required uint32 area_id = 2; + repeated PB_SPEEDUP_TICKET tickets = 3; +} // .p21.cs_21427 + +message SC_21428 { + required uint32 result = 1; + repeated uint32 time_list = 2; +} // .p21.sc_21428 + +message CS_21429 { + required uint32 slot_id = 1; +} // .p21.cs_21429 + +message SC_21430 { + required uint32 result = 1; + required uint32 next_time = 2; + repeated PB_SHIP_ORDER_APPOINT appoint_list = 3; +} // .p21.sc_21430 + +message CS_21431 { + required uint32 slot_id = 1; + required uint32 appoint_id = 2; +} // .p21.cs_21431 + +message SC_21432 { + required uint32 result = 1; + required PB_SHIP_ORDER_APPOINT appoint = 2; +} // .p21.sc_21432 + message CS_21501 { required uint32 build_id = 1; required uint32 area_id = 2; @@ -386,7 +781,8 @@ message CS_21501 { message SC_21502 { required uint32 result = 1; - required PB_ISLAND_SHIP_APPOINT ship_appoint = 2; + required uint32 ship_power = 2; + required PB_ISLAND_SHIP_APPOINT ship_appoint = 3; } // .p21.sc_21502 message CS_21503 { @@ -414,33 +810,36 @@ message SC_21506 { required uint32 result = 1; repeated DROPINFO drop_list = 2; required uint32 get_times = 3; + required uint32 pt_award = 4; + required uint32 formula_id = 5; } // .p21.sc_21506 message CS_21507 { - required uint32 build_id = 1; - required uint32 area_id = 2; + required uint32 type = 1; + required uint32 build_id = 2; + required uint32 area_id = 3; } // .p21.cs_21507 message SC_21508 { required uint32 result = 1; - required PB_ISLAND_COLLECT_AREA collect_area = 2; + required uint32 refresh_time = 2; repeated DROPINFO drop_list = 3; } // .p21.sc_21508 message CS_21509 { required uint32 build_id = 1; - required uint32 area_id = 2; + repeated uint32 slot_list = 2; required uint32 formula_id = 3; } // .p21.cs_21509 message SC_21510 { required uint32 result = 1; - required PB_ISLAND_HAND_AREA hand_area = 2; + repeated PB_ISLAND_HAND_AREA hand_list = 2; } // .p21.sc_21510 message CS_21511 { required uint32 build_id = 1; - required uint32 area_id = 2; + repeated uint32 area_ids = 2; } // .p21.cs_21511 message SC_21512 { @@ -448,25 +847,9 @@ message SC_21512 { 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; + repeated uint32 slot_list = 2; } // .p21.cs_21516 message SC_21517 { @@ -477,6 +860,7 @@ message SC_21518 { required uint32 area_id = 1; required uint32 formula_id = 2; required uint32 num = 3; + required uint32 comb_num = 4; } // .p21.sc_21518 message SC_21519 { @@ -500,6 +884,237 @@ message SC_21523 { repeated DROPINFO drop_list = 2; } // .p21.sc_21523 +message CS_21524 { + required uint32 island_id = 1; + required uint32 gather_id = 2; +} // .p21.cs_21524 + +message SC_21525 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21525 + +message CS_21526 { + required uint32 island_id = 1; + required uint32 gather_id = 2; +} // .p21.cs_21526 + +message SC_21527 { + required uint32 result = 1; +} // .p21.sc_21527 + +message SC_21528 { + required uint32 island_id = 1; + repeated PB_ISLAND_GATHER_PUSH gather_list = 2; +} // .p21.sc_21528 + +message CS_21529 { + required uint32 island_id = 1; + required uint32 fragment_id = 2; +} // .p21.cs_21529 + +message SC_21530 { + required uint32 result = 1; +} // .p21.sc_21530 + +message CS_21531 { + required uint32 island_id = 1; + required uint32 fragment_id = 2; +} // .p21.cs_21531 + +message SC_21532 { + required uint32 result = 1; +} // .p21.sc_21532 + +message CS_21533 { + required uint32 collect_id = 1; +} // .p21.cs_21533 + +message SC_21534 { + required uint32 result = 1; +} // .p21.sc_21534 + +message SC_21535 { + required uint32 island_id = 1; + repeated PB_ISLAND_COLLECT_FRAGMENT_PUSH fragment_data = 2; +} // .p21.sc_21535 + +message SC_21536 { + required uint32 get_num = 1; + repeated uint32 get_times = 2; + required uint32 empty_num = 3; + required uint32 mange_flag = 4; +} // .p21.sc_21536 + +message CS_21537 { + required uint32 build_id = 1; + required uint32 area_id = 2; + required uint32 add_num = 3; +} // .p21.cs_21537 + +message SC_21538 { + required uint32 result = 1; + repeated uint32 cost_time_list = 2; + repeated PB_ISLAND_PART_EFFECT times_extra = 9; +} // .p21.sc_21538 + +message CS_21601 { + required uint32 ship_id = 1; +} // .p21.cs_21601 + +message SC_21602 { + required uint32 result = 1; +} // .p21.sc_21602 + +message CS_21603 { + required uint32 ship_id = 1; +} // .p21.cs_21603 + +message SC_21604 { + required uint32 result = 1; +} // .p21.sc_21604 + +message CS_21605 { + required uint32 ship_id = 1; + required uint32 type = 2; + repeated PB_ISLAND_ITEM item_list = 3; +} // .p21.cs_21605 + +message SC_21606 { + required uint32 result = 1; +} // .p21.sc_21606 + +message CS_21607 { + required uint32 ship_id = 1; + repeated PB_ISLAND_ITEM item_list = 2; +} // .p21.cs_21607 + +message SC_21608 { + required uint32 result = 1; + required uint32 add_exp = 2; +} // .p21.sc_21608 + +message CS_21609 { + required uint32 ship_id = 1; +} // .p21.cs_21609 + +message SC_21610 { + required uint32 result = 1; + required PB_ISLAND_SHIP ship = 2; +} // .p21.sc_21610 + +message CS_21611 { + required uint32 ship_id = 1; +} // .p21.cs_21611 + +message SC_21612 { + required uint32 result = 1; +} // .p21.sc_21612 + +message CS_21613 { + required uint32 ship_id = 1; + required uint32 gift_id = 2; +} // .p21.cs_21613 + +message SC_21614 { + required uint32 result = 1; +} // .p21.sc_21614 + +message CS_21617 { + required uint32 ship_id = 1; + repeated uint32 unload_dress = 2; + repeated PB_ISLAND_SHIP_WEAR dress_List = 3; + required uint32 skin_id = 4; + required uint32 color_id = 5; +} // .p21.cs_21617 + +message SC_21618 { + required uint32 result = 1; +} // .p21.sc_21618 + +message CS_21619 { + required uint32 ship_id = 1; + required uint32 color_id = 2; +} // .p21.cs_21619 + +message SC_21620 { + required uint32 result = 1; +} // .p21.sc_21620 + +message CS_21621 { + repeated uint32 dress_id = 1; +} // .p21.cs_21621 + +message SC_21622 { + required uint32 result = 1; +} // .p21.sc_21622 + +message SC_21623 { + required uint32 ship_id = 1; + required uint32 cur_power = 2; + required uint32 recover_time = 3; +} // .p21.sc_21623 + +message CS_21624 { + repeated uint32 dress_id = 1; +} // .p21.cs_21624 + +message SC_21625 { + required uint32 result = 1; +} // .p21.sc_21625 + +message CS_21626 { + required uint32 island_id = 1; + repeated PB_ISLAND_CUR_DRESS dress_list = 2; + repeated PB_DRESS_COLOR color_list = 3; +} // .p21.cs_21626 + +message SC_21627 { + required uint32 result = 1; + repeated PB_CAP_STATE cap_list = 2; +} // .p21.sc_21627 + +message CS_21628 { + required uint32 id = 1; + required uint32 color_id = 2; +} // .p21.cs_21628 + +message SC_21629 { + required uint32 result = 1; +} // .p21.sc_21629 + +message CS_21630 { + required uint32 ship_id = 1; + required uint32 type = 2; +} // .p21.cs_21630 + +message SC_21631 { + required uint32 result = 1; +} // .p21.sc_21631 + +message CS_21700 { + required uint32 island_id = 1; + required uint32 target_id = 2; + required uint32 action_id = 3; +} // .p21.cs_21700 + +message SC_21701 { + required uint32 island_id = 1; + required uint32 player_id = 2; + required uint32 target_id = 3; + required uint32 action_id = 4; +} // .p21.sc_21701 + +message CS_21702 { + required uint32 npc_id = 1; + required uint32 action_feedback_id = 2; +} // .p21.cs_21702 + +message SC_21703 { + required uint32 result = 1; + repeated DROPINFO drop_list = 2; +} // .p21.sc_21703 + message PB_ISLAND { required PB_ISLAND_PUBLIC public_data = 1; optional PB_ISLAND_PRIVATE private_data = 2; @@ -515,31 +1130,60 @@ message PB_ISLAND_PUBLIC { required uint32 prosperity = 7; repeated uint32 ability_list = 8; repeated uint32 prosperity_rewarded = 9; - repeated PB_ISLAND_SHIP ship_list = 10; + required PB_ISLAND_SHIP_SYS ship_sys = 10; required uint32 agora_level = 11; - repeated PB_PLACEMENT_DATA placed_list = 12; + required PB_PLACEMENT_DATA placed_data = 12; repeated uint32 flag_list = 13; required uint32 tree_gift_timestamp = 14; required uint32 tree_gift_count = 15; repeated uint32 tree_gift_invited = 16; + repeated uint32 tree_gift_visitor = 17; + required PB_ISLAND_TASK task_info = 18; + required PB_ISLAND_TRADE_SYS trade_sys = 19; + repeated PB_ISLAND_BUILD build_list = 20; } // .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_VISITOR 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; + required PB_ISLAND_ORDER_SYSTEM order_system = 9; + required string invite_code = 10; + required uint32 daily_timestamp = 11; + repeated KVDATA daily_list = 12; + repeated PB_ISLAND_SEASON_REVIEW season_review_list = 13; + required PB_ISLAND_SEASON season = 14; + required PB_ISLAND_COLLECT_SYS collect_sys = 15; + repeated PB_USE_FORMULA formula_num = 16; + required PB_ISLAND_USER_DRESS_SYS user_dress = 17; + required PB_ISLAND_ACHIEVEMENT_SYS achievement_sys = 18; + required PB_ISLAND_GLOBAL_BUFF global_buff = 19; + repeated PB_SPEEDUP_TICKET speed_tickets = 20; + repeated uint32 action_list = 21; + repeated uint32 action_feedback_npc_list = 22; + repeated PB_SET_FLAG flag_list = 23; + required PB_VIEW_BOOK view_book = 24; + repeated uint32 follow_ships = 25; + repeated PB_CARD_IMAGE image_list = 26; } // .p21.pb_island_private +message PB_PLACEMENT_THEME { + required uint32 id = 1; + required string name = 2; + required PB_PLACEMENT_DATA placed_data = 3; +} // .p21.pb_placement_theme + +message PB_PLACEMENT_DATA { + repeated PB_FURNITURE_DATA placed_list = 1; + repeated uint32 floor_data = 2; + repeated uint32 tile_data = 3; +} // .p21.pb_placement_data + message PB_PLAYER { required uint32 id = 1; required uint32 state = 2; @@ -547,8 +1191,17 @@ message PB_PLAYER { required uint32 level = 4; required DISPLAYINFO display = 5; required uint32 map_id = 6; + repeated PB_ISLAND_CUR_DRESS cur_dress = 7; + repeated PB_DRESS_COLOR dress_color = 8; } // .p21.pb_player +message PB_VISITOR { + required uint32 id = 1; + required string name = 2; + required uint32 time = 3; + required uint32 cmd = 4; +} // .p21.pb_visitor + message PB_ISLAND_TECH { repeated uint32 finish_list = 1; repeated PB_REPEAT_FINISH repeat_finish_list = 2; @@ -561,12 +1214,11 @@ message 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; + repeated PB_ISLAND_SHIP_APPOINT ship_appoint_list = 2; + repeated PB_ISLAND_APPOINT_AREA_AWARD award_list = 3; + repeated PB_ISLAND_APPOINT_AREA appoint_list = 4; + optional PB_ISLAND_BUILD_COLLECT build_collect = 5; + repeated PB_ISLAND_HAND_AREA hand_list = 6; } // .p21.pb_island_build message PB_ISLAND_SHIP_APPOINT { @@ -576,16 +1228,19 @@ message PB_ISLAND_SHIP_APPOINT { 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; + repeated uint32 cost_time_list = 7; + required uint32 speed_time = 8; + repeated PB_ISLAND_PART_EFFECT times_extra = 9; } // .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; + required uint32 ship_id = 2; + required uint32 exp = 3; + required uint32 formula_id = 4; + repeated PB_FORMULA_DROP_INFO formula_drop_list = 5; + required uint32 main_num = 6; + required uint32 other_num = 7; } // .p21.pb_island_appoint_area_award message PB_FORMULA_DROP_INFO { @@ -595,7 +1250,7 @@ message PB_FORMULA_DROP_INFO { message PB_ISLAND_APPOINT_AREA { required uint32 id = 1; - required uint32 part_num = 2; + repeated uint32 part_list = 2; repeated PB_USE_FORMULA formula_list = 3; } // .p21.pb_island_appoint_area @@ -604,18 +1259,12 @@ message PB_USE_FORMULA { 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; + required uint32 start_time = 4; + required uint32 end_time = 5; } // .p21.pb_island_hand_area message PB_ISLAND_ITEM { @@ -631,6 +1280,10 @@ message PB_ISLAND_ORDER_SYSTEM { required uint32 time_slot_num = 5; repeated PB_ISLAND_ORDER_SLOT slot_list = 6; repeated PB_ISLAND_ORDER_SHIP_SLOT ship_slot_list = 7; + repeated PB_SPEED_USE speed_list = 8; + required uint32 ship_refresh = 9; + repeated PB_SHIP_ORDER_APPOINT appoint_list = 10; + repeated PB_FINISH_ACT_GROUP act_group = 11; } // .p21.pb_island_order_system message PB_ISLAND_ORDER_SLOT { @@ -642,7 +1295,7 @@ message PB_ISLAND_ORDER_SLOT { required uint32 position = 6; required uint32 dialog_id = 7; repeated PB_ISLAND_ITEM cost = 8; - required PB_ISLAND_ORDER_AWARD reward = 9; + required uint32 order_lv = 9; required uint32 view_flag = 10; } // .p21.pb_island_order_slot @@ -653,6 +1306,8 @@ message PB_ISLAND_ORDER_SHIP_SLOT { required uint32 get_time = 4; repeated PB_ISLAND_ORDER_SHIP_LOAD cost = 5; repeated PB_ISLAND_ITEM reward = 6; + required uint32 finish_num = 7; + required uint32 auto_time = 8; } // .p21.pb_island_order_ship_slot message PB_ISLAND_ORDER_SHIP_LOAD { @@ -661,48 +1316,44 @@ message PB_ISLAND_ORDER_SHIP_LOAD { 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_SYS { + repeated uint32 invite_list = 1; + repeated PB_ISLAND_SHIP ship_list = 2; + repeated PB_ISLAND_DRESS_NUM had_dress = 3; + repeated PB_ISLAND_SHIP_WEAR wear_list = 4; + repeated PB_ISLAND_SHIP_SKIN skin_list = 5; +} // .p21.pb_island_ship_sys 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; + required uint32 lv = 2; + required uint32 exp = 3; + required uint32 break_lv = 4; + required uint32 skill_lv = 5; + required uint32 power = 6; + required uint32 recover_time = 7; + repeated PB_ISLAND_BUFF buff_list = 8; + repeated PB_SHIP_ATTR extra_attr_list = 9; + required uint32 up_limit_state = 10; + required uint32 cur_skin_id = 11; + required PB_SHIP_WORK_PLACE work_place = 12; } // .p21.pb_island_ship -message PB_SHIP_BUFF { +message PB_ISLAND_BUFF { required uint32 id = 1; - required uint32 end_time = 2; -} // .p21.pb_ship_buff + required uint32 start_time = 2; +} // .p21.pb_island_buff -message PB_ISLAND_BUILDING { +message PB_SHIP_ATTR { 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 + required uint32 value = 2; +} // .p21.pb_ship_attr -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_PLAYER_POS_RECORD { + required uint32 map_id = 1; + required PB_VECTOR3 position = 2; + required PB_VECTOR3 rotation = 3; +} // .p21.pb_player_pos_record message PB_VECTOR3 { required float x = 1; @@ -713,16 +1364,15 @@ message 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; + repeated PB_SLOT slots = 3; + required uint32 status = 4; } // .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; + repeated int32 status = 4; } // .p21.pb_sync_object message PB_SLOT { @@ -743,23 +1393,18 @@ message PB_QUATERNION { 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; + required uint32 time = 3; } // .p21.pb_furniture -message PB_PLACEMENT_DATA { +message PB_FURNITURE_DATA { required uint32 id = 1; required int32 x = 2; required int32 y = 3; required uint32 dir = 4; -} // .p21.pb_placement_data +} // .p21.pb_furniture_data message PB_SHOP { required uint32 id = 1; @@ -777,10 +1422,15 @@ message 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; + required uint32 focus_id = 3; + repeated PB_TASK_RANDOM task_list_random = 4; } // .p21.pb_island_task +message PB_TASK_RANDOM { + required uint32 task_id = 1; + required uint32 timestamp = 2; +} // .p21.pb_task_random + message PB_TASK { required uint32 id = 1; required uint32 timestamp = 2; @@ -792,8 +1442,275 @@ message PB_TASK_PROCESS { 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 +message PB_ISLAND_SEASON_REVIEW { + required uint32 id = 1; + repeated KVDATA count_list = 2; +} // .p21.pb_island_season_review + +message PB_ISLAND_SEASON { + required uint32 id = 1; + required uint32 pt = 2; + repeated uint32 fetch_list = 3; + repeated KVDATA count_list = 4; +} // .p21.pb_island_season + +message PB_ISLAND_SHIP_SKIN { + required uint32 ship_id = 1; + repeated PB_ISLAND_SKIN skin_list = 2; +} // .p21.pb_island_ship_skin + +message PB_ISLAND_USER_DRESS_SYS { + repeated PB_ISLAND_CUR_DRESS cur_dress = 1; + repeated PB_ISLAND_DRESS_USER had_dress = 2; + repeated PB_CAP_STATE cap_list = 3; +} // .p21.pb_island_user_dress_sys + +message PB_ISLAND_SKIN { + required uint32 id = 1; + required uint32 color_id = 2; + repeated uint32 color_list = 3; +} // .p21.pb_island_skin + +message PB_ISLAND_CUR_DRESS { + required uint32 type = 1; + required uint32 id = 2; +} // .p21.pb_island_cur_dress + +message PB_ISLAND_DRESS_USER { + required uint32 id = 1; + required uint32 state = 2; + required uint32 color = 3; + repeated uint32 color_list = 4; +} // .p21.pb_island_dress_user + +message PB_ISLAND_DRESS_NUM { + required uint32 id = 1; + required uint32 num = 2; + required uint32 read = 3; + required uint32 time = 4; +} // .p21.pb_island_dress_num + +message PB_ISLAND_GATHER_PUSH { + required uint32 id = 1; + required uint32 pos = 2; + required uint32 state = 3; + required uint32 mark = 4; + required uint32 push_type = 5; +} // .p21.pb_island_gather_push + +message PB_ISLAND_WILD_GATHER { + required uint32 id = 1; + required uint32 pos = 2; + required uint32 state = 3; + required uint32 mark = 4; +} // .p21.pb_island_wild_gather + +message PB_ISLAND_COLLECT_SYS { + repeated PB_ISLAND_COLLECT_ITEM collect_item = 1; + repeated uint32 finish_list = 2; +} // .p21.pb_island_collect_sys + +message PB_ISLAND_COLLECT_ITEM { + required uint32 id = 1; + repeated uint32 had_fragment = 2; +} // .p21.pb_island_collect_item + +message PB_ISLAND_COLLECT_FRAGMENT { + required uint32 id = 1; + required uint32 pos = 2; + required uint32 mark = 3; +} // .p21.pb_island_collect_fragment + +message PB_ISLAND_COLLECT_FRAGMENT_PUSH { + required uint32 id = 1; + required uint32 pos = 2; + required uint32 mark = 3; + required uint32 push_type = 4; +} // .p21.pb_island_collect_fragment_push + +message PB_ISLAND_TRADE_SYS { + required uint32 today_event = 1; + required uint32 today_trade = 2; + repeated PB_EVENT_EFFECT effect = 3; + repeated PB_TRADE_NUM today_num = 4; + repeated PB_ISLAND_TRADE trade_list = 5; + repeated PB_TRADE_PRESELL presell_list = 6; +} // .p21.pb_island_trade_sys + +message PB_ISLAND_TRADE { + required uint32 id = 1; + required uint32 lv = 2; + required uint32 total_sell = 3; + repeated PB_TRADE_SELL_FOOD sell_list = 4; + repeated PB_TRADE_FOOD rest_list = 5; + repeated PB_TRADE_POST post_list = 6; + required uint32 end_time = 7; + required uint32 speed_time = 8; +} // .p21.pb_island_trade + +message PB_TRADE_PRESELL { + required uint32 trade_id = 1; + required uint32 sell_num_min = 2; + required uint32 sell_num_max = 3; + required uint32 sell_money_min = 4; + required uint32 sell_money_max = 5; +} // .p21.pb_trade_presell + +message PB_EVENT_EFFECT { + required uint32 food_id = 1; + required uint32 add_per = 2; +} // .p21.pb_event_effect + +message PB_TRADE_NUM { + required uint32 trade_id = 1; + required uint32 num = 2; +} // .p21.pb_trade_num + +message PB_TRADE_POST { + required uint32 post_id = 1; + required uint32 ship_id = 2; +} // .p21.pb_trade_post + +message PB_TRADE_SELL_FOOD { + required uint32 food_id = 1; + required uint32 num = 2; + required uint32 sell_money = 3; +} // .p21.pb_trade_sell_food + +message PB_TRADE_FOOD { + required uint32 food_id = 1; + required uint32 num = 2; +} // .p21.pb_trade_food + +message PB_ISLAND_SHIP_POWER { + required uint32 ship_id = 1; + required uint32 power = 2; +} // .p21.pb_island_ship_power + +message PB_SHIP_WORK_PLACE { + required uint32 type = 1; + required uint32 place = 2; +} // .p21.pb_ship_work_place + +message PB_ISLAND_ACHIEVEMENT_SYS { + repeated PB_ISLAND_ACHIEVENT achieve_list = 1; + repeated uint32 finish_list = 2; +} // .p21.pb_island_achievement_sys + +message PB_ISLAND_ACHIEVENT { + required uint32 event_arg = 1; + required uint32 event_type = 2; + required uint32 value = 3; +} // .p21.pb_island_achievent + +message PB_DRESS_COLOR { + required uint32 id = 1; + required uint32 color = 2; +} // .p21.pb_dress_color + +message PB_CAP_STATE { + required uint32 dress_id = 1; + required uint32 cap_id = 2; +} // .p21.pb_cap_state + +message PB_ISLAND_GLOBAL_BUFF { + repeated uint32 forever_list = 1; + repeated PB_ISLAND_BUFF limit_list = 2; +} // .p21.pb_island_global_buff + +message PB_SPEEDUP_TICKET { + required PB_SPEEDUP_KEY key = 1; + required uint32 num = 2; +} // .p21.pb_speedup_ticket + +message PB_SPEEDUP_KEY { + required uint32 speed_id = 1; + required uint32 end_time = 2; +} // .p21.pb_speedup_key + +message PB_SPEED_USE { + required uint32 slot_id = 1; + required uint32 speed_time = 2; +} // .p21.pb_speed_use + +message PB_ISLAND_NPC { + required uint32 id = 1; + required uint32 object_id = 2; +} // .p21.pb_island_npc + +message PB_ISLAND_NPC_PUSH { + required uint32 type = 1; + required uint32 id = 2; + required uint32 object_id = 3; +} // .p21.pb_island_npc_push + +message PB_ISLAND_LABEL { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_island_label + +message PB_SET_FLAG { + required uint32 type = 1; + required uint32 flag = 2; +} // .p21.pb_set_flag + +message PB_VIEW_BOOK { + repeated PB_BOOK_COND cond_list = 1; + repeated uint32 book_list = 2; + repeated uint32 book_awards = 3; + repeated PB_BOOK_COLLECT book_collects = 4; + repeated PB_ISLAND_ITEM item_list = 5; +} // .p21.pb_view_book + +message PB_BOOK_COND { + required uint32 type = 1; + repeated uint32 unlock_ids = 2; +} // .p21.pb_book_cond + +message PB_BOOK_COLLECT { + required uint32 id = 1; + required uint32 base = 2; + repeated PB_LV_COLLECT lv_list = 3; + repeated PB_LV_COLLECT star_list = 4; +} // .p21.pb_book_collect + +message PB_LV_COLLECT { + required uint32 lv = 1; + required uint32 value = 2; +} // .p21.pb_lv_collect + +message PB_CARD_IMAGE { + required uint32 id = 1; + required uint32 num = 2; +} // .p21.pb_card_image + +message PB_ISLAND_SHIP_WEAR { + required uint32 ship_id = 1; + required uint32 dress_id = 2; +} // .p21.pb_island_ship_wear + +message PB_ISLAND_BUILD_COLLECT { + required uint32 get_num = 1; + required uint32 refresh_time = 2; + repeated uint32 collect_list = 3; +} // .p21.pb_island_build_collect + +message PB_ISLAND_PART_EFFECT { + required uint32 num = 1; + required uint32 cost_extra = 2; + required uint32 main_extra = 3; + required uint32 other_extra = 4; +} // .p21.pb_island_part_effect + +message PB_SHIP_ORDER_APPOINT { + required uint32 id = 1; + required uint32 view_time = 2; + repeated PB_ISLAND_ITEM cost = 3; + repeated PB_ISLAND_ITEM reward = 4; +} // .p21.pb_ship_order_appoint + +message PB_FINISH_ACT_GROUP { + required uint32 act_id = 1; + repeated uint32 groups = 2; +} // .p21.pb_finish_act_group diff --git a/blcrack/cracker/proto/p26.proto b/blcrack/cracker/proto/p26.proto index 9d49d91cc..b5f5d6fb9 100644 --- a/blcrack/cracker/proto/p26.proto +++ b/blcrack/cracker/proto/p26.proto @@ -176,6 +176,127 @@ message BUFF_SLOT { required uint32 itemnum = 3; } // .p26.buff_slot +message CS_26060 { + required uint32 act_id = 1; +} // .p26.cs_26060 + +message SC_26061 { + required uint32 result = 1; + optional NINJA_INFO info = 2; +} // .p26.sc_26061 + +message CS_26062 { + required uint32 act_id = 1; + repeated uint32 roles = 2; +} // .p26.cs_26062 + +message SC_26063 { + required uint32 result = 1; + required NINJA_ADJUST adjust = 2; +} // .p26.sc_26063 + +message CS_26064 { + required uint32 act_id = 1; + required uint32 building_id = 2; +} // .p26.cs_26064 + +message SC_26065 { + required uint32 result = 1; + required NINJA_ADJUST adjust = 2; +} // .p26.sc_26065 + +message CS_26066 { + required uint32 act_id = 1; + required uint32 group = 2; + required uint32 count = 3; +} // .p26.cs_26066 + +message SC_26067 { + required uint32 result = 1; + required NINJA_ADJUST adjust = 2; +} // .p26.sc_26067 + +message CS_26068 { + required uint32 act_id = 1; +} // .p26.cs_26068 + +message SC_26069 { + required uint32 result = 1; + required NINJA_SUMMARY summary = 2; +} // .p26.sc_26069 + +message CS_26070 { + required uint32 act_id = 1; + required uint32 level = 2; +} // .p26.cs_26070 + +message SC_26071 { + required uint32 result = 1; + required NINJA_ADJUST adjust = 2; +} // .p26.sc_26071 + +message CS_26072 { + required uint32 act_id = 1; +} // .p26.cs_26072 + +message SC_26073 { + required uint32 result = 1; + optional NINJA_ADJUST adjust = 2; +} // .p26.sc_26073 + +message NINJA_INFO { + required NINJA_PT pt = 1; + repeated uint32 builds = 2; + repeated uint32 roles = 3; + repeated NINJA_ROLE_RECRUIT recruits = 4; + repeated uint32 buffs = 5; + required uint32 max_level = 6; + required uint32 cur_level = 7; + required uint32 max_display = 8; + required NINJA_ADJUST adjust = 9; + required NINJA_PT summary_pt = 10; +} // .p26.ninja_info + +message NINJA_ROLE_RECRUIT { + required uint32 id = 1; + required uint32 start_time = 2; +} // .p26.ninja_role_recruit + +message NINJA_SUMMARY { + required NINJA_PT summary_pt = 1; + repeated DROPINFO award_list = 2; + required NINJA_ADJUST adjust = 3; +} // .p26.ninja_summary + +message NINJA_ADJUST { + required uint32 time = 1; + required NINJA_PT left_hp = 2; + required uint32 max_level = 3; +} // .p26.ninja_adjust + +message NINJA_PT { + required uint32 b = 1; + required uint32 m = 2; + required uint32 k = 3; +} // .p26.ninja_pt + +message CS_26081 { + required uint32 act_id = 1; +} // .p26.cs_26081 + +message SC_26082 { + required uint32 result = 1; + repeated BOSS4TH boss_list = 2; +} // .p26.sc_26082 + +message BOSS4TH { + required uint32 id = 1; + required uint32 boss_hp = 2; + required uint32 death = 3; + required uint32 hour_traffic = 4; + required uint32 hour_off = 5; +} // .p26.boss4th + message CS_26101 { required uint32 type = 1; } // .p26.cs_26101 diff --git a/blcrack/cracker/proto/p34.proto b/blcrack/cracker/proto/p34.proto index e073c19f4..6f3ad5404 100644 --- a/blcrack/cracker/proto/p34.proto +++ b/blcrack/cracker/proto/p34.proto @@ -42,6 +42,7 @@ message SC_34502 { required uint32 guild_support = 13; required uint32 friend_support = 14; required uint32 world_support = 15; + required uint32 self_boss_lv = 16; } // .p34.sc_34502 message CS_34503 { diff --git a/blcrack/cracker/proto/p50.proto b/blcrack/cracker/proto/p50.proto index 71682d2da..19b55398b 100644 --- a/blcrack/cracker/proto/p50.proto +++ b/blcrack/cracker/proto/p50.proto @@ -77,9 +77,17 @@ message CS_50016 { } // .p50.cs_50016 message SC_50017 { - repeated PLAYER_INFO black_list = 3; + repeated PLAYER_INFO black_list = 1; } // .p50.sc_50017 +message CS_50018 { + repeated uint32 user_id_list = 1; +} // .p50.cs_50018 + +message SC_50019 { + repeated FRIEND_INFO user_list = 1; +} // .p50.sc_50019 + message SC_50101 { required PLAYER_INFO player = 1; required uint32 type = 2;