user.proto 84 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980
  1. syntax = "proto3";
  2. package serverproto;
  3. option go_package = "./;serverproto";
  4. message AccountRole {
  5. string open_id = 1; //用户平台open_id
  6. string platform = 2; //用户平台
  7. uint64 uid = 3; //角色id,用来绑定玩家角色信息
  8. int32 phone_platform = 4; //手机平台 android ios
  9. uint64 register_time = 5; //注册时间
  10. int32 ZoneId = 6; //所在区服
  11. }
  12. //后续需要做战场时,的重连信息(战场所在的服务器信息)
  13. message ReconnectInfo {
  14. string pvp_node = 1; //战斗服务器节点(后续做战斗时使用)
  15. }
  16. message UserConnectInfo{
  17. string logic_node = 1; //用户所在的game服务器节点
  18. int64 time_stamp = 2; //保存连接信息时的时间
  19. }
  20. //key value 类型
  21. message KeyValueType {
  22. int32 key = 1;
  23. int32 value = 2;
  24. }
  25. message KeyValueTypeList {
  26. int32 key = 1;
  27. repeated int32 value_list = 2;
  28. }
  29. message KeyValueType64 {
  30. uint64 key = 1;
  31. int32 value = 2;
  32. int32 value2 = 3;
  33. int32 value3 = 4;
  34. string str_val = 5;
  35. uint64 value4 = 6;
  36. bool value5 = 7;
  37. }
  38. message KeyValueType64Str {
  39. uint64 key = 1;
  40. string str_val = 2;
  41. }
  42. message KeyValueFloat32{
  43. int32 key = 1;
  44. float value = 2;
  45. double value64 = 3; //目前只是血量会用到
  46. }
  47. message UKeyValueType {
  48. uint32 key = 1;
  49. uint32 value = 2;
  50. }
  51. //6部位信息
  52. message SlotDetailData {
  53. int32 level = 1; //等级
  54. int32 equip_id = 2; //装备id(直接使用configId)
  55. repeated int32 card_id_list = 3; //卡片(卡牌槽位)
  56. }
  57. //坑位信息
  58. message SlotData {
  59. int32 hero_id = 1;
  60. repeated SlotDetailData slot_list = 2; //6个部位
  61. }
  62. //宠物6坑位信息
  63. //宠物印记信息
  64. message PetEquipData {
  65. uint32 id = 1;
  66. int32 equip_cfg_id = 2;
  67. int32 level = 3;
  68. uint32 equip_pet_id = 4;//印记是否已经装备到宠物
  69. }
  70. //宠物6坑位信息(6个部位)
  71. message PetSlotDetailData {
  72. int32 idx = 1;
  73. uint32 equip_id = 2; //装备id(动态生成的ID)
  74. repeated int32 stone_id_list = 3; //宝石(卡牌槽位)
  75. }
  76. //技能信息
  77. message SkillData {
  78. int32 id = 1; //技能ID
  79. int32 point = 2; //技能等级(当前已经添加的技能点)
  80. }
  81. message ChangeJob{
  82. repeated TaskData task_list = 1; //当前正在执行的任务
  83. int32 hero_id = 2; //需要转职的英雄ID
  84. uint32 job_fush_state = 3; // 刷新状态
  85. }
  86. //宠物觉醒(当前伙伴跟随的宠物觉醒信息,觉醒槽位跟着角色走)
  87. message PetQiyueSlotInfo {
  88. int32 slot_idx = 1;
  89. uint32 pet_id = 2;
  90. int32 pet_cfg_id = 3; //主要用来客户端显示,不必再查找宠物动态数据
  91. }
  92. message PetQiyueInfo {
  93. uint32 pet_id = 1;
  94. repeated PetQiyueSlotInfo qiyue_slot_list = 2; //槽位
  95. }
  96. //宠物契约属性
  97. message PetQiyueAttr {
  98. uint32 pet_id = 1;
  99. repeated KeyValueFloat32 battle_attr_list = 2; //面板属性数值
  100. }
  101. //玩家角色结构中的strength_level和advance_level不使用
  102. message HeroData {
  103. int32 id = 1; //动态id
  104. int32 config_id = 2; //config id [JobCfg id]
  105. int32 fight_power = 3; //战斗力
  106. bool is_battle = 4; //是否出战
  107. int32 base_level = 5; //培养等级(主角是玩家等级)
  108. int32 advance_level = 6; //进阶(突破等级上限,角色通过专职来处理)
  109. int32 strength_level = 7; //突破
  110. SlotData slot = 8; //6个坑位信息(装备,卡片)
  111. RoleSkill skill = 9; //技能信息
  112. repeated KeyValueType attr_list = 10; //属性点添加列表(操作总和,不包括玩家初始属性点,需要客户端处理)
  113. int32 attr_point = 11; // 属性点(总属性点)
  114. uint32 battle_pet_id = 12; //出战宠物id
  115. uint64 pet_fight_power = 13; //出阵宠物战力
  116. repeated KeyValueType quality_list = 14; //素质果实数量
  117. int32 repress_skill_pvp_val = 15; //压制数值pvp技能竞技压制
  118. SkillEquipSlotData skill_equip_slot = 16; //神器槽位信息
  119. PetQiyueInfo pet_qiyue_data = 17; //宠物觉醒功能
  120. //有可能没有(老号)
  121. repeated KeyValueType battle_attr_list_old = 50; //面板属性数值
  122. repeated KeyValueFloat32 battle_attr_list = 51; //面板属性数值
  123. }
  124. //时装数据
  125. message FashionData{
  126. int32 eye = 1; //创建时的默认眼睛
  127. int32 hair = 2; //头发颜色
  128. int32 hair_avatar = 3; //头发模型
  129. repeated int32 fashion_up_list = 4; //已穿戴时装
  130. }
  131. message FashionAttr{
  132. int32 jobType = 1;
  133. int32 attrId = 2;
  134. int32 value = 3;
  135. }
  136. message HeadFrameData {
  137. int32 head_frame_id = 1; //头像框ID
  138. int64 head_frame_time = 2; //头像框时间
  139. }
  140. //头像信息
  141. message HeadInfo{
  142. int32 head_version = 1; //头像更新版本
  143. repeated int32 head_list = 2; //已激活头像列表
  144. repeated HeadFrameData head_frame_list = 3; //头像框列表
  145. }
  146. //玩家附属属性
  147. message RoleData {
  148. int32 base_exp = 1; //基础经验等级
  149. int32 job_exp = 2; //职业经验
  150. int32 job_level = 3; //职业等级
  151. int32 hero_exp = 4; //伙伴经验
  152. HeroData hero_data = 5; //主角英雄数据
  153. uint64 fight_power = 6; //总战斗力
  154. int32 cruise = 7; //巡游值
  155. int32 max_cruise = 8; //巡游值上限
  156. int32 head_id = 9; //使用的头像ID
  157. uint64 last_login_time = 10; //最近一次离线时间
  158. int32 skill_box = 11; //当前弹框次数
  159. repeated KeyValueType boss_reward_list = 12; //boss挑战奖励预存储
  160. int32 skill_reset_count = 13; //重置次数
  161. int32 head_frame_id = 14; //头像框ID
  162. }
  163. //角色基本信息(不包括其他系统部分)
  164. message RoleBase {
  165. uint64 id = 1;
  166. string nick_name = 2; //玩家昵称
  167. string desc = 3; //个性签名
  168. int32 sex = 4; //性别
  169. int32 country = 5; //国家
  170. int32 guide_id = 6; //新手流程
  171. uint64 coin = 7; //玩家金币
  172. uint32 rmb = 8; //钻石
  173. repeated KeyValueType res_list = 9; //玩家其他资源列表(不放背包的资源)
  174. RoleData role_data = 10; //玩家附属属性
  175. FashionData fashion_data = 11; //时装数据
  176. HeadInfo head_Info = 13; //解锁头像列表
  177. repeated int32 story_id = 14; //播放的剧情
  178. KeyValueType cguide = 15; //Compulsory guidance强制引导 key引导组ID,Value引导步骤ID
  179. KeyValueType map_animation = 16; //新地图动画
  180. uint64 ban_time = 17; //封号结束时间s
  181. float total_recharge = 18; //累计充值
  182. float day_recharge = 19; //每日累计充值
  183. int32 vip_level = 20; //vip等级
  184. uint64 last_recharge_time = 21; //最近充值时间
  185. int32 question_reward = 22; //问卷调查奖励
  186. bool create_reward = 23; //創建角色奖励获取
  187. int32 ban_type = 24; //封号原因
  188. uint64 chat_ban_time = 25; //禁言结束时间
  189. int32 chat_ban_type = 26; //禁言原因
  190. int32 total_online_time = 27; //当前累计在线时间(隔天重置)s
  191. uint64 online_stamp = 28; //上线时的时间戳 ms
  192. int32 online_reward_id = 29; //已经领取过的奖励id(配置表中的唯一id)
  193. uint64 daily_reset_time_stamp = 30; //每日重置时的时间戳
  194. int32 repress_skill_pvp_val = 31; //技能竞技pvp压制值
  195. float bt_zhen_day_recharge = 50; // bt真每日累计充值(花钱购买金币的消耗)
  196. int32 bt_jia_day_recharge = 51; // bt假每日累计充值(消耗的每日充值额度)
  197. uint64 bt_jia_total_recharge = 52; // bt假累计充值(累计消耗的每日充值额度)
  198. }
  199. //神器槽位详细信息
  200. message SkillEquipSlotDetailData {
  201. uint32 skill_equip_id = 1; //神器id
  202. int32 skill_equip_config_id = 2; //神器配置id
  203. int32 skill_equip_star_level = 3; //神器星级
  204. int32 slot_level = 4; //槽位等级
  205. repeated KeyValueType slot_attrs = 5; //暂时只显示神威值
  206. }
  207. //神器槽位列表详细数据
  208. message SkillEquipSlotData {
  209. int32 hero_id = 1;
  210. repeated SkillEquipSlotDetailData slot_list = 2; //目前只有一个神器槽位
  211. }
  212. //神器数据
  213. message SkillEquipData {
  214. uint32 id = 1; //实例ID
  215. int32 config_id = 2; //配置id
  216. int32 star_level = 3; //神器星级
  217. }
  218. message SkillEquipChangeData{
  219. SkillEquipData skill_equip_data = 1; //神器数据
  220. bool add = 2; //添加or删除
  221. }
  222. //玩家神器列表
  223. message RoleSkillEquip {
  224. uint32 max_skill_equip_id = 1;
  225. repeated SkillEquipData skill_equip_list = 2;
  226. }
  227. /////////////////////////////////////////////////////////////////////////////
  228. message EquipData {
  229. int32 config_id = 1; //
  230. int32 num = 2; //当前拥有的数量
  231. }
  232. message RoleEquip {
  233. repeated EquipData equip_list = 1;
  234. }
  235. //道具数据
  236. message ItemData {
  237. uint64 id = 1; //实例id(用来处理道具堆叠操作)
  238. int32 config_id = 2; //道具配置ID
  239. uint32 num = 3; //道具数量
  240. uint32 time_stamp = 4; //道具获得时间
  241. }
  242. //碎片数据
  243. message ChipData {
  244. int32 config_id = 1; //道具配置ID
  245. uint32 num = 2; //道具数量
  246. uint32 time_stamp = 3; //道具获得时间
  247. }
  248. message RoleBag {
  249. repeated ItemData item_list = 1; //道具列表
  250. int32 bag_count = 2; //格子开启信息(暂时不使用)
  251. }
  252. message RoleHero {
  253. repeated HeroData hero_data = 1; //玩家伙伴信息
  254. }
  255. message RoleChip {
  256. repeated ChipData chip_list = 1; //英雄碎片列表
  257. }
  258. //当前职业对应拥有的技能
  259. message JobSkillData {
  260. int32 job_stage = 1; //职业当前转职阶段
  261. repeated KeyValueType unlock_skill_list = 2; //解锁的技能ID
  262. }
  263. //技能槽位信息
  264. message RoleSkillSlot {
  265. int32 skill_id = 1; //技能ID
  266. int32 unlock = 2; //0级表示未解锁,1表示已解锁
  267. int32 default_skill_id = 3; //默认不显示技能
  268. }
  269. message RoleSkill {
  270. repeated JobSkillData job_skill_list = 1; //已经解锁的技能
  271. repeated RoleSkillSlot skill_list = 2; //对应位置上的技能(位置加技能ID,没有该位置的数据说明为解锁该槽位)
  272. }
  273. message CardData {
  274. int32 config_id = 1; //卡片配置ID
  275. int32 num = 2;
  276. }
  277. message CardHandBook {
  278. int32 card_id = 1; //卡片id
  279. int32 card_level = 2; //卡片等级
  280. int32 reward_rec = 3; //领奖记录 按位
  281. }
  282. message CardCollect {
  283. int32 card_quality = 1; //卡片品质
  284. repeated CardHandBook card_book = 2; //卡片收集列表
  285. }
  286. message RoleCard {
  287. repeated CardData card_list = 1; //卡片列表
  288. repeated int32 card_slot_list = 2; //部件卡槽解锁信息,按位处理
  289. repeated CardCollect card_collect = 3; //卡片图册
  290. repeated KeyValueType total_card_num_list = 4;// 历史卡片数量
  291. }
  292. message RoleFashionData{
  293. int32 fashion_id = 1;
  294. int32 fashion_lvl = 2;
  295. bool fashion_wear = 3;
  296. repeated FashionAttr resetAttrs = 4;
  297. repeated FashionAttr attrs = 5;
  298. }
  299. message RoleFashion {
  300. repeated int32 fashion_list = 1; //时装列表
  301. repeated RoleFashionData fashion_data = 2; // 时装新结构
  302. repeated KeyValueType lvs = 3; // 套裝數據
  303. }
  304. ////////////////////////AOI
  305. message RoleMap {
  306. int32 map_type = 1;
  307. Position pos = 2;
  308. int32 world_boss_count = 3; //世界boss挑战次数
  309. repeated int32 world_boss_challenge_list = 4; //当天挑战过的世界bossid列表(id*10 + summonidx)
  310. }
  311. message Position {
  312. float x = 1;
  313. float y = 2;
  314. float z = 3;
  315. }
  316. message Vector3 {
  317. float x = 1;
  318. float y = 2;
  319. float z = 3;
  320. }
  321. message Player {
  322. uint64 uid = 1;
  323. Position pos = 2;
  324. int32 u_type = 3; //单位类型,1玩家,2boss,3其他npc
  325. }
  326. //地图显示玩家数据
  327. message PlayerShowInfo {
  328. uint64 uid = 1; //玩家id
  329. int32 level = 2;
  330. int32 vip_level = 3;
  331. int32 gender = 4; //gender
  332. int32 job_id = 5; //config id [JobCfg id]
  333. string nick_name = 6; //玩家昵称
  334. FashionData fashion_data = 7; //时装数据
  335. int32 action_id = 8; //是否是npc 非0表示根据action_id来显示
  336. int32 head_id = 9; // 称号id
  337. int32 img_id = 10; //头像ID
  338. int32 head_frame_id = 11; //头像框ID
  339. int32 fight_power = 12; //战斗力(历史最高战力)
  340. int32 from_zone = 20; //逻辑区服
  341. int32 real_zone = 21; //服务器使用
  342. }
  343. //玩家详细信息
  344. message OtherPlayerDetailInfo{
  345. uint64 uid = 1; //玩家id
  346. }
  347. message UnitPosAndDir {
  348. uint64 uid = 1;
  349. Vector3 pos = 2;
  350. Vector3 dir = 3;
  351. bool is_on_ground = 4;
  352. int32 u_type = 5; //单位类型,1玩家,2boss,3其他npc
  353. int32 param_id = 6;
  354. }
  355. ////////////////////////Battle
  356. //快速战斗
  357. message QuickBattleData{
  358. int32 max_times = 1; //最大次数 (解锁次数 + 后续可扩展次数)
  359. int32 day_times = 2; //当日领取次数
  360. uint64 draw_time = 3; //上一次领取时间
  361. }
  362. message BattleEvilBossData {
  363. int32 pos_idx = 1;
  364. int32 boss_id = 2;
  365. uint64 expire_time = 3; //有过期时间表示boss死亡
  366. int32 reward_evil_exp = 4; //胜利奖励的技能经验
  367. int32 refresh_time = 5;
  368. int32 quality = 6; //品质 1-4
  369. }
  370. message BattleEvilData {
  371. int32 free_count = 1;
  372. bool free_limit = 2; //true表示无限免费次数
  373. int32 challenge_count = 3; //挑战次数用来升级恶魔等级
  374. int32 evil_level = 4; //恶魔等级
  375. repeated BattleEvilBossData boss_list = 5;
  376. repeated KeyValueType quality_challenge_count = 6; //对应恶魔品质完成挑战次数
  377. int32 total_count = 7; //总次数
  378. }
  379. //远征之门
  380. message BattleExpeditionActor {
  381. int32 id = 1;
  382. int32 level = 2;
  383. int32 hp = 3;
  384. int32 sp = 4;
  385. }
  386. message BattleExpeditionReward {
  387. int32 expedition_type = 1;
  388. repeated int32 reward_state = 2; //获取奖励状态宝箱index,从1开始
  389. }
  390. message ExpeditionRankInfo {
  391. int32 rank = 1;
  392. CommonPlayerBriefInfo brief_info = 2;
  393. uint32 score = 3; //当前积分
  394. }
  395. message BattleExpedition {
  396. int32 expedition_type = 1; //当前解锁到的区域地图ID
  397. repeated int32 battle_hero_list = 2; //上阵玩家英雄动态id
  398. int32 total_expedition_num = 3; //历史通关副本区域地图次数
  399. //数据需要隔天清空(关卡数据在挑战关区域地图后可以进行重置)
  400. int32 challenge_num = 4; //剩余挑战次数
  401. int32 cur_expedition_type = 5; //当前挑战的区域地图ID,同一时间只存在一份
  402. repeated int32 finish_expedition_list = 6; //已经完成全部关卡挑战的区域地图ID
  403. repeated BattleExpeditionReward reward_state_list = 7; //获取奖励状态
  404. int32 cur_battle_level = 8; //当前正在挑战的关卡
  405. repeated BattleExpeditionActor boss_list = 9; //挑战bossID
  406. repeated int32 battle_buff_list = 10; //战斗胜利后获得的增强buff列表(选择后的buff)
  407. repeated int32 battle_select_buff_list = 11; //上一关未选择的buff列表
  408. repeated BattleExpeditionActor battle_hero_hp_list = 12; //英雄血量保存万分比
  409. int32 battle_idx = 13; //0表示没有挑战
  410. KeyValueType assist_num = 14; //救助其他玩家次数 key:最大次数 val:已经救助次数
  411. KeyValueType be_assist_num = 15; //被其他玩家救助次数 key:最大次数 val:已经其他玩家救助次数
  412. bool assist_state = 16; //是否处于求救中(发起求助后未被救助) true救助中
  413. uint64 assist_guild_end_time = 17; //公会求助结束时间戳
  414. repeated KeyValueType64 be_assist_uid_list = 18; //救助该玩家的其他玩家(保证只能救助一次)
  415. uint64 assist_time_stamp = 19; //是否处于求救中(发起求助后未被救助) >0 救助中,发起求助的时间
  416. uint32 cur_expedition_score = 20; //当前地图远征积分(隔天重置)
  417. uint32 cur_expedition_score_max = 21; //地图远征积分历史最大值
  418. uint64 expedition_score_reset_time = 22; //系统重置积分时间
  419. uint64 expedition_type_reward = 23; //地图通关宝箱奖励领取状态
  420. }
  421. message RushMap {
  422. uint32 map_score = 1; //推图积分
  423. uint32 bag_score = 2; //礼包积分
  424. uint32 rush_map_id = 3; //推图ID
  425. int32 fight_round = 4; //参与轮次
  426. int32 reward_round = 5; //保底奖励轮次
  427. int32 rank_reward = 6; //上次领取的奖励轮次
  428. }
  429. message RoleBattle {
  430. uint64 last_income_time = 1; //上一次领取收益时间,0表示未初始化
  431. uint32 map_level = 2; //当前场景ID,默认为1
  432. uint32 map_id = 3; //当前地图ID,默认为1
  433. uint32 max_income_time = 4; //最大收益时间
  434. QuickBattleData quick_battle = 5; //快速战斗
  435. //当前领取到的奖励关ID
  436. uint32 reward_map_id = 6;
  437. uint32 reward_map_level = 7;
  438. uint32 reward_map_count = 8; //累计的挑战boss成功次数,用来后续做小目标星星处理
  439. //小地图数据
  440. //恶魔协会
  441. BattleEvilData evil_info = 9;
  442. //远征之门
  443. BattleExpedition expedition_info = 10; //远征之门
  444. uint64 map_level_time = 11; //到达当前关卡时的时间戳(用来做难度衰减)
  445. RushMap rush_map = 12; //推图冲榜
  446. repeated KeyValueType map_challenge_num_list = 13; //关卡挑战次数
  447. // 战斗加速时间(客户端显示根据last_record_battle_acce_time+battle_acce_duration为最大能使用的结束时间戳)
  448. uint64 last_record_battle_acce_time = 14; // 上次记录时的时间
  449. uint64 battle_acce_duration = 15; // 当前剩余的时间
  450. uint32 map_level_hard = 16; //当前场景ID,默认为1
  451. uint32 map_id_hard = 17; //当前地图ID,默认为1
  452. uint32 reward_map_id_hard = 18;
  453. uint32 reward_map_level_hard = 19;
  454. }
  455. message ActorPosition {
  456. uint32 id = 1;
  457. Position pos = 2;
  458. }
  459. message RankPlayerInfo {
  460. uint64 uid = 1; //玩家ID
  461. uint32 map_level = 2; //当前场景ID,默认为1
  462. uint32 map_id = 3; //当前地图ID,默认为1
  463. CommonPlayerBriefInfo brief = 4; //玩家昵称
  464. }
  465. //世界boss列表信息
  466. message WorldBossContentInfo {
  467. int32 cfg_id = 1;
  468. int32 boss_id = 3;
  469. int32 boss_summon_idx = 4; //同一id boss第一次刷新
  470. CommonPlayerBriefInfo brief = 5; //玩家昵称
  471. int32 fighter_num = 6;
  472. uint64 expire_time = 7;
  473. int32 total_hp = 8; //总血量
  474. int32 cur_hp = 9; //当前血量
  475. bool is_fight = 10; //是否参与过挑战
  476. uint64 next_refresh_time = 11; //下次刷新boss时间戳
  477. int32 boss_summon_type = 15; //0普通世界boss 1变身世界boss
  478. }
  479. //世界boss rand点数据
  480. message PointNameInfo{
  481. string name = 1;
  482. int32 point = 2;
  483. uint64 uid = 3;
  484. }
  485. message WorldBossRandPointInfo {
  486. repeated int32 reward_list = 1; //1大奖,2中奖,3参与奖
  487. int32 boss_id = 2; //bossuid
  488. int32 boss_summon_idx = 3; //该boss当前召唤的次数
  489. int32 boss_summon_type = 4; //boss召唤类型
  490. bool isOffline =5; //玩家是否离线
  491. }
  492. ////////////////////////Task
  493. //key value 类型
  494. message TaskProgressType {
  495. int32 key = 1;
  496. int32 value = 2;
  497. int32 state = 3;
  498. uint32 total = 4;
  499. }
  500. message TaskData {
  501. uint32 task_id = 1; //任务ID
  502. repeated TaskProgressType progress = 2; //任务进度
  503. uint32 state = 3; //是否领取任务奖励
  504. uint64 begin_time = 4; //开启该任务时的时间
  505. int32 task_type = 5; //任务类型(日常/周常/主线)
  506. int32 hard_state = 6; //困难模式状态
  507. }
  508. message HeadCond{
  509. int32 head_id = 1; //头像ID
  510. repeated TaskData task_list = 2; //头像进度
  511. }
  512. message RoleHeadCond {
  513. repeated HeadCond conditions = 1; //头像进度
  514. }
  515. message HeroCond{
  516. int32 hero_id = 1; //伙伴ID
  517. repeated TaskData task_list = 2; //伙伴进度
  518. }
  519. message RoleHeroCond {
  520. repeated HeroCond conditions = 1; //伙伴进度
  521. }
  522. message RoleTask {
  523. repeated TaskData task_list = 1; //任务列表
  524. repeated ChangeJob condition = 2; //可转职业条件
  525. RoleHeadCond head_cond = 3; //头像进度
  526. RoleHeroCond hero_cond = 4; //伙伴进度
  527. KeyValueType daily_task_score = 5; //活跃度/活跃度对应的奖励,按位处理(完成任务累加的积分)
  528. KeyValueType week_task_score = 6;
  529. //任务通用累计计数
  530. uint64 total_add_zeny = 7; //累计获得的zeny数量
  531. int32 accumulative_card_mvp = 8; //累计收集获得不同种类,MVP的卡片{X}张
  532. uint64 latest5_hour_time = 9;
  533. uint64 latest_week5_hour_time = 10;
  534. repeated KeyValueType type_rec_count = 11;
  535. }
  536. message SlotFightPower {
  537. int32 hero_id = 1; //伙伴ID
  538. uint64 hero_fight_power = 2; //伙伴战斗力
  539. uint64 pet_fight_power = 3; //宠物战斗力
  540. }
  541. message FightPowerData {
  542. uint32 total_fightpower = 1; //主角总战力
  543. repeated SlotFightPower slot_fightpower = 2; //所有英雄的战力
  544. uint32 pet_bond_fightpower = 3; //羁绊战力
  545. repeated SlotFightPower actor_fightpower = 4; //英雄/宠物自身战力
  546. }
  547. ////////////////////////Arena
  548. message RushArena {
  549. int32 rush_round = 1; //冲榜轮次
  550. int32 count = 2; //战斗次数
  551. int32 reward = 3; //是否领奖
  552. int32 rank_reward = 4; //上次领取的奖励轮次
  553. }
  554. message ArenaInfo {
  555. int32 challenge_count = 1; //剩余挑战次数
  556. int32 reward_count = 2; //剩余积分获得次数
  557. int32 buy_count = 3; //剩余购买次数
  558. int32 score = 4; //积分
  559. int32 win_count = 5; //胜利次数
  560. int32 total_count = 6; //总挑战次数
  561. int32 old_score = 7; //上一赛季积分
  562. int32 win_streak = 8; //连胜
  563. int32 failed_streak = 9; //连败
  564. uint64 last_challenge_player = 10; //最后一次匹配的玩家
  565. repeated int32 self_hero_list = 11;
  566. int32 arena_season_id = 12; //玩家参与赛季ID(用户获取奖励)
  567. uint64 last_arena_season_time = 13; //参加赛季时间
  568. //历史记录换赛季不清空
  569. int32 record_win_count = 14;
  570. int32 record_total_count = 15;
  571. RushArena rush_arena = 16; //英灵殿冲榜
  572. int32 arena_season_id_reduce = 17; ////玩家参与赛季ID(降段位使用)
  573. }
  574. //道场排行信息
  575. message ArenaRankInfo {
  576. int32 rank = 1;
  577. CommonPlayerBriefInfo brief_info = 2;
  578. int32 score = 3; //当前积分
  579. }
  580. message RoleArena {
  581. ArenaInfo arena = 1; //道场
  582. }
  583. ////////////////////////mail
  584. message MailContent {
  585. int32 id = 1; //动态id
  586. int32 config_id = 2; //邮件配置id
  587. int32 type = 3; //邮件类型
  588. repeated KeyValueType reward_list = 4; //附件资源
  589. uint64 begin_time = 5; //获得邮件时间戳
  590. uint64 expire_time = 6; //结束时间戳
  591. //0未读取 1已读取 | 00未获取 10已获取 | 000 未删除 100 已删除
  592. int32 state = 7; //邮件状态 第1位标识读取状态,第2位标识附件获取状态 第3位表示删除状态
  593. repeated int32 param_list = 8; //邮件参数列表
  594. string title = 9;
  595. string content = 10;
  596. }
  597. message RoleMail {
  598. repeated MailContent mail_list = 1;
  599. int32 max_mail_id = 2;
  600. int32 curr_global_mail_id = 3; //领取webgm发送的奖励
  601. }
  602. ////////////////////////ReadInfo 小红点数据
  603. message RoleRed {
  604. bool is_unread_mail = 1; //当前是否拥有为读取邮件
  605. }
  606. ////////////////////////Competition 赛季玩法
  607. //赛季结算信息
  608. message CompetitionRewardInfo {
  609. int32 reward_idx = 1; //结算次数序号
  610. uint64 reward_end_tme = 2; //结算的结束时间(数据存时不使用,发送数据时使用)
  611. //参数说明
  612. //1,2赛季类型,对应档位礼包id
  613. repeated int32 param_list = 3;
  614. }
  615. //历史赛季信息
  616. message CompetitionInfo {
  617. int32 competition_id = 1; //CompetitionPeriodCfg中的CompetitionId
  618. uint64 cur_end_time = 2; //结束时间
  619. repeated CompetitionRewardInfo reward_info_list = 3; //周期结算信息
  620. int32 com_param = 4; //当前赛季系统对应的参数(二类型赛季表示积分)
  621. uint64 com_param_add_time = 5; //添加积分时的时间戳(用来判断下次添加时是否还生效)
  622. //显示超过进度使用
  623. int32 self_rank = 6; //当前排名
  624. int32 total_rank = 7; //总人数
  625. //下一档积分差距
  626. int32 next_com_score = 8;
  627. int32 last_com_score = 9; //玩家在第一档时,第二档的第一名(也就是第二名)
  628. }
  629. message DivineInfo {
  630. //占星
  631. repeated int32 cur_stars = 1; //当前星星
  632. int32 failed_count = 2; //当前连败次数
  633. }
  634. //每日领奖数据
  635. message DaySupplyData {
  636. uint64 begin = 1; //领奖开始
  637. uint64 end_index = 2; //领奖结束
  638. bool draw = 3; //是否领奖
  639. }
  640. //粉丝投票数据
  641. message FansVoteData {
  642. string name = 1; //名字
  643. int32 rank = 2; //排名
  644. int32 score = 3; //分数
  645. }
  646. //箱子排名数据
  647. message FansBoxData {
  648. uint64 uid = 1; //uid
  649. int32 box = 2; //箱子数量
  650. int32 rank = 3; //排名
  651. }
  652. //排名数据
  653. message FansRankData {
  654. uint64 uid = 1; //uid
  655. int32 score = 2; //分数
  656. int32 rank = 3; //排名
  657. }
  658. message FansVoteDetail {
  659. uint64 uid = 1; //uid 投票人
  660. uint64 vote_time = 2; //time 投票时间
  661. int32 ticket_count = 3; //ticket 票数
  662. }
  663. //请求自己的粉丝榜单
  664. message IdolFansInfo {
  665. repeated FansVoteDetail fans_list = 1;
  666. }
  667. message IdolInfo {
  668. repeated KeyValueType64 vote_data = 1; //uid 投票目标, value 票数, value2 领奖标记
  669. repeated int32 day_reward = 2; //每日奖励领取
  670. bool join_competition = 3; //参加活动标记
  671. int32 box_score = 4; //购买箱子分数
  672. uint64 first_begin = 5; //第一次领奖开始
  673. uint64 first_end = 6; //第一次领奖结束
  674. uint64 second_begin = 7; //第二次领奖开始
  675. uint64 second_end = 8; //第二次领奖开始
  676. }
  677. message PlayerShowData {
  678. uint64 uid = 1;
  679. RoleBase role_base = 2;
  680. HeroData hero_data = 3; //主角数据
  681. }
  682. message IdolSeasonData {
  683. //前三名数据
  684. repeated PlayerShowData detail_list = 1; //详细信息列表
  685. //前三名的票数
  686. repeated FansRankData vote_list = 2; //前三名数据
  687. repeated int32 day_reward = 3; //每日奖励领取
  688. uint64 first_begin = 4; //第一次领奖开始
  689. uint64 first_end = 5; //第一次领奖结束
  690. uint64 second_begin = 6; //第二次领奖开始
  691. uint64 second_end = 7; //第二次领奖结束
  692. bool has_box_reward = 8; //是否有箱子奖励(有人买了箱子就显示)
  693. }
  694. message FansVoteRewardData {
  695. uint64 uid = 1;
  696. repeated KeyValueType64 idol_list = 2; //key idoluid, value score
  697. }
  698. message RoleCompetition {
  699. CompetitionInfo cur_competition = 1; //正在进行的赛季
  700. int32 reward_competition_id = 2; //当前获取到的赛季奖励ID
  701. int32 reward_competition_sub_id = 3; //当前赛季内结算周期对应奖励
  702. DivineInfo divine = 4; //占星数据
  703. IdolInfo idol = 5; //偶像季数据
  704. }
  705. ////////////////////////social好友
  706. //每次上线时需要重新加载
  707. message RoleFriend {
  708. repeated uint64 sub_list = 1; //关注列表
  709. repeated uint64 fans_list = 2; //被关注列表(粉丝列表)
  710. repeated uint64 black_list = 3; //黑名单列表
  711. }
  712. message RoleSocial {
  713. RoleFriend friendInfo = 1; //friend info
  714. }
  715. ////////////////////////common
  716. //战斗玩家数据
  717. message FightRoleInfo {
  718. bool is_robot = 1; //是否是机器人
  719. CommonPlayerBriefInfo brief_info = 2;
  720. //系统数据
  721. int32 job_level = 3; //职业等级
  722. repeated KeyValueType attr_list = 4; //属性点添加列表
  723. FashionData fashion_data = 5; //时装数据
  724. repeated HeroData hero_data_list = 6; //主角/伙伴数据(对应的上阵玩家数据)
  725. int32 max_fight_power = 7; //玩家历史最高战力
  726. repeated PetData battle_pet_list = 8; //上阵宠物数据
  727. int32 change_play_id = 9; //是否是变身状态(<=0未变身)
  728. int32 repress_skill_pvp_val = 10; //技能竞技压制
  729. }
  730. message ChatMessageInfo {
  731. string message = 1;//消息内容
  732. uint64 send_time = 2; //秒为单位,发送聊天时间
  733. int32 sub_type = 3; //子类型,显示不同系统消息
  734. }
  735. message ChatPlayerBriefInfo {
  736. uint64 uid = 1; //玩家唯一ID
  737. string nick_name = 2; //玩家nickname
  738. int32 img_id = 3; //头像ID
  739. int32 config_id = 4; //职业配置表id
  740. int32 level = 5; //等级
  741. int32 head_frame_id = 6; //头像框ID
  742. int32 gender = 7; //性别
  743. int32 vip_level = 8; //VIP等级
  744. int32 head_id = 9; //称号di
  745. }
  746. message CommonPlayerBriefInfo {
  747. uint64 uid = 1; //玩家唯一ID
  748. string nick_name = 2; //玩家nickname
  749. int32 img_id = 3; //头像ID
  750. int32 gender = 4; //性別
  751. int32 level = 5; //等级
  752. int32 config_id = 6; //职业ID
  753. int32 fight_power = 7; //战斗力(历史最高战力)
  754. bool online_state = 8; //玩家在线状态
  755. uint64 online_time = 9; //玩家最后在线时间(上线时也会更新该事件)
  756. int32 tower_level = 10; //爬塔层数
  757. uint64 tower_time = 11; //当前塔通关时间
  758. int32 map_level_id = 12; //当前地图关卡
  759. uint64 battle_record_id = 13;
  760. int32 head_frame_id = 14; //头像框ID
  761. int32 vip_level = 15; //vipLevel
  762. int32 select_zone = 16; //登录所在的区服
  763. int32 head_id = 17; // 称号id
  764. //后续字段不做保存操作
  765. float total_recharge = 30; //累计充值
  766. uint64 last_recharge_time = 31; //最近充值时间
  767. uint64 rmb = 32;
  768. uint64 zeny = 33;
  769. uint32 max_fight_power = 34;
  770. string daochang100_tips = 35; //设置口号
  771. }
  772. message PlayerStateInfo {
  773. uint64 uid = 1; //玩家唯一ID
  774. bool online = 2; //true在线,false离线
  775. }
  776. message SystemMessage {
  777. int32 type = 1; //公告类型 1通关 2获得伙伴 3宝箱 4稀有道具
  778. string nick_name = 2; //玩家nickname
  779. repeated int32 param_id = 3; //通用参数ID
  780. uint64 send_time = 4; //秒为单位,发送消息时间
  781. }
  782. message MessageContentInfo {
  783. int32 type = 1; //消息类型1私人聊天,2世界频道聊天
  784. ChatPlayerBriefInfo from_id = 2;
  785. ChatMessageInfo message = 3; //消息内容
  786. uint64 target_id = 4; //targetId显示该私聊信息
  787. repeated int32 param_list = 5;
  788. }
  789. message RoleChat {
  790. repeated ChatPlayerBriefInfo offline_msg_player_list = 1; //离线消息玩家ID列表
  791. }
  792. message BuyInfo {
  793. int32 goods_id = 1; //道具配置ID
  794. int32 buy_num = 2; //道具购买数量
  795. uint64 buy_time = 3; //道具购买时
  796. int64 ref_time = 5; //购买刷新时间refresh_time
  797. }
  798. //黑市类型商店数据
  799. message SpecialShop {
  800. int64 refresh_time = 1; //上次刷新时间
  801. repeated int32 goods_list = 2; //刷新的商品列表
  802. int32 refresh_count = 3; //刷新次数
  803. }
  804. message ShopBuyInfo {
  805. int32 goods_type = 1; //商店ID
  806. repeated BuyInfo item_info = 2; //购买ixinxi
  807. SpecialShop ref_data = 3; //黑市信息
  808. }
  809. message ShopItem {
  810. int32 goods_id = 1; //道具配置ID
  811. int32 price = 3; //原价
  812. int32 cur_price = 4; //现价
  813. int32 dispercent = 6; //折扣比例
  814. bool hot = 7; //热销
  815. int32 limit_type = 9; //限购类型
  816. int32 count = 10; //限购数量
  817. int32 circle = 11; //循环时间
  818. int64 start_time = 13; //开始时间
  819. int64 end_time = 14; //结束时间
  820. int32 hd_item_id = 15; //活动指定掉落道具
  821. }
  822. message ShopData {
  823. int32 goods_type = 1; //商店ID
  824. repeated ShopItem item_info = 2; //道具信息
  825. repeated BuyInfo buy_info = 3; //购买ixinxi
  826. int64 refresh_time = 4; //下一次刷新时间(黑市商店)
  827. int32 refresh_count = 5; //刷新次数
  828. int64 day_end = 6; //日结束时间戳
  829. int64 week_end = 7; //周结束时间戳
  830. }
  831. message ShopList {
  832. repeated ShopData data = 1;
  833. }
  834. //战斗玩家数据
  835. message ViewRoleInfo {
  836. uint64 id = 1; //玩家id
  837. CommonPlayerBriefInfo brief = 2; //玩家信息
  838. HeroData role_hero = 3; //玩家伙伴信息
  839. RoleHero hero = 4; //玩家主角信息
  840. RoleFashion fashion = 5; //时装
  841. repeated KeyValueType attr_list = 6; //属性点添加列表
  842. FashionData fashion_data = 7; //时装数据
  843. int32 danScore = 8; //段位
  844. repeated int32 param_list = 9; //赛季相关
  845. string guild_name = 10; //公会名字
  846. repeated PetData pet_list = 11; //宠物列表(上阵的)
  847. }
  848. message ShopCost{
  849. int32 shop_type = 1;
  850. int32 res_type = 2;
  851. uint32 res_count = 3;
  852. }
  853. message RoleShop {
  854. repeated ShopBuyInfo info = 1; //商店购买信息
  855. int32 total_buy_num = 2; //商店总购买次数
  856. repeated ShopCost cost_res = 3; //商店特定货币消耗
  857. }
  858. message CurRoundSign {
  859. int64 last_sign = 1; //最近一次签到时间
  860. }
  861. //签到相关
  862. message SignUp{
  863. int32 sign_round = 1; //签到轮次
  864. int32 cur_day = 2; //当前签到天数
  865. CurRoundSign cur_sign_info = 3; //当前轮次签到信息
  866. }
  867. //活动数据
  868. message RoleActivity {
  869. SignUp sign_info = 1; //签到活动
  870. //精彩活动
  871. uint64 cur_day_end_time = 2; //当前天结束时间戳
  872. repeated ActivitiesDetailData activity_data_list = 3;
  873. //充值活动
  874. //首充大礼包时间(达到给定数值记录时间)
  875. uint64 first_charge_time = 4; //非0表示可以进行奖励领取
  876. int32 first_charge_reward_state = 5;
  877. //超值礼包数据
  878. repeated ActivitiesUnlockRechargeData unlock_charge_list = 6;
  879. repeated KeyValueType unlock_charge_has_list = 7; //已经触发的超值礼包的次数
  880. repeated int32 expired_activity_list = 8; //过期或者已经删除的活动(次数) = 9;
  881. //服务器Load时使用
  882. repeated SystemMessage act_msg_list = 10; // 活动内的操作消息(砸蛋奖励获取消息)
  883. }
  884. ///精彩活动
  885. message ActivitiesDetailData {
  886. int32 activities_id = 1;
  887. int32 activities_type = 2;
  888. uint64 start_time = 3;
  889. uint64 end_time = 4; //活动结束时间(服务器使用)
  890. int32 cur_day = 5; //根据开始时间计算的当前天数
  891. //连续登录活动奖励获取状态
  892. repeated KeyValueType login_reward_list = 6;
  893. //14日目标任务
  894. ActivitiesFortnightDays fortnight_days = 7;
  895. //充值达到百元大礼包时的时间戳
  896. uint64 param_time = 8; //非0表示可以进行奖励领取
  897. int32 reward_state = 9; //奖励领取状态
  898. //集字活动
  899. repeated ActivitiesCollectionData collection_list = 10;
  900. //好感度数据(3.8活动)
  901. ActivitiesLikabilityData likability_data = 11;
  902. repeated TaskData king_task = 12; //国王盛宴任务
  903. uint32 fighting_target = 13; //开启时战力
  904. //兑换活动
  905. repeated ExchangeData exchange_list = 14;
  906. //活动转盘
  907. ActivityWheelData wheel_data = 15; //
  908. //签到活动
  909. ActivitySignIn sign_data = 16;
  910. // bt RO币累计活动
  911. ActivityBTROCoin bt_rocoin_data = 20;
  912. // 真/假每日累计充值活动
  913. repeated TaskData bt_zhenjia_recharge_task_list = 21;
  914. //repeated SystemMessage act_msg_list = 22; // 活动内的操作消息(砸蛋奖励获取消息)
  915. }
  916. message ActivityBTROCoin {
  917. repeated TaskData daily_task_list = 1;
  918. repeated TaskData week_task_list = 2;
  919. uint64 week_day_end_time = 3; // 周累计活动下次刷新时间
  920. }
  921. message ActivitySignIn {
  922. uint64 next_sign_time = 1; // 下次签到时间戳
  923. int32 sign_days = 2; // 已签到次数
  924. }
  925. //活动转盘
  926. message ActivityWheelData {
  927. //转盘
  928. repeated WheelRewardItemInfo wheel_reward_item_list = 1; //奖励物品
  929. bool wheel_open = 2; //是否开启本轮,false表示关闭
  930. int32 wheel_refresh_num = 3; //每轮的第几次刷新
  931. int32 template_idx = 4; //模板id
  932. int32 wheel_num = 5; //抽取次数
  933. int32 wheel_idx = 6; //最后一次抽奖停留的位置(全部获取奖励该数值为0)
  934. repeated WheelLogData log_list = 7; //转盘大奖日志(自己)
  935. }
  936. message ExchangeData {
  937. int32 id = 1;
  938. int32 exchange_num = 2; //目前已经兑换次数
  939. }
  940. message ExchangeInfo {
  941. int32 condition_id = 1;
  942. repeated KeyValueType cost_item = 2;
  943. }
  944. message ActivitiesData {
  945. int32 id = 1; //配置id
  946. int32 type = 2; //活动类型
  947. uint64 end_time = 3; //活动结束时间戳
  948. string bg = 4; //背景图片地址
  949. }
  950. //14日目标任务(7天重置一次,显示7天数据)
  951. message ActivitiesFortnightDays {
  952. int32 task_score = 1; //任务获取到的积分
  953. uint32 task_score_reward = 2; //任务积分奖励获取状态(位处理)
  954. repeated TaskData task_list = 3; //7天任务列表(不会有重复ID)
  955. }
  956. //超值礼包数据
  957. message ActivitiesUnlockRechargeData {
  958. int32 activities_id = 1; //超值礼包数据ID
  959. uint64 start_time = 2;
  960. uint64 end_time = 3; //活动结束时间
  961. }
  962. message ActivitiesCollectionData {
  963. int32 id = 1;
  964. int32 reward_num = 2; //目前已经兑换次数
  965. bool no_notice = 3; //不提醒 默认为false
  966. }
  967. //好感度数据
  968. message ActivitiesLikabilityData {
  969. int32 level = 1; //等级
  970. uint32 param = 2; //当前数值
  971. }
  972. message FriendTowerInfo {
  973. int32 tower_level = 1; //塔层数
  974. repeated CommonPlayerBriefInfo infos = 2; //好友简介
  975. }
  976. message RushTower {
  977. int32 rush_round = 1; //冲榜次数
  978. int32 count = 2; //战斗次数
  979. int32 reward = 3; //是否领奖
  980. int32 rank_reward = 4; //上次领取的奖励轮次
  981. }
  982. message RoleTower{
  983. int32 now_tower_level = 1; //当前可爬塔层数,默认为1
  984. int64 now_tower_time = 2; //当前爬塔时间
  985. RushTower rush_tower = 3; //爬塔冲榜数据
  986. uint64 sys_reward_time = 4; //获取系统补偿奖励(印记奖励)时间戳
  987. uint64 tower_level_day_reward_time = 5; // 每天馈赠奖励可领取时间戳
  988. }
  989. message RefusedApply{
  990. uint64 guild_id = 1; //公会ID
  991. int64 apply_time = 2; //连续被拒绝3次时间
  992. }
  993. message DayApply{
  994. uint64 guild_id = 1; //公会ID
  995. int64 apply_time = 2; //连续被拒绝3次时间
  996. }
  997. message TowerBriefInfo {
  998. CommonPlayerBriefInfo common_info = 1;
  999. int32 battle_time = 2;
  1000. int32 battle_version = 3;
  1001. }
  1002. message RecommendGuild {
  1003. uint64 guild_id = 1; //公会列表
  1004. int32 level = 2; //公会等级
  1005. int64 active_time = 3; //活跃时间
  1006. uint32 active = 4; //活跃度
  1007. }
  1008. message RecommendSet {
  1009. repeated RecommendGuild guild = 1;
  1010. }
  1011. //=============================== 公会 ====================================
  1012. //客户端请求: 公会基础信息:成员简介
  1013. message MemberBrief {
  1014. uint64 uid = 1; //公会成员ID
  1015. int64 offline_time = 2; //离线时间
  1016. int32 title = 3; //职位
  1017. }
  1018. //客户端请求: 公会基础信息:公会简介
  1019. message GuildNotifyData {
  1020. GuildBrief brief = 1; //公会简介
  1021. int32 mem_count = 2; //成员数量
  1022. bool is_apply = 3; //是否申请过
  1023. bool cp_num = 4; //贡献点
  1024. }
  1025. //客户端请求: 成员详细信息
  1026. message MemberInfo {
  1027. uint32 total_active = 1;
  1028. CommonPlayerBriefInfo brief = 2;
  1029. }
  1030. message GuildBossLogDetial {
  1031. GuildFightLog fight_log = 1; //boss战斗日志
  1032. CommonPlayerBriefInfo info = 2; //
  1033. }
  1034. message GuildBossData {
  1035. uint32 boss_id = 1; //bossId
  1036. uint64 fight_time = 2; //boss战斗截止时间
  1037. uint64 fight_cd_time = 3; //结算截止时间
  1038. }
  1039. //公会存库======开始
  1040. message GuildLog{
  1041. int32 op_title = 1; //操作人官职
  1042. string op_name = 2; //操作人名字
  1043. int32 be_op_title = 3; //备操作人官职
  1044. string be_op_name = 4; //被操作人名字
  1045. int32 event_type = 5; //事件类型
  1046. uint64 event_time = 6; //事件发生时间
  1047. }
  1048. message GuildLogSet {
  1049. repeated GuildLog guild_log = 1;
  1050. }
  1051. message GuildMember{
  1052. uint64 member_id = 1; //UID
  1053. int32 title = 2; //官职0:玩家, 1:副会长,2:会长
  1054. int64 offline_time = 3; //下线时间,0 表示在线
  1055. repeated KeyValueType64 active_info = 4; //活跃度Key:时间, value:活跃度
  1056. uint64 add_guild_time = 5; //进入(创建)公会时间
  1057. }
  1058. message MemberData {
  1059. uint64 pre_id = 1; //会长ID
  1060. repeated uint64 vice_pre_id = 2; //副会长ID
  1061. repeated GuildMember member_info = 3; //公会成员信息
  1062. uint64 kick_time = 4; //上次踢人时间
  1063. int32 kick_num = 5; //踢人数量
  1064. }
  1065. message GuildBrief {
  1066. uint64 guild_id = 1; //公会ID
  1067. string guild_name = 2; //公会名字
  1068. int32 guild_badge = 3; //公会徽章
  1069. int32 guild_level = 4; //公会等级
  1070. uint32 guild_active = 5; //公会活跃值
  1071. }
  1072. message GuildBase {
  1073. GuildBrief guild_brief = 1; //公会简介信息
  1074. uint32 day_active = 2; //当天活跃度
  1075. uint32 guild_exp = 3; //公会经验值
  1076. int64 active_time = 4; //最后一次活跃值时间
  1077. int32 recruit_type = 5; //招人类型(是否可以直接入会)
  1078. int32 recruit_level = 6; //入会等级
  1079. string notice = 7; //公会公告
  1080. string recruit_notice = 8; //招人公告
  1081. }
  1082. message DemonDamage {
  1083. uint64 uid = 1;
  1084. uint64 damage = 2;
  1085. uint64 fight_time = 3;
  1086. }
  1087. message GuildDemon {
  1088. int32 cur_demon_id = 1;
  1089. uint64 total_damage = 2;
  1090. repeated DemonDamage damage_list = 3;
  1091. uint64 refresh_time = 4;
  1092. }
  1093. message GuildActiveInfo{
  1094. uint32 active_value = 1; //我的活跃值
  1095. int32 day_active_value = 2; //当天活跃值
  1096. int64 active_time = 3; //前一次活跃时间
  1097. }
  1098. message RoleApplyInfo{
  1099. repeated DayApply day_apply = 1; //日常被拒
  1100. repeated RefusedApply refused = 2; //被连续拒绝的公会
  1101. }
  1102. message GuildBossTickTime {
  1103. uint32 bossId = 1; //bossId
  1104. int32 fight_count = 2; //战斗次数
  1105. uint64 refresh_time = 3; //刷新时间
  1106. }
  1107. //公会战个人信息
  1108. message GuildBattle {
  1109. int32 reward_round = 1; //奖励轮次
  1110. int32 mvp_reward_round = 2; //MVP奖励轮次
  1111. int32 challenge_num = 3; //战斗次数
  1112. }
  1113. message GuildDemonReward{
  1114. uint64 total_damage = 1;
  1115. int32 demon_id = 2;
  1116. repeated DemonDamage damage_list = 3;
  1117. }
  1118. message DemonInfo {
  1119. int32 free_fight_count = 1; //免费战斗次数
  1120. int32 buy_fight_count = 2; //购买了的次数
  1121. int32 use_fight_count = 3; //当天使用次数
  1122. uint64 refresh_time = 4; //公会demon刷新时间
  1123. uint64 last_fight_time = 5; //最近一次战斗时间
  1124. }
  1125. message RoleGuild{
  1126. uint64 guild_id = 1; //当前公会ID
  1127. GuildActiveInfo guild_active = 2; //公会信息
  1128. RoleApplyInfo guild_apply = 3; //公会申请信息
  1129. int32 quit_num = 4; //总退会次数
  1130. int64 next_join = 5; //下一次入会时间
  1131. repeated GuildBossTickTime boss_fight = 6; //boss战斗数据
  1132. string guild_name = 7; //公会名字
  1133. uint64 elite_boss_cd = 8; //精英bossCD
  1134. GuildBattle guild_battle = 9; //公会战个人数据
  1135. DemonInfo demon_info = 10; //公会魔王
  1136. }
  1137. message GuildIdex {
  1138. uint64 guild_id = 1; //公会ID
  1139. }
  1140. message RushRoundData {
  1141. int32 rush_id = 1; //冲榜序号
  1142. uint64 start_time = 2; //冲榜开始
  1143. uint64 close_time = 3; //冲榜结束
  1144. uint64 reset_time = 4; //冲榜重置
  1145. }
  1146. message RushData {
  1147. int32 rush_id = 1; //冲榜序号
  1148. int32 rush_stage = 2; //冲榜阶段
  1149. repeated uint64 reward_list = 3; //已领取奖励列表
  1150. repeated RushRoundData round_data = 4; //轮次信息
  1151. }
  1152. message GuildFightLog {
  1153. uint64 uid = 1; //uid
  1154. uint64 fight_time = 2; //战斗时间
  1155. uint32 damage = 3; //伤害值
  1156. }
  1157. message GuildFight {
  1158. uint64 uid = 1; //uid
  1159. uint32 damage = 2; //伤害值
  1160. }
  1161. message GuildBossInfo {
  1162. GuildFight max_dam = 1; //最大伤害
  1163. repeated GuildFightLog fight_log = 2; //战斗日志
  1164. uint64 refresh_time = 3; //召唤时间
  1165. int32 boss_state = 4; //boss状态
  1166. }
  1167. message GuildBoss {
  1168. uint64 guild_id = 1; //当前公会ID
  1169. repeated GuildBossInfo day_boss = 2; //boss
  1170. }
  1171. message RoleApplayData {
  1172. repeated uint64 apply_guild = 1; //个人申请列表
  1173. }
  1174. message GuildApplayData {
  1175. repeated uint64 apply_guild = 1; //公会的申请列表
  1176. }
  1177. //公会战个人数据
  1178. message GuildBattleSelfData {
  1179. uint64 uid = 1;
  1180. uint64 guild_id = 2;
  1181. int32 challenge_num = 3; //剩余挑战次数
  1182. repeated KeyValueType buff_list = 4; //战斗个人buff列表[id,level]
  1183. uint64 reborn_end_time = 5; //复活结束时间
  1184. bool auto_challenge = 6; //是否设置自动购买挑战次数
  1185. bool auto_reborn = 7; //是否设置自动清除复活CD时间
  1186. int32 win_num = 8; //连杀次数
  1187. int32 win_strak = 9; //连续击杀次数
  1188. bool guild_pre = 10; //是否会长
  1189. }
  1190. //公会战位置数据
  1191. message GuildPosIdxData {
  1192. int32 pos_idx = 1;
  1193. uint64 guild_id = 2; //0表示无公会玩家占领(默认状态)
  1194. uint64 uid = 3; //占领该位置玩家(玩家不在该位置但是也也能属于该玩家)
  1195. CommonPlayerBriefInfo owner_brief = 4; //玩家占位时不为空
  1196. uint64 fight_end_time = 5;
  1197. uint64 fight_start_time = 6;
  1198. uint64 challenge_uid = 7; //挑战该占位的玩家
  1199. uint64 fight_ping_time = 8; //保持战斗状态时间 动态存在
  1200. }
  1201. //占领日志
  1202. message GuildBattleLog {
  1203. int32 type = 1; //
  1204. uint64 record_time = 2; //记录时间
  1205. bool state = 3; //true成功
  1206. int32 pos_idx = 4; //占位idx
  1207. string target_player_name = 5;
  1208. uint64 target_guild_id = 6;
  1209. uint64 target_player_uid = 7;
  1210. string challenge_player_name = 8;
  1211. uint64 challenge_guild_id = 9;
  1212. uint64 challenge_player_uid = 10;
  1213. int32 win_steak = 11;
  1214. }
  1215. message GuildBattleBaseData {
  1216. uint64 battle_start_time = 1;
  1217. uint64 battle_end_time = 2;
  1218. repeated KeyValueType64 score_list = 3; //(Key:公会ID, value:积分,value2:道场数量,value3:公会徽章, str_val:公会名次)
  1219. repeated uint64 score_mvp = 4; //积分MVP领奖 //目前1个人,repeated做预留
  1220. repeated uint64 killer_mvp = 5; //击杀MVP领奖 //目前1个人,repeated做预留
  1221. }
  1222. //公会战基础信息
  1223. message GuildBattleBase {
  1224. int32 guild_battle_id = 1; //公会战ID
  1225. uint64 cur_guild_start = 2; //当前公会战开启时间
  1226. int32 guild_battle_state = 3; //当前公会战状态
  1227. uint64 next_stage_begin = 4; //下个公会战状态开始时间
  1228. uint64 next_battle_begin = 5; //下轮公会战开始时间
  1229. uint64 tournament_prepare = 6; //四强赛准备
  1230. uint64 tournament_begin = 7; //四强赛开始
  1231. uint64 tournament_end = 8; //四强赛结束
  1232. uint64 semifinals_prepare = 9; //半决赛准备
  1233. uint64 semifinals_begin = 10; //半决赛开始
  1234. uint64 semifinals_end = 11; //半决赛结束
  1235. uint64 finals_prepare = 12; //决赛准备
  1236. uint64 finals_begin = 13; //决赛开始
  1237. uint64 finals_end = 14; //决赛结束
  1238. uint64 show_end = 15; //展示结束
  1239. int32 is_open = 16; //开关
  1240. int32 reward_state = 17; //奖励阶段
  1241. int32 ban_type = 18; //暂停类型//0:取消封停 1:封停
  1242. }
  1243. message CountTableData {
  1244. int32 battle_index = 1; //索引
  1245. uint64 guild1_id = 2;
  1246. string guild1_name = 3;
  1247. int32 guild1_badge = 4;
  1248. uint64 guild2_id = 5;
  1249. string guild2_name = 6;
  1250. int32 guild2_badge = 7;
  1251. bool win_guild = 8; //true guild1胜,false guild2负
  1252. int32 win_type = 9; //胜利类型
  1253. int32 state = 10; //状态(1:未开始,2:进行中,3:已结束)
  1254. }
  1255. //公会战对阵表
  1256. message GuildCountPartTable {
  1257. repeated CountTableData data = 1; //对阵表数据
  1258. }
  1259. //MVP界面数据
  1260. message GuildBattleDetail {
  1261. uint64 guild_id = 1;
  1262. int32 slot_count = 2; //坑位数量
  1263. int32 score = 3; //积分
  1264. }
  1265. //MVP
  1266. message GuildBattleMvp{
  1267. uint64 uid = 1; //玩家ID
  1268. string name = 2; //玩家名字
  1269. uint64 guild_id = 3; //所属公会
  1270. int32 score = 4; //(类型1:积分,类型2:击杀人数)
  1271. }
  1272. message GuildBattleRank {
  1273. int32 score = 1; //分数
  1274. int32 rank = 2; //排名
  1275. uint64 guild_id = 3; //公会ID
  1276. CommonPlayerBriefInfo info = 4; //玩家简介信息
  1277. }
  1278. //公会贡献点cp
  1279. message GuildBattleCP {
  1280. GuildBrief brief = 1; //公会简介
  1281. int32 mem_count = 2; //成员数量
  1282. uint32 cp_num = 3; //贡献点
  1283. int32 rank = 4; //贡献点排名
  1284. }
  1285. //公会存库======结束
  1286. message GMNoticeInfo {
  1287. string notice_color = 1;
  1288. uint32 notice_speed = 2;
  1289. uint32 notice_count = 3;
  1290. uint32 notice_interval = 4;
  1291. }
  1292. message ReconnectUserData {
  1293. uint32 map_id = 1;
  1294. uint32 map_level = 2;
  1295. }
  1296. message EquipSlotCards {
  1297. int32 slot_id = 1;
  1298. repeated KeyValueType card_slot_info = 2; //[key:卡槽ID,value:卡片ID]
  1299. }
  1300. message BattleRecordInfo {
  1301. uint64 uid = 1; //玩家uid
  1302. uint64 battle_record_id = 2; //战斗唯一ID
  1303. string nick_name = 3; //玩家nickname
  1304. int32 img_id = 4; //头像ID
  1305. int32 gender = 5; //性別
  1306. int32 level = 6; //等级
  1307. int32 config_id = 7; //职业ID
  1308. int32 fight_power = 8; //战斗力当前战斗力
  1309. uint64 record_time = 9; //战斗时间错
  1310. uint32 battle_time = 10; //通关用时
  1311. int32 map_level_id = 12; //当前地图关卡
  1312. int32 record_idx = 13;
  1313. int32 head_frame_id = 14; //头像框ID
  1314. int32 battle_version = 15; //战斗记录版本号(高版本覆盖低版本)
  1315. }
  1316. ////////////////////////宠物
  1317. //设置援助信息(玩家自身设置的援助信息存储)
  1318. message AssistSaveData {
  1319. uint32 pet_id = 1;
  1320. int32 pet_cfg_id = 2;
  1321. uint32 adv_level = 3;
  1322. }
  1323. //羁绊数据结构
  1324. message AssistData {
  1325. uint64 owner_uid = 1; //玩家uid
  1326. string owner_nick_name = 2; //玩家昵称
  1327. repeated PetData pet_info_list = 3;
  1328. }
  1329. message PetBondPosData{
  1330. uint64 owner_uid = 2; //0表示自己对应的宠物,不为0表示其他玩家援助的宠物
  1331. uint32 pet_id = 3;
  1332. uint32 advance_level = 4; //不做存储发送时使用
  1333. int32 pet_cfg_id = 5; //宠物配置ID
  1334. }
  1335. message PetBondData {
  1336. int32 bond_cfg_id = 1; //羁绊列表索引ID
  1337. repeated PetBondPosData bond_list = 2; //设置的羁绊宠物列表
  1338. int32 pet_bond_level = 3; //羁绊激活等级
  1339. }
  1340. //宠物技能
  1341. message PetSkillData {
  1342. int32 config_id = 1;
  1343. int32 level = 2;
  1344. int32 rate = 3;
  1345. }
  1346. message PetData {
  1347. uint32 id = 1; //唯一ID
  1348. int32 config_id = 2; //配置文件ID
  1349. int32 level = 3; //等级
  1350. uint32 advance_level = 4; //进阶等级
  1351. repeated PetSkillData skill_list = 5; //技能列表(0位置表示默认技能)
  1352. int32 hero_id = 6; //出阵英雄id,0表示没有出阵
  1353. int32 param = 7; //服务器端使用
  1354. repeated PetSlotDetailData slot_equip_list = 8; //6个坑位信息(印记(装备),宝石)
  1355. int32 qiyue_hero_id = 9; //归属的契约英雄(放入的哪个英雄的契约槽位)
  1356. //有可能没有(老号)
  1357. repeated KeyValueType battle_attr_list_old = 50; //面板属性数值
  1358. uint32 pet_fight_power = 51; //宠物战斗力
  1359. repeated KeyValueFloat32 battle_attr_list = 52; //面板属性数值
  1360. }
  1361. message AssistIdxData {
  1362. uint32 pet_id = 1;
  1363. uint64 end_cd_time = 2;
  1364. }
  1365. message PetManualST {
  1366. int32 pet_cfg_id = 1;
  1367. uint32 adv_level = 2;
  1368. int32 reward_state = 3;
  1369. }
  1370. message RushPet {
  1371. uint32 total_score = 1; //总积分
  1372. int32 rush_round = 2; //冲榜轮次
  1373. int32 reward_round = 3; //保底奖励轮次
  1374. int32 score_reward_flag = 4; //保底奖励标志
  1375. int32 rank_reward = 5; //上次领取的奖励轮次
  1376. }
  1377. message RolePet {
  1378. int32 max_pet_id = 1;
  1379. repeated KeyValueType pet_manual_list = 2; //宠物图鉴(图鉴奖励状态) 废弃不使用
  1380. repeated AssistIdxData assist_list = 3; //援助宠物
  1381. repeated PetData pet_list = 4; //宠物列表
  1382. repeated PetBondData bond_list = 5; //羁绊(只填充固定字段数据)
  1383. repeated PetManualST pet_manual_reward_list = 6; //宠物图鉴(图鉴奖励状态) [0]表示当前进阶等级 [1]表示获奖状态
  1384. RushPet rush_pet = 7; //宠物冲榜
  1385. repeated PetEquipData pet_equip_list = 8; //宠物印记列表
  1386. }
  1387. message PetAdvAchievementData {
  1388. int32 adv_level = 1;
  1389. uint64 achievement_time = 2;
  1390. uint64 uid = 3;
  1391. }
  1392. message CardCollection {
  1393. uint64 uid = 1; //Uid
  1394. int32 card_level = 2; //卡片等级
  1395. int64 log_time = 3; //记录时间
  1396. }
  1397. ////////////////////////拉新(邀请码)
  1398. message InvitationTaskData {
  1399. uint32 task_id = 1;
  1400. int32 progress = 2; //任务进度
  1401. int32 rewarded_count = 3; //已经获取任务奖励次数
  1402. int32 reward_count = 4; //当前完成任务的次数
  1403. int32 complete_max_count = 5; //最大可完成次数
  1404. }
  1405. //成员贡献给导师的日志
  1406. message InvitationLogData {
  1407. string member_nick_name = 1; //成员昵称
  1408. uint64 process_time = 2;
  1409. uint32 res_val = 3; //资源数量
  1410. }
  1411. message InvitationMemberValData {
  1412. uint64 uid = 1;
  1413. int32 level = 2;
  1414. float total_recharge = 3;
  1415. int32 res_val = 4; //初心值
  1416. bool state = 5; //是否已经被导师删除(true表示已经被删除)
  1417. }
  1418. message RoleInvitation {
  1419. int32 click_num = 1; //拍一拍剩余次数
  1420. uint64 self_invitation_number = 2; //自己的邀请码
  1421. uint64 master_uid = 3; //导师uid
  1422. uint64 master_end_time = 4; //要写邀请码成功学员的CD时间
  1423. repeated uint64 click_member_list = 5; //当前已经拍一拍的成员列表
  1424. repeated InvitationTaskData task_list = 6; //任务列表
  1425. repeated InvitationMemberValData member_uid_list = 7;
  1426. repeated InvitationLogData log_list = 8; //贡献日志(保存最近50条)
  1427. repeated uint64 click_replay_master_list = 9; //拍一拍回应操作
  1428. }
  1429. ////////////////////////抽卡
  1430. message DrawData {
  1431. int32 draw_type = 1; //抽取类型://1:宠物抽卡, 2:卡片抽卡,
  1432. int32 draw_times = 2; //抽取次数
  1433. }
  1434. message RoleDraw {
  1435. repeated DrawData draw_system = 1; //抽取功能
  1436. //历史抽卡次数
  1437. int32 card_draw_total_num = 2;
  1438. int32 pet_draw_total_num = 3;
  1439. int32 skill_equip_draw_total_num = 4;
  1440. }
  1441. //卢恩商品
  1442. message RuneGoods{
  1443. int32 goods_id = 1; //商店ID
  1444. int32 buy_num = 2; //购买数量
  1445. int32 history_buy = 3; //历史购买数量
  1446. int64 end_time = 4; //结束时间//月卡结束时间
  1447. int64 next_reward_time = 5; //下一次领奖时
  1448. }
  1449. //卢恩商店
  1450. message RuneShop {
  1451. int32 shop_id = 1; //商店ID(例如:Rune_Shop_Type_MonthCard)
  1452. int32 sub_shop_id = 2; //商店子类型(例如:Rune_BagShop_Type_Day)
  1453. repeated RuneGoods goods_info = 3; //商品信息
  1454. int64 next_refresh = 4; //下次刷新时间(日,周,月)
  1455. }
  1456. message RuneExplore {
  1457. int32 curLvl = 1; // 等级
  1458. int32 totalExp = 2; // 总经验
  1459. int32 missionExp = 3; // 活跃度经验
  1460. bool bUnlock = 4; // 解锁
  1461. bool fullMaxAward = 5; // 满级领奖
  1462. repeated KeyValueType state = 6; // 奖励状态
  1463. int32 alreadyRune = 7; // 已经结算奖励的关卡
  1464. }
  1465. message RuneBaseData {
  1466. int32 reset_version = 1; //礼包商店,金币页签的重置标记
  1467. bool month_card_modify = 2; //月卡结束时间修正
  1468. int32 used_credit_recharge = 3; // 充值钱包的每日已经使用额度
  1469. int32 max_credit_recharge = 4; // 充值钱包的每日上限额度(例如默认是500)
  1470. bool credit_recharge_limit = 5; // 充值钱包额度无上限(true 表示无上限)
  1471. RuneSpecialPrivilegeData privilege_data = 6; // 特权卡商店
  1472. bool is_pass_check = 7; // RO通行证(true购买,false未购买)
  1473. }
  1474. // 特权卡商店
  1475. message RuneSpecialPrivilegeData {
  1476. int32 special_id = 1; // 特权卡配置ID
  1477. uint64 reward_time = 2; // 当前已经领取的时间戳(0表示可领取,非0表示已经领取)
  1478. uint64 process_time = 3;
  1479. }
  1480. // 卢恩商会
  1481. message RoleRune {
  1482. repeated RuneShop shop_list = 1; //商店列表
  1483. RuneExplore rune_explore = 2;
  1484. RuneBaseData rune_base = 3; //卢恩商店基础数据
  1485. }
  1486. message RushRankTop3{
  1487. string name = 1; //名字
  1488. int32 data = 2; //爬塔:层数,英灵殿:积分, 推图:推图积分
  1489. int32 rank = 3; //排名
  1490. }
  1491. message RushActivityData {
  1492. int32 rush_type = 1; //冲榜类型
  1493. bool in_rush = 2; //是否在冲榜活动
  1494. uint64 next_rush = 3; //下次冲榜开始时间
  1495. int32 stage = 4; //当前冲榜阶段 1:冲榜阶段,2:领奖阶段
  1496. uint64 stage_end = 5; //当前阶段结束时间
  1497. int32 rush_count = 6; //活动次数
  1498. }
  1499. ////////////////////////百人道场
  1500. //type
  1501. //=1占领空白领地
  1502. //=2自身击败机器人守卫占领领地的信息
  1503. //=3自身试图占领他人领地的战斗信息
  1504. //=4他人试图占领我方领地的战斗信息
  1505. //=5自身占领领地达到x小时时显示为
  1506. message DaoChang100Log {
  1507. int32 type = 1; //
  1508. uint64 record_time = 2; //记录时间
  1509. bool state = 3; //true成功
  1510. int32 pos_idx = 4; //占位idx
  1511. string target_player_name = 5;
  1512. string target_guild_name = 6;
  1513. uint64 target_player_uid = 7;
  1514. uint32 reward_time = 8; //占位时间
  1515. }
  1516. //占位奖励处理(玩家对应数据)
  1517. message DaoChang100PosRewardData {
  1518. int32 pos_idx = 1; //位置
  1519. uint64 reward_start_time = 2; //奖励开始时间
  1520. uint64 reward_end_time = 3; //奖励结束时间(主动切换 被动切换时修改该时间)
  1521. }
  1522. //占位信息
  1523. message DaoChang100PosIdxData {
  1524. int32 pos_idx = 1;
  1525. uint64 owner_start_time = 2; //占位开始时间
  1526. uint64 owner_end_time = 3; //占位结束时间
  1527. uint64 owner_protect_end_time = 4; //占位保护结束时间
  1528. CommonPlayerBriefInfo owner_brief = 5; //占位玩家
  1529. int32 owner_robot_id = 6; //机器人则该id不为0
  1530. uint64 fight_end_time = 7; //占位状态 (战斗结束时间)
  1531. uint64 guild_id = 8; //公会ID
  1532. string guild_name = 9; //公会名称
  1533. uint64 refresh_time = 10; //服务器使用
  1534. }
  1535. message WheelRewardItemInfo {
  1536. int32 item_idx = 1; //奖励位置
  1537. int32 item_id = 2;
  1538. int32 item_num = 3;
  1539. int32 reward_type = 4; //1nomal 2mini 3mvp(大奖)
  1540. bool has_reward = 5; //是否已经被获取奖励
  1541. }
  1542. message WheelLogData {
  1543. uint64 log_time = 1;
  1544. string nick_name = 2;
  1545. uint64 uid = 3;
  1546. repeated KeyValueType item_list = 4;
  1547. }
  1548. message RoleDaoChang100 {
  1549. int32 challenge_count = 1; //剩余挑战次数
  1550. int32 challenge_buy_count = 2; //购买剩余挑战次数
  1551. int32 buy_count = 3; //当前购买累计次数
  1552. uint64 base_reward_time = 4; //基础收益开始时间(功能解锁后该字段开始生效),客户端宝箱个数显示使用该时间4; //基础收益开始时间(功能解锁后该字段开始生效),客户端宝箱个数显示使用该时间
  1553. bool log_state = 5; //领地记录变化
  1554. uint64 last_attack_uid = 6; //最后一个攻击自己的其他玩家uid
  1555. string tips_desc = 7; //口号设置
  1556. //道场转盘
  1557. repeated WheelRewardItemInfo wheel_reward_item_list = 10; //奖励物品
  1558. bool wheel_open = 11; //是否开启本轮,false表示关闭
  1559. int32 wheel_refresh_num = 12; //每轮的第几次刷新
  1560. int32 template_idx = 13; //模板id
  1561. int32 wheel_num = 14; //抽取次数
  1562. int32 wheel_idx = 15; //最后一次抽奖停留的位置(全部获取奖励该数值为0)
  1563. }
  1564. message RoleCheatChat {
  1565. repeated uint64 target_id = 1;
  1566. uint64 chat_msg_crc32 = 2;//聊天hashcode
  1567. }
  1568. message RoleStatistic {
  1569. repeated KeyValueType cheat_data = 1;//作弊类型基数
  1570. }
  1571. message KeepSake {
  1572. int32 keep_sake_id = 1; //信物ID
  1573. int32 keep_sake_level = 2; //信物LEVEL
  1574. }
  1575. message RoleKeepSake {
  1576. repeated KeepSake keep_sake = 1; //信物数据
  1577. repeated KeyValueType material = 2; //材料
  1578. }
  1579. message KeepSakeCollection {
  1580. uint64 uid = 1; //Uid
  1581. int64 log_time = 3; //记录时间
  1582. }
  1583. //宠物冲榜信息
  1584. message RushInfo {
  1585. int32 pet_config_id = 1; //宠物configid
  1586. int32 pet_score = 2; //宠物积分
  1587. int32 pet_level = 3; //宠物等级
  1588. int32 total_skill_level = 4; //总技能等级
  1589. int32 quality_score = 5; //品质分数
  1590. int32 level_score = 6; //等级积分
  1591. int32 skill_score = 7; //技能分数
  1592. }
  1593. message RushPetInfo {
  1594. repeated RushInfo info = 1; //宠物数据
  1595. }
  1596. message RushPetData {
  1597. int32 rank = 1; //排名档次
  1598. int32 total_score = 2; //总积分
  1599. string name = 3; //名字
  1600. RushPetInfo pet_info = 4; //宠物数据
  1601. }
  1602. ////////////////////////跨服数据
  1603. message RoleCross {
  1604. RoleYuanHangTrial yuanhangtrial = 1; //远航试炼
  1605. RoleCrossTopTower crosstoptower = 2; //巅峰爬塔
  1606. }
  1607. ////远航试炼
  1608. message RoleYuanHangTrial {
  1609. int32 challenge_num = 1; //当前玩家发起挑战其他玩家的胜利次数(前几次是奖励次数)
  1610. int32 trial_num = 2; //当前已经发起远航试炼次数
  1611. int32 refresh_trial_type = 3; //当前刷新的远航试炼品质
  1612. YuanHangTrialData trial_data = 4; //远航试炼数据(当前或者上一次)
  1613. repeated YuanHangTrialLogData log_list = 5; //挑战被挑战日志记录
  1614. int32 trial_score = 6;
  1615. }
  1616. message YuanHangTrialData {
  1617. uint64 uid = 1;
  1618. int32 zone = 2;
  1619. int32 trial_type = 3; //远航试炼类型(1,2,3,4,5...)
  1620. uint64 end_time_stamp = 4; //本次远航试炼结束时间
  1621. bool reward_state = 5; //是否已经领取过奖励
  1622. uint64 dirty_stamp = 6; //变更时的时间
  1623. int32 be_challenge_num = 7; //被挑战次数
  1624. repeated uint64 be_challenge_uid_list = 8; //挑战该飞艇成功的玩家uid(每个玩家只能成功打劫一次)
  1625. int32 from_real_zone = 9; //來自对应的真实区服
  1626. int32 duration_time = 10; //持续时间(s)
  1627. int32 line_num = 11; //所在赛道
  1628. }
  1629. //type
  1630. //1 你被xxx挑战,失去xxx奖励
  1631. //2 你对xx发起了抢夺,获得了xxx奖励
  1632. //3 你对xx发起了抢夺,但是自己无法获取到奖励
  1633. message YuanHangTrialLogData {
  1634. int32 type = 1;
  1635. uint64 record_time = 2;
  1636. bool state = 3; //true成功
  1637. string target_player_name = 4;
  1638. uint64 target_player_uid = 5;
  1639. int32 target_player_zone = 6;
  1640. int32 trial_type = 7; //当前被攻击的船品质类型
  1641. repeated KeyValueType item_list = 8; //获取/失去的奖励列表
  1642. }
  1643. message CommonRankInfo {
  1644. int32 rank = 1;
  1645. CommonPlayerBriefInfo brief_info = 2;
  1646. int32 score = 3; //当前积分
  1647. }
  1648. //巅峰爬塔
  1649. message RoleCrossTopTower {
  1650. uint64 valid_end_time = 1; //该数据过期结束时间,用来判断是否可以挑战
  1651. repeated TopTowerFightRoleInfo fight_list = 2; //
  1652. }
  1653. message TopTowerFightRoleInfo {
  1654. int32 idx = 1; //[1-10]
  1655. FightRoleInfo fight_info = 2;
  1656. bool reward_state = 3; //是否获胜领取了奖励
  1657. }
  1658. //AOI服务器线路状态
  1659. message ServerStateInfo {
  1660. int32 id = 1; //服务器ID(一个id对应1-10个线,暂定)
  1661. string sid = 2;
  1662. repeated StateDetailDesc state_list = 3;
  1663. int32 max_line_num = 4; //每台服务器最大aoi线路数
  1664. int32 max_space_entity_num = 5; //每条线路最大的玩家数量
  1665. }
  1666. message StateDetailDesc {
  1667. int32 line = 2; //线路编号(1线,2线)
  1668. int32 cur_num = 3; //当前线路在线人数
  1669. }
  1670. ////////////////////////
  1671. message RoleRush {
  1672. RushSkill rush_skill = 1; //技能冲榜
  1673. }
  1674. message RushSkill {
  1675. uint32 total_score = 1; //总积分
  1676. int32 rush_round = 2; //冲榜轮次
  1677. int32 reward_round = 3; //保底奖励轮次
  1678. int32 score_reward_flag = 4; //保底奖励标志
  1679. int32 rank_reward = 5; //上次领取的奖励轮次
  1680. }
  1681. message HeadData{
  1682. int32 head_id = 1; // 称号id
  1683. int32 state = 2; // 当前称号状态 未达成 未激活 佩戴 卸下
  1684. int64 end_time = 3;
  1685. TaskData task_data = 4;
  1686. }
  1687. message RoleHead {
  1688. repeated HeadData heads = 1; //称号任务数据
  1689. }
  1690. message RoleWish {
  1691. repeated WishSlot slots = 1; //称号任务数据
  1692. }
  1693. // 许愿槽位信息
  1694. message WishSlot {
  1695. serverproto.KeyValueType item = 1; // 许愿物品
  1696. int32 src_item =2; // 原物品Id
  1697. int64 end_time = 3;
  1698. bool isOpen = 4;
  1699. bool isLucky = 5; // 是否暴击
  1700. }
  1701. ////////////////////////
  1702. // bt服务器功能结构
  1703. message RoleBT {
  1704. BTBoliData boli_data = 1;
  1705. BTBaseData base_data = 2;
  1706. }
  1707. // bt波利商城
  1708. message BTBoliData {
  1709. int32 level = 1;
  1710. repeated KeyValueType day_reward_list = 2; // 当前选择的特权礼包
  1711. repeated BuyInfo buy_info_list = 3; // 购买商品信息
  1712. uint64 reward_time = 4; // 领取奖励时间(领取就设置)
  1713. uint64 show_time_stamp = 5; // 该系统显示时间戳
  1714. }
  1715. //bt基础数据
  1716. message BTBaseData {
  1717. //bt超值首充
  1718. uint64 first_recharge_time = 1; //解锁后该字段>0,非解锁<=0
  1719. uint32 first_recharge_reward_state = 2; //首充礼包档位奖励获取状态(位处理)
  1720. //bt百元大礼包
  1721. uint64 recharge100_time = 3; //充值解锁百元大礼包的时间戳
  1722. int32 recharge100_reward_day = 4; //可领取哪几天的奖励(1表示可领取第一天奖励,2表示可领取前两天奖励)
  1723. int32 recharge100_reward_state = 5; //已经领取到那一天的奖励(1表示第一天已经领取,2表示领取了1-2天的奖励)
  1724. }
  1725. message Role {
  1726. uint64 id = 1; //玩家id
  1727. RoleBase role_base = 2; //玩家基础信息
  1728. RoleHero role_hero = 3; //玩家伙伴信息
  1729. RoleBag role_bag = 4; //背包
  1730. RoleEquip role_equip = 5; //装备
  1731. RoleChip role_chip = 6; //英雄碎片
  1732. RoleMap role_map = 7; //地图相关信息
  1733. RoleCard role_card = 9; //卡片系统
  1734. RoleFashion role_fashion = 10; //时装
  1735. RoleBattle role_battle = 11; //战斗相关数据
  1736. RoleTask role_task = 12; //任务系统
  1737. RoleChat role_chat = 13; //聊天处理
  1738. RoleRed role_red = 14; //玩家小红点数据
  1739. RoleMail role_mail = 15; //邮件
  1740. RoleCompetition role_competition = 16; //赛季玩法
  1741. RoleShop role_shop = 17; //商店
  1742. RoleActivity role_activity = 18; //活动
  1743. RoleTower role_tower = 19; //爬塔
  1744. RoleGuild role_guild = 20; //公会信息
  1745. RoleDraw role_draw = 21; //抽取系统
  1746. RoleRune role_rune = 22; //卢恩商店
  1747. RoleDaoChang100 role_daochang100 = 23; //百人道场
  1748. RoleStatistic role_statistic = 24; //统计数据
  1749. RoleKeepSake role_keep_sake = 25; //信物
  1750. RoleCross role_cross = 26; //跨服数据(远航试炼)
  1751. RoleRush role_rush = 27;
  1752. RoleSkillEquip role_skill_equip = 28; //神器
  1753. RoleHead role_head = 29; // 称号数据
  1754. RoleWish role_wish = 30; // 许愿宝箱
  1755. RoleBT role_bt = 31; // bt服务
  1756. //RoleBattle role_hard_battle = 32; //困难战斗相关数据
  1757. }