diff --git a/proto/AttackHitEffectResult.proto b/proto/AttackHitEffectResult.proto new file mode 100644 index 00000000..d7fc0d22 --- /dev/null +++ b/proto/AttackHitEffectResult.proto @@ -0,0 +1,15 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + + +message AttackHitEffectResult { + uint32 Unk3300_KLNGDAMMFIF = 3; + float airStrength = 6; + uint32 Unk3300_LCKECJCKKJK = 13; + float hitHaltTime = 15; + float retreatStrength = 4; + float hitHaltTimeScale = 7; +} diff --git a/proto/AttackResult.proto b/proto/AttackResult.proto index 52f7a2e9..58cd1639 100644 --- a/proto/AttackResult.proto +++ b/proto/AttackResult.proto @@ -3,8 +3,8 @@ syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; import "AbilityIdentifier.proto"; -import "CPAKHCFDGLO.proto"; -import "KPDGACKMNJA.proto"; +import "AttackHitEffectResult.proto"; +import "HitCollision.proto"; import "Vector.proto"; // Name: PKHKLDLFMBJ @@ -22,7 +22,7 @@ message AttackResult { float GCKKIKJLCKG = 1030; uint32 GFAODFMIIIB = 278; float AEIPHPGEFAN = 474; - KPDGACKMNJA BFGNKLMFGKB = 10; + HitCollision hitCollision = 10; uint32 IPPPOLACNMI = 13; bool ANNLKCIDPEC = 1534; uint32 attacker_id = 2; @@ -30,7 +30,7 @@ message AttackResult { bool JKJBOKBIIBI = 196; string anim_event_id = 5; Vector resolved_dir = 15; - CPAKHCFDGLO BBFFCPJKNOP = 7; + AttackHitEffectResult hitEffResult = 7; uint32 BIHIHLDIPOK = 6; uint32 element_type = 4; uint32 OOLJHPBLPDL = 352; diff --git a/proto/AvatarInfo.proto b/proto/AvatarInfo.proto index 7d63d9ca..3a3faf23 100644 --- a/proto/AvatarInfo.proto +++ b/proto/AvatarInfo.proto @@ -7,7 +7,6 @@ import "AvatarExcelInfo.proto"; import "AvatarExpeditionState.proto"; import "AvatarFetterInfo.proto"; import "AvatarSkillInfo.proto"; -import "GKIJDMOCNDH.proto"; import "PropValue.proto"; import "TrialAvatarInfo.proto"; @@ -39,6 +38,5 @@ message AvatarInfo { uint32 costume_id = 25; AvatarExcelInfo excel_info = 26; uint32 anim_hash = 27; - GKIJDMOCNDH FPDEJLIHLGJ = 28; } diff --git a/proto/BattlePassProduct.proto b/proto/BattlePassProduct.proto new file mode 100644 index 00000000..9d99dc0a --- /dev/null +++ b/proto/BattlePassProduct.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + +message BattlePassProduct { + string normalProductId = 4; + string extraProductId = 14; + string upgradeProductId = 7; +} diff --git a/proto/CoinCollectLevelData.proto b/proto/CoinCollectLevelData.proto deleted file mode 100644 index fba1e7c3..00000000 --- a/proto/CoinCollectLevelData.proto +++ /dev/null @@ -1,22 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "OMGFECMPJFA.proto"; - -// Name: HOCCDCBAJCL -message CoinCollectLevelData { - repeated OMGFECMPJFA PACMOPNPBKN = 6; - uint32 level_id = 9; - OMGFECMPJFA BCDIOAANAAI = 15; - uint32 JNMKLBKBICN = 10; - bool IEDBHNMGJOH = 14; - bool KNECNACPDNM = 13; - uint32 HKJLDMFKAOK = 4; - uint32 IJPCGGFPHOP = 7; - bool EEBKEBLJBHP = 5; - uint32 OJJLJBLJLFH = 3; - bool is_level_open = 2; - uint32 DDMCOCPKFAF = 8; -} - diff --git a/proto/CoinCollectTeamAvatarInfo.proto b/proto/CoinCollectTeamAvatarInfo.proto deleted file mode 100644 index b7609c19..00000000 --- a/proto/CoinCollectTeamAvatarInfo.proto +++ /dev/null @@ -1,11 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: FBEKLANBDNA -message CoinCollectTeamAvatarInfo { - uint32 costume_id = 4; - uint32 avatar_id = 5; -} - diff --git a/proto/DungeonSettleExhibitionInfo.proto b/proto/DungeonSettleExhibitionInfo.proto new file mode 100644 index 00000000..e384f5d0 --- /dev/null +++ b/proto/DungeonSettleExhibitionInfo.proto @@ -0,0 +1,13 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + +import "OnlinePlayerInfo.proto"; +import "ExhibitionDisplayInfo.proto"; + +message DungeonSettleExhibitionInfo { + repeated ExhibitionDisplayInfo cardList = 2; + OnlinePlayerInfo playerInfo = 13; +} diff --git a/proto/DungeonSettleNotify.proto b/proto/DungeonSettleNotify.proto index 1bbff20e..2a68690f 100644 --- a/proto/DungeonSettleNotify.proto +++ b/proto/DungeonSettleNotify.proto @@ -7,9 +7,7 @@ import "CrystalLinkDungeonSettleInfo.proto"; import "DungeonSettleExhibitionInfo.proto"; import "EffigyChallengeDungeonResultInfo.proto"; import "EffigyChallengeV2SettleInfo.proto"; -import "EOLLJLFBEKA.proto"; import "InstableSprayDungeonSettleInfo.proto"; -import "KECDCNCPKIO.proto"; import "ParamList.proto"; import "RoguelikeDungeonSettleInfo.proto"; import "StrengthenPointData.proto"; @@ -44,8 +42,6 @@ message DungeonSettleNotify { WindFieldDungeonSettleInfo wind_field_dungeon_settle_info = 1577; EffigyChallengeV2SettleInfo effigy_challenge_v2_settle_info = 757; TeamChainSettleInfo team_chain_settle_info = 1881; - EOLLJLFBEKA pacman_settle_info = 1722; - KECDCNCPKIO fungus_fighter_v2_settle_info = 63; } } diff --git a/proto/FungusTrainingDungeonDetail.proto b/proto/FungusTrainingDungeonDetail.proto deleted file mode 100644 index 313d73ed..00000000 --- a/proto/FungusTrainingDungeonDetail.proto +++ /dev/null @@ -1,12 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: BLAPHKFLNJB -message FungusTrainingDungeonDetail { - uint32 best_score = 9; - bool is_open = 8; - uint32 dungeon_id = 2; -} - diff --git a/proto/FungusTrainingProgressDetail.proto b/proto/FungusTrainingProgressDetail.proto deleted file mode 100644 index cecd412a..00000000 --- a/proto/FungusTrainingProgressDetail.proto +++ /dev/null @@ -1,18 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "BHKGAINOAON.proto"; -import "OLAHPIKKKOM.proto"; - -// Name: NBBNIDCNBNJ -message FungusTrainingProgressDetail { - repeated uint32 OHPPOCHJMHE = 15; - uint32 cur_round = 5; - uint32 dungeon_id = 11; - uint32 total_used_time = 10; - repeated uint32 JACIJBCLOMD = 6; - repeated OLAHPIKKKOM OKIHACBIMGP = 12; - repeated BHKGAINOAON PPJNMMHPAKP = 14; -} - diff --git a/proto/HitCollision.proto b/proto/HitCollision.proto new file mode 100644 index 00000000..5eec6679 --- /dev/null +++ b/proto/HitCollision.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + +import "Vector.proto"; +import "HitColliderType.proto"; + +message HitCollision { + float attackeeHitEntityAngle = 12; + Vector hitDir = 4; + Vector hitPoint = 3; + int32 hitBoxIndex = 10; + float attackeeHitForceAngle = 15; + HitColliderType hitColliderType = 9; +} diff --git a/proto/IrodoriChessData.proto b/proto/IrodoriChessData.proto deleted file mode 100644 index 83e4519d..00000000 --- a/proto/IrodoriChessData.proto +++ /dev/null @@ -1,12 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "IrodoriChessLevelData.proto"; - -// Name: OMPILHJCDDM -message IrodoriChessData { - repeated IrodoriChessLevelData level_data_list = 14; - bool is_open = 3; -} - diff --git a/proto/IrodoriChessEntranceDetailInfo.proto b/proto/IrodoriChessEntranceDetailInfo.proto deleted file mode 100644 index bbbb7e39..00000000 --- a/proto/IrodoriChessEntranceDetailInfo.proto +++ /dev/null @@ -1,11 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "IrodoriChessEntranceInfo.proto"; - -// Name: DPIKGFELMFD -message IrodoriChessEntranceDetailInfo { - repeated IrodoriChessEntranceInfo info_list = 4; -} - diff --git a/proto/IrodoriChessEntranceInfo.proto b/proto/IrodoriChessEntranceInfo.proto deleted file mode 100644 index 79323a81..00000000 --- a/proto/IrodoriChessEntranceInfo.proto +++ /dev/null @@ -1,12 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "IrodoriChessMonsterInfo.proto"; - -// Name: NBGICJDBGIO -message IrodoriChessEntranceInfo { - repeated IrodoriChessMonsterInfo monster_info_list = 4; - uint32 entrance_point_id = 2; -} - diff --git a/proto/IrodoriChessEquipCardReq.proto b/proto/IrodoriChessEquipCardReq.proto deleted file mode 100644 index 1296bb86..00000000 --- a/proto/IrodoriChessEquipCardReq.proto +++ /dev/null @@ -1,13 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: OCHFJBOGAOP -// CmdId: 8511 -message IrodoriChessEquipCardReq { - bool is_hard_map = 13; - uint32 level_id = 7; - uint32 card_id = 14; -} - diff --git a/proto/IrodoriChessEquipCardRsp.proto b/proto/IrodoriChessEquipCardRsp.proto deleted file mode 100644 index 9096d411..00000000 --- a/proto/IrodoriChessEquipCardRsp.proto +++ /dev/null @@ -1,14 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: NFNLEIPBPFE -// CmdId: 8145 -message IrodoriChessEquipCardRsp { - uint32 level_id = 6; - bool is_hard_map = 11; - int32 retcode = 10; - uint32 card_id = 9; -} - diff --git a/proto/IrodoriChessLevelData.proto b/proto/IrodoriChessLevelData.proto deleted file mode 100644 index 5938d6dc..00000000 --- a/proto/IrodoriChessLevelData.proto +++ /dev/null @@ -1,14 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - -import "MCOPOAMEGCP.proto"; - -// Name: FHPJMFLJECD -message IrodoriChessLevelData { - MCOPOAMEGCP PMIDHJGPANG = 15; - uint32 open_time = 6; - MCOPOAMEGCP PLIOEJLDHLF = 14; - uint32 level_id = 2; -} - diff --git a/proto/IrodoriChessMonsterInfo.proto b/proto/IrodoriChessMonsterInfo.proto deleted file mode 100644 index d70336c4..00000000 --- a/proto/IrodoriChessMonsterInfo.proto +++ /dev/null @@ -1,13 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: GLEKJEAFNOD -message IrodoriChessMonsterInfo { - repeated uint32 affix_list = 8; - uint32 level = 5; - uint32 grant_points = 2; - uint32 monster_id = 12; -} - diff --git a/proto/IrodoriPoetryThemeData.proto b/proto/IrodoriPoetryThemeData.proto deleted file mode 100644 index e90d39b7..00000000 --- a/proto/IrodoriPoetryThemeData.proto +++ /dev/null @@ -1,16 +0,0 @@ -syntax = "proto3"; - -option java_package = "emu.grasscutter.net.proto"; - - -// Name: AOOFANGHMOJ -message IrodoriPoetryThemeData { - repeated uint32 NEAELGDFMIL = 8; - uint32 progress = 3; - uint32 DMKGFAJADNC = 9; - uint32 OBDOEOGAGHH = 13; - uint32 CGGCACEMFPB = 14; - uint32 OGDCJBFODEB = 11; - repeated uint32 IEIFGEDGHLI = 6; -} - diff --git a/proto/MailCollectState.proto b/proto/MailCollectState.proto new file mode 100644 index 00000000..6eaeaa3d --- /dev/null +++ b/proto/MailCollectState.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + +enum MailCollectState { + MAIL_COLLECT_STATE_COLLECTIBLE_UNKNOWN = 0; + MAIL_COLLECT_STATE_NOT_COLLECTIBLE = 1; + MAIL_COLLECT_STATE_COLLECTIBLE_UNCOLLECTED = 2; + MAIL_COLLECT_STATE_COLLECTIBLE_COLLECTED = 3; +} diff --git a/proto/QueryFilter.proto b/proto/QueryFilter.proto new file mode 100644 index 00000000..9503ac44 --- /dev/null +++ b/proto/QueryFilter.proto @@ -0,0 +1,11 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + + +message QueryFilter { + int32 areaMask = 9; + int32 typeId = 3; +} diff --git a/proto/QueryPathReq.proto b/proto/QueryPathReq.proto index c135906f..dcf26edc 100644 --- a/proto/QueryPathReq.proto +++ b/proto/QueryPathReq.proto @@ -2,25 +2,19 @@ syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; -import "PKGGDPOEDKH.proto"; +import "OptionType.proto"; +import "QueryFilter.proto"; import "Vector.proto"; import "Vector3Int.proto"; // Name: ACMGFNOFCKB // CmdId: 2367 message QueryPathReq { - // Name: FFFLJDJCEPL - enum FFFLJDJCEPL { - FFFLJDJCEPL_NFEKPNDGKLO = 0; - FFFLJDJCEPL_FDONIBMDFGP = 1; - FFFLJDJCEPL_DKOMLNNPIHP = 2; - } - Vector source_pos = 10; - PKGGDPOEDKH LHOAGINKBOK = 3; + QueryFilter filter = 3; Vector3Int APGDHBMJKHO = 12; Vector3Int JDGEGADKHCL = 6; - FFFLJDJCEPL BFLACBIGMCJ = 13; + OptionType queryType = 13; int32 query_id = 14; repeated Vector destination_pos = 15; uint32 scene_id = 11; diff --git a/proto/Shop.proto b/proto/Shop.proto index 414df7b2..63d21b95 100644 --- a/proto/Shop.proto +++ b/proto/Shop.proto @@ -2,20 +2,20 @@ syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; -import "FIMJMLPLPAC.proto"; -import "FINEJDCEECI.proto"; -import "LIJKGGFCHOB.proto"; +import "ShopMcoinProduct.proto"; +import "ShopConcertProduct.proto"; +import "ShopCardProduct.proto"; import "ShopGoods.proto"; // Name: HNDMELNBJGE message Shop { uint32 city_reputation_level = 11; uint32 city_id = 4; - repeated FIMJMLPLPAC GOHPJCODALI = 1; + repeated ShopMcoinProduct mcoinProductList = 1; uint32 next_refresh_time = 10; repeated ShopGoods goods_list = 8; - repeated LIJKGGFCHOB BNHCBEDPHKF = 7; + repeated ShopCardProduct cardProductList = 7; uint32 shop_type = 9; - repeated FINEJDCEECI FPPKBMBBHOD = 12; + repeated ShopConcertProduct concertProductList = 12; } diff --git a/proto/TowerMonthlyBrief.proto b/proto/TowerMonthlyBrief.proto new file mode 100644 index 00000000..f451a644 --- /dev/null +++ b/proto/TowerMonthlyBrief.proto @@ -0,0 +1,13 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + + + + +message TowerMonthlyBrief { + uint32 bestLevelIndex = 11; + uint32 towerScheduleId = 7; + uint32 totalStarCount = 14; + uint32 bestFloorIndex = 8; +}