diff --git a/deobf.proto b/deobf.proto
index 11c19881..941f9c13 100644
--- a/deobf.proto
+++ b/deobf.proto
@@ -53,7 +53,7 @@ message SalvageEscortSettleInfo {
// CmdId: 5571
message MHIAPDACIJK {
- EFCMJDJGILN EEJKOPCANGF = 12;
+ HomeFishFarmingInfo EEJKOPCANGF = 12;
}
// CmdId: 3952
@@ -166,7 +166,7 @@ message FishEscapeNotify {
uint32 uid = 2;
FishEscapeReason reason = 3;
Vector pos = 13;
- repeated uint32 DBGFELGBNCE = 15;
+ repeated uint32 fish_id_list = 15;
}
// CmdId: 8702
@@ -291,10 +291,10 @@ message SceneMonsterInfo {
}
// CmdId: 9498
-message EFPEFPLEDJA {
+message SceneRouteChangeNotify {
uint32 scene_time = 6;
uint32 scene_id = 8;
- repeated GAALLMKNLOA EGNGMKNAEOF = 12;
+ repeated SceneRouteChangeInfo route_list = 12;
}
message SeaLampV3DetailInfo {
@@ -344,7 +344,7 @@ message OtherPlayerEnterHomeNotify {
string nickname = 7;
}
-message DFKPGHOBLLC {
+message PlayProduct {
string product_id = 1;
string price_tier = 2;
uint32 schedule_id = 3;
@@ -700,7 +700,7 @@ message GADKMNCKELP {
repeated uint32 monster_id_list = 2;
}
-message ICFBHOPMKCI {
+message NpcPositionInfo {
uint32 npc_id = 1;
Vector pos = 2;
}
@@ -775,7 +775,7 @@ message ODNPPJCNLCK {
message GONHOPIBJHI {
uint32 HNCJEHKKDKP = 3;
- int32 AMAPPLHPEJO = 11;
+ int32 hash_value = 11;
uint32 entity_id = 14;
}
@@ -916,7 +916,7 @@ message CJLJPNIKDCB {
int32 retcode = 11;
}
-message MMGJJJFDIPK {
+message HomeBlueprintSearchInfo {
uint32 module_id = 4;
string share_code = 5;
uint32 scene_id = 10;
@@ -1302,9 +1302,9 @@ message BMJMKNBALPD {
}
// CmdId: 4426
-message FPLDICCHNPH {
- uint32 CJEKECDJKFP = 2;
- uint32 OECJOIMFNBD = 4;
+message GetBattlePassProductRsp {
+ uint32 battle_pass_product_play_type = 2;
+ uint32 cur_schedule_id = 4;
string price_tier = 8;
int32 retcode = 12;
string product_id = 14;
@@ -3551,7 +3551,7 @@ message FLMMGHHBIHH {
bool MAPAHLONKAA = 11;
uint32 KDCDFKCOINH = 12;
repeated MFKPGOKKIOD JIFLNADLEBG = 501;
- repeated ELAAJAGLNMM NNHGOPIDCJC = 559;
+ repeated ELAAJAGLNMM npc_info_list = 559;
repeated NELOMLDEJHE OMIJLNDFIDM = 659;
repeated uint32 EOOALOPDPHL = 717;
repeated uint32 GOOMEMIKNFH = 897;
@@ -3868,8 +3868,8 @@ message LevelupCityRsp {
uint32 area_id = 14;
}
-message AAACNIECLGF {
- uint32 LBHNFFJILMN = 3;
+message AnchorPointData {
+ uint32 anchor_point_id = 3;
Vector pos = 4;
Vector rot = 5;
uint32 scene_id = 10;
@@ -3877,7 +3877,7 @@ message AAACNIECLGF {
}
// CmdId: 2937
-message HFANJCHEDHC {
+message AvatarUpgradeReq {
repeated ItemParam item_param_list = 6;
uint64 avatar_guid = 15;
}
@@ -3978,7 +3978,7 @@ message GCGMsgSkillLimitsChange {
// CmdId: 4379
message NDAMNHJOKAN {
- int32 AMAPPLHPEJO = 7;
+ int32 hash_value = 7;
uint32 HNCJEHKKDKP = 12;
uint32 entity_id = 14;
}
@@ -4288,9 +4288,9 @@ message AAKPFAKMFCM {
message JCJECIEPFGC {
}
-enum DJLNCMNEAOI {
- DJLNCMNEAOI_TRANSMIT_NONE = 0;
- DJLNCMNEAOI_TRANSMIT_QUEST = 1;
+enum TransmitReason {
+ TransmitReason_TRANSMIT_NONE = 0;
+ TransmitReason_TRANSMIT_QUEST = 1;
}
enum DraftInviteFailReason {
@@ -4310,7 +4310,7 @@ message CLBACADBDDI {
// CmdId: 5816
message CNJPFBGDIIN {
- JFKAJMIADFD EEJKOPCANGF = 4;
+ HomeScenePointFishFarmingInfo EEJKOPCANGF = 4;
}
message IDFCIKCGKBL {
@@ -4951,8 +4951,8 @@ message LAGODKHKKFF {
}
// CmdId: 24391
-message PCPEGKIEPPG {
- repeated uint32 DJPAFJELCPB = 5;
+message TakeBattlePassMissionPointReq {
+ repeated uint32 mission_id_list = 5;
}
message GatherGadgetInfo {
@@ -5121,8 +5121,8 @@ message HitCollision {
}
// CmdId: 20941
-message CCADIDOMPPK {
- uint32 IIKNKCNJBGE = 1;
+message BuyBattlePassLevelReq {
+ uint32 buy_level = 1;
}
message NPJCAHLFPBK {
@@ -5605,7 +5605,7 @@ message BJMFPMEOLFJ {
}
// CmdId: 245
-message DDKBDEJDHEJ {
+message GetAllUnlockNameCardReq {
}
// CmdId: 4796
@@ -5881,7 +5881,7 @@ message OPLCCIDJDHP {
// CmdId: 20468
message FBEKIKNPJDE {
- repeated EFCMJDJGILN JOCFMFLPKJM = 12;
+ repeated HomeFishFarmingInfo JOCFMFLPKJM = 12;
}
message HNCHDEGIFGP {
@@ -6050,11 +6050,11 @@ message Achievement {
message GetShopmallDataReq {
}
-message GAALLMKNLOA {
- repeated DDFCGDCJODG point_list = 3;
+message SceneRouteChangeInfo {
+ repeated RoutePointChangeInfo point_list = 3;
uint32 route_id = 10;
uint32 type = 12;
- bool EGIIBICENMB = 14;
+ bool is_forward = 14;
}
message APPLPCHPCOM {
@@ -6735,8 +6735,8 @@ message FHELJJIGAKD {
}
// CmdId: 7279
-message LOHKIHALHIC {
- DJLNCMNEAOI reason = 5;
+message ClientTransmitReq {
+ TransmitReason reason = 5;
Vector pos = 9;
Vector rot = 11;
uint32 scene_id = 13;
@@ -7152,10 +7152,10 @@ message LNIHAODGBEE {
message BMNDGCPINNE {
}
-message IPHAEDEDLGF {
- string KEIKALBHJEG = 2;
- string NELABOBFDBB = 4;
- string CJKPIPBHJBN = 11;
+message BattlePassProduct {
+ string normal_product_id = 2;
+ string upgrade_product_id = 4;
+ string extra_product_id = 11;
}
// CmdId: 27172
@@ -7232,7 +7232,7 @@ message NCBCOKFJKFB {
message IHLICBPLJBK {
int32 retcode = 2;
uint32 PHKIDGICECP = 4;
- uint32 LBHNFFJILMN = 10;
+ uint32 anchor_point_id = 10;
}
message AbilityActionCreateGadget {
@@ -7664,7 +7664,7 @@ message HachiActivityDetailInfo {
// CmdId: 25333
message FKEKEFCJGPL {
int32 retcode = 1;
- repeated EFCMJDJGILN JOCFMFLPKJM = 5;
+ repeated HomeFishFarmingInfo JOCFMFLPKJM = 5;
}
// CmdId: 6792
@@ -7967,15 +7967,15 @@ message StartRogueEliteCellChallengeReq {
message DMIPILIOJHD {
}
-message OOJCDBNFDCK {
+message ToTheMoonObstacleInfo {
enum GONBEFDNMEH {
GONBEFDNMEH_OBSTACLE_SHAPE_CAPSULE = 0;
GONBEFDNMEH_OBSTACLE_SHAPE_BOX = 1;
}
Vector center = 2;
- int32 ALGLEILDMNF = 3;
- Vector AHABNJOBFKB = 4;
+ int32 handle_id = 3;
+ Vector half_extents = 4;
GONBEFDNMEH type = 10;
MathQuaternion rotation = 11;
}
@@ -8009,7 +8009,7 @@ message WorldPlayerInfoNotify {
}
// CmdId: 24300
-message OIODNALPKFD {
+message HomeSaveArrangementNoChangeRsp {
uint32 scene_id = 6;
int32 retcode = 10;
}
@@ -8072,7 +8072,7 @@ message GEJLHPMFEMI {
// CmdId: 4648
message BLPCNGFGCBA {
- uint32 PMAEBJCCBNA = 2;
+ uint32 mission_id = 2;
uint32 reward_id = 9;
uint32 IHFCOPOEGDG = 11;
}
@@ -8349,19 +8349,19 @@ message QueryRegionListHttpRsp {
}
message BattlePassSchedule {
- CNCKBALKDCG LJFKLGMDKJJ = 1;
+ BattlePassCycle cur_cycle = 1;
uint32 schedule_id = 2;
- uint32 GECKAKLNAID = 3;
+ uint32 point = 3;
BattlePassUnlockStatus unlock_status = 4;
- repeated BattlePassRewardTag JAEAEKCMJJI = 5;
+ repeated BattlePassRewardTag reward_taken_list = 5;
uint32 begin_time = 6;
- uint32 IDJOJEHFMHM = 7;
- uint32 NALIJACNLLL = 8;
- IPHAEDEDLGF KCPDHBGAJCE = 10;
+ uint32 paid_platform_flags = 7;
+ uint32 cur_cycle_points = 8;
+ BattlePassProduct product_info = 10;
uint32 end_time = 12;
uint32 level = 13;
- bool PCPNJNGAFLE = 14;
- bool HDIMHNDPLKP = 15;
+ bool is_extra_paid_reward_taken = 14;
+ bool is_viewed = 15;
}
// CmdId: 4421
@@ -8613,8 +8613,8 @@ message KNIOIHIJFIH {
}
// CmdId: 28537
-message LNPPIBAKLFF {
- repeated MEIMHEKHOLO AONFGKIPALE = 10;
+message DeshretObeliskChestInfoNotify {
+ repeated DeshretObeliskChestInfo chest_info_list = 10;
}
message GKBAJDGKIJP {
@@ -9456,8 +9456,8 @@ message PDNFHBNGONA {
}
// CmdId: 6118
-message FKBIPLGJBMF {
- int32 IPCNPKFLFAK = 5;
+message ToTheMoonRemoveObstacleReq {
+ int32 handle = 5;
uint32 scene_id = 8;
int32 query_id = 10;
}
@@ -9544,7 +9544,7 @@ message CJDGJAKHIBI {
uint32 level_id = 8;
}
-message MEIMHEKHOLO {
+message DeshretObeliskChestInfo {
uint32 group_id = 3;
uint32 map_layer_id = 5;
Vector pos = 8;
@@ -10153,8 +10153,8 @@ message GPHJENDBEAJ {
}
// CmdId: 28878
-message HOEBDLJJCPL {
- uint32 IILCMNPGJKC = 1;
+message MarkTargetInvestigationMonsterNotify {
+ uint32 investigation_monster_id = 1;
uint32 scene_id = 2;
uint32 group_id = 4;
uint32 monster_id = 8;
@@ -10776,7 +10776,7 @@ message MGFAMNPCCOA {
}
// CmdId: 28307
-message GFOEDGAKNPI {
+message WeaponUpgradeReq {
repeated ItemParam item_param_list = 3;
uint64 target_weapon_guid = 6;
repeated uint64 food_weapon_guid_list = 13;
@@ -11093,11 +11093,11 @@ message HNMOHPKNEGP {
}
// CmdId: 6110
-message ILCGFEJGBMJ {
+message ToTheMoonAddObstacleReq {
uint32 scene_id = 2;
int32 query_id = 9;
- OOJCDBNFDCK NFKKDNPEMPK = 10;
- bool NBEMHAPDGKH = 11;
+ ToTheMoonObstacleInfo obstacle = 10;
+ bool use_edge = 11;
}
message TrifleGadget {
@@ -11199,7 +11199,7 @@ message IMHGEFDPADL {
// CmdId: 6135
message MLAKFNMKOKG {
int32 retcode = 3;
- repeated OOJCDBNFDCK obstacles = 6;
+ repeated ToTheMoonObstacleInfo obstacles = 6;
}
// CmdId: 5372
@@ -11211,7 +11211,7 @@ message ActivityPushTipsInfoNotify {
// CmdId: 25042
message MOCHNEHKOFH {
- uint32 PMAEBJCCBNA = 8;
+ uint32 mission_id = 8;
}
message FleurFairBalloonSettleInfo {
@@ -12032,9 +12032,9 @@ message DFHBDIDGFEJ {
}
// CmdId: 28183
-message LBNOHJDLCOM {
+message HomeSearchBlueprintRsp {
int32 retcode = 10;
- MMGJJJFDIPK JFLKFMCKEFG = 12;
+ HomeBlueprintSearchInfo search_info = 12;
}
message BalloonSettleInfo {
@@ -12166,7 +12166,7 @@ message GetGachaInfoRsp {
message FPEKACCGPEK {
float cur_value = 13;
- int32 AMAPPLHPEJO = 15;
+ int32 hash_value = 15;
}
// CmdId: 8613
@@ -12175,9 +12175,9 @@ message IMOLKEHFGHJ {
}
// CmdId: 5756
-message CGAMLKOBIKD {
+message TakeBattlePassMissionPointRsp {
int32 retcode = 7;
- repeated uint32 DJPAFJELCPB = 12;
+ repeated uint32 mission_id_list = 12;
}
// CmdId: 8968
@@ -12215,7 +12215,7 @@ message DEJFAFBNEPF {
// CmdId: 185
message IBLLKCIGJDA {
- repeated JFKAJMIADFD JOCFMFLPKJM = 4;
+ repeated HomeScenePointFishFarmingInfo JOCFMFLPKJM = 4;
}
// CmdId: 6957
@@ -12865,7 +12865,7 @@ message GGFCGGLOBLE {
}
// CmdId: 842
-message BGBFEAGIFKO {
+message QuestDestroyEntityReq {
uint32 scene_id = 3;
uint32 quest_id = 6;
uint32 entity_id = 11;
@@ -13549,10 +13549,10 @@ message GPLBNFCFOKL {
uint32 CEIDNHMFOGF = 13;
}
-message CNCKBALKDCG {
+message BattlePassCycle {
uint32 end_time = 7;
uint32 begin_time = 11;
- uint32 OBCBKMKGNAM = 13;
+ uint32 cycle_idx = 13;
}
// CmdId: 28287
@@ -13657,7 +13657,7 @@ message MNJNIJEOOEO {
}
// CmdId: 21516
-message FMBJMHMGGOF {
+message SetNameCardReq {
uint32 name_card_id = 3;
}
@@ -13967,12 +13967,12 @@ enum AbilityInvokeArgument {
// CmdId: 5597
message ReliquaryPromoteRsp {
- repeated uint32 ECGFPMHHIII = 2;
- uint32 AOGPLEOJAPI = 6;
+ repeated uint32 cur_append_prop_list = 2;
+ uint32 cur_promote_level = 6;
uint64 target_reliquary_guid = 8;
- uint32 JMNPNAJAHOB = 9;
+ uint32 old_promote_level = 9;
int32 retcode = 11;
- repeated uint32 AHIOFEJFIMP = 14;
+ repeated uint32 old_append_prop_list = 14;
}
// CmdId: 26918
@@ -14062,7 +14062,7 @@ message MHPMBOGBEND {
bool DLNLLJLBOJM = 6;
uint32 NCLOOIADAIH = 7;
repeated ReunionReportedType GLFPHKCBNIC = 8;
- uint32 PMAEBJCCBNA = 9;
+ uint32 mission_id = 9;
uint32 NEMGOAHPGPO = 10;
uint32 GKHPCIMMPGH = 11;
uint32 EAJEBADJNAJ = 12;
@@ -14155,10 +14155,10 @@ message CNLHPHDLBBC {
// CmdId: 2262
message RechargeReq {
- DFKPGHOBLLC KOLFNGJNFFF = 4;
- ShopMcoinProduct LCFAGFFLLEO = 7;
- ShopCardProduct FMGLJCKMEKD = 11;
- ShopConcertProduct PGEELOMLHFO = 15;
+ PlayProduct KOLFNGJNFFF = 4;
+ ShopMcoinProduct play_product = 7;
+ ShopCardProduct card_product = 11;
+ ShopConcertProduct concert_product = 15;
}
// CmdId: 7543
@@ -14323,7 +14323,7 @@ message BFFLMKKKKHG {
}
// CmdId: 8271
-message GNFPLKIBPKM {
+message WorldChestOpenNotify {
uint32 scene_id = 5;
uint32 group_id = 9;
uint32 config_id = 13;
@@ -14539,7 +14539,7 @@ message BABBODHEKHM {
repeated CGHLNPOLOGN HNINHNPOBJK = 8;
bool is_taken_reward = 9;
bool is_finished = 11;
- uint32 PMAEBJCCBNA = 14;
+ uint32 mission_id = 14;
uint32 MKFFIANHDOA = 15;
}
@@ -15294,7 +15294,7 @@ message NNIJOHKPHAI {
}
// CmdId: 26945
-message EPMDACBNEMP {
+message SetBattlePassViewedReq {
uint32 schedule_id = 5;
}
@@ -15590,7 +15590,7 @@ message FHPBOLIMIMO {
}
// CmdId: 25231
-message PELEDEMOCGN {
+message LevelupCityReq {
uint32 item_num = 5;
uint32 area_id = 8;
uint32 scene_id = 11;
@@ -16187,9 +16187,9 @@ message KLDLDHIKBHC {
uint32 stage_id = 15;
}
-message EFCMJDJGILN {
- repeated uint32 DBGFELGBNCE = 1;
- uint32 OEJBFHNDGHD = 10;
+message HomeFishFarmingInfo {
+ repeated uint32 fish_id_list = 1;
+ uint32 fishpond_guid = 10;
}
// CmdId: 25925
@@ -16915,7 +16915,7 @@ message OKPGKIJCBGB {
uint32 FBDLNGODOPB = 1;
int32 retcode = 4;
BABBODHEKHM CGELDMBGOJJ = 6;
- uint32 PMAEBJCCBNA = 9;
+ uint32 mission_id = 9;
}
// CmdId: 29909
@@ -17178,7 +17178,7 @@ message FDAEBIODLGC {
// CmdId: 20999
message ABKCHPANDEE {
uint32 HJFCCLIELND = 3;
- repeated AAACNIECLGF MMODEDLFIMN = 5;
+ repeated AnchorPointData MMODEDLFIMN = 5;
}
// CmdId: 27038
@@ -18148,7 +18148,7 @@ message IIHDJIGHLHF {
}
// CmdId: 1186
-message FCHAMHONLJE {
+message UnfreezeGroupLimitNotify {
uint32 point_id = 5;
uint32 scene_id = 13;
}
@@ -18585,10 +18585,10 @@ message OJCIKAHDAAF {
}
// CmdId: 6170
-message MFLEOEDJKCG {
- bool NBEMHAPDGKH = 3;
- repeated int32 NEFKFBBCJMN = 9;
- repeated OOJCDBNFDCK JJEMEFBKEBG = 11;
+message ToTheMoonObstaclesModifyNotify {
+ bool use_edge = 3;
+ repeated int32 remove_obstacle_ids = 9;
+ repeated ToTheMoonObstacleInfo add_obstacles = 11;
uint32 scene_id = 14;
}
@@ -18871,7 +18871,7 @@ message EFPFHCIFDJF {
// CmdId: 26202
message PBEGELGMPLO {
uint32 FBDLNGODOPB = 3;
- uint32 PMAEBJCCBNA = 11;
+ uint32 mission_id = 11;
}
// CmdId: 24611
@@ -18897,7 +18897,7 @@ message FICFOECODPN {
}
// CmdId: 22741
-message IHCICPNIOAI {
+message QuestDestroyEntityRsp {
uint32 entity_id = 2;
uint32 quest_id = 4;
int32 retcode = 6;
@@ -18936,7 +18936,7 @@ message ODGKCOIAFOL {
// CmdId: 24692
message AJGIOAEEPBP {
uint32 GGEFCAGJGBC = 2;
- uint32 OECJOIMFNBD = 12;
+ uint32 cur_schedule_id = 12;
bool HPLLLHJGEHJ = 13;
}
@@ -19177,9 +19177,9 @@ message JEOBJGGFMHP {
// CmdId: 27473
message WeaponPromoteRsp {
uint64 target_weapon_guid = 5;
- uint32 AOGPLEOJAPI = 7;
+ uint32 cur_promote_level = 7;
int32 retcode = 12;
- uint32 JMNPNAJAHOB = 15;
+ uint32 old_promote_level = 15;
}
// CmdId: 23362
@@ -19543,7 +19543,7 @@ message PPFNCMGAKEB {
HKFHGOGKDLC LJECGIPMEBF = 10;
uint32 FKIPBFKNFMN = 11;
repeated ClientCollectorData client_collector_data_list = 12;
- repeated AAACNIECLGF MMODEDLFIMN = 13;
+ repeated AnchorPointData MMODEDLFIMN = 13;
IJAPDBCJLFI sky_crystal_detector_data = 15;
uint32 ODNGPONNBKM = 132;
KJABPAHPPAO DBPMPEPIDNM = 442;
@@ -20000,10 +20000,10 @@ message AbilityActionGenerateElemBall {
Vector pos = 14;
}
-message DDFCGDCJODG {
- float OCBCILMFIEG = 2;
+message RoutePointChangeInfo {
+ float target_velocity = 2;
float wait_time = 3;
- uint32 DKAAFCENICJ = 15;
+ uint32 point_index = 15;
}
// CmdId: 24527
@@ -20692,9 +20692,9 @@ message ODAEPBNAKCN {
// CmdId: 2380
message HLBPPDOLGFB {
repeated int32 CNICMCCIDBL = 1;
- repeated int32 NEFKFBBCJMN = 2;
+ repeated int32 remove_obstacle_ids = 2;
repeated int32 PIGKKJGLDNM = 4;
- repeated ObstacleInfo JJEMEFBKEBG = 7;
+ repeated ObstacleInfo add_obstacles = 7;
uint32 scene_id = 12;
}
@@ -20803,9 +20803,9 @@ message BAKOCKEILLJ {
}
// CmdId: 20372
-message FPNDLFEOEFN {
- uint32 JNJNLFMNMKD = 10;
- repeated KGKLDAGGGNP CELDOPCILKP = 14;
+message PlayerRechargeDataNotify {
+ uint32 card_product_remain_days = 10;
+ repeated ProductPriceTier product_price_tier_list = 14;
}
// CmdId: 8563
@@ -21191,10 +21191,10 @@ message JHFHDBGLGFK {
}
// CmdId: 7501
-message AODMIJLDINJ {
+message FishAttractNotify {
Vector pos = 6;
uint32 uid = 13;
- repeated uint32 DBGFELGBNCE = 15;
+ repeated uint32 fish_id_list = 15;
}
// CmdId: 26186
@@ -21555,9 +21555,9 @@ message OKKDIHKPDAO {
}
// CmdId: 22934
-message EMEHBONIFJF {
+message SceneAreaUnlockNotify {
uint32 scene_id = 7;
- repeated uint32 OPJHCHJNOMF = 9;
+ repeated uint32 area_list = 9;
}
// CmdId: 24713
@@ -21665,7 +21665,7 @@ message DKFMAOOOEPM {
bool is_open = 14;
}
-message KGKLDAGGGNP {
+message ProductPriceTier {
string price_tier = 3;
string product_id = 10;
}
@@ -21739,10 +21739,10 @@ message DHBJBFCDODN {
}
// CmdId: 24033
-message NPPNJKFOCDG {
+message GetSceneNpcPositionRsp {
int32 retcode = 1;
uint32 scene_id = 2;
- repeated ICFBHOPMKCI NNHGOPIDCJC = 4;
+ repeated NpcPositionInfo npc_info_list = 4;
}
// CmdId: 1318
@@ -22330,8 +22330,8 @@ message ReliquaryUpgradeRsp {
uint32 power_up_rate = 5;
uint32 cur_level = 6;
uint32 old_level = 7;
- repeated uint32 ECGFPMHHIII = 9;
- repeated uint32 AHIOFEJFIMP = 10;
+ repeated uint32 cur_append_prop_list = 9;
+ repeated uint32 old_append_prop_list = 10;
}
message DHKENFLKAEL {
@@ -22441,9 +22441,9 @@ message LIHLHEEDAIM {
uint32 JCKCHKPFCMD = 13;
}
-message JFKAJMIADFD {
- uint32 CBBGJDNJHLN = 2;
- repeated uint32 DBGFELGBNCE = 6;
+message HomeScenePointFishFarmingInfo {
+ uint32 local_entity_id = 2;
+ repeated uint32 fish_id_list = 6;
uint32 scene_id = 15;
}
@@ -22964,9 +22964,9 @@ message CEEIBGFJBIF {
}
// CmdId: 1499
-message HEJONAIGBBM {
+message RechargeRsp {
string product_id = 3;
- bool AHPMEOKNNDI = 6;
+ bool is_show_minors_hint = 6;
int32 retcode = 11;
}
@@ -23103,7 +23103,7 @@ message LJCEPHLINOD {
// CmdId: 27657
message GDKOMLLEKGM {
uint32 PHKIDGICECP = 1;
- uint32 LBHNFFJILMN = 10;
+ uint32 anchor_point_id = 10;
}
// CmdId: 7954
@@ -23114,7 +23114,7 @@ message GOEAEELFLCD {
// CmdId: 20581
message EHKHGBLCKLM {
CGHLNPOLOGN DNPCICIGKLG = 3;
- uint32 PMAEBJCCBNA = 11;
+ uint32 mission_id = 11;
}
// CmdId: 4424
@@ -25446,7 +25446,7 @@ enum HitColliderType {
// CmdId: 23849
message OrderFinishNotify {
- uint32 JNJNLFMNMKD = 1;
+ uint32 card_product_remain_days = 1;
uint32 ENDBGJBGBJC = 3;
uint32 AODBMJIKINI = 5;
string product_id = 13;
@@ -26099,8 +26099,8 @@ message EOEPMLAKKPG {
}
// CmdId: 208
-message MIAMFKLMOHN {
- uint32 CJEKECDJKFP = 11;
+message GetBattlePassProductReq {
+ uint32 battle_pass_product_play_type = 11;
}
message LunaRiteDetailInfo {
@@ -26168,9 +26168,9 @@ message KICLIKACALF {
}
// CmdId: 28038
-message LOEEFJBLHNH {
+message ClientTransmitRsp {
int32 retcode = 11;
- DJLNCMNEAOI reason = 15;
+ TransmitReason reason = 15;
}
// CmdId: 9205
@@ -26189,7 +26189,7 @@ message CMEHPOPOCGJ {
}
// CmdId: 4974
-message MDCHBAGDELO {
+message AvatarChangeElementTypeReq {
uint32 area_id = 14;
uint32 scene_id = 15;
}
@@ -27770,12 +27770,12 @@ message BattlePassMission {
MissionStatus_MISSION_POINT_TAKEN = 3;
}
- uint32 CPOHKKIFJIC = 5;
+ uint32 reward_battle_pass_point = 5;
uint32 cur_progress = 6;
- uint32 LGJNKOJDDCJ = 7;
+ uint32 mission_type = 7;
uint32 total_progress = 10;
- uint32 PMAEBJCCBNA = 12;
- MissionStatus JEKGHKBKJEM = 14;
+ uint32 mission_id = 12;
+ MissionStatus mission_status = 14;
}
message WeatherInfo {
@@ -28172,7 +28172,7 @@ message LPPPHNOHPEK {
}
// CmdId: 20664
-message DAFKAOCCOFE {
+message CalcWeaponUpgradeReturnItemsReq {
uint64 target_weapon_guid = 4;
repeated ItemParam item_param_list = 10;
repeated uint64 food_weapon_guid_list = 13;
@@ -28778,9 +28778,9 @@ message LHFBFBCFDOP {
}
// CmdId: 23240
-message KDAFIJMJBPK {
+message BuyBattlePassLevelRsp {
int32 retcode = 4;
- uint32 IIKNKCNJBGE = 12;
+ uint32 buy_level = 12;
}
// CmdId: 27384
@@ -28933,7 +28933,7 @@ message PEKJAHAHPDA {
}
// CmdId: 23504
-message LJJNGFAEJOG {
+message UnlockTransPointRsp {
int32 retcode = 1;
}
@@ -29200,7 +29200,7 @@ message EOGLODPEOPJ {
}
// CmdId: 27857
-message EMIFGECBKAI {
+message UnlockTransPointRsp {
uint32 point_id = 2;
uint32 scene_id = 3;
}
diff --git a/nameTranslation.txt b/nameTranslation.txt
index d511d023..0563b7d4 100644
--- a/nameTranslation.txt
+++ b/nameTranslation.txt
@@ -1969,4 +1969,137 @@ KMANALJGHMG⇨InteractDailyDungeonInfoNotify
MEKAOIMGOON⇨BatchDeleteMapMarkReq
PMIMCAJMJPM⇨BatchDeleteMapMarkRsp
OFEIOKCHBFK⇨WorldPlayerDieNotify
-EJFMLLICCCF⇨WorldPlayerReviveReq
\ No newline at end of file
+EJFMLLICCCF⇨WorldPlayerReviveReq
+KOBHCHMLBED⇨PlayerWorldLocationInfo
+CJFKFIJOCNB⇨player_loc
+KJMDKJLLMKA⇨WorldPlayerLocationNotify
+KACIECPNHAD⇨player_world_loc_list
+MMGJJJFDIPK⇨HomeBlueprintSearchInfo
+LBNOHJDLCOM⇨HomeSearchBlueprintRsp
+JFLKFMCKEFG⇨search_info
+EFPEFPLEDJA⇨SceneRouteChangeNotify
+GAALLMKNLOA⇨SceneRouteChangeInfo
+EGNGMKNAEOF⇨route_list
+AAACNIECLGF⇨AnchorPointData
+LBHNFFJILMN⇨anchor_point_id
+AMAPPLHPEJO⇨hash_value
+LOHKIHALHIC⇨ClientTransmitReq
+DJLNCMNEAOI⇨TransmitReason
+LOEEFJBLHNH⇨ClientTransmitRsp
+OIODNALPKFD⇨HomeSaveArrangementNoChangeRsp
+FKBIPLGJBMF⇨ToTheMoonRemoveObstacleReq
+IPCNPKFLFAK⇨handle
+MEIMHEKHOLO⇨DeshretObeliskChestInfo
+LNPPIBAKLFF⇨DeshretObeliskChestInfoNotify
+AONFGKIPALE⇨chest_info_list
+HOEBDLJJCPL⇨MarkTargetInvestigationMonsterNotify
+IILCMNPGJKC⇨investigation_monster_id
+ILCGFEJGBMJ⇨ToTheMoonAddObstacleReq
+OOJCDBNFDCK⇨ToTheMoonObstacleInfo
+NFKKDNPEMPK⇨obstacle
+NBEMHAPDGKH⇨use_edge
+BGBFEAGIFKO⇨QuestDestroyEntityReq
+GNFPLKIBPKM⇨WorldChestOpenNotify
+PELEDEMOCGN⇨LevelupCityReq
+MFLEOEDJKCG⇨ToTheMoonObstaclesModifyNotify
+NEFKFBBCJMN⇨remove_obstacle_ids
+JJEMEFBKEBG⇨add_obstacles
+IHCICPNIOAI⇨QuestDestroyEntityRsp
+ICFBHOPMKCI⇨NpcPositionInfo
+NPPNJKFOCDG⇨GetSceneNpcPositionRsp
+NNHGOPIDCJC⇨npc_info_list
+EFCMJDJGILN⇨HomeFishFarmingInfo
+DBGFELGBNCE⇨fish_id_list
+OEJBFHNDGHD⇨fishpond_guid
+AODMIJLDINJ⇨FishAttractNotify
+JFKAJMIADFD⇨HomeScenePointFishFarmingInfo
+CBBGJDNJHLN⇨local_entity_id
+MDCHBAGDELO⇨AvatarChangeElementTypeReq
+EGIIBICENMB⇨is_forward
+DDFCGDCJODG⇨RoutePointChangeInfo
+OCBCILMFIEG⇨target_velocity
+DKAAFCENICJ⇨point_index
+ALGLEILDMNF⇨handle_id
+AHABNJOBFKB⇨half_extents
+EMEHBONIFJF⇨SceneAreaUnlockNotify
+OPJHCHJNOMF⇨area_list
+EMIFGECBKAI⇨UnlockTransPointRsp
+LJJNGFAEJOG⇨UnlockTransPointRsp
+FCHAMHONLJE⇨UnfreezeGroupLimitNotify
+PMAEBJCCBNA⇨mission_id
+JEKGHKBKJEM⇨mission_status
+JAEAEKCMJJI⇨reward_taken_list
+CNCKBALKDCG⇨BattlePassCycle
+LJFKLGMDKJJ⇨cur_cycle
+IPHAEDEDLGF⇨BattlePassProduct
+KCPDHBGAJCE⇨product_info
+CPOHKKIFJIC⇨reward_battle_pass_point
+LGJNKOJDDCJ⇨mission_type
+OBCBKMKGNAM⇨cycle_idx
+KEIKALBHJEG⇨normal_product_id
+NELABOBFDBB⇨upgrade_product_id
+CJKPIPBHJBN⇨extra_product_id
+GECKAKLNAID⇨point
+IDJOJEHFMHM⇨paid_platform_flags
+NALIJACNLLL⇨cur_cycle_points
+PCPNJNGAFLE⇨is_extra_paid_reward_taken
+HDIMHNDPLKP⇨is_viewed
+EPMDACBNEMP⇨SetBattlePassViewedReq
+DFKPGHOBLLC⇨PlayProduct
+FPLDICCHNPH⇨GetBattlePassProductRsp
+OECJOIMFNBD⇨cur_schedule_id
+CJEKECDJKFP⇨battle_pass_product_play_type
+MIAMFKLMOHN⇨GetBattlePassProductReq
+KGKLDAGGGNP⇨ProductPriceTier
+FPNDLFEOEFN⇨PlayerRechargeDataNotify
+JNJNLFMNMKD⇨card_product_remain_days
+CELDOPCILKP⇨product_price_tier_list
+LCFAGFFLLEO⇨play_product
+LCFAGFFLLEO⇨mcoin_product
+FMGLJCKMEKD⇨card_product
+PGEELOMLHFO⇨concert_product
+HEJONAIGBBM⇨RechargeRsp
+AHPMEOKNNDI⇨is_show_minors_hint
+CCADIDOMPPK⇨BuyBattlePassLevelReq
+KDAFIJMJBPK⇨BuyBattlePassLevelRsp
+IIKNKCNJBGE⇨buy_level
+PCPEGKIEPPG⇨TakeBattlePassMissionPointReq
+CGAMLKOBIKD⇨TakeBattlePassMissionPointRsp
+DJPAFJELCPB⇨mission_id_list
+HEOFAAJINLE⇨AvatarFetterLevelRewardReq
+EGLKMGGKLKA⇨AvatarFetterLevelRewardRsp
+PHBMKHDNJMM⇨fetter_level
+GLOAOOOIIMC⇨UnlockAvatarTalentReq
+KADJCJPCEKL⇨UnlockAvatarTalentRsp
+GHMCKGKJLKC⇨AvatarPromoteGetRewardReq
+NOJFFPDHJOD⇨AvatarPromoteGetRewardRsp
+CIMFHGJCFMN⇨AvatarFetterDataNotify
+HHKINMBBNDC⇨fetter_info_map
+PFJHGAMBPJI⇨creator_detail
+FMBJMHMGGOF⇨SetNameCardReq
+LPFEGHPIFCP⇨AvatarUpgradeRsp
+IPAOLHMOBCF⇨cost_time
+MMENLJNENCA⇨play_id
+GHMGIOGAPMI⇨AvatarSkillUpgradeReq
+JDNNFCBKBKC⇨AvatarSkillUpgradeRsp
+CPKAEBOPMNH⇨AvatarSkillChangeNotify
+NGDFOJCBBKK⇨avatar_skill_id
+APHENEEGEKB⇨ScenePlayBattleSettleRewardInfo
+BDHIDOPBEFB⇨AddNoGachaAvatarCardNotify
+FHJNPMLMBFO⇨AddNoGachaAvatarCardTransferItem
+EIIDIDGPMNI⇨transfer_item_list
+MOLAIMKBAHN⇨SeaLampFlyLampRsp
+GEEHDCFJGDF⇨ReliquaryDecomposeReq
+FAHANIHLENH⇨ReliquaryDecomposeRsp
+NLBABHOOHHD⇨target_count
+ALIDLENLMOG⇨compound_id
+NLPJBKJHFNE⇨mode
+NBHIAOJOGAO⇨PlayerCompoundMaterialReq
+GFOEDGAKNPI⇨WeaponUpgradeReq
+DAFKAOCCOFE⇨CalcWeaponUpgradeReturnItemsReq
+AOGPLEOJAPI⇨cur_promote_level
+JMNPNAJAHOB⇨old_promote_level
+ECGFPMHHIII⇨cur_append_prop_list
+AHIOFEJFIMP⇨old_append_prop_list
+DDKBDEJDHEJ⇨GetAllUnlockNameCardReq
+HFANJCHEDHC⇨AvatarUpgradeReq
\ No newline at end of file
diff --git a/proto/AvatarChangeElementTypeReq.proto b/proto/AvatarChangeElementTypeReq.proto
index 789d0e52..0d41defa 100644
--- a/proto/AvatarChangeElementTypeReq.proto
+++ b/proto/AvatarChangeElementTypeReq.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: 3696
-// Obf: EPCCINELCEK
+
+// CmdId: 4974
+// Version: 4.6.0
+// Obfs: MDCHBAGDELO
message AvatarChangeElementTypeReq {
- uint32 area_id = 11;
- uint32 scene_id = 1;
-}
+ uint32 area_id = 14;
+ uint32 scene_id = 15;
+}
\ No newline at end of file
diff --git a/proto/AvatarPromoteRsp.proto b/proto/AvatarPromoteRsp.proto
index 37544ec7..4b37c0f3 100644
--- a/proto/AvatarPromoteRsp.proto
+++ b/proto/AvatarPromoteRsp.proto
@@ -1,24 +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: 8592
-// Obf: BLNOILBHJIJ
+// 4.6.0
+// CmdId: 24702
+// Obf: ???
message AvatarPromoteRsp {
- uint64 guid = 7;
- int32 retcode = 12;
+ uint64 guid = 1;
+ int32 retcode = 5;
}
diff --git a/proto/AvatarPropChangeReasonNotify.proto b/proto/AvatarPropChangeReasonNotify.proto
index 70909fca..c4e1ab9f 100644
--- a/proto/AvatarPropChangeReasonNotify.proto
+++ b/proto/AvatarPropChangeReasonNotify.proto
@@ -1,28 +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 "PropChangeReason.proto";
-// CmdId: 3637
-// Obf: LKDNAGGMHGL
+// 4.6.0
+// CmdId: 5955
+// Obf: ???
message AvatarPropChangeReasonNotify {
- PropChangeReason reason = 2;
- uint32 prop_type = 7;
- float cur_value = 1;
- uint64 avatar_guid = 11;
- float old_value = 14;
+ PropChangeReason reason = 15;
+ uint32 prop_type = 2;
+ float cur_value = 11;
+ uint64 avatar_guid = 3;
+ float old_value = 13;
}
diff --git a/proto/AvatarUpgradeReq.proto b/proto/AvatarUpgradeReq.proto
index 1964a073..791d9dce 100644
--- a/proto/AvatarUpgradeReq.proto
+++ b/proto/AvatarUpgradeReq.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";
-// CmdId: 28204
-// Obf: CFIFEHLBHPM
+
+import "ItemParam.proto";
+
+// CmdId: 2937
+// Version: 4.6.0
+// Obfs: HFANJCHEDHC
message AvatarUpgradeReq {
- uint32 item_id = 5;
- uint64 avatar_guid = 10;
- uint32 count = 1;
-}
+ repeated ItemParam item_param_list = 6;
+ uint64 avatar_guid = 15;
+}
\ No newline at end of file
diff --git a/proto/BattlePassAllDataNotify.proto b/proto/BattlePassAllDataNotify.proto
index e5060a56..71437396 100644
--- a/proto/BattlePassAllDataNotify.proto
+++ b/proto/BattlePassAllDataNotify.proto
@@ -1,27 +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";
-import "BattlePassSchedule.proto";
+
import "BattlePassMission.proto";
-// CmdId: 3474
-// Obf: HDENJJOGGKA
+import "BattlePassSchedule.proto";
+
+// CmdId: 9910
+// Version: 4.6.0
+// Obfs: BLMJNHLPHPA
message BattlePassAllDataNotify {
- BattlePassSchedule cur_schedule = 1;
- repeated BattlePassMission mission_list = 9;
- bool have_cur_schedule = 2;
+ bool have_cur_schedule = 5;
+ repeated BattlePassMission mission_list = 7;
+ BattlePassSchedule cur_schedule = 11;
}
diff --git a/proto/BattlePassBuySuccNotify.proto b/proto/BattlePassBuySuccNotify.proto
new file mode 100644
index 00000000..3393d62a
--- /dev/null
+++ b/proto/BattlePassBuySuccNotify.proto
@@ -0,0 +1,15 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "ItemParam.proto";
+
+// CmdId: 21408
+// Version: 4.6.0
+// Obfs: KNIBHNOEHPA
+message BattlePassBuySuccNotify {
+ uint32 schedule_id = 1;
+ uint32 HMKOKJKINCG = 6;
+ uint32 LAKIBHGHOGE = 7;
+ repeated ItemParam item_list = 11;
+}
diff --git a/proto/BattlePassCurScheduleUpdateNotify.proto b/proto/BattlePassCurScheduleUpdateNotify.proto
index a493cb95..6b30a27f 100644
--- a/proto/BattlePassCurScheduleUpdateNotify.proto
+++ b/proto/BattlePassCurScheduleUpdateNotify.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 "BattlePassSchedule.proto";
-// CmdId: 27464
-// Obf: AFCLFFABLPC
+
+// CmdId: 2634
+// Version: 4.6.0
+// Obfs: DMCBPPFMCAB
message BattlePassCurScheduleUpdateNotify {
- BattlePassSchedule cur_schedule = 9;
- bool have_cur_schedule = 11;
+ bool have_cur_schedule = 14;
+ BattlePassSchedule cur_schedule = 15;
}
diff --git a/proto/BattlePassCycle.proto b/proto/BattlePassCycle.proto
index f4ddb273..44f191fc 100644
--- a/proto/BattlePassCycle.proto
+++ b/proto/BattlePassCycle.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";
-// Obf: JDHFCEDALOK
+
+// Version: 4.6.0
+// Obfs: CNCKBALKDCG
message BattlePassCycle {
- uint32 cycle_idx = 15;
- uint32 begin_time = 2;
- uint32 end_time = 12;
+ uint32 end_time = 7;
+ uint32 begin_time = 11;
+ uint32 cycle_idx = 13;
}
diff --git a/proto/BattlePassMission.proto b/proto/BattlePassMission.proto
index e44609db..10c4722c 100644
--- a/proto/BattlePassMission.proto
+++ b/proto/BattlePassMission.proto
@@ -1,35 +1,20 @@
-// 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: ELGGKMAOOGA
+
+// Version: 4.6.0
+// Obfs: KLNCDOLLCFF
message BattlePassMission {
- // Obf: JAOFNPAFHIB
enum MissionStatus {
MISSION_STATUS_INVALID = 0;
MISSION_STATUS_UNFINISHED = 1;
MISSION_STATUS_FINISHED = 2;
MISSION_STATUS_POINT_TAKEN = 3;
}
-
- uint32 total_progress = 7;
- uint32 mission_type = 3;
- uint32 cur_progress = 2;
- MissionStatus mission_status = 15;
- uint32 mission_id = 8;
- uint32 reward_battle_pass_point = 9;
+ uint32 reward_battle_pass_point = 5;
+ uint32 cur_progress = 6;
+ uint32 mission_type = 7;
+ uint32 total_progress = 10;
+ uint32 mission_id = 12;
+ MissionStatus mission_status = 14;
}
diff --git a/proto/BattlePassMissionUpdateNotify.proto b/proto/BattlePassMissionUpdateNotify.proto
index 46af0c39..84fe6508 100644
--- a/proto/BattlePassMissionUpdateNotify.proto
+++ b/proto/BattlePassMissionUpdateNotify.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 "BattlePassMission.proto";
-// CmdId: 24008
-// Obf: HNPGDHAKAEB
+
+// CmdId: 7238
+// Version: 4.6.0
+// Obfs: JCACMJGEKDM
message BattlePassMissionUpdateNotify {
- repeated BattlePassMission mission_list = 7;
+ repeated BattlePassMission mission_list = 8;
}
diff --git a/proto/BattlePassProduct.proto b/proto/BattlePassProduct.proto
index 35b81ce4..0062c089 100644
--- a/proto/BattlePassProduct.proto
+++ b/proto/BattlePassProduct.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";
-// Obf: GCJOGKGADPD
+
+// Version: 4.6.0
+// Obfs: IPHAEDEDLGF
message BattlePassProduct {
- string HOJKADLEFBP = 7;
- string CHOKHINHNGH = 14;
- string NJCCJEMGKDJ = 5;
+ string normal_product_id = 2;
+ string upgrade_product_id = 4;
+ string extra_product_id = 11;
}
diff --git a/proto/BattlePassRewardTag.proto b/proto/BattlePassRewardTag.proto
index db0ac0b1..ee61074c 100644
--- a/proto/BattlePassRewardTag.proto
+++ b/proto/BattlePassRewardTag.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 "BattlePassUnlockStatus.proto";
-// Obf: MMDANGGKGCL
+
+// Version: 4.6.0
+// Obfs: FEKBEHGKKML
message BattlePassRewardTag {
- uint32 level = 12;
- uint32 reward_id = 8;
- BattlePassUnlockStatus unlock_status = 1;
+ uint32 reward_id = 4;
+ BattlePassUnlockStatus unlock_status = 10;
+ uint32 level = 13;
}
diff --git a/proto/BattlePassRewardTakeOption.proto b/proto/BattlePassRewardTakeOption.proto
index f137a407..92685347 100644
--- a/proto/BattlePassRewardTakeOption.proto
+++ b/proto/BattlePassRewardTakeOption.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 "BattlePassRewardTag.proto";
-// Obf: ABOLHFADNBD
+
+// Version: 4.6.0
+// Obfs: LAAGOMCGIPI
message BattlePassRewardTakeOption {
- uint32 option_idx = 14;
- BattlePassRewardTag tag = 7;
+ uint32 option_idx = 3;
+ BattlePassRewardTag tag = 11;
}
diff --git a/proto/BattlePassSchedule.proto b/proto/BattlePassSchedule.proto
index 42a70240..f6e95e4a 100644
--- a/proto/BattlePassSchedule.proto
+++ b/proto/BattlePassSchedule.proto
@@ -1,38 +1,26 @@
-// 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 "BattlePassCycle.proto";
import "BattlePassRewardTag.proto";
import "BattlePassProduct.proto";
import "BattlePassUnlockStatus.proto";
-import "BattlePassCycle.proto";
-// Obf: KFAIKMBDAIC
+
+// Version: 4.6.0
+// Obfs: DCBJKBNBFNK
message BattlePassSchedule {
- bool is_extra_paid_reward_taken = 7;
- uint32 end_time = 15;
- repeated BattlePassRewardTag reward_taken_list = 9;
- BattlePassProduct product_info = 4;
- uint32 level = 8;
- uint32 paid_platform_flags = 12;
- uint32 schedule_id = 10;
- uint32 begin_time = 13;
- uint32 point = 2;
- BattlePassUnlockStatus unlock_status = 11;
- uint32 cur_cycle_points = 1;
- BattlePassCycle cur_cycle = 3;
- bool is_viewed = 14;
+ BattlePassCycle cur_cycle = 1;
+ uint32 schedule_id = 2;
+ uint32 point = 3; // GECKAKLNAID
+ BattlePassUnlockStatus unlock_status = 4;
+ repeated BattlePassRewardTag reward_taken_list = 5;
+ uint32 begin_time = 6;
+ uint32 paid_platform_flags = 7; // IDJOJEHFMHM
+ uint32 cur_cycle_points = 8; // NALIJACNLLL
+ BattlePassProduct product_info = 10;
+ uint32 end_time = 12;
+ uint32 level = 13;
+ bool is_extra_paid_reward_taken = 14; // PCPNJNGAFLE
+ bool is_viewed = 15; // HDIMHNDPLKP
}
diff --git a/proto/BattlePassUnlockStatus.proto b/proto/BattlePassUnlockStatus.proto
index 0eefec16..c9e60d0b 100644
--- a/proto/BattlePassUnlockStatus.proto
+++ b/proto/BattlePassUnlockStatus.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";
-// Obf: ANLKFPJIOMK
+
+// Version: 4.6.0
+// Obfs: LKNMHOGNENB
enum BattlePassUnlockStatus {
BATTLE_PASS_UNLOCK_STATUS_INVALID = 0;
BATTLE_PASS_UNLOCK_STATUS_FREE = 1;
diff --git a/proto/BuyBattlePassLevelReq.proto b/proto/BuyBattlePassLevelReq.proto
index c10b914d..e8a41087 100644
--- a/proto/BuyBattlePassLevelReq.proto
+++ b/proto/BuyBattlePassLevelReq.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: 20824
-// Obf: FJCCKDGCFBC
+
+// CmdId: 20941
+// Version: 4.6.0
+// Obfs: CCADIDOMPPK
message BuyBattlePassLevelReq {
- uint32 buy_level = 8;
+ uint32 buy_level = 1;
}
diff --git a/proto/BuyBattlePassLevelRsp.proto b/proto/BuyBattlePassLevelRsp.proto
index ed542903..9f161e64 100644
--- a/proto/BuyBattlePassLevelRsp.proto
+++ b/proto/BuyBattlePassLevelRsp.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: 26570
-// Obf: JLNMDHMIKAE
+
+// CmdId: 23240
+// Version: 4.6.0
+// Obfs: KDAFIJMJBPK
message BuyBattlePassLevelRsp {
- uint32 buy_level = 7;
- int32 retcode = 11;
+ int32 retcode = 4;
+ uint32 buy_level = 12;
}
diff --git a/proto/ClientTransmitReq.proto b/proto/ClientTransmitReq.proto
new file mode 100644
index 00000000..e5db16e5
--- /dev/null
+++ b/proto/ClientTransmitReq.proto
@@ -0,0 +1,16 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "TransmitReason.proto";
+import "Vector.proto";
+
+// CmdId: 7279
+// Version: 4.6.0
+// Obfs: LOHKIHALHIC
+message ClientTransmitReq {
+ TransmitReason reason = 5;
+ Vector pos = 9;
+ Vector rot = 11;
+ uint32 scene_id = 13;
+}
diff --git a/proto/ClientTransmitRsp.proto b/proto/ClientTransmitRsp.proto
new file mode 100644
index 00000000..28932f79
--- /dev/null
+++ b/proto/ClientTransmitRsp.proto
@@ -0,0 +1,13 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "TransmitReason.proto";
+
+// CmdId: 28038
+// Version: 4.6.0
+// Obfs: LOEEFJBLHNH
+message ClientTransmitRsp {
+ int32 retcode = 11;
+ TransmitReason reason = 15;
+}
diff --git a/proto/DeshretObeliskChestInfo.proto b/proto/DeshretObeliskChestInfo.proto
new file mode 100644
index 00000000..eed6995c
--- /dev/null
+++ b/proto/DeshretObeliskChestInfo.proto
@@ -0,0 +1,15 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "Vector.proto";
+
+// Version: 4.6.0
+// Obfs: MEIMHEKHOLO
+message DeshretObeliskChestInfo {
+ uint32 group_id = 3;
+ uint32 map_layer_id = 5;
+ Vector pos = 8;
+ uint32 config_id = 9;
+ uint32 scene_id = 13;
+}
\ No newline at end of file
diff --git a/proto/DeshretObeliskChestInfoNotify.proto b/proto/DeshretObeliskChestInfoNotify.proto
new file mode 100644
index 00000000..827ebbdb
--- /dev/null
+++ b/proto/DeshretObeliskChestInfoNotify.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "DeshretObeliskChestInfo.proto";
+
+// CmdId: 28537
+// Version: 4.6.0
+// Obfs: LNPPIBAKLFF
+message DeshretObeliskChestInfoNotify {
+ repeated DeshretObeliskChestInfo chest_info_list = 10;
+}
diff --git a/proto/FishAttractNotify.proto b/proto/FishAttractNotify.proto
new file mode 100644
index 00000000..19d39034
--- /dev/null
+++ b/proto/FishAttractNotify.proto
@@ -0,0 +1,14 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "Vector.proto";
+
+// CmdId: 7501
+// Version: 4.6.0
+// Obfs: AODMIJLDINJ
+message FishAttractNotify {
+ Vector pos = 6;
+ uint32 uid = 13;
+ repeated uint32 fish_id_list = 15;
+}
diff --git a/proto/GetAllUnlockNameCardReq.proto b/proto/GetAllUnlockNameCardReq.proto
index 89594b56..775fac3e 100644
--- a/proto/GetAllUnlockNameCardReq.proto
+++ b/proto/GetAllUnlockNameCardReq.proto
@@ -1,22 +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 .
-
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-// CmdId: 3551
-// Obf: NKCLOOCOADG
+
+// 4.6.0
message GetAllUnlockNameCardReq {
-}
+}
\ No newline at end of file
diff --git a/proto/GetAllUnlockNameCardRsp.proto b/proto/GetAllUnlockNameCardRsp.proto
index e6d5dcf3..89e58947 100644
--- a/proto/GetAllUnlockNameCardRsp.proto
+++ b/proto/GetAllUnlockNameCardRsp.proto
@@ -1,24 +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: 28550
-// Obf: MIOFHIOGCNF
+// 4.6.0
+// CmdId: 7078
+// Obf: ???
message GetAllUnlockNameCardRsp {
- repeated uint32 name_card_list = 8;
- int32 retcode = 9;
+ repeated uint32 name_card_list = 1;
+ int32 retcode = 13;
}
diff --git a/proto/GetAreaExplorePointReq.proto b/proto/GetAreaExplorePointReq.proto
new file mode 100644
index 00000000..13019812
--- /dev/null
+++ b/proto/GetAreaExplorePointReq.proto
@@ -0,0 +1,10 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 3607
+// Version: 4.6.0
+// Obfs: ???
+message GetAreaExplorePointReq {
+ repeated uint32 area_id_list = 13;
+}
diff --git a/proto/GetAreaExplorePointRsp.proto b/proto/GetAreaExplorePointRsp.proto
new file mode 100644
index 00000000..5ad6c67a
--- /dev/null
+++ b/proto/GetAreaExplorePointRsp.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 9042
+// Version: 4.6.0
+// Obfs: ???
+message GetAreaExplorePointRsp {
+ int32 retcode = 4;
+ repeated uint32 explore_point_list = 5;
+ repeated uint32 area_id_list = 15;
+}
diff --git a/proto/GetBattlePassProductReq.proto b/proto/GetBattlePassProductReq.proto
new file mode 100644
index 00000000..4b909a8d
--- /dev/null
+++ b/proto/GetBattlePassProductReq.proto
@@ -0,0 +1,10 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 208
+// Version: 4.6.0
+// Obfs: MIAMFKLMOHN
+message GetBattlePassProductReq {
+ uint32 battle_pass_product_play_type = 11;
+}
diff --git a/proto/GetBattlePassProductRsp.proto b/proto/GetBattlePassProductRsp.proto
new file mode 100644
index 00000000..86ace03c
--- /dev/null
+++ b/proto/GetBattlePassProductRsp.proto
@@ -0,0 +1,14 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 4426
+// Version: 4.6.0
+// Obfs: FPLDICCHNPH
+message GetBattlePassProductRsp {
+ uint32 battle_pass_product_play_type = 2;
+ uint32 cur_schedule_id = 4;
+ string price_tier = 8;
+ int32 retcode = 12;
+ string product_id = 14;
+}
\ No newline at end of file
diff --git a/proto/GetSceneNpcPositionRsp.proto b/proto/GetSceneNpcPositionRsp.proto
new file mode 100644
index 00000000..3699cfc7
--- /dev/null
+++ b/proto/GetSceneNpcPositionRsp.proto
@@ -0,0 +1,14 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "NpcPositionInfo.proto";
+
+// CmdId: 24033
+// Version: 4.6.0
+// Obfs: NPPNJKFOCDG
+message NPPNJKFOCDG {
+ int32 retcode = 1;
+ uint32 scene_id = 2;
+ repeated NpcPositionInfo npc_info_list = 4;
+}
\ No newline at end of file
diff --git a/proto/HomeBlueprintSearchInfo.proto b/proto/HomeBlueprintSearchInfo.proto
new file mode 100644
index 00000000..759050a7
--- /dev/null
+++ b/proto/HomeBlueprintSearchInfo.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// Version: 4.6.0
+// Obfs: MMGJJJFDIPK
+message HomeBlueprintSearchInfo {
+ uint32 module_id = 4;
+ string share_code = 5;
+ uint32 scene_id = 10;
+ uint32 block_id = 11;
+}
diff --git a/proto/HomeSaveArrangementNoChangeRsp.proto b/proto/HomeSaveArrangementNoChangeRsp.proto
index 2bffbba0..1e4403f0 100644
--- a/proto/HomeSaveArrangementNoChangeRsp.proto
+++ b/proto/HomeSaveArrangementNoChangeRsp.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: 20696
-// Obf: BMFLMFIECOG
+
+// CmdId: 24300
+// Version: 4.6.0
+// Obfs: OIODNALPKFD
message HomeSaveArrangementNoChangeRsp {
- int32 retcode = 2;
- uint32 scene_id = 1;
+ uint32 scene_id = 6;
+ int32 retcode = 10;
}
diff --git a/proto/HomeSearchBlueprintRsp.proto b/proto/HomeSearchBlueprintRsp.proto
new file mode 100644
index 00000000..7eddec13
--- /dev/null
+++ b/proto/HomeSearchBlueprintRsp.proto
@@ -0,0 +1,13 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "HomeBlueprintSearchInfo.proto";
+
+// CmdId: 28183
+// Version: 4.6.0
+// Obfs: LBNOHJDLCOM
+message HomeSearchBlueprintRsp {
+ int32 retcode = 10;
+ HomeBlueprintSearchInfo search_info = 12;
+}
diff --git a/proto/LevelupCityReq.proto b/proto/LevelupCityReq.proto
index 5c594d25..2fba57e4 100644
--- a/proto/LevelupCityReq.proto
+++ b/proto/LevelupCityReq.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: 8097
-// Obf: DAIDHECFAML
+
+// CmdId: 25231
+// Version: 4.6.0
+// Obfs: PELEDEMOCGN
message LevelupCityReq {
+ uint32 item_num = 5;
+ uint32 area_id = 8;
uint32 scene_id = 11;
- uint32 area_id = 3;
- uint32 item_num = 1;
-}
+}
\ No newline at end of file
diff --git a/proto/MarkTargetInvestigationMonsterNotify.proto b/proto/MarkTargetInvestigationMonsterNotify.proto
index 542f44ee..25f8f474 100644
--- a/proto/MarkTargetInvestigationMonsterNotify.proto
+++ b/proto/MarkTargetInvestigationMonsterNotify.proto
@@ -1,26 +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: 21010
-// Obf: ONLMENNEHOH
+
+import "DeshretObeliskChestInfo.proto";
+
+// CmdId: 28878
+// Version: 4.6.0
+// Obfs: HOEBDLJJCPL
message MarkTargetInvestigationMonsterNotify {
- uint32 scene_id = 7;
- uint32 monster_id = 15;
- uint32 investigation_monster_id = 2;
- uint32 group_id = 10;
-}
+ uint32 investigation_monster_id = 1;
+ uint32 scene_id = 2;
+ uint32 group_id = 4;
+ uint32 monster_id = 8;
+}
\ No newline at end of file
diff --git a/proto/NpcPositionInfo.proto b/proto/NpcPositionInfo.proto
new file mode 100644
index 00000000..f582f223
--- /dev/null
+++ b/proto/NpcPositionInfo.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "Vector.proto";
+
+// Version: 4.6.0
+// Obfs: ICFBHOPMKCI
+message NpcPositionInfo {
+ uint32 npc_id = 1;
+ Vector pos = 2;
+}
\ No newline at end of file
diff --git a/proto/PlayProduct.proto b/proto/PlayProduct.proto
new file mode 100644
index 00000000..227dafc5
--- /dev/null
+++ b/proto/PlayProduct.proto
@@ -0,0 +1,11 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// Version: 4.6.0
+// Obfs: DFKPGHOBLLC
+message PlayProduct {
+ string product_id = 1;
+ string price_tier = 2;
+ uint32 schedule_id = 3;
+}
diff --git a/proto/PlayerLocationInfo.proto b/proto/PlayerLocationInfo.proto
index 7f75c586..cd5b73d6 100644
--- a/proto/PlayerLocationInfo.proto
+++ b/proto/PlayerLocationInfo.proto
@@ -1,9 +1,13 @@
syntax = "proto3";
+
option java_package = "emu.grasscutter.net.proto";
+
import "Vector.proto";
+// Version: 4.6.0
+// Obfs: ???
message PlayerLocationInfo {
- Vector pos = 14;
- Vector rot = 15;
- uint32 uid = 5;
+ uint32 uid = 4;
+ Vector pos = 5;
+ Vector rot = 6;
}
diff --git a/proto/PlayerRechargeDataNotify.proto b/proto/PlayerRechargeDataNotify.proto
new file mode 100644
index 00000000..2807b106
--- /dev/null
+++ b/proto/PlayerRechargeDataNotify.proto
@@ -0,0 +1,14 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "ProductPriceTier.proto";
+
+// CmdId: 20372
+// Version: 4.6.0
+// Obfs: FPNDLFEOEFN
+message PlayerRechargeDataNotify {
+ uint32 card_product_remain_days = 10;
+ repeated ProductPriceTier product_price_tier_list = 14;
+}
+
diff --git a/proto/PlayerWorldLocationInfo.proto b/proto/PlayerWorldLocationInfo.proto
index e5d2f443..a54bfdbb 100644
--- a/proto/PlayerWorldLocationInfo.proto
+++ b/proto/PlayerWorldLocationInfo.proto
@@ -1,8 +1,12 @@
syntax = "proto3";
+
option java_package = "emu.grasscutter.net.proto";
+
import "PlayerLocationInfo.proto";
+// Version: 4.6.0
+// Obfs: KOBHCHMLBED
message PlayerWorldLocationInfo {
- PlayerLocationInfo player_loc = 7;
- uint32 scene_id = 5;
-}
+ uint32 scene_id = 1;
+ PlayerLocationInfo player_loc = 9;
+}
\ No newline at end of file
diff --git a/proto/ProductPriceTier.proto b/proto/ProductPriceTier.proto
new file mode 100644
index 00000000..c5fd157f
--- /dev/null
+++ b/proto/ProductPriceTier.proto
@@ -0,0 +1,10 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// Version: 4.6.0
+// Obfs: KGKLDAGGGNP
+message ProductPriceTier {
+ string price_tier = 3;
+ string product_id = 10;
+}
diff --git a/proto/QuestDestroyEntityReq.proto b/proto/QuestDestroyEntityReq.proto
index 945b81f0..94711e4a 100644
--- a/proto/QuestDestroyEntityReq.proto
+++ b/proto/QuestDestroyEntityReq.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: 21308
-// Obf: FFHMLGIIJEI
+
+// CmdId: 842
+// Version: 4.6.0
+// Obfs: BGBFEAGIFKO
message QuestDestroyEntityReq {
- uint32 entity_id = 1;
- uint32 scene_id = 14;
+ uint32 scene_id = 3;
uint32 quest_id = 6;
-}
+ uint32 entity_id = 11;
+}
\ No newline at end of file
diff --git a/proto/QuestDestroyEntityRsp.proto b/proto/QuestDestroyEntityRsp.proto
index 7c3665b7..bd41d0c0 100644
--- a/proto/QuestDestroyEntityRsp.proto
+++ b/proto/QuestDestroyEntityRsp.proto
@@ -1,26 +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";
-// CmdId: 9130
-// Obf: FGDKHKLDGLI
+
+// CmdId: 22741
+// Version: 4.6.0
+// Obfs: IHCICPNIOAI
message QuestDestroyEntityRsp {
+ uint32 entity_id = 2;
+ uint32 quest_id = 4;
+ int32 retcode = 6;
uint32 scene_id = 14;
- int32 retcode = 7;
- uint32 entity_id = 3;
- uint32 quest_id = 10;
-}
+}
\ No newline at end of file
diff --git a/proto/RechargeReq.proto b/proto/RechargeReq.proto
new file mode 100644
index 00000000..cfbfc646
--- /dev/null
+++ b/proto/RechargeReq.proto
@@ -0,0 +1,18 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "PlayProduct.proto";
+import "ShopCardProduct.proto";
+import "ShopConcertProduct.proto";
+import "ShopMcoinProduct.proto";
+
+// CmdId: 2262
+// Version: 4.6.0
+// Obfs: GDNIPLNJAKD
+message RechargeReq {
+ PlayProduct play_product = 4;
+ ShopMcoinProduct mcoin_product = 7;
+ ShopCardProduct card_product = 11;
+ ShopConcertProduct concert_product = 15;
+}
diff --git a/proto/RechargeRsp.proto b/proto/RechargeRsp.proto
new file mode 100644
index 00000000..cbdc4912
--- /dev/null
+++ b/proto/RechargeRsp.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 1499
+// Version: 4.6.0
+// Obfs: HEJONAIGBBM
+message RechargeRsp {
+ string product_id = 3;
+ bool is_show_minors_hint = 6;
+ int32 retcode = 11;
+}
diff --git a/proto/RoutePointChangeInfo.proto b/proto/RoutePointChangeInfo.proto
index cee08ee0..3213c90b 100644
--- a/proto/RoutePointChangeInfo.proto
+++ b/proto/RoutePointChangeInfo.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";
-// Obf: BHBIGPHGPGA
+
+// Version: 4.6.0
+// Obfs: DDFCGDCJODG
message RoutePointChangeInfo {
- float target_velocity = 14;
- float wait_time = 5;
- uint32 point_index = 4;
-}
+ float target_velocity = 2;
+ float wait_time = 3;
+ uint32 point_index = 15;
+}
\ No newline at end of file
diff --git a/proto/SceneAreaUnlockNotify.proto b/proto/SceneAreaUnlockNotify.proto
index 9dce0c2b..05c7433d 100644
--- a/proto/SceneAreaUnlockNotify.proto
+++ b/proto/SceneAreaUnlockNotify.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: 9869
-// Obf: CIGGADKIENC
+
+// CmdId: 22934
+// Version: 4.6.0
+// Obfs: EMEHBONIFJF
message SceneAreaUnlockNotify {
- repeated uint32 area_list = 1;
- uint32 scene_id = 6;
-}
+ uint32 scene_id = 7;
+ repeated uint32 area_list = 9;
+}
\ No newline at end of file
diff --git a/proto/ScenePlayerLocationNotify.proto b/proto/ScenePlayerLocationNotify.proto
index 610ae312..ab85cf5a 100644
--- a/proto/ScenePlayerLocationNotify.proto
+++ b/proto/ScenePlayerLocationNotify.proto
@@ -1,27 +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";
+
import "PlayerLocationInfo.proto";
import "VehicleLocationInfo.proto";
-// CmdId: 29652
-// Obf: ADLIMHMEMDB
+
+// CmdId: 801
+// Version: 4.6.0
+// Obfs: FIIKEOEAHIE
message ScenePlayerLocationNotify {
- repeated PlayerLocationInfo player_loc_list = 3;
- repeated VehicleLocationInfo vehicle_loc_list = 13;
- uint32 scene_id = 14;
-}
+ uint32 scene_id = 8;
+ repeated VehicleLocationInfo vehicle_loc_list = 10;
+ repeated PlayerLocationInfo player_loc_list = 12;
+}
\ No newline at end of file
diff --git a/proto/ScenePointUnlockNotify.proto b/proto/ScenePointUnlockNotify.proto
index 31f7f2a2..a63da630 100644
--- a/proto/ScenePointUnlockNotify.proto
+++ b/proto/ScenePointUnlockNotify.proto
@@ -1,10 +1,14 @@
syntax = "proto3";
+
option java_package = "emu.grasscutter.net.proto";
+// CmdId: 7336
+// Version: 4.6.0
+// Obfs: ???
message ScenePointUnlockNotify {
- repeated uint32 unlocked_point_list = 11;
- repeated uint32 point_list = 13;
- repeated uint32 DOGDPAFIMJD = 12;
- repeated uint32 JDNMBINKNGK = 5;
- uint32 scene_id = 1;
+ uint32 scene_id = 2;
+ repeated uint32 point_list = 4;
+ repeated uint32 MDCKMMJDEHG = 8;
+ repeated uint32 DBHGFHNGBJK = 9;
+ repeated uint32 KIBAPLIMEHA = 14;
}
diff --git a/proto/SceneRouteChangeInfo.proto b/proto/SceneRouteChangeInfo.proto
index b20dbc31..42910117 100644
--- a/proto/SceneRouteChangeInfo.proto
+++ b/proto/SceneRouteChangeInfo.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 "RoutePointChangeInfo.proto";
-// Obf: CIAHMGGKINJ
+
+// Version: 4.6.0
+// Obfs: GAALLMKNLOA
message SceneRouteChangeInfo {
- bool is_forward = 3;
- repeated RoutePointChangeInfo point_list = 12;
- uint32 type = 9;
+ repeated RoutePointChangeInfo point_list = 3;
uint32 route_id = 10;
-}
+ uint32 type = 12;
+ bool is_forward = 14;
+}
\ No newline at end of file
diff --git a/proto/SceneRouteChangeNotify.proto b/proto/SceneRouteChangeNotify.proto
index 3ea4950d..261e2f96 100644
--- a/proto/SceneRouteChangeNotify.proto
+++ b/proto/SceneRouteChangeNotify.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 "SceneRouteChangeInfo.proto";
-// CmdId: 9691
-// Obf: JOCLHFBINGA
+
+// CmdId: 9498
+// Version: 4.6.0
+// Obfs: EFPEFPLEDJA
message SceneRouteChangeNotify {
- uint32 scene_time = 13;
- uint32 scene_id = 7;
- repeated SceneRouteChangeInfo route_list = 11;
+ uint32 scene_time = 6;
+ uint32 scene_id = 8;
+ repeated SceneRouteChangeInfo route_list = 12;
}
diff --git a/proto/SetBattlePassViewedReq.proto b/proto/SetBattlePassViewedReq.proto
index dcf2d286..5d85ddc3 100644
--- a/proto/SetBattlePassViewedReq.proto
+++ b/proto/SetBattlePassViewedReq.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: 7320
-// Obf: KKIGJEPPADN
+
+// CmdId: 26945
+// Version: 4.6.0
+// Obfs: EPMDACBNEMP
message SetBattlePassViewedReq {
- uint32 schedule_id = 2;
+ uint32 schedule_id = 5;
}
diff --git a/proto/TakeBattlePassMissionPointReq.proto b/proto/TakeBattlePassMissionPointReq.proto
index bc799642..c9523805 100644
--- a/proto/TakeBattlePassMissionPointReq.proto
+++ b/proto/TakeBattlePassMissionPointReq.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: 20580
-// Obf: GPPAPCLMIEA
+
+// CmdId: 24391
+// Version: 4.6.0
+// Obfs: PCPEGKIEPPG
message TakeBattlePassMissionPointReq {
repeated uint32 mission_id_list = 5;
-}
+}
\ No newline at end of file
diff --git a/proto/TakeBattlePassMissionPointRsp.proto b/proto/TakeBattlePassMissionPointRsp.proto
index a5c3ec60..e5ddfdf7 100644
--- a/proto/TakeBattlePassMissionPointRsp.proto
+++ b/proto/TakeBattlePassMissionPointRsp.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: 9060
-// Obf: KBDNDEDCINE
+
+// CmdId: 5756
+// Version: 4.6.0
+// Obfs: CGAMLKOBIKD
message TakeBattlePassMissionPointRsp {
- int32 retcode = 8;
- repeated uint32 mission_id_list = 3;
-}
+ int32 retcode = 7;
+ repeated uint32 mission_id_list = 12;
+}
\ No newline at end of file
diff --git a/proto/TakeBattlePassRewardReq.proto b/proto/TakeBattlePassRewardReq.proto
index 0d00a814..659d1b74 100644
--- a/proto/TakeBattlePassRewardReq.proto
+++ b/proto/TakeBattlePassRewardReq.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 "BattlePassRewardTakeOption.proto";
-// CmdId: 28914
-// Obf: AEFJDMJIPGE
+
+// CmdId: 28683
+// Version: 4.6.0
+// Obfs: IMCLHEMCFIC
message TakeBattlePassRewardReq {
- repeated BattlePassRewardTakeOption take_option_list = 2;
+ repeated BattlePassRewardTakeOption take_option_list = 1;
}
diff --git a/proto/TakeBattlePassRewardRsp.proto b/proto/TakeBattlePassRewardRsp.proto
index 8639e9cc..38f3e2de 100644
--- a/proto/TakeBattlePassRewardRsp.proto
+++ b/proto/TakeBattlePassRewardRsp.proto
@@ -1,27 +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";
+
import "BattlePassRewardTakeOption.proto";
import "ItemParam.proto";
-// CmdId: 25609
-// Obf: JPNLFJHCEII
+
+// CmdId: 1049
+// Version: 4.6.0
+// Obfs: PCPEJDNJIAD
message TakeBattlePassRewardRsp {
- int32 retcode = 12;
+ repeated ItemParam item_list = 3;
repeated BattlePassRewardTakeOption take_option_list = 4;
- repeated ItemParam item_list = 14;
+ int32 retcode = 14;
}
diff --git a/proto/ToTheMoonAddObstacleReq.proto b/proto/ToTheMoonAddObstacleReq.proto
new file mode 100644
index 00000000..78f07b44
--- /dev/null
+++ b/proto/ToTheMoonAddObstacleReq.proto
@@ -0,0 +1,15 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "ToTheMoonObstacleInfo.proto";
+
+// CmdId: 6110
+// Version: 4.6.0
+// Obfs: ILCGFEJGBMJ
+message ToTheMoonAddObstacleReq {
+ uint32 scene_id = 2;
+ int32 query_id = 9;
+ ToTheMoonObstacleInfo obstacle = 10;
+ bool use_edge = 11;
+}
\ No newline at end of file
diff --git a/proto/ToTheMoonObstacleInfo.proto b/proto/ToTheMoonObstacleInfo.proto
new file mode 100644
index 00000000..2130f0e7
--- /dev/null
+++ b/proto/ToTheMoonObstacleInfo.proto
@@ -0,0 +1,21 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MathQuaternion.proto";
+import "Vector.proto";
+
+// Version: 4.6.0
+// Obfs: OOJCDBNFDCK
+message ToTheMoonObstacleInfo {
+ enum ShapeType {
+ OBSTACLE_SHAPE_CAPSULE = 0;
+ OBSTACLE_SHAPE_BOX = 1;
+ }
+
+ Vector center = 2;
+ int32 handle_id = 3;
+ Vector half_extents = 4;
+ ShapeType type = 10;
+ MathQuaternion rotation = 11;
+}
\ No newline at end of file
diff --git a/proto/ToTheMoonObstaclesModifyNotify.proto b/proto/ToTheMoonObstaclesModifyNotify.proto
new file mode 100644
index 00000000..a460bf8a
--- /dev/null
+++ b/proto/ToTheMoonObstaclesModifyNotify.proto
@@ -0,0 +1,15 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "ToTheMoonObstacleInfo.proto";
+
+// CmdId: 6170
+// Version: 4.6.0
+// Obfs: MFLEOEDJKCG
+message ToTheMoonObstaclesModifyNotify {
+ bool use_edge = 3;
+ repeated int32 remove_obstacle_ids = 9;
+ repeated ToTheMoonObstacleInfo add_obstacles = 11;
+ uint32 scene_id = 14;
+}
\ No newline at end of file
diff --git a/proto/ToTheMoonRemoveObstacleReq.proto b/proto/ToTheMoonRemoveObstacleReq.proto
new file mode 100644
index 00000000..a6de067e
--- /dev/null
+++ b/proto/ToTheMoonRemoveObstacleReq.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 6118
+// Version: 4.6.0
+// Obfs: FKBIPLGJBMF
+message ToTheMoonRemoveObstacleReq {
+ int32 handle = 5;
+ uint32 scene_id = 8;
+ int32 query_id = 10;
+}
diff --git a/proto/TransmitReason.proto b/proto/TransmitReason.proto
new file mode 100644
index 00000000..3d564dcb
--- /dev/null
+++ b/proto/TransmitReason.proto
@@ -0,0 +1,10 @@
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// Version: 4.6.0
+// Obfs: DJLNCMNEAOI
+enum TransmitReason {
+ TRANSMIT_NONE = 0;
+ TRANSMIT_QUEST = 1;
+}
diff --git a/proto/UnfreezeGroupLimitNotify.proto b/proto/UnfreezeGroupLimitNotify.proto
index d66d9e09..f1a86f46 100644
--- a/proto/UnfreezeGroupLimitNotify.proto
+++ b/proto/UnfreezeGroupLimitNotify.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: 23739
-// Obf: JEGDFLEGJLH
+
+// CmdId: 1186
+// Version: 4.6.0
+// Obfs: FCHAMHONLJE
message UnfreezeGroupLimitNotify {
- uint32 scene_id = 1;
- uint32 point_id = 12;
-}
+ uint32 point_id = 5;
+ uint32 scene_id = 13;
+}
\ No newline at end of file
diff --git a/proto/UnlockTransPointReq.proto b/proto/UnlockTransPointReq.proto
index 31ea8d5e..997b7147 100644
--- a/proto/UnlockTransPointReq.proto
+++ b/proto/UnlockTransPointReq.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: 27465
-// Obf: GHELOHKEPBF
+
+// CmdId: 27857
+// Version: 4.6.0
+// Obfs: EMIFGECBKAI
message UnlockTransPointReq {
- uint32 point_id = 13;
- uint32 scene_id = 11;
-}
+ uint32 point_id = 2;
+ uint32 scene_id = 3;
+}
\ No newline at end of file
diff --git a/proto/UnlockTransPointRsp.proto b/proto/UnlockTransPointRsp.proto
index 791fb327..6c7d7ff1 100644
--- a/proto/UnlockTransPointRsp.proto
+++ b/proto/UnlockTransPointRsp.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: 21510
-// Obf: IBGGKMKPHOB
+
+// CmdId: 23504
+// Version: 4.6.0
+// Obfs: LJJNGFAEJOG
message UnlockTransPointRsp {
- int32 retcode = 4;
-}
+ int32 retcode = 1;
+}
\ No newline at end of file
diff --git a/proto/VehicleLocationInfo.proto b/proto/VehicleLocationInfo.proto
index 88af69e9..67790f0a 100644
--- a/proto/VehicleLocationInfo.proto
+++ b/proto/VehicleLocationInfo.proto
@@ -1,30 +1,18 @@
-// 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 "Vector.proto";
-// Obf: JMGECLOKOFJ
+
+// Version: 4.6.0
+// Obfs: HHIDIPNLEIE
message VehicleLocationInfo {
- float PCBCDBGOKOK = 3;
- repeated uint32 uid_list = 11;
- float FOHOENOKMML = 7;
- uint32 owner_uid = 5;
- Vector rot = 14;
- Vector pos = 4;
- uint32 entity_id = 12;
- uint32 gadget_id = 15;
+ uint32 entity_id = 2;
+ float MKHCMCLJKLN = 5; // seems to be sorush related
+ float AACAIMICFPI = 6; // seems to be sorush related
+ uint32 owner_uid = 9;
+ Vector pos = 11;
+ repeated uint32 uid_list = 12;
+ Vector rot = 13;
+ uint32 gadget_id = 14;
}
diff --git a/proto/WorldChestOpenNotify.proto b/proto/WorldChestOpenNotify.proto
index 2e0c02a8..2075e7c4 100644
--- a/proto/WorldChestOpenNotify.proto
+++ b/proto/WorldChestOpenNotify.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: 9116
-// Obf: CMEJIMOMCEO
+
+// CmdId: 8271
+// Version: 4.6.0
+// Obfs: GNFPLKIBPKM
message WorldChestOpenNotify {
- uint32 group_id = 5;
- uint32 config_id = 4;
- uint32 scene_id = 11;
-}
+ uint32 scene_id = 5;
+ uint32 group_id = 9;
+ uint32 config_id = 13;
+}
\ No newline at end of file
diff --git a/proto/WorldPlayerLocationNotify.proto b/proto/WorldPlayerLocationNotify.proto
index d3be9e2b..a9c71052 100644
--- a/proto/WorldPlayerLocationNotify.proto
+++ b/proto/WorldPlayerLocationNotify.proto
@@ -2,10 +2,13 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-import "PlayerWorldLocationInfo.proto";
import "PlayerLocationInfo.proto";
+import "PlayerWorldLocationInfo.proto";
+// CmdId: 7462
+// Version: 4.6.0
+// Obfs: KJMDKJLLMKA
message WorldPlayerLocationNotify {
- repeated PlayerWorldLocationInfo player_world_loc_list = 15;
- repeated PlayerLocationInfo player_loc_list = 14;
+ repeated PlayerLocationInfo player_loc_list = 7;
+ repeated PlayerWorldLocationInfo player_world_loc_list = 14;
}
\ No newline at end of file