syntax = "proto3"; package snowbreak; import "Core.proto"; option csharp_namespace = "MikuSB.Proto"; enum PF { NONE = 0; REQ_LOGIN = 1; RSP_LOGIN = 2; REQ_RECONNECT = 3; RSP_RECONNECT = 4; REQ_RENAME = 5; RSP_RENAME = 6; REQ_CALLGS = 7; RSP_CALLGS = 8; REQ_USEITEM = 9; RSP_USEITEM = 10; REQ_READMAIL = 11; RSP_READMAIL = 12; REQ_MAIL_ATTACHMENT = 13; RSP_MAIL_ATTACHMENT = 14; REQ_DELMAIL = 15; RSP_DELMAIL = 16; REQ_SET_NEWGUIDE = 17; RSP_SET_NEWGUIDE = 18; REQ_ACCOUNTINFO = 19; RSP_ACCOUNTINFO = 20; REQ_RESIGN = 23; RSP_RESIGN = 24; REQ_RECORD = 25; RSP_RECORD = 26; REQ_ADD_FRIENDREQ = 27; RSP_ADD_FRIENDREQ = 28; REQ_AGREE_FRIENDREQ = 29; RSP_AGREE_FRIENDREQ = 30; REQ_REFUSE_FRIENDREQ = 31; RSP_REFUSE_FRIENDREQ = 32; REQ_REMOVE_FRIEND = 33; RSP_REMOVE_FRIEND = 34; REQ_GIVE_FRIENDVIGOR = 35; RSP_GIVE_FRIENDVIGOR = 36; REQ_RECV_FRIENDVIGOR = 37; RSP_RECV_FRIENDVIGOR = 38; REQ_PLAYER_RECOMMEND = 39; RSP_PLAYER_RECOMMEND = 40; REQ_ADD_BLOCKLIST = 41; RSP_ADD_BLOCKLIST = 42; REQ_DEL_BLOCKLIST = 43; RSP_DEL_BLOCKLIST = 44; REQ_FIND_PLAYER = 45; RSP_FIND_PLAYER = 46; REQ_PLAYER_PROFILE = 47; RSP_PLAYER_PROFILE = 48; REQ_GET_VERSION = 49; RSP_GET_VERSION = 50; REQ_RANKLIST = 51; RSP_RANKLIST = 52; REQ_RANK = 53; RSP_RANK = 54; REQ_BLOCK_FRIENDREQ = 55; RSP_BLOCK_FRIENDREQ = 56; REQ_WORD_FILTER = 57; RSP_WORD_FILTER = 58; REQ_SET_CUSTOMROSTER = 59; RSP_SET_CUSTOMROSTER = 60; REQ_GLOBALCOUNTER = 61; RSP_GLOBALCOUNTER = 62; REQ_MATCH = 301; RSP_MATCH = 302; REQ_ONLINE_ROOM = 303; RSP_ONLINE_ROOM = 304; REQ_ONLINE_ROOM_START = 305; RSP_ONLINE_ROOM_START = 306; REQ_ONLINE_ROOM_EXIT = 307; RSP_ONLINE_ROOM_EXIT = 308; REQ_ONLINE_ROOM_INVITE = 309; RSP_ONLINE_ROOM_INVITE = 310; REQ_ONLINE_ROOM_ACCEPT = 311; RSP_ONLINE_ROOM_ACCEPT = 312; REQ_ONLINE_ROOM_UPDATE = 313; RSP_ONLINE_ROOM_UPDATE = 314; REQ_ONLINE_ROOM_RECONNECT = 315; RSP_ONLINE_ROOM_RECONNECT = 316; REQ_ONLINE_ROOM_CHATACCEPT = 317; RSP_ONLINE_ROOM_CHATACCEPT = 318; REQ_ONLINE_ROOM_UPDATEMAP = 319; RSP_ONLINE_ROOM_UPDATEMAP = 320; REQ_CHANGE_WORLD_CHANNEL = 321; RSP_CHANGE_WORLD_CHANNEL = 322; REQ_WORLD_CHAT = 323; RSP_WORLD_CHAT = 324; REQ_FRIEND_CHAT = 325; RSP_FRIEND_CHAT = 326; REQ_ONLINE_CHAT = 327; RSP_ONLINE_CHAT = 328; REQ_ONLINE_RECRUIT = 329; RSP_ONLINE_RECRUIT = 330; NTF_LOG = 1001; NTF_KICKOUT = 1002; NTF_BROADCAST = 1003; NTF_SYNCATTR = 1004; NTF_SYNCLINEUP = 1005; NTF_SYNC_NEW_MAIL = 1006; NTF_SYNC_DEL_MAIL = 1007; NTF_PLAYERMSG = 1008; NTF_LOGOUT = 1009; NTF_SCRIPT = 1010; NTF_SETATTR = 1011; NTF_SETSTRATTR = 1012; NTF_ONLINE_START = 1013; NTF_ONLINE_OVER = 1014; NTF_READITEM = 1015; NTF_UPDATE_FRIEND = 1016; NTF_DEL_FRIEND = 1017; NTF_FRIEND_REQ = 1018; NTF_FRIEND_VIGOR = 1019; NTF_BLACKLIST = 1020; NTF_GLOBALATTRS = 1021; NTF_ANTI_DATA = 1022; NTF_BLOCK_FRIENDREQ = 1023; NTF_CUSTOMROSTER = 1024; NTF_ONLINE_ROOMINFO = 1031; NTF_ONLINE_LOAD = 1032; NTF_ONLINE_KICKOUT = 1033; NTF_ONLINE_INVITE = 1034; NTF_ONLINE_STATE = 1035; NTF_WORLD_CHAT = 1041; NTF_FRIEND_CHAT = 1042; NTF_ONLINE_CHAT = 1043; NTF_ONLINE_RECRUIT = 1044; NTF_ONLINE_PLAYERCHEAT = 1045; REQ_ROOM_START = 2001; RSP_ROOM_START = 2002; NTF_ROOM_READY = 2003; NTF_ROOM_OVER = 2004; NTF_STOP_ROOM = 2005; NTF_ROOM_PLAYEREXIT = 2006; NTF_ROOM_PLAYERCHEAT = 2007; NTF_ROOM_PLAYERFINAL = 2008; } message ReqLogin { string provider = 1; string token = 2; Core.ClientProfile client_profile = 3; } message RspLogin { string session_id = 1; Core.Player data = 2; bool need_rename = 3; uint32 area_id = 4; int32 time_zone = 5; uint32 timestamp = 6; int32 certification = 7; map global_attrs = 8; uint32 world_channel = 9; map global_str_attrs = 10; uint32 error_code = 98; repeated uint32 error_info = 99; } message ReqReconnect { uint64 pid = 1; string session_id = 2; uint32 world_channel = 3; string language = 4; } message RspReconnect { string session_id = 1; Core.Player data = 2; bool need_rename = 3; int32 time_zone = 4; uint32 timestamp = 5; uint32 world_channel = 6; } message ReqAccountInfo { string provider = 1; string token = 2; } message ReqCallGS { string api = 1; string param = 2; uint32 clicknum = 3; repeated string dependent_params = 4; } message ReqUseItem { uint64 id = 1; uint32 count = 2; } message ReqOnlineCreateRoom { uint32 onlineid = 1; uint32 lineup_index = 2; } message RspOnlineCreateRoom { uint32 onlineid = 1; uint32 lineup_index = 2; uint64 roomid = 3; repeated uint32 buffinfo = 4; } message ReqOnlineAccept { uint64 otherid = 1; uint32 onlineid = 2; } message ReqOnlineChatAccept { uint64 otherid = 1; uint32 onlineid = 2; uint64 roomid = 3; } message ReqOnlineRecruit { uint64 room_id = 1; uint32 online_id = 2; } message FriendVigor { uint64 pid = 1; bool have_vigor = 2; bool vigor_got = 3; bool return_vigor = 4; } message FriendVigorList { repeated FriendVigor list = 1; } message RankList { message ListItem { string member_name = 1; uint32 score = 2; string info = 3; } string rank_name = 1; repeated RankList.ListItem list = 2; } message RankInfo { uint32 score = 1; uint32 rank = 2; uint32 sum = 3; string info = 4; } message GlobalCounterInfo { string counter_name = 1; uint32 value = 2; } message NtfLog { string action = 1; string detail = 2; } message NtfBroadcast { string msg = 1; uint32 duration = 2; uint32 start_time = 3; uint32 end_time = 4; bool clean = 5; repeated Core.ChannelOpt channels = 6; } message NtfSyncPlayer { string sign = 1; map core = 2; map custom = 3; map custom_str = 4; repeated Core.Item items = 5; repeated uint64 show_items = 6; repeated uint32 show_attrs = 7; map money = 8; repeated Core.FriendPieces pieces = 9; repeated uint64 badges = 10; repeated uint64 tags = 11; } message NtfSyncLineup { Core.Lineup lineup = 1; bool remove = 2; } message NtfCallScript { string api = 1; string arg = 2; NtfSyncPlayer extra_sync = 3; } message NtfSetAttr { uint32 gid = 1; uint32 sid = 2; uint32 val = 3; } message NtfSetStrAttr { uint32 gid = 1; uint32 sid = 2; string val = 3; } message NtfOnlineStart { uint64 room_id = 1; string room_addr = 2; } message NtfOnlineRoom { uint64 room_id = 1; uint32 onlineid = 2; repeated Core.OnlinePlayer players = 3; bool bmatch = 4; repeated uint32 buffinfo = 5; } message NtfOnlineInvite { uint64 room_id = 1; uint32 onlineid = 2; uint64 playerid = 3; string name = 4; uint64 face = 5; uint64 faceframe = 6; uint32 level = 7; } message NtfOnlineRecruit { uint64 room_id = 1; uint32 online_id = 2; Core.PlayerProfile sender_profile = 3; } message NtfOnlineState { uint64 room_id = 1; uint32 onlineid = 2; uint32 matchflag = 3; repeated uint64 players = 4; repeated uint32 stateflag = 5; uint64 nowtime = 6; uint64 levelid = 7; } message ReqRoomStart { uint64 room_id = 1; bool is_reday = 2; string error = 3; } message RspRoomStart { repeated Core.OnlinePlayer players = 1; repeated uint32 buffinfo = 2; uint32 pollingweek = 3; } message NtfStopRoom { uint64 room_id = 1; string reason = 2; } message NtfRoomOver { uint64 room_id = 1; repeated Core.OnlineEndData playerinfo = 2; } message ReqAntiData { uint32 data_type = 1; bytes mtpData = 2; int32 plat_id = 4; } message NtfRoomPlayerCheat { uint64 room_id = 1; uint64 playerid = 2; }