logic.proto 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871
  1. syntax = "proto3";
  2. package serverproto;
  3. option go_package = "./;serverproto";
  4. import "common.proto";
  5. import "user.proto";
  6. //////////////////////////webgm
  7. message WebRoleInfo {
  8. RoleBase base = 1;
  9. RoleHero role_hero = 2; //玩家伙伴信息
  10. }
  11. message WebUpdateMailItem {
  12. int32 id = 1;
  13. repeated uint64 uid_list = 2;
  14. string title = 3;
  15. string content = 4;
  16. repeated KeyValueType reward_list = 5;
  17. uint64 send_date = 6;
  18. int32 mail_type = 7;
  19. }
  20. message SSWebGMChatMsgNtf { //project db|social|gmweb
  21. uint64 uid = 1;
  22. uint64 target_uid = 2;
  23. ChatMessageInfo content = 3;
  24. int32 msg_type = 4;
  25. string chat_self_name = 5; //聊天玩家的昵称
  26. int32 select_zone_id = 6; //玩家选择登录的服务器id
  27. }
  28. message SSWebGMAddMailNtf { //project social|game|db
  29. WebUpdateMailItem mail_info = 1;
  30. }
  31. message SSWebGMBanNtf { //project social|game
  32. uint64 ban_uid = 1;
  33. bool is_ban = 2;
  34. uint64 ban_time = 3; //封号间隔时间
  35. int32 ban_type = 4; //1封号,2禁言
  36. }
  37. message SSWebGMNoticeNtf { //project social|game
  38. GMNoticeInfo notice_info = 1;
  39. uint64 notice_time = 2;
  40. }
  41. //服务器维护状态
  42. message SSWEBGMServerMaintainNtf { //project social|game
  43. int32 state = 1;
  44. }
  45. //GM封停公会战
  46. message SSWebGMGuildBattle { //project social|guild
  47. }
  48. //删除背包内道具(可以根据道具类型做处理)
  49. message SSWebGMDelItemNtf { //project social|game
  50. uint64 uid = 1;
  51. repeated KeyValueType del_item_list = 2;
  52. bool isPoint = 3;
  53. }
  54. //////////////////////////webgm
  55. //通知social服务器玩家上线
  56. message SSPlayerOnlineNtf{ //project social
  57. string service_node = 1; //当前所在的服务器节点
  58. PlayerBriefInfo brief_info = 2; //简介信息
  59. }
  60. message SSPlayerOfflineNtf{ //project social|battleboss
  61. uint64 uid = 1;//玩家唯一ID
  62. }
  63. //social通知game当前在线的玩家数量
  64. message SSPlayerOnlineNumNtf { //project game
  65. int32 online_num = 1;
  66. }
  67. //消息发送不成功,存到玩家的离线库中
  68. message SSChatMessageAck{ //project game
  69. int32 error = 1; //错误码
  70. uint64 target_id = 2; //目标玩家
  71. ChatMessageInfo message = 3;//消息内容
  72. int32 type = 4;
  73. }
  74. message SSChatMessageNtf{ //project game
  75. int32 type = 1;//消息类型1私人聊天,2世界频道聊天
  76. ChatMessageInfo message = 2;//消息内容
  77. uint64 target_id = 3;//私人聊天,好友聊天时发送的目标玩家
  78. ChatPlayerBriefInfo from_id = 4;//私人聊天,好友聊天时发送的目标玩家
  79. }
  80. message SSGuildChatMessageNtf{ //project guild|social
  81. int32 type = 1;//消息类型1私人聊天,2世界频道聊天
  82. ChatMessageInfo message = 2;//消息内容
  83. ChatPlayerBriefInfo from_id = 3;//私人聊天,好友聊天时发送的目标玩家
  84. repeated uint64 uid_list = 4;//需要推送的UID列表
  85. uint64 guild_id = 5;//公会ID
  86. }
  87. message SSGuildNoticeMessageNtf{ //project social
  88. repeated SystemMessage sys_msg = 1;//
  89. uint64 guild_id = 2;//公会ID
  90. repeated uint64 uid_list = 3;//需要推送的UID列表
  91. }
  92. message SSGuildNoticeToRoleNtf{ //project game
  93. repeated SystemMessage sys_msg = 1;//
  94. uint64 guild_id = 2;//公会ID
  95. uint64 uid = 3;//通知的玩家
  96. }
  97. //选择合适的AOI服务器节点
  98. message SSPlayerEnterMapReq{ //project aoi
  99. int32 map_type = 1; //进入地图类型
  100. uint64 client_id = 2; //客户端对的sessionid
  101. string service_node = 3; //当前player所在的gate节点
  102. PlayerShowInfo show_info = 4; //玩家地图显示显示信息
  103. uint64 guild_id = 5; //公会ID
  104. Position pos = 6; //
  105. }
  106. //角色离开地图通知
  107. message SSPlayerLeaveMapNtf{ //project aoi
  108. uint64 uid = 1;
  109. }
  110. //断线重连后重新绑定,gate节点信息
  111. message SSPlayerAoiReconnect{ //project aoi
  112. }
  113. //离线后获取最终位置
  114. message SSPlayerLeaveMapReqAck{ //project game
  115. }
  116. //创建流程中名字判断
  117. message SSNameReq { //project db
  118. string name = 1;
  119. int32 zone = 2;//区服[zone]
  120. int32 type = 3;//取名类型 0:创号,1:改名
  121. string old_name = 4;//旧名字
  122. }
  123. message SSNameNtf { //project game
  124. int32 error = 1; //错误码
  125. string name = 2;
  126. int32 type = 3;//取名类型 0:创号,1:改名
  127. }
  128. //玩家显示变更通知
  129. message SSPlayerShowChangeReq{ //project aoi
  130. PlayerShowInfo show_info = 1;
  131. }
  132. //进入boss场景
  133. message SSPlayerEnterChallengeNtf { //project game
  134. uint64 enter_uid = 1;
  135. repeated uint64 notify_list = 2; //通知列表
  136. repeated FightRoleInfo fight_list = 3; //其他玩家列表
  137. uint64 boss_uid = 4;
  138. int32 self_change_play_id = 5;
  139. int32 summon_boss_type = 6;
  140. }
  141. //离开boss场景
  142. message SSPlayerLeaveChallengeNtf { //project game
  143. uint64 leave_uid = 1; //离开的挑战玩家uid
  144. repeated uint64 notify_list = 2; //通知列表
  145. }
  146. //bossHP通知
  147. message SSPlayerChallengeHpNtf { //project game
  148. int32 cur_boss_hp = 1; //当前boss血量
  149. repeated uint64 notify_list = 2; //通知列表
  150. }
  151. //挑战结果通知
  152. message SSPlayerChallengeResultNtf { //project game
  153. int32 result = 1;
  154. repeated uint64 notify_list = 2; //通知列表
  155. }
  156. //////////////////////////mail
  157. //(4/5)和8选其一,根据邮件类型
  158. message SSAddMailNtf { //project social|game|db
  159. int32 mail_config_id = 1; //邮件描述id 当类型是gm时,这边的是全局ID需要做特殊处理
  160. int32 mail_type = 2; //邮件类型(来源)
  161. repeated KeyValueType reward_list = 3; //奖励列表
  162. repeated uint64 notify_list = 4; //奖励的玩家列表
  163. repeated int32 mail_param_list = 5; //邮件显示的参数列表,例如关卡id,名次等
  164. string title = 6;
  165. string content = 7;
  166. }
  167. //////////////////////////rank
  168. //////////////////////////competition
  169. //获取对应赛季信息
  170. //上线时加入选拔季排行列表
  171. message SSGetCompetitionDataReq { //project rank
  172. int32 competition_id = 1; //
  173. int32 competition_type = 2; //表示当前赛季类型
  174. bool is_now_competition = 3; //是否是当前正在进行的赛季
  175. int32 sub_id_num = 4; //结算周期次数
  176. }
  177. message SSGetCompetitionDataAck { //project game
  178. int32 error = 1;
  179. CompetitionInfo competition_data = 2; //对应赛季信息
  180. IdolSeasonData idol_data = 3; //偶像季数据
  181. }
  182. //赛季结算奖励
  183. message SSCompetitionRewardReq { //project rank
  184. int32 competition_id = 1; //
  185. int32 competition_type = 2; //赛季类型
  186. int32 competition_sub_id = 3; //周期结算子序号
  187. bool end_sub_id = 4; //是否是最后一个结算子周期
  188. repeated KeyValueType64 reward_uid_list = 5; //在线玩家处理
  189. }
  190. message SSCompetitionRewardAck { //project game
  191. int32 competition_id = 1; //
  192. int32 competition_sub_id = 2; //周期结算子序号
  193. repeated KeyValueType64 reward_uid_list = 3; //玩家对应奖励
  194. int32 total_rank_count = 4; //赛季结束时总排名玩家
  195. }
  196. //上线时一次性获取历史赛季奖励
  197. message SSCompetitionRewardHistoryReq { //project rank
  198. int32 s_competition_id = 1;//起始历史赛季ID
  199. int32 e_competition_id = 2;
  200. int32 s_competition_sub_id = 3;
  201. int32 e_competition_sub_id = 4;
  202. }
  203. message SSCompetitionRewardHistoryAck { //project game
  204. repeated KeyValueTypeList reward_uid_list = 1; //玩家对应奖励 val:赛季id val2:对应周期 val3:宝箱档位奖励
  205. int32 e_competition_id = 2;
  206. int32 e_competition_sub_id = 3;
  207. }
  208. //更新积分赛季排名
  209. message SSCompetitionUpdateScoreReq { //project rank
  210. uint64 uid = 1;
  211. int32 competition_id = 2;
  212. int32 score = 3;
  213. //一下偶像季专用
  214. uint64 fans_uid = 4;
  215. int32 cur_vote_score = 5;
  216. }
  217. message SSCompetitionUpdateScoreAck { //project game
  218. int32 competition_id = 1;
  219. int32 next_com_score = 2; //下一档最小积分(玩家积分)
  220. int32 self_rank = 3; //当前排名
  221. int32 total_rank = 4; //总人数
  222. int32 section_id = 5; //预计获得宝箱奖励
  223. int32 last_com_score = 6; //低一档最大积分(玩家积分)
  224. }
  225. message SSCompetitionOnVoteNtf { //project game
  226. int32 error = 1; //错误码
  227. uint64 uid = 2; //投票目标
  228. int32 total_count = 3; //uid总票数
  229. //前三名的票数
  230. repeated FansRankData vote_list = 4; //前三名数据
  231. repeated PlayerShowData detail = 5; //详细信息
  232. FansRankData vote_target = 6; //投票目标
  233. int32 ticket_count = 7; //本次投票数量
  234. repeated KeyValueType64 reward_data = 8; //key uid, value 分数 value2表示领奖数据(value2按位取值)
  235. }
  236. //获取我的粉丝列表
  237. message SSCompetitionSelfFansInfoReq { //project rank
  238. uint64 uid = 1; //玩家UID
  239. int32 competition_id = 2; //赛季ID
  240. }
  241. message SSCompetitionSelfFansInfoAck { //project game
  242. int32 error = 1; //错误码
  243. uint64 uid = 2; //玩家UID
  244. repeated FansVoteData fan_list = 3; //粉丝投我的数据(Key 粉丝ID, value 票数)(策划只需要,固定前十名)
  245. }
  246. //获取偶像排行版
  247. message SSCompetitionVoteRankReq { //project rank
  248. uint64 uid = 1; //玩家UID
  249. int32 page = 2; //页签
  250. int32 competition_id = 3; //赛季ID
  251. }
  252. message SSCompetitionVoteRankAck { //project game
  253. int32 error = 1;
  254. uint64 uid = 2; //玩家UID
  255. int32 page = 3; //页签
  256. repeated FansRankData rank_data = 4; //偶像排行版
  257. bool is_end = 5; //是否结束
  258. }
  259. //点亮宝箱排行榜
  260. message SSCompetitionFansRewardRankReq { //project rank
  261. uint64 uid = 1; //玩家UID
  262. int32 page = 2;
  263. int32 competition_id = 4; //赛季ID
  264. }
  265. message SSCompetitionFansRewardRankAck { //project game
  266. int32 error = 1;
  267. uint64 uid = 2; //玩家UID
  268. int32 page = 3;
  269. repeated FansBoxData data_list = 4; //个人宝箱点亮排名
  270. bool is_end = 5; //是否结束
  271. }
  272. //粉丝领取点亮宝箱奖励
  273. message SSCompetitionFansGetRewardReq { //project rank
  274. uint64 uid = 1; //玩家UID
  275. uint64 idol_uid = 2; //对应的爱豆UID
  276. int32 reward_level = 3; //奖励等级
  277. int32 competition_id = 4; //赛季ID
  278. }
  279. message SSCompetitionFansGetRewardAck { //project game
  280. int32 error = 1;
  281. uint64 uid = 2; //玩家UID
  282. uint64 idol_uid = 3; //对应的爱豆UID
  283. int32 reward_level = 4; //奖励等级
  284. int32 idol_box_count = 5; //爱豆的箱子数量
  285. }
  286. //购买完宝箱,通知rank增加宝箱积分
  287. message SSCompetitionAddIdolBoxScoreNtf { //project rank
  288. uint64 uid = 1; //uid
  289. int32 score = 2; //宝箱积分
  290. int32 competition_id = 3; //赛季ID
  291. }
  292. message SSCompetitionFansGetAllRewardReq { //project rank
  293. int32 competition_id = 1;
  294. int32 competition_sub_id = 2;
  295. int32 competition_type = 3;
  296. repeated FansVoteRewardData data = 4;
  297. bool is_finish = 5;
  298. }
  299. message SSCompetitionFansGetAllRewardAck { //project game
  300. int32 competition_id = 1; //
  301. int32 competition_sub_id = 2; //周期结算子序号
  302. repeated FansVoteRewardData data = 3;
  303. }
  304. message SSCompetitionGetPlayerVoteRankReq { //project rank
  305. uint64 uid = 1; //领取ID
  306. uint64 req_uid = 2; //请求的玩家UID
  307. int32 competition_id = 3; //赛季ID
  308. }
  309. message SSCompetitionGetPlayerVoteRankAck { //project game
  310. int32 error = 1; //错误码
  311. FansRankData idol_rank_data = 2; //排行榜
  312. uint64 req_uid = 3; //请求的玩家UID
  313. }
  314. //////////////////////////social
  315. //friend
  316. message SSFriendAddReq { //project social|game
  317. CommonPlayerBriefInfo from_uid = 1; //发起关注的玩家
  318. uint64 add_uid = 2; //被关注的玩家
  319. }
  320. message SSFriendAddAck { //project game|social
  321. int32 error = 1;
  322. uint64 from_uid = 2; //发起关注的玩家
  323. CommonPlayerBriefInfo add_uid = 3; //被关注的玩家
  324. }
  325. //通过social发送给其他game服务器后,如果为找到del角色信息,会发送给db做处理
  326. message SSFriendDelReq { //project social|game
  327. uint64 from_uid = 1;
  328. uint64 del_uid = 2;
  329. }
  330. message SSFriendDelAck { //project game
  331. int32 error = 1;
  332. uint64 from_uid = 2;
  333. uint64 del_uid = 3;
  334. }
  335. message SSFriendBlackNtf { //project social|game
  336. uint64 from_uid = 1;
  337. uint64 black_uid = 2;
  338. }
  339. //查询在线状态
  340. message SSOnlineStateReq { //project social
  341. int32 pro_type = 1; //操作类型 1表示搜索操作 2表示好友系统获取简介信息
  342. int32 list_type = 2; //显示的列表类型
  343. repeated CommonPlayerBriefInfo brief_info_list = 3; //玩家简介信息
  344. }
  345. message SSOnlineStateAck { //project game
  346. int32 pro_type = 1; //操作类型
  347. int32 list_type = 2; //显示的列表类型
  348. repeated CommonPlayerBriefInfo brief_info_list = 3; //玩家简介信息
  349. }
  350. //////////////////////////////guild
  351. //公会相关消息
  352. message SSGuildOnAddActivityNtf { //project guild
  353. uint64 uid = 1;
  354. uint64 guild_id = 2;
  355. int32 activity = 3; //活跃度
  356. }
  357. message SSGuildBossRefreshNtf { //project game
  358. uint64 uid = 1; //uid
  359. repeated GuildBossTickTime ref_time = 2;
  360. }
  361. //同步公会成员在线状态
  362. message SSGuildOnlineStateReq { //project social
  363. uint64 guild_id = 1; //公会ID
  364. uint64 uid = 2; //玩家ID
  365. }
  366. message SSGuildOnlineStateAck { //project guild
  367. uint64 guild_id = 1; //公会ID
  368. uint64 uid = 2; //玩家ID
  369. uint64 offline = 3; //下线时间
  370. }
  371. //获取新加入公会成员的在线状态
  372. message SSGuildMemberOnlineInfoReq{ //project social
  373. uint64 guild_id = 1;
  374. repeated uint64 uid_list = 2;
  375. }
  376. message SSGuildMemberOnlineInfoAck{ //project guild
  377. uint64 guild_id = 1; //公会ID
  378. repeated KeyValueType64 uid_list = 2; //公会成员在线状态
  379. }
  380. //公会改名通知
  381. message SSGuildNameChangeNtf{ //project social
  382. uint64 guild_id = 1; //公会ID
  383. repeated uint64 uid_list = 2; //公会成员在线状态
  384. string guild_name = 3; //公会名字
  385. }
  386. //玩家上线请求公会信息
  387. message SSOnlineGuildInfoReq{ //project guild
  388. uint64 uid = 1; //uid//服务器填写
  389. uint64 guild_id = 2; //公会ID//服务器填写
  390. bool is_relogin = 3; //是否重新登录
  391. uint64 demon_fight_time = 4;
  392. }
  393. message SSOnlineGuildInfoAck{ //project game
  394. GuildNotifyData data = 1; //公会简介
  395. int64 next_join = 2; //下次加入公会时间
  396. repeated uint32 boss = 3; //当前可挑战boss
  397. repeated MessageContentInfo msgRec = 4; // 公会聊天
  398. SystemMessage GuildSys = 5; // boss狩猎通知
  399. bool in_guild_battle = 6; //true公会战入口开启,false公会战入口关闭
  400. }
  401. //公会战挑战占位
  402. message SSGuildBattleChallengeReq { //project guild
  403. int32 guild_battle_idx = 1;
  404. int32 pos_idx = 2;
  405. CommonPlayerBriefInfo bf_info = 3; //服务器使用
  406. uint64 self_guild_id = 4; //服务器使用
  407. uint64 cur_rmb = 5; //当前服务器玩家拥有的金币
  408. int32 buy_challenge_num = 6; //购买的战斗次数
  409. }
  410. message SSGuildBattleChallengeAck { //project game
  411. int32 error = 1; //错误码
  412. int32 guild_battle_idx = 2;
  413. int32 pos_idx = 3;
  414. FightRoleInfo fight_info = 4; //对方玩家信息
  415. GuildPosIdxData challenge_pos_data = 5;
  416. uint64 cost_rmb = 6; //需要花费rmb数量
  417. repeated KeyValueType fight_buff_list = 7; //buff列表
  418. repeated KeyValueType self_buff_list = 8; //自己的buff列表
  419. GuildBattleSelfData self_data = 9; //个人信息
  420. bool use_buy_num = 10; //使用购买次数
  421. }
  422. //贡献点请求
  423. message SSGuildBattleCPRankReq { //project guild
  424. uint64 uid = 1; //玩家的UID
  425. uint64 guild_id = 2; //公会ID
  426. }
  427. message SSGuildBattleCPRankAck { //project game
  428. repeated GuildBattleCP cp_list = 1; //贡献点列表
  429. int32 self_guild_rank = 2; //自己公会贡献点名次
  430. int32 self_guild_cp = 3; //自己公会贡献点
  431. uint64 uid = 10; //玩家的UID
  432. }
  433. //对阵表请求
  434. message SSGuildBattleCountPartReq { //project guild
  435. uint64 uid = 1; //玩家的UID
  436. }
  437. message SSGuildBattleCountPartAck { //project game
  438. int32 error = 1; //错误码
  439. uint64 champion = 2; //冠军
  440. int32 cur_stge = 3; //当前阶段
  441. uint64 tournament_prepare = 4; //8-4准备时间
  442. uint64 tournament_begin = 5; //8-4开始
  443. uint64 tournament_end = 6; //8-4结束
  444. uint64 semifinals_prepare = 7; //4-2准备时间
  445. uint64 semifinals_begin = 8; //4-2开始
  446. uint64 semifinals_end = 9; //4-2结束
  447. uint64 finals_prepare = 10; //2-1准备时间
  448. uint64 finals_begin = 11; //2-1开始
  449. uint64 finals_end = 12; //2-1结束
  450. GuildCountPartTable table = 13; //对阵表
  451. }
  452. //MVP信息请求
  453. message SSGuildBattleMvpInfoReq { //project guild
  454. uint64 uid = 1; //玩家的UID
  455. int32 guild_battle_idx = 2; //公会战索引(1 / 2,3 / 4,5,6,7)
  456. }
  457. message SSGuildBattleMvpInfoAck { //project game
  458. int32 error = 1;
  459. int32 guild_battle_idx = 2; //公会战索引(1 / 2,3 / 4,5,6,7)
  460. repeated GuildBattleDetail detail = 3; //公会战 公会的详细信息
  461. CountTableData count_part = 4; //对阵信息
  462. uint64 uid = 5; //玩家的UID
  463. }
  464. //Mvp详情请求
  465. message SSGuildBattleMvpDetailReq { //project guild
  466. uint64 uid = 1; //玩家的UID
  467. int32 mvp_type = 2; //mvp类型(1:积分 2:击杀)
  468. int32 req_rank = 3; //请求的起始排名
  469. int32 guild_battle_idx = 4; //公会战索引(1 / 2,3 / 4,5,6,7)
  470. }
  471. message SSGuildBattleMvpDetailAck { //project game
  472. uint64 uid = 1; //玩家的UID
  473. int32 mvp_type = 2; //mvp类型(1:积分 2:击杀)
  474. repeated GuildBattleMvp mvp = 3; //mvp列表(目前就2个)
  475. int32 req_rank = 4; //请求的起始排名
  476. int32 guild_battle_idx = 5; //公会战索引(1 / 2,3 / 4,5,6,7)
  477. }
  478. message SSGuildBattleStageChangeNtf { //project game
  479. bool in_guild_battle = 1; //true公会战入口开启,false公会战入口关闭
  480. }
  481. message SSGuildBattleRewardNtf{ //project game
  482. int32 reward_type = 1; //奖励类型
  483. repeated uint64 uid_list = 2; //成员列表
  484. uint64 guild_pre = 3; //会长
  485. int32 guild_round = 4; //公会战轮次
  486. }
  487. message SSGuildBattleOnlineGetRewardReq { //project guild
  488. uint64 uid = 1; //玩家ID
  489. int32 cur_reward_id = 2; //当前公会排名领奖ID
  490. int32 mvp_reward_id = 3; //公会战MVP排名领奖ID
  491. }
  492. message GuildBattleReward {
  493. bool is_pre = 1;
  494. int32 reward_type = 2; //奖励类型 (1:冠军,2:亚军 3:3-4名,4:4-8名)
  495. }
  496. message SSGuildBattleOnlineGetRewardAck { //project game
  497. repeated GuildBattleReward round_reward = 1; //轮次奖励
  498. int32 cur_battle_round = 2; //(领奖到此为止)
  499. repeated MvpRewardInfo score_mvp = 3; //积分MVP
  500. repeated MvpRewardInfo killer_mvp = 4; //击杀MVP
  501. int32 cur_mvp_round =5; //mvp奖励
  502. }
  503. message SSGuildBattleCPChangeNtf { //project game
  504. }
  505. //公会战GM
  506. //
  507. message SSGuildBattleGMAddGuildCPReq { //project guild
  508. uint64 guild_id = 1;
  509. uint32 add_score = 2;
  510. uint64 uid = 3;
  511. }
  512. //添加战斗积分
  513. message SSGuildBattleGMAddGuildScoreReq { //project guild
  514. int32 battle_index = 1;
  515. int32 guild_index = 2;
  516. int32 add_score = 3;
  517. }
  518. //GM会长转让
  519. message SSGuildBattleGMChangeLeaderReq { //project guild
  520. uint64 guild_id = 1;
  521. }
  522. //GM会长转让
  523. message SSGuildBattleGMKickMemberReq { //project guild
  524. uint64 guild_id = 1;
  525. uint64 uid = 2;
  526. }
  527. //GM设置公会魔王伤害
  528. message SSGuildBattleGMDemonDamageReq { //project guild
  529. }
  530. //取消公会战公会操作拦截
  531. message SSGuildBattleGMOperatorReq { //project guild
  532. int32 operator = 1; //0:正常, 1:取消拦截
  533. }
  534. message MvpRewardInfo {
  535. uint64 uid = 1; //
  536. int32 reward_type = 2; //战斗轮次奖励类型
  537. int32 battle_index = 3; //战斗场次
  538. }
  539. //公会战MVP奖励
  540. message SSGuildBattleSendMvpRewardReq { //project game
  541. int32 guild_battle_round = 1;
  542. repeated MvpRewardInfo score_mvp = 2; //积分MVP
  543. repeated MvpRewardInfo killer_mvp = 3; //击杀
  544. }
  545. //公会战MVP奖励
  546. message SSGuildBattleSendMvpRewardAck { //project guild
  547. int32 guild_battle_round = 1;
  548. repeated MvpRewardInfo score_mvp = 2; //积分MVP
  549. repeated MvpRewardInfo killer_mvp = 3; //击杀
  550. }
  551. //公会战购买buff请求
  552. message SSGuildBattleBuyBuffReq { //project guild
  553. int32 guild_battle_idx = 1;
  554. repeated int32 buff_id_list = 2;
  555. uint64 uid = 3;
  556. uint64 guild_id = 4; //
  557. uint64 total_gold = 5; //总金币数量
  558. }
  559. //公会战购买buff返回
  560. message SSGuildBattleBuyBuffAck { //project game
  561. int32 error = 1; //错误码
  562. uint64 uid = 2; //购买结果
  563. repeated KeyValueType need_res = 3; //需要的资源
  564. GuildBattleSelfData self_data = 4; //个人信息
  565. int32 guild_battle_idx = 5;
  566. }
  567. message SSGuildBattleRewardReq { //project guild
  568. }
  569. message SSGuildDemonFightReq { //project guild
  570. int32 demon_id = 1;
  571. uint64 damage = 2; //总伤害
  572. uint64 guild_id = 3;
  573. uint64 uid = 4;
  574. }
  575. message SSGuildDemonFightAck { //project game
  576. int32 error = 1;
  577. int32 demon_id = 2; //bossid
  578. int32 fight_count = 3; //剩余战斗次数
  579. uint64 total_damage = 4; //boss总伤害
  580. uint64 uid = 5; //唯一ID
  581. uint64 refresh_time = 6; //
  582. int32 free_fight_count = 7; //免费战斗次数
  583. //系统播报数据
  584. string guild_name = 9; //公会名称
  585. int32 reward_level = 10; //奖励档位
  586. uint64 req_uid = 11; //请求UID
  587. }
  588. message SSGuildDemonOnlineGetRewardNtf { //project game
  589. int32 demon_id = 1;
  590. repeated KeyValueType reward_list = 2;
  591. }
  592. message SSGuildDemonRewardNtf { //project game
  593. int32 demon_id = 1;
  594. int32 demon_level = 2;
  595. uint64 total_damage = 3;
  596. repeated uint64 uid_list = 4;
  597. }
  598. //////////////////////////expedition
  599. message SSExpeditionHelpReq { //project social|game
  600. uint64 be_helped_uid = 1; //被救助玩家uid
  601. CommonPlayerBriefInfo from_uid = 2; //发起救助玩家uid
  602. uint64 help_msg_send_time = 3; //求助消息发送时的时间
  603. }
  604. message SSExpeditionHelpAck { //project game|social
  605. int32 error = 1;
  606. uint64 be_helped_uid = 2; //被救助玩家uid
  607. CommonPlayerBriefInfo from_uid = 3; //发起救助玩家uid
  608. }
  609. //勇士积分排行
  610. message SSExpeditionScoreRankListReq { //project rank
  611. int32 start_idx = 1;
  612. }
  613. message SSExpeditionScoreRankListAck { //project game
  614. int32 error = 1; //错误码
  615. repeated ExpeditionRankInfo rank_list = 2;
  616. ExpeditionRankInfo self_rank_info = 3;
  617. int32 start_idx = 4;
  618. }
  619. //积分变动通知
  620. message SSExpeditionUpdateScoreRankNtf { //project rank
  621. uint32 cur_score = 1; //玩家历史最高积分
  622. }
  623. //////////////////////////invitation
  624. //填写邀请码成为导师成员
  625. message SSInvitationBeToMemberReq { //project game|social
  626. uint64 master_number = 1; //导师邀请码
  627. uint64 master_uid = 2; //导师uid
  628. InvitationMemberValData self_uid = 3; //自身uid
  629. }
  630. message SSInvitationBeToMemberAck { //project game|social
  631. int32 error = 1;
  632. uint64 master_number = 2; //导师邀请码
  633. uint64 master_uid = 3; //导师uid
  634. InvitationMemberValData self_uid = 4; //自身uid
  635. }
  636. //master不在线操作数据库
  637. message SSInvitationBeToMemberDBReq { //project db
  638. uint64 master_number = 1; //导师邀请码
  639. uint64 master_uid = 2; //导师uid
  640. InvitationMemberValData self_uid = 3; //自身uid
  641. }
  642. message SSInvitationBeToMemberDBAck { //project game
  643. int32 error = 1;
  644. uint64 master_number = 2; //导师邀请码
  645. uint64 master_uid = 3; //导师uid
  646. InvitationMemberValData self_uid = 4; //自身uid
  647. }
  648. //解除关系
  649. message SSInvitationDelMemberNtf { //project social|game
  650. uint64 master_uid = 1; //导师uid
  651. repeated uint64 del_member_list = 2;
  652. }
  653. //等级,充值等数据变更时通知导师
  654. message SSInvitationMemberNoticeMasterReq { //project social|game
  655. uint64 self_uid = 1;
  656. uint64 master_uid = 2; //master uid
  657. KeyValueType param = 3; //key任务类型 val数值
  658. }
  659. message SSInvitationMemberNoticeMasterAck { //project social|game
  660. int32 error = 1;
  661. uint64 self_uid = 2;
  662. uint64 master_uid = 3; //master uid
  663. KeyValueType param = 4; //key任务类型 val数值
  664. }
  665. //////////////////////////pay
  666. //订单对应的奖励信息
  667. message PayOrderSaveInfo {
  668. int32 goods_id = 1;
  669. int32 goods_type = 2;
  670. string goods_name = 3;
  671. uint64 cp_order_id = 4; //产品订单号
  672. float amount = 5; //支付总额
  673. int32 count = 6; //购买数量
  674. uint64 order_process_time = 7; //订单操作时间
  675. int32 order_state = 8; //订单状态(枚举说明PayOrderState common.proto)
  676. uint64 uid = 9; //玩家id
  677. repeated KeyValueType reward_list = 10; //支付获得奖励
  678. string sdk_order_id = 11; //SDK对应订单号
  679. string pay_method = 12; //SDK对应的充值通道
  680. string pay_currency = 13; //充值货币种类
  681. uint64 pay_time = 14; //支付时间
  682. string pay_channel = 15; //支付渠道
  683. int32 s_id = 16; //当前服务器ID
  684. }
  685. //充值订单数据保存/状态变更
  686. message SSPayInfoSaveReq { //project db
  687. PayOrderSaveInfo pay_order_info = 1;
  688. bool save_notify = 2; //表示十分是初次生成订单
  689. }
  690. message SSPayInfoSaveAck { //project game
  691. int32 error = 1;
  692. PayOrderSaveInfo pay_order_info = 2;
  693. }
  694. //上线获取成功成但是没有获取奖励的订单数据
  695. message SSPayInfoOrderOKListGetReq { //project db
  696. }
  697. message SSPayInfoOrderOkListGetAck { //project game
  698. repeated PayOrderSaveInfo pay_order_ok_list = 2;
  699. }
  700. //充值成功后gmweb通知给game服务器
  701. message SSPayInfoOrderNtf { //project social|game
  702. PayOrderSaveInfo pay_order_info = 1;
  703. }
  704. //////////////////////////百人道场
  705. //获取占位信息
  706. message SSDaoChang100PosInfoListReq { //project rank
  707. repeated int32 pos_idx_list = 1;
  708. }
  709. message SSDaoChang100PosInfoListAck { //project game
  710. int32 error = 1;
  711. repeated DaoChang100PosIdxData pos_data_list = 2; //占位信息
  712. }
  713. //占领日志信息
  714. message SSDaoChang100LogReq { //project rank
  715. uint64 begin_time = 1;
  716. }
  717. message SSDaoChang100LogAck { //project game
  718. repeated DaoChang100Log log_list = 1;
  719. bool is_end = 2;
  720. }
  721. //挑战占位
  722. message SSDaoChang100ChallengeReq { //project rank
  723. int32 pos_idx = 1;
  724. bool has_challenge_count = 2; //当前是否有挑战次数
  725. CommonPlayerBriefInfo owner_brief = 3; //发起挑战玩家
  726. }
  727. message SSDaoChang100ChallengeAck { //project game
  728. int32 error = 1; //错误码
  729. int32 pos_idx = 2;
  730. FightRoleInfo fight_info = 3; //对方玩家信息
  731. int32 robot_id = 4; //机器人id
  732. uint64 reward_delta_time = 5; //占位奖励时间
  733. DaoChang100PosIdxData self_pos_data = 6; //自身占位成功后的信息
  734. DaoChang100PosIdxData challenge_pos_data = 7; //挑战位置占位信息
  735. }
  736. //挑战占位战斗结果上报
  737. message SSDaoChang100ChallengeResultReq { //project rank
  738. int32 pos_idx = 1;
  739. uint64 pos_uid = 2; //挑战时位置上的玩家ID(机器人id)
  740. CommonPlayerBriefInfo owner_brief = 3; //发起挑战玩家
  741. bool battle_result = 4;
  742. }
  743. message SSDaoChang100ChallengeResultAck { //project game
  744. int32 error = 1; //错误码
  745. int32 pos_idx = 2;
  746. bool battle_result = 3; //战斗结果
  747. bool empty_pos_idx = 4; //结束时占领的是
  748. DaoChang100PosIdxData self_pos_data = 5; //自身占位成功后的信息
  749. }
  750. message SSDaoChang100ChallengeResultNtf { //project game|social
  751. uint64 ntf_uid = 1; //被动变化玩家uid
  752. bool pos_idx_data_change = 2;
  753. DaoChang100PosIdxData ntf_pos_data = 3; //被动变化玩家占位信息
  754. bool from_other_game = 4;
  755. uint64 challenge_uid = 5; //挑战该占位的玩家
  756. int32 battle_result = 6; //1胜利 2失败
  757. }
  758. //获取收益奖励
  759. message SSDaoChang100TimeRewardReq { //project rank
  760. uint64 uid = 1;
  761. uint64 base_reward_time = 2;
  762. uint64 reward_interval_time = 3;
  763. uint64 now_time = 4;
  764. }
  765. message SSDaoChang100TimeRewardAck { //project game
  766. repeated KeyValueType pos_idx_reward_list = 1;//位置对应奖励次数
  767. uint64 base_reward_time = 2;
  768. uint64 reward_interval_time = 3;
  769. uint64 now_time = 4;
  770. }
  771. //道场公会贡献点排行更新
  772. message SSDaoChang100GuildRankUpdateNtf { //project guild
  773. uint64 uid = 1;
  774. uint64 guild_id = 2;
  775. uint32 score = 3;
  776. }
  777. //////////////////////////精彩活动
  778. message SSActivitiesCollectionServerDataReq { //project rank
  779. int32 activity_id = 1;
  780. int32 reward_idx = 2; //兑换奖励时使用(为0表示获取全部)
  781. int32 server_limit_num = 3; //上限次数
  782. repeated ExchangeInfo pet_data = 4; //兑换宠物
  783. }
  784. message SSActivitiesCollectionServerDataAck { //project game
  785. int32 error = 1; //错误码
  786. int32 activity_id = 2;
  787. repeated KeyValueType data_list = 3; //全局相关数据
  788. int32 reward_idx = 4;
  789. repeated ExchangeInfo pet_data = 5; //兑换的宠物
  790. }
  791. message CollectionSaveData {
  792. int32 activity_id = 2;
  793. repeated KeyValueType data_list = 3; //全局相关数据
  794. }
  795. message SSActivitiesCollectionServerDataNtf { //project social|game
  796. int32 activity_id = 1;
  797. int32 reward_idx = 2;
  798. int32 server_cur_num = 3; //当前服务器已经兑换次数
  799. }
  800. message SSWebGMHeadChange { //project social|game
  801. uint64 uid = 1;
  802. int32 head_id = 2; // 称号id
  803. int32 state = 3; // 称号状态
  804. }