enter in-game work

This commit is contained in:
Yuuki 2024-08-28 11:45:34 +08:00
parent 1dee689cf7
commit 0faa2d1583
167 changed files with 3580 additions and 3106 deletions

View File

@ -1,13 +1,14 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilityString.proto"; import "AbilityString.proto";
import "AbilityScalarValueEntry.proto"; import "AbilityScalarValueEntry.proto";
// 4.7.0
message AbilityAppliedAbility { message AbilityAppliedAbility {
AbilityString ability_name = 1; AbilityString ability_name = 1;
AbilityString ability_override = 2; AbilityString ability_override = 2;
repeated AbilityScalarValueEntry override_map = 3; repeated AbilityScalarValueEntry override_map = 3;
uint32 instanced_ability_id = 4; uint32 instanced_ability_id = 4;
} }

View File

@ -1,24 +1,25 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilityString.proto"; import "AbilityString.proto";
import "AbilityAttachedModifier.proto"; import "AbilityAttachedModifier.proto";
import "ModifierDurability.proto"; import "ModifierDurability.proto";
// 4.7.0
message AbilityAppliedModifier { message AbilityAppliedModifier {
int32 modifier_local_id = 1; int32 modifier_local_id = 1;
uint32 parent_ability_entity_id = 2; uint32 parent_ability_entity_id = 2;
AbilityString parent_ability_name = 3; AbilityString parent_ability_name = 3;
AbilityString parent_ability_override = 4; AbilityString parent_ability_override = 4;
uint32 instanced_ability_id = 5; uint32 instanced_ability_id = 5;
uint32 instanced_modifier_id = 6; uint32 instanced_modifier_id = 6;
float exist_duration = 7; float exist_duration = 7;
AbilityAttachedModifier attached_instanced_modifier = 8; AbilityAttachedModifier attached_instanced_modifier = 8;
uint32 apply_entity_id = 9; uint32 apply_entity_id = 9;
bool is_attached_parent_ability = 10; bool is_attached_parent_ability = 10;
ModifierDurability modifier_durability = 11; ModifierDurability modifier_durability = 11;
uint32 sbuff_uid = 12; uint32 sbuff_uid = 12;
bool is_serverbuff_modifier = 13; bool is_serverbuff_modifier = 13;
bool IILBHFODNKJ = 14; bool NCEGKBANOBP = 14;
} }

View File

