Update v3.3.0-fix3

This commit is contained in:
Akbar Yahya 2022-12-11 12:34:49 +08:00
parent 34997af801
commit cb6b0dac47
56 changed files with 1518 additions and 244 deletions

40
proto/AccountType.proto Normal file
View File

@ -0,0 +1,40 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum AccountType {
ACCOUNT_TYPE_MIHOYO_GUEST = 0;
ACCOUNT_TYPE_MIHOYO = 1;
ACCOUNT_TYPE_XIAOMI = 11;
ACCOUNT_TYPE_COOLPAD = 12;
ACCOUNT_TYPE_YYB = 13;
ACCOUNT_TYPE_BILI = 14;
ACCOUNT_TYPE_HUAWEI = 15;
ACCOUNT_TYPE_MEIZU = 16;
ACCOUNT_TYPE_360 = 17;
ACCOUNT_TYPE_OPPO = 18;
ACCOUNT_TYPE_VIVO = 19;
ACCOUNT_TYPE_UC = 20;
ACCOUNT_TYPE_WANDOJIA = 21;
ACCOUNT_TYPE_LENOVO = 22;
ACCOUNT_TYPE_JINLI = 23;
ACCOUNT_TYPE_BAIDU = 25;
ACCOUNT_TYPE_DANGLE = 26;
}

View File

