proto_user.lua 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. -- 用户相关协议 2000~2999
  2. local proto_struct =
  3. [[
  4. # 玩家基础信息
  5. .DataUserBaseInfo {
  6. uid 0: integer # 玩家uid
  7. nickname 1: string # 玩家昵称
  8. level 2: integer # 等级
  9. vipLevel 3: integer # 贵族等级
  10. city 4: string # 城市
  11. registerVersion 5: string # 注册版本
  12. phone 6: string # 绑定的手机号码
  13. rechargeNum 7: integer # 充值额度(22年3月15日 后端豪哥讲后面不再维护这个字段)
  14. activeDays 8: integer # 活跃天数
  15. groupList 9: *string # 分群配置列表
  16. }
  17. # 玩家时间信息
  18. .DataUserTimeInfo {
  19. sysTime 0: integer # 服务器时间
  20. debugTime 1: integer # 调试时间(固定)
  21. }
  22. # 实名认证信息
  23. .DataIdentity {
  24. iType 0: integer # 实名认证类型(1:嘉米 2:渠道)
  25. jmName 1: string # 名称
  26. jmCard 2: string # 身份证
  27. jmBirthDate 3: string # 嘉米出生年月日格式 ‘20060601’
  28. chBirthDate 4: string # 渠道出生年月日格式 ‘20060601’
  29. }
  30. # 防沉迷信息
  31. .DataAntiAddiction {
  32. isRealName 0: boolean # 是否已实名认证
  33. gameEndTime 1: integer # 游戏结束时间戳(游戏时长限制,空:不限制)
  34. limitLoginMinutes 2: integer # 总在线时间的限制分钟数(单位分钟)
  35. daysResetTime 3: integer # 重置总游戏时长间隔天数
  36. limitHourRange 4: *integer # 可游戏时间范围(单位:小时,24小时制)(空:不限制)
  37. limitEnablePay 5: boolean # 限制,是否可付费(空:不限制)
  38. limitDayOrderMoney 6: integer # 限制金额,日单笔支付金额(单位:分, 空:不限制)
  39. limitMonthMoney 7: integer # 限制金额,月累计支付金额(单位:分, 空:不限制)
  40. }
  41. # 行为次数统计信息
  42. .DataTimesInfo {
  43. signMaxSerial 0: integer # 最高连续签到次数
  44. signTotal 1: integer # 累计签到次数
  45. signSerial 2: integer # 当前连续签到次数
  46. gamePassLevel 3: integer # 通过等级
  47. adTotal 4: integer # 广告次数
  48. }
  49. ]]
  50. local proto_c2s =
  51. [[
  52. # 获取自己的信息
  53. user_self_info 2000 {
  54. request {
  55. uid 0: integer
  56. idInfo 1: DataIdentity # 实名认证信息
  57. }
  58. response {
  59. code 0: integer
  60. baseInfo 1: DataUserBaseInfo # 基础信息
  61. }
  62. }
  63. #连接保活
  64. user_keepalive 2004 {
  65. request {
  66. }
  67. response {
  68. systemTime 0: integer
  69. }
  70. }
  71. ]]
  72. local proto_s2c =
  73. [[
  74. # 玩家系统信息
  75. on_user_system_info 2050 {
  76. request {
  77. sheildList 0: *integer # 功能ID列表
  78. antiInfo 1: DataAntiAddiction # 防沉迷信息
  79. timesInfo 2: DataTimesInfo # 行为次数统计信息
  80. abValue 3: *string # AB分群值
  81. shareCode 4: string # 分享码
  82. uidBanding 5: integer # 绑定玩家ID
  83. payInfo 6: DataPayInfo # 支付信息
  84. battleTimesInfoList 7: *DataBattleTimes # 战斗统计信息
  85. dayBattleTimesInfoList 8: *DataBattleTimes # 当天战斗统计信息
  86. goodsPayInfoList 9: *DataGoodsPay # 商品支付信息列表
  87. activeModuleList 10: *integer # 激活功能ID列表
  88. }
  89. }
  90. # 玩家状态
  91. on_server_code 2051 {
  92. request {
  93. code 0: integer # 值为497时是被顶号了,不要自动连接
  94. freezeEndTime 1: integer # 封号结束时间 code = 602
  95. bannedEndTime 2: integer # 禁言结束时间 code = 603
  96. }
  97. }
  98. ]]
  99. local proto = {
  100. c2s = proto_struct .. proto_c2s,
  101. s2c = proto_struct .. proto_s2c
  102. }
  103. return proto