@ -1,11 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message AbilityAttachedModifier { message AbilityAttachedModifier {
bool is_invalid = 1; bool is_invalid = 1;
uint32 owner_entity_id = 2; uint32 owner_entity_id = 2;
uint32 instanced_modifier_id = 3; uint32 instanced_modifier_id = 3;
bool is_serverbuff_modifier = 4; bool is_serverbuff_modifier = 4;
int32 attach_name_hash = 5; int32 attach_name_hash = 5;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilityEmbryo.proto"; import "AbilityEmbryo.proto";
// 4.7.0
message AbilityControlBlock { message AbilityControlBlock {
repeated AbilityEmbryo ability_embryo_list = 1; repeated AbilityEmbryo ability_embryo_list = 1;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// 4.7.0 // Version: 5.0
message AbilityEmbryo { message AbilityEmbryo {
uint32 ability_id = 1; uint32 ability_id = 1;
fixed32 ability_name_hash = 2; fixed32 ability_name_hash = 2;
fixed32 ability_override_name_hash = 3; fixed32 ability_override_name_hash = 3;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// 4.7.0 // Version: 5.0
message AbilityGadgetInfo { message AbilityGadgetInfo {
uint32 camp_id = 1; uint32 camp_id = 1;
uint32 camp_target_type = 2; uint32 camp_target_type = 2;
uint32 target_entity_id = 3; uint32 target_entity_id = 3;
} }

View File

@ -1,20 +1,21 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "MassivePropSyncInfo.proto"; import "MassivePropSyncInfo.proto";
import "BreakoutSnapShot.proto"; import "BreakoutSnapShot.proto";
//import "DPJAFMMGPCK.proto"; //import "DIGPMLGLILN.proto";
// 4.7.0
message AbilityMixinRecoverInfo { message AbilityMixinRecoverInfo {
uint32 local_id = 3; uint32 local_id = 3;
repeated uint32 data_list = 4; repeated uint32 data_list = 4;
bool is_serverbuff_modifier = 5; bool is_serverbuff_modifier = 5;
repeated MassivePropSyncInfo massive_prop_list = 6; repeated MassivePropSyncInfo massive_prop_list = 6;
BreakoutSnapShot breakout_snap_shot = 7; BreakoutSnapShot breakout_snap_shot = 7;
//DPJAFMMGPCK IKBDKGFHKMA = 8; //DIGPMLGLILN FJBMDPHICPF = 8;
oneof Source { oneof Source {
uint32 instanced_ability_id = 1; uint32 instanced_ability_id = 1;
uint32 instanced_modifier_id = 2; uint32 instanced_modifier_id = 2;
} }
} }

View File

@ -1,23 +1,20 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilityString.proto"; import "AbilityString.proto";
import "AbilityScalarType.proto"; import "AbilityScalarType.proto";
// 4.7.0
message AbilityScalarValueEntry { message AbilityScalarValueEntry {
AbilityString key = 1; // AbilityString key = 1;
AbilityScalarType value_type = 2; // float float_value = 3;
oneof value { AbilityString key = 1;
float float_value = 3; AbilityScalarType value_type = 2;
string string_value = 4; oneof value {
int32 int_value = 5; float float_value = 3;
uint32 uint_value = 6; string string_value = 4;
} int32 int_value = 5;
uint32 uint_value = 6;
}
} }
/*
message AbilityScalarValueEntry {
AbilityString key = 1;
float float_value = 3;
}
*/

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message AbilityString { message AbilityString {
oneof type { oneof type {
string str = 1; string str = 1;
uint32 hash = 2; uint32 hash = 2;
} }
} }

View File

@ -1,17 +1,18 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilityScalarValueEntry.proto"; import "AbilityScalarValueEntry.proto";
import "AbilityAppliedAbility.proto"; import "AbilityAppliedAbility.proto";
import "AbilityAppliedModifier.proto"; import "AbilityAppliedModifier.proto";
import "AbilityMixinRecoverInfo.proto"; import "AbilityMixinRecoverInfo.proto";
// 4.7.0
message AbilitySyncStateInfo { message AbilitySyncStateInfo {
bool is_inited = 1; bool is_inited = 1;
repeated AbilityScalarValueEntry dynamic_value_map = 2; repeated AbilityScalarValueEntry dynamic_value_map = 2;
repeated AbilityAppliedAbility applied_abilities = 3; repeated AbilityAppliedAbility applied_abilities = 3;
repeated AbilityAppliedModifier applied_modifiers = 4; repeated AbilityAppliedModifier applied_modifiers = 4;
repeated AbilityMixinRecoverInfo mixin_recover_infos = 5; repeated AbilityMixinRecoverInfo mixin_recover_infos = 5;
repeated AbilityScalarValueEntry sgv_dynamic_value_map = 6; repeated AbilityScalarValueEntry sgv_dynamic_value_map = 6;
} }

View File

@ -1,11 +1,13 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: IGGDJDFNMAG // Version: 5.0
message AnimatorParameterValueInfo { message AnimatorParameterValueInfo {
uint32 para_type = 1; uint32 para_type = 1;
oneof paraVal { oneof paraVal {
int32 int_val = 2; int32 int_val = 2;
float float_val = 3; float float_val = 3;
bool bool_val = 4; bool bool_val = 4;
} }
} }

View File

@ -1,8 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AnimatorParameterValueInfo.proto"; import "AnimatorParameterValueInfo.proto";
// Obf: CABIAHBAEHD
message AnimatorParameterValueInfoPair { message AnimatorParameterValueInfoPair {
int32 name_id = 1; int32 name_id = 1;
AnimatorParameterValueInfo animator_para = 2; AnimatorParameterValueInfo animator_para = 2;
} }

View File

@ -1,20 +1,22 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 23378
import "AvatarInfo.proto"; import "AvatarInfo.proto";
import "AvatarTeam.proto"; import "AvatarTeam.proto";
import "AvatarRenameInfo.proto"; import "AvatarRenameInfo.proto";
// 4.7.0
// CmdId: 26021
message AvatarDataNotify { message AvatarDataNotify {
repeated AvatarInfo avatar_list = 7; repeated uint32 ONAODHDMILI = 2;
repeated uint32 owned_costume_list = 10; repeated uint64 temp_avatar_guid_list = 4;
/* protected @ 0x30 */// repeated uint32 backup_avatar_team_order_list = 65535; uint32 cur_avatar_team_id = 7;
map<uint32, AvatarTeam> avatar_team_map = 14; repeated AvatarInfo avatar_list = 8;
/* protected @ 0x40 */// repeated uint64 temp_avatar_guid_list = 65535; repeated uint32 backup_avatar_team_order_list = 9;
repeated AvatarRenameInfo avatar_rename_list = 11; map<uint32, AvatarTeam> avatar_team_map = 10;
repeated uint32 owned_flycloak_list = 13; repeated uint32 owned_flycloak_list = 11;
uint64 choose_avatar_guid = 8; repeated uint32 owned_costume_list = 12;
uint32 cur_avatar_team_id = 5; repeated AvatarRenameInfo avatar_rename_list = 13;
uint64 choose_avatar_guid = 14;
} }

View File

@ -1,17 +1,18 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilitySyncStateInfo.proto"; import "AbilitySyncStateInfo.proto";
import "ServerBuff.proto"; import "ServerBuff.proto";
// 4.7.0
message AvatarEnterSceneInfo { message AvatarEnterSceneInfo {
uint32 avatar_entity_id = 3; uint32 weapon_entity_id = 3;
uint64 avatar_guid = 4; AbilitySyncStateInfo avatar_ability_info = 4;
uint32 weapon_entity_id = 5; uint32 avatar_entity_id = 6;
uint64 weapon_guid = 7; uint64 weapon_guid = 7;
AbilitySyncStateInfo avatar_ability_info = 10; repeated ServerBuff server_buff_list = 8;
repeated uint32 buff_id_list = 12; AbilitySyncStateInfo weapon_ability_info = 9;
repeated ServerBuff server_buff_list = 13; repeated uint32 buff_id_list = 10;
AbilitySyncStateInfo weapon_ability_info = 14; uint64 avatar_guid = 12;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: CFINPAOKBJN // Version: 5.0
message AvatarEquipAffixInfo { message AvatarEquipAffixInfo {
uint32 equip_affix_id = 1; uint32 equip_affix_id = 1;
uint32 left_cd_time = 2; uint32 left_cd_time = 2;
} }

View File

@ -1,10 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: HGHGOIMIAMF // Version: 5.0
message AvatarExcelInfo { message AvatarExcelInfo {
uint64 prefab_path_hash = 1; uint64 prefab_path_hash = 1;
uint64 prefab_path_remote_hash = 2; uint64 prefab_path_remote_hash = 2;
uint64 controller_path_hash = 3; uint64 controller_path_hash = 3;
uint64 controller_path_remote_hash = 4; uint64 controller_path_remote_hash = 4;
uint64 combat_config_hash = 5; uint64 combat_config_hash = 5;
} }

View File

@ -1,10 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: OJBIHADNECN // Version: 5.0
enum AvatarExpeditionState { enum AvatarExpeditionState {
AVATAR_EXPEDITION_NONE = 0; AVATAR_EXPEDITION_STATE_AVATAR_EXPEDITION_NONE = 0;
AVATAR_EXPEDITION_DOING = 1; AVATAR_EXPEDITION_STATE_AVATAR_EXPEDITION_DOING = 1;
AVATAR_EXPEDITION_FINISH_WAIT_REWARD = 2; AVATAR_EXPEDITION_STATE_AVATAR_EXPEDITION_FINISH_WAIT_REWARD = 2;
AVATAR_EXPEDITION_CALLBACK_WAIT_REWARD = 3; AVATAR_EXPEDITION_STATE_AVATAR_EXPEDITION_CALLBACK_WAIT_REWARD = 3;
AVATAR_EXPEDITION_LOCKED = 4; AVATAR_EXPEDITION_STATE_AVATAR_EXPEDITION_LOCKED = 4;
} }

View File

@ -1,12 +1,15 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "FetterData.proto"; import "FetterData.proto";
// Obf: BJIGILJGKAI
message AvatarFetterInfo { message AvatarFetterInfo {
uint32 exp_number = 1; uint32 exp_number = 1;
uint32 exp_level = 2; uint32 exp_level = 2;
repeated uint32 open_id_list = 3; repeated uint32 open_id_list = 3;
repeated uint32 finish_id_list = 4; repeated uint32 finish_id_list = 4;
repeated uint32 rewarded_fetter_level_list = 5; repeated uint32 rewarded_fetter_level_list = 5;
repeated FetterData fetter_list = 6; repeated FetterData fetter_list = 6;
} }

View File

@ -1,5 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "PropValue.proto"; import "PropValue.proto";
import "TrialAvatarInfo.proto"; import "TrialAvatarInfo.proto";
import "AvatarSkillInfo.proto"; import "AvatarSkillInfo.proto";
@ -7,34 +10,37 @@ import "AvatarFetterInfo.proto";
import "AvatarExpeditionState.proto"; import "AvatarExpeditionState.proto";
import "AvatarEquipAffixInfo.proto"; import "AvatarEquipAffixInfo.proto";
import "AvatarExcelInfo.proto"; import "AvatarExcelInfo.proto";
//import "JCDPOCOOGCI.proto"; // import "JNHGJAIIMGJ.proto";
message AvatarInfo { message AvatarInfo {
uint32 avatar_id = 1; uint32 avatar_id = 1;
uint64 guid = 2; uint64 guid = 2;
map<uint32, PropValue> prop_map = 3; map<uint32, PropValue> prop_map = 3;
uint32 life_state = 4; uint32 life_state = 4;
repeated uint64 equip_guid_list = 5; repeated uint64 equip_guid_list = 5;
repeated uint32 talent_id_list = 6; repeated uint32 talent_id_list = 6;
map<uint32, float> fight_prop_map = 7; map<uint32, float> fight_prop_map = 7;
TrialAvatarInfo trial_avatar_info = 9; TrialAvatarInfo trial_avatar_info = 9;
map<uint32, AvatarSkillInfo> skill_map = 10; map<uint32, AvatarSkillInfo> skill_map = 10;
uint32 skill_depot_id = 11; uint32 skill_depot_id = 11;
AvatarFetterInfo fetter_info = 12; AvatarFetterInfo fetter_info = 12;
uint32 core_proud_skill_level = 13; uint32 core_proud_skill_level = 13;
repeated uint32 inherent_proud_skill_list = 14; repeated uint32 inherent_proud_skill_list = 14;
map<uint32, uint32> skill_level_map = 15; map<uint32, uint32> skill_level_map = 15;
AvatarExpeditionState expedition_state = 16; AvatarExpeditionState expedition_state = 16;
map<uint32, uint32> proud_skill_extra_level_map = 17; map<uint32, uint32> proud_skill_extra_level_map = 17;
bool is_focus = 18; bool is_focus = 18;
uint32 avatar_type = 19; uint32 avatar_type = 19;
repeated uint32 team_resonance_list = 20; repeated uint32 team_resonance_list = 20;
uint32 wearing_flycloak_id = 21; uint32 wearing_flycloak_id = 21;
repeated AvatarEquipAffixInfo equip_affix_list = 22; repeated AvatarEquipAffixInfo equip_affix_list = 22;
uint32 born_time = 23; uint32 born_time = 23;
repeated uint32 pending_promote_reward_list = 24; repeated uint32 pending_promote_reward_list = 24;
uint32 costume_id = 25; uint32 costume_id = 25;
AvatarExcelInfo excel_info = 26; AvatarExcelInfo excel_info = 26;
uint32 anim_hash = 27; uint32 anim_hash = 27;
//JCDPOCOOGCI PDGKJIIEPIO = 28; // JNHGJAIIMGJ PINDEGAFOAE = 28;
uint32 GJFKDCJENJE = 29; uint32 ABLFJPMKKDA = 29;
uint32 GCHGLANNHMC = 30;
uint32 KCINBOMOIGL = 31;
} }

View File

@ -1,9 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// 4.7.0
message AvatarRenameInfo { message AvatarRenameInfo {
uint32 avatar_id = 3; uint32 avatar_id = 13;
string avatar_name = 13; string avatar_name = 15;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: FKBNODHMBMG // Version: 5.0
message AvatarSkillInfo { message AvatarSkillInfo {
uint32 pass_cd_time = 1; uint32 pass_cd_time = 1;
repeated uint32 full_cd_time_list = 2; repeated uint32 full_cd_time_list = 2;
uint32 max_charge_count = 3; uint32 max_charge_count = 3;
} }

View File

@ -1,8 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message AvatarTeam { message AvatarTeam {
repeated uint64 avatar_guid_list = 5; string team_name = 5;
string team_name = 1; repeated uint64 avatar_guid_list = 10;
} }

View File

@ -1,11 +1,14 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 22603
import "AvatarTeam.proto"; import "AvatarTeam.proto";
// 4.7.0
message AvatarTeamAllDataNotify { message AvatarTeamAllDataNotify {
map<uint32, AvatarTeam> avatar_team_map = 4; repeated uint64 temp_avatar_guid_list = 3;
repeated uint32 backup_avatar_team_order_list = 8; map<uint32, AvatarTeam> avatar_team_map = 7;
repeated uint64 temp_avatar_guid_list = 1; uint32 cur_avatar_team_id = 10;
repeated uint32 backup_avatar_team_order_list = 13;
} }

View File

@ -1,10 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 28759
import "AvatarTeam.proto"; import "AvatarTeam.proto";
// 4.7.0
message AvatarTeamUpdateNotify { message AvatarTeamUpdateNotify {
map<uint32, AvatarTeam> avatar_team_map = 6; repeated uint64 temp_avatar_guid_list = 10;
repeated uint64 temp_avatar_guid_list = 5; map<uint32, AvatarTeam> avatar_team_map = 12;
} }

View File

@ -1,25 +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 <https://www.gnu.org/licenses/>.
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: EGHIPFGJCJG // Version: 5.0
message BlockInfo { message BlockInfo {
uint32 block_id = 1; uint32 block_id = 1;
uint32 data_version = 2; uint32 data_version = 2;
bytes bin_data = 3; bytes bin_data = 3;
bool is_dirty = 4; bool is_dirty = 4;
} }

View File

@ -1,11 +1,13 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: OGDABNFHACL // Version: 5.0
message BlossomChestInfo { message BlossomChestInfo {
uint32 resin = 1; uint32 resin = 1;
repeated uint32 qualify_uid_list = 2; repeated uint32 qualify_uid_list = 2;
repeated uint32 remain_uid_list = 3; repeated uint32 remain_uid_list = 3;
uint32 dead_time = 4; uint32 dead_time = 4;
uint32 blossom_refresh_type = 5; uint32 blossom_refresh_type = 5;
uint32 refresh_id = 6; uint32 refresh_id = 6;
} }

View File

@ -1,11 +1,14 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "WeeklyBossResinDiscountInfo.proto"; import "WeeklyBossResinDiscountInfo.proto";
// Obf: CBKAOHFJIND
message BossChestInfo { message BossChestInfo {
uint32 monster_config_id = 1; uint32 monster_config_id = 1;
uint32 resin = 2; uint32 resin = 2;
repeated uint32 remain_uid_list = 3; repeated uint32 remain_uid_list = 3;
repeated uint32 qualify_uid_list = 4; repeated uint32 qualify_uid_list = 4;
map<uint32, WeeklyBossResinDiscountInfo> uid_discount_map = 5; map<uint32, WeeklyBossResinDiscountInfo> uid_discount_map = 5;
} }

View File

@ -1,33 +1,28 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "BreakoutActionType.proto";
import "BreakoutVector2.proto"; import "BreakoutVector2.proto";
// 4.7.0
message BreakoutAction { message BreakoutAction {
enum BreakoutActionType { BreakoutActionType action_type = 1;
ACTION_TYPE_NONE = 0; uint64 client_game_time = 2;
ACTION_TYPE_LAUNCH_BALL = 1; uint64 server_game_time = 3;
ACTION_TYPE_DESTROY_BALL = 2; bool is_failed = 4;
ACTION_TYPE_FALLING_OBJECT = 3; uint32 pre_index = 5;
ACTION_TYPE_MISSILE = 4; uint32 new_index = 6;
} BreakoutVector2 pos = 7;
BreakoutActionType action_type = 1; BreakoutVector2 move_dir = 8;
uint64 client_game_time = 2; int32 speed = 9;
uint64 server_game_time = 3; uint32 peer_id = 10;
bool is_failed = 4; uint32 element_type = 11;
uint32 pre_index = 5; uint32 element_reaction_buff = 12;
uint32 new_index = 6; uint32 speed_increase_count = 13;
BreakoutVector2 pos = 7; bool has_extra_ball = 14;
BreakoutVector2 move_dir = 8; BreakoutVector2 extra_ball_dir = 15;
int32 speed = 9; uint32 extra_ball_index = 16;
uint32 peer_id = 10; int32 offset = 17;
uint32 element_type = 11; uint64 CLKEPICNJJD = 18;
uint32 element_reaction_buff = 12;
uint32 speed_increase_count = 13;
bool has_extra_ball = 14;
BreakoutVector2 extra_ball_dir = 15;
uint32 extra_ball_index = 16;
int32 offset = 17;
uint64 HCFFMHEFMLJ = 18;
} }

View File

@ -0,0 +1,12 @@
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
enum BreakoutActionType {
BREAKOUT_ACTION_TYPE_ACTION_TYPE_NONE = 0;
BREAKOUT_ACTION_TYPE_ACTION_TYPE_LAUNCH_BALL = 1;
BREAKOUT_ACTION_TYPE_ACTION_TYPE_DESTROY_BALL = 2;
BREAKOUT_ACTION_TYPE_ACTION_TYPE_FALLING_OBJECT = 3;
BREAKOUT_ACTION_TYPE_ACTION_TYPE_MISSILE = 4;
}

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: DGMFFJIKOKD // Version: 5.0
message BreakoutBrickInfo { message BreakoutBrickInfo {
uint32 hp = 1; uint32 hp = 1;
uint32 element_type = 2; uint32 element_type = 2;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: KGJJJGIPNLE // Version: 5.0
message BreakoutElementReactionCounter { message BreakoutElementReactionCounter {
uint32 element_reaction = 1; uint32 element_reaction = 1;
uint32 count = 2; uint32 count = 2;
} }

View File

@ -1,24 +1,27 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "BreakoutVector2.proto"; import "BreakoutVector2.proto";
import "BreakoutPhysicalObjectModifier.proto"; import "BreakoutPhysicalObjectModifier.proto";
import "BreakoutBrickInfo.proto"; import "BreakoutBrickInfo.proto";
// Obf: NFMHCAILCIF
message BreakoutPhysicalObject { message BreakoutPhysicalObject {
uint32 id = 1; uint32 id = 1;
uint32 index = 2; uint32 index = 2;
bool is_active = 3; bool is_active = 3;
BreakoutVector2 pos = 4; BreakoutVector2 pos = 4;
BreakoutVector2 move_dir = 5; BreakoutVector2 move_dir = 5;
int32 speed = 6; int32 speed = 6;
uint32 init_peer_id = 7; uint32 init_peer_id = 7;
uint32 state = 8; uint32 state = 8;
uint32 element_type = 9; uint32 element_type = 9;
uint32 element_reaction_buff = 10; uint32 element_reaction_buff = 10;
repeated BreakoutPhysicalObjectModifier modifier_list = 11; repeated BreakoutPhysicalObjectModifier modifier_list = 11;
int32 total_rotation = 12; int32 total_rotation = 12;
repeated BreakoutBrickInfo info_list = 13; repeated BreakoutBrickInfo info_list = 13;
uint32 last_hit_peer_id = 14; uint32 last_hit_peer_id = 14;
uint32 speed_increase_count = 15; uint32 speed_increase_count = 15;
int32 offset = 16; int32 offset = 16;
} }

View File

@ -1,21 +1,23 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: NFKLEIMGKJD // Version: 5.0
message BreakoutPhysicalObjectModifier { message BreakoutPhysicalObjectModifier {
uint32 type = 1; uint32 type = 1;
uint32 id = 2; uint32 id = 2;
int32 param1 = 3; int32 param1 = 3;
int32 param2 = 4; int32 param2 = 4;
int32 param3 = 5; int32 param3 = 5;
int32 param4 = 6; int32 param4 = 6;
int32 param5 = 7; int32 param5 = 7;
int32 param6 = 8; int32 param6 = 8;
bool bool1 = 9; bool bool1 = 9;
int32 duration = 10; int32 duration = 10;
int32 end_time = 11; int32 end_time = 11;
uint32 combo = 12; uint32 combo = 12;
uint32 peer_id = 13; uint32 peer_id = 13;
uint32 skill_type = 14; uint32 skill_type = 14;
uint32 level = 15; uint32 level = 15;
uint32 choose_player_count = 16; uint32 choose_player_count = 16;
} }

View File

@ -1,30 +1,33 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "BreakoutPhysicalObject.proto"; import "BreakoutPhysicalObject.proto";
import "BreakoutAction.proto"; import "BreakoutAction.proto";
import "BreakoutSpawnPoint.proto"; import "BreakoutSpawnPoint.proto";
import "BreakoutElementReactionCounter.proto"; import "BreakoutElementReactionCounter.proto";
import "BreakoutSyncConnectUidInfo.proto"; import "BreakoutSyncConnectUidInfo.proto";
// Obf: OLKOKCBEABM
message BreakoutSnapShot { message BreakoutSnapShot {
uint64 client_game_time = 1; uint64 client_game_time = 1;
uint64 server_game_time = 2; uint64 server_game_time = 2;
repeated BreakoutPhysicalObject ball_list = 3; repeated BreakoutPhysicalObject ball_list = 3;
repeated BreakoutPhysicalObject physical_object_list = 4; repeated BreakoutPhysicalObject physical_object_list = 4;
repeated BreakoutAction action_list = 5; repeated BreakoutAction action_list = 5;
uint32 wave_index = 6; uint32 wave_index = 6;
bool is_finish = 7; bool is_finish = 7;
uint32 score = 8; uint32 score = 8;
uint32 combo = 9; uint32 combo = 9;
uint32 max_combo = 10; uint32 max_combo = 10;
uint32 life_count = 11; uint32 life_count = 11;
uint32 wave_suite_index = 12; uint32 wave_suite_index = 12;
repeated BreakoutSpawnPoint spawn_point_list = 13; repeated BreakoutSpawnPoint spawn_point_list = 13;
uint32 remaining_boss_hp = 14; uint32 remaining_boss_hp = 14;
repeated BreakoutElementReactionCounter brick_element_reaction_list = 15; repeated BreakoutElementReactionCounter brick_element_reaction_list = 15;
repeated BreakoutElementReactionCounter ball_element_reaction_list = 16; repeated BreakoutElementReactionCounter ball_element_reaction_list = 16;
repeated BreakoutSyncConnectUidInfo uid_info_list = 17; repeated BreakoutSyncConnectUidInfo uid_info_list = 17;
repeated BreakoutPhysicalObject dynamic_object_list = 18; repeated BreakoutPhysicalObject dynamic_object_list = 18;
repeated uint32 id_index_list = 19; repeated uint32 id_index_list = 19;
int32 raw_client_game_time = 20; int32 raw_client_game_time = 20;
} }

View File

@ -1,9 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "BreakoutPhysicalObject.proto"; import "BreakoutPhysicalObject.proto";
// Obf: COLAAGNOBFN
message BreakoutSpawnPoint { message BreakoutSpawnPoint {
uint32 id = 1; uint32 id = 1;
uint32 brick_suite_id = 2; uint32 brick_suite_id = 2;
repeated BreakoutPhysicalObject spawned_brick_list = 3; repeated BreakoutPhysicalObject spawned_brick_list = 3;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: BKGOLPBLKMN // Version: 5.0
message BreakoutSyncConnectUidInfo { message BreakoutSyncConnectUidInfo {
uint32 uid = 1; uint32 uid = 1;
repeated uint32 skill_id_list = 2; repeated uint32 skill_id_list = 2;
repeated uint32 skill_level_list = 3; repeated uint32 skill_level_list = 3;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: FIGLCLAIOJM // Version: 5.0
message BreakoutVector2 { message BreakoutVector2 {
int32 x = 1; int32 x = 1;
int32 y = 2; int32 y = 2;
} }

View File

@ -1,13 +1,15 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 3470
import "Vector.proto"; import "Vector.proto";
// 4.7.0
message ChangeAvatarReq { message ChangeAvatarReq {
Vector move_pos = 15; Vector move_pos = 4;
uint64 guid = 2; uint32 skill_id = 8;
bool is_move = 1; bool IMPLCNKLFED = 9;
/* protected @ 0x31 */// bool FDHGMIPOKFE = 65535; bool is_move = 5;
uint32 skill_id = 9; uint64 guid = 10;
} }

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// CmdId: 21804 // Version: 5.0
// CmdID: 2046
message ChangeAvatarRsp { message ChangeAvatarRsp {
uint64 cur_guid = 8; int32 retcode = 3;
/* protected @ 0x28 */// uint32 skill_id = 65535; uint64 cur_guid = 6;
/* protected @ 0x2C */// int32 retcode = 65535; uint32 skill_id = 8;
} }

View File

@ -1,14 +1,16 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: KCPDCBKPNNL // Version: 5.0
message ClientGadgetInfo { message ClientGadgetInfo {
uint32 camp_id = 1; uint32 camp_id = 1;
uint32 camp_type = 2; uint32 camp_type = 2;
uint64 guid = 3; uint64 guid = 3;
uint32 owner_entity_id = 4; uint32 owner_entity_id = 4;
uint32 target_entity_id = 5; uint32 target_entity_id = 5;
bool async_load = 6; bool async_load = 6;
bool is_peer_id_from_player = 7; bool is_peer_id_from_player = 7;
repeated uint32 target_entity_id_list = 8; repeated uint32 target_entity_id_list = 8;
repeated uint32 target_lock_point_index_list = 9; repeated uint32 target_lock_point_index_list = 9;
} }

View File

@ -1,6 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: NFEECFHHDLJ // Version: 5.0
message CoinCollectOperatorInfo { message CoinCollectOperatorInfo {
uint32 level_id = 1; uint32 level_id = 1;
} }

View File

@ -0,0 +1,9 @@
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message CountDownDelete {
map<uint32, uint32> delete_time_num_map = 1;
uint32 config_count_down_time = 2;
}

View File

@ -1,14 +1,15 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "Vector.proto"; import "Vector.proto";
// 4.7.0
message CurVehicleInfo { message CurVehicleInfo {
uint32 entity_id = 1; uint32 entity_id = 1;
uint32 pos = 2; uint32 pos = 2;
uint32 gadget_id = 3; uint32 gadget_id = 3;
//Vector AOHJKFLAICK = 4; Vector BNDOCLLEBEA = 4;
//uint32 FDCGDBELDGL = 5; uint32 GIICKAOFKDB = 5;
//Vector EOMOABFFPAL = 6; Vector BELIOKMDLGB = 6;
} }

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message CustomCommonNodeInfo { message CustomCommonNodeInfo {
int32 parent_index = 1; int32 parent_index = 1;
uint32 config_id = 2; uint32 config_id = 2;
string slot_identifier = 3; string slot_identifier = 3;
repeated int32 param_list = 4; repeated int32 param_list = 4;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "CustomCommonNodeInfo.proto"; import "CustomCommonNodeInfo.proto";
// 4.7.0
// Obf: ?
message CustomGadgetTreeInfo { message CustomGadgetTreeInfo {
repeated CustomCommonNodeInfo node_list = 1; repeated CustomCommonNodeInfo node_list = 1;
} }

View File

@ -0,0 +1,8 @@
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message DateTimeDelete {
uint32 delete_time = 1;
}

View File

@ -0,0 +1,10 @@
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message DelayWeekCountDownDelete {
map<uint32, uint32> delete_time_num_map = 1;
uint32 config_delay_week = 2;
uint32 config_count_down_time = 3;
}

View File

@ -1,6 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: HBNLGHJLHNL // Version: 5.0
message DeshretObeliskGadgetInfo { message DeshretObeliskGadgetInfo {
repeated uint32 argument_list = 1; repeated uint32 argument_list = 1;
} }

View File

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

View File

@ -1,6 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: KCHCJMNANCP // Version: 5.0
message EchoShellInfo { message EchoShellInfo {
uint32 shell_id = 1; uint32 shell_id = 1;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 4561
message EnterSceneDoneReq { message EnterSceneDoneReq {
uint32 enter_scene_token = 13; uint32 enter_scene_token = 8;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 793
message EnterSceneDoneRsp { message EnterSceneDoneRsp {
uint32 enter_scene_token = 11; int32 retcode = 10;
int32 retcode = 15; uint32 enter_scene_token = 11;
} }

View File

@ -1,10 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 9626
message EnterScenePeerNotify { message EnterScenePeerNotify {
uint32 enter_scene_token = 1; uint32 enter_scene_token = 1;
uint32 peer_id = 10; uint32 dest_scene_id = 7;
uint32 host_peer_id = 6; uint32 peer_id = 8;
uint32 dest_scene_id = 15; uint32 host_peer_id = 11;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 20524
message EnterSceneReadyReq { message EnterSceneReadyReq {
uint32 enter_scene_token = 8; uint32 enter_scene_token = 7;
} }

View File

@ -1,9 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 7914
// 4.7.0
message EnterSceneReadyRsp { message EnterSceneReadyRsp {
uint32 enter_scene_token = 3; int32 retcode = 9;
int32 retcode = 2; uint32 enter_scene_token = 11;
} }

View File

@ -1,18 +1,20 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: NMCABLGJJEK // Version: 5.0
enum EnterType { enum EnterType {
ENTER_TYPE_NONE = 0; ENTER_TYPE_NONE = 0;
ENTER_TYPE_SELF = 1; ENTER_TYPE_SELF = 1;
ENTER_TYPE_GOTO = 2; ENTER_TYPE_GOTO = 2;
ENTER_TYPE_JUMP = 3; ENTER_TYPE_JUMP = 3;
ENTER_TYPE_OTHER = 4; ENTER_TYPE_OTHER = 4;
ENTER_TYPE_BACK = 5; ENTER_TYPE_BACK = 5;
ENTER_TYPE_DUNGEON = 6; ENTER_TYPE_DUNGEON = 6;
ENTER_TYPE_DUNGEON_REPLAY = 7; ENTER_TYPE_DUNGEON_REPLAY = 7;
ENTER_TYPE_GOTO_BY_PORTAL = 8; ENTER_TYPE_GOTO_BY_PORTAL = 8;
ENTER_TYPE_SELF_HOME = 9; ENTER_TYPE_SELF_HOME = 9;
ENTER_TYPE_OTHER_HOME = 10; ENTER_TYPE_OTHER_HOME = 10;
ENTER_TYPE_GOTO_RECREATE = 11; ENTER_TYPE_GOTO_RECREATE = 11;
ENTER_TYPE_GOTO_BY_TPL = 12; ENTER_TYPE_GOTO_BY_TPL = 12;
} }

View File

@ -1,17 +1,20 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilitySyncStateInfo.proto"; import "AbilitySyncStateInfo.proto";
import "EntityRendererChangedInfo.proto"; import "EntityRendererChangedInfo.proto";
import "SceneEntityAiInfo.proto"; import "SceneEntityAiInfo.proto";
import "Vector.proto"; import "Vector.proto";
import "AnimatorParameterValueInfoPair.proto"; import "AnimatorParameterValueInfoPair.proto";
import "EntityClientExtraInfo.proto"; import "EntityClientExtraInfo.proto";
// Obf: DHLPFKPHPNF
message EntityAuthorityInfo { message EntityAuthorityInfo {
AbilitySyncStateInfo ability_info = 1; AbilitySyncStateInfo ability_info = 1;
EntityRendererChangedInfo renderer_changed_info = 2; EntityRendererChangedInfo renderer_changed_info = 2;
SceneEntityAiInfo ai_info = 3; SceneEntityAiInfo ai_info = 3;
Vector born_pos = 4; Vector born_pos = 4;
repeated AnimatorParameterValueInfoPair pose_para_list = 5; repeated AnimatorParameterValueInfoPair pose_para_list = 5;
EntityClientExtraInfo client_extra_info = 6; EntityClientExtraInfo client_extra_info = 6;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: GCALEOBNFFH // Version: 5.0
message EntityClientData { message EntityClientData {
uint32 wind_change_scene_time = 1; uint32 wind_change_scene_time = 1;
float windmill_sync_angle = 2; float windmill_sync_angle = 2;
int32 wind_change_target_level = 3; int32 wind_change_target_level = 3;
} }

View File

@ -1,7 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "Vector.proto"; import "Vector.proto";
// Obf: LCJDLMMKJCK
message EntityClientExtraInfo { message EntityClientExtraInfo {
Vector skill_anchor_position = 1; Vector skill_anchor_position = 1;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: FDGMLNKHDKB // Version: 5.0
message EntityEnvironmentInfo { message EntityEnvironmentInfo {
uint32 json_climate_type = 1; uint32 json_climate_type = 1;
uint32 climate_area_id = 2; uint32 climate_area_id = 2;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: OGLDMEEKHOB // Version: 5.0
message EntityRendererChangedInfo { message EntityRendererChangedInfo {
map<string, uint32> changed_renderers = 1; map<string, uint32> changed_renderers = 1;
uint32 visibility_count = 2; uint32 visibility_count = 2;
bool is_cached = 3; bool is_cached = 3;
} }

View File

@ -1,14 +1,15 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "Reliquary.proto"; import "Reliquary.proto";
import "Weapon.proto"; import "Weapon.proto";
// 4.6.0
message Equip { message Equip {
bool is_locked = 3; bool is_locked = 3;
oneof detail { oneof detail {
Reliquary reliquary = 1; Reliquary reliquary = 1;
Weapon weapon = 2; Weapon weapon = 2;
} }
} }

View File

@ -1,23 +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 <https://www.gnu.org/licenses/>.
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: NGEGAFNJIFO // Version: 5.0
message FeatureBlockInfo { message FeatureBlockInfo {
uint32 feature_type = 1; uint32 feature_type = 1;
uint32 end_time = 2; uint32 end_time = 2;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: JFCHMJKBMBL // Version: 5.0
message FetterData { message FetterData {
uint32 fetter_id = 1; uint32 fetter_id = 1;
uint32 fetter_state = 2; uint32 fetter_state = 2;
repeated uint32 cond_index_list = 3; repeated uint32 cond_index_list = 3;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: DKENFABIHAJ // Version: 5.0
message FightPropPair { message FightPropPair {
uint32 prop_type = 1; uint32 prop_type = 1;
float prop_value = 2; float prop_value = 2;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: NPDMIJKKJPA // Version: 5.0
message FishPoolInfo { message FishPoolInfo {
uint32 pool_id = 1; uint32 pool_id = 1;
repeated uint32 fish_area_list = 2; repeated uint32 fish_area_list = 2;
uint32 today_fish_num = 3; uint32 today_fish_num = 3;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: JEMIPJIOKME // Version: 5.0
message FishtankFishInfo { message FishtankFishInfo {
float fish_distance_from_water = 1; float fish_distance_from_water = 1;
float fish_scale = 2; float fish_scale = 2;
float initial_rotation_y = 3; float initial_rotation_y = 3;
} }

View File

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

View File

@ -1,10 +1,13 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "FoundationStatus.proto"; import "FoundationStatus.proto";
// Obf: HJBPIEDJHAP
message FoundationInfo { message FoundationInfo {
FoundationStatus status = 1; FoundationStatus status = 1;
repeated uint32 uid_list = 2; repeated uint32 uid_list = 2;
uint32 current_building_id = 3; uint32 current_building_id = 3;
uint32 locked_by_uid = 4; uint32 locked_by_uid = 4;
} }

View File

@ -1,9 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: HGKOLBGFAEC // Version: 5.0
enum FoundationStatus { enum FoundationStatus {
FOUNDATION_STATUS_NONE = 0; FOUNDATION_STATUS_NONE = 0;
FOUNDATION_STATUS_INIT = 1; FOUNDATION_STATUS_INIT = 1;
FOUNDATION_STATUS_BUILDING = 2; FOUNDATION_STATUS_BUILDING = 2;
FOUNDATION_STATUS_BUILT = 3; FOUNDATION_STATUS_BUILT = 3;
} }

View File

@ -1,7 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.6.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message Furniture { message Furniture {
uint32 count = 1; uint32 count = 1;
} }

View File

@ -1,12 +1,14 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: GPODMAALLGC // Version: 5.0
enum GadgetBornType { enum GadgetBornType {
GADGET_BORN_TYPE_NONE = 0; GADGET_BORN_TYPE_NONE = 0;
GADGET_BORN_TYPE_IN_AIR = 1; GADGET_BORN_TYPE_IN_AIR = 1;
GADGET_BORN_TYPE_PLAYER = 2; GADGET_BORN_TYPE_PLAYER = 2;
GADGET_BORN_TYPE_MONSTER_HIT = 3; GADGET_BORN_TYPE_MONSTER_HIT = 3;
GADGET_BORN_TYPE_MONSTER_DIE = 4; GADGET_BORN_TYPE_MONSTER_DIE = 4;
GADGET_BORN_TYPE_GADGET = 5; GADGET_BORN_TYPE_GADGET = 5;
GADGET_BORN_TYPE_GROUND = 6; GADGET_BORN_TYPE_GROUND = 6;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: LMEGMGDKNJL // Version: 5.0
message GadgetCrucibleInfo { message GadgetCrucibleInfo {
uint32 mp_play_id = 1; uint32 mp_play_id = 1;
uint32 prepare_end_time = 2; uint32 prepare_end_time = 2;
} }

View File

@ -1,11 +1,14 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "ItemParam.proto"; import "ItemParam.proto";
// Obf: AHGOAHBMENB
message GadgetGeneralRewardInfo { message GadgetGeneralRewardInfo {
uint32 resin = 1; uint32 resin = 1;
uint32 dead_time = 2; uint32 dead_time = 2;
repeated uint32 remain_uid_list = 3; repeated uint32 remain_uid_list = 3;
repeated uint32 qualify_uid_list = 4; repeated uint32 qualify_uid_list = 4;
ItemParam item_param = 5; ItemParam item_param = 5;
} }

View File

@ -1,18 +1,18 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "GadgetCrucibleInfo.proto"; import "GadgetCrucibleInfo.proto";
// 4.7.0
message GadgetPlayInfo { message GadgetPlayInfo {
uint32 play_type = 1; uint32 play_type = 1;
uint32 duration = 2; uint32 duration = 2;
repeated uint32 progress_stage_list = 3; repeated uint32 progress_stage_list = 3;
uint32 start_cd = 4; uint32 start_cd = 4;
uint32 start_time = 5; uint32 start_time = 5;
uint32 progress = 6; uint32 progress = 6;
//optional GadgetCrucibleInfo crucible_info = 21; oneof play_info {
oneof play_info { GadgetCrucibleInfo crucible_info = 21;
GadgetCrucibleInfo crucible_info = 21; }
}
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: IHPBLNPFECK // Version: 5.0
message GatherGadgetInfo { message GatherGadgetInfo {
uint32 item_id = 1; uint32 item_id = 1;
bool is_forbid_guest = 2; bool is_forbid_guest = 2;
} }

View File

@ -1,23 +1,33 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 6013
message GetPlayerTokenReq { message GetPlayerTokenReq {
string client_rand_key = 204; string HCJGLLHFCMA = 1304;
string account_uid = 10; string KAMJIJOLFKJ = 13;
uint32 key_id = 220; string BPFIMEKJANE = 9;
string account_token = 15; string country_code = 1;
uint32 platform_type = 11; string account_token = 4;
uint32 OGNFFAEKDBO = 1595; string MMDPDOOCOCO = 10;
uint32 account_type = 41; string JLCDDOJGKKG = 1528;
uint32 channel_id = 1311; string account_uid = 3;
string psn_id = 12; string client_rand_key = 94;
string online_id = 1; string BDGFMEIEHOD = 5;
string client_ip_str = 14; string CEMENPADOPP = 7;
uint32 sub_channel_id = 7; string JCIMGDHMMLN = 594;
uint32 cloudClientIp = 177; string ADFHNBPGAGM = 1804;
string birthday = 828; uint32 platform_type = 2;
uint32 uid = 131; uint32 IKKKLHICPMF = 12;
string country_code = 151; uint32 account_type = 8;
bool is_guest = 6; uint32 OCINFHOJCEA = 15;
uint32 CIJPMGMCJBA = 1776;
uint32 uid = 6;
uint32 MPGMOFLCEOF = 1730;
bool is_guest = 14;
uint32 KODKEFGJHAP = 168;
uint32 key_id = 1485;
uint32 KEKHAKAPMIN = 11;
uint32 JDHCKKAGBNL = 1686;
} }

View File

@ -1,40 +1,48 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 24174
import "StopServerInfo.proto"; import "StopServerInfo.proto";
// 4.7.0
message GetPlayerTokenRsp { message GetPlayerTokenRsp {
uint32 uid = 4; int32 retcode = 1;
string account_uid = 9; uint64 secret_key_seed = 2;
string server_rand_key = 910; bool is_guest = 3;
string sign = 414; bytes security_cmd_buffer = 4;
string country_code = 254; bool is_proficient_player = 5;
bytes security_cmd_buffer = 3; string account_uid = 6;
string client_ip_str = 1950; uint32 black_uid_end_time = 7;
string token = 2; uint32 uid = 8;
string psn_id = 1402; bytes extra_bin_data = 9;
uint32 platform_type = 14; uint32 gm_uid = 10;
uint32 key_id = 720; string secret_key = 11;
bool PELBMOHDKHJ = 1292; uint32 account_type = 12;
bool ILGBPPMFHIF = 1962; uint32 platform_type = 13;
uint64 secret_key_seed = 13; string msg = 14;
string client_version_random_key = 678; string token = 15;
StopServerInfo stop_server = 875; string server_rand_key = 68;
uint32 channel_id = 259; bool AKODFAIGJCE = 206;
uint32 reg_platform = 1241; uint32 MPGMOFLCEOF = 267;
uint32 tag = 1572; uint32 OCINFHOJCEA = 290;
string birthday = 1437; uint32 key_id = 398;
int32 retcode = 11; bool GCDGEKAONGD = 440;
bool is_guest = 211; string KNCFLPGOMNI = 496;
repeated uint32 finish_collection_id_list = 451; string OLODGDMMPNF = 528;
string msg = 12; StopServerInfo stop_server = 563;
bool is_proficient_player = 5; bool HNBGEKMPFIB = 575;
uint32 account_type = 1585; uint32 JDHCKKAGBNL = 576;
bytes extra_bin_data = 113; uint32 KEKHAKAPMIN = 630;
uint32 sub_channel_id = 141; uint32 CIJPMGMCJBA = 847;
string secret_key = 91; uint32 tag = 853;
uint32 blackUidEndTime = 15; uint32 PLNNJPFPPAM = 1118;
uint32 KCFIGJAPNIB = 6; string country_code = 1269;
uint32 cloudClientIp = 508; string game_biz = 1670;
repeated uint32 finish_collection_id_list = 1684;
string JCIMGDHMMLN = 1735;
string CEMENPADOPP = 1871;
string sign = 1885;
string MMDPDOOCOCO = 1954;
string JLCDDOJGKKG = 2042;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 2109
message HostPlayerNotify { message HostPlayerNotify {
uint32 host_uid = 3; uint32 host_uid = 1;
uint32 host_peer_id = 10; uint32 host_peer_id = 9;
} }

View File

@ -1,17 +1,18 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "Material.proto"; import "Material.proto";
import "Equip.proto"; import "Equip.proto";
import "Furniture.proto"; import "Furniture.proto";
// 4.6.0
message Item { message Item {
uint32 item_id = 1; uint32 item_id = 1;
uint64 guid = 2; uint64 guid = 2;
oneof detail { oneof detail {
Material material = 5; Material material = 5;
Equip equip = 6; Equip equip = 6;
Furniture furniture = 7; Furniture furniture = 7;
} }
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: GKCILFACLDH // Version: 5.0
message ItemParam { message ItemParam {
uint32 item_id = 1; uint32 item_id = 1;
uint32 count = 2; uint32 count = 2;
} }

View File

@ -1,11 +1,12 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "AbilitySyncStateInfo.proto"; import "AbilitySyncStateInfo.proto";
// 4.7.0
message MPLevelEntityInfo { message MPLevelEntityInfo {
AbilitySyncStateInfo ability_info = 6; AbilitySyncStateInfo ability_info = 8;
uint32 authority_peer_id = 9; uint32 entity_id = 10;
uint32 entity_id = 13; uint32 authority_peer_id = 15;
} }

View File

@ -1,9 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message MapLayerInfo { message MapLayerInfo {
repeated uint32 unlocked_map_layer_id_list = 13; repeated uint32 unlocked_map_layer_id_list = 2;
repeated uint32 unlocked_map_layer_floor_id_list = 4; repeated uint32 unlocked_map_layer_floor_id_list = 3;
repeated uint32 unlocked_map_layer_group_id_list = 3; repeated uint32 unlocked_map_layer_group_id_list = 12;
} }

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.6.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message MassivePropParam { message MassivePropParam {
int32 type = 1; int32 type = 1;
repeated uint32 reaction_info_list = 2; repeated uint32 reaction_info_list = 2;
repeated float param_list = 3; repeated float param_list = 3;
uint32 sync_flag = 4; uint32 sync_flag = 4;
} }

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "MassivePropParam.proto"; import "MassivePropParam.proto";
// 4.6.0
message MassivePropSyncInfo { message MassivePropSyncInfo {
int64 id = 1; int64 id = 1;
repeated MassivePropParam prop_list = 2; repeated MassivePropParam prop_list = 2;
} }

View File

@ -1,10 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "MaterialDeleteInfo.proto"; import "MaterialDeleteInfo.proto";
// 4.6.0
message Material { message Material {
uint32 count = 1; uint32 count = 1;
MaterialDeleteInfo delete_info = 2; MaterialDeleteInfo delete_info = 2;
} }

View File

@ -1,27 +1,17 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "CountDownDelete.proto";
import "DateTimeDelete.proto";
import "DelayWeekCountDownDelete.proto";
// 4.6.0
message MaterialDeleteInfo { message MaterialDeleteInfo {
message CountDownDelete { bool delete_time_num_map = 1;
map<uint32, uint32> delete_time_num_map = 1; oneof delete_info {
uint32 config_count_down_time = 2; CountDownDelete count_down_delete = 2;
} DateTimeDelete date_delete = 3;
DelayWeekCountDownDelete delay_week_count_down_delete = 4;
message DateTimeDelete { }
uint32 delete_time = 1;
}
message DelayWeekCountDownDelete {
map<uint32, uint32> delete_time_num_map = 1;
uint32 config_delay_week = 2;
uint32 config_count_down_time = 3;
}
bool has_delete_config = 1;
oneof delete_info {
CountDownDelete count_down_delete = 2;
DateTimeDelete date_delete = 3;
DelayWeekCountDownDelete delay_week_count_down_delete = 4;
}
} }

View File

@ -1,9 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: IPIFDKJKEEJ // Version: 5.0
message MathQuaternion { message MathQuaternion {
float x = 1; float x = 1;
float y = 2; float y = 2;
float z = 3; float z = 3;
float w = 4; float w = 4;
} }

View File

@ -1,8 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.6.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
message ModifierDurability { message ModifierDurability {
float reduce_ratio = 1; float reduce_ratio = 1;
float remaining_durability = 2; float remaining_durability = 2;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: LNFJOAGMCEF // Version: 5.0
enum MonsterBornType { enum MonsterBornType {
MONSTER_BORN_TYPE_NONE = 0; MONSTER_BORN_TYPE_NONE = 0;
MONSTER_BORN_TYPE_DEFAULT = 1; MONSTER_BORN_TYPE_DEFAULT = 1;
MONSTER_BORN_TYPE_RANDOM = 2; MONSTER_BORN_TYPE_RANDOM = 2;
} }

View File

@ -1,14 +1,15 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "RoutePoint.proto"; import "RoutePoint.proto";
// 4.7.0
message MonsterRoute { message MonsterRoute {
repeated RoutePoint route_points = 1; repeated RoutePoint route_points = 1;
uint32 speed_level = 2; uint32 speed_level = 2;
uint32 route_type = 3; uint32 route_type = 3;
float arrive_range = 4; float arrive_range = 4;
bool GGOMEGCENEL = 5; bool OFDFDKHNJGA = 5;
bool DCCIPKJBIEI = 6; bool GPLDNOGEBDI = 6;
} }

View File

@ -1,16 +1,21 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
import "Vector.proto"; import "Vector.proto";
import "MotionState.proto"; import "MotionState.proto";
// Obf: LJEPKMPIOKJ
message MotionInfo { message MotionInfo {
Vector pos = 1; Vector pos = 1;
Vector rot = 2; Vector rot = 2;
Vector speed = 3; Vector speed = 3;
MotionState state = 4; MotionState state = 4;
repeated Vector params = 5; repeated Vector params = 5;
Vector ref_pos = 6; Vector ref_pos = 6;
uint32 ref_id = 7; uint32 ref_id = 7;
uint32 scene_time = 8; uint32 scene_time = 8;
uint64 interval_velocity = 9; uint64 interval_velocity = 9;
uint32 BIMCAJGDDOI = 10;
uint32 HJCDICMBDKE = 11;
} }

View File

@ -1,73 +1,116 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: KGHLDGDMFOB // Version: 5.0
enum MotionState { enum MotionState {
MOTION_STATE_NONE = 0; MOTION_STATE_NONE = 0;
MOTION_STATE_RESET = 1; MOTION_STATE_RESET = 1;
MOTION_STATE_STANDBY = 2; MOTION_STATE_STANDBY = 2;
MOTION_STATE_STANDBY_MOVE = 3; MOTION_STATE_STANDBY_MOVE = 3;
MOTION_STATE_WALK = 4; MOTION_STATE_WALK = 4;
MOTION_STATE_RUN = 5; MOTION_STATE_RUN = 5;
MOTION_STATE_DASH = 6; MOTION_STATE_DASH = 6;
MOTION_STATE_CLIMB = 7; MOTION_STATE_CLIMB = 7;
MOTION_STATE_CLIMB_JUMP = 8; MOTION_STATE_CLIMB_JUMP = 8;
MOTION_STATE_STANDBY_TO_CLIMB = 9; MOTION_STATE_STANDBY_TO_CLIMB = 9;
MOTION_STATE_FIGHT = 10; MOTION_STATE_FIGHT = 10;
MOTION_STATE_JUMP = 11; MOTION_STATE_JUMP = 11;
MOTION_STATE_DROP = 12; MOTION_STATE_DROP = 12;
MOTION_STATE_FLY = 13; MOTION_STATE_FLY = 13;
MOTION_STATE_SWIM_MOVE = 14; MOTION_STATE_SWIM_MOVE = 14;
MOTION_STATE_SWIM_IDLE = 15; MOTION_STATE_SWIM_IDLE = 15;
MOTION_STATE_SWIM_DASH = 16; MOTION_STATE_SWIM_DASH = 16;
MOTION_STATE_SWIM_JUMP = 17; MOTION_STATE_SWIM_JUMP = 17;
MOTION_STATE_SLIP = 18; MOTION_STATE_SLIP = 18;
MOTION_STATE_GO_UPSTAIRS = 19; MOTION_STATE_GO_UPSTAIRS = 19;
MOTION_STATE_FALL_ON_GROUND = 20; MOTION_STATE_FALL_ON_GROUND = 20;
MOTION_STATE_JUMP_UP_WALL_FOR_STANDBY = 21; MOTION_STATE_JUMP_UP_WALL_FOR_STANDBY = 21;
MOTION_STATE_JUMP_OFF_WALL = 22; MOTION_STATE_JUMP_OFF_WALL = 22;
MOTION_STATE_POWERED_FLY = 23; MOTION_STATE_POWERED_FLY = 23;
MOTION_STATE_LADDER_IDLE = 24; MOTION_STATE_LADDER_IDLE = 24;
MOTION_STATE_LADDER_MOVE = 25; MOTION_STATE_LADDER_MOVE = 25;
MOTION_STATE_LADDER_SLIP = 26; MOTION_STATE_LADDER_SLIP = 26;
MOTION_STATE_STANDBY_TO_LADDER = 27; MOTION_STATE_STANDBY_TO_LADDER = 27;
MOTION_STATE_LADDER_TO_STANDBY = 28; MOTION_STATE_LADDER_TO_STANDBY = 28;
MOTION_STATE_DANGER_STANDBY = 29; MOTION_STATE_DANGER_STANDBY = 29;
MOTION_STATE_DANGER_STANDBY_MOVE = 30; MOTION_STATE_DANGER_STANDBY_MOVE = 30;
MOTION_STATE_DANGER_WALK = 31; MOTION_STATE_DANGER_WALK = 31;
MOTION_STATE_DANGER_RUN = 32; MOTION_STATE_DANGER_RUN = 32;
MOTION_STATE_DANGER_DASH = 33; MOTION_STATE_DANGER_DASH = 33;
MOTION_STATE_CROUCH_IDLE = 34; MOTION_STATE_CROUCH_IDLE = 34;
MOTION_STATE_CROUCH_MOVE = 35; MOTION_STATE_CROUCH_MOVE = 35;
MOTION_STATE_CROUCH_ROLL = 36; MOTION_STATE_CROUCH_ROLL = 36;
MOTION_STATE_NOTIFY = 37; MOTION_STATE_NOTIFY = 37;
MOTION_STATE_LAND_SPEED = 38; MOTION_STATE_LAND_SPEED = 38;
MOTION_STATE_MOVE_FAIL_ACK = 39; MOTION_STATE_MOVE_FAIL_ACK = 39;
MOTION_STATE_WATERFALL = 40; MOTION_STATE_WATERFALL = 40;
MOTION_STATE_DASH_BEFORE_SHAKE = 41; MOTION_STATE_DASH_BEFORE_SHAKE = 41;
MOTION_STATE_SIT_IDLE = 42; MOTION_STATE_SIT_IDLE = 42;
MOTION_STATE_FORCE_SET_POS = 43; MOTION_STATE_FORCE_SET_POS = 43;
MOTION_STATE_QUEST_FORCE_DRAG = 44; MOTION_STATE_QUEST_FORCE_DRAG = 44;
MOTION_STATE_FOLLOW_ROUTE = 45; MOTION_STATE_FOLLOW_ROUTE = 45;
MOTION_STATE_SKIFF_BOARDING = 46; MOTION_STATE_SKIFF_BOARDING = 46;
MOTION_STATE_SKIFF_NORMAL = 47; MOTION_STATE_SKIFF_NORMAL = 47;
MOTION_STATE_SKIFF_DASH = 48; MOTION_STATE_SKIFF_DASH = 48;
MOTION_STATE_SKIFF_POWERED_DASH = 49; MOTION_STATE_SKIFF_POWERED_DASH = 49;
MOTION_STATE_DESTROY_VEHICLE = 50; MOTION_STATE_DESTROY_VEHICLE = 50;
MOTION_STATE_FLY_IDLE = 51; MOTION_STATE_FLY_IDLE = 51;
MOTION_STATE_FLY_SLOW = 52; MOTION_STATE_FLY_SLOW = 52;
MOTION_STATE_FLY_FAST = 53; MOTION_STATE_FLY_FAST = 53;
MOTION_STATE_AIM_MOVE = 54; MOTION_STATE_AIM_MOVE = 54;
MOTION_STATE_AIR_COMPENSATION = 55; MOTION_STATE_AIR_COMPENSATION = 55;
MOTION_STATE_SORUSH_NORMAL = 56; MOTION_STATE_SORUSH_NORMAL = 56;
MOTION_STATE_ROLLER_COASTER = 57; MOTION_STATE_ROLLER_COASTER = 57;
MOTION_STATE_DIVE_IDLE = 58; MOTION_STATE_DIVE_IDLE = 58;
MOTION_STATE_DIVE_MOVE = 59; MOTION_STATE_DIVE_MOVE = 59;
MOTION_STATE_DIVE_DASH = 60; MOTION_STATE_DIVE_DASH = 60;
MOTION_STATE_DIVE_DOLPHINE = 61; MOTION_STATE_DIVE_DOLPHINE = 61;
MOTION_STATE_DEBUG = 62; MOTION_STATE_DEBUG = 62;
MOTION_STATE_OCEAN_CURRENT = 63; MOTION_STATE_OCEAN_CURRENT = 63;
MOTION_STATE_DIVE_SWIM_MOVE = 64; MOTION_STATE_DIVE_SWIM_MOVE = 64;
MOTION_STATE_DIVE_SWIM_IDLE = 65; MOTION_STATE_DIVE_SWIM_IDLE = 65;
MOTION_STATE_DIVE_SWIM_DASH = 66; MOTION_STATE_DIVE_SWIM_DASH = 66;
MOTION_STATE_NUM = 67; MOTION_STATE_ARC_LIGHT = 67;
MOTION_STATE_ARC_LIGHT_SAFE = 68;
MOTION_STATE_VEHICLE_STANDBY = 69;
MOTION_STATE_VEHICLE_RUN = 70;
MOTION_STATE_VEHICLE_DASH = 71;
MOTION_STATE_VEHICLE_CLIMB = 72;
MOTION_STATE_VEHICLE_CLIMB_JUMP = 73;
MOTION_STATE_VEHICLE_STANDBY_TO_CLIMB = 74;
MOTION_STATE_VEHICLE_FIGHT = 75;
MOTION_STATE_VEHICLE_JUMP = 76;
MOTION_STATE_VEHICLE_DROP = 77;
MOTION_STATE_VEHICLE_FLY = 78;
MOTION_STATE_VEHICLE_SWIM_MOVE = 79;
MOTION_STATE_VEHICLE_SWIM_IDLE = 80;
MOTION_STATE_VEHICLE_SWIM_DASH = 81;
MOTION_STATE_VEHICLE_SLIP = 82;
MOTION_STATE_VEHICLE_GO_UPSTAIRS = 83;
MOTION_STATE_VEHICLE_FALL_ON_GROUND = 84;
MOTION_STATE_VEHICLE_JUMP_OFF_WALL = 85;
MOTION_STATE_VEHICLE_POWERED_FLY = 86;
MOTION_STATE_VEHICLE_DANGER_STANDBY = 87;
MOTION_STATE_VEHICLE_DANGER_RUN = 88;
MOTION_STATE_VEHICLE_DANGER_DASH = 89;
MOTION_STATE_VEHICLE_NOTIFY = 90;
MOTION_STATE_VEHICLE_LAND_SPEED = 91;
MOTION_STATE_VEHICLE_DASH_BEFORE_SHAKE = 92;
MOTION_STATE_VEHICLE_QUEST_FORCE_DRAG = 93;
MOTION_STATE_VEHICLE_FOLLOW_ROUTE = 94;
MOTION_STATE_VEHICLE_FLY_IDLE = 95;
MOTION_STATE_VEHICLE_FLY_SLOW = 96;
MOTION_STATE_VEHICLE_FLY_FAST = 97;
MOTION_STATE_VEHICLE_AIR_COMPENSATION = 98;
MOTION_STATE_VEHICLE_ARC_LIGHT = 99;
MOTION_STATE_VEHICLE_ARC_LIGHT_SAFE = 100;
MOTION_STATE_VEHICLE_DANGER_SWIM_MOVE = 101;
MOTION_STATE_VEHICLE_DANGER_SWIM_IDLE = 102;
MOTION_STATE_VEHICLE_DANGER_SWIM_DASH = 103;
MOTION_STATE_FOLLOW_CURVE_ROUTE = 104;
MOTION_STATE_VEHICLE_FOLLOW_CURVE_ROUTE = 105;
MOTION_STATE_NATSAURUS_NORMAL = 106;
MOTION_STATE_NATSAURUS_ENTERING = 107;
MOTION_STATE_NUM = 108;
} }

View File

@ -1,9 +1,11 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: FMMMMIIKELD // Version: 5.0
enum MovingPlatformType { enum MovingPlatformType {
MOVING_PLATFORM_TYPE_NONE = 0; MOVING_PLATFORM_TYPE_NONE = 0;
MOVING_PLATFORM_TYPE_USE_CONFIG = 1; MOVING_PLATFORM_TYPE_USE_CONFIG = 1;
MOVING_PLATFORM_TYPE_ABILITY = 2; MOVING_PLATFORM_TYPE_ABILITY = 2;
MOVING_PLATFORM_TYPE_ROUTE = 3; MOVING_PLATFORM_TYPE_ROUTE = 3;
} }

View File

@ -1,8 +1,10 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: BGGFBNKFLHN // Version: 5.0
message MpPlayRewardInfo { message MpPlayRewardInfo {
uint32 resin = 1; uint32 resin = 1;
repeated uint32 remain_uid_list = 2; repeated uint32 remain_uid_list = 2;
repeated uint32 qualify_uid_list = 3; repeated uint32 qualify_uid_list = 3;
} }

View File

@ -1,6 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: OHIBCIDJNDB // Version: 5.0
message NightCrowGadgetInfo { message NightCrowGadgetInfo {
repeated uint32 argument_list = 1; repeated uint32 argument_list = 1;
} }

View File

@ -1,6 +1,8 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Obf: CDAACMGIFGG // Version: 5.0
message OfferingInfo { message OfferingInfo {
uint32 offering_id = 1; uint32 offering_id = 1;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 26658
message OpenStateChangeNotify { message OpenStateChangeNotify {
map<uint32, uint32> open_state_map = 11; map<uint32, uint32> open_state_map = 7;
} }

View File

@ -1,7 +1,9 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
// 4.7.0 option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 29093
message OpenStateUpdateNotify { message OpenStateUpdateNotify {
map<uint32, uint32> open_state_map = 4; map<uint32, uint32> open_state_map = 11;
} }

View File

@ -1,12 +1,16 @@
syntax = "proto3"; syntax = "proto3";
option java_package = "emu.grasscutter.net.proto"; option java_package = "emu.grasscutter.net.proto";
// Version: 5.0
// CmdID: 5983
// 4.7.0
message PingReq { message PingReq {
bytes sc_data = 1; bytes PDHFGJIBCLA = 13;
float ue_time = 3; bytes IINPBFLAEEP = 2;
double total_tick_time = 11; uint64 NHLLKPHMFGP = 3;
uint32 client_time = 9; double total_tick_time = 7;
uint32 seq = 14; uint32 client_time = 4;
float ue_time = 8;
uint32 DFALBBBCFMO = 10;
uint32 seq = 15;
} }

Some files were not shown because too many files have changed in this diff Show More