@ -1,212 +1,269 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ActionReasonType {
ACTION_REASON_NONE = 0;
ACTION_REASON_QUEST_ITEM = 1;
ACTION_REASON_QUEST_REWARD = 2;
ACTION_REASON_TRIFLE = 3;
ACTION_REASON_SHOP = 4;
ACTION_REASON_PLAYER_UPGRADE_REWARD = 5;
ACTION_REASON_ADD_AVATAR = 6;
ACTION_REASON_GADGET_ENV_ANIMAL = 7;
ACTION_REASON_MONSTER_ENV_ANIMAL = 8;
ACTION_REASON_COMPOUND = 9;
ACTION_REASON_COOK = 10;
ACTION_REASON_GATHER = 11;
ACTION_REASON_MAIL_ATTACHMENT = 12;
ACTION_REASON_CITY_LEVELUP_RETURN = 15;
ACTION_REASON_CITY_LEVELUP_REWARD = 17;
ACTION_REASON_AREA_EXPLORE_REWARD = 18;
ACTION_REASON_UNLOCK_POINT_REWARD = 19;
ACTION_REASON_DUNGEON_FIRST_PASS = 20;
ACTION_REASON_DUNGEON_PASS = 21;
ACTION_REASON_CHANGE_ELEM_TYPE = 23;
ACTION_REASON_FETTER_OPEN = 25;
ACTION_REASON_DAILY_TASK_SCORE = 26;
ACTION_REASON_DAILY_TASK_HOST = 27;
ACTION_REASON_RAND_TASK_HOST = 28;
ACTION_REASON_EXPEDITION = 29;
ACTION_REASON_GACHA = 30;
ACTION_REASON_COMBINE = 31;
ACTION_REASON_RAND_TASK_GUEST = 32;
ACTION_REASON_DAILY_TASK_GUEST = 33;
ACTION_REASON_FORGE_OUTPUT = 34;
ACTION_REASON_FORGE_RETURN = 35;
ACTION_REASON_INIT_AVATAR = 36;
ACTION_REASON_MONSTER_DIE = 37;
ACTION_REASON_GM = 38;
ACTION_REASON_OPEN_CHEST = 39;
ACTION_REASON_GADGET_DIE = 40;
ACTION_REASON_MONSTER_CHANGE_HP = 41;
ACTION_REASON_SUBFIELD_DROP = 42;
ACTION_REASON_PUSH_TIPS_REWARD = 43;
ACTION_REASON_ACTIVITY_MONSTER_DROP = 44;
ACTION_REASON_ACTIVITY_GATHER = 45;
ACTION_REASON_ACTIVITY_SUBFIELD_DROP = 46;
ACTION_REASON_TOWER_SCHEDULE_REWARD = 47;
ACTION_REASON_TOWER_FLOOR_STAR_REWARD = 48;
ACTION_REASON_TOWER_FIRST_PASS_REWARD = 49;
ACTION_REASON_TOWER_DAILY_REWARD = 50;
ACTION_REASON_HIT_CLIENT_TRIVIAL_ENTITY = 51;
ACTION_REASON_OPEN_WORLD_BOSS_CHEST = 52;
ACTION_REASON_MATERIAL_DELETE_RETURN = 53;
ACTION_REASON_SIGN_IN_REWARD = 54;
ACTION_REASON_OPEN_BLOSSOM_CHEST = 55;
ACTION_REASON_RECHARGE = 56;
ACTION_REASON_BONUS_ACTIVITY_REWARD = 57;
ACTION_REASON_TOWER_COMMEMORATIVE_REWARD = 58;
ACTION_REASON_TOWER_SKIP_FLOOR_REWARD = 59;
ACTION_REASON_RECHARGE_BONUS = 60;
ACTION_REASON_RECHARGE_CARD = 61;
ACTION_REASON_RECHARGE_CARD_DAILY = 62;
ACTION_REASON_RECHARGE_CARD_REPLACE = 63;
ACTION_REASON_RECHARGE_CARD_REPLACE_FREE = 64;
ACTION_REASON_RECHARGE_PLAY_REPLACE = 65;
ACTION_REASON_MP_PLAY_TAKE_REWARD = 66;
ACTION_REASON_ACTIVITY_WATCHER = 67;
ACTION_REASON_SALESMAN_DELIVER_ITEM = 68;
ACTION_REASON_SALESMAN_REWARD = 69;
ACTION_REASON_REBATE = 70;
ACTION_REASON_MCOIN_EXCHANGE_HCOIN = 71;
ACTION_REASON_DAILY_TASK_EXCHANGE_LEGENDARY_KEY = 72;
ACTION_REASON_UNLOCK_PERSON_LINE = 73;
ACTION_REASON_FETTER_LEVEL_REWARD = 74;
ACTION_REASON_BUY_RESIN = 75;
ACTION_REASON_RECHARGE_PACKAGE = 76;
ACTION_REASON_DELIVERY_DAILY_REWARD = 77;
ACTION_REASON_CITY_REPUTATION_LEVEL = 78;
ACTION_REASON_CITY_REPUTATION_QUEST = 79;
ACTION_REASON_CITY_REPUTATION_REQUEST = 80;
ACTION_REASON_CITY_REPUTATION_EXPLORE = 81;
ACTION_REASON_OFFERGING_LEVEL = 82;
ACTION_REASON_ROUTINE_HOST = 83;
ACTION_REASON_ROUTINE_GUEST = 84;
ACTION_REASON_TREASURE_MAP_SPOT_TOKEN = 89;
ACTION_REASON_TREASURE_MAP_BONUS_LEVEL_REWARD = 90;
ACTION_REASON_TREASURE_MAP_MP_REWARD = 91;
ACTION_REASON_CONVERT = 92;
ACTION_REASON_OVERFLOW_TRANSFORM = 93;
ACTION_REASON_ACTIVITY_AVATAR_SELECTION_REWARD = 96;
ACTION_REASON_ACTIVITY_WATCHER_BATCH = 97;
ACTION_REASON_HIT_TREE_DROP = 98;
ACTION_REASON_GET_HOME_LEVELUP_REWARD = 99;
ACTION_REASON_HOME_DEFAULT_FURNITURE = 100;
ACTION_REASON_ACTIVITY_COND = 101;
ACTION_REASON_BATTLE_PASS_NOTIFY = 102;
ACTION_REASON_RELIQUARY_DECOMPOSE = 103;
ACTION_REASON_RECHARGE_GOOGLE_GIFT_GARD = 104;
ACTION_REASON_RECHARGE_CONCERT_PRODUCT = 105;
ACTION_REASON_RECHARGE_CONCERT_PRODUCT_REPLACE = 106;
ACTION_REASON_SEND_CONCERT_PRODUCT_BY_MUIP = 107;
ACTION_REASON_RECHARGE_APPLE_GIFT_GARD = 108;
ACTION_REASON_PLAYER_USE_ITEM = 1001;
ACTION_REASON_DROP_ITEM = 1002;
ACTION_REASON_WEAPON_UPGRADE = 1011;
ACTION_REASON_WEAPON_PROMOTE = 1012;
ACTION_REASON_WEAPON_AWAKEN = 1013;
ACTION_REASON_RELIC_UPGRADE = 1014;
ACTION_REASON_ABILITY = 1015;
ACTION_REASON_DUNGEON_STATUE_DROP = 1016;
ACTION_REASON_OFFLINE_MSG = 1017;
ACTION_REASON_AVATAR_UPGRADE = 1018;
ACTION_REASON_AVATAR_PROMOTE = 1019;
ACTION_REASON_QUEST_ACTION = 1021;
ACTION_REASON_CITY_LEVELUP = 1022;
ACTION_REASON_UPGRADE_SKILL = 1024;
ACTION_REASON_UNLOCK_TALENT = 1025;
ACTION_REASON_UPGRADE_PROUD_SKILL = 1026;
ACTION_REASON_PLAYER_LEVEL_LIMIT_UP = 1027;
ACTION_REASON_DUNGEON_DAILY = 1028;
ACTION_REASON_ITEM_GIVING = 1030;
ACTION_REASON_FORGE_COST = 1031;
ACTION_REASON_INVESTIGATION_REWARD = 1032;
ACTION_REASON_INVESTIGATION_TARGET_REWARD = 1033;
ACTION_REASON_GADGET_INTERACT = 1034;
ACTION_REASON_SEA_LAMP_CI_MATERIAL = 1036;
ACTION_REASON_SEA_LAMP_CONTRIBUTION_REWARD = 1037;
ACTION_REASON_SEA_LAMP_PHASE_REWARD = 1038;
ACTION_REASON_SEA_LAMP_FLY_LAMP = 1039;
ACTION_REASON_AUTO_RECOVER = 1040;
ACTION_REASON_ACTIVITY_EXPIRE_ITEM = 1041;
ACTION_REASON_SUB_COIN_NEGATIVE = 1042;
ACTION_REASON_BARGAIN_DEDUCT = 1043;
ACTION_REASON_BATTLE_PASS_PAID_REWARD = 1044;
ACTION_REASON_BATTLE_PASS_LEVEL_REWARD = 1045;
ACTION_REASON_TRIAL_AVATAR_ACTIVITY_FIRST_PASS_REWARD = 1046;
ACTION_REASON_BUY_BATTLE_PASS_LEVEL = 1047;
ACTION_REASON_GRANT_BIRTHDAY_BENEFIT = 1048;
ACTION_REASON_ACHIEVEMENT_REWARD = 1049;
ACTION_REASON_ACHIEVEMENT_GOAL_REWARD = 1050;
ACTION_REASON_FIRST_SHARE_TO_SOCIAL_NETWORK = 1051;
ACTION_REASON_DESTROY_MATERIAL = 1052;
ACTION_REASON_CODEX_LEVELUP_REWARD = 1053;
ACTION_REASON_HUNTING_OFFER_REWARD = 1054;
ACTION_REASON_USE_WIDGET_ANCHOR_POINT = 1055;
ACTION_REASON_USE_WIDGET_BONFIRE = 1056;
ACTION_REASON_UNGRADE_WEAPON_RETURN_MATERIAL = 1057;
ACTION_REASON_USE_WIDGET_ONEOFF_GATHER_POINT_DETECTOR = 1058;
ACTION_REASON_USE_WIDGET_CLIENT_COLLECTOR = 1059;
ACTION_REASON_USE_WIDGET_CLIENT_DETECTOR = 1060;
ACTION_REASON_TAKE_GENERAL_REWARD = 1061;
ACTION_REASON_ASTER_TAKE_SPECIAL_REWARD = 1062;
ACTION_REASON_REMOVE_CODEX_BOOK = 1063;
ACTION_REASON_OFFERING_ITEM = 1064;
ACTION_REASON_USE_WIDGET_GADGET_BUILDER = 1065;
ACTION_REASON_EFFIGY_FIRST_PASS_REWARD = 1066;
ACTION_REASON_EFFIGY_REWARD = 1067;
ACTION_REASON_REUNION_FIRST_GIFT_REWARD = 1068;
ACTION_REASON_REUNION_SIGN_IN_REWARD = 1069;
ACTION_REASON_REUNION_WATCHER_REWARD = 1070;
ACTION_REASON_SALESMAN_MP_REWARD = 1071;
ACTION_REASION_AVATAR_PROMOTE_REWARD = 1072;
ACTION_REASON_BLESSING_REDEEM_REWARD = 1073;
ACTION_MIRACLE_RING_REWARD = 1074;
ACTION_REASON_EXPEDITION_REWARD = 1075;
ACTION_REASON_TREASURE_MAP_REMOVE_DETECTOR = 1076;
ACTION_REASON_MECHANICUS_DUNGEON_TICKET = 1077;
ACTION_REASON_MECHANICUS_LEVELUP_GEAR = 1078;
ACTION_REASON_MECHANICUS_BATTLE_SETTLE = 1079;
ACTION_REASON_REGION_SEARCH_REWARD = 1080;
ACTION_REASON_UNLOCK_COOP_CHAPTER = 1081;
ACTION_REASON_TAKE_COOP_REWARD = 1082;
ACTION_REASON_FLEUR_FAIR_DUNGEON_REWARD = 1083;
ACTION_REASON_ACTIVITY_SCORE = 1084;
ACTION_REASON_CHANNELLER_SLAB_ONEOFF_DUNGEON_REWARD = 1085;
ACTION_REASON_FURNITURE_MAKE_START = 1086;
ACTION_REASON_FURNITURE_MAKE_TAKE = 1087;
ACTION_REASON_FURNITURE_MAKE_CANCEL = 1088;
ACTION_REASON_FURNITURE_MAKE_FAST_FINISH = 1089;
ACTION_REASON_CHANNELLER_SLAB_LOOP_DUNGEON_FIRST_PASS_REWARD = 1090;
ACTION_REASON_CHANNELLER_SLAB_LOOP_DUNGEON_SCORE_REWARD = 1091;
ACTION_REASON_HOME_LIMITED_SHOP_BUY = 1092;
ACTION_REASON_HOME_COIN_COLLECT = 1093;
ACTION_REASON_SUMMER_TIME_SENTRY_TOWER_REWARD = 1094;
ACTION_REASON_SUMMER_TIME_SPRINT_BOAT_REWARD = 1095;
ACTION_REASON_SUMMER_TIME_BOSS_REWARD = 1096;
ACTION_REASON_SUMMER_TIME_BOMB_REWARD = 1097;
ACTION_REASON_HOME_FETTER_COLLECT = 1098;
ACTION_REASON_ECHO_SHELL_REWARD = 1099;
ACTION_REASON_HOME_EVENT_REWARD = 1100;
ACTION_REASON_BLITZ_RUSH_DUNGEON_REWARD = 1101;
ACTION_REASON_FURNITURE_MAKE_RETURN = 1102;
ACTION_REASON_HOME_PLANT_BOX_GATHER = 1103;
ACTION_REASON_HOME_PLANT_SEED = 1104;
ACTION_REASON_HOME_PLANT_GATHER = 1105;
ACTION_REASON_CHESS_DUNGEON_REWARD = 1106;
ACTION_REASON_GROUP_LINK_BUNDLE_FINISH = 1107;
ACTION_REASON_LUNA_RITE_SACRIFICE = 1108;
ACTION_REASON_LUNA_RITE_TAKE_SACRIFICE_REWARD = 1109;
ACTION_REASON_FISH_BITE = 1110;
ACTION_REASON_FISH_SUCC = 1111;
ACTION_REASON_PLANT_FLOWER_REWARD = 1112;
ACTION_REASON_PLANT_FLOWER_DELIVER_ITEM = 1113;
ACTION_REASON_PLANT_FLOWER_GIVE_FLOWER = 1114;
ACTION_REASON_PLANT_FLOWER_RECV_FLOWER = 1115;
ACTION_REASON_ROGUE_CHALLENGE_SETTLE = 1116;
ACTION_REASON_ROGUE_TAKE_FIRST_PASS_REWARD = 1117;
ACTION_REASON_ROGUE_UPGRADE_SHIKIGAMI = 1118;
ACTION_REASON_ROGUE_REFRESH_CARD = 1119;
ACTION_REASON_TYPE_NONE = 0;
ACTION_REASON_TYPE_QUEST_ITEM = 1;
ACTION_REASON_TYPE_QUEST_REWARD = 2;
ACTION_REASON_TYPE_TRIFLE = 3;
ACTION_REASON_TYPE_SHOP = 4;
ACTION_REASON_TYPE_PLAYER_UPGRADE_REWARD = 5;
ACTION_REASON_TYPE_ADD_AVATAR = 6;
ACTION_REASON_TYPE_GADGET_ENV_ANIMAL = 7;
ACTION_REASON_TYPE_MONSTER_ENV_ANIMAL = 8;
ACTION_REASON_TYPE_COMPOUND = 9;
ACTION_REASON_TYPE_COOK = 10;
ACTION_REASON_TYPE_GATHER = 11;
ACTION_REASON_TYPE_MAIL_ATTACHMENT = 12;
ACTION_REASON_TYPE_CITY_LEVELUP_RETURN = 15;
ACTION_REASON_TYPE_CITY_LEVELUP_REWARD = 17;
ACTION_REASON_TYPE_AREA_EXPLORE_REWARD = 18;
ACTION_REASON_TYPE_UNLOCK_POINT_REWARD = 19;
ACTION_REASON_TYPE_DUNGEON_FIRST_PASS = 20;
ACTION_REASON_TYPE_DUNGEON_PASS = 21;
ACTION_REASON_TYPE_CHANGE_ELEM_TYPE = 23;
ACTION_REASON_TYPE_FETTER_OPEN = 25;
ACTION_REASON_TYPE_DAILY_TASK_SCORE = 26;
ACTION_REASON_TYPE_DAILY_TASK_HOST = 27;
ACTION_REASON_TYPE_RAND_TASK_HOST = 28;
ACTION_REASON_TYPE_EXPEDITION = 29;
ACTION_REASON_TYPE_GACHA = 30;
ACTION_REASON_TYPE_COMBINE = 31;
ACTION_REASON_TYPE_RAND_TASK_GUEST = 32;
ACTION_REASON_TYPE_DAILY_TASK_GUEST = 33;
ACTION_REASON_TYPE_FORGE_OUTPUT = 34;
ACTION_REASON_TYPE_FORGE_RETURN = 35;
ACTION_REASON_TYPE_INIT_AVATAR = 36;
ACTION_REASON_TYPE_MONSTER_DIE = 37;
ACTION_REASON_TYPE_GM = 38;
ACTION_REASON_TYPE_OPEN_CHEST = 39;
ACTION_REASON_TYPE_GADGET_DIE = 40;
ACTION_REASON_TYPE_MONSTER_CHANGE_HP = 41;
ACTION_REASON_TYPE_SUBFIELD_DROP = 42;
ACTION_REASON_TYPE_PUSH_TIPS_REWARD = 43;
ACTION_REASON_TYPE_ACTIVITY_MONSTER_DROP = 44;
ACTION_REASON_TYPE_ACTIVITY_GATHER = 45;
ACTION_REASON_TYPE_ACTIVITY_SUBFIELD_DROP = 46;
ACTION_REASON_TYPE_TOWER_SCHEDULE_REWARD = 47;
ACTION_REASON_TYPE_TOWER_FLOOR_STAR_REWARD = 48;
ACTION_REASON_TYPE_TOWER_FIRST_PASS_REWARD = 49;
ACTION_REASON_TYPE_TOWER_DAILY_REWARD = 50;
ACTION_REASON_TYPE_HIT_CLIENT_TRIVIAL_ENTITY = 51;
ACTION_REASON_TYPE_OPEN_WORLD_BOSS_CHEST = 52;
ACTION_REASON_TYPE_MATERIAL_DELETE_RETURN = 53;
ACTION_REASON_TYPE_SIGN_IN_REWARD = 54;
ACTION_REASON_TYPE_OPEN_BLOSSOM_CHEST = 55;
ACTION_REASON_TYPE_RECHARGE = 56;
ACTION_REASON_TYPE_BONUS_ACTIVITY_REWARD = 57;
ACTION_REASON_TYPE_TOWER_COMMEMORATIVE_REWARD = 58;
ACTION_REASON_TYPE_TOWER_SKIP_FLOOR_REWARD = 59;
ACTION_REASON_TYPE_RECHARGE_BONUS = 60;
ACTION_REASON_TYPE_RECHARGE_CARD = 61;
ACTION_REASON_TYPE_RECHARGE_CARD_DAILY = 62;
ACTION_REASON_TYPE_RECHARGE_CARD_REPLACE = 63;
ACTION_REASON_TYPE_RECHARGE_CARD_REPLACE_FREE = 64;
ACTION_REASON_TYPE_RECHARGE_PLAY_REPLACE = 65;
ACTION_REASON_TYPE_MP_PLAY_TAKE_REWARD = 66;
ACTION_REASON_TYPE_ACTIVITY_WATCHER = 67;
ACTION_REASON_TYPE_SALESMAN_DELIVER_ITEM = 68;
ACTION_REASON_TYPE_SALESMAN_REWARD = 69;
ACTION_REASON_TYPE_REBATE = 70;
ACTION_REASON_TYPE_MCOIN_EXCHANGE_HCOIN = 71;
ACTION_REASON_TYPE_DAILY_TASK_EXCHANGE_LEGENDARY_KEY = 72;
ACTION_REASON_TYPE_UNLOCK_PERSON_LINE = 73;
ACTION_REASON_TYPE_FETTER_LEVEL_REWARD = 74;
ACTION_REASON_TYPE_BUY_RESIN = 75;
ACTION_REASON_TYPE_RECHARGE_PACKAGE = 76;
ACTION_REASON_TYPE_DELIVERY_DAILY_REWARD = 77;
ACTION_REASON_TYPE_CITY_REPUTATION_LEVEL = 78;
ACTION_REASON_TYPE_CITY_REPUTATION_QUEST = 79;
ACTION_REASON_TYPE_CITY_REPUTATION_REQUEST = 80;
ACTION_REASON_TYPE_CITY_REPUTATION_EXPLORE = 81;
ACTION_REASON_TYPE_OFFERGING_LEVEL = 82;
ACTION_REASON_TYPE_ROUTINE_HOST = 83;
ACTION_REASON_TYPE_ROUTINE_GUEST = 84;
ACTION_REASON_TYPE_TREASURE_MAP_SPOT_TOKEN = 89;
ACTION_REASON_TYPE_TREASURE_MAP_BONUS_LEVEL_REWARD = 90;
ACTION_REASON_TYPE_TREASURE_MAP_MP_REWARD = 91;
ACTION_REASON_TYPE_CONVERT = 92;
ACTION_REASON_TYPE_OVERFLOW_TRANSFORM = 93;
ACTION_REASON_TYPE_ACTIVITY_AVATAR_SELECTION_REWARD = 96;
ACTION_REASON_TYPE_ACTIVITY_WATCHER_BATCH = 97;
ACTION_REASON_TYPE_HIT_TREE_DROP = 98;
ACTION_REASON_TYPE_GET_HOME_LEVELUP_REWARD = 99;
ACTION_REASON_TYPE_HOME_DEFAULT_FURNITURE = 100;
ACTION_REASON_TYPE_ACTIVITY_COND = 101;
ACTION_REASON_TYPE_BATTLE_PASS_NOTIFY = 102;
ACTION_REASON_TYPE_RELIQUARY_DECOMPOSE = 103;
ACTION_REASON_TYPE_RECHARGE_GOOGLE_GIFT_GARD = 104;
ACTION_REASON_TYPE_RECHARGE_CONCERT_PRODUCT = 105;
ACTION_REASON_TYPE_RECHARGE_CONCERT_PRODUCT_REPLACE = 106;
ACTION_REASON_TYPE_SEND_CONCERT_PRODUCT_BY_MUIP = 107;
ACTION_REASON_TYPE_RECHARGE_APPLE_GIFT_GARD = 108;
ACTION_REASON_TYPE_RECHARGE_PSN_COMPENSATION_PRODUCT = 109;
ACTION_REASON_TYPE_COMPOUND_BOOST = 110;
ACTION_REASON_TYPE_WOOD_EXCHANGE = 111;
ACTION_REASON_TYPE_AVATAR_RENAME_AUDIT_FAILED = 112;
ACTION_REASON_TYPE_AVATAR_RENAME_RESET = 113;
ACTION_REASON_TYPE_PLAYER_USE_ITEM = 1001;
ACTION_REASON_TYPE_DROP_ITEM = 1002;
ACTION_REASON_TYPE_WEAPON_UPGRADE = 1011;
ACTION_REASON_TYPE_WEAPON_PROMOTE = 1012;
ACTION_REASON_TYPE_WEAPON_AWAKEN = 1013;
ACTION_REASON_TYPE_RELIC_UPGRADE = 1014;
ACTION_REASON_TYPE_ABILITY = 1015;
ACTION_REASON_TYPE_DUNGEON_STATUE_DROP = 1016;
ACTION_REASON_TYPE_OFFLINE_MSG = 1017;
ACTION_REASON_TYPE_AVATAR_UPGRADE = 1018;
ACTION_REASON_TYPE_AVATAR_PROMOTE = 1019;
ACTION_REASON_TYPE_QUEST_ACTION = 1021;
ACTION_REASON_TYPE_CITY_LEVELUP = 1022;
ACTION_REASON_TYPE_UPGRADE_SKILL = 1024;
ACTION_REASON_TYPE_UNLOCK_TALENT = 1025;
ACTION_REASON_TYPE_UPGRADE_PROUD_SKILL = 1026;
ACTION_REASON_TYPE_PLAYER_LEVEL_LIMIT_UP = 1027;
ACTION_REASON_TYPE_DUNGEON_DAILY = 1028;
ACTION_REASON_TYPE_ITEM_GIVING = 1030;
ACTION_REASON_TYPE_FORGE_COST = 1031;
ACTION_REASON_TYPE_INVESTIGATION_REWARD = 1032;
ACTION_REASON_TYPE_INVESTIGATION_TARGET_REWARD = 1033;
ACTION_REASON_TYPE_GADGET_INTERACT = 1034;
ACTION_REASON_TYPE_SEA_LAMP_CI_MATERIAL = 1036;
ACTION_REASON_TYPE_SEA_LAMP_CONTRIBUTION_REWARD = 1037;
ACTION_REASON_TYPE_SEA_LAMP_PHASE_REWARD = 1038;
ACTION_REASON_TYPE_SEA_LAMP_FLY_LAMP = 1039;
ACTION_REASON_TYPE_AUTO_RECOVER = 1040;
ACTION_REASON_TYPE_ACTIVITY_EXPIRE_ITEM = 1041;
ACTION_REASON_TYPE_SUB_COIN_NEGATIVE = 1042;
ACTION_REASON_TYPE_BARGAIN_DEDUCT = 1043;
ACTION_REASON_TYPE_BATTLE_PASS_PAID_REWARD = 1044;
ACTION_REASON_TYPE_BATTLE_PASS_LEVEL_REWARD = 1045;
ACTION_REASON_TYPE_TRIAL_AVATAR_ACTIVITY_FIRST_PASS_REWARD = 1046;
ACTION_REASON_TYPE_BUY_BATTLE_PASS_LEVEL = 1047;
ACTION_REASON_TYPE_GRANT_BIRTHDAY_BENEFIT = 1048;
ACTION_REASON_TYPE_ACHIEVEMENT_REWARD = 1049;
ACTION_REASON_TYPE_ACHIEVEMENT_GOAL_REWARD = 1050;
ACTION_REASON_TYPE_FIRST_SHARE_TO_SOCIAL_NETWORK = 1051;
ACTION_REASON_TYPE_DESTROY_MATERIAL = 1052;
ACTION_REASON_TYPE_CODEX_LEVELUP_REWARD = 1053;
ACTION_REASON_TYPE_HUNTING_OFFER_REWARD = 1054;
ACTION_REASON_TYPE_USE_WIDGET_ANCHOR_POINT = 1055;
ACTION_REASON_TYPE_USE_WIDGET_BONFIRE = 1056;
ACTION_REASON_TYPE_UNGRADE_WEAPON_RETURN_MATERIAL = 1057;
ACTION_REASON_TYPE_USE_WIDGET_ONEOFF_GATHER_POINT_DETECTOR = 1058;
ACTION_REASON_TYPE_USE_WIDGET_CLIENT_COLLECTOR = 1059;
ACTION_REASON_TYPE_USE_WIDGET_CLIENT_DETECTOR = 1060;
ACTION_REASON_TYPE_TAKE_GENERAL_REWARD = 1061;
ACTION_REASON_TYPE_ASTER_TAKE_SPECIAL_REWARD = 1062;
ACTION_REASON_TYPE_REMOVE_CODEX_BOOK = 1063;
ACTION_REASON_TYPE_OFFERING_ITEM = 1064;
ACTION_REASON_TYPE_USE_WIDGET_GADGET_BUILDER = 1065;
ACTION_REASON_TYPE_EFFIGY_FIRST_PASS_REWARD = 1066;
ACTION_REASON_TYPE_EFFIGY_REWARD = 1067;
ACTION_REASON_TYPE_REUNION_FIRST_GIFT_REWARD = 1068;
ACTION_REASON_TYPE_REUNION_SIGN_IN_REWARD = 1069;
ACTION_REASON_TYPE_REUNION_WATCHER_REWARD = 1070;
ACTION_REASON_TYPE_SALESMAN_MP_REWARD = 1071;
ACTION_REASON_TYPE_AVATAR_PROMOTE_REWARD = 1072;
ACTION_REASON_TYPE_BLESSING_REDEEM_REWARD = 1073;
ACTION_REASON_TYPE_MIRACLE_RING_REWARD = 1074;
ACTION_REASON_TYPE_EXPEDITION_REWARD = 1075;
ACTION_REASON_TYPE_TREASURE_MAP_REMOVE_DETECTOR = 1076;
ACTION_REASON_TYPE_MECHANICUS_DUNGEON_TICKET = 1077;
ACTION_REASON_TYPE_MECHANICUS_LEVELUP_GEAR = 1078;
ACTION_REASON_TYPE_MECHANICUS_BATTLE_SETTLE = 1079;
ACTION_REASON_TYPE_REGION_SEARCH_REWARD = 1080;
ACTION_REASON_TYPE_UNLOCK_COOP_CHAPTER = 1081;
ACTION_REASON_TYPE_TAKE_COOP_REWARD = 1082;
ACTION_REASON_TYPE_FLEUR_FAIR_DUNGEON_REWARD = 1083;
ACTION_REASON_TYPE_ACTIVITY_SCORE = 1084;
ACTION_REASON_TYPE_CHANNELLER_SLAB_ONEOFF_DUNGEON_REWARD = 1085;
ACTION_REASON_TYPE_FURNITURE_MAKE_START = 1086;
ACTION_REASON_TYPE_FURNITURE_MAKE_TAKE = 1087;
ACTION_REASON_TYPE_FURNITURE_MAKE_CANCEL = 1088;
ACTION_REASON_TYPE_FURNITURE_MAKE_FAST_FINISH = 1089;
ACTION_REASON_TYPE_CHANNELLER_SLAB_LOOP_DUNGEON_FIRST_PASS_REWARD = 1090;
ACTION_REASON_TYPE_CHANNELLER_SLAB_LOOP_DUNGEON_SCORE_REWARD = 1091;
ACTION_REASON_TYPE_HOME_LIMITED_SHOP_BUY = 1092;
ACTION_REASON_TYPE_HOME_COIN_COLLECT = 1093;
ACTION_REASON_TYPE_SUMMER_TIME_SENTRY_TOWER_REWARD = 1094;
ACTION_REASON_TYPE_SUMMER_TIME_SPRINT_BOAT_REWARD = 1095;
ACTION_REASON_TYPE_SUMMER_TIME_BOSS_REWARD = 1096;
ACTION_REASON_TYPE_SUMMER_TIME_BOMB_REWARD = 1097;
ACTION_REASON_TYPE_HOME_FETTER_COLLECT = 1098;
ACTION_REASON_TYPE_ECHO_SHELL_REWARD = 1099;
ACTION_REASON_TYPE_HOME_EVENT_REWARD = 1100;
ACTION_REASON_TYPE_BLITZ_RUSH_DUNGEON_REWARD = 1101;
ACTION_REASON_TYPE_FURNITURE_MAKE_RETURN = 1102;
ACTION_REASON_TYPE_HOME_PLANT_BOX_GATHER = 1103;
ACTION_REASON_TYPE_HOME_PLANT_SEED = 1104;
ACTION_REASON_TYPE_HOME_PLANT_GATHER = 1105;
ACTION_REASON_TYPE_CHESS_DUNGEON_REWARD = 1106;
ACTION_REASON_TYPE_GROUP_LINK_BUNDLE_FINISH = 1107;
ACTION_REASON_TYPE_LUNA_RITE_SACRIFICE = 1108;
ACTION_REASON_TYPE_LUNA_RITE_TAKE_SACRIFICE_REWARD = 1109;
ACTION_REASON_TYPE_FISH_BITE = 1110;
ACTION_REASON_TYPE_FISH_SUCC = 1111;
ACTION_REASON_TYPE_PLANT_FLOWER_REWARD = 1112;
ACTION_REASON_TYPE_PLANT_FLOWER_DELIVER_ITEM = 1113;
ACTION_REASON_TYPE_PLANT_FLOWER_GIVE_FLOWER = 1114;
ACTION_REASON_TYPE_PLANT_FLOWER_RECV_FLOWER = 1115;
ACTION_REASON_TYPE_ROGUE_CHALLENGE_SETTLE = 1116;
ACTION_REASON_TYPE_ROGUE_TAKE_FIRST_PASS_REWARD = 1117;
ACTION_REASON_TYPE_ROGUE_UPGRADE_SHIKIGAMI = 1118;
ACTION_REASON_TYPE_ROGUE_REFRESH_CARD = 1119;
ACTION_REASON_TYPE_USE_WIDGET_CAPTURE_ANIMAL = 1120;
ACTION_REASON_TYPE_CAPTURE_ANIMAL_SUCC = 1121;
ACTION_REASON_TYPE_SNOW_DRIFTS = 1122;
ACTION_REASON_TYPE_WINTER_CAMP_GIVE_ITEM = 1123;
ACTION_REASON_TYPE_WINTER_CAMP_RECV_ITEM = 1124;
ACTION_REASON_TYPE_WINTER_CAMP_EXPLORE_REWARD = 1125;
ACTION_REASON_TYPE_WINTER_CAMP_BATTLE_REWARD = 1126;
ACTION_REASON_TYPE_LANTERN_RITE_SKIN_REWARD = 1127;
ACTION_REASON_TYPE_LANTERN_RITE_DUNGEON_REWARD = 1128;
ACTION_REASON_TYPE_MICHIAE_MATSURI_DARK_CHALLENGE_REWARD = 1129;
ACTION_REASON_TYPE_MICHIAE_MATSURI_UNLOCK_CRYSTAL_SKILL = 1130;
ACTION_REASON_TYPE_LANTERN_RITE_GROUP_REWARD = 1131;
ACTION_REASON_TYPE_COSTUME_DEFAULT_UNLOCK = 1132;
ACTION_REASON_TYPE_SPICE_ACTIVITY_MAKE_SPICE = 1133;
ACTION_REASON_TYPE_SPICE_ACTIVITY_PROCESS_FOOD = 1134;
ACTION_REASON_TYPE_SPICE_ADD_AVATAR_FETTER = 1135;
ACTION_REASON_TYPE_GACHA_ACTIVITY_ROBOT_REWARD = 1136;
ACTION_REASON_TYPE_GIVING_TAKE_BACK = 1137;
ACTION_REASON_TYPE_SUMMER_TIME_V2_DUNGEON_REWARD = 1138;
ACTION_REASON_TYPE_GRAVEN_INNOCENCE_CAMP_REWARD = 1139;
ACTION_REASON_TYPE_TREASURE_SEELIE_CHEST_REWARD = 1140;
ACTION_REASON_TYPE_GCG_TAVERN_CHALLENGE_UNLOCK_CHARACTER = 1141;
ACTION_REASON_TYPE_GCG_LEVEL_REWARD = 1143;
ACTION_REASON_TYPE_GCG_CHALLENGE_FINISH = 1144;
ACTION_REASON_TYPE_VINTAGE_MARKET_DEAL = 1145;
ACTION_REASON_TYPE_VINTAGE_MARKET_BARGAIN = 1146;
ACTION_REASON_TYPE_VINTAGE_MARKET_STORE = 1147;
ACTION_REASON_TYPE_VINTAGE_PRESENT = 1148;
ACTION_REASON_TYPE_VINTAGE_OPEN_STORE = 1149;
ACTION_REASON_TYPE_VINTAGE_STORE_UNLOCK_SLOT = 1150;
ACTION_REASON_TYPE_VINTAGE_STORE_NPC_EVENT = 1151;
ACTION_REASON_TYPE_ROCK_BOARD_EXPLORE_REWARD = 1152;
ACTION_REASON_TYPE_VINTAGE_STORE_DIVIDEND = 1153;
ACTION_REASON_TYPE_AVATAR_RENAME = 1154;
ACTION_REASON_TYPE_GCG_FINISH_LEVEL_QUEST = 1155;
ACTION_REASON_TYPE_GCG_PROFICIENCY_REWARD = 1156;
}

