sync proto c057272

This commit is contained in:
Yuuki 2024-04-23 22:44:53 +08:00
parent c731b032d3
commit f6c99628b5
17 changed files with 92 additions and 327 deletions

View File

@ -3362,7 +3362,7 @@ public class PacketOpcodes {
public static final int DungeonCandidateTeamSetReadyReq = 50535;
public static final int DungeonCandidateTeamSetReadyRsp = 50536;
public static final int DungeonDataNotify = 50537;
public static final int DungeonEntryToBeExploreNotify = 50538;
public static final int DungeonEntryToBeExploreNotify = 23968;
public static final int DungeonFollowNotify = 50539;
public static final int DungeonGetStatueDropReq = 50540;
public static final int DungeonGetStatueDropRsp = 50541;
@ -3379,7 +3379,7 @@ public class PacketOpcodes {
public static final int DungeonRestartResultNotify = 50552;
public static final int DungeonRestartRsp = 50553;
public static final int DungeonReviseLevelNotify = 50554;
public static final int DungeonSettleNotify = 50555;
public static final int DungeonSettleNotify = 26569;
public static final int DungeonShowReminderNotify = 50556;
public static final int DungeonSlipRevivePointActivateReq = 50557;
public static final int DungeonSlipRevivePointActivateRsp = 50558;
@ -3826,8 +3826,8 @@ public class PacketOpcodes {
public static final int GetCustomDungeonRsp = 50999;
public static final int GetDailyDungeonEntryInfoReq = 51000;
public static final int GetDailyDungeonEntryInfoRsp = 51001;
public static final int GetDungeonEntryExploreConditionReq = 51002;
public static final int GetDungeonEntryExploreConditionRsp = 51003;
public static final int GetDungeonEntryExploreConditionReq = 4783;
public static final int GetDungeonEntryExploreConditionRsp = 22303;
public static final int GetExpeditionAssistInfoListReq = 51004;
public static final int GetExpeditionAssistInfoListRsp = 51005;
public static final int GetFriendShowAvatarInfoReq = 51006;
@ -5052,7 +5052,7 @@ public class PacketOpcodes {
public static final int TowerFloorRecordChangeNotify = 52225;
public static final int TowerGetFloorStarRewardReq = 52226;
public static final int TowerGetFloorStarRewardRsp = 52227;
public static final int TowerLevelEndNotify = 52228;
public static final int TowerLevelEndNotify = 27218;
public static final int TowerLevelStarCondNotify = 52229;
public static final int TowerMiddleLevelChangeTeamNotify = 52230;
public static final int TowerRecordHandbookReq = 52231;

View File

@ -1,4 +1,8 @@
[
{
"name": "NONE",
"id": 1
},
{
"name": "PingReq",
"id": 22959
@ -13429,7 +13433,7 @@
},
{
"name": "DungeonEntryToBeExploreNotify",
"id": 50538
"id": 23968
},
{
"name": "DungeonFollowNotify",
@ -13497,7 +13501,7 @@
},
{
"name": "DungeonSettleNotify",
"id": 50555
"id": 26569
},
{
"name": "DungeonShowReminderNotify",
@ -15285,11 +15289,11 @@
},
{
"name": "GetDungeonEntryExploreConditionReq",
"id": 51002
"id": 4783
},
{
"name": "GetDungeonEntryExploreConditionRsp",
"id": 51003
"id": 22303
},
{
"name": "GetExpeditionAssistInfoListReq",
@ -20189,7 +20193,7 @@
},
{
"name": "TowerLevelEndNotify",
"id": 52228
"id": 27218
},
{
"name": "TowerLevelStarCondNotify",

4
op.js
View File

@ -988,12 +988,12 @@ function cmdid_json_to_csv() {
// cmdid_json_to_csv();
// Update GC Proto
//get_cmdid_gc(); // 1. get cmd old gc
// get_cmdid_gc(); // 1. get cmd old gc
//read_cmdid_ht_json(); // 2 or
// get_cmdid_json(); // 2. get last cmdid.csv to json
// now we have cmdid_gc.json and cmdid.json
// update_cmdid_gc(); // 3. update gc cmdid (mode by id)
cmdid_to_op(); // 4. update op
// cmdid_to_op(); // 4. update op
// npx prettier --write PacketOpcodes.java
// scan_gc(); // 5. scan gc
// clean_proto_event(); // 6. clean event, need manual

6
proto/AOMEMGPFAJA.proto Normal file
View File

@ -0,0 +1,6 @@
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
message AOMEMGPFAJA {
repeated uint32 avatar_id_list = 5;
}

View File

@ -1,24 +1,8 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "DungeonEntryBlockReason.proto";
// Obf: MGMEPMHEJEA
message DungeonEntryCond {
DungeonEntryBlockReason cond_reason = 4;
uint32 param1 = 12;
DungeonEntryBlockReason cond_reason = 2;
uint32 param1 = 14;
}

View File

@ -1,25 +1,8 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// CmdId: 22366
// Obf: IIPOKPCHEKL
message DungeonEntryToBeExploreNotify {
uint32 scene_id = 15;
uint32 dungeon_entry_scene_point_id = 13;
uint32 dungeon_entry_config_id = 5;
uint32 dungeon_entry_config_id = 1;
uint32 dungeon_entry_scene_point_id = 7;
uint32 scene_id = 11;
}

View File

@ -1,19 +1,3 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "DungeonSettleExhibitionInfo.proto";
@ -21,47 +5,18 @@ import "StrengthenPointData.proto";
import "ParamList.proto";
import "TowerLevelEndNotify.proto";
import "TrialAvatarFirstPassDungeonNotify.proto";
import "ChannellerSlabLoopDungeonResultInfo.proto";
import "EffigyChallengeDungeonResultInfo.proto";
import "RoguelikeDungeonSettleInfo.proto";
import "CrystalLinkDungeonSettleInfo.proto";
import "SummerTimeV2DungeonSettleInfo.proto";
import "InstableSprayDungeonSettleInfo.proto";
import "WindFieldDungeonSettleInfo.proto";
import "EffigyChallengeV2SettleInfo.proto";
import "TeamChainSettleInfo.proto";
import "PacmanSettleInfo.proto";
import "FungusFighterV2SettleInfo.proto";
import "BladeDanceSettleInfo.proto";
import "MultiCharacterDungeonSettleInfo.proto";
// CmdId: 22323
// Obf: OHGJJKADNFH
message DungeonSettleNotify {
bool is_success = 3;
repeated DungeonSettleExhibitionInfo exhibition_info_list = 10;
map<uint32, StrengthenPointData> strengthen_point_data_map = 2;
map<uint32, ParamList> settle_show = 13;
uint32 create_player_uid = 1;
uint32 dungeon_id = 7;
uint32 close_time = 6;
uint32 result = 5;
uint32 use_time = 15;
repeated uint32 fail_cond_list = 9;
oneof detail {
TowerLevelEndNotify tower_level_end_notify = 1162;
TrialAvatarFirstPassDungeonNotify trial_avatar_first_pass_dungeon_notify = 2036;
ChannellerSlabLoopDungeonResultInfo channeller_slab_loop_dungeon_result_info = 808;
EffigyChallengeDungeonResultInfo effigy_challenge_dungeon_result_info = 596;
RoguelikeDungeonSettleInfo roguelike_dungeon_settle_info = 2010;
CrystalLinkDungeonSettleInfo crystal_link_settle_info = 1313;
SummerTimeV2DungeonSettleInfo summer_time_v2_dungeon_settle_info = 174;
InstableSprayDungeonSettleInfo instable_spray_settle_info = 702;
WindFieldDungeonSettleInfo wind_field_dungeon_settle_info = 714;
EffigyChallengeV2SettleInfo effigy_challenge_v2_settle_info = 1629;
TeamChainSettleInfo team_chain_settle_info = 755;
PacmanSettleInfo pacman_settle_info = 1544;
FungusFighterV2SettleInfo fungus_fighter_v2_settle_info = 1886;
BladeDanceSettleInfo blade_dance_settle_info = 578;
MultiCharacterDungeonSettleInfo multi_character_dungeon_settle_info = 1901;
}
}
map<uint32, ParamList> settle_show = 2;
repeated DungeonSettleExhibitionInfo exhibition_info_list = 5;
map<uint32, StrengthenPointData> strengthen_point_data_map = 8;
repeated uint32 fail_cond_list = 6;
bool is_success = 4;
uint32 close_time = 7;
uint32 use_time = 3;
uint32 dungeon_id = 1;
uint32 create_player_uid = 11;
uint32 result = 9;
TowerLevelEndNotify tower_level_end_notify = 382;
TrialAvatarFirstPassDungeonNotify trial_avatar_first_pass_dungeon_notify = 1300;
}

View File

@ -1,24 +1,7 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// CmdId: 27817
// Obf: MKJAMAKFLLI
message DungeonWayPointNotify {
repeated uint32 active_way_point_list = 6;
bool is_add = 5;
repeated uint32 active_way_point_list = 7;
bool is_add = 13;
}

View File

@ -1,25 +1,8 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "DungeonEntryCond.proto";
// CmdId: 3536
// Obf: GAICEEONGHO
message GetDungeonEntryExploreConditionRsp {
int32 retcode = 11;
DungeonEntryCond dungeon_entry_cond = 12;
DungeonEntryCond dungeon_entry_cond = 4;
int32 retcode = 12;
}

View File

@ -1,28 +1,12 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "IEDLOHFOJJB.proto";
// Obf: BHIDAAPPGHP
import "AOMEMGPFAJA.proto";
message MultiCharacterDungeonSettleInfo {
repeated uint32 AJFIDJINPLL = 15;
bool is_new_record = 12;
uint32 stage_id = 14;
uint32 level_id = 4;
uint32 difficulty = 7;
repeated IEDLOHFOJJB team_info_list = 2;
repeated uint32 ECJNBLIAJOL = 13;
repeated AOMEMGPFAJA team_info_list = 4;
uint32 level_id = 3;
uint32 difficulty = 11;
bool is_new_record = 8;
uint32 stage_id = 15;
}

View File

@ -1,27 +1,10 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "QuestVarOp.proto";
// CmdId: 28126
// Obf: CJGCHOPODCD
message QuestUpdateQuestVarReq {
repeated QuestVarOp quest_var_op_list = 8;
uint32 parent_quest_var_seq = 9;
uint32 parent_quest_id = 11;
uint32 quest_id = 7;
repeated QuestVarOp quest_var_op_list = 7;
uint32 quest_id = 10;
uint32 parent_quest_id = 15;
uint32 parent_quest_var_seq = 12;
}

View File

@ -1,24 +1,8 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Obf: KCGCOKGAMJM
message QuestVarOp {
int32 value = 4;
uint32 index = 1;
bool is_add = 11;
bool is_add = 4;
uint32 index = 9;
int32 value = 5;
}

View File

@ -1,23 +1,6 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// CmdId: 7079
// Obf: AOJACOMMPOP
message SceneForceLockNotify {
repeated uint32 force_id_list = 1;
repeated uint32 force_id_list = 6;
}

View File

@ -1,24 +1,7 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// CmdId: 3275
// Obf: AKPHLEGNIAH
message SceneForceUnlockNotify {
bool is_add = 15;
repeated uint32 force_id_list = 2;
repeated uint32 force_id_list = 11;
bool is_add = 1;
}

View File

@ -1,26 +1,10 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Obf: LLNMBEJEOMH
message TeamChainSettleInfo {
repeated uint32 score_list = 3;
uint32 difficulty = 15;
uint32 total_score = 6;
bool is_new_record = 9;
uint32 stage_id = 10;
repeated uint32 score_list = 6;
bool is_new_record = 10;
uint32 total_score = 14;
uint32 difficulty = 13;
uint32 stage_id = 1;
}

View File

@ -1,34 +1,17 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
import "ItemParam.proto";
// CmdId: 20886
// Obf: BHDDDPNGPNF
message TowerLevelEndNotify {
enum ContinueStateType {
CONTINUE_STATE_TYPE_CAN_NOT_CONTINUE = 0;
CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_LEVEL = 1;
CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_FLOOR = 2;
}
repeated uint32 finished_star_cond_list = 14;
bool is_success = 7;
uint32 continue_state = 4;
repeated ItemParam reward_item_list = 13;
uint32 next_floor_id = 5;
}
enum ContinueStateType {
CONTINUE_STATE_TYPE_CAN_NOT_CONTINUE = 0;
CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_LEVEL = 1;
CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_FLOOR = 2;
}
repeated ItemParam reward_item_list = 10;
repeated uint32 finished_star_cond_list = 3;
bool is_success = 2;
uint32 continue_state = 11;
uint32 next_floor_id = 5;
}

View File

@ -1,23 +1,6 @@
// https://github.com/SlushinPS/beach-simulator
// Copyright (C) 2023 Slushy Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// CmdId: 6009
// Obf: FMDPKNJCNHO
message TrialAvatarFirstPassDungeonNotify {
uint32 trial_avatar_index_id = 6;
uint32 trial_avatar_index_id = 7;
}