diff --git a/deobf.proto b/deobf.proto index 6b9c9147..ec70b455 100644 --- a/deobf.proto +++ b/deobf.proto @@ -20,7 +20,7 @@ message MOEPOBCCJIG { // CmdId: 204 message ItemGivingReq { - map DLNKNDCAAHI = 2; + map item_guid_count_map = 2; uint32 giving_id = 6; repeated ItemParam item_param_list = 14; } @@ -74,7 +74,7 @@ message ShopGoods { uint32 bought_num = 2; uint32 FEOJKIHDKCE = 3; uint32 GHLKAFLLBJN = 4; - repeated uint32 NBKABHDDAFC = 5; + repeated uint32 preGoodsIdList = 5; uint32 end_time = 6; uint32 HBMJLIGEEKG = 7; uint32 NDLDBEJMHNB = 8; @@ -84,7 +84,7 @@ message ShopGoods { uint32 begin_time = 12; uint32 DNLPCAEGBGN = 13; repeated ItemParam OAAFLOFLELI = 14; - ItemParam JHFIBIBJCHL = 15; + ItemParam goods_item = 15; uint32 EBODOLJJCJP = 462; uint32 ECDBKMBMALF = 492; uint32 MJAFPOBKHJP = 994; @@ -110,11 +110,11 @@ message CHAAIMGCFEN { } // CmdId: 7039 -message DMFMFBJOGFD { +message NpcTalkRsp { uint32 entity_id = 8; int32 retcode = 9; - uint32 DKCPHNOMOJK = 12; - uint32 KOKLGKOPKPL = 15; + uint32 cur_talk_id = 12; + uint32 npc_entity_id = 15; } message CoinCollectDetailInfo { @@ -1086,15 +1086,15 @@ message EvtAnimatorParameterNotify { } enum CodexType { - CodexType_CODEX_NONE = 0; - CodexType_CODEX_QUEST = 1; - CodexType_CODEX_WEAPON = 2; - CodexType_CODEX_ANIMAL = 3; - CodexType_CODEX_MATERIAL = 4; - CodexType_CODEX_BOOKS = 5; - CodexType_CODEX_PUSHTIPS = 6; - CodexType_CODEX_VIEW = 7; - CodexType_CODEX_RELIQUARY = 8; + CODEX_NONE = 0; + CODEX_QUEST = 1; + CODEX_WEAPON = 2; + CODEX_ANIMAL = 3; + CODEX_MATERIAL = 4; + CODEX_BOOKS = 5; + CODEX_PUSHTIPS = 6; + CODEX_VIEW = 7; + CODEX_RELIQUARY = 8; } // CmdId: 7400 @@ -1644,7 +1644,7 @@ message PLNKPKMFLIM { } // CmdId: 8588 -message LCPIGGMOOOF { +message HitClientTrivialNotify { Vector position = 6; uint32 owner_entity_id = 7; } @@ -1713,7 +1713,7 @@ message EHFAMAGFNJC { } // CmdId: 7230 -message OFALDGJHMKE { +message GetMailItemReq { repeated uint32 mail_id_list = 8; } @@ -3143,7 +3143,7 @@ message PlayerEnterSceneNotify { /* protected @ 0x54 */// uint32 BEIMODPNDPC = 65535; /* protected @ 0x58 */// uint32 HPNGBLOOJNM = 65535; /* protected @ 0x5C */// uint32 KPBCNOCAOCF = 65535; - /* protected @ 0x68 */// uint32 FNGAHCBKJIK = 65535; + /* protected @ 0x68 */// uint32 text_id = 65535; /* protected @ 0x6C */// uint32 GHMMLIFDPFA = 65535; /* protected @ 0x70 */// uint32 IOJHKOFGJJF = 65535; /* protected @ 0x80 */// bool HFHMDLKKPBO = 65535; @@ -3501,10 +3501,10 @@ message EnterUgcDungeonReq { } // CmdId: 20926 -message HJKMHGJBGON { - string DCAKNBHKFHJ = 4; - uint32 ANPPNCKCPOL = 5; - uint32 CPFBLKCDCDO = 14; +message GetAuthkeyReq { + string auth_appid = 4; + uint32 sign_type = 5; + uint32 authkey_ver = 14; } // CmdId: 2786 @@ -6326,10 +6326,10 @@ message JDJLJKJBCOF { } // CmdId: 24463 -message CDBBDCLDJFB { +message NpcTalkReq { uint32 entity_id = 2; - uint32 KOKLGKOPKPL = 12; - uint32 ECPEOAHFFEL = 15; + uint32 npc_entity_id = 12; + uint32 talk_id = 15; } // CmdId: 8331 @@ -7911,20 +7911,20 @@ message FriendBrief { uint32 param = 8; bool is_friend = 10; string online_id = 11; - uint32 NCMINEPCLFF = 12; + uint32 last_active_time = 12; uint32 name_card_id = 13; - uint32 GCNGGDJLKFH = 14; + uint32 mp_player_num = 14; bool is_chat_no_disturb = 15; - uint32 PNIFKDLLGFH = 16; + uint32 chat_sequence = 16; string remark_name = 17; repeated SocialShowAvatarInfo show_avatar_info_list = 22; FriendEnterHomeOption friend_enter_home_option = 23; ProfilePicture profile_picture = 24; - bool PLCFAEJEMCB = 25; - bool HPKNBDAEANE = 26; + bool is_game_source = 25; + bool is_psn_source = 26; PlatformType platform_type = 27; - bool LCPBMHAHNEE = 28; - bool GJBJJAECABP = 29; + bool is_in_duel = 28; + bool is_duel_observable = 29; } message KJBGKJKCPAK { @@ -8120,13 +8120,13 @@ message DDHMHAMGJIP { } // CmdId: 24258 -message PBKMLPJKLEM { - string FJNCOFJADAF = 1; - string LCJBIEODJAI = 2; +message GetAuthkeyRsp { + string game_biz = 1; + string authkey = 2; int32 retcode = 6; - uint32 ANPPNCKCPOL = 11; - uint32 CPFBLKCDCDO = 12; - string DCAKNBHKFHJ = 14; + uint32 sign_type = 11; + uint32 authkey_ver = 12; + string auth_appid = 14; } message KBKEMCINCJJ { @@ -9338,10 +9338,10 @@ message LCHCFLDALPO { } // CmdId: 20149 -message CHABEBLCLGD { +message SceneShowTextNotify { float HMONIADIBIL = 5; float DBGPNDKPJJF = 9; - uint32 FNGAHCBKJIK = 13; + uint32 text_id = 13; float duration = 15; } @@ -10525,24 +10525,24 @@ message SceneGallerySummerTimeV2BoatInfo { // CmdId: 3838 message DoGachaRsp { - uint32 BCDOOPICEMD = 1; - uint32 NFGOJJOMFCA = 2; - uint32 BHBCHFFGHHE = 3; - uint32 EBDGLPNHAPC = 4; + uint32 ten_cost_item_id = 1; + uint32 wish_item_id = 2; + uint32 wish_max_progress = 3; + uint32 new_gacha_random = 4; int32 retcode = 5; - uint32 EOFACNPOJBN = 6; - uint32 EMKBGHENNEL = 7; - uint32 HNFPBJIEGHD = 8; - uint32 KINBJAPMIJD = 9; - uint32 POEJPPCFPNG = 10; - uint32 NABJFPLLGGM = 11; + uint32 wish_progress = 6; + uint32 ten_cost_item_num = 7; + uint32 left_gacha_times = 8; + uint32 cost_item_id = 9; + uint32 cost_item_num = 10; + uint32 gacha_times_limit = 11; uint32 gachaType = 12; repeated GachaItem gacha_item_list = 13; uint32 gachaScheduleId = 14; uint32 gachaTimes = 15; uint32 dailyGachaTimes = 156; bool BLIOHILHJOP = 205; - uint32 MJCGMHMPKOE = 1513; + uint32 cur_schedule_daily_gacha_times = 1513; bool AGPAJPJENKG = 1563; } @@ -10597,9 +10597,9 @@ message BCGKNKHAFCO { message GachaItem { ItemParam gacha_item = 4; repeated ItemParam token_item_list = 9; - bool CKAPCKPPAIG = 11; + bool is_gacha_item_new = 11; repeated GachaTransferItem transfer_items = 12; - bool AAECBIKHMFM = 14; + bool is_flash_card = 14; } message AFKCJAJDHMO { @@ -11590,9 +11590,9 @@ message GetPlayerTokenRsp { /* protected @ 0x58 */// string psn_id = 65535; /* protected @ 0x60 */// string LMJLDOJOJEM = 65535; /* protected @ 0x68 */// string EEENDIELLNM = 65535; - /* protected @ 0x70 */// string FJNCOFJADAF = 65535; - /* protected @ 0x78 */// string DCAKNBHKFHJ = 65535; - /* protected @ 0x80 */// string LCJBIEODJAI = 65535; + /* protected @ 0x70 */// string game_biz = 65535; + /* protected @ 0x78 */// string auth_appid = 65535; + /* protected @ 0x80 */// string authkey = 65535; /* protected @ 0x88 */// StopServerInfo OGOICEBEPGL = 65535; /* protected @ 0x90 */// string PGLLIHAHNEC = 65535; /* protected @ 0x98 */// repeated uint32 BNHPAPMEMIK = 65535; @@ -11607,9 +11607,9 @@ message GetPlayerTokenRsp { /* protected @ 0xCC */// uint32 NMBHDBCAOMG = 65535; /* protected @ 0xD0 */// uint32 FGJCMKOKDKE = 65535; /* protected @ 0xD4 */// int32 retcode = 65535; - /* protected @ 0xD8 */// uint32 CPFBLKCDCDO = 65535; + /* protected @ 0xD8 */// uint32 authkey_ver = 65535; /* protected @ 0xDC */// uint32 tag = 65535; - /* protected @ 0xE0 */// uint32 ANPPNCKCPOL = 65535; + /* protected @ 0xE0 */// uint32 sign_type = 65535; /* protected @ 0xE4 */// bool NBNHMEICDDC = 65535; /* protected @ 0xE5 */// bool LIIBCFLFDHM = 65535; /* protected @ 0xE6 */// bool AJAGIOMGNMO = 65535; @@ -13351,10 +13351,10 @@ message LJBHNMNEIGA { // CmdId: 384 message GachaWishRsp { - uint32 NFGOJJOMFCA = 4; + uint32 wish_item_id = 4; uint32 gachaScheduleId = 5; - uint32 BHBCHFFGHHE = 7; - uint32 EOFACNPOJBN = 8; + uint32 wish_max_progress = 7; + uint32 wish_progress = 8; uint32 gachaType = 13; int32 retcode = 14; } @@ -14217,16 +14217,16 @@ message GOHBAKOBHEN { } message HomeSceneArrangementInfo { - uint32 GPAGBGJCPGA = 1; + uint32 bgm_id = 1; bool HKDGOJLKLIP = 2; Vector AOLFNCNNMDO = 3; - repeated HomeBlockArrangementInfo CPOKJIBAGOK = 4; - uint32 CAGDDLMHBHE = 5; + repeated HomeBlockArrangementInfo block_arrangement_info_list = 4; + uint32 tmp_version = 5; repeated HomeFurnitureData OHIHGKDPCFM = 6; repeated HomeFurnitureData JOCJOCECDCO = 7; uint32 scene_id = 8; - HomeFurnitureData AAGFLGDEEKI = 9; - uint32 OKLKHDGNHKJ = 11; + HomeFurnitureData main_house = 9; + uint32 comfort_value = 11; bool NNODFDADCEL = 12; Vector FJGAPBGHEGL = 13; Vector NKGKCLHPKPJ = 14; @@ -14398,7 +14398,7 @@ message KGAFCOBMEPE { } // CmdId: 26645 -message JCLANGHEMLF { +message SetPlayerBornDataReq { string nick_name = 5; uint32 avatar_id = 8; } @@ -14584,7 +14584,7 @@ message BJECHKJGAGD { // CmdId: 4213 message GCCDDDLMHBJ { - uint32 GPAGBGJCPGA = 5; + uint32 bgm_id = 5; } // CmdId: 22564 @@ -14828,7 +14828,7 @@ message JBFLGFBGMDB { } // CmdId: 28367 -message EJGNMKBIONF { +message PlayerSetPauseRsp { int32 retcode = 7; } @@ -14923,7 +14923,7 @@ message EntityFightPropChangeReasonNotify { PropChangeReason reason = 10; float prop_delta = 13; ChangeEnergyReason GJFKLFKCPBG = 14; - float IFDGFBBCMBB = 15; + float prop_abs = 15; } // CmdId: 24070 @@ -16690,7 +16690,7 @@ message GCGOperationReq { } // CmdId: 20077 -message PANJGIHEJFO { +message GetAllMailNotify { bool is_collected = 4; } @@ -16860,7 +16860,7 @@ message RegionInfo { string LLGNAHGMKLI = 33; string GFIJDKFNAFA = 34; ResVersionConfig DHKPFELBGBC = 35; - string FJNCOFJADAF = 36; + string game_biz = 36; string ADEHIEEKMFJ = 37; } @@ -16887,7 +16887,7 @@ message HLNJLNKEOPN { // CmdId: 2736 message KIIIPENGOJB { - uint32 ECPEOAHFFEL = 4; + uint32 talk_id = 4; uint32 avatar_id = 10; } @@ -17162,7 +17162,7 @@ message CJLKNNNDNCL { // CmdId: 29107 message OGPNCPMGOBH { uint32 point_id = 8; - uint32 FNGAHCBKJIK = 9; + uint32 text_id = 9; uint32 quest_id = 11; } @@ -17242,7 +17242,7 @@ message EKPDOHMCHLA { // CmdId: 26137 message JLPKIHPFKEI { - uint32 GPAGBGJCPGA = 15; + uint32 bgm_id = 15; } message DELEDBMALBD { @@ -17256,7 +17256,7 @@ message JEPJDEKDOKM { } // CmdId: 853 -message INJOCNKNOAP { +message PlayerSetPauseReq { bool is_paused = 1; } @@ -19383,7 +19383,7 @@ message HomeLimitedShopGoods { uint32 HHBOIKPMLMO = 10; uint32 bought_num = 12; uint32 GHLKAFLLBJN = 14; - ItemParam JHFIBIBJCHL = 15; + ItemParam goods_item = 15; } // CmdId: 23678 @@ -20729,7 +20729,7 @@ message HomeBlockArrangementInfo { repeated NJOKBNDHOJL BLDJNKMDJNN = 6; repeated ECIIKJIKNFC MLDJPELFBCA = 7; repeated EGLCPDHFGPB PKPCNKLEKLN = 8; - uint32 OKLKHDGNHKJ = 9; + uint32 comfort_value = 9; repeated ECDJBCPLCNO field_list = 10; repeated IEKCEGFNINF OHBFPIIHBJF = 11; repeated HomeFurnitureData LHGBPPNFPCE = 13; @@ -24540,9 +24540,9 @@ message EnterCustomDungeonReq { } // CmdId: 1391 -message AMMDEPLNGDI { +message PlayerTimeNotify { bool is_paused = 2; - uint64 MMPBDCCHFPK = 9; + uint64 player_time = 9; uint64 server_time = 13; } @@ -26512,7 +26512,7 @@ message DGFDONMBAOD { } // CmdId: 26996 -message DJPKAAHDPMG { +message EntityTagChangeNotify { uint32 entity_id = 8; bool is_add = 10; string tag = 12; @@ -27169,32 +27169,32 @@ message BBCINNHANNF { } message GachaInfo { - uint32 HNFPBJIEGHD = 1; - uint32 BCDOOPICEMD = 2; + uint32 left_gacha_times = 1; + uint32 ten_cost_item_id = 2; uint32 end_time = 3; - string LCNMHLJCLIK = 4; - string HIOKPEGNPLK = 5; - uint32 EMKBGHENNEL = 6; + string gacha_preview_prefab_path = 4; + string gacha_record_url = 5; + uint32 ten_cost_item_num = 6; uint32 gachaType = 7; - uint32 NABJFPLLGGM = 8; + uint32 gacha_times_limit = 8; uint32 schedule_id = 9; - string FCPIKKHIDDO = 10; - uint32 KINBJAPMIJD = 11; - uint32 EKKEPHGDAKB = 12; - uint32 POEJPPCFPNG = 13; - string ICOEPLJMDCK = 14; + string gacha_prob_url = 10; + uint32 cost_item_id = 11; + uint32 gacha_sort_id = 12; + uint32 cost_item_num = 13; + string gacha_prefab_path = 14; uint32 begin_time = 15; - bool JLNOHJBDNJN = 298; - string ELOGPDHLPAI = 448; + bool is_new_wish = 298; + string gacha_prob_url_oversea = 448; repeated GachaUpInfo gacha_up_info_list = 535; - string JPBNAMGLKEC = 667; - repeated uint32 KIEKPNDHGGJ = 707; - uint32 NFGOJJOMFCA = 794; - uint32 MJCGMHMPKOE = 1233; - string GGCMMKLOJMN = 1354; - repeated uint32 OAJAMCHOPFJ = 1621; - uint32 BHBCHFFGHHE = 1757; - uint32 EOFACNPOJBN = 1799; + string title_textmap = 667; + repeated uint32 display_up4_item_list = 707; + uint32 wish_item_id = 794; + uint32 cur_schedule_daily_gacha_times = 1233; + string gacha_record_url_oversea = 1354; + repeated uint32 display_up5_item_list = 1621; + uint32 wish_max_progress = 1757; + uint32 wish_progress = 1799; repeated uint32 DHONBCHNPJD = 1921; } @@ -27312,18 +27312,18 @@ message GetPlayerTokenReq { /* protected @ 0x68 */// string online_id = 65535; /* protected @ 0x70 */// string KLAKLJGHDKN = 65535; /* protected @ 0x78 */// string CBBMHJONPOH = 65535; - /* protected @ 0x80 */// string DCAKNBHKFHJ = 65535; + /* protected @ 0x80 */// string auth_appid = 65535; /* protected @ 0x88 */// uint32 ECBDPOCIHEH = 65535; /* protected @ 0x8C */// uint32 channel_id = 65535; /* protected @ 0x90 */// uint32 OMBJGGGJOAO = 65535; /* protected @ 0x94 */// bool AJAGIOMGNMO = 65535; - /* protected @ 0x98 */// uint32 ANPPNCKCPOL = 65535; + /* protected @ 0x98 */// uint32 sign_type = 65535; /* protected @ 0x9C */// uint32 JNIACFONNDD = 65535; /* protected @ 0xA0 */// uint32 MOGNIAGKEMK = 65535; /* protected @ 0xA4 */// uint32 platform_type = 65535; /* protected @ 0xA8 */// uint32 PFJAKDADOKJ = 65535; /* protected @ 0xAC */// uint32 uid = 65535; - /* protected @ 0xB0 */// uint32 CPFBLKCDCDO = 65535; + /* protected @ 0xB0 */// uint32 authkey_ver = 65535; /* protected @ 0xB4 */// uint32 LKIBAOMNLCF = 65535; uint32 platform_type = 7; string account_uid = 9; @@ -27914,7 +27914,7 @@ message PlayerLoginRsp { /* protected @ 0x80 */// ResVersionConfig EKMNPEHHJKG = 65535; /* protected @ 0x88 */// repeated PDNFNBEKIHF BEKDJGBNNND = 65535; /* protected @ 0x90 */// string GECGFPEAFKP = 65535; - /* protected @ 0x98 */// string FJNCOFJADAF = 65535; + /* protected @ 0x98 */// string game_biz = 65535; /* protected @ 0xA0 */// map JFFFCBLDDDJ = 65535; /* protected @ 0xA8 */// ResVersionConfig DHKPFELBGBC = 65535; /* protected @ 0xB0 */// bytes HPICJJJIAKH = 65535; @@ -28972,7 +28972,7 @@ message FFGCACBMJEN { // CmdId: 8002 message CodexDataUpdateNotify { - uint32 AKNOHMKPPDF = 2; + uint32 weapon_max_promote_level = 2; uint32 id = 8; CodexType type = 9; } diff --git a/nameTranslation.txt b/nameTranslation.txt index 553f40da..ca631773 100644 --- a/nameTranslation.txt +++ b/nameTranslation.txt @@ -1809,3 +1809,55 @@ PPLCLIKFOAH⇨start_source PPMKGIDKMPE⇨op_type PPNCEIHIEOC⇨is_has_change PPPKJNGKEGB⇨HomePlantFieldData +NCMINEPCLFF⇨last_active_time +GCNGGDJLKFH⇨mp_player_num +PNIFKDLLGFH⇨chat_sequence +PLCFAEJEMCB⇨is_game_source +HPKNBDAEANE⇨is_psn_source +LCPBMHAHNEE⇨is_in_duel +GJBJJAECABP⇨is_duel_observable +DLNKNDCAAHI⇨item_guid_count_map +IFDGFBBCMBB⇨prop_abs +CHABEBLCLGD⇨SceneShowTextNotify +FNGAHCBKJIK⇨text_id +INJOCNKNOAP⇨PlayerSetPauseReq +EJGNMKBIONF⇨PlayerSetPauseRsp +DJPKAAHDPMG⇨EntityTagChangeNotify +LCPIGGMOOOF⇨HitClientTrivialNotify +IMPJPKBKFLB⇨daily_gacha_times +JLNOHJBDNJN⇨is_new_wish +PANJGIHEJFO⇨GetAllMailNotify +HJKMHGJBGON⇨GetAuthkeyReq +DCAKNBHKFHJ⇨auth_appid +ANPPNCKCPOL⇨sign_type +CPFBLKCDCDO⇨authkey_ver +PBKMLPJKLEM⇨GetAuthkeyRsp +FJNCOFJADAF⇨game_biz +LCJBIEODJAI⇨authkey +OFALDGJHMKE⇨GetMailItemReq +JCLANGHEMLF⇨SetPlayerBornDataReq +AKNOHMKPPDF⇨weapon_max_promote_level +EJGNMKBIONF⇨SetPlayerBornDataRsp +HNFPBJIEGHD⇨left_gacha_times +BCDOOPICEMD⇨ten_cost_item_id +LCNMHLJCLIK⇨gacha_preview_prefab_path +HIOKPEGNPLK⇨gacha_record_url +EMKBGHENNEL⇨ten_cost_item_num +NABJFPLLGGM⇨gacha_times_limit +FCPIKKHIDDO⇨gacha_prob_url +KINBJAPMIJD⇨cost_item_id +EKKEPHGDAKB⇨gacha_sort_id +POEJPPCFPNG⇨cost_item_num +ICOEPLJMDCK⇨gacha_prefab_path +ELOGPDHLPAI⇨gacha_prob_url_oversea +JPBNAMGLKEC⇨title_textmap +KIEKPNDHGGJ⇨display_up4_item_list +NFGOJJOMFCA⇨wish_item_id +GGCMMKLOJMN⇨gacha_record_url_oversea +OAJAMCHOPFJ⇨display_up5_item_list +BHBCHFFGHHE⇨wish_max_progress +EOFACNPOJBN⇨wish_progress +MJCGMHMPKOE⇨cur_schedule_daily_gacha_times +EBDGLPNHAPC⇨new_gacha_random +CKAPCKPPAIG⇨is_gacha_item_new +AAECBIKHMFM⇨is_flash_card \ No newline at end of file diff --git a/proto/AbilityBornType.proto b/proto/AbilityBornType.proto new file mode 100644 index 00000000..8b43f67c --- /dev/null +++ b/proto/AbilityBornType.proto @@ -0,0 +1,11 @@ +syntax = "proto3"; +option java_package = "emu.grasscutter.net.proto"; + +import "Vector.proto"; + +// 4.6.0 +message AbilityBornType { + Vector rot = 7; + Vector move_dir = 10; + Vector pos = 13; +} \ No newline at end of file diff --git a/proto/ChangeAvatarRsp.proto b/proto/ChangeAvatarRsp.proto index 0bc796bb..ee9f0532 100644 --- a/proto/ChangeAvatarRsp.proto +++ b/proto/ChangeAvatarRsp.proto @@ -5,6 +5,6 @@ option java_package = "emu.grasscutter.net.proto"; // CmdId: 26267 message ChangeAvatarRsp { uint64 cur_guid = 2; - /* protected @ 0x28 */// int32 retcode = 65535; + int32 retcode = 15; // OK /* protected @ 0x2C */// uint32 skill_id = 65535; } \ No newline at end of file diff --git a/proto/CodexDataUpdateNotify.proto b/proto/CodexDataUpdateNotify.proto index 96311467..fe2887e5 100644 --- a/proto/CodexDataUpdateNotify.proto +++ b/proto/CodexDataUpdateNotify.proto @@ -1,26 +1,14 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "CodexType.proto"; -// CmdId: 6551 -// Obf: NOPKDGNAPIK + +// CmdId: 8002 +// Version: 4.6.0 +// Obfs: JJIPFMLHHKI message CodexDataUpdateNotify { - uint32 weapon_max_promote_level = 3; - CodexType type = 5; - uint32 id = 2; + uint32 weapon_max_promote_level = 2; + uint32 id = 8; + CodexType type = 9; } diff --git a/proto/CodexType.proto b/proto/CodexType.proto index 483cb54e..dede5b70 100644 --- a/proto/CodexType.proto +++ b/proto/CodexType.proto @@ -1,22 +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 . - syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; -// Obf: LHGEGGKAFLM + +// 4.6.0 enum CodexType { CODEX_NONE = 0; CODEX_QUEST = 1; @@ -27,4 +12,4 @@ enum CodexType { CODEX_PUSHTIPS = 6; CODEX_VIEW = 7; CODEX_RELIQUARY = 8; -} +} \ No newline at end of file diff --git a/proto/DoGachaReq.proto b/proto/DoGachaReq.proto index b78a5fbd..a473abc0 100644 --- a/proto/DoGachaReq.proto +++ b/proto/DoGachaReq.proto @@ -1,10 +1,14 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; +// CmdId: 7748 +// Version: 4.6.0 +// Obfs: ??? message DoGachaReq { - string gacha_tag = 11; - uint32 gacha_type = 6; - uint32 gacha_schedule_id = 9; - uint32 gacha_times = 13; - uint32 gacha_random = 10; + string gachaTag = 1; + uint32 gachaScheduleId = 7; + uint32 gachaTimes = 8; + uint32 gachaRandom = 10; + uint32 gachaType = 13; } diff --git a/proto/DoGachaRsp.proto b/proto/DoGachaRsp.proto index f0199b2b..2ae295e1 100644 --- a/proto/DoGachaRsp.proto +++ b/proto/DoGachaRsp.proto @@ -1,42 +1,30 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "GachaItem.proto"; -// CmdId: 25647 -// Obf: LDCEEHGLDNN + +// CmdId: 3838 +// Version: 4.6.0 +// Obfs: IMDOCDDMJDD message DoGachaRsp { - uint32 tenCostItemNum = 8; - uint32 gachaTimes = 5; - uint32 wishMaxProgress = 9; - repeated GachaItem gacha_item_list = 6; - uint32 leftGachaTimes = 11; - int32 retcode = 2; - uint32 costItemNum = 10; - uint32 curScheduleDailyGachaTimes = 706; - uint32 wishProgress = 4; - bool is_under_general_restrict = 1054; - uint32 gachaType = 14; - uint32 dailyGachaTimes = 509; - uint32 newGachaRandom = 7; - bool is_under_minors_restrict = 1446; - uint32 gachaScheduleId = 13; - uint32 costItemId = 12; - uint32 tenCostItemId = 3; - uint32 gachaTimesLimit = 15; - uint32 wishItemId = 1; + uint32 ten_cost_item_id = 1; + uint32 wish_item_id = 2; + uint32 wish_max_progress = 3; + uint32 new_gacha_random = 4; // sus + int32 retcode = 5; + uint32 wish_progress = 6; + uint32 ten_cost_item_num = 7; + uint32 left_gacha_times = 8; + uint32 cost_item_id = 9; + uint32 cost_item_num = 10; + uint32 gacha_times_limit = 11; + uint32 gachaType = 12; + repeated GachaItem gacha_item_list = 13; + uint32 gachaScheduleId = 14; + uint32 gachaTimes = 15; + uint32 daily_gacha_times = 156; + bool is_under_general_restrict = 205; // BLIOHILHJOP (205, 1563) + uint32 cur_schedule_daily_gacha_times = 1513; // sus + bool is_under_minors_restrict = 1563; // AGPAJPJENKG (205, 1563) } diff --git a/proto/EntityTagChangeNotify.proto b/proto/EntityTagChangeNotify.proto new file mode 100644 index 00000000..68968f2c --- /dev/null +++ b/proto/EntityTagChangeNotify.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + +// CmdId: 26996 +// Version: 4.6.0 +// Obfs: DJPKAAHDPMG +message EntityTagChangeNotify { + uint32 entity_id = 8; + bool is_add = 10; + string tag = 12; +} \ No newline at end of file diff --git a/proto/EvtCreateGadgetNotify.proto b/proto/EvtCreateGadgetNotify.proto index 258ce2c9..ed5c8125 100644 --- a/proto/EvtCreateGadgetNotify.proto +++ b/proto/EvtCreateGadgetNotify.proto @@ -1,29 +1,36 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "Vector.proto"; import "ForwardType.proto"; +import "AbilityString.proto"; +// CmdId: 24638 +// Version: 4.6.0 +// Obfs: ??? message EvtCreateGadgetNotify { - Vector init_pos = 7; - repeated uint32 target_entity_id_list = 1826; - Vector init_euler_angles = 12; - repeated uint32 target_lock_point_index_list = 397; - uint32 born_slot_index = 1196; - uint32 target_entity_id = 13; - uint32 config_id = 9; - uint32 owner_entity_id = 6; - uint32 camp_type = 1; - uint32 entity_id = 2; - uint32 init_pose_id = 1245; - int32 local_id = 1365; - uint32 target_lock_point_index = 3; - uint32 room_id = 5; - ForwardType forward_type = 11; - uint32 prop_owner_entity_id = 10; - uint64 guid = 14; - bool CEONINFOHLJ = 15; - bool is_peer_id_from_player = 1814; - bool is_async_load = 261; - bool ECCCOOBCNJL = 8; - uint32 camp_id = 4; -} + uint32 config_id = 1; + uint32 HOFCLFELEMK = 2; + bool is_async_load = 3; // LGOLECDFPNK sus + uint32 entity_id = 4; + bool BANJELHCLDK = 5; + uint32 room_id = 6; + uint32 camp_type = 7; + Vector InitEulerAngles = 8; + uint64 guid = 9; + uint32 camp_id = 10; + uint32 target_entity_id = 11; + ForwardType forward_type = 12; + Vector InitPos = 13; + uint32 owner_entity_id = 14; + uint32 prop_owner_entity_id = 15; + AbilityString ability_name = 440; + uint32 KDPGILHNFNM = 554; + repeated uint32 target_lock_point_index_list = 588; + repeated uint32 target_entity_id_list = 1298; + int32 local_id = 1381; + bool PDGGCPDDAOL = 1542; + uint32 init_pose_id = 1860; + bool is_peer_id_from_player = 1956; +} \ No newline at end of file diff --git a/proto/EvtDestroyGadgetNotify.proto b/proto/EvtDestroyGadgetNotify.proto index b4410bd6..70499dc6 100644 --- a/proto/EvtDestroyGadgetNotify.proto +++ b/proto/EvtDestroyGadgetNotify.proto @@ -1,25 +1,13 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "ForwardType.proto"; -// CmdId: 5833 -// Obf: JOPFKPGNIKG + +// CmdId: 21713 +// Version: 4.6.0 +// Obfs: ??? message EvtDestroyGadgetNotify { - ForwardType forward_type = 1; - uint32 entity_id = 8; -} + uint32 entity_id = 2; + ForwardType forward_type = 3; +} \ No newline at end of file diff --git a/proto/FriendBrief.proto b/proto/FriendBrief.proto index 630a587b..ec3c72f3 100644 --- a/proto/FriendBrief.proto +++ b/proto/FriendBrief.proto @@ -17,20 +17,20 @@ message FriendBrief { string signature = 6; FriendOnlineState online_state = 7; uint32 param = 8; - bool is_friend = 10; + bool is_mp_mode_available = 10; string online_id = 11; - uint32 NCMINEPCLFF = 12; + uint32 last_active_time = 12; uint32 name_card_id = 13; - uint32 GCNGGDJLKFH = 14; + uint32 mp_player_num = 14; bool is_chat_no_disturb = 15; - uint32 PNIFKDLLGFH = 16; + uint32 chat_sequence = 16; string remark_name = 17; repeated SocialShowAvatarInfo show_avatar_info_list = 22; FriendEnterHomeOption friend_enter_home_option = 23; ProfilePicture profile_picture = 24; - bool PLCFAEJEMCB = 25; - bool HPKNBDAEANE = 26; + bool is_game_source = 25; + bool is_psn_source = 26; PlatformType platform_type = 27; - bool LCPBMHAHNEE = 28; - bool GJBJJAECABP = 29; + bool is_in_duel = 28; + bool is_duel_observable = 29; } \ No newline at end of file diff --git a/proto/GachaInfo.proto b/proto/GachaInfo.proto index 1c832312..f23b7158 100644 --- a/proto/GachaInfo.proto +++ b/proto/GachaInfo.proto @@ -1,48 +1,39 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "GachaUpInfo.proto"; -// Obf: LBJPFCBOKFM + +// Version: 4.6.0 +// Obfs: ??? +// RN fill order frm 3.2.0 +// 3 is wish_item_id wish_max_progress wish_progress message GachaInfo { - uint32 costItemId = 13; - string gachaPrefabPath = 10; - uint32 gachaType = 1; - uint32 wishMaxProgress = 960; - uint32 curScheduleDailyGachaTimes = 1456; - uint32 leftGachaTimes = 15; - bool is_new_wish = 1537; - uint32 tenCostItemNum = 8; - uint32 wishProgress = 1511; - uint32 schedule_id = 5; - uint32 tenCostItemId = 6; - uint32 gachaSortId = 11; - repeated uint32 displayUp4ItemList = 1285; - string gachaRecordUrlOversea = 1221; - string gachaRecordUrl = 4; - string gachaProbUrlOversea = 1181; - string gachaProbUrl = 9; - uint32 begin_time = 3; - uint32 wishItemId = 870; - uint32 end_time = 7; - string gachaPreviewPrefabPath = 12; - string titleTextmap = 847; - repeated uint32 displayUp5ItemList = 1831; - uint32 gachaTimesLimit = 14; - repeated GachaUpInfo gacha_up_info_list = 1514; - uint32 costItemNum = 2; -} + uint32 left_gacha_times = 1; // found 2 HNFPBJIEGHD (uint32 limit) + uint32 ten_cost_item_id = 2; // found 2 BCDOOPICEMD (2, 11) + uint32 end_time = 3; // OK + string gacha_preview_prefab_path = 4; // single LCNMHLJCLIK OK + string gacha_record_url = 5; // single HIOKPEGNPLK (5, 1354) + uint32 ten_cost_item_num = 6; // found 2 EMKBGHENNEL OK + uint32 gachaType = 7; // OK + uint32 gacha_times_limit = 8; // found 2 NABJFPLLGGM (uint32 limit) + uint32 schedule_id = 9; // OK + string gacha_prob_url = 10; // single FCPIKKHIDDO (10, 448) + uint32 cost_item_id = 11; // found 2 KINBJAPMIJD (2, 11) + uint32 gacha_sort_id = 12; // single EKKEPHGDAKB OK + uint32 cost_item_num = 13; // found 2 POEJPPCFPNG OK + string gacha_prefab_path = 14; // single ICOEPLJMDCK OK + uint32 begin_time = 15; // OK + bool is_new_wish = 298; // JLNOHJBDNJN OK + string gacha_prob_url_oversea = 448; // single ELOGPDHLPAI (10, 448) + repeated GachaUpInfo gacha_up_info_list = 535; // OK + string title_textmap = 667; // single JPBNAMGLKEC OK + repeated uint32 display_up4_item_list = 707; // single KIEKPNDHGGJ OK + uint32 wish_item_id = 794; // found 3 NFGOJJOMFCA OK + uint32 cur_schedule_daily_gacha_times = 1233; // found 2 MJCGMHMPKOE sus + string gacha_record_url_oversea = 1354; // single GGCMMKLOJMN (5, 1354) + repeated uint32 display_up5_item_list = 1621; // single OAJAMCHOPFJ (1621, 1921) + uint32 wish_max_progress = 1757; // found 3 BHBCHFFGHHE OK + uint32 wish_progress = 1799; // found 3 EOFACNPOJBN OK + repeated uint32 DHONBCHNPJD = 1921; // single DHONBCHNPJD (1621, 1921) +} \ No newline at end of file diff --git a/proto/GachaItem.proto b/proto/GachaItem.proto index 9155c06e..716bc335 100644 --- a/proto/GachaItem.proto +++ b/proto/GachaItem.proto @@ -1,28 +1,16 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "ItemParam.proto"; import "GachaTransferItem.proto"; -// Obf: NJOOCPHJKKG + +// Version: 4.6.0 +// Obfs: EDJOEJJIOMG message GachaItem { - repeated ItemParam token_item_list = 9; - bool is_gacha_item_new = 6; - ItemParam gacha_item = 4; - bool is_flash_card = 2; - repeated GachaTransferItem transfer_items = 1; + ItemParam gacha_item = 4; + repeated ItemParam token_item_list = 9; + bool is_gacha_item_new = 11; // CKAPCKPPAIG + repeated GachaTransferItem transfer_items = 12; + bool is_flash_card = 14; // AAECBIKHMFM } diff --git a/proto/GachaTransferItem.proto b/proto/GachaTransferItem.proto index abbfedb5..264005ae 100644 --- a/proto/GachaTransferItem.proto +++ b/proto/GachaTransferItem.proto @@ -1,24 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "ItemParam.proto"; -// Obf: KGHFCKLJBLC + +// Version: 4.6.0 +// Obfs: AFCOODFGGDL message GachaTransferItem { - ItemParam item = 9; - bool is_transfer_item_new = 6; + ItemParam item = 2; + bool is_transfer_item_new = 3; } diff --git a/proto/GachaUpInfo.proto b/proto/GachaUpInfo.proto index ca0175b8..ca152ff8 100644 --- a/proto/GachaUpInfo.proto +++ b/proto/GachaUpInfo.proto @@ -1,23 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// Obf: GLKEEDIHOFH + +// Version: 4.6.0 +// Obfs: ??? message GachaUpInfo { - repeated uint32 item_id_list = 4; - uint32 item_parent_type = 6; -} + uint32 item_parent_type = 1; + repeated uint32 item_id_list = 9; +} \ No newline at end of file diff --git a/proto/GetAllMailNotify.proto b/proto/GetAllMailNotify.proto index 5ac439a8..79e1139b 100644 --- a/proto/GetAllMailNotify.proto +++ b/proto/GetAllMailNotify.proto @@ -1,6 +1,10 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; +// CmdId: 20077 +// Version: 4.6.0 +// Obfs: PANJGIHEJFO message GetAllMailNotify { - bool is_collected = 1; + bool is_collected = 4; } diff --git a/proto/GetAllMailResultNotify.proto b/proto/GetAllMailResultNotify.proto index 91420676..c7cc4047 100644 --- a/proto/GetAllMailResultNotify.proto +++ b/proto/GetAllMailResultNotify.proto @@ -1,13 +1,17 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; import "MailData.proto"; +// CmdId: 29484 +// Version: 4.6.0 +// Obfs: MPLFKHHMJKP message GetAllMailResultNotify { - int32 retcode = 1; - repeated MailData mail_list = 3; - string transaction = 7; - uint32 packet_num = 9; - bool is_collected = 12; - uint32 packet_be_sent_num = 15; + int32 retcode = 1; + repeated MailData mail_list = 3; + string transaction = 7; + uint32 packet_num = 9; + bool is_collected = 12; + uint32 packet_be_sent_num = 15; } diff --git a/proto/GetAuthkeyReq.proto b/proto/GetAuthkeyReq.proto index cb34c318..022263d5 100644 --- a/proto/GetAuthkeyReq.proto +++ b/proto/GetAuthkeyReq.proto @@ -1,25 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 27875 -// Obf: DCPMJKGKCGE + +// CmdId: 20926 +// Version: 4.6.0 +// Obfs: HJKMHGJBGON message GetAuthkeyReq { - uint32 PGANJHDNINM = 7; - string auth_appid = 2; - uint32 BIGHJAIBJJK = 14; + string auth_appid = 4; + uint32 sign_type = 5; + uint32 authkey_ver = 14; } diff --git a/proto/GetAuthkeyRsp.proto b/proto/GetAuthkeyRsp.proto index 5a25c02e..0045b510 100644 --- a/proto/GetAuthkeyRsp.proto +++ b/proto/GetAuthkeyRsp.proto @@ -1,28 +1,15 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 29353 -// Obf: KNBBKOGAAHL + +// CmdId: 24258 +// Version: 4.6.0 +// Obfs: PBKMLPJKLEM message GetAuthkeyRsp { - uint32 PGANJHDNINM = 7; - string authkey = 12; - uint32 BIGHJAIBJJK = 2; - int32 retcode = 9; - string auth_appid = 5; - string game_biz = 1; + string game_biz = 1; + string authkey = 2; + int32 retcode = 6; + uint32 sign_type = 11; + uint32 authkey_ver = 12; + string auth_appid = 14; } diff --git a/proto/GetGachaInfoReq.proto b/proto/GetGachaInfoReq.proto index 5cc157c3..13b3ebd6 100644 --- a/proto/GetGachaInfoReq.proto +++ b/proto/GetGachaInfoReq.proto @@ -1,22 +1,9 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 181 -// Obf: ICLGLDGHDGP + +// CmdId: 20029 +// Version: 4.6.0 +// Obfs: LNEBPLKCKLJ message GetGachaInfoReq { } diff --git a/proto/GetGachaInfoRsp.proto b/proto/GetGachaInfoRsp.proto index d6585a1c..797a3916 100644 --- a/proto/GetGachaInfoRsp.proto +++ b/proto/GetGachaInfoRsp.proto @@ -1,12 +1,17 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "GachaInfo.proto"; +// CmdId: 1610 +// Version: 4.6.0 +// Obfs: message GetGachaInfoRsp { - repeated GachaInfo gacha_info_list = 9; - bool is_under_minors_restrict = 11; - bool is_under_general_restrict = 5; - uint32 daily_gacha_times = 13; - int32 retcode = 12; - uint32 gacha_random = 4; + uint32 daily_gacha_times = 2; //IMPJPKBKFLB + int32 retcode = 3; + repeated GachaInfo gacha_info_list = 5; + bool is_under_general_restrict = 9; // BLIOHILHJOP 5050 + uint32 gachaRandom = 11; + bool is_under_minors_restrict = 13; // AGPAJPJENKG 5050 } diff --git a/proto/GetMailItemReq.proto b/proto/GetMailItemReq.proto index e26b258f..b3e267bd 100644 --- a/proto/GetMailItemReq.proto +++ b/proto/GetMailItemReq.proto @@ -1,23 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 5317 -// Obf: GLKNPOJNACB + +// CmdId: 7230 +// Version: 4.6.0 +// Obfs: OFALDGJHMKE message GetMailItemReq { - repeated uint32 mail_id_list = 14; + repeated uint32 mail_id_list = 8; } diff --git a/proto/GetMailItemRsp.proto b/proto/GetMailItemRsp.proto index 571d85ee..6224d03e 100644 --- a/proto/GetMailItemRsp.proto +++ b/proto/GetMailItemRsp.proto @@ -1,26 +1,14 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; + import "EquipParam.proto"; -// CmdId: 27050 -// Obf: MCJPPPBEHPE + +// CmdId: 6607 +// Version: 4.6.0 +// Obfs: IMOHHNPKKDF message GetMailItemRsp { - repeated EquipParam item_list = 8; - repeated uint32 mail_id_list = 13; - int32 retcode = 1; + int32 retcode = 3; + repeated uint32 mail_id_list = 6; + repeated EquipParam item_list = 14; } diff --git a/proto/HitClientTrivialNotify.proto b/proto/HitClientTrivialNotify.proto new file mode 100644 index 00000000..9ea474b8 --- /dev/null +++ b/proto/HitClientTrivialNotify.proto @@ -0,0 +1,13 @@ +syntax = "proto3"; + +option java_package = "emu.grasscutter.net.proto"; + +import "Vector.proto"; + +// CmdId: 8588 +// Version: 4.6.0 +// Obfs: LCPIGGMOOOF +message HitClientTrivialNotify { + Vector position = 6; + uint32 owner_entity_id = 7; +} diff --git a/proto/ItemGivingReq.proto b/proto/ItemGivingReq.proto index 98312a5d..ea5e802b 100644 --- a/proto/ItemGivingReq.proto +++ b/proto/ItemGivingReq.proto @@ -6,7 +6,12 @@ import "ItemParam.proto"; // 4.6.0 // CmdId: 204 message ItemGivingReq { - map DLNKNDCAAHI = 2; + enum ItemGivingType { + QUEST = 0; + GADGET = 1; + } + map item_guid_count_map = 2; uint32 giving_id = 6; repeated ItemParam item_param_list = 14; + ItemGivingType item_giving_type = 1; // TODO 4.6.0 } \ No newline at end of file diff --git a/proto/NpcTalkReq.proto b/proto/NpcTalkReq.proto index 8f18115c..3404d0d5 100644 --- a/proto/NpcTalkReq.proto +++ b/proto/NpcTalkReq.proto @@ -1,8 +1,10 @@ syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; +// 4.6.0 +// CmdId: 24463 message NpcTalkReq { - uint32 talk_id = 2; - uint32 npc_entity_id = 1; - uint32 entity_id = 8; -} + uint32 entity_id = 2; + uint32 npc_entity_id = 12; + uint32 talk_id = 15; +} \ No newline at end of file diff --git a/proto/NpcTalkRsp.proto b/proto/NpcTalkRsp.proto index f7203d8e..892065f7 100644 --- a/proto/NpcTalkRsp.proto +++ b/proto/NpcTalkRsp.proto @@ -1,9 +1,11 @@ syntax = "proto3"; option java_package = "emu.grasscutter.net.proto"; +// 4.6.0 +// CmdId: 7039 message NpcTalkRsp { - int32 retcode = 7; - uint32 entity_id = 11; - uint32 cur_talk_id = 6; - uint32 npc_entity_id = 9; -} + uint32 entity_id = 8; + int32 retcode = 9; + uint32 cur_talk_id = 12; + uint32 npc_entity_id = 15; +} \ No newline at end of file diff --git a/proto/PlayerSetPauseReq.proto b/proto/PlayerSetPauseReq.proto index a67202bf..e4645ba8 100644 --- a/proto/PlayerSetPauseReq.proto +++ b/proto/PlayerSetPauseReq.proto @@ -1,6 +1,10 @@ syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; +// CmdId: 853 +// Version: 4.6.0 +// Obfs: INJOCNKNOAP message PlayerSetPauseReq { - bool is_paused = 6; + bool is_paused = 1; } diff --git a/proto/PlayerSetPauseRsp.proto b/proto/PlayerSetPauseRsp.proto index d08c7654..c87f57d1 100644 --- a/proto/PlayerSetPauseRsp.proto +++ b/proto/PlayerSetPauseRsp.proto @@ -1,23 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 1771 -// Obf: DJHGLEGIDAC + +// CmdId: 28367 +// Version: 4.6.0 +// Obfs: EJGNMKBIONF message PlayerSetPauseRsp { - int32 retcode = 3; + int32 retcode = 7; } diff --git a/proto/SceneEntityDrownReq.proto b/proto/SceneEntityDrownReq.proto index f24d34f4..710e3175 100644 --- a/proto/SceneEntityDrownReq.proto +++ b/proto/SceneEntityDrownReq.proto @@ -1,23 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 22277 -// Obf: DEDMMLJOCEF + +// CmdId: 24672 +// Version: 4.6.0 +// Obfs: LFBKNJCPKIJ message SceneEntityDrownReq { - uint32 entity_id = 14; -} + uint32 entity_id = 13; +} \ No newline at end of file diff --git a/proto/SetPlayerBornDataReq.proto b/proto/SetPlayerBornDataReq.proto index 54a602c1..0f5a0ad3 100644 --- a/proto/SetPlayerBornDataReq.proto +++ b/proto/SetPlayerBornDataReq.proto @@ -1,24 +1,11 @@ -// 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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 7992 -// Obf: OBEJBFKGLPI + +// CmdId: 26645 +// Version: 4.6.50 +// Obfs: JCLANGHEMLF message SetPlayerBornDataReq { - string nick_name = 10; - uint32 avatar_id = 2; + string nick_name = 5; + uint32 avatar_id = 8; } diff --git a/proto/SetPlayerBornDataRsp.proto b/proto/SetPlayerBornDataRsp.proto index d807ab50..f32d5f88 100644 --- a/proto/SetPlayerBornDataRsp.proto +++ b/proto/SetPlayerBornDataRsp.proto @@ -1,23 +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 . - syntax = "proto3"; + option java_package = "emu.grasscutter.net.proto"; -// CmdId: 22804 -// Obf: CGFIJAMAKEG + +// CmdId: 23193 +// Version: 4.6.0 +// Obfs: MNFMHLPNPIA message SetPlayerBornDataRsp { - int32 retcode = 14; + int32 retcode = 7; }