View File

@ -35,10 +35,10 @@ message AvatarDataNotify {
repeated AvatarInfo avatar_list = 14;
repeated AvatarRenameInfo avatar_rename_list = 8;
uint32 cur_avatar_team_id = 7;
repeated uint32 Unk3300_HHKJBGKHIEJ = 6;
repeated uint32 owned_flycloak_list = 6;
repeated uint64 temp_avatar_guid_list = 15;
uint64 choose_avatar_guid = 1;
map<uint32, AvatarTeam> avatar_team_map = 11;
repeated uint32 Unk3300_MDNLGGMGHAF = 5;
repeated uint32 owned_costume_list = 5;
repeated uint32 backup_avatar_team_order_list = 3;
}

View File

@ -28,8 +28,8 @@ message BattlePassMission {
}
uint32 cur_progress = 10;
uint32 Unk3300_MBOMOLFKPPO = 9;
uint32 Unk3300_DAHDCJNCALE = 14;
uint32 mission_type = 9;
uint32 reward_battle_pass_point = 14;
uint32 total_progress = 12;
uint32 mission_id = 15;
MissionStatus mission_status = 11;

39
proto/ChannelIdType.proto Normal file
View File

@ -0,0 +1,39 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ChannelIdType {
CHANNEL_ID_TYPE_NONE = 0;
CHANNEL_ID_TYPE_MIHOYO = 1;
CHANNEL_ID_TYPE_XIAOMI = 11;
CHANNEL_ID_TYPE_COOLPAD = 12;
CHANNEL_ID_TYPE_YYB = 13;
CHANNEL_ID_TYPE_BILI = 14;
CHANNEL_ID_TYPE_HUAWEI = 15;
CHANNEL_ID_TYPE_MEIZU = 16;
CHANNEL_ID_TYPE_360 = 17;
CHANNEL_ID_TYPE_OPPO = 18;
CHANNEL_ID_TYPE_VIVO = 19;
CHANNEL_ID_TYPE_UC = 20;
CHANNEL_ID_TYPE_LENOVO = 22;
CHANNEL_ID_TYPE_JINLI = 23;
CHANNEL_ID_TYPE_BAIDU = 25;
CHANNEL_ID_TYPE_DANGLE = 26;
}

