login.proto 152 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750
  1. syntax = "proto3";
  2. package serverproto;
  3. import "user.proto";
  4. message ServerInfo{
  5. string id = 1;
  6. int32 port = 2;
  7. }
  8. //project Service:"gate|game" RouteRule:"pass"
  9. message CSPingReq{
  10. string open_id = 3;
  11. }
  12. message SCPingAck{
  13. }
  14. //游戏登陆操作project Service:"gate" RouteRule:"pass"
  15. message CSLoginReq{ //project game|auth //RouteRule game
  16. string platform = 1; //用户平台
  17. int32 phone_platform = 2; //手机平台 android ios
  18. string platform_token = 3; //平台token验证登陆
  19. string open_id = 4; //平台账号ID
  20. string password = 5; //密码
  21. string crypt_pass = 6; //加密aes串
  22. int32 game_version = 7; //游戏版本号
  23. string ip = 8; //客户端登陆时ip地址
  24. int32 select_zone = 9; //合服使用(先根据IP获取是否存在,不存在则创建)
  25. string sub_platform = 10; //用户平台下的不同分发媒体
  26. }
  27. message SCLoginAck{ //project gate
  28. int32 error = 1; //错误码 0表示无错误
  29. uint64 client_id = 2;
  30. string unisdk_login_json = 3; //网易登录验证回复sdk信息
  31. }
  32. //断线重连
  33. message CSReconnectReq { //project game //RouteRule game
  34. string open_id = 1; //平台账号ID
  35. string platform_token = 2; //平台token验证登陆
  36. string uid = 3; //玩家唯一ID
  37. string crypt_pass = 4; //加密aes串f
  38. string platform = 5; //用户平台
  39. }
  40. message SCReconnectAck {
  41. int32 error = 1; //错误码,OK表示重连成功
  42. ReconnectUserData reconnect_data = 2; //重连成功后返回的信息(暂时没有信息添加)
  43. }
  44. message SCHandShakeNtf{
  45. string crypt_pass = 1; //返回给客户端(login时带回该字符串)
  46. }
  47. //客户端发起创建角色请求
  48. message CSCreateRoleReq { //project game //RouteRule game
  49. string open_id = 1; //平台账号
  50. int32 job_id = 2; //roleCfg配置表ID
  51. int32 sex = 3; //性别
  52. int32 country = 4; //国家
  53. int32 eye = 5; //眼睛
  54. int32 hair = 6; //头发
  55. int32 head = 7; //头饰
  56. int32 hair_avatar = 8; //头发模型
  57. string active_code = 9; //激活码
  58. }
  59. message SCCreateRoleAck {
  60. int32 error = 1; //错误码
  61. uint64 create_role_time = 2; //创建时间
  62. uint64 uid = 3;
  63. int32 gender = 4;
  64. }
  65. //创建流程中发送昵称
  66. message CSNameReq { //project game //RouteRule game
  67. string name = 1;
  68. }
  69. message SCNameAck {
  70. int32 error = 1; //错误码
  71. string name = 2;
  72. }
  73. //玩家启动时需要的基础信息 (后续根据需求来请求数据,暂时做成都发)
  74. message SCStartupInfoNtf {
  75. uint64 server_time = 1; //服务器当前时间戳
  76. uint64 create_time = 2; //创建角色时间
  77. ReconnectInfo reconnect_info = 3; //重连信息(暂时不使用,后续扩展时用)
  78. RoleBase role_base = 4; //玩家基础信息
  79. RoleBag role_bag = 5; //玩家背包信息
  80. RoleHero role_hero = 6; //伙伴信息
  81. RoleEquip role_equip = 7; //准备信息
  82. RoleChip role_chip = 8; //伙伴碎片
  83. RoleSkill role_skill = 9; //技能
  84. RoleCard role_card = 10; //卡片数据
  85. RoleFashion role_fashion = 11; //时装
  86. RoleBattle role_battle = 12; //战斗相关数据
  87. FightPowerData role_fightpower = 13; //战斗力数据
  88. RoleChat role_chat = 14; //聊天处理
  89. RoleTask role_task = 15; //任务相关
  90. RoleRed role_red = 16; //小红点
  91. RoleCompetition role_competition = 17; //赛季玩法信息(主界面显示赛季信息)
  92. RoleMap role_map = 18; //rolemap
  93. RoleTower role_tower = 19; //爬塔
  94. RoleDraw role_draw = 20; //抽取系统
  95. RoleRune role_rune = 21; //卢恩商会
  96. RoleDaoChang100 role_daochang100 = 22; //百人道场
  97. RoleCross role_cross = 23; //跨服数据
  98. RoleSkillEquip role_skill_equip = 24; //神器
  99. RoleWish role_wish_box = 25; //许愿想数据
  100. bool func_disable = 100; //功能屏蔽
  101. uint64 service_start_time = 101; //服务器开服时间
  102. RoleBT role_bt = 102; //bt
  103. }
  104. //客户端没收到多条协议,需要做数据判断,有数据就添加没数据不处理,例如pet_manual
  105. //数据为空客户端不能直接拿空数据覆盖
  106. message SCStartupInfoPetNtf {
  107. RolePet role_pet_info = 1;
  108. }
  109. message SCStartupInfoEquipNtf {
  110. RoleEquip role_equip_info = 1;
  111. }
  112. message SCStartupInfoCardNtf {
  113. RoleCard role_card_info = 1;
  114. }
  115. message SCStartupInfoEndNtf {
  116. }
  117. //获取服务器时间ms
  118. message CSGetServerTimeReq { //project game //RouteRule game
  119. }
  120. message SCGetServerTimeAck {
  121. uint64 server_time = 1; //服务器当前时间戳
  122. }
  123. //退出登录
  124. message SCLogoutNtf {
  125. int32 error = 1; //错误码
  126. }
  127. //服务器踢人
  128. message SCKickOutNtf {
  129. int32 error = 1; //错误码
  130. uint64 ban_end_time = 2; //封号结束时间s
  131. }
  132. //消耗属性点
  133. message CSAddAttrPointReq{ //project game //RouteRule game
  134. repeated KeyValueType attr_list = 1; //属性点添加列表
  135. int32 hero_id = 2; //英雄ID
  136. }
  137. message SCAddAttrPointAck{
  138. int32 error = 1; //错误码
  139. int32 hero_id = 2; //英雄ID
  140. }
  141. //重置属性点
  142. message CSResetAttrPointReq{ //project game //RouteRule game
  143. int32 hero_id = 1; //英雄ID
  144. }
  145. message SCResetAttrPointAck{
  146. int32 error = 1; //错误码
  147. int32 hero_id = 2; //英雄ID
  148. }
  149. //增加素质点
  150. message CSAddQualityPointReq{ //project game //RouteRule game
  151. int32 hero_id = 1; //英雄ID
  152. int32 item_id = 2; //果实Id
  153. }
  154. //增加素质点返回
  155. message SCAddQualityPointAck{
  156. int32 error = 1; //错误码
  157. int32 hero_id = 2; //英雄ID
  158. int32 item_id = 3; //道具Id
  159. }
  160. //战斗力变化通知客户端
  161. message SCFightPowerChagneNtf {
  162. FightPowerData data = 2;
  163. }
  164. //请求激活头像
  165. message CSActiveHeadReq { //project game //RouteRule game
  166. int32 head_id = 1; //头像Id
  167. }
  168. message SCActiveHeadAck {
  169. int32 error = 1;
  170. int32 head_id = 2; //请求激活的头像ID
  171. }
  172. //请求头像信息
  173. message CSHeadInfoReq { //project game //RouteRule game
  174. }
  175. message SCHeadInfoAck {
  176. repeated int32 head_list = 1; //激活的头像列表
  177. RoleHeadCond head_Info = 2; //头像信息
  178. }
  179. //设置头像ID
  180. message CSSetHeadIdReq { //project game //RouteRule game
  181. int32 head_id = 1;
  182. }
  183. message SCSetHeadIdAck {
  184. int32 error = 1; //errorcode
  185. int32 head_id = 2; //请求设置的头像ID
  186. }
  187. //改名
  188. message CSRenameReq { //project game //RouteRule game //confirm
  189. string name = 1;
  190. }
  191. message SCRenameAck {
  192. int32 error = 1; //错误码
  193. string name = 2;
  194. }
  195. message CSChangeHeadFrameReq { //project game //RouteRule game
  196. int32 head_frame_id = 1; //请求设置的头像框ID
  197. }
  198. message SCChangeHeadFrameAck {
  199. int32 error = 1; //errorcode
  200. int32 head_frame_id = 2; //请求设置的头像框ID
  201. }
  202. message CSHeadFrameInfoReq { //project game //RouteRule game
  203. }
  204. message SCHeadFrameInfoAck {
  205. int32 error = 1; //errorcode
  206. repeated HeadFrameData head_frame = 2;
  207. }
  208. message SCHeadFrameChangeNtf {
  209. repeated HeadFrameData head_frame = 1; //到期的头像框
  210. }
  211. message CSUseHeadFrameItemReq { //project game //RouteRule game
  212. uint64 item_id = 1; //背包中动态生成的item_id
  213. uint32 item_num = 2; //使用个数
  214. }
  215. message SCUseHeadFrameItemAck {
  216. int32 error = 1; //错误码
  217. repeated KeyValueType item_list = 2; //头像框转换道具
  218. }
  219. /////////////////////////////////////////////////////////hero
  220. //伙伴培养
  221. message CSHeroLevelUpReq { //project game //RouteRule game
  222. int32 hero_id = 1; //动态生成的id
  223. }
  224. message SCHeroLevelUpAck {
  225. int32 error = 1; //错误码
  226. int32 hero_id = 2;
  227. int32 hero_level = 3;
  228. }
  229. //伙伴进阶
  230. message CSHeroAdvanceReq { //project game //RouteRule game
  231. int32 hero_id = 2; //动态生成的id
  232. }
  233. message SCHeroAdvanceAck {
  234. int32 error = 1; //错误码
  235. int32 hero_id = 2;
  236. int32 advance_level = 3;
  237. }
  238. //伙伴上阵处理
  239. message CSHeroBattleReq { //project game //RouteRule game
  240. int32 hero_id = 1; //当前正在出战的伙伴
  241. bool is_battle = 2; //false下阵,true上阵
  242. }
  243. message SCHeroBattleAck {
  244. int32 error = 1; //错误码
  245. }
  246. //角色等级提升通知
  247. message SCBaseLevelUpNtf {
  248. int32 old_level = 1;
  249. int32 new_level = 2;
  250. }
  251. //角色职业等级提升通知
  252. message SCJobLevelUpNtf{
  253. int32 old_level = 1;
  254. int32 new_level = 2;
  255. }
  256. //用户基础数据变更通知
  257. message SCRoleBaseInfoNtf {
  258. uint64 coin = 1; //玩家金币
  259. uint32 rmb = 2; //钻石
  260. RoleData role_data = 3; //玩家附属属性
  261. repeated KeyValueType res_list = 4; //玩家其他资源列表(不放背包的资源)
  262. int32 repress_skill_pvp_val = 5; //技能竞技压制值
  263. int32 max_credit_recharge = 6; // 充值钱包额度上限值
  264. }
  265. //伙伴信息变更通知
  266. message SCRoleHeroInfoNtf {
  267. repeated HeroData hero_data = 1; //玩家伙伴信息
  268. }
  269. //英雄碎片
  270. message CSHeroChipDecomposeReq { //project game //RouteRule game
  271. repeated int32 chip_type_list = 1; //卡片类型,一键分解时使用
  272. repeated KeyValueType chip_list = 2; //用来分解的道具ID
  273. }
  274. message SCHeroChipDecomposeAck {
  275. int32 error = 1; //错误码
  276. repeated KeyValueType item_list = 2; //分解获得的资源数据
  277. }
  278. //伙伴突破(前面的突破是策划的进阶概念,这个里是突破)
  279. message CSHeroStrengthReq { //project game //RouteRule game
  280. int32 hero_id = 1; //动态生成的id
  281. }
  282. message SCHeroStrengthAck {
  283. int32 error = 1; //错误码
  284. int32 hero_id = 2;
  285. int32 strength_level = 3;
  286. }
  287. //主角转职
  288. message CSHeroChangeJobReq { //project game //RouteRule game
  289. int32 hero_id = 1; //转职的伙伴ID
  290. int32 job_id = 2; //需要转的职业ID
  291. }
  292. message SCHeroChangeJobAck {
  293. int32 error = 1; //错误码
  294. int32 hero_id = 2; //转职的伙伴ID
  295. }
  296. message SCHeroConditinDataNtf{
  297. repeated ChangeJob condition = 1; //可转职业条件
  298. }
  299. //请求伙伴战力
  300. message CSHeroFighPowerReq { //project game //RouteRule game
  301. int32 hero_id = 1; //伙伴ID
  302. }
  303. message SCHeroFighPowerAck {
  304. int32 error = 1; //errorcode
  305. int32 hero_id = 2; //伙伴ID
  306. }
  307. //洗点
  308. message CSHeroResetSkillPointReq { //project game //RouteRule game
  309. int32 hero_id = 1; //洗点的主角或者伙伴
  310. int32 stage = 2; //洗点的阶段
  311. }
  312. message SCHeroResetSkillPointAck {
  313. int32 error = 1; //洗点结果
  314. }
  315. //激活
  316. message CSHeroActiveReq { //project game //RouteRule game
  317. int32 hero_id = 1; //伙伴ID
  318. }
  319. message SCHeroActiveAck {
  320. int32 error = 1; //激活结果
  321. int32 hero_id = 2; //伙伴ID
  322. }
  323. //职业更换
  324. message CSHeroReplaceJobReq { //project game //RouteRule game
  325. int32 hero_id = 1; //唯一ID
  326. int32 job_id = 2; //替换的职业ID
  327. }
  328. message SCHeroReplaceJobAck {
  329. int32 error = 1; //errorcode
  330. int32 hero_id = 2; //唯一ID
  331. int32 job_id = 3; //替换的职业ID
  332. }
  333. /////////////////////////////////////////////////////////
  334. //神器变更通知
  335. message SCSkillEquipChangeNtf{
  336. repeated SkillEquipChangeData skill_equip_change_list = 1; //神器变更数据
  337. bool ignore = 2; //是否屏蔽显示新增神器
  338. }
  339. //神器佩戴
  340. message CSSkillEquipUpReq{ //project game //RouteRule game
  341. int32 hero_id = 1; //英雄动态id
  342. int32 slot_index = 2; //坑位部件类型 (slot_index值为-1表示一键装备 从0开始)
  343. uint32 skill_equip_id = 3; //神器实例id
  344. }
  345. message SCSkillEquipUpAck{
  346. int32 error = 1; //错误码
  347. }
  348. //神器槽位变更
  349. message SCSkillEquipSlotDataNtf{
  350. SkillEquipSlotData slot = 1; //坑位信息
  351. int32 hero_id = 2; //对应英雄
  352. }
  353. //卸下神器
  354. message CSSkillEquipDownReq{ //project game //RouteRule game
  355. int32 hero_id = 1; //英雄动态id
  356. int32 slot_index = 2; //坑位部件类型 (slot_index值为-1表示一键卸下 从0开始)
  357. }
  358. message SCSkillEquipDownAck{
  359. int32 error = 1; //错误码
  360. }
  361. //神器升星
  362. message CSSkillEquipLevelUpReq{ //project game //RouteRule game
  363. int32 hero_id = 1; //英雄id
  364. uint32 skill_equip_id = 2; //神器id
  365. repeated uint32 select_cost = 3; //消耗的材料
  366. }
  367. message SCSkillEquipLevelUpAck{
  368. int32 error = 1; //错误码
  369. }
  370. //神器槽位升级
  371. message CSSkillEquipSlotLevelUpReq{ //project game //RouteRule game
  372. int32 hero_id = 1; //英雄动态id
  373. int32 slot_index = 2; //槽位索引 (从0开始)
  374. }
  375. message SCSkillEquipSlotLevelUpAck{
  376. int32 error = 1; //错误码
  377. }
  378. //神器分解
  379. message CSSkillEquipDecomposeReq{ //project game //RouteRule game
  380. repeated uint32 skill_equip_id = 1; //神器id
  381. }
  382. message SCSkillEquipDecomposeAck{
  383. int32 error = 1; //错误码
  384. repeated KeyValueType item_list = 2; //分解获得的资源数据
  385. }
  386. //神器重铸
  387. message CSSkillEquipRemadeReq{ //project game //RouteRule game
  388. uint32 skill_equip_id = 1; //神器id
  389. }
  390. message SCSkillEquipRemadeAck{
  391. int32 error = 1; //错误码
  392. uint32 old_id = 2; //重铸前的神器id
  393. uint32 new_id = 3; //重铸后的神器id
  394. }
  395. //神器重铸尺子
  396. message CSSkillEquipPoolReq{ //project game //RouteRule game
  397. }
  398. message SCSkillEquipPoolAck{
  399. int32 error = 1; //错误码
  400. int32 cur_id = 2; //当前重铸ID
  401. repeated int32 pool_id_list = 3; //当前最新重铸池子
  402. repeated int32 next_pool = 4; //下一批重铸池子
  403. uint64 next_begin = 5; //下一批开始时间
  404. }
  405. //神器转移
  406. message CSSkillEquipShiftReq{ //project game //RouteRule game
  407. uint32 src_id = 1; //神器id
  408. uint32 dst_id = 2; //神器id
  409. }
  410. message SCSkillEquipShiftAck{
  411. int32 error = 1; //错误码
  412. }
  413. /////////////////////////////////////////////////////////equip
  414. //装备锻造(已经装备的不参加锻造)
  415. message CSEquipForgeReq { //project game //RouteRule game
  416. int32 config_id = 1; //config_id为0表示一键锻造
  417. int32 once = 2; //合成一次还是多次
  418. int32 equip_type = 3; //一键锻造的部件
  419. int32 sub_equip_type = 4; //武器子类型,表示职业
  420. }
  421. message SCEquipForgeAck{
  422. int32 error = 1; //错误码
  423. int32 type = 2; //操作类型客户端使用
  424. }
  425. //部分装备变化信息
  426. message SCEquipChangeNtf{
  427. repeated EquipData equip_list = 1;
  428. bool ignore = 2; //是否屏蔽显示新增道具显示
  429. }
  430. //坑位装备(一键装备替换所有最高级装备)
  431. message CSEquipUpReq{ //project game //RouteRule game
  432. int32 hero_id = 1; //英雄动态id
  433. int32 slot_index = 2; //坑位部件类型 (slot_index值为0表示一键装备 从1开始到6表示6个位置)
  434. int32 equip_id = 3; //装备configId
  435. }
  436. message SCEquipUpAck{
  437. int32 error = 1; //错误码
  438. }
  439. message SCSlotDataNtf{
  440. SlotData slot = 1; //坑位信息
  441. int32 hero_id = 2; //对应英雄
  442. }
  443. //一键卸下装备
  444. message CSEquipDownReq{ //project game //RouteRule game
  445. int32 hero_id = 1; //英雄动态id
  446. int32 sub_index = 2; //坑位部件类型 (slot_index值为0表示一键装备 从1开始到6表示6个位置)
  447. }
  448. //一键升级(升级位置上能升级的所有装备)
  449. message CSEquipLevelUpAllReq{ //project game //RouteRule game
  450. int32 hero_id = 1; //英雄动态id
  451. }
  452. message SCEquipLevelUpAllAck{
  453. int32 error = 1; //错误码
  454. }
  455. //装备对应槽位升级
  456. message CSEquipSlotLevelUpReq{ //project game //RouteRule game
  457. int32 hero_id = 1; //英雄动态id
  458. int32 sub_slot_index = 2; //6个位置中的索引([1,6])
  459. }
  460. message SCEquipSlotLevelUpAck{
  461. int32 error = 1; //错误码
  462. }
  463. /////////////////////////////////////////////////////////card
  464. //装备对应槽位镶嵌卡片
  465. message CSCardMountReq{ //project game //RouteRule game
  466. int32 hero_id = 1; //4套坑位的索引值([1,4])
  467. int32 sub_slot_index = 2; //6个位置中的索引([1,6])
  468. int32 card_slot_index = 3; //卡槽对应索引[1,4]
  469. int32 card_id = 4; //configId
  470. }
  471. message SCCardMountAck{
  472. int32 error = 1; //错误码
  473. }
  474. //装备对应槽位卸下卡片
  475. message CSCardDownReq{ //project game //RouteRule game
  476. int32 hero_id = 1; //4套坑位的索引值([1,4])
  477. int32 sub_slot_index = 2; //6个位置中的索引([1,6])
  478. int32 card_slot_index = 3; //卡槽索引[1,4] 0表示一键卸下
  479. }
  480. message SCCardDownAck{
  481. int32 error = 1; //错误码
  482. }
  483. //卡片重置
  484. message CSCardComposeReq{ //project game //RouteRule game
  485. repeated int32 card_list = 1; //
  486. }
  487. message SCCardComposeAck{
  488. int32 error = 1; //错误码
  489. int32 new_card_id = 2; //合成的新卡ID
  490. }
  491. //卡片分解
  492. message CSCardDecomposeReq{ //project game //RouteRule game
  493. repeated KeyValueType card_list = 1; //当数据不传入时表示一键分解
  494. int32 card_type = 2; //卡片类型,一键分解时使用
  495. }
  496. message SCCardDecomposeAck{
  497. int32 error = 1; //错误码
  498. repeated KeyValueType item_list = 2; //分解获得的资源数据
  499. }
  500. //卡牌数据变更通知
  501. message SCCardChangeNtf{
  502. repeated CardData card_list = 1;
  503. bool ignore = 2;
  504. }
  505. //卡牌卡槽解锁通知
  506. message SCCardSlotChangeNtf{
  507. repeated KeyValueType slot_list = 1;
  508. }
  509. //Bag背包相关
  510. message SCItemChangeNtf{
  511. repeated ItemData item_list = 1;
  512. bool ignore = 2;
  513. }
  514. //使用道具(例如开宝箱等)
  515. message CSUseItemReq { //project game //RouteRule game
  516. uint64 item_id = 1; //背包中动态生成的item_id
  517. uint32 item_num = 2; //使用个数
  518. repeated int32 item_idx_list = 3; //获得该道具包中的其中一个道具(根据给定的配置表索引)
  519. bool force_item_id = 4; //强制使用当前item_id道具
  520. }
  521. message SCUseItemAck {
  522. int32 error = 1; //错误码
  523. repeated KeyValueType item_list = 2; //分解获得的资源数据
  524. }
  525. //背包道具销毁
  526. message CSDelItemReq { //project game //RouteRule game
  527. repeated uint64 item_id_list = 1; //背包中动态生成的item_id
  528. }
  529. message SCDelItemAck {
  530. int32 error = 1; //错误码
  531. repeated int32 del_cfg_id_list = 2;
  532. }
  533. //英雄碎片合成
  534. message CSChipComposeReq{ //project game //RouteRule game
  535. int32 config_id = 1;
  536. }
  537. message SCChipComposeAck{
  538. int32 error = 1; //错误码
  539. }
  540. message SCChipChangeNtf{
  541. repeated ChipData chip_list = 1; //英雄碎片列表
  542. }
  543. message CSCardUpGradeReq { //project game //RouteRule game
  544. repeated KeyValueType config_ids = 1;
  545. }
  546. message SCCardUpGradeAck {
  547. int32 error = 1;
  548. repeated KeyValueType config_ids = 2;
  549. }
  550. message CSCardEquipAllReq { //project game //RouteRule game
  551. int32 hero_id = 1; //英雄ID
  552. repeated EquipSlotCards eqiup_slot_data = 2; //卡槽数据
  553. }
  554. message SCCardEquipAllAck {
  555. int32 error = 1;
  556. int32 hero_id = 2;
  557. }
  558. message CSCardEquipDownReq { //project game //RouteRule game
  559. int32 hero_id = 1;
  560. }
  561. message SCCardEquipDownAck {
  562. int32 hero_id = 1;
  563. int32 error = 2;
  564. }
  565. message CSCardUpGradeAllReq { //project game //RouteRule game
  566. int32 hero_id = 1;
  567. repeated KeyValueType data = 2; //key:装备槽位,valueL:卡片槽位
  568. }
  569. message SCCardUpGradeAllAck {
  570. int32 hero_id = 1;
  571. int32 error = 2;
  572. }
  573. message CSCardCollectInfoReq { //project game //RouteRule game
  574. }
  575. message SCCardCollectInfoAck {
  576. int32 error = 1;
  577. repeated CardCollect card_collect = 2; //变更的卡片图册
  578. }
  579. message CSCardCollectRewardReq { //project game //RouteRule game
  580. int32 card_id = 1;
  581. int32 level = 2;
  582. }
  583. message SCCardCollectRewardAck {
  584. int32 error = 1;
  585. int32 card_id = 2;
  586. int32 level = 3;
  587. repeated KeyValueType reward_list = 4;
  588. }
  589. message SCCardCollectChangeNtf {
  590. repeated CardCollect card_collect = 1; //变更的卡片图册
  591. }
  592. message CSCardCollectionRankReq{ //project game|rank //RouteRule game
  593. int32 card_id = 1;
  594. }
  595. message SCCardCollectionRankAck{ //project game
  596. int32 error = 1;
  597. int32 card_id = 2;
  598. int32 card_level = 3;
  599. CommonPlayerBriefInfo player_info = 4;
  600. uint64 achievement_time = 5;
  601. }
  602. //卡片互换
  603. message CSCardLevelExchangeReq { //project game //RouteRule game
  604. int32 source_card_id = 1;
  605. int32 target_card_id = 2;
  606. }
  607. message SCCardLevelExchangeAck {
  608. int32 error = 1;
  609. int32 source_card_id = 2;
  610. int32 target_card_id = 3;
  611. }
  612. /////////////////////////////////////////////////////////skill
  613. //技能槽位数据变更通知
  614. message SCSkillSlotDataNtf{
  615. int32 hero_id = 1;
  616. repeated RoleSkillSlot slot_info = 2; //技能槽位(客户端不存在当前槽位信息就添加,存在就更新)
  617. }
  618. //职业对应技能信息变更通知
  619. message SCJobSkillDataNtf{
  620. int32 hero_id = 1;
  621. repeated JobSkillData job_skill_list = 2; //
  622. }
  623. //技能槽位(栏位)升级
  624. message CSSkillSlotLevelUpReq{ //project game //RouteRule game
  625. int32 hero_id = 1;
  626. int32 idx = 2; //对应的槽位索引
  627. }
  628. message SCSkillSlotLevelUpAck{
  629. int32 error = 1; //错误码
  630. }
  631. //替换技能
  632. message CSReplaceSkillReq{ //project game //RouteRule game
  633. int32 hero_id = 1;
  634. int32 idx = 2; //替换槽位
  635. int32 skill_id = 3; //替换技能(原先位置有就替换技能,没有就装备技能)
  636. }
  637. message SCReplaceSkillAck{
  638. int32 error = 1; //错误码
  639. }
  640. //激活技能树中的技能
  641. message CSActiveSkillReq{ //project game //RouteRule game
  642. int32 hero_id = 1;
  643. int32 skill_id = 2; //技能ID
  644. }
  645. message SCActiveSkillAck{
  646. int32 error = 1; //错误码
  647. }
  648. //交换栏位中的技能
  649. message CSSwapSkillReq{ //project game //RouteRule game
  650. int32 hero_id = 1;
  651. int32 first = 2; //替换槽位
  652. int32 second = 3; //替换槽位
  653. }
  654. message SCSwapSkillAck{
  655. int32 error = 1; //错误码
  656. }
  657. //设置技能列表
  658. message CSSetSkillListReq{ //project game //RouteRule game
  659. int32 hero_id = 1; //英雄id
  660. repeated int32 skill_list = 2; //技能列表
  661. }
  662. message SCSetSkillListAck{
  663. int32 error = 1; //错误码
  664. int32 hero_id = 2; //英雄id
  665. }
  666. //技能升级请求
  667. message CSSkillLevelUpReq{ //project game //RouteRule game
  668. int32 hero_id = 1; //英雄ID
  669. int32 skill_id = 2; //升级的技能ID
  670. }
  671. message SCSkillLevelUpAck{
  672. int32 error = 1; //错误码
  673. int32 hero_id = 2; //英雄ID
  674. int32 skill_id = 3; //升级的技能ID
  675. }
  676. message CSResetSkillLevelReq{ //project game //RouteRule game
  677. int32 hero_id = 1; //英雄ID
  678. bool is_advanced = 2; //是否高级技能
  679. }
  680. message SCResetSkillLevelAck{
  681. int32 error = 1; //错误码
  682. int32 hero_id = 2; //英雄ID
  683. int32 reset_count = 3; //重置次数
  684. }
  685. message SCSkillResetCountNtf {
  686. int32 reset_count = 1; //重置次数
  687. }
  688. //请求技能压制冲榜活动数据
  689. message CSRushActivityReq { //project game //RouteRule game
  690. int32 rush_type = 1;
  691. }
  692. message SCRushActivityAck {
  693. int32 error = 1; //错误码
  694. int32 fight_count = 2; //战斗次数
  695. int32 self_rank = 3; //自己排名
  696. int32 self_level = 4; //自己
  697. uint64 end_time = 5; //结束时间
  698. bool challeng_reward = 6; //挑战奖励是否领取
  699. bool rank_reward = 7; //排名奖励是否领取
  700. repeated RushRankTop3 top_data = 8; //这里只发送前10名
  701. int32 rush_type = 9; //冲榜类型
  702. }
  703. //请求技能压制冲榜活动奖励
  704. message CSRushActivityRewardReq { //project game //RouteRule game
  705. int32 reward_type = 1; //1:挑战奖励,2:排名奖励
  706. int32 rush_type = 2; //冲榜类型
  707. }
  708. message SCRushActivityRewardAck {
  709. int32 error = 1; //错误码
  710. int32 reward_type = 2; //1:挑战奖励,2:层数奖励
  711. repeated KeyValueType item_list = 3; //奖励列表
  712. int32 rush_type = 4; //冲榜类型
  713. }
  714. message CSRushSkillActivityRankReq { //project game|rank //RouteRule game
  715. int32 page = 1;
  716. int32 rush_type = 2; //冲榜类型
  717. }
  718. message SCRushSkillActivityRankAck { //project game
  719. int32 error = 1; //错误码
  720. int32 page = 2;
  721. repeated RushRankTop3 top_data = 3;
  722. }
  723. /////////////////////////////////////////////////////////fashion
  724. //时装数据变更通知
  725. message SCFashionDataNtf{
  726. repeated int32 fashion_up_list = 4; //穿戴的时装(不为空表示发生数据变更)
  727. repeated int32 fashion_list = 5; //时装列表
  728. }
  729. //穿戴时装(替换)
  730. message CSFashionUpReq { //project game //RouteRule game
  731. repeated int32 fashion_cfg_id = 1; //时装ID
  732. }
  733. message SCFashionUpAck {
  734. int32 error = 1; //错误码
  735. }
  736. //卸下时装
  737. message CSFashionDownReq{ //project game //RouteRule game
  738. repeated int32 fashion_cfg_id = 1; //时装ID
  739. }
  740. message SCFashionDownAck {
  741. int32 error = 1; //错误码
  742. }
  743. //时装合成
  744. message CSFashionComposeReq{ //project game //RouteRule game
  745. int32 paper_cfg_id = 1; //图纸ID
  746. }
  747. message SCFashionComposeAck{
  748. int32 error = 1; //错误码
  749. }
  750. //时装图纸分解
  751. message CSFashionPaperDecomposeReq { //project game //RouteRule game
  752. int32 paper_cfg_id = 1; //图纸ID
  753. }
  754. message SCFashionPaperDecomposeAck {
  755. int32 error = 1; //错误码
  756. repeated KeyValueType item_list = 2; //分解获得的资源数据
  757. }
  758. // 时装升级
  759. message CSFashionUpLvlReq { //project game //RouteRule game
  760. int32 fashion_cfg_id = 1; //时装ID
  761. }
  762. // 时装升级 返回
  763. message SCFashionUpLvlAck {
  764. int32 error = 1; //错误码
  765. }
  766. // 时装变更 (時裝升級 時裝洗練)
  767. message SCFashionNtf {
  768. repeated RoleFashionData fashion_data = 1; //时装ID
  769. repeated KeyValueType lvs = 2; //套装数据 key套装id,value 等级
  770. }
  771. // 时装洗练
  772. message CSFashionResetAttrReq { //project game //RouteRule game
  773. bool enter =1;
  774. int32 fashion_cfg_id = 2; //时装ID
  775. }
  776. // 时装洗练 返回
  777. message SCFashionResetAttrAck {
  778. int32 error = 1; //错误码
  779. }
  780. /////////////////////////////////////////////////////////AOI相关
  781. //获取详细信息(用来显示详细面板使用),例如,隶属公会,个性签名,战斗力等详细信息
  782. message CSGetOtherPlayerDetailInfoReq{ //project game|social //RouteRule game
  783. uint64 uid = 1; //请求查看的Uid
  784. uint64 t_uid = 2; //被查看Uid
  785. }
  786. message SCGetOtherPlayerDetailInfoAck{ //project game
  787. uint64 uid = 1; //ID
  788. int32 error = 2; //错误码
  789. ViewRoleInfo target_info = 3; //目标信息
  790. }
  791. //获取玩家简介信息,显示头像名称相关,不包括详细信息(本服玩家)
  792. message CSGetOtherPlayerBriefInfoReq { //project game //RouteRule game
  793. repeated uint64 player_list = 1;//角色列表
  794. int32 type = 2;
  795. }
  796. message SCGetOtherPlayerBriefInfoAck {
  797. repeated CommonPlayerBriefInfo brief_info = 1;
  798. int32 type = 2;
  799. }
  800. //挑战召唤物
  801. message CSPlayerChallengeSummonReq { //project game|battleboss //RouteRule game
  802. uint64 uid = 1; //挑战玩家uid
  803. uint64 challenge_boss_uid = 2; //挑战的bossUid
  804. int32 boss_summon_idx = 3;
  805. FightRoleInfo fight_info = 4; //召唤boss玩家信息(服务器使用)
  806. }
  807. message SCPlayerChallengeSummonAck { //project game
  808. int32 error = 1; //错误码
  809. WorldBossContentInfo boss_info = 2; //世界boss信息
  810. }
  811. message SCPlayerChallengeSummonNtf {
  812. uint64 self_uid = 1;
  813. repeated FightRoleInfo fight_list = 2; //其他玩家列表
  814. uint64 boss_uid = 3;
  815. int32 self_change_play_id = 4;
  816. int32 summon_boss_type = 5;
  817. }
  818. //血量上报
  819. message CSPlayerChallengeHpReq { //project game|battleboss //RouteRule game
  820. int32 damage_hp = 1; //玩家对boss的伤害
  821. uint64 action_uid = 2; //服务器使用客户端不使用
  822. }
  823. //boss血量变更通知
  824. message SCPlayerChallengeHpNtf {
  825. int32 cur_boss_hp = 1; //当前boss血量
  826. }
  827. //离开boss场景
  828. message CSPlayerLeaveChallengeReq{ //project game|battleboss //RouteRule game
  829. }
  830. //离开boss场景通知
  831. message SCPlayerLeaveChallengeNtf{ //project game
  832. uint64 uid = 1; //离开的挑战玩家uid
  833. }
  834. message SCPlayerChallengeResultNtf {
  835. int32 result = 1; //1表示升级,2表示超时战场结束
  836. }
  837. //获取WorldBoss列表
  838. message CSPlayerWorldBossListReq { //project game|battleboss //RouteRule game
  839. }
  840. message SCPlayerWorldBossListAck { //project game
  841. repeated WorldBossContentInfo world_boss_list = 1; //世界boss列表
  842. }
  843. message SCPlayerWorldBossRandNtf { //project game
  844. int32 error = 1; //错误码(有可能会出现背包满的提示错误,这个时候也是需要显示奖励的)
  845. WorldBossRandPointInfo point_info = 2; //世界boss rand点数据
  846. }
  847. message SCRoleMapChangeNtf {
  848. int32 world_boss_count = 1; //世界boss挑战次数
  849. repeated int32 world_boss_challenge_list = 2; //当天挑战过的世界bossid列表(id*10 + summonidx)
  850. }
  851. /////////////////////////////////////////////////////////chat相关
  852. message CSChatMessageReq{ //project game|social|guild //RouteRule game
  853. int32 type = 1;//消息类型1私人聊天,2世界频道聊天
  854. ChatMessageInfo message = 2;//消息内容
  855. uint64 target_id = 3;//私人聊天,好友聊天时发送的目标玩家
  856. ChatPlayerBriefInfo from_id = 4;//私人聊天,好友聊天时发送的来源玩家
  857. }
  858. message SCChatMessageAck{
  859. int32 error = 1; //错误码
  860. uint64 target_id = 2; //目标玩家(离线玩家ID)
  861. ChatMessageInfo message = 3;//消息内容
  862. int32 type = 4;
  863. }
  864. message SCChatMessageNtf{
  865. repeated MessageContentInfo msg_list = 1;
  866. repeated SystemMessage s_msg_list = 2;
  867. //int32 type = 1;//消息类型1私人聊天,2世界频道聊天
  868. //ChatMessageInfo message = 2;//消息内容
  869. //ChatPlayerBriefInfo from_id = 3;//消息来源玩家
  870. //uint64 target_id = 4;//targetId显示该私聊信息
  871. }
  872. //私聊玩家在线状态刷新
  873. message CSChatPlayerStateReq { //project game|social //RouteRule game
  874. repeated uint64 target_id_list = 1; //私聊玩家列表
  875. }
  876. message SCChatPlayerStateAck { //project game
  877. repeated PlayerStateInfo state_list = 1; //在线状态列表
  878. }
  879. //获取某个玩家的离线信息
  880. message CSChatOfflineMsgReq { //project game|db //RouteRule game
  881. uint64 target_id = 1; //目标玩家(离线玩家ID)
  882. uint64 self_id = 2;
  883. }
  884. message SCChatOfflineMsgAck { //project game
  885. int32 error = 1; //错误码
  886. ChatPlayerBriefInfo target_player = 2; //私聊目标
  887. repeated ChatMessageInfo msg_list = 3; //私聊消息列表
  888. }
  889. //玩家上线时获取离线玩家列表
  890. message SCChatOfflinePlayerNtf {
  891. RoleChat offline_player_list = 1;
  892. }
  893. message SCSystemMessageNtf{ //project game
  894. repeated SystemMessage sys_msg = 1;//公告消息
  895. }
  896. /////////////////////////////////////////////////////////battle处理
  897. //收益相关处理(online/offline)
  898. message CSPlayerIncomeReq{ //project game //RouteRule game //confirm
  899. }
  900. message SCPlayerIncomeAck{
  901. int32 error = 1; //错误码
  902. repeated KeyValueType item_list = 2; //分解获得的资源数据
  903. }
  904. //挑战boss奖励
  905. message CSPlayerBossRewardReq{ //project game //RouteRule game //confirm
  906. uint32 challenge_time = 1; //该boss挑战时间
  907. uint32 map_id = 2;
  908. uint32 map_level = 3;
  909. uint64 record_time_stamp = 4;
  910. }
  911. message SCPlayerBossRewardAck{
  912. int32 error = 1; //错误码
  913. repeated KeyValueType item_list = 2; //奖励
  914. uint64 server_time_stamp = 3; //服务器时间戳
  915. }
  916. //通知客户端需要保存战斗过程记录
  917. message SCPlayerBattleRecordDetailSaveNtf {
  918. uint64 battle_record_uid = 1; //战斗唯一ID
  919. uint64 record_time_stamp = 2;
  920. }
  921. //保存战报详细信息
  922. message CSPlayerBattleRecordDetailSaveReq { //project battlerecord //RouteRule battlerecord
  923. uint64 battle_record_uid = 1; //战斗唯一ID 回传服务器下发的唯一ID
  924. string battle_record = 2;
  925. string open_id = 3;
  926. }
  927. message SCPlayerBattleRecordDetailSaveAck {
  928. int32 error = 1; //错误码
  929. }
  930. //获取战报详细信息
  931. message CSPlayerBattleRecordDetailReq { //project battlerecord //RouteRule battlerecord
  932. uint64 battle_record_uid = 1; //战斗唯一ID 回传服务器下发的唯一ID
  933. string open_id = 2;
  934. }
  935. message SCPlayerBattleRecordDetailAck {
  936. int32 error = 1; //错误码
  937. uint64 battle_record_uid = 2; //战斗唯一ID 回传服务器下发的唯一ID
  938. string battle_record = 3;
  939. }
  940. //获取战报信息
  941. message CSPlayerBattleRecordReq { //project game|rank //RouteRule game
  942. int32 record_type = 1;
  943. repeated uint32 param_list = 2;
  944. }
  945. message SCPlayerBattleRecordAck { //project game
  946. int32 error = 1;
  947. repeated BattleRecordInfo record_list = 2;
  948. }
  949. message SCPlayerBattleDataChangeNtf{
  950. uint64 last_income_time = 1; //上一次领取收益时间,0表示未初始化
  951. uint32 map_level = 2; //当前场景ID,默认为1
  952. uint32 map_id = 3; //当前地图ID,默认为1
  953. uint64 max_income_time = 4; //最大收益累计时间
  954. QuickBattleData quick_battle = 5; //快速战斗
  955. uint32 reward_map_count = 6; //未领取奖励次数
  956. }
  957. // 战斗加速时间通知
  958. message SCPlayerBattleAcctTimeNtf {
  959. // 战斗加速时间(客户端显示根据last_record_battle_acce_time+battle_acce_duration为最大能使用的结束时间戳)
  960. uint64 last_record_battle_acce_time = 1; // 上次记录时的时间
  961. uint64 battle_acce_duration = 2; // 当前剩余的时间
  962. }
  963. //获取小地图排名
  964. message CSGetMapRankReq { //project game //RouteRule game
  965. }
  966. message SCGetMapRankAck {
  967. int32 error = 1; //错误码
  968. uint32 self_rank = 2; //自身排名
  969. uint32 total_rank = 3; //当前参加排名的人数
  970. repeated RankPlayerInfo top_player_list = 4; //排名前3玩家
  971. }
  972. //获取本局战斗状态(胜利/失败)
  973. message CSBattleResultReq {
  974. ActorPosition actor_pos = 1; //单位所在位置
  975. }
  976. message SCBattleResultAck {
  977. int32 error = 1; //错误码,发送的战斗数据有误
  978. bool win_lose = 2; //true胜利,false失败
  979. }
  980. message CSQuickBattleIncomeReq { //project game //RouteRule game
  981. }
  982. message SCQuickBattleIncomeAck {
  983. int32 error = 1; //错误码
  984. repeated KeyValueType item_list = 2; //快速挂机获得的资源列表
  985. }
  986. //boss战斗开始
  987. message CSBattleBossFightReq{ //project game //RouteRule game
  988. }
  989. message SCBattleBossFightAck{
  990. int32 error = 1;
  991. int32 left_cd_time = 2; //剩余刷新时间s
  992. repeated KeyValueType factor_list = 3; //衰减系数
  993. }
  994. //请求地图冲榜活动数据
  995. message CSMapActivityReq { //project game //RouteRule game
  996. }
  997. message SCMapActivityAck {
  998. int32 error = 1; //错误码
  999. int32 map_score = 2; //推图积分
  1000. int32 bag_score = 3; //礼包积分
  1001. int32 self_rank = 4; //自己排名
  1002. int32 self_level = 5; //自己推图关卡
  1003. uint64 end_time = 6; //结束时间
  1004. bool challeng_reward = 7; //挑战奖励是否领取
  1005. bool rank_reward = 8; //排名奖励是否领取
  1006. repeated RushRankTop3 top_data = 9; //前3名
  1007. uint32 rush_level = 10; //活动推图关卡
  1008. }
  1009. /////////////////////////////////////////////////////////恶魔协会
  1010. //恶魔刷新(会根据当前的时间做刷新消耗,客户端需要判断是否进行刷新,进行确认)
  1011. message CSEvilRefreshReq { //project game //RouteRule game
  1012. bool b_force = 1; //点击刷新方式刷新evil
  1013. }
  1014. message SCEvilRefreshAck {
  1015. int32 error = 1; //错误码
  1016. repeated int32 pos_idx_list = 2;
  1017. }
  1018. message SCEvilChangeNtf {
  1019. BattleEvilData evil_info = 1;
  1020. repeated KeyValueType add_item_list = 2; //恶魔提升获得奖励
  1021. }
  1022. //恶魔挑战(该位置上有boss则挑战,如果已经死亡的boss表示花费道具消除CD)
  1023. message CSEvilChallengeReq { //project game //RouteRule game
  1024. int32 pos_idx = 1; //位置
  1025. }
  1026. message SCEvilChallengeAck {
  1027. int32 error = 1; //错误码
  1028. int32 pos_idx = 2; //返回客户端发送位置
  1029. int32 add_count = 3;
  1030. }
  1031. /////////////////////////////////////////////////////////task相关
  1032. message CSGetTaskRewardReq { //project game //RouteRule game
  1033. uint32 task_id = 1; //领取奖励的任务ID
  1034. }
  1035. message SCGetTaskRewardAck {
  1036. int32 error = 1; //错误码
  1037. repeated KeyValueType item_list = 2; //任务奖励
  1038. }
  1039. message SCTaskChangeNtf {
  1040. repeated TaskData task_change_list = 1; //当前改变状态的任务
  1041. KeyValueType daily_task_score = 2; //活跃度/活跃度对应的奖励,按位处理(完成任务累加的积分)
  1042. KeyValueType week_task_score = 3;
  1043. uint64 latest5_hour_time = 4;
  1044. uint64 latest_week5_hour_time = 5;
  1045. }
  1046. message CSGetTaskScoreRewardReq { //project game //RouteRule game
  1047. int32 reward_type = 1; //1daily 2week
  1048. int32 reward_idx = 2; //奖励索引
  1049. }
  1050. message SCGetTaskScoreRewardAck {
  1051. int32 error = 1; //错误码
  1052. repeated KeyValueType item_list = 2; //任务奖励
  1053. }
  1054. /////////////////////////////////////////////////////////道场
  1055. message SCArenaNtf {
  1056. int32 challenge_count = 1; //剩余挑战次数
  1057. int32 reward_count = 2; //剩余积分获得次数
  1058. int32 buy_count = 3; //剩余购买次数
  1059. int32 win_count = 4; //胜利次数
  1060. int32 total_count = 5; //总挑战次数
  1061. int32 score = 6; //积分
  1062. repeated int32 self_hero_list = 7;
  1063. int32 season_id = 8; //当前赛季
  1064. uint64 season_end_time = 9; //当前赛季结束时间
  1065. uint64 next_season_start_time = 10; //下个赛季开启时间
  1066. int32 minTopScore = 11; //入榜最小积分
  1067. }
  1068. message SCArenaChangeNtf {
  1069. int32 challenge_count = 1; //剩余挑战次数
  1070. int32 reward_count = 2; //剩余积分获得次数
  1071. int32 buy_count = 3; //剩余购买次数
  1072. int32 win_count = 4; //胜利次数
  1073. int32 total_count = 5; //总挑战次数
  1074. int32 score = 6; //积分
  1075. int32 season_id = 7; //当前赛季
  1076. int32 rank_idx = 8; //当前排名
  1077. int32 win_streak_count = 9; //连胜
  1078. int32 fail_streak_count = 10; //连败
  1079. int32 minTopScore = 11; //入榜最小积分
  1080. }
  1081. //获取道场数据
  1082. message CSArenaReq { //project game //RouteRule game
  1083. }
  1084. //挑战(获得对手)
  1085. message CSArenaMatchReq{ //project game //RouteRule game
  1086. repeated int32 hero_list = 1;
  1087. }
  1088. message SCArenaMatchAck {
  1089. int32 error = 1; //错误码
  1090. FightRoleInfo fight_info = 2; //对方玩家信息
  1091. }
  1092. //挑战结果(失败/成功)
  1093. message CSArenaResultReq { //project game //RouteRule game //confirm
  1094. int32 fight_result = 1; //0失败,1成功
  1095. }
  1096. message SCArenaResultAck {
  1097. int32 error = 1; //错误码
  1098. repeated KeyValueType reward_list = 2; //奖励列表
  1099. int32 old_score = 3;
  1100. int32 cur_score = 4;
  1101. }
  1102. //购买挑战次数
  1103. message CSArenaBuyCountReq{ //project game //RouteRule game
  1104. int32 buy_count = 1;
  1105. }
  1106. message SCArenaBuyCountAck{
  1107. int32 error = 1; //错误码
  1108. }
  1109. //获取赛季排行榜
  1110. message CSArenaRankListReq { //project game //RouteRule game
  1111. int32 rank_type = 1; //1上赛季,0本赛季
  1112. int32 start_idx = 2; //1[1-10] 2[11-20] 3[21-30] ...
  1113. }
  1114. message SCArenaRankListAck {
  1115. int32 error = 1; //错误码
  1116. repeated ArenaRankInfo rank_list = 2;
  1117. int32 self_rank = 3;
  1118. int32 rank_type = 4;//1上赛季,0本赛季
  1119. int32 start_idx = 5;
  1120. int32 self_rank_score = 6; //赛季对应自身排名积分
  1121. }
  1122. //请求英灵殿冲榜活动数据
  1123. message CSArenaActivityReq { //project game //RouteRule game
  1124. }
  1125. message SCArenaActivityAck {
  1126. int32 error = 1; //错误码
  1127. int32 fight_count = 2; //战斗次数
  1128. int32 self_rank = 3; //自己排名
  1129. int32 self_level = 4; //自己层数
  1130. uint64 end_time = 5; //结束时间
  1131. bool challeng_reward = 6; //挑战奖励是否领取
  1132. bool rank_reward = 7; //排名奖励是否领取
  1133. repeated RushRankTop3 top_data = 8; //前3名
  1134. }
  1135. /////////////////////////////////////////////////////////mail
  1136. //获取邮件数据
  1137. message CSMailListReq { //project game //RouteRule game
  1138. }
  1139. message SCMailListAck {
  1140. int32 total_mail_count = 1; //当前邮件总数量
  1141. repeated MailContent mail_list = 2;
  1142. }
  1143. //邮件读取
  1144. message CSMailReadReq { //project game //RouteRule game
  1145. repeated int32 mail_id_list = 1;
  1146. }
  1147. message SCMailReadAck{
  1148. int32 error = 1; //错误码
  1149. }
  1150. //获取邮件附件
  1151. message CSMailRewardReq { //project game //RouteRule game
  1152. repeated int32 mail_id_list = 1;
  1153. }
  1154. message SCMailRewardAck {
  1155. int32 error = 1; //错误码
  1156. repeated KeyValueType reward_list = 2; //附件资源
  1157. }
  1158. //删除已读邮件
  1159. message CSMailDelReadReq { //project game //RouteRule game
  1160. }
  1161. message SCMailDelReadAck {
  1162. int32 error = 1; //错误码
  1163. }
  1164. //邮件信息变更通知
  1165. message SCMailChangeNtf {
  1166. repeated KeyValueType mail_state_list = 1; //变更状态邮件列表
  1167. repeated int32 del_mail_list = 2; //被删除邮件列表
  1168. repeated MailContent add_mail_list = 3; //新增加邮件
  1169. int32 total_mail_count = 4; //当前邮件总数量
  1170. }
  1171. /////////////////////////////////////////////////////////competition赛季玩法
  1172. //赛季玩法信息获取(根据赛季不同类型获取对应信息)
  1173. message CSCompetitionReq { //project game //RouteRule game
  1174. int32 competition_id = 1; //对应赛季ID
  1175. }
  1176. message SCCompetitionNtf {
  1177. CompetitionInfo competition_data = 1; //对应赛季信息
  1178. uint64 next_competition_time = 2; //下个赛季开启时间
  1179. IdolSeasonData data = 3; //偶像季数据
  1180. }
  1181. message SCCompetitionAck {
  1182. int32 error = 1; //错误码
  1183. int32 competition_id = 2; //对应赛季ID
  1184. }
  1185. //第二赛季上交道具获取积分
  1186. message CSCompetitionScoreReq { //project game //RouteRule game
  1187. repeated KeyValueType item_list = 1; //key是配置id,不是动态生成的id
  1188. }
  1189. message SCCompetitionScoreAck {
  1190. int32 error = 1; //错误码
  1191. int32 com_score = 2; //当前玩家积分
  1192. int32 next_com_score = 4; //下一档积分差距
  1193. int32 self_rank = 5; //当前排名
  1194. int32 total_rank = 6; //总人数
  1195. int32 section_id = 7; //当前预计获得的宝箱奖励
  1196. int32 last_com_score = 8; //低一档最大积分(玩家积分)
  1197. }
  1198. /////////////////////////////////////////////////////////Shop操作 //紧急需求,迁移版署版本,商店功能后续废弃重做
  1199. message CSShopBuyItemReq { //project game //RouteRule game
  1200. int32 goods_id = 1;
  1201. int32 goods_num = 2;
  1202. int32 goods_type = 3;
  1203. }
  1204. message SCShopBuyItemAck {
  1205. int32 error = 1;
  1206. int32 goods_id = 2;
  1207. int32 goods_type = 3;
  1208. int32 cur_num = 4;
  1209. uint64 cur_buy_time = 5;
  1210. repeated KeyValueType item_list = 6;
  1211. }
  1212. message CSShopInfoReq { //project game //RouteRule game
  1213. int32 goods_type = 1;
  1214. }
  1215. message SCShopInfoAck {
  1216. int32 error = 1;
  1217. ShopData shop_data = 2; //商店信息
  1218. }
  1219. message CSShopRefreshReq { //project game //RouteRule game
  1220. int32 goods_type = 1;
  1221. }
  1222. message SCShopRefreshAck {
  1223. int32 error = 1;
  1224. ShopData shop_data = 2; //商店信息
  1225. }
  1226. //红包兑换请求
  1227. message CSRedBagExchangeReq { //project game //RouteRule game
  1228. }
  1229. message SCRedBagExchangeAck {
  1230. int32 error = 1;
  1231. repeated KeyValueType reward = 2;
  1232. }
  1233. /////////////////////////////////////////////////////////social好友
  1234. message CSFriendReq { //project game //RouteRule game
  1235. int32 type = 1; //1我关注 2我的粉丝 3屏蔽列表
  1236. }
  1237. message SCFriendAck {
  1238. int32 type = 1; //操作类型
  1239. int32 total_count = 2; //总数量
  1240. int32 total_limit = 3; //数量上限
  1241. repeated uint64 uid_list = 4; //玩家ID列表
  1242. }
  1243. //添加关注(添加好友,这边添加好友是单向的)
  1244. message CSFriendAddReq { //project game //RouteRule game
  1245. uint64 add_uid = 1; //关注玩家uid
  1246. }
  1247. //成功关注玩家后,会有添加关注玩家的简介信息
  1248. message SCFriendAddAck {
  1249. int32 error = 1;
  1250. CommonPlayerBriefInfo brief_info = 2; //玩家简介信息
  1251. }
  1252. //其他玩家关注自己时,添加到自己的粉丝列表中
  1253. message SCFriendAddNtf {
  1254. CommonPlayerBriefInfo brief_info = 1; //玩家简介信息
  1255. }
  1256. //取消关注
  1257. message CSFriendDelReq { //project game //RouteRule game
  1258. uint64 del_uid = 1; //取消关注玩家uid
  1259. }
  1260. message SCFriendDelAck {
  1261. int32 error = 1;
  1262. uint64 del_uid = 2;
  1263. }
  1264. //其他玩家取消关注该玩家时,从自己的粉丝列表中移除
  1265. message SCFriendDelNtf {
  1266. uint64 del_uid = 1;
  1267. }
  1268. //添加/删除屏蔽名单(添加和删除同一条协议,不在黑名单中加入黑名单,在黑名单中移除黑名单)
  1269. message CSFriendBlackReq { //project game //RouteRule game
  1270. uint64 black_uid = 1; //屏蔽玩家uid
  1271. }
  1272. message SCFriendBlackAck {
  1273. int32 error = 1;
  1274. CommonPlayerBriefInfo brief_info = 2; //玩家简介信息
  1275. }
  1276. //获取推荐好友列表
  1277. message CSFriendRecommendReq { //project game //RouteRule game
  1278. }
  1279. message SCFriendRecommendAck {
  1280. int32 error = 1;
  1281. repeated CommonPlayerBriefInfo brief_info_list = 2; //推荐好友列表
  1282. }
  1283. message SCFriendRecommendNtf {
  1284. repeated CommonPlayerBriefInfo brief_info_list = 2; //推荐好友列表
  1285. }
  1286. //搜索玩家
  1287. message CSFriendSearchReq { //project game //RouteRule game
  1288. string target_name = 1; //搜索玩家昵称
  1289. }
  1290. message SCFriendSearchAck {
  1291. int32 error = 1;
  1292. repeated CommonPlayerBriefInfo brief_info_list = 2;
  1293. }
  1294. /////////////////////////////////////////////////////////common
  1295. //小红点消息通知
  1296. message SCRoleRedNtf {
  1297. RoleRed red = 1;
  1298. }
  1299. //设置新手引导
  1300. message CSRoleGuideNtf { //project game //RouteRule game
  1301. int32 guide_id = 2;//新手引导步骤ID
  1302. }
  1303. //剧情上线通知
  1304. message SCRoleStoryNtf {
  1305. repeated int32 Story = 1; //播放过的剧情
  1306. KeyValueType map_cart = 2; //地图卡通
  1307. }
  1308. //剧情
  1309. message CSRoleStoryReq { //project game //RouteRule game
  1310. KeyValueType story_id = 1; //播放的剧情
  1311. }
  1312. message SCRoleStoryAck {
  1313. int32 error = 1; //错误码
  1314. KeyValueType story_id = 2; //播放的剧情
  1315. }
  1316. //大地图动画
  1317. message CSNewMapCartoonReq{ //project game //RouteRule game //confirm
  1318. KeyValueType map_cart = 1; //地图卡通 key:动画ID, value:状态
  1319. }
  1320. message SCNewMapCartoonAck{
  1321. int32 error = 1; //错误码
  1322. KeyValueType map_cart = 2; //地图卡通 key:动画ID, value:状态
  1323. }
  1324. //强制引导
  1325. message CSCompulsoryGuidanceReq { //project game //RouteRule game
  1326. int32 story_id = 1; //引导步骤ID
  1327. int32 status = 2; //引导状态
  1328. }
  1329. message SCCompulsoryGuidanceAck {
  1330. int32 error = 1; //错误码
  1331. int32 story_id = 2; //引导步骤ID
  1332. int32 status = 3; //引导状态
  1333. }
  1334. /////////////////////////////////////////////////////////活动
  1335. //签到信息请求
  1336. message CSSignUpInfoReq { //project game //RouteRule game
  1337. }
  1338. message SCSignUpInfoAck {
  1339. int32 error = 1; //错误码
  1340. SignUp sign_info = 2; //签到活动
  1341. int32 cur_sign_day = 3; //当前可签到天
  1342. int64 next_sign_time = 4; //下次签到时间
  1343. }
  1344. //请求签到
  1345. message CSSignUpReq { //project game //RouteRule game
  1346. }
  1347. message SCSignUpAck {
  1348. int32 error = 1; //错误码
  1349. repeated KeyValueType day_list = 2; //日奖励
  1350. repeated KeyValueType accu_list = 3; //累计奖励
  1351. repeated KeyValueType double_list = 4; //双倍奖励
  1352. int64 next_sign_time = 5; //下次签到时间
  1353. SignUp sign_info = 6; //签到活动
  1354. int32 cur_sign_day = 7; //当前可签到天
  1355. }
  1356. /////////////////////////////////////////////////////////爬塔功能
  1357. message CSClimbingTowerInfoReq { //project game //RouteRule game
  1358. }
  1359. message SCClimbingTowerInfoAck {
  1360. int32 now_tower_level = 1; //当前可通关层数
  1361. int64 pass_time = 2; //当前爬塔通过时间戳
  1362. repeated FriendTowerInfo infos = 3; //好友/工会通关信息,自己可通关 + 2
  1363. uint64 tower_level_day_reward_time = 4;
  1364. }
  1365. message CSFriendPassTowerInfoReq { //project game //RouteRule game
  1366. int32 begin_index = 1; //开始层数
  1367. int32 end_index = 2; //结束层数
  1368. }
  1369. message SCFriendPassTowerInfoAck {
  1370. repeated FriendTowerInfo infos = 1; //好友/工会通关信息,自己可通关 + 2
  1371. }
  1372. message MinTowerInfo{
  1373. int32 tower_level = 1; //塔层数
  1374. int32 fight_power = 2; //通过战力
  1375. CommonPlayerBriefInfo brief = 3; //玩家昵称
  1376. uint64 record_time = 4;
  1377. uint32 battle_time = 5;
  1378. }
  1379. message CSTowerLevelMinFightPowerReq { //project game //RouteRule game
  1380. int32 tower_level = 1;
  1381. }
  1382. message SCTowerLevelMinFightPowerAck {
  1383. MinTowerInfo min_tower_info = 1;
  1384. }
  1385. message SCTowerLevelMinFightPowerNtf{
  1386. repeated MinTowerInfo min_tower_info = 1; //我的通关 + 3 层的最小通关战力
  1387. }
  1388. message CSClimbingTowerBeginReq { //project game //RouteRule game
  1389. int32 tower_level = 1; //塔层数
  1390. }
  1391. message SCClimbingTowerBeginAck {
  1392. int32 error = 1; //错误码
  1393. int32 tower_level = 2; //塔层数
  1394. repeated KeyValueType factor_list = 3; //衰减系数
  1395. }
  1396. message CSClimbingTowerEndReq { //project game //RouteRule game //confirm
  1397. int32 tower_level = 1; //塔层数
  1398. int32 loading_time = 2; //战斗loading时间
  1399. uint64 record_time_stamp = 3;
  1400. }
  1401. message SCClimbingTowerEndAck {
  1402. int32 error = 1; //错误码
  1403. int32 tower_level = 2; //塔层数 成功 则tower_level+1
  1404. FriendTowerInfo pass_info = 3; //则tower_level + 3层通过的好友/工会成员等
  1405. int64 pass_time = 4; //通过时间
  1406. repeated KeyValueType reward_list = 5; //爬塔奖励
  1407. repeated KeyValueType ex_reward_list = 6; //爬塔额外奖励
  1408. }
  1409. message CSClimbingTowerRankReq { //project game //RouteRule game
  1410. }
  1411. message SCClimbingTowerRankAck {
  1412. int32 error = 1; //错误码
  1413. repeated KeyValueType64 rank_list = 2; //爬塔列表 Key:uid ,Value:rank
  1414. int32 self_rank = 3; //自己的rank
  1415. }
  1416. //上线爬塔冲榜数据请求
  1417. message CSOnlineRushInfoReq { //project game //RouteRule game
  1418. }
  1419. message SCOnlineRushInfoAck {
  1420. repeated RushActivityData rush_data = 1; //冲榜数据
  1421. }
  1422. //请求爬塔冲榜活动数据
  1423. message CSTowerActivityReq { //project game //RouteRule game
  1424. }
  1425. message SCTowerActivityAck {
  1426. int32 error = 1; //错误码
  1427. int32 fight_count = 2; //战斗次数
  1428. int32 self_rank = 3; //自己排名
  1429. int32 self_level = 4; //自己层数
  1430. uint64 end_time = 5; //结束时间
  1431. bool challeng_reward = 6; //挑战奖励是否领取
  1432. bool rank_reward = 7; //排名奖励是否领取
  1433. repeated RushRankTop3 top_data = 8; //前3名
  1434. }
  1435. /////////////////////////////////////////////////////////公会操作相关
  1436. //创建公会请求
  1437. message CSBuildGuildReq{ //project game|guild //RouteRule game
  1438. string guild_name = 1; //公会名字
  1439. int32 guild_badge = 2; //公会徽章
  1440. uint64 uid = 3; //创建人ID//服务器填写
  1441. }
  1442. //创建公会返回
  1443. message SCBuildGuildAck{ //project game
  1444. int32 error = 1; //错误码
  1445. GuildBrief guild_brief = 2; //公会ID
  1446. }
  1447. //解散公会请求
  1448. message CSDisbandGuildReq{ //project game|guild //RouteRule game
  1449. uint64 uid = 1; //创建人ID//服务器填写
  1450. uint64 guild_id = 2; //公会ID//服务器填写
  1451. }
  1452. //解散公会返回
  1453. message SCDisbandGuildAck{ //project game
  1454. int32 error = 1; //错误码
  1455. }
  1456. //申请加入公会请求
  1457. message CSApplyGuildReq{ //project game|guild //RouteRule game
  1458. uint64 guild_id = 1; //公会ID
  1459. uint64 uid = 2; //UID
  1460. int32 level = 3; //玩家等级//服务器填写
  1461. int32 op_type = 4; //操作类型:1加入公会,2取消加入公会
  1462. }
  1463. //申请加入公会返回给请求人
  1464. message SCApplyGuildAck{ //project game
  1465. int32 error = 1; //错误码
  1466. uint64 guild_id = 2; //公会ID
  1467. int32 op_type = 3; //操作类型:1加入公会,2取消加入公会
  1468. }
  1469. //退出公会请求
  1470. message CSQuitGuildReq{ //project game|guild //RouteRule game
  1471. uint64 guild_id = 1; //公会ID//服务器填写
  1472. uint64 uid = 2; //UID//服务器填写
  1473. }
  1474. //退出公会返回
  1475. message SCQuitGuildAck{ //project game
  1476. int32 error = 1; //错误码
  1477. }
  1478. //请求踢除公会成员请求
  1479. message CSKickGuildMemberReq{ //project game|guild //RouteRule game
  1480. uint64 uid = 1; //成员ID
  1481. uint64 guild_id = 2; //公会ID//服务器填写
  1482. uint64 pre_uid = 3; //会长ID
  1483. }
  1484. //请求踢除公会成员返回
  1485. message SCKickGuildMemberAck{ //project game
  1486. int32 error = 1; //错误码
  1487. uint64 uid = 2; //成员ID
  1488. }
  1489. message SCKickGuildMemberNtf { //project game|social
  1490. uint64 guild_id = 1; //成员ID
  1491. uint64 uid = 2; //UID
  1492. }
  1493. //提降玩家官职请求
  1494. message CSChangeMemberTitleReq{ //project game|guild //RouteRule game
  1495. uint64 uid = 1; //成员ID
  1496. int32 title = 2; //成员头衔
  1497. uint64 pre_uid = 3; //成员ID//服务器填写
  1498. uint64 guild_id = 4; //公会ID//服务器填写
  1499. }
  1500. //提降玩家官职返回
  1501. message SCChangeMemberTitleAck{ //project game
  1502. int32 error = 1; //错误码
  1503. uint64 uid = 2; //成员ID
  1504. int32 title = 3; //成员头衔
  1505. }
  1506. message SCChangeMemberTitleNtf{ //project game|social
  1507. uint64 guild_id = 1; //公会ID
  1508. repeated KeyValueType64 uid_list = 2;
  1509. uint64 uid = 3; //服务器使用
  1510. }
  1511. //公会改名
  1512. message CSGuildRenameReq { //project game|guild //RouteRule game
  1513. string guild_name = 1;
  1514. uint64 guild_id = 2; //服务器填写
  1515. uint64 uid = 3; //服务器填写
  1516. }
  1517. message SCGuildRenameAck { //project game
  1518. int32 error = 1;
  1519. string guild_name = 2;
  1520. }
  1521. //公会公告修改
  1522. message CSGuildReNoticeReq { //project game|guild //RouteRule game
  1523. string guild_notice = 1; //新公告
  1524. uint64 guild_id = 2; //公会ID//服务器填写
  1525. uint64 uid = 3; //操作人ID//服务器填写
  1526. }
  1527. message SCGuildReNoticeAck { //project game
  1528. int32 error = 1;
  1529. string guild_notice = 2;
  1530. }
  1531. //设置公会招募信息
  1532. message CSSetGuildInfoReq { //project game|guild //RouteRule game
  1533. uint64 guild_id = 1; //公会ID
  1534. int32 guild_badge = 2; //公会徽章
  1535. int32 join_level = 3; //加入等级
  1536. int32 join_type = 4; //加入类型
  1537. string recruit_notice = 5; //招募公告
  1538. uint64 uid = 6; //UID
  1539. }
  1540. message SCSetGuildInfoAck{ //project game
  1541. int32 error = 1; //错误码
  1542. int32 guild_badge = 2; //公会徽章
  1543. int32 join_level = 3; //加入等级
  1544. int32 join_type = 4; //加入类型
  1545. string recruit_notice = 5; //招募公告
  1546. }
  1547. //公会日志请求
  1548. message CSGuildLogInfoReq { //project game|guild //RouteRule game
  1549. uint64 guild_id = 1; //服务器填写
  1550. int64 log_time = 2;
  1551. }
  1552. message SCGuildLogInfoAck { //project game
  1553. repeated GuildLog log = 1;
  1554. bool is_end = 2;
  1555. }
  1556. //公会申请列表请求
  1557. message CSGuildApplyDataReq { //project game|guild //RouteRule game
  1558. uint64 uid = 1; //成员ID//服务器填写
  1559. uint64 guild_id = 2; //公会ID
  1560. }
  1561. //公会申请列表返回
  1562. message SCGuildApplyDataAck { //project game
  1563. int32 error = 1;
  1564. repeated uint64 uid_list = 2;
  1565. }
  1566. //处理入会申请
  1567. message CSApplyInfoHandleReq{ //project game|guild //RouteRule game
  1568. KeyValueType64 apply = 1; //key:UID value:1:同意, 2:拒绝
  1569. int32 handle_type = 2; //0:处理apply: 1:全部接受,2:全部拒绝
  1570. uint64 guild_id = 3; //公会ID//服务器填写
  1571. uint64 uid = 4; //成员ID//服务器填写
  1572. repeated uint64 uid_list = 5; //处理的uid列表
  1573. }
  1574. //处理入会申请返回
  1575. message SCApplyInfoHandleAck{ //project game
  1576. int32 error = 1;
  1577. uint64 guild_id = 2; //公会ID
  1578. int32 handle_type = 3; //0:处理apply: 1:全部接受,2:全部拒绝
  1579. repeated KeyValueType64 uid_list = 4; //处理Key:UID, Value:1:同意,2:拒绝,3、未处理 value2:ErrorCode
  1580. }
  1581. message SCApplyInfoHandleNtf { //project social|game
  1582. int32 apply_result = 1; //申请结果 1:通过 2:拒绝
  1583. uint64 uid = 2; //申请人ID//服务器使用
  1584. uint64 guild_id = 3; //公会ID
  1585. GuildNotifyData data = 4; //公会信息列表
  1586. }
  1587. //查看其他公会信息
  1588. message CSGuildInfoReq{ //project game|guild //RouteRule game
  1589. uint64 guild_id = 1; //公会ID
  1590. uint64 uid = 2; //申请人ID//服务器使用
  1591. }
  1592. //返回其他公会信息
  1593. message SCGuildInfoAck{ //project game
  1594. int32 error = 1;
  1595. GuildBase guild_Base = 2; //公会信息 //公会日志太大了,单独请求,这里不发
  1596. repeated MemberBrief mem_brief = 3; //公会成员基础信息
  1597. bool apply = 4; //是否申请
  1598. }
  1599. //查看自己公会信息
  1600. message CSGetSelfGuildInfoReq{ //project game|guild //RouteRule game
  1601. uint64 guild_id = 1; //公会ID//服务器填写
  1602. uint64 uid = 2; //UID//服务器填写
  1603. }
  1604. //返回自己公会信息
  1605. message SCGetSelfGuildInfoAck{ //project game
  1606. int32 error = 1;
  1607. GuildBase guild_Base = 2; //公会信息 //公会日志太大了,单独请求,这里不发
  1608. repeated MemberBrief mem_brief = 3; //公会成员基础信息
  1609. RoleGuild role_guild = 4; //公会个人活跃度
  1610. uint32 total_active = 5; //近7天公会活跃度
  1611. bool apply_list = 6; //公会是否有申请
  1612. int32 guild_battle_state = 7; //公会战状态(1:未开始,2:进行中,3:已结束)
  1613. uint64 next_state_begin = 8; //下阶段开始时间
  1614. uint32 cp_num = 9; //公会贡献点
  1615. uint32 guild_battle_rank = 10; //公会贡献点名次
  1616. }
  1617. //公会成员信息请求
  1618. message CSGuildMemberInfoReq { //project game|guild //RouteRule game
  1619. uint64 guild_id = 1; //公会ID
  1620. repeated uint64 uid_list = 2; //公会成员列表
  1621. }
  1622. message SCGuildMemberInfoAck { //project game
  1623. int32 error = 1; //错误码
  1624. uint64 guild_id = 2; //公会ID
  1625. repeated MemberInfo member_data = 3; //成员信息,玩家公会数据+简介
  1626. }
  1627. //请求推荐公会
  1628. message CSRecommendGuildInfoReq{ //project game|guild //RouteRule game
  1629. uint64 uid = 1; //服务器使用
  1630. int32 req_count = 2; //请求次数//服务器使用
  1631. }
  1632. //返回推荐的公会
  1633. message SCRecommendGuildInfoAck{ //project game
  1634. int32 error = 1; //错误码
  1635. repeated GuildNotifyData data = 2; //公会信息列表
  1636. }
  1637. message CSOnlinePlayerGuildReq { //project game|guild //RouteRule game
  1638. uint64 uid = 1; //uid//服务器填写
  1639. uint64 guild_id = 2; //公会ID//服务器填写
  1640. }
  1641. //玩家上线时,公会服务器返回数据
  1642. message SCOnlinePlayerGuildAck { //project game
  1643. GuildNotifyData data = 1; //公会简介
  1644. int64 next_join = 2; //下次加入公会时间
  1645. bool boss = 3; //true:有可挑战boss
  1646. repeated MessageContentInfo msgRec = 4;
  1647. bool in_guild_battle = 5; //true公会战入口开启,false公会战入口关闭
  1648. }
  1649. message CSSearchGuildReq { //project game|guild //RouteRule game
  1650. string search_string = 1; //查找公会(名字或者ID)
  1651. uint64 uid = 2; //uid//服务器填写
  1652. }
  1653. message SCSearchGuildAck { //project game
  1654. int32 error = 1; //错误码
  1655. string search_string = 2; //查找公会
  1656. repeated GuildNotifyData data = 3; //公会简介信息
  1657. }
  1658. message SCQuitGuildCDNtf {
  1659. int32 quit_num = 1; //退出次数
  1660. int64 next_join = 2; //下次加入时间
  1661. }
  1662. //公会boss数据请求
  1663. message CSGuildBossInfoReq { //project game|guild //RouteRule game
  1664. uint64 guild_id = 1; //公会ID//服务器填写
  1665. }
  1666. message SCGuildBossInfoAck { //project game
  1667. int32 error = 1; //错误码
  1668. repeated GuildBossData boss_data = 2;
  1669. repeated KeyValueType boss_fight = 3; //boss战斗次数/key:bossID value:当前战斗过的次数
  1670. uint64 elite_boss_cd = 4; //精英bossCD时间
  1671. }
  1672. //公会boss战斗日志请求
  1673. message CSGuildBossLogReq { //project game|guild //RouteRule game
  1674. uint64 log_time = 1; //log时间
  1675. uint32 boss_id = 2; //战斗的BOSSID
  1676. uint64 guild_id = 3; //公会ID//服务器填写
  1677. }
  1678. message SCGuildBossLogAck { //project game
  1679. int32 error = 1; //错误码
  1680. uint32 boss_id = 2; //战斗的BOSSID
  1681. repeated GuildBossLogDetial logs = 3;
  1682. bool is_end = 4; //true:结束,false:未结束
  1683. }
  1684. //挑战boss
  1685. message CSGuildBossChallengeReq { //project game|guild //RouteRule game //confirm
  1686. uint32 boss_id = 1; //战斗的BOSSID
  1687. uint32 damage = 2; //对boss造成的伤害
  1688. uint32 battle_time = 3; //对boss造成的伤害
  1689. uint64 guild_id = 4; //公会ID//服务器填写
  1690. uint64 uid = 5; //服务器填写
  1691. }
  1692. message SCGuildBossChallengeAck { //project game
  1693. int32 error = 1; //错误码
  1694. uint32 boss_id = 2; //战斗的BOSSID
  1695. repeated KeyValueType reward = 3; //获得的奖励
  1696. uint32 damage = 4; //造成的伤害
  1697. }
  1698. //召唤boss
  1699. message CSGuildBossSummonReq { //project game|guild //RouteRule game
  1700. uint32 boss_id = 1; //召唤的BOSSid
  1701. uint64 guild_id = 2; //公会ID//服务器填写
  1702. uint64 uid = 3; //uid
  1703. }
  1704. message SCGuildBossSummonAck { //project game
  1705. int32 error = 1; //错误码
  1706. uint32 boss_id = 2; //召唤的BOSSid
  1707. uint32 guild_active = 3; //公会活跃度
  1708. int64 fight_start = 4; //战斗结束
  1709. int32 fight_count = 5; //当前boss剩余次数
  1710. }
  1711. //大事馈赠奖励查看
  1712. message CSGuildBossExtraRewardReq { //project game|guild //RouteRule game
  1713. uint32 boss_id = 1; //BossId
  1714. uint64 guild_id = 2; //公会ID//服务器填写
  1715. }
  1716. message SCGuildBossExtraRewardAck { //project game
  1717. int32 error = 1; //错误码
  1718. uint32 boss_id = 2; //BossId
  1719. uint32 max_dam = 3; //最大伤害
  1720. CommonPlayerBriefInfo brief = 4; //玩家简介
  1721. }
  1722. //公会改名NTF
  1723. message SCGuildNameChangeNtf { //project game
  1724. uint64 guild_id = 1; //公会ID
  1725. string guild_name = 2; //公会名字
  1726. uint64 uid = 3; //UID//服务器用
  1727. }
  1728. //公会boss刷新
  1729. message SCGuildBossChangeNtf { //project game
  1730. uint64 guild_id = 1; //公会ID
  1731. uint32 boss_id = 2; //bossID
  1732. int32 fight_count = 3; //boss剩余次数
  1733. }
  1734. //公会战
  1735. //公会战开始/结束时刻通知
  1736. message SCGuildBattleStageNtf {
  1737. bool in_guild_battle = 1; //true公会战入口开启,false公会战入口关闭
  1738. }
  1739. //公会战贡献点Req
  1740. message CSGuildBattleCPRankReq { //project game //RouteRule game
  1741. }
  1742. message SCGuildBattleCPRankAck {
  1743. int32 error = 1; //
  1744. repeated GuildBattleCP cp_list = 2; //贡献点列表
  1745. int32 self_guild_rank = 3; //自己公会贡献点名次
  1746. int32 self_guild_cp = 4; //自己公会贡献点
  1747. }
  1748. //公会战对阵表
  1749. message CSGuildBattleCountPartReq { //project game //RouteRule game
  1750. }
  1751. message SCGuildBattleCountPartAck {
  1752. int32 error = 1; //错误码
  1753. uint64 champion = 2; //冠军
  1754. int32 cur_stge = 3; //当前阶段
  1755. uint64 tournament_prepare = 4; //8-4准备时间
  1756. uint64 tournament_begin = 5; //8-4开始
  1757. uint64 tournament_end = 6; //8-4结束
  1758. uint64 semifinals_prepare = 7; //4-2准备时间
  1759. uint64 semifinals_begin = 8; //4-2开始
  1760. uint64 semifinals_end = 9; //4-2结束
  1761. uint64 finals_prepare = 10; //2-1准备时间
  1762. uint64 finals_begin = 11; //2-1开始
  1763. uint64 finals_end = 12; //2-1结束
  1764. repeated CountTableData data = 13; //对阵表数据
  1765. }
  1766. //mvp 数据请求
  1767. message CSGuildBattleMvpInfoReq { //project game //RouteRule game
  1768. int32 guild_battle_idx = 1; //公会战索引(1 / 2,3 / 4,5,6,7)
  1769. }
  1770. message SCGuildBattleMvpInfoAck {
  1771. int32 error = 1;
  1772. int32 guild_battle_idx = 2; //公会战索引(1 / 2,3 / 4,5,6,7)
  1773. repeated GuildBattleDetail detail = 3; //公会战 公会的详细信息
  1774. CountTableData count_part = 4; //对阵信息
  1775. }
  1776. message CSGuildBattleMvpDetailReq { //project game //RouteRule game
  1777. int32 mvp_type = 1; //mvp类型(1:积分 2:击杀)
  1778. int32 req_rank = 2; //请求的起始排名
  1779. int32 guild_battle_idx = 3; //公会战索引(1 / 2,3 / 4,5,6,7)
  1780. }
  1781. message SCGuildBattleMvpDetailAck {
  1782. int32 mvp_type = 1; //mvp类型(1:积分 2:击杀)
  1783. repeated GuildBattleMvp mvp = 2; //mvp列表(目前就2个)
  1784. int32 req_rank = 3; //请求的起始排名
  1785. int32 guild_battle_idx = 4; //公会战索引(1 / 2,3 / 4,5,6,7)
  1786. }
  1787. //公会战结束
  1788. //获取对阵双方信息(打开界面时的信息)
  1789. message CSGuildBattleInfoReq { //project game|guild //RouteRule game
  1790. int32 guild_battle_idx = 1; //1 |2,3 |4,5,6 7(7场战斗中的一场)
  1791. uint64 self_guild_id = 2; //用来判断是参赛者还是旁观者 服务器使用
  1792. }
  1793. message SCGuildBattleInfoAck { //project game
  1794. int32 error = 1; //错误码
  1795. int32 guild_battle_idx = 2;
  1796. uint64 battle_start_time = 3;
  1797. uint64 battle_end_time = 4;
  1798. repeated KeyValueType64 battle_data_list = 5; //[key:guildid, value:score,value2:daochang, value3:badge,strval:name]
  1799. GuildBattleSelfData self_data = 6; //个人信息
  1800. GuildPosIdxData challenge_pos_data = 7; //当前战位信息
  1801. int32 buy_challenge_num = 8; //购买的战斗次数(跟人走)
  1802. }
  1803. //设置自动购买,复活CD(数据变更通过SCGuildBattleInfoNtf)
  1804. message CSGuildBattleSettingReq { //project game|guild //RouteRule game
  1805. int32 guild_battle_idx = 1;
  1806. bool auto_challenge = 2;
  1807. bool auto_reborn = 3;
  1808. uint64 self_guild_id = 4; //服务器使用
  1809. }
  1810. message SCGuildBattleSettingAck { //project game
  1811. int32 error = 1; //错误码
  1812. int32 guild_battle_idx = 2;
  1813. GuildBattleSelfData self_data = 3; //个人信息
  1814. }
  1815. //挑战次数手动购买
  1816. message CSGuildBattleBuyChallengeReq { //project game|guild //RouteRule game
  1817. int32 guild_battle_idx = 1;
  1818. uint64 self_guild_id = 2; //服务器使用
  1819. }
  1820. message SCGuildBattleBuyChallengeAck { //project game
  1821. int32 error = 1; //错误码
  1822. GuildBattleSelfData self_data = 2; //个人信息
  1823. int32 buy_challenge_num = 3; //购买的战斗次数(跟人走)
  1824. int32 guild_battle_idx = 4; //
  1825. }
  1826. //手动重置复活CD
  1827. message CSGuildBattleRebornReq { //project game|guild //RouteRule game
  1828. int32 guild_battle_idx = 1;
  1829. uint64 self_guild_id = 2; //服务器使用
  1830. }
  1831. message SCGuildBattleRebornAck { //project game
  1832. int32 error = 1; //错误码
  1833. GuildBattleSelfData self_data = 2; //个人信息
  1834. int32 guild_battle_idx = 3; //
  1835. }
  1836. //战斗排行(1积分排行/2击杀排行)
  1837. message CSGuildBattleRankListReq { //project game|guild //RouteRule game
  1838. int32 guild_battle_idx = 1;
  1839. int32 rank_type = 2; //1积分,2击杀
  1840. int32 page_idx = 3;
  1841. }
  1842. message SCGuildBattleRankListAck { //project game
  1843. int32 error = 1; //错误码
  1844. int32 page_idx = 2;
  1845. int32 guild_battle_idx = 3;
  1846. repeated GuildBattleRank rank_data_list = 4;
  1847. repeated KeyValueType64 battle_data_list = 5; //[key:guildid, value:score,value2:daochang, value3:badge,strval:name]
  1848. bool is_finish = 6; //当前战斗是否结束
  1849. bool win_guild = 7; //胜利公会ID
  1850. int32 rank_type = 8; //1积分,2击杀
  1851. }
  1852. //获取位置信息,上限20
  1853. message CSGuildBattlePosIdxListReq { //project game|guild //RouteRule game
  1854. int32 guild_battle_idx = 1;
  1855. repeated int32 pos_idx_list = 2;
  1856. }
  1857. message SCGuildBattlePosIdxListAck { //project game
  1858. int32 error = 1; //错误码
  1859. int32 guild_battle_idx = 2;
  1860. repeated GuildPosIdxData pos_data_list = 3; //占位信息
  1861. }
  1862. //占领记录
  1863. message CSGuildBattleLogReq { //project game|guild //RouteRule game
  1864. int32 guild_battle_idx = 1;
  1865. uint64 begin_time = 2;
  1866. }
  1867. message SCGuildBattleLogAck { //project game
  1868. int32 error = 1; //错误码
  1869. int32 guild_battle_idx = 2;
  1870. repeated GuildBattleLog log_list = 3;
  1871. bool is_end = 4;
  1872. }
  1873. //挑战占位
  1874. message CSGuildBattleChallengeReq { //project game //RouteRule game
  1875. int32 guild_battle_idx = 1;
  1876. int32 pos_idx = 2;
  1877. }
  1878. message SCGuildBattleChallengeAck {
  1879. int32 error = 1; //错误码
  1880. int32 guild_battle_idx = 2;
  1881. int32 pos_idx = 3;
  1882. FightRoleInfo fight_info = 4; //对方玩家信息
  1883. GuildPosIdxData challenge_pos_data = 5;
  1884. repeated KeyValueType fight_buff_list = 6; //buff列表
  1885. repeated KeyValueType self_buff_list = 7; //自己的buff列表
  1886. GuildBattleSelfData self_data = 8; //个人信息 服务器使用
  1887. int32 buy_challenge_num = 9; //购买的战斗次数(跟人走)
  1888. }
  1889. message SCGuildBattleChallengeNtf {
  1890. int32 guild_battle_idx = 1;
  1891. int32 pos_idx = 2;
  1892. GuildBattleSelfData self_data = 3; //个人信息
  1893. int32 buy_challenge_num = 4; //购买的战斗次数(跟人走)
  1894. }
  1895. message CSGuildBattleChallengeResultReq { //project game|guild //RouteRule game
  1896. int32 guild_battle_idx = 1;
  1897. int32 battle_time = 2; //战斗持续时间
  1898. int32 pos_idx = 3;
  1899. uint64 pos_uid = 4; //对手id 玩家赋值uid,机器人赋值机器人id(做校验使用)
  1900. bool battle_result = 5; //true胜利 false失败
  1901. uint64 self_guild_id = 6; //服务器使用
  1902. CommonPlayerBriefInfo bf_info = 7; //服务器使用
  1903. }
  1904. message SCGuildBattleChallengeResultAck { //project game
  1905. int32 error = 1; //错误码
  1906. int32 guild_battle_idx = 2;
  1907. }
  1908. //数据变更通知
  1909. message SCGuildBattleDataChangeNtf { //project game|social
  1910. uint64 ntf_uid = 1;
  1911. int32 guild_battle_idx = 2;
  1912. GuildPosIdxData pos_data = 3;
  1913. GuildBattleSelfData self_data = 4; //个人信息
  1914. bool from_social = 5; //服务器使用 来自social的消息
  1915. }
  1916. //保持战斗状态消息通知(60s内未收到消息判定为失败)
  1917. message CSGuildBattleChallengePingReq { //project game|guild //RouteRule game
  1918. int32 guild_battle_idx = 1;
  1919. int32 pos_idx = 2; //正在挑战的占位
  1920. }
  1921. message SCGuildBattleChallengePingAck { //project game
  1922. int32 error = 1; //错误码
  1923. }
  1924. //客户端刷新最新pk数据(道场数量/积分数量)
  1925. message CSGuildBattlePKDataReq { //project game|guild //RouteRule game
  1926. int32 guild_battle_idx = 1;
  1927. }
  1928. message SCGuildBattlePKDataAck { //project game
  1929. int32 error = 1; //错误码
  1930. int32 guild_battle_idx = 2;
  1931. repeated KeyValueType64 battle_data_list = 3; //
  1932. }
  1933. //购买战斗buff
  1934. message CSGuildBattleBuyBuffReq { //project game|guild //RouteRule game
  1935. int32 guild_battle_idx = 1;
  1936. repeated int32 buff_id_list = 2;
  1937. }
  1938. message SCGuildBattleBuyBuffAck { //project game
  1939. int32 error = 1; //错误码
  1940. int32 guild_battle_idx = 2;
  1941. GuildBattleSelfData self_data = 3; //个人信息
  1942. }
  1943. message GuildDemonRank {
  1944. uint64 uuid = 1; //公会ID/玩家ID
  1945. int32 rank = 2; //排名
  1946. uint64 damage = 3; //战斗伤害
  1947. string guild_name = 4; //公会名
  1948. int32 guild_badge = 5; //公会徽章
  1949. }
  1950. message GuildDemonGuildRank {
  1951. GuildNotifyData data = 1; //公会信息列表
  1952. int32 rank = 2; //排名
  1953. uint64 damage = 3; //战斗伤害
  1954. }
  1955. //公会魔王信息请求
  1956. message CSGuildDemonInfoReq { //project game|guild //RouteRule game
  1957. uint64 guild_id = 1; //服务器用
  1958. uint64 uid = 2; //服务器用
  1959. }
  1960. message SCGuildDemonInfoAck { //project game
  1961. int32 demon_id = 1; //当天的公会bossID
  1962. uint64 next_up_time = 2; //下一次升级时间
  1963. int32 demon_level = 3; //魔王等级
  1964. uint64 end_time = 4; //当天挑战结束时间
  1965. int32 left_fight_count = 5; //剩余战斗次数
  1966. int32 left_buy_count = 6; //剩余战斗次数
  1967. uint64 total_boss_damage = 7; //boss总伤害
  1968. uint64 damage = 8; //我的战斗伤害
  1969. uint64 mvp_damage = 9; //mvp伤害
  1970. CommonPlayerBriefInfo mvp_brief = 10; //玩家昵称
  1971. repeated DemonDamage rank_list = 11; //公会玩家排名列表
  1972. uint64 req_uid = 12; //请求的玩家ID
  1973. }
  1974. //公会魔王战斗请求
  1975. message CSGuildDemonFightReq { //project game|guild //RouteRule game
  1976. int32 demon_id = 1;
  1977. uint64 damage = 2; //总伤害
  1978. }
  1979. message SCGuildDemonFightAck { //project game
  1980. int32 error = 1;
  1981. int32 demon_id = 2; //bossid
  1982. int32 fight_count = 3; //剩余战斗次数
  1983. uint64 total_damage = 4; //boss总伤害
  1984. uint64 self_damage = 5; //自己总伤害
  1985. repeated KeyValueType base_reward = 6; //战斗基础奖励
  1986. }
  1987. //请求公会魔王公会排名
  1988. message CSGuildDemonGuildRankReq { //project game|guild //RouteRule game
  1989. int32 page = 1; //页签
  1990. uint64 guild_id = 2; //公会ID
  1991. uint64 uid = 3; //服务器用
  1992. }
  1993. message SCGuildDemonGuildRankAck { //project game
  1994. int32 error = 1;
  1995. int32 page = 2; //页签
  1996. repeated GuildDemonGuildRank rank_list = 3; //列表
  1997. GuildDemonGuildRank self_guild = 4; //自己公会
  1998. bool is_end = 5; //是否结束
  1999. uint64 uid = 6; //服务器用
  2000. }
  2001. //请求公会魔王最强公会个人排名
  2002. message CSGuildDemonMVPRankReq { //project game|guild //RouteRule game
  2003. int32 page = 1; //页签
  2004. uint64 guild_id = 2; //
  2005. uint64 uid = 3; //服务器用
  2006. }
  2007. message SCGuildDemonMVPRankAck { //project game
  2008. int32 error = 1;
  2009. int32 page = 2; //页签
  2010. repeated GuildDemonRank rank_list = 3; //列表
  2011. GuildDemonRank self_guild_mvp = 4; //自己公会MVP
  2012. CommonPlayerBriefInfo mvp_brief = 5; //玩家昵称
  2013. bool is_end = 6; //是否结束
  2014. uint64 uid = 7; //服务器用
  2015. }
  2016. //请求购买公会魔王战斗次数
  2017. message CSGuildDemonBuyFightCountReq { //project game //RouteRule game
  2018. int32 fight_count = 1; //购买次数
  2019. }
  2020. message SCGuildDemonBuyFightCountAck { //project game
  2021. int32 error = 1; //
  2022. int32 left_buy_count = 2; //剩余购买次数
  2023. int32 left_fight_count = 3; //剩余战斗
  2024. }
  2025. /////////////////////////////////////////////////////////pet
  2026. //宠物数据变更(客户端需要判断数据库不为空时才处理)
  2027. message SCPetChangeNtf {
  2028. repeated PetData pet_list = 1; //变更/增加
  2029. repeated uint32 del_pet_list = 2; //删除宠物id列表
  2030. repeated PetManualST pet_manual_list = 3; //宠物图鉴
  2031. repeated AssistIdxData assist_pet_list = 4; //援助宠物列表
  2032. }
  2033. //宠物升级
  2034. message CSPetLevelUpReq { //project game //RouteRule game
  2035. uint32 pet_id = 1;
  2036. }
  2037. message SCPetLevelUpAck {
  2038. int32 error = 1; //错误码
  2039. uint32 pet_id = 2;
  2040. }
  2041. //宠物进阶
  2042. message CSPetAdvanceReq { //project game //RouteRule game
  2043. uint32 pet_id = 1; //需要进阶的宠物
  2044. repeated uint32 pet_list = 2; //进阶消耗材料
  2045. }
  2046. message SCPetAdvanceAck {
  2047. int32 error = 1; //错误码
  2048. }
  2049. //宠物领悟
  2050. message CSPetSkillLevelUpReq { //project game //RouteRule game
  2051. uint32 pet_id = 1;
  2052. uint32 cost_pet_id = 2;
  2053. }
  2054. message SCPetSkillLevelUpAck {
  2055. int32 error = 1; //错误码
  2056. uint32 pet_id = 2;
  2057. int32 skill_id = 3;
  2058. }
  2059. //宠物分解
  2060. message CSPetDecomposeReq { //project game //RouteRule game
  2061. repeated uint32 pet_id_list = 1;
  2062. }
  2063. message SCPetDecomposeAck {
  2064. int32 error = 1; //错误码
  2065. repeated KeyValueType item_list = 2; //分解返回材料
  2066. }
  2067. //获取羁绊列表数据
  2068. message CSPetBondListReq { //project game //RouteRule game
  2069. }
  2070. message SCPetBondListAck {
  2071. int32 error = 1; //错误码
  2072. repeated PetBondData bond_list = 2;
  2073. repeated KeyValueType64Str uid_name_list = 3; //名字列表
  2074. }
  2075. //玩家主动操作导致的羁绊数据变更(进阶,分解)
  2076. message SCPetBondListNtf {
  2077. repeated PetBondData bond_list = 1;
  2078. }
  2079. //获取激活羁绊所需的宠物列表(援助列表,好友/公会)
  2080. message CSPetBondAssistListReq { //project game //RouteRule game
  2081. int32 bond_cfg_id = 1; //key:1品质 2进阶等级 3特殊属性
  2082. }
  2083. message SCPetBondAssistListAck {
  2084. int32 error = 1;
  2085. int32 bond_cfg_id = 2;
  2086. repeated AssistData bond_pet_list = 3; //
  2087. }
  2088. //宠物羁绊激活
  2089. message CSPetBondActiveReq { //project game //RouteRule game
  2090. repeated PetBondData bond_data_list = 1;
  2091. }
  2092. message SCPetBondActiveAck {
  2093. int32 error = 1; //错误码
  2094. repeated PetBondData bond_data_list = 2;
  2095. repeated KeyValueType64Str uid_name_list = 3; //名字列表
  2096. }
  2097. //宠物援助
  2098. message CSPetAssistReq { //project game //RouteRule game
  2099. repeated uint32 pet_id_list = 1;
  2100. }
  2101. message SCPetAssistAck {
  2102. int32 error = 1; //错误码
  2103. repeated AssistIdxData assist_list = 2; //援助宠物
  2104. }
  2105. //上阵/下阵
  2106. message CSPetBattleReq { //project game //RouteRule game
  2107. repeated KeyValueType battle_list = 1;
  2108. }
  2109. message SCPetBattleAck {
  2110. int32 error = 1; //错误码
  2111. }
  2112. //图鉴奖励获取
  2113. message CSPetManualRewardReq { //project game //RouteRule game
  2114. int32 pet_cfg_id = 1;
  2115. int32 pet_adv_level = 2; //进阶等级奖励
  2116. int32 pet_id = 3;
  2117. }
  2118. message SCPetManualRewardAck {
  2119. int32 error = 1; //错误码
  2120. repeated KeyValueType reward_list = 2;
  2121. int32 pet_cfg_id = 3;
  2122. }
  2123. //最早收集到宠物最高进阶等级获取
  2124. message CSPetAdvAchievementReq { //project game //RouteRule game
  2125. int32 pet_cfg_id = 1;
  2126. }
  2127. message SCPetAdvAchievementAck {
  2128. int32 error = 1; //错误码
  2129. int32 pet_cfg_id = 2;
  2130. CommonPlayerBriefInfo brief = 3; //玩家昵称
  2131. uint64 achievement_time = 4; //达成该成就时的时间
  2132. }
  2133. //请求宠物冲榜活动数据
  2134. message CSPetActivityReq { //project game //RouteRule game
  2135. }
  2136. message SCPetActivityAck {
  2137. int32 error = 1; //错误码
  2138. int32 self_rank = 2; //自己排名
  2139. int32 self_score = 3; //自己分数
  2140. uint64 end_time = 4; //结束时间
  2141. bool challeng_reward = 5; //挑战奖励是否领取
  2142. bool rank_reward = 6; //排名奖励是否领取
  2143. repeated RushPetData top_data = 7; //这里只发送前10名
  2144. }
  2145. message CSPetActivityRankReq { //project game|rank //RouteRule game
  2146. int32 page = 1;
  2147. }
  2148. message SCPetActivityRankAck { //project game
  2149. int32 error = 1; //错误码
  2150. int32 page = 2;
  2151. repeated RushPetData top_data = 3;
  2152. }
  2153. //宠物印记(装备)
  2154. //印记数据变更
  2155. message SCPetEquipDataNtf {
  2156. repeated PetEquipData pet_equip_list = 1; //宠物印记
  2157. bool ignore = 2; //true不弹框提示,false正常提示
  2158. }
  2159. //印记升级/进阶
  2160. message CSPetEquipLevelUpReq { //project game //RouteRule game
  2161. uint32 pet_equip_id = 1; //动态生成的id
  2162. }
  2163. message SCPetEquipLevelUpAck {
  2164. int32 error = 1; //错误码
  2165. PetEquipData pet_equip = 2;
  2166. }
  2167. //印记启用
  2168. message CSPetEquipUpReq { //project game //RouteRule game
  2169. uint32 pet_id = 1;
  2170. repeated KeyValueType slot_list = 2; //key=slotindex val=petequipid
  2171. }
  2172. message SCPetEquipUPAck {
  2173. int32 error = 1; //错误码
  2174. uint32 pet_id = 2;
  2175. repeated KeyValueType slot_list = 3; //key=slotindex val=petequipid
  2176. }
  2177. //印记卸下
  2178. message CSPetEquipDownReq { //project game //RouteRule game
  2179. uint32 pet_id = 1;
  2180. int32 slot_index = 2;
  2181. }
  2182. message SCPetEquipDownAck {
  2183. int32 error = 1; //错误码
  2184. uint32 pet_id = 2;
  2185. int32 slot_index = 3;
  2186. }
  2187. //宠物系统优化
  2188. //背包界面只下发必要数据,后续通过打开宠物界面主动获取
  2189. message CSPetDetailInfoReq { //project game //RouteRule game
  2190. repeated uint32 pet_id_list = 1; //宠物动态ID
  2191. }
  2192. message SCPetDetailInfoAck {
  2193. repeated PetData pet_info_list = 1; //宠物详细信息
  2194. }
  2195. ////宠物契约
  2196. //契约槽位数据变更通知
  2197. message SCPetQiyueDataNtf {
  2198. int32 hero_id = 1; //伙伴(hero)动态id
  2199. PetQiyueInfo qiyue_info = 2; //当前伙伴跟随的宠物契约信息
  2200. }
  2201. //契约槽位解锁
  2202. message CSPetQiyueSlotUnlockReq { //project game //RouteRule game
  2203. int32 hero_id = 1; //伙伴(hero)动态id
  2204. }
  2205. message SCPetQiyueSlotUnlockAck {
  2206. int32 error = 1; //错误码
  2207. int32 hero_id = 2; //伙伴(hero)动态id
  2208. }
  2209. //契约操作添加宠物(替换也使用该协议)
  2210. message CSPetQiyueSlotInReq { //project game //RouteRule game
  2211. int32 hero_id = 1; //伙伴(hero)动态id
  2212. int32 slot_idx = 2; //1-4
  2213. uint32 pet_id = 3; //放入契约槽位宠物(宠物动态id)
  2214. }
  2215. message SCPetQiyueSlotInAck {
  2216. int32 error = 1; //错误码
  2217. int32 hero_id = 2; //伙伴(hero)动态id
  2218. int32 slot_idx = 3; //1-4
  2219. }
  2220. //卸载契约槽宠物
  2221. message CSPetQiyueSlotOutReq { //project game //RouteRule game
  2222. int32 hero_id = 1; //伙伴(hero)动态id
  2223. int32 slot_idx = 2; //1-4,0表示一键卸下该伙伴跟随宠物的觉醒材料宠物
  2224. }
  2225. message SCPetQiyueSlotOutAck {
  2226. int32 error = 1; //错误码
  2227. int32 hero_id = 2; //伙伴(hero)动态id
  2228. int32 slot_idx = 3; //1-4,0表示一键卸下该伙伴跟随宠物的觉醒材料宠物
  2229. }
  2230. //契约总属性面板中出阵宠物契约属性
  2231. message CSPetQiyueBattlePetAttrReq { //project game //RouteRule game
  2232. }
  2233. message SCPetQiyueBattlePetAttrAck {
  2234. int32 error = 1; //错误码
  2235. repeated ActorAttrType actor_list = 2; //
  2236. }
  2237. /////////////////////////////////////////////////////////远征之门
  2238. message SCExpeditionChangeNtf {
  2239. BattleExpedition expedition_info = 1;
  2240. bool day_reset = 2;
  2241. }
  2242. //点击挑战按钮
  2243. message CSExpeditionChallengePreReq { //project game //RouteRule game
  2244. int32 expedition_type = 1; //区域ID
  2245. }
  2246. message SCExpeditionChallengePreAck {
  2247. int32 error = 1; //错误码
  2248. }
  2249. //客户端上报hp,sp,并获取奖励(buff)
  2250. message CSExpeditionChallengeReq { //project game //RouteRule game
  2251. int32 expedition_type = 1;
  2252. int32 battle_level = 2;
  2253. repeated BattleExpeditionActor hero_info_list = 3; //英雄血量
  2254. repeated BattleExpeditionActor boss_change_hp_list = 4; //扣血列表(客户端扣血顺序逻辑帧)
  2255. int32 battle_time = 5; //战斗持续时长(单位秒)
  2256. int32 battle_idx = 6; //1,2,3
  2257. int32 flag = 7; //1战斗开始,2刷新,3战斗结束
  2258. }
  2259. message SCExpeditionChallengeAck{
  2260. int32 error = 1; //错误码
  2261. int32 flag = 2; //1战斗开始,2刷新,3战斗结束 4(胜利的方式战斗结束服务之赋值)
  2262. repeated int32 buff_list = 3; //buff列表
  2263. }
  2264. //战斗结束后选择buff id
  2265. message CSExpeditionSelectBuffReq { //project game //RouteRule game
  2266. int32 select_buff_id = 1; //配置表id
  2267. }
  2268. message SCExpeditionSelectBuffAck {
  2269. int32 error = 1; //错误码
  2270. }
  2271. //领取区域地图宝箱奖励(未领取在隔天重置时统一发送邮件)
  2272. message CSExpeditionRewardReq { //project game //RouteRule game
  2273. int32 expedition_type = 1; //区域地图id(类型)
  2274. int32 boss_idx = 2; //为0表示一键领取
  2275. }
  2276. message SCExpeditionRewardAck {
  2277. int32 error = 1; //错误码
  2278. repeated KeyValueType reward_item_list = 2; //奖励物品
  2279. }
  2280. //设置上阵玩家
  2281. message CSExpeditionBattleHeroReq { //project game //RouteRule game
  2282. repeated int32 battle_hero_list = 1;
  2283. }
  2284. message SCExpeditionBattleHeroAck {
  2285. int32 error = 1; //错误码
  2286. }
  2287. //求助其他玩家(自己英雄死亡发送求助操作)
  2288. message CSExpeditionCallForHelpReq { //project game //RouteRule game
  2289. uint64 assist_help_uid = 1; //为0表示公会求助,如果不存在公会返回错误
  2290. }
  2291. message SCExpeditionCallForHelpAck {
  2292. int32 error = 1; //错误码
  2293. }
  2294. //对方回应求助操作,通知给求助玩家
  2295. message SCExpeditionCallForHelpNtf {
  2296. int32 assist_state = 1; //1成功求助
  2297. CommonPlayerBriefInfo brief = 2;
  2298. }
  2299. //救助 求助的玩家
  2300. message CSExpeditionHelpReq { //project game //RouteRule game
  2301. uint64 be_helped_uid = 1;
  2302. int32 msg_type = 2; //来自私聊还是来自公会(1私聊 3公会)
  2303. uint64 help_msg_send_time = 3; //求助消息发送时的时间
  2304. }
  2305. message SCExpeditionHelpAck {
  2306. int32 error = 1; //错误码
  2307. repeated KeyValueType reward_item_list = 2; //奖励物品
  2308. }
  2309. //勇士积分排行
  2310. message CSExpeditionScoreRankListReq { //project game //RouteRule game
  2311. int32 start_idx = 1;//1[1-10] 2[11-20] 3[21-30] ...
  2312. }
  2313. message SCExpeditionScoreRankListAck {
  2314. int32 error = 1; //错误码
  2315. repeated ExpeditionRankInfo rank_list = 2;
  2316. ExpeditionRankInfo self_rank_info = 3;
  2317. int32 start_idx = 4;
  2318. }
  2319. //远征之门通关地图奖励获取
  2320. message CSExpeditionPassRewardReq { //project game //RouteRule game
  2321. int32 expedition_type = 1; //关卡地图区域Type
  2322. }
  2323. message SCExpeditionPassRewardAck {
  2324. int32 error = 1; //错误码
  2325. repeated KeyValueType reward_item_list = 2; //奖励物品
  2326. }
  2327. /////////////////////////////////////////////////////////精彩活动
  2328. message SCActivitiesStartupNtf {
  2329. repeated ActivitiesData open_activity_list = 1; //开启的活动列表
  2330. //精彩活动
  2331. uint64 cur_day_end_time = 2; //当前天结束时间戳
  2332. //活动数据
  2333. repeated ActivitiesDetailData activity_data_list = 3;
  2334. //首充大礼包时间(达到给定数值记录时间)
  2335. uint64 first_charge_time = 4; //非0表示可以进行奖励领取
  2336. int32 first_charge_reward_state = 5;
  2337. //超值礼包数据
  2338. repeated ActivitiesUnlockRechargeData unlock_charge_list = 6;
  2339. }
  2340. //开启的活动通知
  2341. message SCActivitiesOpenListNtf {
  2342. repeated ActivitiesData activity_list = 1; //开启的活动列表
  2343. }
  2344. //活动数据变更通知
  2345. message SCActivitiesChangeNtf {
  2346. repeated ActivitiesDetailData activity_data_list = 1;
  2347. uint64 cur_day_end_time = 2; //当前天结束时间戳
  2348. }
  2349. //连续登录奖励获取
  2350. //14日目标任务
  2351. //百元礼包
  2352. //每日累计充值
  2353. message CSActivitiesRewardReq { //project game //RouteRule game
  2354. int32 activity_id = 1;
  2355. int32 param = 2; //领取day对应天的奖励 | 任务id
  2356. int32 reward_num = 3; //兑换次数
  2357. }
  2358. message SCActivitiesRewardAck {
  2359. int32 activity_id = 1;
  2360. int32 error = 2; //错误码
  2361. repeated KeyValueType reward_item_list = 3; //奖励物品
  2362. }
  2363. //积分奖励获取
  2364. message CSActivitiesScoreRewardReq { //project game //RouteRule game
  2365. int32 activity_id = 1;
  2366. int32 box_idx = 2; //配置表中的唯一id
  2367. }
  2368. message SCActivitiesScoreRewardAck {
  2369. int32 activity_id = 1;
  2370. int32 error = 2; //错误码
  2371. repeated KeyValueType reward_item_list = 3; //奖励物品
  2372. }
  2373. ///支付活动相关
  2374. //开启超值礼包通知
  2375. message SCActivitiesDiscountsNtf {
  2376. repeated ActivitiesUnlockRechargeData discount_data_list = 1;
  2377. }
  2378. //获取首充奖励
  2379. message CSActivitiesFirstChargeRewardReq { //project game //RouteRule game
  2380. }
  2381. message SCActivitiesFirstChargeRewardAck {
  2382. int32 error = 1;
  2383. repeated KeyValueType reward_item_list = 2; //奖励物品
  2384. }
  2385. message SCActivitiesFirstChargeChangeNtf {
  2386. int32 first_charge_reward_state = 1; //获取奖励状态
  2387. uint64 first_charge_time = 2; //非0表示可以进行奖励领取
  2388. }
  2389. //获取全局服务器数据
  2390. message CSActivitiesCollectionServerDataReq { //project game //RouteRule game
  2391. int32 activity_id = 1;
  2392. }
  2393. message SCActivitiesCollectionServerDataAck {
  2394. int32 error = 1; //错误码
  2395. int32 activity_id = 2;
  2396. repeated KeyValueType data_list = 3; //全局相关数据
  2397. }
  2398. //消耗道具获得好感度(3.8活动)
  2399. message CSActivitiesLikabilityRewardReq { //project game //RouteRule game
  2400. int32 activity_id = 1;
  2401. int32 item_cfg_id = 2; //道具
  2402. int32 likability_level = 3; //道具对应档位
  2403. }
  2404. message SCActivitiesLikabilityRewardAck {
  2405. int32 error = 1; //错误码
  2406. int32 activity_id = 2;
  2407. repeated KeyValueType reward_item_list = 3; //奖励物品
  2408. }
  2409. message CSActivitiesExchangeReq { //project game //RouteRule game
  2410. int32 reward_idx = 1;
  2411. int32 activity_id = 2;
  2412. repeated ExchangeInfo data = 3;
  2413. }
  2414. message SCActivitiesExchangeAck { //project game //RouteRule game
  2415. int32 error = 1;
  2416. int32 reward_idx = 2;
  2417. int32 activity_id = 3;
  2418. int32 exchange_time = 4; //剩余兑换次数
  2419. }
  2420. //集字活动提醒设置
  2421. message CSActivitiesWordNoticeSetReq { //project game //RouteRule game
  2422. int32 activity_id = 1;
  2423. int32 collect_id = 2;
  2424. bool no_notice = 3;
  2425. }
  2426. message SCActivitiesWordNoticeSetAck {
  2427. int32 error = 1;
  2428. int32 activity_id = 2;
  2429. int32 collect_id = 3;
  2430. bool no_notice = 4;
  2431. }
  2432. //转盘活动
  2433. //刷新转盘道具(未开启本轮时操作)
  2434. message CSActivityWheelRefreshReq { //project game //RouteRule game
  2435. int32 activity_id = 1;
  2436. }
  2437. message SCActivityWheelRefreshAck {
  2438. int32 error = 1; //错误码
  2439. }
  2440. //开启本轮转盘(开始获取奖励)
  2441. message CSActivityWheelOpenRewardReq { //project game //RouteRule game
  2442. int32 activity_id = 1;
  2443. }
  2444. message SCActivityWheelOpenRewardAck {
  2445. int32 error = 1; //错误码
  2446. }
  2447. //转一次/转本轮(获取所有奖励)
  2448. message CSActivityWheelRewardReq { //project game //RouteRule game
  2449. int32 activity_id = 1;
  2450. bool reward_all = 2;//false:转一次 true:获取所有奖励
  2451. }
  2452. message SCActivityWheelRewardAck {
  2453. int32 error = 1; //错误码
  2454. bool reward_all = 2; //转一次/转本轮
  2455. repeated WheelRewardItemInfo reward_list = 3; //奖励
  2456. }
  2457. //关闭本轮转盘
  2458. message CSActivityWheelCloseRewardReq { //project game //RouteRule game
  2459. int32 activity_id = 1;
  2460. }
  2461. message SCActivityWheelCloseRewardAck {
  2462. int32 error = 1; //错误码
  2463. }
  2464. //活动召唤
  2465. //召唤
  2466. message CSActivitySummonReq { //project game //RouteRule game
  2467. int32 activity_id = 1; //活动id
  2468. int32 summon_count = 2; //抽取次数(单抽,10连抽)
  2469. }
  2470. message SCActivitySummonAck {
  2471. int32 error = 1; //错误码
  2472. int32 activity_id = 2; //活动ID
  2473. int32 draw_count = 3; //抽卡类型1:抽1次,5:抽五次
  2474. repeated DrawItem item_list = 4; //抽取的奖励列表
  2475. repeated DrawItem extra_item = 5; //保底奖励
  2476. int32 draw_times = 6; //draw_type对应的抽取次数
  2477. int32 add_point = 7; //增加的保底点数
  2478. }
  2479. message CSActivitySignInReq { //project game //RouteRule game
  2480. int32 activity_id = 1; //活动id
  2481. }
  2482. message SCActivitySignInAck {
  2483. int32 error = 1; //错误码
  2484. int32 activity_id = 2; //活动id
  2485. repeated KeyValueType reward_list = 3; //奖励列表
  2486. repeated KeyValueType ext_reward_list = 4; //额外奖励
  2487. uint64 next_sign_time = 5; //下次签到时间
  2488. int32 sign_days = 6; //当前签到天数
  2489. }
  2490. // bt砸蛋活动
  2491. message CSActivitySmashEggsReq { //project game //RouteRule game
  2492. int32 activity_id = 1; // 活动id
  2493. int32 draw_count = 2; // 抽取次数(单抽,10连抽)
  2494. int32 draw_type = 3; // 4金蛋 5彩蛋
  2495. }
  2496. message SCActivitySmashEggsAck {
  2497. int32 error = 1; //错误码
  2498. int32 activity_id = 2; //活动ID
  2499. int32 draw_count = 3; //抽卡类型[1:抽1次, 5:抽5次, 10:抽10次]
  2500. int32 draw_type = 4; // 4金蛋 5彩蛋
  2501. repeated DrawItem item_list = 5; //抽取的奖励列表
  2502. repeated DrawItem extra_item = 6; //保底奖励
  2503. int32 draw_times = 7; //draw_type对应的抽取次数
  2504. int32 add_point = 8; //增加的保底点数
  2505. repeated SystemMessage msg_list = 9; // 活动内的操作消息(砸蛋奖励获取消息)
  2506. }
  2507. // 砸蛋记录获取
  2508. message CSActivitySmashEggsMsgReq { //project game //RouteRule game
  2509. int32 activity_id = 1; // 活动id
  2510. int32 draw_type = 2; // 4金蛋 5彩蛋
  2511. }
  2512. message SCActivitySmashEggsMsgAck {
  2513. repeated SystemMessage act_msg_list = 1; // 活动内的操作消息(砸蛋奖励获取消息)
  2514. }
  2515. /////////////////////////////////////////////////////////拉新(好友邀请功能)
  2516. message SCInvitationStartupNtf {
  2517. RoleInvitation invitation_info = 1;
  2518. }
  2519. message SCInvitationChangNtf{
  2520. RoleInvitation invitation_info = 1;
  2521. repeated uint64 del_member_uid_list = 2;
  2522. }
  2523. //获取邀请码功能信息(无自身邀请码则生成)
  2524. message CSInvitationNumberReq { //project game //RouteRule game
  2525. }
  2526. message SCInvitationNumberAck {
  2527. int32 error = 1; //错误码
  2528. }
  2529. //获取邀请码对应玩家信息
  2530. message CSInvitationNumberUserInfoReq { //project game //RouteRule game
  2531. uint64 invitation_number = 1; //自己的邀请码
  2532. }
  2533. message SCInvitationNumberUserInfoAck {
  2534. int32 error = 1; //错误码
  2535. CommonPlayerBriefInfo brief = 2; //邀请码对应玩家简介信息
  2536. int32 member_num = 3; //邀请码对一个玩家的成员数量
  2537. }
  2538. //填写其他玩家邀请码成为学员
  2539. message CSInvitationBeToMemberReq { //project game //RouteRule game
  2540. uint64 master_invitation_number = 1; //导师邀请码
  2541. uint64 master_uid = 2; //导师uid(做合法性校验)
  2542. }
  2543. message SCInvitationBeToMemberAck {
  2544. int32 error = 1; //错误码
  2545. }
  2546. //拍一拍
  2547. message CSInvitationClickReq { //project game //RouteRule game
  2548. repeated uint64 member_uid_list = 1; //学员uid(填写0表示一键拍一拍)
  2549. }
  2550. message SCInvitationClickAck {
  2551. int32 error = 1; //错误码
  2552. repeated KeyValueType reward_item_list = 2; //奖励物品
  2553. }
  2554. //拍一拍回应
  2555. message CSInvitationClickReplayReq { //project game //RouteRule game
  2556. uint64 master_uid = 1; //有可能玩家已经被解除关系
  2557. }
  2558. message SCInvitationClickReplayAck {
  2559. int32 error = 1; //错误码
  2560. repeated KeyValueType reward_item_list = 2; //奖励物品
  2561. }
  2562. //导师删除学员
  2563. message CSInvitationDelMemberReq { //project game //RouteRule game
  2564. repeated uint64 del_member_uid_list = 1;
  2565. }
  2566. message SCInvitationDelMemberAck {
  2567. int32 error = 1; //错误码
  2568. repeated uint64 del_member_uid_list = 2;
  2569. }
  2570. //获取任务奖励
  2571. message CSInvitationTaskRewardReq { //project game //RouteRule game
  2572. repeated uint32 task_id_list = 1;
  2573. }
  2574. message SCInvitationTaskRewardAck {
  2575. int32 error = 1; //错误码
  2576. repeated uint32 task_id_list = 2;
  2577. repeated KeyValueType reward_item_list = 3; //奖励物品
  2578. }
  2579. /////////////////////////////////////////////////////////充值
  2580. //获取充值信息(订单信息,商品信息)
  2581. message CSPayInfoGetReq { //project game //RouteRule game
  2582. int32 goods_id = 1;
  2583. int32 goods_type = 2; //系统(首充)
  2584. int32 count = 3;
  2585. }
  2586. message SCPayInfoGetAck {
  2587. int32 error = 1; //错误码
  2588. int32 goods_id = 2;
  2589. int32 goods_type = 3;
  2590. string goods_name = 4;
  2591. uint64 cp_order_id = 5; //产品订单号
  2592. float amount = 6; //支付总额
  2593. int32 count = 7; //购买数量
  2594. int32 s_id = 8; //当前服务器zone
  2595. }
  2596. //充值信息变更通知
  2597. message SCPayInfoNtf {
  2598. float total_recharge = 1; //累计充值
  2599. float day_recharge = 2; //每日累计充值
  2600. float bt_zhen_day_recharge = 3; // bt真每日累计充值
  2601. int32 bt_jia_day_recharge = 4; // bt假每日累计充值
  2602. uint64 bt_jia_total_recharge = 5; // bt假累计充值
  2603. }
  2604. //上线获取成功成但是没有获取奖励的订单数据
  2605. message CSPayInfoOrderOKListGetReq { //project game //RouteRule game
  2606. }
  2607. message SCPayInfoOrderOKListGetAck {
  2608. repeated KeyValueType reward_item_list = 1; //奖励物品
  2609. }
  2610. // 充值钱包商店购买(假钱购买)
  2611. // bt服务器版本使用
  2612. message CSCreditRechargeShopItemBuyReq { //project game //RouteRule game
  2613. int32 goods_id = 1;
  2614. int32 count = 2;
  2615. }
  2616. message SCCreditRechargeShopItemBuyAck {
  2617. int32 error = 1; //错误码
  2618. int32 goods_id = 2;
  2619. repeated KeyValueType reward_item_list = 3; //奖励物品
  2620. RuneShopItem shop_item = 4;
  2621. }
  2622. // 充值钱包当前已经使用额度和使用额度上限变化通知
  2623. // 特权商店数据变化通知
  2624. message SCRuneBaseDataNtf {
  2625. RuneBaseData rune_base_data = 1;
  2626. }
  2627. // 特权卡商店每日礼包领取
  2628. message CSRuneSpecialPrivilegeRewardReq { //project game //RouteRule game
  2629. }
  2630. message SCRuneSpecialPrivilegeRewardAck {
  2631. int32 error = 1; //错误码
  2632. repeated KeyValueType reward_item_list = 2; //奖励物品
  2633. }
  2634. /////////////////////////////////////////////////////////百人道场
  2635. //基础收益 / 占领收益 / 剩余挑战次数 变更通知
  2636. message SCDaoChang100DataChangNtf{
  2637. RoleDaoChang100 ntf_data = 1;
  2638. DaoChang100PosIdxData self_pos_data = 2;
  2639. }
  2640. //获取玩家(玩家自身和其他玩家)占位信息
  2641. message CSDaoChang100PlayerInfoReq { //project game|rank //RouteRule game
  2642. uint64 player_uid = 1;
  2643. }
  2644. message SCDaoChang100PlayerInfoAck { //project game
  2645. int32 error = 1; //错误码
  2646. uint64 player_uid = 2;
  2647. DaoChang100PosIdxData player_pos_data = 3;
  2648. bool has_new_log = 4; //占位过期日志
  2649. }
  2650. //获取百人道场位置信息数据
  2651. //列表上限20
  2652. message CSDaoChang100Req { //project game //RouteRule game
  2653. repeated int32 pos_idx_list = 1;
  2654. }
  2655. message SCDaoChang100Ack {
  2656. int32 error = 1; //错误码
  2657. repeated DaoChang100PosIdxData pos_data_list = 2; //占位信息
  2658. }
  2659. //获取占领记录
  2660. message CSDaoChang100LogReq { //project game //RouteRule game
  2661. uint64 begin_time = 1;
  2662. }
  2663. message SCDaoChang100LogAck {
  2664. int32 error = 1; //错误码
  2665. repeated DaoChang100Log log_list = 2;
  2666. bool is_end = 3;
  2667. }
  2668. //挑战占位(挑战成功后发送通知消息SCDaoChang100DataChangNtf)
  2669. message CSDaoChang100ChallengeReq { //project game //RouteRule game
  2670. int32 pos_idx = 1;
  2671. }
  2672. message SCDaoChang100ChallengeAck {
  2673. int32 error = 1; //错误码
  2674. int32 pos_idx = 2;
  2675. FightRoleInfo fight_info = 3; //对方玩家信息
  2676. DaoChang100PosIdxData challenge_pos_data = 4;
  2677. }
  2678. message CSDaoChang100ChallengeResultReq { //project game //RouteRule game
  2679. int32 battle_time = 1; //战斗持续时间
  2680. int32 pos_idx = 2;
  2681. uint64 pos_uid = 3; //对手id 玩家赋值uid,机器人赋值机器人id(做校验使用)
  2682. bool battle_result = 4; //true胜利 false失败
  2683. }
  2684. //获取收益奖励
  2685. message CSDaoChang100TimeRewardReq { //project game //RouteRule game
  2686. }
  2687. message SCDaoChang100TimeRewardAck {
  2688. int32 error = 1; //错误码
  2689. repeated KeyValueType reward_list = 2;
  2690. int32 reward_num = 3; //领取的base奖励次数
  2691. }
  2692. //购买挑战次数
  2693. message CSDaoChang100BuyChallengeCountReq { //project game //RouteRule game
  2694. }
  2695. message SCDaoChang100BuyChallengeCountAck {
  2696. int32 error = 1; //错误码
  2697. }
  2698. //道场口号设置
  2699. message CSDaoChang100SetTipsReq { //project game //RouteRule game
  2700. string tip_desc = 1; //
  2701. }
  2702. message SCDaoChang100SetTipsAck {
  2703. int32 error = 1; //错误码
  2704. }
  2705. //礼包码获取奖励
  2706. message CSGiftRewardReq { //project game|social|gmweb //RouteRule game
  2707. string gift_code = 1;
  2708. uint64 uuid = 2;
  2709. }
  2710. message SCGiftRewardAck { //project social|game
  2711. int32 error = 1; //错误码
  2712. uint64 uuid = 2; //服务器使用
  2713. repeated KeyValueType reward_list = 3; //礼包奖励
  2714. }
  2715. //道场转盘
  2716. message SCDaoChang100WheelChangNtf {
  2717. RoleDaoChang100 ntf_data = 1;
  2718. }
  2719. //打开界面是获取信息(第三赛季未到时无数据,后续打开生成奖励物品)
  2720. message CSDaoChang100WheelReq { //project game //RouteRule game
  2721. }
  2722. message SCDaoChang100WheelAck {
  2723. int32 error = 1; //错误码
  2724. }
  2725. //刷新转盘道具(未开启本轮时操作)
  2726. message CSDaoChang100WheelRefreshReq { //project game //RouteRule game
  2727. }
  2728. message SCDaoChang100WheelRefreshAck {
  2729. int32 error = 1; //错误码
  2730. }
  2731. //开启本轮转盘(开始获取奖励)
  2732. message CSDaoChang100WheelOpenRewardReq { //project game //RouteRule game
  2733. }
  2734. message SCDaoChang100WheelOpenRewardAck {
  2735. int32 error = 1; //错误码
  2736. }
  2737. //转一次/转本轮(获取所有奖励)
  2738. message CSDaoChang100WheelRewardReq { //project game //RouteRule game
  2739. bool reward_all = 1;//false:转一次 true:获取所有奖励
  2740. }
  2741. message SCDaoChang100WheelRewardAck {
  2742. int32 error = 1; //错误码
  2743. bool reward_all = 2; //转一次/转本轮
  2744. repeated WheelRewardItemInfo reward_list = 3; //奖励
  2745. }
  2746. //关闭本轮转盘
  2747. message CSDaoChang100WheelCloseRewardReq { //project game //RouteRule game
  2748. }
  2749. message SCDaoChang100WheelCloseRewardAck {
  2750. int32 error = 1; //错误码
  2751. }
  2752. //获取转盘日志
  2753. message CSDaoChang100WheelLogReq { //project game|db //RouteRule game
  2754. }
  2755. message SCDaoChang100WheelLogAck { //project game
  2756. repeated WheelLogData log_list = 1;
  2757. }
  2758. message SCDaoChang100WheelLogNtf { //project game
  2759. repeated WheelLogData log_list = 1;
  2760. }
  2761. message SCCompetitionStarInfoNtf {
  2762. int32 cur_score = 1; //当前积分
  2763. int32 next_final = 2; //高一档最后一名
  2764. int32 before_first = 3; //低一档第一名
  2765. }
  2766. message CSCompetitionStarInfoReq { //project game //RouteRule game
  2767. }
  2768. message SCCompetitionStarInfoAck {
  2769. int32 error = 1; //错误码
  2770. repeated int32 stars = 2; //当前拥有的星星
  2771. }
  2772. //占卜一次
  2773. message CSCompetitionStarDivineReq { //project game //RouteRule game
  2774. bool use_ticket = 1;
  2775. }
  2776. message SCCompetitionStarDivineAck {
  2777. int32 error = 1; //错误码
  2778. repeated int32 stars = 2; //当前拥有的星星
  2779. int32 star = 3; //本次抽到的星星
  2780. bool light = 4; //true点亮, false灭掉
  2781. }
  2782. //领奖/关闭本轮占卜
  2783. message CSCompetitionStarCloseRewardReq { //project game //RouteRule game
  2784. }
  2785. message SCCompetitionStarCloseRewardAck {
  2786. int32 error = 1; //错误码
  2787. repeated int32 stars = 2; //当前拥有的星星,重置
  2788. repeated KeyValueType reward_list = 3; //奖励列表
  2789. }
  2790. //累计在线奖励获取
  2791. message CSAccOnlineRewardReq { //project game|db //RouteRule game
  2792. }
  2793. message SCAccOnlineRewardAck {
  2794. int32 error = 1; //错误码
  2795. repeated KeyValueType reward_list = 3; //奖励内容
  2796. }
  2797. //偶像季 主动投票
  2798. message CSCompetitionOnVoteReq { //project game //RouteRule game
  2799. int32 ticket_count = 1; //票数
  2800. uint64 uid = 2; //投票目标
  2801. }
  2802. message SCCompetitionOnVoteAck {
  2803. int32 error = 1; //错误码
  2804. uint64 uid = 2; //投票目标
  2805. int32 total_count = 3; //uid总票数
  2806. //前三名的票数
  2807. repeated FansRankData vote_list = 4; //前三名数据
  2808. repeated PlayerShowData detail = 5; //详细信息
  2809. FansRankData vote_target = 6; //投票目标
  2810. int32 ticket_count = 7; //本次投票数量
  2811. repeated KeyValueType64 reward_data = 8; //key uid, value 分数 value2表示领奖数据(value2按位取值)
  2812. }
  2813. //偶像季 请求自己的粉丝榜
  2814. message CSCompetitionSelfFansInfoReq { //project game //RouteRule game
  2815. }
  2816. message SCCompetitionSelfFansInfoAck {
  2817. int32 error = 1; //错误码
  2818. repeated FansVoteData fan_list = 2; //粉丝投我的数据(Key 粉丝ID, value 票数)(策划只需要,固定前十名)
  2819. }
  2820. //偶像季 得票排行榜单
  2821. message CSCompetitionVoteRankReq { //project game //RouteRule game
  2822. int32 page = 1;
  2823. }
  2824. message SCCompetitionVoteRankAck {
  2825. int32 error = 1; //错误码
  2826. int32 page = 2;
  2827. repeated FansRankData rank_data = 3; //排行榜
  2828. bool is_end = 4; //是否结束
  2829. }
  2830. //偶像季 粉丝奖励榜
  2831. message CSCompetitionFansRewardRankReq { //project game //RouteRule game
  2832. int32 page = 1; //应援主角
  2833. }
  2834. message SCCompetitionFansRewardRankAck {
  2835. int32 error = 1; //错误码
  2836. int32 page = 2; //应援主角
  2837. repeated FansBoxData data_list = 3; //粉丝奖励榜列表
  2838. repeated KeyValueType64 reward_data = 4; //key uid, value 分数 value2表示领奖数据(value2按位取值)
  2839. bool is_end = 5; //是否结束
  2840. }
  2841. //偶像季 粉丝领奖
  2842. message CSCompetitionFansGetRewardReq { //project game //RouteRule game
  2843. uint64 uid = 1; //应援主角
  2844. int32 reward_level = 2; //奖励等级
  2845. }
  2846. message SCCompetitionFansGetRewardAck {
  2847. int32 error = 1; //错误码
  2848. uint64 uid = 2; //应援主角
  2849. int32 reward_level = 3; //奖励等级
  2850. repeated KeyValueType reward_list = 4; //
  2851. int32 reward_flag = 5; //领奖标记
  2852. }
  2853. //偶像季 请求每日奖励
  2854. message CSCompetitionFansDayRewardReq { //project game //RouteRule game
  2855. int32 id = 1; //领取ID
  2856. }
  2857. message SCCompetitionFansDayRewardAck {
  2858. int32 error = 1; //错误码
  2859. int32 id = 2; //领取ID
  2860. }
  2861. //偶像季 请求玩家票数排行榜
  2862. message CSCompetitionGetPlayerVoteRankReq { //project game //RouteRule game
  2863. uint64 uid = 1; //领取ID
  2864. }
  2865. message SCCompetitionGetPlayerVoteRankAck {
  2866. int32 error = 1; //错误码
  2867. FansRankData idol_rank_data = 2; //排行榜
  2868. }
  2869. /////////////////////////////////////////////////////////GM操作
  2870. message CSGMCommandReq { //project game //RouteRule game
  2871. string gm_cmd = 1;//gm命令
  2872. uint32 gm_param1 = 2;
  2873. uint32 gm_param2 = 3;
  2874. repeated uint32 gm_param_list = 4;
  2875. }
  2876. message SCGMCommandAck {
  2877. string gm_cmd = 1;//gm命令
  2878. }
  2879. //vip变动通知
  2880. message SCVipChangeNtf {
  2881. int32 vip_level = 1; //vip等级
  2882. int32 vip_exp = 2; //vip总经验
  2883. }
  2884. //抽卡
  2885. message CSDrawCardReq { //project game //RouteRule game
  2886. int32 draw_type = 1; //1:宠物抽卡, 2:卡片抽卡,
  2887. int32 draw_count = 2; //抽卡类型1:抽1次,5:抽五次
  2888. }
  2889. message DrawItem {
  2890. int32 item_id = 1; //道具Id
  2891. int32 item_num = 2; //道具数量
  2892. bool is_new = 3; //是否新获得
  2893. }
  2894. message SCDrawCardAck {
  2895. int32 error = 1; //错误码
  2896. int32 draw_type = 2; //1:宠物抽卡, 2:卡片抽卡,
  2897. int32 draw_count = 3; //抽卡类型1:抽1次,5:抽五次
  2898. repeated DrawItem item_list = 4; //抽取的奖励列表
  2899. repeated DrawItem extra_item = 5; //保底奖励
  2900. int32 draw_times = 6; //draw_type对应的抽取次数
  2901. int32 add_point = 7; //增加的保底点数
  2902. }
  2903. //商店
  2904. message RuneShopItem {
  2905. int32 goods_id = 1; //商品ID
  2906. int64 end_time = 2; //商品结束时间(限时商店使用)
  2907. int32 buy_nums = 3; //可购买数量
  2908. bool buy_limit = 4; //是否限购
  2909. bool first_buy = 5; //是否首次购买
  2910. float price = 6; //价格
  2911. }
  2912. //卢恩商店信息请求
  2913. message CSRuneShopInfoReq { //project game //RouteRule game
  2914. int32 shop_type = 1; //商店类型
  2915. int32 sub_shop = 2; //商店子类型
  2916. }
  2917. message SCRuneShopInfoAck {
  2918. int32 shop_type = 1; //商店类型
  2919. int32 sub_shop = 2; //商店子类型
  2920. repeated RuneShopItem goods_list = 3; //商店道具类型
  2921. int64 end_time = 4; //礼包商店截止时间(根据子类型)
  2922. }
  2923. //购买完成后,通知客户端购买后的商品信息
  2924. message SCRuneShopBuyItemNtf {
  2925. int32 error = 1; //错误码
  2926. int32 shop_type = 2; //商店类型
  2927. int32 sub_shop = 3; //商店子类型
  2928. RuneShopItem shop_item = 4; //商店商品信息
  2929. }
  2930. //卢恩商店红点信息
  2931. message SCRuneFreeRedChangeInfoNtf {
  2932. repeated KeyValueType rune_red = 1; //Key:ShopType,Value:SubShop
  2933. repeated int32 limit_red = 2; //限时礼包商店,售卖物品
  2934. }
  2935. //经验变化推送客户端
  2936. message SCExploreExpChangeNtf {
  2937. int32 total_exp = 1; // 总经验
  2938. int32 MissionExp = 2; // 经验
  2939. int32 level = 3; // 等级
  2940. }
  2941. //请求探索功能数据
  2942. message CSExploreInfoReq { //project game //RouteRule game
  2943. }
  2944. message SCExploreInfoAck {
  2945. int32 total_exp = 1; // 总经验
  2946. int32 level = 2; // 等级
  2947. uint64 startTime = 3; // 开始时间
  2948. uint64 endTime = 4; // 结束时间
  2949. uint64 nextStartTime = 5; // 下一场开启时间
  2950. int32 missionExp = 6; // 活跃度经验
  2951. int32 curRoune = 7; // 当前轮次
  2952. bool bUnlock = 8; // 是否解锁
  2953. bool fullAward = 9; // 满级已领取奖励
  2954. repeated KeyValueType draw_rewar = 10; //key,等级,value:按位取,第一位表示普通奖励,第二位表示高级奖励
  2955. }
  2956. //满级之后奖励领取
  2957. message CSExploreExtraRewardReq { //project game //RouteRule game
  2958. }
  2959. message SCExploreExtraRewardAck {
  2960. int32 error = 1;
  2961. int32 total_exp = 2; //当前总经验
  2962. int32 mission_exp =3;
  2963. repeated KeyValueType award_item = 4;
  2964. }
  2965. //普通等级奖励领取
  2966. message CSExploreRewardReq { //project game //RouteRule game
  2967. int32 level = 1; //领取等级
  2968. int32 reward_type = 2; //领取类型:1表示普通奖励,2高级奖励
  2969. }
  2970. message SCExploreRewardAck {
  2971. int32 error = 1;
  2972. int32 type =2;
  2973. int32 level =3;
  2974. repeated KeyValueType award_item = 4;
  2975. repeated KeyValueType draw_rewar = 5; //key,等级,value:按位取,第一位表示普通奖励,第二位表示高级奖励
  2976. }
  2977. /////////////////////////////////////////////////////////
  2978. message SCPayForGoodsNtf {
  2979. int32 goods_type = 1; //商店类型
  2980. int32 goods_id = 2; //商品ID
  2981. int32 goods_num = 3; //商品数量
  2982. repeated KeyValueType item_list = 4; //购买获得道具
  2983. uint64 cp_order_id = 5; //订单号
  2984. }
  2985. //测试发送所有玩家位置信息AOI
  2986. message SCGMSyncAllPlayerNtf{
  2987. repeated Player players = 1;
  2988. }
  2989. message SCWebGMNoticeNtf {
  2990. GMNoticeInfo notice_info = 1;
  2991. }
  2992. //客户端加速外挂
  2993. message CSAntiCheatReq { //project game //RouteRule game
  2994. int32 cheat_type = 1;
  2995. }
  2996. //
  2997. message SCAntiCheatAck {
  2998. int32 error = 1; //错误码
  2999. }
  3000. //问卷奖励获取
  3001. message CSQuestionRewardReq { //project game //RouteRule game
  3002. }
  3003. //问卷奖励获取 ack回应
  3004. message SCQuestionRewardAck {
  3005. int32 error = 1; //错误码
  3006. repeated KeyValueType reward_item_list = 2; //奖励物品
  3007. }
  3008. //当前累计在线奖励获取
  3009. message CSOnlineTimeRewardReq { //project game //RouteRule game
  3010. }
  3011. message SCOnlineTimeRewardAck {
  3012. int32 error = 1; //错误码
  3013. repeated KeyValueType reward_item_list = 2; //奖励物品
  3014. }
  3015. message SCOnlineTimeRewardNtf {
  3016. int32 total_online_time = 1; //当前累计在线时间(隔天重置)s
  3017. uint64 online_stamp = 2; //上线时的时间戳 ms
  3018. int32 online_reward_id = 3; //奖励id(配置表中的唯一ID)
  3019. }
  3020. ///////////////////////信物相关///////////////////////
  3021. message CSOnlineGetKeepSakeReq { //project game //RouteRule game
  3022. }
  3023. message SCOnlineGetKeepSakeAck {
  3024. RoleKeepSake role_keep_sake = 1;
  3025. }
  3026. message CSKeepSakeRankReq{ //project game|rank //RouteRule game
  3027. int32 keep_sake_id = 1;
  3028. }
  3029. message SCKeepSakeRankAck{ //project game
  3030. int32 error = 1;
  3031. int32 keep_sake_id = 2;
  3032. CommonPlayerBriefInfo player_info = 3;
  3033. uint64 achievement_time = 4;
  3034. }
  3035. message CSKeepSakeLevelUpReq { //project game //RouteRule game
  3036. int32 keep_sake_id = 1;
  3037. }
  3038. message SCKeepSakeLevelUpAck {
  3039. int32 error = 1;
  3040. }
  3041. message SCKeepSakeChangeNtf {
  3042. KeepSake keep_sake = 1;
  3043. repeated KeyValueType materials = 2;
  3044. }
  3045. /////////////////////////////////////////////////////////跨服协议处理
  3046. /////////////////////////////////////////////////////////跨服远航试炼
  3047. message SCCrossYuanHangTrialDataNtf {
  3048. RoleYuanHangTrial yuanhangtrial_data = 1; //返回远航试炼数据(个人)
  3049. }
  3050. //刷新远航试炼品质
  3051. message CSCrossYuanHangTrialRefreshTrialTypeReq { //project game //RouteRule game
  3052. bool force = 1; //是否直接升级为顶级
  3053. }
  3054. message SCCrossYuanHangTrialRefreshTrialTypeAck {
  3055. int32 error = 1; //错误码
  3056. }
  3057. //发起远航试炼
  3058. message CSCrossYuanHangTrialReq { //project game //RouteRule game
  3059. }
  3060. message SCCrossYuanHangTrialAck {
  3061. int32 error = 1; //错误码
  3062. YuanHangTrialData trial_data = 2; //返回远航试炼数据(个人)
  3063. }
  3064. //获取远航试炼奖励(试炼结束奖励)
  3065. message CSCrossYuanHangTrialRewardReq { //project game //RouteRule game
  3066. }
  3067. message SCCrossYuanHangTrialRewardAck {
  3068. int32 error = 1; //错误码
  3069. repeated KeyValueType reward_list = 2; //奖励内容
  3070. }
  3071. //远航试炼挑战
  3072. message CSCrossYuanHangTrialChallengeReq { //project game //RouteRule game
  3073. uint64 challenge_uid = 1;
  3074. uint64 challenge_uid_end_time = 2;
  3075. }
  3076. message SCCrossYuanHangTrialChallengeAck {
  3077. int32 error = 1; //错误码
  3078. uint64 challenge_uid = 2;
  3079. uint64 challenge_uid_end_time = 3;
  3080. FightRoleInfo fight_info = 5; //被挑战玩家战斗数据
  3081. }
  3082. //挑战结果通知
  3083. message CSCrossYuanHangTrialChallengeResultReq { //project game //RouteRule game
  3084. uint64 challenge_uid = 1;
  3085. uint64 challenge_uid_end_time = 2;
  3086. int32 fight_time = 3; //战斗持续时间(判断合法性)
  3087. bool win = 4; //true胜利 false失败
  3088. }
  3089. message SCCrossYuanHangTrialChallengeResultAck {
  3090. int32 error = 1; //错误码
  3091. repeated KeyValueType reward_list = 2; //奖励内容
  3092. int32 old_score = 3; //获得的积分
  3093. int32 new_score = 4; //累加后的当前积分
  3094. }
  3095. //获取远航试炼排行榜
  3096. message CSCrossYuanHangTrialRankListReq { //project game //RouteRule game
  3097. int32 start_idx = 1;
  3098. }
  3099. message SCCrossYuanHangTrialRankListAck {
  3100. int32 error = 1; //错误码
  3101. int32 start_idx = 2;
  3102. uint32 self_rank = 3; //自身排名
  3103. uint64 self_score = 4; //自身积分
  3104. uint32 total_rank = 5; //当前参加排名的人数
  3105. repeated CommonRankInfo rank_list = 6;
  3106. }
  3107. //获取远航界面可视列表
  3108. //每次打开界面,或者隔一段时间发送一次,服务器会返回这段时间内变化的数据
  3109. message CSCrossYuanHangTrialViewListReq { //project game //RouteRule game
  3110. bool notify = 1; //true表示通知服务器需要更新,false是正常的获取界面数据
  3111. }
  3112. message SCCrossYuanHangTrialViewListAck {
  3113. int32 error = 1; //错误码
  3114. repeated YuanHangTrialData trial_view_list = 2; //界面上可视列表
  3115. }
  3116. message CSCrossYuanHangTrialViewListOutReq { //project game //RouteRule game
  3117. }
  3118. message SCCrossYuanHangTrialViewListNtf {
  3119. repeated YuanHangTrialData trial_view_list = 1; //界面上可视列表
  3120. }
  3121. //查询飞艇信息
  3122. message CSCrossYuanHangTrialInfoReq { //project game //RouteRule game
  3123. uint64 trial_uid = 1;
  3124. uint64 trial_end_time = 2;
  3125. }
  3126. message SCCrossYuanHangTrialInfoAck {
  3127. int32 error = 1;
  3128. YuanHangTrialData trial_data = 2;
  3129. string nick_name = 3;
  3130. }
  3131. //日志获取
  3132. message CSCrossYuanHangTrialLogReq { //project game //RouteRule game
  3133. uint64 log_time = 1;
  3134. }
  3135. message SCCrossYuanHangTrialLogAck {
  3136. int32 error = 1; //错误码
  3137. repeated YuanHangTrialLogData log_list = 2; //挑战被挑战日志记录
  3138. bool is_end = 3;
  3139. }
  3140. ////巅峰爬塔
  3141. //获取巅峰爬塔对战数据
  3142. //获取挑战列表
  3143. message CSCrossTopTowerFightListReq { //project game //RouteRule game
  3144. }
  3145. message SCCrossTopTowerFightListAck {
  3146. int32 error = 1; //错误码
  3147. RoleCrossTopTower toptower_data = 2; //变更层数数据(不一定是所有数据,切记!!!)
  3148. }
  3149. //发起挑战,判断合法性
  3150. message CSCrossTopTowerChallengeReq { //project game //RouteRule game
  3151. int32 fight_idx = 1; //挑战对手层数[1-10]
  3152. }
  3153. message SCCrossTopTowerChallengeAck {
  3154. int32 error = 1; //错误码
  3155. TopTowerFightRoleInfo fight_info = 2; //该位置玩家战斗信息
  3156. }
  3157. //获取挑战者view信息
  3158. message CSCrossTopTowerChallengeViewInfoReq { //project game //RouteRule game
  3159. int32 fight_idx = 1; //挑战对手层数[1-10]
  3160. }
  3161. message SCCrossTopTowerChallengeViewInfoAck {
  3162. int32 error = 1; //错误码
  3163. TopTowerFightRoleInfo fight_info = 2; //该位置玩家战斗信息
  3164. }
  3165. //战斗结果通知
  3166. message CSCrossTopTowerChallengeResultReq { //project game //RouteRule game
  3167. bool is_win = 1;
  3168. int32 fight_idx = 2; //挑战对手层数[1-10]
  3169. }
  3170. message SCCrossTopTowerChallengeResultAck {
  3171. int32 error = 1; //错误码
  3172. repeated KeyValueType reward_list = 2; //奖励内容
  3173. TopTowerFightRoleInfo fight_info = 3; //对应层数数据变更通知
  3174. }
  3175. //买路操作(直接胜利)
  3176. message CSCrossTopTowerForceWinReq { //project game //RouteRule game
  3177. int32 fight_idx = 1; //挑战对手层数[1-10]
  3178. }
  3179. message SCCrossTopTowerForceWinAck {
  3180. int32 error = 1; //错误码
  3181. repeated KeyValueType reward_list = 2; //奖励内容
  3182. TopTowerFightRoleInfo fight_info = 3; //对应层数数据变更通知
  3183. }
  3184. //获取买路排行榜
  3185. message CSCrossTopTowerForceWinRankListReq { //project game //RouteRule game
  3186. uint64 uid = 1;
  3187. int32 start_idx = 2;
  3188. }
  3189. message SCCrossTopTowerForceWinRankListAck {
  3190. int32 start_idx = 1;
  3191. uint32 self_rank = 2; //自身排名
  3192. uint64 self_score = 3; //自身积分
  3193. uint32 total_rank = 4; //当前参加排名的人数
  3194. repeated CommonRankInfo rank_list = 5;
  3195. }
  3196. ////全局跨服功能
  3197. //获取服务器列表信息(状态)
  3198. //server_type (31教堂地图)
  3199. message CSGCrossGetServerStateReq { //project game //RouteRule game
  3200. int32 server_type = 1; //服务器类型id(node中的type)
  3201. }
  3202. message SCGCrossGetServerStateAck {
  3203. int32 error = 1; //错误码
  3204. int32 server_type = 2; //服务器类型id(node中的type)
  3205. repeated ServerStateInfo server_list = 3; //多个gcrossmap时就有多个
  3206. }
  3207. //角色进入地图
  3208. message CSGCrossPlayerEnterMapReq{ //project game //RouteRule game
  3209. int32 map_type = 1; //不同系统玩法
  3210. int32 line_num = 2; //选择的线路(1线 2线...)
  3211. Vector3 pos = 3;
  3212. Vector3 dir = 4;
  3213. }
  3214. message SCGCrossPlayerEnterMapAck{
  3215. int32 error = 1; //错误码
  3216. int32 line_num = 2;
  3217. UnitPosAndDir self_info = 3;
  3218. }
  3219. //离开地图
  3220. message CSGCrossPlayerLeaveMapReq { //project game //RouteRule game
  3221. Vector3 pos = 1; //玩家离开时的位置
  3222. }
  3223. //客户端1s内发送的位置同步包(视野同步)
  3224. message CSGCrossPlayerMapSyncPosReq { //project game //RouteRule game
  3225. Vector3 pos = 1; //位置
  3226. Vector3 dir = 2; //朝向
  3227. int32 cur_space_id = 3; //当前所在场景ID
  3228. int32 is_on_ground = 4; //是否在地面上
  3229. }
  3230. //位置同步消息(用来做视野同步)
  3231. message SCGCrossPlayerMapSyncPosNtf {
  3232. repeated UnitPosAndDir unit_info_list = 1;
  3233. }
  3234. //客户端模拟使用
  3235. message CSGCrossPlayerMapSyncParamReq { //project game //RouteRule game
  3236. Vector3 pos = 1; //位置
  3237. int32 param_id = 2; //通用参数标签
  3238. }
  3239. message SCGCrossPlayerMapSyncParamNtf{
  3240. repeated UnitPosAndDir unit_info_list = 1;
  3241. }
  3242. //通知玩家当前有其他玩家进入自己视野
  3243. message SCGCrossPlayerEnterNtf {
  3244. repeated UnitPosAndDir unit_info_list = 1;
  3245. }
  3246. message SCGCrossPlayerLeaveNtf {
  3247. repeated UnitPosAndDir unit_info_list = 1;
  3248. }
  3249. //获取其他玩家角色信息,AOI地图显示使用(注意:每次发送不超过10个玩家,超过10个后服务器不会返回,做保护处理)
  3250. message CSGCrossPlayerShowInfoReq { //project game //RouteRule game
  3251. repeated uint64 player_list = 1;//拉取角色信息列表
  3252. }
  3253. message SCGCrossPlayerShowInfoNtf{
  3254. repeated PlayerShowInfo show_info_list = 1; //玩家角色信息
  3255. }
  3256. /////////////////////////////////////////////////////////
  3257. //客户端打点信息上报
  3258. message ClientParamInfo {
  3259. string device_model = 1; //设备型号
  3260. int32 device_height = 2; //屏幕高度
  3261. int32 device_width = 3; //屏幕宽度
  3262. string os_name = 4; //操作系统
  3263. string os_ver = 5; //操作系统版本
  3264. string mac_addr = 6; //设备mac地址
  3265. string udid = 7; //设备唯一标示符
  3266. string isp = 8; //网络运营商
  3267. string network = 9; //网络连接
  3268. string app_channel = 10; //运营渠道
  3269. string app_ver = 11; //客户端版本号
  3270. string trans_id = 12; //transid
  3271. string unisdk_deviceid = 13; //unisdk_deviceid
  3272. int32 is_emulator = 14; //是否模拟
  3273. int32 is_root = 15; //是否root
  3274. string account_id = 16;
  3275. string old_accountid = 17;
  3276. string IMEI = 18; //移动设备国际识别码
  3277. string country_code = 19; //国家代码
  3278. string enter_sn = 20; //enter_sn
  3279. string oaid = 21; //设备OAID
  3280. string engine_ver = 22; //引擎版本
  3281. }
  3282. message CSClientParamNtf { //project game //RouteRule game
  3283. ClientParamInfo client_info = 1;
  3284. }
  3285. //获取英雄属性/宠物属性
  3286. message ActorAttrType {
  3287. bool is_hero_pet = 1; //true=hero false=pet
  3288. uint32 actor_id = 2; //生成的动态ID
  3289. repeated KeyValueFloat32 attr_list = 3;
  3290. }
  3291. message CSActorAttrGetReq { //project game //RouteRule game
  3292. bool is_all_battle = 1;
  3293. repeated ActorAttrType actor_list = 2; //结构中的attr_list不用
  3294. }
  3295. message SCActorAttrGetAck {
  3296. int32 error = 1;
  3297. repeated ActorAttrType actor_attr_list = 2;
  3298. }
  3299. message SCActorAttrGetNtf {
  3300. repeated ActorAttrType actor_attr_list = 1;
  3301. }
  3302. // 高级技能经验兑换
  3303. message CSConverSkillExpReq{ //project game //RouteRule game
  3304. int32 cnt = 1; // 兑换数量
  3305. }
  3306. message SCConverSkillExpAck{
  3307. int32 error = 1;
  3308. }
  3309. // 称号状态更新
  3310. message SCHeadUpdateNtf{
  3311. repeated HeadData head = 1;
  3312. }
  3313. // 称号操作
  3314. message CSHeadOperateReq{ //project game //RouteRule game
  3315. int32 operateType = 1; // 1.激活 2.佩戴 3.卸下
  3316. int32 headId = 2;
  3317. }
  3318. message SCHeadOperateAck{
  3319. int32 operateType = 1;
  3320. int32 headId = 2;
  3321. int32 error = 3;
  3322. }
  3323. // 请求称号
  3324. message CSHeadDataReq{ //project game //RouteRule game
  3325. }
  3326. message SCHeadDataAck{
  3327. }
  3328. // 使用许愿宝箱
  3329. message CSWishBoxUseReq{ //project game //RouteRule game
  3330. uint64 item_id = 1;
  3331. int32 select_item = 2;
  3332. }
  3333. message SCWishBoxUseAck{
  3334. int32 error = 1;
  3335. int32 index = 2; // 宝箱位置
  3336. }
  3337. // 解锁许愿宝箱槽位
  3338. message CSWishUnlockSlotReq { //project game //RouteRule game
  3339. }
  3340. message SCWishUnlockSlotAck {
  3341. int32 error = 1;
  3342. }
  3343. // 许愿箱加速 + 领奖
  3344. message CSWishSlotReq { //project game //RouteRule game
  3345. int32 index = 1;
  3346. }
  3347. message SCWishSlotReqAck {
  3348. serverproto.KeyValueType award_item = 1; // 许愿物品
  3349. serverproto.KeyValueType lucky_item = 2; // 暴击物品
  3350. int32 error = 3;
  3351. }
  3352. message SCUpdateWishSlotNtf{
  3353. repeated WishSlot slots = 1;
  3354. }
  3355. //上线合服通知
  3356. message SCCombineServerOnlineNtf {
  3357. int32 error = 1;
  3358. uint64 combine_time = 2; //毫秒//合服时间
  3359. }
  3360. // 合服公告内容请求
  3361. message CSCombineServerInfoReq { //project game //RouteRule game
  3362. }
  3363. message SCCombineServerInfoAck {
  3364. int32 error = 1;
  3365. uint64 combine_time = 2; //毫秒//合服时间
  3366. string notice = 3; //合服公告
  3367. }
  3368. /////////////////////////////////////////////////////////
  3369. //bt 服务器使用
  3370. // 通用错误通知协议
  3371. message SCErrorMessageNtf {
  3372. int32 error = 1; //错误码
  3373. }
  3374. // 试炼之塔试炼馈赠(每天获取一次奖励)
  3375. message CSClimbingTowerDayRewardReq { //project game //RouteRule game
  3376. }
  3377. message SCClimbingTowerDayRewardAck {
  3378. int32 error = 1;
  3379. repeated KeyValueType reward_list = 2; // 奖励内容
  3380. uint64 next_day_reward_time = 3; // 下次可领取奖励时间戳
  3381. }
  3382. // 波利商城
  3383. message CSBoliShopLevelUpReq { //project game //RouteRule game
  3384. int32 num = 1; // 消耗RO币数量
  3385. }
  3386. message SCBoliShopLevelUpAck {
  3387. int32 error = 1;
  3388. ShopData shop_data = 2; // 商店信息
  3389. }
  3390. // 波利商城选择特权礼包
  3391. message CSBoliShopRewardReq { //project game //RouteRule game
  3392. int32 reward_level = 1; // 获取奖励的等级
  3393. int32 idx = 2; //[1,3]
  3394. }
  3395. message SCBoliShopRewardAck {
  3396. int32 error = 1;
  3397. repeated KeyValueType reward_list = 2; //奖励内容
  3398. }
  3399. // 波利商城购买
  3400. message CSBoliShopBuyReq { //project game //RouteRule game
  3401. int32 goods_id = 1;
  3402. int32 goods_num = 2;
  3403. }
  3404. message SCBoliShopBuyAck {
  3405. int32 error = 1;
  3406. repeated KeyValueType item_list = 2; // 商品信息
  3407. int32 cur_num = 3;
  3408. uint64 cur_buy_time = 4;
  3409. int32 goods_id = 5;
  3410. }
  3411. // 获取商店信息
  3412. // bt服务器获取购买信息
  3413. // 100充值钱包商店
  3414. // RO币礼包商城
  3415. message CSBTShopInfoReq { //project game //RouteRule game
  3416. int32 shop_type = 1; //商店类型
  3417. int32 sub_shop = 2; //商店子类型
  3418. }
  3419. message SCBTShopInfoAck {
  3420. int32 shop_type = 1; //商店类型
  3421. int32 sub_shop = 2; //商店子类型
  3422. repeated RuneShopItem goods_list = 3; //商店道具类型
  3423. int64 end_time = 4; //礼包商店截止时间(根据子类型)
  3424. }
  3425. // 获取波利商店信息
  3426. message CSBoliShopInfoReq { //project game //RouteRule game
  3427. }
  3428. message SCBoliShopInfoAck {
  3429. int32 error = 1;
  3430. ShopData shop_data = 2; // 商店信息
  3431. }
  3432. message SCBoliDataChangeNtf {
  3433. BTBoliData boli_data = 3;
  3434. }
  3435. //RO币礼包购买
  3436. message CSBTRoCoinShopItemBuyReq { //project game //RouteRule game
  3437. int32 goods_id = 1;
  3438. int32 goods_num = 2;
  3439. }
  3440. message SCBTRoCoinShopItemBuyAck {
  3441. int32 error = 1; //错误码
  3442. int32 goods_id = 2;
  3443. repeated KeyValueType reward_item_list = 3; //奖励物品
  3444. RuneShopItem shop_item = 4;
  3445. int32 goods_type = 5;
  3446. int32 sub_type = 6;
  3447. }
  3448. ////超值首充&百元大礼包
  3449. message SCBTFirstRechargeNtf {
  3450. uint64 first_recharge_time = 1;
  3451. uint32 first_recharge_reward_state = 2; //首充礼包档位奖励获取状态(位处理)
  3452. }
  3453. //超值首充奖励获取
  3454. message CSBTFirstRechargeRewardReq { //project game //RouteRule game
  3455. int32 reward_idx = 1; //[1,3]
  3456. }
  3457. message SCBTFirstRechargeRewardAck {
  3458. int32 error = 1; //错误码
  3459. repeated KeyValueType reward_item_list = 2; //奖励物品
  3460. int32 reward_idx = 3; //[1,3]
  3461. }
  3462. //百元大礼包领取奖励
  3463. message SCBTRecharge100Ntf {
  3464. uint64 recharge100_time = 1; //充值解锁百元大礼包的时间戳
  3465. int32 recharge100_reward_day = 2; //可领取哪几天的奖励(1表示可领取第一天奖励,2表示可领取前两天奖励)
  3466. int32 recharge100_reward_state = 3; //已经领取到那一天的奖励(1表示第一天已经领取,2表示领取了1-2天的奖励)
  3467. }
  3468. message CSBTRecharge100RewardReq { //project game //RouteRule game
  3469. }
  3470. message SCBTRecharge100RewardAck {
  3471. int32 error = 1; //错误码
  3472. repeated KeyValueType reward_item_list = 2; //奖励物品
  3473. }
  3474. //地圖困難簡單切換
  3475. message CSMapLevelTypeChangeReq {
  3476. int32 type = 1;//切換地圖模式
  3477. }
  3478. message SCMapLevelTypeChangeAck {
  3479. int32 error = 1; //错误码
  3480. int32 type = 2;
  3481. }