30
proto/ChatChannel.proto Normal file
View File

@ -0,0 +1,30 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ChatChannel {
CHAT_CHANNEL_TEAM = 0;
CHAT_CHANNEL_FRIEND = 1;
CHAT_CHANNEL_NONE = 2;
CHAT_CHANNEL_HIDEANDSEEK = 3;
CHAT_CHANNEL_HIDEANDSEEK_TEAM = 5;
CHAT_CHANNEL_ALL = 10;
CHAT_CHANNEL_TEST = 100;
}

View File

@ -32,9 +32,9 @@ message ChatInfo {
bool is_read = 3;
uint32 time = 1;
uint32 Unk3300_HENLDIJMIOE = 10;
uint32 to_uid = 10;
uint32 uid = 11;
uint32 Unk3300_PHBEHIGHOCD = 5;
uint32 sequence = 5;
oneof content {
string text = 909;
uint32 icon = 990;

View File

@ -0,0 +1,28 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum CityidConstValue {
CITYID_CONST_VALUE_NONE = 0;
CITYID_CONST_VALUE_MENGDE = 1;
CITYID_CONST_VALUE_LIYUE = 2;
CITYID_CONST_VALUE_DAOQI = 3;
CITYID_CONST_VALUE_XUMI = 4;
}

25
proto/ClientType.proto Normal file
View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ClientType {
CLIENT_TYPE_PRODUCT = 0;
CLIENT_TYPE_DEV = 1;
}

View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum CreateGadgetReason {
CREATE_GADGET_REASON_NONE = 0;
CREATE_GADGET_REASON_PLAYER = 1;
CREATE_GADGET_REASON_MISSION = 2;
CREATE_GADGET_REASON_GM = 3;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum CustomDungeonEvent {
CUSTOM_DUNGEON_EVENT_NONE = 0;
CUSTOM_DUNGEON_EVENT_OFFICIAL_RESTART = 1;
CUSTOM_DUNGEON_EVENT_OUT_STUCK = 2;
}

View File

@ -41,8 +41,8 @@ message DataResVersionNotify {
string client_silence_version_suffix = 3;
string client_version_suffix = 9;
bool is_data_need_relogin = 15;
string Unk3300_HMGCPAGLDHB = 12;
string client_silence_md5 = 12;
uint32 client_data_version = 5;
string Unk3300_OPGDBOLKLJA = 2;
string client_md5 = 2;
ResVersionConfig res_version_config = 7;
}

View File

@ -30,8 +30,8 @@ message DebugNotify {
// }
enum Retcode {
RETCODE_SUCC = 0;
RETCODE_FAIL = 1;
SUCC = 0;
FAIL = 1;
}
uint32 id = 1;

View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum DungeonCandidateTeamInviteState {
DUNGEON_CANDIDATE_TEAM_INVITE_STATE_NONE = 0;
DUNGEON_CANDIDATE_TEAM_INVITE_STATE_SEND = 1;
DUNGEON_CANDIDATE_TEAM_INVITE_STATE_ACCEPT = 2;
DUNGEON_CANDIDATE_TEAM_INVITE_STATE_REFUSE = 3;
}

46
proto/ENetReason.proto Normal file
View File

@ -0,0 +1,46 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ENetReason {
E_NET_REASON_ENET_TIMEOUT = 0;
E_NET_REASON_ENET_CLIENT_CLOSE = 1;
E_NET_REASON_ENET_CLIENT_REBIND_FAIL = 2;
E_NET_REASON_ENET_CLIENT_SHUTDOWN = 3;
E_NET_REASON_ENET_SERVER_RELOGIN = 4;
E_NET_REASON_ENET_SERVER_KICK = 5;
E_NET_REASON_ENET_SERVER_SHUTDOWN = 6;
E_NET_REASON_ENET_NOT_FOUND_SESSION = 7;
E_NET_REASON_ENET_LOGIN_UNFINISHED = 8;
E_NET_REASON_ENET_PACKET_FREQ_TOO_HIGH = 9;
E_NET_REASON_ENET_PING_TIMEOUT = 10;
E_NET_REASON_ENET_TRANFER_FAILED = 11;
E_NET_REASON_ENET_SERVER_KILL_CLIENT = 12;
E_NET_REASON_ENET_CHECK_MOVE_SPEED = 13;
E_NET_REASON_ENET_ACCOUNT_PASSWORD_CHANGE = 14;
E_NET_REASON_ENET_SECURITY_KICK = 15;
E_NET_REASON_ENET_LUA_SHELL_TIMEOUT = 16;
E_NET_REASON_ENET_SDKFAIL_KICK = 17;
E_NET_REASON_ENET_PACKET_COST_TIME = 18;
E_NET_REASON_ENET_PACKET_UNION_FREQ = 19;
E_NET_REASON_ENET_WAIT_SND_MAX = 20;
E_NET_REASON_ENET_CLIENT_CONNECT_KEY = 1234567890;
E_NET_REASON_ENET_CLIENT_EDITOR_CONNECT_KEY = 987654321;
}

78
proto/EnterReason.proto Normal file
View File

@ -0,0 +1,78 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum EnterReason {
ENTER_REASON_NONE = 0;
ENTER_REASON_LOGIN = 1;
ENTER_REASON_DUNGEON_REPLAY = 11;
ENTER_REASON_DUNGEON_REVIVE_ON_WAYPOINT = 12;
ENTER_REASON_DUNGEON_ENTER = 13;
ENTER_REASON_DUNGEON_QUIT = 14;
ENTER_REASON_GM = 21;
ENTER_REASON_QUEST_ROLLBACK = 31;
ENTER_REASON_REVIVAL = 32;
ENTER_REASON_PERSONAL_SCENE = 41;
ENTER_REASON_TRANS_POINT = 42;
ENTER_REASON_CLIENT_TRANSMIT = 43;
ENTER_REASON_FORCE_DRAG_BACK = 44;
ENTER_REASON_TEAM_KICK = 51;
ENTER_REASON_TEAM_JOIN = 52;
ENTER_REASON_TEAM_BACK = 53;
ENTER_REASON_MUIP = 54;
ENTER_REASON_DUNGEON_INVITE_ACCEPT = 55;
ENTER_REASON_LUA = 56;
ENTER_REASON_ACTIVITY_LOAD_TERRAIN = 57;
ENTER_REASON_HOST_FROM_SINGLE_TO_MP = 58;
ENTER_REASON_MP_PLAY = 59;
ENTER_REASON_ANCHOR_POINT = 60;
ENTER_REASON_LUA_SKIP_UI = 61;
ENTER_REASON_RELOAD_TERRAIN = 62;
ENTER_REASON_DRAFT_TRANSFER = 63;
ENTER_REASON_ENTER_HOME = 64;
ENTER_REASON_EXIT_HOME = 65;
ENTER_REASON_CHANGE_HOME_MODULE = 66;
ENTER_REASON_GALLERY = 67;
ENTER_REASON_HOME_SCENE_JUMP = 68;
ENTER_REASON_HIDE_AND_SEEK = 69;
ENTER_REASON_SUMMER_TIME_MIST_ZONE = 70;
ENTER_REASON_FORCE_QUIT_SCENE = 71;
ENTER_REASON_HERO_COURSE = 72;
ENTER_REASON_TRANS_CLIMATE = 73;
ENTER_REASON_SUMMER_TIME_BOAT_RESTART = 74;
ENTER_REASON_TSURUMI_MIST_CLIMATE = 75;
ENTER_REASON_TSURUMI_REGIONAL_MIST_CLIMATE = 76;
ENTER_REASON_WINTER_CAMP_RESTART = 77;
ENTER_REASON_TALK_EXEC_TRANSFER = 78;
ENTER_REASON_SEALAMP_BOAT_RESTART = 79;
ENTER_REASON_SEALAMP_BOAT_BACK = 80;
ENTER_REASON_CHALLENGE_INTERRUPT_BACK = 81;
ENTER_REASON_IRODORI_MASTER_TRANSFER = 82;
ENTER_REASON_GALLERY_BACK = 83;
ENTER_REASON_SUMMER_TIME_V2_BOAT_RESTART = 84;
ENTER_REASON_ISLAND_PARTY_GALLERY_START_FAILED = 85;
ENTER_REASON_GRAVEN_INNOCENCE_RACE_RESTART = 86;
ENTER_REASON_VINTAGE_HUNTING_TRANSFER = 87;
ENTER_REASON_FUNGUS_FIGHTER_TRANSFER = 88;
ENTER_REASON_BRICK_BREAKER = 89;
ENTER_REASON_BRICK_BREAKER_SINGLE = 90;
ENTER_REASON_TRANSFER_GUARD_STOP = 91;
ENTER_REASON_COIN_COLLECT_SINGLE = 92;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ExchangeMcoinType {
EXCHANGE_MCOIN_TYPE_NONE = 0;
EXCHANGE_MCOIN_TYPE_PCM_TO_PSN = 1;
EXCHANGE_MCOIN_TYPE_PSN_TO_PCM = 2;
}

28
proto/ExploreType.proto Normal file
View File

@ -0,0 +1,28 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ExploreType {
EXPLORE_TYPE_NONE = 0;
EXPLORE_TYPE_CRYSTAL = 1;
EXPLORE_TYPE_CHEST = 2;
EXPLORE_TYPE_TEMPLE = 3;
EXPLORE_TYPE_TELEPORT = 4;
}

View File

@ -0,0 +1,28 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum FeatureBlockType {
FEATURE_BLOCK_TYPE_NONE = 0;
FEATURE_BLOCK_TYPE_CHAT = 1;
FEATURE_BLOCK_TYPE_MP = 2;
FEATURE_BLOCK_TYPE_CRC = 3;
FEATURE_BLOCK_TYPE_HOME = 4;
}

28
proto/FetterState.proto Normal file
View File

@ -0,0 +1,28 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum FetterState {
FETTER_STATE_NONE = 0;
FETTER_STATE_NOT_OPEN = 1;
FETTER_STATE_OPEN = 2;
FETTER_STATE_FINISH = 3;
FETTER_STATE_CONCEAL = 4;
}

View File

@ -27,9 +27,9 @@ message FleurFairActivityDetailInfo {
uint32 Unk3300_KONOCAMIIIE = 3;
repeated FleurFairChapterInfo chapter_info_list = 5;
bool is_dungeon_unlocked = 6;
map<uint32, FleurFairDungeonSectionInfo> Unk3300_HNFNMCKHAJK = 8;
map<uint32, FleurFairDungeonSectionInfo> dungeon_section_info_map = 8;
bool is_content_closed = 13;
map<uint32, FleurFairMinigameInfo> Unk3300_FICFGHJNCOA = 9;
map<uint32, FleurFairMinigameInfo> minigame_info_map = 9;
uint32 Unk3300_LOFLGOOIMNH = 10;
uint32 content_close_time = 4;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum GadgetGuestBanDrop {
GADGET_GUEST_BAN_DROP_NONE = 0;
GADGET_GUEST_BAN_DROP_DIE_LUA = 1;
GADGET_GUEST_BAN_DROP_SUBFIELD = 2;
}

View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum GadgetPlayType {
GADGET_PLAY_TYPE_NONE = 0;
GADGET_PLAY_TYPE_CRUSIBLE = 1;
}

View File

@ -51,7 +51,7 @@ message GetPlayerTokenRsp {
int32 retcode = 2;
string client_version_random_key = 1152;
string psn_id = 242;
bool Unk3300_PPGJMLBGJED = 9;
bool is_proficient_player = 9;
uint32 platform_type = 10;
uint32 reg_platform = 646;
StopServerInfo stop_server = 1897;

View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum GroupLoadStrategy {
GROUP_LOAD_STRATEGY_NONE = 0;
GROUP_LOAD_STRATEGY_SINGLE = 1;
GROUP_LOAD_STRATEGY_MULTI = 2;
GROUP_LOAD_STRATEGY_ALL = 3;
}

View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum GroupVariableType {
GROUP_VARIABLE_TYPE_NORMAL = 0;
GROUP_VARIABLE_TYPE_LOGIC_STATE = 1;
}

View File

@ -23,10 +23,10 @@ option java_package = "emu.grasscutter.net.proto";
message HomeBasicInfo {
uint64 exp = 3;
uint32 Unk3300_AKPAPPGOFGN = 11;
uint32 Unk3300_GNFGFIIGHEA = 14;
uint32 home_owner_uid = 11;
uint32 cur_room_scene_id = 14;
string owner_nick_name = 6;
uint32 Unk3300_KGCBFKGGHDD = 4;
uint32 cur_module_id = 4;
HomeLimitedShopInfo limited_shop_info = 13;
bool is_in_edit_mode = 7;
uint32 level = 9;

View File

@ -23,9 +23,9 @@ option java_package = "emu.grasscutter.net.proto";
message HomeLimitedShopInfo {
uint32 uid = 9;
uint32 Unk3300_FKGDIDFIBAA = 8;
fixed32 next_guest_open_time = 8;
Vector djinn_rot = 11;
uint32 Unk3300_DLIEFPNMGFC = 5;
fixed32 next_open_time = 5;
Vector djinn_pos = 2;
uint32 Unk3300_NOJPDKDPPPA = 15;
fixed32 next_close_time = 15;
}

View File

@ -20,7 +20,7 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
message HomeResource {
uint32 Unk3300_LJCAIDECBND = 6;
uint32 store_limit = 6;
fixed32 next_refresh_time = 13;
uint32 Unk3300_LINAPIIPNOB = 1;
uint32 store_value = 1;
}

View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum LeaveWorldReason {
LEAVE_WORLD_REASON_NONE = 0;
LEAVE_WORLD_REASON_LOGOUT = 1;
LEAVE_WORLD_REASON_BACK_MY_WORLD = 2;
LEAVE_WORLD_REASON_KICK_BY_OWNER = 3;
}

View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum LoginRewardConfigType {
LOGIN_REWARD_CONFIG_TYPE_IMMEDIDATE = 0;
LOGIN_REWARD_CONFIG_TYPE_FIRST = 1;
}

View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum LuaShellNotifyType {
LUA_SHELL_NOTIFY_TYPE_LUASHELL_NOTIFY = 0;
LUA_SHELL_NOTIFY_TYPE_LUASHELL_HIDE = 1;
}

View File

@ -0,0 +1,29 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum MathExpressionType {
MATH_EXPRESSION_TYPE_EXPR_NONE = 0;
MATH_EXPRESSION_TYPE_EXPR_LEVEL = 1;
MATH_EXPRESSION_TYPE_EXPR_REGISTER_TIME = 2;
MATH_EXPRESSION_TYPE_EXPR_LAST_LOGIN_TIME = 3;
MATH_EXPRESSION_TYPE_EXPR_TOTAL_LOGIN_DAYS = 4;
MATH_EXPRESSION_TYPE_EXPR_PLATFORM = 5;
}

View File

@ -0,0 +1,30 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum MonsterGuestBanDrop {
MONSTER_GUEST_BAN_DROP_NONE = 0;
MONSTER_GUEST_BAN_DROP_DIE_EXP = 1;
MONSTER_GUEST_BAN_DROP_DIE_LUA = 2;
MONSTER_GUEST_BAN_DROP_DIE_EXCEL = 4;
MONSTER_GUEST_BAN_DROP_DIE_ACTIVITY = 8;
MONSTER_GUEST_BAN_DROP_HP = 16;
MONSTER_GUEST_BAN_DROP_SUBFIELD = 32;
}

26
proto/MpPlayType.proto Normal file
View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum MpPlayType {
MP_PLAY_TYPE_NONE = 0;
MP_PLAY_TYPE_DUNGEON = 1;
MP_PLAY_TYPE_CRUCIBLE = 2;
}

26
proto/NpcTalkState.proto Normal file
View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum NpcTalkState {
NPC_TALK_STATE_NONE = 0;
NPC_TALK_STATE_AUTO = 1;
NPC_TALK_STATE_MANUAL = 2;
}

View File

@ -0,0 +1,28 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum OpActivityType {
OP_ACTIVITY_TYPE_NONE = 0;
OP_ACTIVITY_TYPE_SIGN_IN = 1;
OP_ACTIVITY_TYPE_BONUS = 2;
OP_ACTIVITY_TYPE_TRAVEL_BUSINESS = 3;
OP_ACTIVITY_TYPE_CRUCIBLE = 4;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum PlatformCategory {
PLATFORM_CATEGORY_NONE = 0;
PLATFORM_CATEGORY_PCM = 1;
PLATFORM_CATEGORY_PSN = 2;
}

View File

@ -43,7 +43,7 @@ message PlayerEnterSceneNotify {
EnterType type = 12;
repeated uint32 scene_tag_id_list = 5;
uint64 scene_begin_time = 9;
uint32 Unk3300_OOLKIEKNKKN = 287;
uint32 enter_reason = 287;
uint32 target_uid = 8;
Vector prev_pos = 10;
string scene_transaction = 370;

View File

@ -42,7 +42,7 @@ message PlayerLoginReq {
uint32 language_type = 11;
uint32 client_data_version = 847;
uint32 account_type = 7;
string Unk3300_BBAABEHNFOE = 868;
string security_library_md5 = 868;
string online_id = 577;
uint32 Unk3300_PMGFBMJNNCL = 82;
string device_name = 12;
@ -61,7 +61,7 @@ message PlayerLoginReq {
uint32 Unk3300_PIPLDEAPMMN = 1790;
TrackingIOInfo tracking_io_info = 1713;
bool is_transfer = 624;
string Unk3300_BIAKNIALBFJ = 828;
string security_library_version = 828;
string client_version = 2;
bool is_guest = 13;
string system_version = 6;

View File

@ -34,10 +34,10 @@ message PlayerLoginRsp {
// }
uint64 login_rand = 9;
bytes Unk3300_DHCMDHHDLFF = 2;
string Unk3300_HMGCPAGLDHB = 16;
bytes player_data = 2;
string client_silence_md5 = 16;
double total_tick_time = 530;
bool Unk3300_LLIJKLDBHNN = 5;
bool is_use_ability_hash = 5;
bool is_audit = 930;
string birthday = 1387;
bool Unk3300_HGFNECIJDLN = 13;
@ -50,11 +50,11 @@ message PlayerLoginRsp {
ResVersionConfig res_version_config = 808;
uint32 client_silence_data_version = 1;
uint32 target_uid = 15;
string Unk3300_NEICPFBPNPD = 99;
bool Unk3300_CANONIPHMDI = 1522;
string register_cps = 99;
bool is_sc_open = 1522;
bool Unk3300_IIHDKKNJPGD = 8;
uint32 player_data_version = 14;
bytes Unk3300_MOPDDGHMKBD = 1888;
bytes sc_info = 1888;
string country_code = 360;
ResVersionConfig next_res_version_config = 1688;
bool Unk3300_IADLIIMGDMC = 17;
@ -65,7 +65,7 @@ message PlayerLoginRsp {
map<string, int32> ability_hash_map = 3;
int32 ability_hash_code = 12;
uint32 client_data_version = 10;
string Unk3300_OPGDBOLKLJA = 1299;
string client_md5 = 1299;
int32 retcode = 7;
repeated FeatureBlockInfo feature_block_info_list = 138;
}

26
proto/PlayerTag.proto Normal file
View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum PlayerTag {
PLAYER_TAG_NORMAL = 0;
PLAYER_TAG_SUB_ACCOUNT = 3;
PLAYER_TAG_SUB_ACCOUNT_TRANS_TO_NORMAL = 5;
}

27
proto/RegionType.proto Normal file
View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum RegionType {
REGION_TYPE_PRODUCT = 0;
REGION_TYPE_EXAM = 1;
REGION_TYPE_DEV_PUB = 2;
REGION_TYPE_DEV_PRI = 3;
}

View File

@ -0,0 +1,27 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ReliquaryFilterKey {
RELIQUARY_FILTER_KEY_NONE = 0;
RELIQUARY_FILTER_KEY_LOCK = 1;
RELIQUARY_FILTER_KEY_LEVEL = 2;
RELIQUARY_FILTER_KEY_WEARING = 3;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ReliquaryFilterLevelState {
RELIQUARY_FILTER_LEVEL_STATE_NONE = 0;
RELIQUARY_FILTER_LEVEL_STATE_FULL_LEVEL = 1;
RELIQUARY_FILTER_LEVEL_STATE_NOT_FULL_LEVEL = 2;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ReliquaryFilterLockState {
RELIQUARY_FILTER_LOCK_STATE_NONE = 0;
RELIQUARY_FILTER_LOCK_STATE_LOCK = 1;
RELIQUARY_FILTER_LOCK_STATE_UNLOCK = 2;
}

View File

@ -0,0 +1,26 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ReliquaryFilterWearedState {
RELIQUARY_FILTER_WEARED_STATE_NONE = 0;
RELIQUARY_FILTER_WEARED_STATE_HAS_BEEN_WEARED = 1;
RELIQUARY_FILTER_WEARED_STATE_HAS_NOT_BEEN_WEARED = 2;
}

View File

@ -0,0 +1,29 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum SceneidConstValue {
SCENEID_CONST_VALUE_NONE = 0;
SCENEID_CONST_VALUE_MAIN = 3;
SCENEID_CONST_VALUE_ISLAND = 4;
SCENEID_CONST_VALUE_ENKANOMIYA = 5;
SCENEID_CONST_VALUE_MICHIAE_MATSURI = 7;
SCENEID_CONST_VALUE_28_ISLAND = 9;
}

View File

@ -0,0 +1,25 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum SecurityCheckType {
SECURITY_CHECK_TYPE_NONE = 0;
SECURITY_CHECK_TYPE_LOGIN = 1;
}

View File

@ -0,0 +1,31 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum SegmentCRCModuleType {
SEGMENT_CRC_MODULE_TYPE_NONE = 0;
SEGMENT_CRC_MODULE_TYPE_PC_UNITYPLAYER = 1;
SEGMENT_CRC_MODULE_TYPE_PC_USERASSEMBLY = 2;
SEGMENT_CRC_MODULE_TYPE_PC_XLUA = 3;
SEGMENT_CRC_MODULE_TYPE_ANDROID_LIBIL2CPP = 11;
SEGMENT_CRC_MODULE_TYPE_ANDROID_LIBUNITY = 12;
SEGMENT_CRC_MODULE_TYPE_ANDROID_LIBXLUA = 13;
SEGMENT_CRC_MODULE_TYPE_IOS_HK4E = 21;
}

44
proto/ServiceType.proto Normal file
View File

@ -0,0 +1,44 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum ServiceType {
SERVICE_TYPE_NONE = 0;
SERVICE_TYPE_CLIENT = 1;
SERVICE_TYPE_GATE = 2;
SERVICE_TYPE_GAME = 3;
SERVICE_TYPE_NODE = 4;
SERVICE_TYPE_DB = 5;
SERVICE_TYPE_SNS = 6;
SERVICE_TYPE_DISPATCH = 7;
SERVICE_TYPE_MUIP = 8;
SERVICE_TYPE_OFFLINE_MSG = 9;
SERVICE_TYPE_MAIL = 10;
SERVICE_TYPE_MP = 11;
SERVICE_TYPE_HTTPPROXY = 12;
SERVICE_TYPE_ACTIVITY = 13;
SERVICE_TYPE_PATHFINDING = 14;
SERVICE_TYPE_SOCIAL = 15;
SERVICE_TYPE_OA = 16;
SERVICE_TYPE_MATCH = 17;
SERVICE_TYPE_OFFLINE_OP = 18;
SERVICE_TYPE_TOTHEMOON = 19;
SERVICE_TYPE_GCG = 20;
}

View File

@ -30,7 +30,7 @@ message StoreWeightLimitNotify {
// ENET_IS_RELIABLE = 1;
// }
uint32 Unk3300_ICDKCEOJKKG = 14;
uint32 reliquary_count_limit = 14;
uint32 Unk3300_NIKMCBLHFNJ = 10;
uint32 Unk3300_OONMFCGDMMF = 5;
uint32 Unk3300_JGPODDEKAPB = 1;

View File

@ -33,11 +33,11 @@ message TowerAllDataRsp {
// }
uint32 Unk3300_HCDFJBHMHHF = 6;
uint32 Unk3300_ILDODKDADMI = 8;
uint32 next_schedule_change_time = 8;
bool is_first_interact = 5;
uint32 tower_schedule_id = 1;
uint32 Unk3300_JBACKENDHDG = 10;
uint32 Unk3300_KGHOIIAEIHH = 610;
uint32 schedule_start_time = 610;
int32 retcode = 11;
uint32 Unk3300_OHCHCJGJIDK = 4;
uint32 Unk3300_BBHKBDDFPFE = 2;

View File

@ -28,11 +28,11 @@ message TowerBriefDataNotify {
// ENET_IS_RELIABLE = 1;
// }
uint32 Unk3300_OLBDJEGPDFE = 6;
uint32 Unk3300_ILDODKDADMI = 9;
uint32 last_level_index = 6;
uint32 next_schedule_change_time = 9;
bool is_finished_entrance_floor = 14;
uint32 Unk3300_CFKJBOIJDBD = 1;
uint32 last_floor_index = 1;
uint32 tower_schedule_id = 11;
uint32 Unk3300_KGHOIIAEIHH = 8;
uint32 Unk3300_CNMMBJABMKA = 7;
uint32 schedule_start_time = 8;
uint32 total_star_num = 7;
}

24
proto/VehicleSlot.proto Normal file
View File

@ -0,0 +1,24 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum VehicleSlot {
VEHICLE_SLOT_OPERATOR = 0;
}

85
proto/VirtualItem.proto Normal file
View File

@ -0,0 +1,85 @@
// Proto has been converted from Sorapointa to Grasscutter format
// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
// Copyright (C) 2022 Sorapointa Team
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
enum VirtualItem {
VIRTUAL_ITEM_VIRTUAL_NONE = 0;
VIRTUAL_ITEM_VIRTUAL_AVATAR_EXP = 101;
VIRTUAL_ITEM_VIRTUAL_PLAYER_EXP = 102;
VIRTUAL_ITEM_VIRTUAL_FETTER_EXP = 105;
VIRTUAL_ITEM_VIRTUAL_RESIN = 106;
VIRTUAL_ITEM_VIRTUAL_LEGENDARY_KEY = 107;
VIRTUAL_ITEM_VIRTUAL_ASTER_PROGRESS = 108;
VIRTUAL_ITEM_VIRTUAL_ASTER_CREDIT = 109;
VIRTUAL_ITEM_VIRTUAL_ASTER_TOKEN = 110;
VIRTUAL_ITEM_VIRTUAL_SHIMMERING_ESSENCE = 111;
VIRTUAL_ITEM_VIRTUAL_WARM_ESSENCE = 112;
VIRTUAL_ITEM_VIRTUAL_WONDROUS_ESSENCE = 113;
VIRTUAL_ITEM_VIRTUAL_TREASURE_MAP_TOKEN = 114;
VIRTUAL_ITEM_VIRTUAL_SEA_LAMP_COIN = 115;
VIRTUAL_ITEM_VIRTUAL_SEA_LAMP_POPULARITY = 116;
VIRTUAL_ITEM_VIRTUAL_MECHANICUS_COIN = 117;
VIRTUAL_ITEM_VIRTUAL_FLEUR_FAIR_CREDIT = 118;
VIRTUAL_ITEM_VIRTUAL_FLEUR_FAIR_TOKEN = 119;
VIRTUAL_ITEM_VIRTUAL_WATER_SPIRIT_COIN = 120;
VIRTUAL_ITEM_VIRTUAL_HOME_EXP = 121;
VIRTUAL_ITEM_VIRTUAL_CHANNELLER_SLAB_TOKEN = 122;
VIRTUAL_ITEM_VIRTUAL_HIDE_AND_SEEK_COIN = 123;
VIRTUAL_ITEM_VIRTUAL_SUMMER_TIME_DRAFT_WOOD = 124;
VIRTUAL_ITEM_VIRTUAL_SUMMER_TIME_MINI_HARPASTUM = 125;
VIRTUAL_ITEM_VIRTUAL_BOUNCE_CONJURING_COIN = 126;
VIRTUAL_ITEM_VIRTUAL_BLITZ_RUSH_COIN_A = 127;
VIRTUAL_ITEM_VIRTUAL_BLITZ_RUSH_COIN_B = 128;
VIRTUAL_ITEM_VIRTUAL_CHESS_EXP = 129;
VIRTUAL_ITEM_VIRTUAL_CHESS_COIN = 130;
VIRTUAL_ITEM_VIRTUAL_LUNA_RITE_ATMOSPHERE = 131;
VIRTUAL_ITEM_VIRTUAL_ROGUELIKE_COIN_A = 132;
VIRTUAL_ITEM_VIRTUAL_ROGUELIKE_COIN_B = 133;
VIRTUAL_ITEM_VIRTUAL_ROGUELIKE_COIN_C = 134;
VIRTUAL_ITEM_VIRTUAL_WINTER_CAMP_COIN_A = 135;
VIRTUAL_ITEM_VIRTUAL_WINTER_CAMP_COIN_B = 136;
VIRTUAL_ITEM_VIRTUAL_LANTERN_RITE_COIN_A = 137;
VIRTUAL_ITEM_VIRTUAL_LANTERN_RITE_COIN_B = 138;
VIRTUAL_ITEM_VIRTUAL_LANTERN_RITE_COIN_C = 139;
VIRTUAL_ITEM_VIRTUAL_ROGUE_DIARY_COIN = 140;
VIRTUAL_ITEM_VIRTUAL_SUMMER_TIME_V2_COIN = 141;
VIRTUAL_ITEM_VIRTUAL_ROGUE_DIARY_DUNGEON_COIN = 142;
VIRTUAL_ITEM_VIRTUAL_GRAVEN_INNOCENCE_COIN_A = 143;
VIRTUAL_ITEM_VIRTUAL_GRAVEN_INNOCENCE_COIN_B = 144;
VIRTUAL_ITEM_VIRTUAL_TREASURE_SEELIE_COIN = 145;
VIRTUAL_ITEM_VIRTUAL_VINTAGE_POPULARITY = 147;
VIRTUAL_ITEM_VIRTUAL_GCG_EXP = 146;
VIRTUAL_ITEM_VIRTUAL_VINTAGE_MARKET_COIN_A = 148;
VIRTUAL_ITEM_VIRTUAL_VINTAGE_MARKET_COIN_B = 149;
VIRTUAL_ITEM_VIRTUAL_VINTAGE_MARKET_COIN_C = 150;
VIRTUAL_ITEM_VIRTUAL_FUNGUS_FIGHTER_CAPTURE_COIN = 151;
VIRTUAL_ITEM_VIRTUAL_FUNGUS_FIGHTER_TRAINING_COIN = 152;
VIRTUAL_ITEM_VIRTUAL_EFFIGY_CHALLENGE_V2_COIN = 153;
VIRTUAL_ITEM_VIRTUAL_BRICK_BREAKER_COIN = 155;
VIRTUAL_ITEM_VIRTUAL_HCOIN = 201;
VIRTUAL_ITEM_VIRTUAL_SCOIN = 202;
VIRTUAL_ITEM_VIRTUAL_MCOIN = 203;
VIRTUAL_ITEM_VIRTUAL_HOME_COIN = 204;
VIRTUAL_ITEM_VIRTUAL_GCG_COIN = 205;
VIRTUAL_ITEM_VIRTUAL_INAZUMA_REPUTATION = 314;
VIRTUAL_ITEM_VIRTUAL_MENGDE_REPUTATION = 315;
VIRTUAL_ITEM_VIRTUAL_SUMERU_REPUTATION = 316;
VIRTUAL_ITEM_VIRTUAL_LIYUE_REPUTATION = 317;
}